Мазмұны:

Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту): 5 қадам
Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту): 5 қадам

Бейне: Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту): 5 қадам

Бейне: Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту): 5 қадам
Бейне: ГЕОГРАФИЯ НАУРЫЗ ҰБТ-2021. ДАЙЫНДЫҚ! 2024, Маусым
Anonim
Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту)
Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту)

Microsoft Azure - бұл қуатты және тұрақты есептеу қуатын беретін бұлтты қызмет. Бұл жолы біз оған IoTea деректерін жіберуге тырыстық.

1 -қадам: Бұл жобада қолданылатын заттар

Аппараттық компоненттер

  • Grove - көмірқышқыл газының сенсоры (MH -Z16)
  • Grove - сандық жарық сенсоры
  • Grove - шаң сенсоры (PPD42NS)
  • Grove-оттегі сенсоры (ME2-O2-Ф20)
  • Топырақ ылғалдылығы мен температура сенсоры
  • LoRa LoRaWAN шлюзі - Raspberry Pi 3 бар 868 МГц жиынтығы
  • Grove - Temp & Humi және барометр сенсоры (BME280)

Бағдарламалық жасақтама және онлайн қызметтері

  • Microsoft Visual Studio 2015
  • Microsoft Azure

2 -қадам: Әңгіме

Сиань Яаньның солтүстік -шығысындағы Мендинг тауында, тау жотасы жасыл теңізде батыстан шығысқа қарай созылады. Теңіз деңгейінен 1100 м биіктікте орналасқан 50 мұ (= 3,3 га) плантациясы бар 36 жастағы Дэнг, өз ұрпағының өте сирек кездесетін шай жасаушыларының бірі. Дэн шай қайнатушылар отбасынан шыққан, бірақ отбасылық мұраны жалғастыру оңай жұмыс емес. «Біздің шайлар жоғары сапада органикалық ортада өсіріледі, бұл оның керемет сапасын қамтамасыз етеді. Бірақ сонымен бірге өсу тығыздығы төмен, бағасы жоғары және бүршіктері біркелкі емес, бұл шай жинауды қиындатады. Сондықтан биік тау шайы әдетте аз жиналады және олардың құндылығы нарықта көрсетілмейді. »Соңғы екі жыл ішінде Дэн олардың құндылығын жоғарылату үшін тұтынушылардың биік тау шайы туралы хабардарлығын арттыруға тырысады. Және ол Seeed’s IoTea технологиясын енгізу үшін плантацияны іздейтін Фанмен кездескенде, шешімге тамаша сәйкестік табылды.

3 -қадам: аппараттық қосылым

Жабдықты қосу үшін алдыңғы оқулықты орындаңыз.

4 -қадам: бұлтты конфигурациялау

Қадам 1. Ресурстар тобын құру

Microsoft Azure жүйесіне кіру үшін мына жерді басыңыз. Содан кейін, бақылау тақтасының сол жағындағы тізімге Ресурстар тобын енгізіңіз, Ресурстар тобын қосу үшін Қосу түймешігін басыңыз.

Кескін
Кескін

Ресурстар тобы жобадағы барлық ресурстарды басқару үшін пайдаланылады, бұлтты ресурстарды қолданғаннан кейін, төлемдерді болдырмау үшін барлық ресурстарды жою үшін ресурстар тобын жойыңыз. Ашылған бетте Ресурстар тобының атауын (мысалы, йота) толтырыңыз, қажет болған жағдайда Жазылым мен Ресурстар тобының орнын таңдаңыз, Ресурстар тобын құру үшін Жасау түймешігін басыңыз.

Қадам 2. Iot Hub құрыңыз

Енді сіз бұлтты ресурс жасай аласыз, сол жақта резерв құру түймесін басыңыз, Интернет заттары - Iot Hub таңдаңыз, ол жаңа бетті ашады.

Негіздер қойындысында жаңадан құрылған ресурстар тобын таңдап, Iot Hub атауын (мысалы, йота) толтырыңыз, қажет болса Жазылым мен Аймақ тармағын таңдаңыз, содан кейін Өлшем және ауқымды қойындысына өтіңіз.

Кескін
Кескін

Өлшем мен масштаб қойындысында F1: Еркін деңгей немесе В1: Баға қоюдағы негізгі деңгей мен масштаб деңгейінің комбинациясын таңдаңыз, Негізгі деңгей айына 10,00 АҚШ долларын алады. Ақырында, қарау + жасау қойындысына кіруді тексеруді бұрыңыз және Iot Hub құру үшін Жасау түймесін басыңыз.

Кескін
Кескін

Қадам 3. LORIOT конфигурациялаңыз

Жасап жатқан Iot Hub -қа кіріңіз, Ортақ қатынас саясаты - құрылғыны басыңыз, оң жақтағы негізгі кілтті көшіріңіз.

Кескін
Кескін

Жаңа броузер терезесін (немесе қойындысын) ашыңыз, LORIOT басқару тақтасына кіріңіз, Қолданба - SampleApp тармағына өтіңіз, Басқару тобындағы Деректерді шығару - Өзгерту түймешігін басыңыз. Шығару түрін өзгерту тобында Azure Iot Hub таңдаңыз, Iot Hub атауы мен бастапқы кілтті толтырыңыз және төменгі жағындағы Өзгертуді растау түймешігін басыңыз.

