Мазмұны:
- 1 -қадам: Бұл жобада қолданылатын заттар
- 2 -қадам: Әңгіме
- 3 -қадам: аппараттық қосылым
- 4 -қадам: бұлтты конфигурациялау
- 5 -қадам: бағдарламалық қамтамасыз ету
Бейне: Қаралған IoTea LoRa шешімі (Azure көмегімен, 1812 жаңарту): 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
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: қолданба
Ұсынылған:
Қарапайым жарық диодты желілік ток реттегіші, қайта қаралған және нақтыланған: 3 қадам
Қарапайым қуат светодиодты сызықтық ток реттегіші, қайта қаралған және нақтыланған: бұл нұсқаулық Дэннің ток реттегішінің сызықтық тізбегінің қайталануы болып табылады. Оның нұсқасы, әрине, өте жақсы, бірақ түсінікті болу үшін бірдеңе жетіспейді. Бұл менің бұл мәселені шешуге тырысуым. Егер сіз Дэннің нұсқасын түсінсеңіз және жасай алсаңыз
Қаралған LoRa IoTea шешімі: 5 қадам
Қаралған LoRa IoTea шешімі: шай плантациясына қолданылатын ақпаратты автоматты түрде жинау жүйесі. Бұл ауылшаруашылық туралы ақпаратты жинаудың бөлігі
Қаралған IoTea LoRa шешімі (1811 жаңарту): 5 қадам
Қаралған IoTea LoRa шешімі (1811 жаңарту): Интернет+ қазір танымал ұғым. Бұл жолы біз Интернет -плюс ауыл шаруашылығын пайдаланып, шайды Интернет -шайға айналдырдық
Arduino жобасы: GPS қадағалау шешімі үшін RF1276 LoRa модулінің сынақ диапазоны: 9 қадам (суреттермен)
Arduino жобасы: GPS қадағалауға арналған RF1276 сынақ диапазоны LoRa модулі Шешім: Байланыс: USB - SerialNeed: Chrome браузері қажет: 1 X Arduino Mega қажеттілігі: 1 X GPS қажет: 1 X SD картасы қажет: 2 X LoRa модем RF1276 Функция: Arduino GPS мәнін жіберу негізгі базаға - Dataino Server Lora модуліндегі деректердің негізгі базасы: Ультра ұзақ қашықтық
Ең соңғы MacOS/Hackintosh High Sierra 10.13 Usb Wifi драйвері Raspberry Pi көмегімен «Болашақтың дәлелі» шешімі: 4 қадам
MacOS/Hackintosh High Sierra 10.13 USB драйверінің «Болашақ дәлелі» Raspberry Pi көмегімен шешімі: MacOS/Hackintosh -тың ең соңғы мәселесі - бұл Wi -Fi драйверінің қол жетімділігі. macOS High Sierra 10.13. Менің соңғы USB Wi -Fi - бұл panda сымсыз, бірақ MacO үшін драйверді қолдау