Мазмұны:
- Жабдықтар
- 1 -қадам: MQTT -ге кіріспе
- 2 -қадам: IoT платформасына кіріспе
- 3 -қадам: MQTT Publisher дайындаңыз
- 4 -қадам: Ескерту
- 5 -қадам: Несие және қолдау
Бейне: IoT негіздері: Mongoose ОЖ көмегімен бұлтқа IoT қосу: 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
Егер сіз электроника мен электроникаға бейім адам болсаңыз, онда сіз жиі заттар Интернеті деген терминді кездестіресіз, ол әдетте IoT деп қысқартылады және ол Интернетке қосылатын құрылғылар жиынтығын білдіреді! Өзім сондай адам болғандықтан, мұндай керемет құрылғылар маған оңай қол жетімді болатынын білгенде, мені қатты қызықтырды. Кішкене аппараттық құралдарды қолдана отырып, менің жобаларымды интернетке қосуды ойладым және бұл менің идеяларымды ашатын сансыз көп қақпалар туралы ойлады.
Бірақ IoT -ге интернетке қосылуды айту оны сөреден сатып алып, оны қосу сияқты қарапайым емес. Құрылғыны Интернетке қосудан басқа, біз кейбір пайдалы деректерді интернетке енгізуіміз керек. Бұл Нұсқаулық жоғарыда айтылған мақсатқа жетуге арналған процедураны қарастырады және кез келген деңгейдегі оқырмандарға арналған, жаңадан бастаушылардан бастап IoT жаңадан бастаған ардагерлерге арналған.
Бұл нұсқаулықта мысал ретінде мен оқырмандарға процесс туралы жақсы түсінік беруі керек ESP32 әзірлеу тақтасының ішкі температура датчиктерінің графигін қалай салу керектігін көрсетемін.
Бұл нұсқаулықта ESP32 және Mongoose ОЖ қолданылғанымен, процедураны барлық IoT мен микробағдарламаға дейін кеңейтуге болады!
Жабдықтар
Нұсқаулықты өз бетінше жүзеге асыру үшін сізге ең аз мөлшерде аппараттық құрал қажет болады және олар:
- Интернет заты (IoT): Мен арзан ESP32 әзірлеу тақтасының клонын қолдандым. Егер сіз жаңа ESP32 әзірлеу тақтасын сатып алуды жоспарлап отырсаңыз, онда сіз DFRobot ESP32 тақтасын қарауыңыз керек.
- Деректер кабелі: IoT жыпылықтау үшін қажет кабельді пайдаланыңыз.
- Батарея (міндетті емес): егер сіз IoT -ді ұзақ уақыт бойы қосқыңыз келсе ғана сатып алыңыз.
- Шағын тақта (міндетті емес)
Мен оқырманға ESP32 -ден өзгеше IoT қолдануды ұсынамын, осылайша ол маған еліктеудің орнына мұнда не істеліп жатқанын шынымен түсінуі мүмкін. Маған сеніңіз, бұл процесті басқа IoT -те өз ақыл -ойыңызды қолдана отырып ұнатасыз, мысалы, ESP8266 жақсы таңдау болар еді.
1 -қадам: MQTT -ге кіріспе
MQTT дегеніміз не?
«MQTT-бұл өткізу қабілеті шектеулі құрылғыларға арналған қарапайым хабар алмасу хаттамасы. Сонымен, бұл Интернет заттарының қосымшасы үшін тамаша шешім. MQTT шығуды басқаруға, сенсорлық түйіндерден деректерді оқуға және жариялауға пәрмендерді жіберуге мүмкіндік береді. « (RandomNerdTutorials бағдарламасынан)
MQTT қалай жұмыс істейді?
Техникалық қызметке бармас бұрын, алдымен өзіміздің нақты әлеміміз туралы ойланайық. Сіз досыңыздың досына тиесілі карталар коллекциясына қызығасыз делік, айталық, сіз білмейтін Лорель. Сіз бұл карталар жинағына ерекше назар аударатындықтан, сіз досыңыздан Томнан Лорелдің оны сатуға дайын ба, жоқ па деп сұрауын сұрайсыз. Сөйтіп, сіз Томдан Лорель сатуға дайын болса, карточкалық коллекцияны өзі сатып алуын сұрайтын боласыз, өйткені сіз қалаған коллекцияға басқа біреудің қолын тигізгісі келмейді! Уақыт өте келе Том мен Лорел өзара әрекеттеседі, ал өзара келісім бойынша Лорель ақшаға Томға өзінің карталар коллекциясын береді. Бұл алмасудан кейін Том карталарды сізбен қайта кездескенше сақтайды, ол сізге карталар жинағын береді. Біздің күнделікті өмірімізде қалыпты алмасу осылай жүреді.
MQTT -де алмасуға қатысатын негізгі элементтер - баспагер (Лорел), жазылушы (Сіз) және брокер (Том). Оның жұмыс процесі жоғарыда көрсетілген нақты мысалға ұқсас, тек бір үлкен айырмашылықты қоспағанда! MQTT -де айырбастауды брокер бастайды, яғни Лорел өзінің карталар коллекциясын сатқысы келетінін Томға бірінші болып жеткізеді. Егер біз MQTT жұмысын біздің нақты әлемдегі мысалмен салыстыратын болсақ, онда ол келесідей болады:
- Лорел Томға өзінің карталар жинағын (деректерді немесе пайдалы жүктемені) сатқысы келетінін айтады және карталарды оған береді.
- Том бұл карталарды өз иелігіне алады және карталарды жинауға қатысты ұсыныстарға ашық. Сіз Том екеуіңіз кездескенде, ол сізді карталарға қызығатындығыңызды біледі (тақырыпқа жазылады). Том сізге карталарды береді.
Бүкіл процесс брокерге тәуелді болғандықтан және абонент пен баспагер арасында тікелей өзара іс -қимыл жоқ болғандықтан, MQTT баспагер мен абонентті синхрондау қиындықтарын жояды. Аралық брокердің болуы IoT және микропроцессорлар сияқты ресурстармен шектелген құрылғылардың пайдасы болып табылады, себебі олардың өңдеу қуаты деректерді қалыпты түрде жіберу үшін жеткіліксіз, бұл аутентификация, шифрлау және т.б сияқты қосымша шығындарды талап етеді. MQTT-тің басқа да көптеген мүмкіндіктері бар, мысалы, жеңілдік, көп таралу және т.
2 -қадам: IoT платформасына кіріспе
IoT платформасы дегеніміз не?
«Жоғары деңгейде Интернеттегі заттар (IoT) платформасы-бұл қосымша жабдықты, кіру нүктелерін және деректер желілерін құндылықтар тізбегінің басқа бөліктерімен байланыстыратын қолдау бағдарламасы (әдетте соңғы пайдаланушы қосымшалары). IoT платформалары әдетте пайдаланушыларға қоршаған ортаны автоматтандыруға мүмкіндік беретін ағымдағы басқару тапсырмалары мен деректерді визуализациялауды басқарады ». (Link-Labs-тен)
Абсолютті түрде, IoT платформасы пайдаланушы мен жиналған деректерді ұсынуға жауапты деректерді жинайтын агенттер арасындағы құрал ретінде әрекет етеді.
Бұл нұсқаулықта біз ESP32 температурасының көрсеткіштерін онлайн режимінде енгізуді жоспарлап отырмыз. Біздің ESP32 MQTT баспагері болады, ал MQTT брокері біз таңдаған IoT платформасы болады. Назар аударыңыз, біздің жобада MQTT абонентінің рөлі жоқ, өйткені деректер платформаның өзі арқылы ұсынылған. IoT платформасы біздің жарияланған деректерді сақтауға және оны сызықтық график ретінде жақсы ұсынуға жауапты болады. Мен мұнда Losant -ты IoT платформасы ретінде қолданамын, себебі ол тегін және деректерді ұсынудың жақсы әдістерін ұсынады. IoT платформаларының басқа мысалдары - Google Cloud, Amazon AWS және Adafruit, Microsoft Azure және т.
Losant орнату:
- Losant жүйесіне кіріңіз
- Құрылғыны жасаңыз (автономды түрі)
- Құрылғыға бірнеше деректер түрін қосыңыз1. Атауы: температура, деректер түрі: саны2. Атауы: офсеттік, деректер түрі: саны3. Атауы: бірлік, деректер түрі: жол
- Кіру кілтін жасаңыз және құрылғы идентификаторы мен кіру кілтін жазып алыңыз
- График құру1. Бақылау тақтасын жасаңыз.2. Температура айнымалысын және жасалған құрылғыны пайдаланып оған «Уақыт сериясының графигі» блогын қосыңыз.
«Құрылғы идентификаторы» құрылғы үшін бірегей саусақ ізі ретінде әрекет ету мақсатына қызмет етеді. «Қол жеткізу кілттері», аты айтып тұрғандай, IoT құрылғының сәйкестендірілген атымен Losant -қа жариялауға мүмкіндік береді.
3 -қадам: MQTT Publisher дайындаңыз
Енді біз IoT платформасын деректерді қабылдауға және ұсынуға дайындадық, біз деректерді жинауға және платформаға жіберуге жауап беретін MQTT баспасын дайындауымыз керек.
MQTT баспагерлерін дайындау схемасы келесідей:
- Кодты жазыңыз: Баспаға (IoT) деректерді жинауды, өңдеуді және IoT платформасына жіберуді үйрету. Нұсқаулықтар әдетте код деп аталатын жоғары деңгейлі бағдарламалау тілдерінде жазылған.
- Микробағдарламаны жарқылдаңыз: IoT бұл нұсқауларды оңай түсінбейді, өйткені ол бастапқыда ешқандай тілді білмейді. Адам мен машина арасындағы бұл тілдік кедергілерді жою үшін код нұсқаулықтардың жиынтығына жинақталған, негізінен IoT ішіндегі жад орындарына тән он алтылық немесе екілік мәндер жиынтығы, содан кейін микробағдарлама IoT -ге жыпылықтайды.
Бұл нұсқаулықта мен ESP32 -ді қолданатындықтан, мен оған Mongoose OS микробағдарламасын қосамын, ол C мен JavaScript -те жазылған бағдарламаларды қабылдайды. JS үйлесімділігінен басқа, Mongoose OS -те әлі де көптеген жаңартулар бар, мысалы, эфирдегі жаңартулар, бағдарламаны желіде реттеу және құрылғыларға арналған арнайы бақылау тақтасы (mDash) және т.
Мен осы нұсқаулық үшін Mongoose OS үшін ашық бастапқы коды жасадым. Бұл ESP32 ішкі температурасының көрсеткіштеріне сүйене отырып, қоршаған ортаның температурасының шамаланған көрсеткіштерін Losant-қа жіберу үшін MQTT қолданатын losant-temp-sensor атты қарапайым қолданба (ақысыз IoT платформасы). Жақсырақ түсіну үшін қосымшаның кодын қарау ұсынылады. Біз осы нұсқаулық үшін осы қосымшаны жыпылықтайтын боламыз.
Егер сіз шытырман оқиғалы адам болсаңыз, ESP32-ді Arduino ретінде пайдалануға мүмкіндік беретін Arduino-ESP32 микробағдарламасымен бір мақсатқа жетуге тырысуға болады (WiFi мүмкіндігі бар).
Mongoose ОЖ -мен жыпылықтайтын қосымшаның қысқаша қорытындысы:
- ОЖ үшін mos құралын орнатыңыз.
-
Құралды ашып, келесі пәрмендерді орындаңыз:
- мос клоны
- cd losant-temp сенсоры
- mos build --platform esp32
- жарқыл
- mos wifi «сіздің wifi ssid» «сіздің WiFi құпия сөзіңіз», мысалы. wifi wifi «Үй» «үй@123»
-
mos конфигурацияланған температура.basis =
температура.бірлік = «
«мысалы. mos конфигурацияланған температура. негіз = 33 / температура. бірлік =» цельсий «
-
mos конфигурацияланған құрылғы.id =
mqtt.client_id = mqtt.user = mqtt.pass =
Сәтті жыпылықтағаннан кейін, құрылғыны қайта жүктеуге рұқсат етіңіз, содан кейін келесі пәрмендерді орындаңыз:
Осы қадамдардың барлығын дұрыс аяқтағаннан кейін сіз ESP32 аласыз, ол әр 10 минут сайын температуралық көрсеткіштерді мезгіл -мезгіл Лозантқа жібереді. Сәтті басып шығару жоғарыдағы бейнеде көрсетілгендей көк жарық диодты шаммен көрсетіледі.
4 -қадам: Ескерту
Егер сіз алдыңғы қадамдарды дұрыс қайталай алатын болсаңыз, онда қазір сізде жұмыс бөлмесі болады, оның көмегімен сіз өзіңіздің бөлмеңіздегі немесе жобаны орналастыруды жоспарлаған кез келген жерде температураның өзгеруін бақылай аласыз. Мен бұл Нұсқаулықты мүмкіндігінше жалпыға ортақ етіп сақтағандықтан, сіз IoT -ні қолдана отырып, барлық ақпаратты жинап, одан пайдалы нәрсе жасауға тырысуға болады, немесе егер сіз мұны ойлану үшін жасай аласыз. Мен бұл нұсқаулықты дұрыс түсіндім.
Мен үшін IoT -тің ең жақсы жағы - бұл бізге үлкен көлемдегі деректерді жинауға мүмкіндік береді, егер жалғыз қабылданса, нәтиже бермейді және оны түпкілікті нәрсеге айналдырады. Бұл шынымен үйге ғылымның рухына әсер етеді. График арқылы жаңбыр кезінде бөлмедегі температураның төмендегенін байқау мен үшін өте қанағаттанарлық және ағартушылық болды.
Losant-temp-sensor-қолданбасы электр энергиясын тұтыну үшін оңтайландырылған, себебі ол ESP32 терең ұйқы мүмкіндігін қолданады, сондықтан сіз оны батарея туралы алаңдамай ұзақ уақыт бойы пайдалана аласыз. Даму тақтасындағы жарықдиодты алып тастау арқылы қуат тиімділігін одан әрі арттыруға болады. Бүкіл орнатудың ағымдағы ұтысы жоғарыда көрсетілген.
Бұл Нұсқаулықтың мақсаты басынан бастап сізге IoT әлемімен таныстыру болды. Нұсқаулықты аяқтағаннан кейін сіз басқа интернет -ресурстар арқылы одан әрі нығайтуға болатын негіздерді жақсы білесіз.
Бұл кезеңде сіз күрделі жобалар жасай алмасаңыз да, егер сізде кірпіш жеткілікті болса және оларды біріктіру әдісі болса, онда сіз кез келген қарапайым құрылымды жасай аласыз. күрделіге. Сол сияқты, негіздерді жақсы түсіну және оларды қалай дұрыс қолдану керектігін білу сізге көптеген қайшылықтарға қарсы тұруға мүмкіндік береді. Сондықтан бірінші қадамды жасағаныңыз үшін өзіңізді арқаңыздан сипаңыз.
5 -қадам: Несие және қолдау
Бұл нұсқаулық суреттерден тұрады, мысалы: Мен жеке жасаған MQTT алмасуды түсіндіретін. Бұл иллюстрациялар келесі SVG ақысыз пакеттерінің арқасында ғана мүмкін болды:
- Инфографикалық вектор фрепик - www.freepik.com сайтынан жасалған
- Starline құрған инфографикалық вектор - www.freepik.com
- Pikisuperstar жасаған адамдар векторы - www.freepik.com
- Макровектор құрған дерексіз вектор - www.freepik.com
- Макровектор құрған дерексіз вектор - www.freepik.com
- Pikisuperstar құрған инфографикалық вектор - www.freepik.com
Бұл нұсқаулыққа DFRobot демеушілік жасады. DFRobot -та керемет электроника жиынтығы бар, оны міндетті түрде тексеріңіз.
Егер сізге осы нұсқаулық ұнады деп ойласаңыз және осындай нұсқаулықтардың көбірек болуын қаласаңыз, онда сіз мені Patreon -да қолдай аласыз. Егер сіз мұншаға бара алмасаңыз, онда сіз мені нұсқаулықтар бойынша осында қадағалай аласыз.
Ұсынылған:
Node.js көмегімен Raspberry Pi бұлтқа қалай қосылады: 7 қадам
Node.js көмегімен Raspberry Pi -ді бұлтқа қалай қосу керек: Бұл оқулық Raspberry Pi -ді бұлтқа, әсіресе Node.js. көмегімен AskSensors IoT платформасына қосқысы келетіндерге пайдалы. Raspberry Pi жоқ па? Егер сізде қазір Raspberry Pi жоқ болса, мен сізге таңқурай алуға кеңес беремін
Arduino Ethernet көмегімен бұлтқа деректерді қалай жіберуге болады: 8 қадам
Arduino Ethernet көмегімен бұлтқа деректерді қалай жіберуге болады: Бұл нұсқаулық сіздің деректеріңізді Arduino Ethernet Shield көмегімен AskSensors IoT платформасына қалай жариялау керектігін көрсетеді. Ethernet Shield сіздің Arduino -ға бұлтқа оңай қосылуға, интернет байланысы арқылы деректерді жіберуге және алуға мүмкіндік береді. Біз не
Arduino WiFi бұлтқа ESP8266 көмегімен қосылады: 7 қадам
ESP8266 көмегімен Arduino WiFi -ді бұлтқа қосу: Бұл оқулықта біз Arduino -ны WiFi арқылы IoT бұлтына қалай қосу керектігін түсіндіреміз. AskSensors бұлтымен байланысу үшін
Neopixel Ws2812 кемпірқосақ жарық диоды M5stick-C - Arduino IDE көмегімен M5stack M5stick C көмегімен Neopixel Ws2812 -де кемпірқосақты іске қосу: 5 қадам
Neopixel Ws2812 кемпірқосақ жарық диоды M5stick-C | Arduino IDE көмегімен M5stack M5stick C көмегімен Neopixel Ws2812-де кемпірқосақты іске қосу: Сәлеметсіз бе балалар, біз осы нұсқаулықта Arduino IDE көмегімен m5stack m5stick-C әзірлеу тақтасы бар neopixel ws2812 жарық диодты немесе жарық диодты немесе жарықдиодты матаны немесе жетекші сақинаны қолдануды үйренеміз. онымен бірге кемпірқосақтың үлгісі
DHT11/DHT22 сенсорын ESP8266 негізіндегі тақтаның көмегімен бұлтқа қосу: 9 қадам
DHT11/DHT22 сенсорын ESP8266 негізіндегі тақтаның көмегімен бұлтқа қосу: Алдыңғы мақалада мен ESP8266 негізіндегі NodeMCU тақтасын Cloud4RPi қызметіне қостым. Енді нақты жобаның уақыты келді