Кескін
Кескін

Қадам 4. Iot құрылғысын қосыңыз

LORIOT ішіндегі тізімдегі Құрылғыларды нұқыңыз, құрылғыңыздың EUI көшіріңіз.

Кескін
Кескін

Azure Iot Hub дегенге қайта келу үшін Iot Hub сол жағындағы тізімдегі Iot құрылғыларын басыңыз. Қосу түймесін басыңыз, ашылған бетте Device EUI -ді Device ID -ге толтырыңыз.

МАҢЫЗДЫ: EUI ҚҰРЫЛҒЫСЫНДАҒЫ БАРЛЫҚ СЕПРАТОРДЫ ЖОЮ, ол 1122334455667788 сияқты болсын.

Кескін
Кескін

Сақтау түймесін басыңыз, бәрі дайын.

Қадам 5. D2C (құрылғыдан бұлтқа) хабарларын алыңыз

Сіз Microsoft Docs бағдарламасына сүйене отырып, D2C хабарламаларын оқи аласыз.

5 -қадам: бағдарламалық қамтамасыз ету

Бағдарламалық қамтамасыз ету 3 бөлікке бөлінген: түйін, шлюз және веб -сайт, түйін бөлігін және шлюз бөлігін бағдарламалау үшін алдыңғы оқулықты орындаңыз. Веб -сайт бөлігінің 1-8 қадамдары алдыңғы оқулықпен бірдей.

Егер сіз Microsoft Azure -ды бұрыннан конфигурациялаған болсаңыз, терминалды ашыңыз, веб -сайтыңыздың түбірлік қалтасына кіріңіз, виртуалды ортаны іске қосыңыз:

cd ~/iotea-hb

бастапқы қоқыс жәшігі/белсендіру

Azure Event Hub модулін pip арқылы орнатыңыз және new.py файлын жасаңыз (мысалы, iothub_recv.py):

pip azure-eventhub орнатыңыз

iothub_recv.py түртіңіз

содан кейін келесі кодтарды жазыңыз:

# --------------------------------------------------------------------------------------------

# Авторлық құқықтар (c) Microsoft корпорациясы. Барлық құқықтар сақталған. # MIT лицензиясы бойынша лицензияланған. Лицензия ақпараты үшін жоба түбіріндегі License.txt қараңыз. # ------------------------------------------------- ------------------------------------------- азурдан импортты жұп-жұптан. eventhub импорттау EventData, EventHubClient, офсеттік импорттау журналын тіркеу журналы = logging.getLogger ('azure.eventhub') db, json, time, datetime def get_time (): cntime = datetime.datetime.now () + datetime.timedelta (сағаттар = +8) date = cntime.strftime ('%Y-{}-{}'). Формат (cntime.strftime ('%m'). Zfill (2), cntime.strftime ('%d'). Zfill (2)) сағат = cntime.strftime ('%H'). Zfill (2) минут = cntime.strftime ('%M'). Zfill (2) секунд = cntime.strftime ('%S'). Zfill (2)) қайтару [күн, сағат, минут, секунд] def get_iothub_data (): list = ['0'] * 11 client = EventHubClient.from_iothub_connection_string ('', debug = True) ресивер = client.add_receiver («$ әдепкі», « 3 «, операция = '/хабарлар/оқиғалар', офсеттік = Офсеттік (datetime.datetime.utcnow ())) көріңіз: client.run () eh_info = client.get_eventhub_info () басып шығару (eh_info) алынды = ресивер.қабылдау (күту уақыты) = 5) алынған: мендегі элемент үшін басып шығару (алу) ssage = json.loads (str (item.message)) басып шығару (хабар) егер хабардағы «деректер» болса: деректер = хабар ['деректер'] air_temp = str (int (деректер [0: 2], 16)) air_hum = str (int (деректер [2: 4], 16)) қысым = str (int ((деректер [4: 8]), 16)) co2 = str (int (деректер [8:12], 16)) шаң = str (int (деректер [12:16], 16)) жарықтандыру = str (int (деректер [16:20], 16)) o2 = str (дөңгелек (int (деректер [20:22], 16) / 10, 1)) earth_temp = str (int (деректер [22:24], 16)) tuproq_hum = str (int (деректер [24:26], 16)) кернеу = str (дөңгелек (int (деректер [26:28], 16) / int ('ff', 16) * 5, 1)) қате = str (int (деректер [28:], 16)) тізім = [ауа температурасы, ауа_хумы, қысым, co2, шаң, жарықтандыру, o2, топырақ температурасы, tuproq_жұмысы, кернеу, қате] ақырында: client.stop () қайтару тізімі, ал True: list = get_time () + get_iothub_data () db.insert (тізім) басып шығару (тізім)

Бағдарламаны іске қоспас бұрын қосылым жолын өзгертіңіз

клиент = EventHubClient.from_iothub_connection_string ('', отлад = True)

Сіз Iot Hub ішіндегі ортақ пайдалану саясаты - иесінің иесі түймесін басу арқылы қосылым жолын ала аласыз, ашылған беттегі Connection string -бастапқы кілті - байланыс жолы.

Кескін
Кескін

Осыдан кейін сіз бағдарламаны бастай аласыз:

gunicorn iothub_recv: қолданба

Ұсынылған: