Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Panimula sa MQTT
- Hakbang 2: Panimula sa IoT Platform
- Hakbang 3: Ihanda ang Publisher ng MQTT
- Hakbang 4: Footnote
- Hakbang 5: Mga Kredito at Suporta
Video: Mga Pangunahing Kaalaman sa IoT: Pagkonekta sa Iyong IoT sa Cloud Paggamit ng Mongoose OS: 5 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Kung ikaw ay isang tao na nasa tinkering at electronics, mas madalas kaysa sa hindi, mahahanap mo ang term na Internet of Things, na karaniwang dinaglat bilang IoT, at tumutukoy ito sa isang hanay ng mga aparato na maaaring kumonekta sa internet! Ang aking pagiging isang tao mismo, ako ay nabighani nang malaman ko na ang gayong mahusay na mga aparato ay madaling ma-access sa akin. Ang pag-iisip lamang na maiugnay ang aking mga proyekto sa internet gamit ang isang maliit na piraso ng hardware at iniisip lamang ang tungkol sa hindi mabilang na mga pintuang bukas na ito para sa aking mga ideya sa proyekto kung ako ay bomba.
Ngunit ang pagsasabi sa IoT na kumonekta sa internet ay hindi kasing simple ng pagbili lamang nito sa istante at pag-power up nito. At bukod sa pagkuha ng aparato upang kumonekta sa internet, kailangan din nating itulak ang ilang mga kapaki-pakinabang na data sa internet. Nakikipag-usap ang Ituturo na ito sa pamamaraang kasangkot upang makamit ang nasabing layunin sa itaas, at inilaan para sa mga mambabasa ng anumang antas ng karanasan, mula sa mga nagsisimula hanggang sa mga beterano na bago sa IoT.
Sa Instructable na ito, bilang isang halimbawa, ipapakita ko kung paano i-plot ang graph ng panloob na mga pagbabasa ng sensor ng temperatura ng ESP32 development board na dapat bigyan ang mga mambabasa ng magandang ideya ng proseso.
Kahit na ang Instructable na ito ay gumagamit ng ESP32 at Mongoose OS, ngunit ang pamamaraan ay maaaring mapalawak sa lahat ng mga IoT at firmware doon!
Mga gamit
Upang maipatupad ang Instructable na ito sa iyong sarili, kakailanganin mo lamang ng kaunting halaga ng hardware, at ang mga ito ay:
- Isang Internet of Thing (IoT): Gumamit ako ng isang murang clone ng development board ng ESP32. Kung nagpaplano kang bumili ng isang bagong board ng pag-unlad ng ESP32, dapat mong suriin ang lupon ng ESP32 ng DFRobot.
- Isang Data Cable: Gumamit ng isang cable na kinakailangan ng iyong IoT para sa pag-flashing atbp.
- Isang Baterya (Opsyonal): Bumili lamang ito kung balak mong paigtingin ang iyong IoT sa mahabang panahon.
- Isang Mini Breadboard (Opsyonal)
Iminumungkahi ko sa mambabasa na gumamit ng isang IoT na naiiba sa ESP32 upang maaari niyang tunay na maunawaan kung ano ang ginagawa dito, sa halip na simpleng gayahin ako. Tiwala sa akin, masisiyahan ka sa pagpapatupad ng prosesong ito gamit ang iyong sariling isip sa ilang ibang IoT, halimbawa, ang ESP8266 ay isang mabuting pagpipilian.
Hakbang 1: Panimula sa MQTT
Ano ang MQTT?
"Ang MQTT ay isang simpleng protocol ng pagmemensahe, na idinisenyo para sa mga napigilan na aparato na may mababang bandwidth. Kaya, ito ang perpektong solusyon para sa mga application ng Internet of Things. Pinapayagan ka ng MQTT na magpadala ng mga utos upang makontrol ang mga output, basahin at mai-publish ang data mula sa mga sensor node at marami pa. " (Mula sa RandomNerdTutorials)
Paano gumagana ang MQTT?
Bago pumunta sa teknikal, isipin muna natin ang totoong mundo. Ipagpalagay na interesado ka sa isang koleksyon ng kard na pagmamay-ari ng kaibigan ng kaibigan mo, sabihin mo, Laurel, na hindi mo personal na kilala. Dahil napaka-partikular mo tungkol sa koleksyon ng card na iyon, tatanungin mo ang iyong kaibigan, ipagpalagay na Tom, na tanungin kung nais ni Laurel na ibenta ito o hindi. Habang ginagawa ito, hihilingin mo kay Tom na bumili mismo ng koleksyon ng kard kung nais na ibenta ni Laurel, dahil ayaw mo ng ibang tao na makuha ang kanyang kamay sa koleksyon na iyong kinasasabikan! Sa paglipas ng panahon, nag-ugnay sina Tom at Laurel, at sa magkasabay na kasunduan, binibigyan ni Laurel ng koleksyon ng kanyang card si Tom bilang kapalit ng pera. Matapos ang palitan na ito, itinatago ni Tom ang mga card sa kanyang sarili hanggang sa makilala ka niya ulit, na kung saan ay sa wakas ay bibigyan ka niya ng koleksyon ng card. Ito ay kung paano ang isang normal na pagpapalitan ay nagpapatuloy sa ating pang-araw-araw na buhay.
Sa MQTT, ang mga pangunahing elemento na kasangkot sa palitan ay ang publisher (Laurel), isang subscriber (Ikaw), at ang broker (Tom). Ang daloy ng trabaho nito ay katulad din sa nabanggit sa itaas na halimbawa ng real-world, maliban sa isang malaking pagkakaiba! Sa MQTT, ang palitan ay pinasimulan ng broker, ibig sabihin, si Laurel ang unang makarating kay Tom upang sabihin na nais niyang ibenta ang kanyang koleksyon ng kard. Kung ihinahambing namin ang pagtatrabaho ng MQTT sa aming halimbawa sa totoong mundo, magiging ganito ang sumusunod:
- Sinabi ni Laurel kay Tom na nais niyang ibenta ang kanyang koleksyon ng card (data o payload) at ibigay sa kanya ang mga card.
- Kinukuha ni Tom ang mga kard na iyon sa kanya at bukas sa mga alok para sa koleksyon ng card. Kapag nagkita kayo ni Tom at nalaman niya na interesado kayo sa mga kard (nag-subscribe sa isang paksa). Pagkatapos ay bibigyan ka ni Tom ng mga kard.
Tulad ng buong proseso ay umaasa sa broker at walang direktang pakikipag-ugnay sa pagitan ng subscriber at publisher, tinanggal ng MQTT ang abala ng pag-syncing ng parehong publisher at subscriber. Ang pagkakaroon ng isang intermediate broker ay isang tulong para sa mga aparato na napipigilan ng mapagkukunan tulad ng mga IoT at microprocessor dahil ang kanilang lakas sa pagproseso ay hindi sapat upang maisagawa ang paglilipat ng data sa normal na paraan, na kung saan ay magsasangkot ng mga karagdagang gastos sa overhead tulad ng pagpapatotoo, pag-encrypt atbp Maliban dito, Ang MQTT ay may maraming iba pang mga tampok tulad ng pagiging magaan, isa-sa-maraming pamamahagi, at iba pa, na ginagawang perpekto para sa mga pinipigilan na network at kliyente
Hakbang 2: Panimula sa IoT Platform
Ano ang isang IoT Platform?
"Sa isang mataas na antas, ang isang platform ng Internet of Things (IoT) ay ang software ng suporta na kumokonekta sa gilid ng hardware, mga access point, at mga network ng data sa iba pang mga bahagi ng chain ng halaga (na sa pangkalahatan ay mga application ng end-user). Karaniwang mga IoT platform hawakan ang patuloy na mga gawain sa pamamahala at visualization ng data, na nagpapahintulot sa mga gumagamit na i-automate ang kanilang kapaligiran. " (Mula sa Link-Labs)
Abstractly, ang isang IoT platform ay gumaganap bilang medium sa pagitan ng gumagamit at ng mga ahente ng pagkolekta ng data na responsable para sa kumakatawan sa nakolektang data.
Sa Instructable na ito, pinaplano naming itulak online ang mga pagbabasa ng temperatura ng aming ESP32. Ang aming ESP32 ay kikilos bilang publisher ng MQTT at ang MQTT broker ay magiging isang IoT platform na aming napili. Tandaan na sa aming proyekto, walang papel na ginagampanan ng isang subscriber ng MQTT dahil ang data ay kinakatawan ng mismong platform mismo. Mananagot ang platform ng IoT para sa pagtatago ng aming nai-publish na data at mahusay na kinakatawan ito, dito, bilang isang line graph. Gagamitin ko ang Losant bilang aking IoT platform dahil malaya itong gamitin at nag-aalok ng ilang magagandang paraan upang kumatawan sa data. Ang ilan pang mga halimbawa ng mga platform ng IoT ay ang Google Cloud, Amazon AWS at Adafruit, Microsoft Azure atbp Nais kong payuhan ang mambabasa na mag-refer sa dokumentasyon ng kanilang napiling platform ng IoT.
Pag-set up ng Losant:
- Mag-login sa Losant
- Lumikha ng isang aparato (Standalone type)
- Magdagdag ng ilang mga uri ng data sa aparato1. Pangalan: temperatura, Uri ng Data: Bilang2. Pangalan: offset, Uri ng Data: Bilang3. Pangalan: unit, Uri ng Data: String
- Bumuo ng isang access key at itala ang aparato ID at access key
- Lumikha ng isang grap1 Lumikha ng isang dashboard.2. Idagdag ang "Time Series Graph" na bloke dito gamit ang variable ng temperatura at iyong nilikha na aparato.
Naghahain ang "Device ID" ng layunin ng pagkilos bilang isang natatanging fingerprint para sa isang aparato. Ang "mga access key", tulad ng iminumungkahi ng pangalan, ay nagbibigay-daan sa IoT na mai-publish sa Losant sa ilalim ng pagkakakilanlan ng aparato.
Hakbang 3: Ihanda ang Publisher ng MQTT
Ngayon na inihanda na namin ang platform ng IoT para sa pagtanggap at pagkatawan sa data, kailangan naming maghanda ng isang publisher ng MQTT na responsable para sa pagkolekta at pagpapadala ng data sa platform.
Ang balangkas ng paghahanda ng publisher ng MQTT ay ang mga sumusunod:
- Isulat ang code: Upang turuan ang publisher (IoT) kung paano mangolekta ng data, iproseso at ipadala ito sa IoT platform. Ang mga tagubilin ay nakasulat sa nababasa ng tao na mataas na antas ng mga wika ng programa na karaniwang tinutukoy bilang ang code.
- I-flash ang firmware: Hindi madaling maunawaan ng IoT ang mga tagubiling ito dahil hindi nito alam ang anumang wika sa una. Upang tulay ang hadlang ng wika sa pagitan ng tao at machine, ang code ay naipon sa isang krudo na hanay ng mga tagubilin, karaniwang nagtatakda ng mga hexadecimal o binary halaga na tukoy sa mga lokasyon ng memorya sa loob ng IoT, na kilala bilang firmware na pagkatapos ay na-flash sa IoT.
Sa Instructable na ito, dahil ginagamit ko ang aking madaling gamiting ESP32, ilalagay ko dito ang Mongoose OS firmware, na tumatanggap ng parehong nakasulat na mga programa sa C at JavaScript. Bukod sa pagiging tugma ng JS, ang Mongoose OS ay marami pa ring maiaalok, tulad ng mga pag-update sa hangin, para sa pag-tweak ng iyong programa sa online, at isang nakalaang dashboard para sa mga aparato (mDash) atbp.
Bumuo ako ng isang open-source app para sa Mongoose OS para sa Instructable na ito. Ito ay isang simpleng app na pinangalanang losant-temp-sensor, na gumagamit ng MQTT upang maipadala ang tinatayang pagbabasa ng temperatura sa paligid, batay sa mga panloob na pagbasa ng temperatura ng ESP32, sa Losant (isang libreng IoT platform na ginagamit). Pinapayuhan na dumaan sa code ng app para sa isang mas mahusay na pag-unawa. I-flashing namin ang app na ito para sa Instructable na ito.
Kung ikaw ang mapangahas na uri, maaari mong subukang makamit ang parehong layunin sa Arduino-ESP32 firmware na nagbibigay-daan sa paggamit ng ESP32 bilang isang Arduino (na may kakayahang WiFi).
Isang mabilis na rundown para sa flashing app sa Mongoose OS:
- I-install ang mos tool para sa iyong OS.
-
Buksan ang tool at ipatupad ang mga sumusunod na utos:
- mos clone
- cd losant-temp-sensor
- mos build --platform esp32
- mos flash
- mos wifi "ang iyong wifi ssid" "ang iyong wifi password" hal. mos wifi "Home" "home @ 123"
-
mos config-set temperatura.basis =
temperatura.unit ="
"hal. mos config-set temperatura.basis = 33 / temperatura.unit =" celsius"
-
mos config-set aparato.id =
mqtt.client_id = mqtt.user = mqtt.pass =
Matapos ang matagumpay na pag-flashing, payagan ang aparato na mag-reboot at pagkatapos ay isagawa ang mga sumusunod na utos:
Matapos matapos nang tama ang lahat ng mga hakbang na ito, magtatapos ka sa isang ESP32 na nagpapadala ng mga pagbabasa ng temperatura sa Losant pana-panahon, pagkatapos ng bawat 10 minuto. Ang matagumpay na pag-publish ay ipinahiwatig ng asul na LED, tulad ng ipinakita sa video sa itaas.
Hakbang 4: Footnote
Kung nagawa mong kopyahin nang tama ang mga nakaraang hakbang, ngayon ay magkakaroon ka ng isang gumaganang proyekto sa tulong nito na maaari mong obserbahan ang mga trend ng temperatura sa loob ng iyong silid, o saanman balak mong ilagay ang proyekto. Dahil pinananatili ko ang Instructable na ito bilang pangkalahatan na magagawa ko ito, samakatuwid maaari mong gamitin ang iyong IoT upang mangolekta ng lahat ng uri ng data at subukang tapusin ang isang bagay na kapaki-pakinabang mula dito, o magagawa mo lamang ito alang-alang sa pag-tinkering kung ikaw ay maayos na naintindihan ang Ituturo.
Para sa akin, ang pinakamagandang bahagi tungkol sa IoT ay ang katotohanang nagbibigay-daan ito sa amin upang mangolekta ng malalaking mga tipak ng data, hindi kapani-paniwala kung mag-isa at i-convert ito sa isang bagay na kapani-paniwala. Talagang tumatama ito sa espiritu ng agham. Para sa akin, napaka-kasiya-siya at nakakaaliw upang mapansin ang pagbagsak ng temperatura sa loob ng aking silid sa mga oras ng pag-ulan sa pamamagitan ng aking grap.
Ang losant-temp-sensor-app ay na-optimize para sa pagkonsumo ng kuryente, dahil gumagamit ito ng tampok na malalim na pagtulog ng ESP32 samakatuwid maaari mo itong magamit sa mahabang panahon nang hindi nababahala tungkol sa baterya. Maaari mong karagdagang mapalawak ang kahusayan ng kuryente sa pamamagitan ng pag-alis ng LED sa development board. Ang kasalukuyang gumuhit ng buong pag-setup ay ipinakita sa itaas.
Ang layunin ng Instructable na ito, mula pa sa simula ay ibigay lamang sa iyo ang isang pagpapakilala sa mundo ng IoT. Sa pagtatapos ng Instructable na ito, magkakaroon ka ng mahusay na paghawak sa mga pangunahing kaalaman na maaari mong palakasin kahit sa pamamagitan ng iba pang mga mapagkukunang online.
Bagaman hindi ka makakagawa ng mga kumplikadong proyekto sa yugtong ito, ngunit dapat itong laging tandaan na kung mayroon kang isang sapat na malakas na brick, at isang paraan upang pagsamahin ang mga ito nang magkasama, maaari kang gumawa ng anumang maiisip na istraktura, mula sa simple sa kumplikado. Katulad nito, ang pagkakaroon ng mahusay na pag-unawa sa mga pangunahing kaalaman at pag-alam kung paano ilapat ang mga ito nang tama ay magbibigay-daan sa iyo upang maglagay ng maraming mga contraptions. Samakatuwid bigyan ang iyong sarili ng isang tapik sa likod para sa pagkuha ng unang hakbang.
Hakbang 5: Mga Kredito at Suporta
Ang Instructable na ito ay binubuo ng mga guhit, hal. ang isa na nagpapaliwanag ng palitan ng MQTT, na personal kong ginawa. Ang mga guhit na iyon ay posible lamang salamat sa mga sumusunod na SVG pack na libre gamitin:
- Ang infographic vector ay nilikha ng freepik - www.freepik.com
- Ang infographic vector ay nilikha ng starline - www.freepik.com
- People vector nilikha ng pikisuperstar - www.freepik.com
- Abstract vector nilikha ng macrovector - www.freepik.com
- Abstract vector nilikha ng macrovector - www.freepik.com
- Ang infographic vector ay nilikha ng pikisuperstar - www.freepik.com
Ang Instructable na ito ay na-sponsor ng DFRobot. Ang DFRobot ay may isang kahanga-hangang koleksyon ng electronics kaya tiyaking suriin ito.
Kung sa palagay mo nagustuhan mo ang Instructable na ito at nais ng higit na Mga Instructable na tulad nito, maaari mo akong suportahan sa Patreon. Kung hindi ka makakalayo, maaari mo akong sundin dito sa Mga Instructable.
Inirerekumendang:
Paggamit ng Flux - Mga Pangunahing Kaalaman sa Paghinang: 5 Hakbang
Paggamit ng Flux | Mga Pangunahing Kaalaman sa Paghinang: Kailanman ka naghinang, ang solder ay kailangang gumawa ng isang mahusay na bono sa mga bahagi na iyong pag-solder. Ang metal ng mga bahagi at metal ng solder ay kailangang makipag-ugnay sa bawat isa upang makalikha ng isang mabuting bono. Ngunit dahil ako
Paggamit ng Perfboard - Mga Pangunahing Kaalaman sa Paghinang: 14 Mga Hakbang (na may Mga Larawan)
Paggamit ng Perfboard | Mga Pangunahing Kaalaman sa Paghinang: Kung nagtatayo ka ng isang circuit ngunit wala kang isang dinisenyong circuit board para dito, ang paggamit ng perfboard ay isang mahusay na pagpipilian. Ang mga Perfboard ay tinatawag ding Perforated Circuit Boards, Prototyping Boards, at Dot PCBs. Karaniwan ito ay isang pangkat ng mga tanso pad sa circu
Mga Pangunahing Kaalaman sa VBScript - Simula ang Iyong Mga Script, Mga pagkaantala at Higit Pa !: 5 Hakbang
Mga Pangunahing Kaalaman sa VBScript - Simula ang Iyong Mga Script, Mga pagkaantala at Higit Pa!: Maligayang pagdating sa aking unang tutorial sa kung paano gumawa ng VBScripts na may notepad. Sa mga file ng.vbs, maaari kang lumikha ng ilang mga nakakatawang kalokohan o nakamamatay na mga virus. Sa tutorial na ito, ipapakita ko sa iyo ang mga pangunahing utos tulad ng pagsisimula ng iyong script, pagbubukas ng mga file at marami pa. Sa t
Pagkonekta sa Arduino WiFi sa Cloud Paggamit ng ESP8266: 7 Mga Hakbang
Pagkonekta ng Arduino WiFi sa Cloud Paggamit ng ESP8266: Sa tutorial na ito ipapaliwanag namin sa iyo kung paano ikonekta ang iyong Arduino sa IoT cloud sa pamamagitan ng WiFi. I-configure namin ang isang setup na binubuo mula sa isang Arduino at isang module ng ESP8266 WiFi bilang isang IoT Thing at gawin itong handa upang makipag-usap sa cloud ng AskSensors.L
Program Pro-mini Paggamit ng Uno (Mga Pangunahing Kaalaman sa Arduino): 7 Mga Hakbang (na may Mga Larawan)
Program Pro-mini Paggamit ng Uno (Mga Pangunahing Kaalaman sa Arduino): Hai lahat, Sa itinuturo na ito nais kong ibahagi sa iyo ang aking karanasan sa aking kamakailang biniling Arduino pro-mini at kung paano ko na-upload ang code dito sa unang pagkakataon, gamit ang aking ang lumang Arduino Uno. Angrduino pro-mini ay may mga sumusunod na tampok: Ito ay