Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Johdatus MQTT: hen
- Vaihe 2: Johdatus IoT Platformiin
- Vaihe 3: Valmistele MQTT Publisher
- Vaihe 4: Alaviite
- Vaihe 5: Lainat ja tuki
Video: IoT: n perusteet: IoT: n yhdistäminen pilveen Mongoose -käyttöjärjestelmän avulla: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Jos olet henkilö, joka harrastaa tinkimistä ja elektroniikkaa, törmäät usein termiin esineiden internet, yleensä lyhennettynä IoT, ja että se viittaa laitteisiin, jotka voivat muodostaa yhteyden Internetiin! Koska olin itse tällainen henkilö, olin kiehtonut, kun sain tietää, että tällaiset hienot laitteet olivat helposti saatavilla. Pelkkä ajatus siitä, että voisin yhdistää projektini Internetiin pienellä laitteistolla ja vain ajatella lukemattomia portteja, jotka se avaisi projektiideoilleni, sai minut pumppaamaan.
Mutta IoT: n käskeminen muodostaa yhteys Internetiin ei ole niin yksinkertaista kuin vain ostaa se hyllyltä ja käynnistää se. Sen lisäksi, että saamme laitteen muodostamaan yhteyden Internetiin, meidän on myös siirrettävä hyödyllisiä tietoja Internetiin. Tässä ohjeessa käsitellään edellä mainitun tavoitteen saavuttamiseen liittyvää menettelyä, ja se on tarkoitettu kaiken tasoisille lukijoille aloittelijoista veteraaneihin, jotka ovat uusia IoT: ssä.
Tässä Instructable -ohjelmassa esitän esimerkkinä, kuinka piirtää ESP32 -kehityskortin sisäisten lämpötila -anturien lukujen kaavio, jonka pitäisi antaa lukijoille hyvä käsitys prosessista.
Vaikka tämä ohje sisältää ESP32- ja Mongoose -käyttöjärjestelmiä, menettely voidaan kuitenkin laajentaa koskemaan kaikkia olemassa olevia esineiden internetiä ja laiteohjelmistoja!
Tarvikkeet
Jotta voisit toteuttaa tämän ohjeen itse, tarvitset vain vähäisen määrän laitteistoa, ja ne ovat:
- Internet of Thing (IoT): Olen käyttänyt halpaa ESP32 -kehityskortin kloonia. Jos aiot ostaa uuden ESP32 -kehityskortin, sinun on tutustuttava DFRobotin ESP32 -korttiin.
- Datakaapeli: Käytä kaapelia, jota IoT -laitteesi vaatii vilkuttamiseen jne.
- A Akku (valinnainen): Osta tämä vain, jos aiot käynnistää IoT: n pitkäksi aikaa.
- A Mini Breadboard (valinnainen)
Ehdotan lukijalta käyttää erilaista IoT: tä kuin ESP32, jotta hän voi todella ymmärtää, mitä täällä tehdään, sen sijaan, että vain matkisi minua. Luota minuun, nautit tämän prosessin toteuttamisesta käyttämällä omaa mieltäsi jossakin muussa IoT: ssä, esimerkiksi ESP8266 olisi hyvä valinta.
Vaihe 1: Johdatus MQTT: hen
Mikä on MQTT?
"MQTT on yksinkertainen viestintäprotokolla, joka on suunniteltu rajoitetuille laitteille, joilla on alhainen kaistanleveys. Joten se on täydellinen ratkaisu esineiden Internet-sovelluksiin. MQTT: n avulla voit lähettää komentoja ohjaamaan lähdöjä, lukea ja julkaista tietoja anturisolmuista ja paljon muuta. " (Lähde: RandomNerdTutorials)
Miten MQTT toimii?
Ennen kuin ryhdyt tekniseksi, ajatellaan ensin todellista maailmaa. Oletetaan, että olet kiinnostunut korttikokoelmasta, jonka omistaa ystäväsi ystävä, esimerkiksi Laurel, jota et henkilökohtaisesti tunne. Koska olet erityisen kiinnostunut kyseisestä korttikokoelmasta, pyydät ystävääsi, olettaen Tomia, kysymään, onko Laurel valmis myymään sen vai ei. Samalla pyydät Tomia ostamaan korttikokoelman itse, jos Laurel on valmis myymään, koska et halua jonkun muun saavan käsiinsä kokoelmaa, jota kaipaat! Ajan myötä Tom ja Laurel ovat vuorovaikutuksessa, ja yhteisestä sopimuksesta Laurel antaa korttikokoelmansa Tomille vastineeksi rahasta. Tämän vaihdon jälkeen Tom pitää kortit itsellään, kunnes tapaa sinut uudelleen, jolloin hän lopulta antaa sinulle korttikokoelman. Näin normaali vaihto kulkee jokapäiväisessä elämässämme.
MQTT: ssä vaihtoon osallistuvat peruselementit ovat kustantaja (Laurel), tilaaja (Sinä) ja välittäjä (Tom). Sen työnkulku on myös samanlainen kuin yllä esitetty reaalimaailman esimerkki, paitsi yksi valtava ero! MQTT: ssä välittäjä aloittaa vaihdon, toisin sanoen Laurel tavoittaa ensimmäisenä Tomin kertoakseen, että hän haluaa myydä korttikokoelmansa. Jos verrataan MQTT: n toimintaa todelliseen esimerkkiimme, se olisi seuraava:
- Laurel kertoo Tomille, että hän haluaa myydä korttikokoelmansa (tiedot tai hyötykuorman) ja antaa kortit hänelle.
- Tom ottaa nämä kortit haltuunsa ja on avoin tarjouksille korttien keräämiseksi. Kun sinä ja Tom tapaat ja hän huomaa, että olet kiinnostunut korteista (tilaa aihe). Sitten Tom antaa sinulle kortit.
Koska koko prosessi perustuu välittäjään eikä tilaajan ja julkaisijan väliseen suoraan vuorovaikutukseen, MQTT poistaa kustantajan ja tilaajan synkronoinnin vaivan. Välivälittäjän läsnäolo on siunaus resurssirajoitteisille laitteille, kuten esineiden internet ja mikroprosessorit, koska niiden käsittelyteho ei riitä suorittamaan tiedonsiirtoa normaalilla tavalla, mikä aiheuttaisi lisäkustannuksia, kuten todentaminen, salaus jne. MQTT: llä on paljon muita ominaisuuksia, kuten kevyt, jakelu yhdestä moniin ja niin edelleen, mikä tekee siitä ihanteellisen rajoitetuille verkkoille ja asiakkaille
Vaihe 2: Johdatus IoT Platformiin
Mikä on IoT -alusta?
"Korkealla tasolla esineiden internet (IoT) -alusta on tukiohjelmisto, joka yhdistää reunalaitteistot, tukiasemat ja tietoverkot muihin arvoketjun osiin (jotka ovat yleensä loppukäyttäjäsovelluksia). hoitaa jatkuvia hallintatehtäviä ja tietojen visualisointia, joiden avulla käyttäjät voivat automatisoida ympäristönsä. " (Link-Labsista)
Tiivistettynä IoT -alusta toimii väliaineena käyttäjän ja tiedonkerääjien välillä, jotka ovat vastuussa kerättyjen tietojen edustamisesta.
Tässä ohjeessa aiomme siirtää ESP32: n lämpötilalukemat verkkoon. ESP32 toimii MQTT -julkaisijana ja MQTT -välittäjä on valitsemamme IoT -alusta. Huomaa, että projektissamme ei ole MQTT -tilaajan roolia, koska alusta edustaa itse tietoja. IoT -alusta vastaa julkaistujen tietojen tallentamisesta ja kauniista esittämisestä tässä viivakaaviona. Käytän Losantia IoT -alustana täällä, koska se on ilmainen ja tarjoaa hyviä tapoja edustaa tietoja. Joitakin muita esimerkkejä IoT -alustoista ovat Google Cloud, Amazon AWS ja Adafruit, Microsoft Azure jne. Haluan neuvoa lukijaa tutustumaan valitsemansa IoT -alustan dokumentaatioon.
Losantin asettaminen:
- Kirjaudu sisään Losant
- Luo laite (itsenäinen tyyppi)
- Lisää laitteeseen muutama tietotyyppi 1. Nimi: lämpötila, tietotyyppi: numero 2. Nimi: siirtymä, tietotyyppi: numero 3. Nimi: yksikkö, tietotyyppi: Jono
- Luo käyttöavain ja kirjoita muistiin laitteen tunnus ja käyttöavain
- Luo kaavio 1. Luo koontinäyttö.2. Lisää "Aikasarjan kuvaaja" -lohko siihen käyttämällä lämpötilamuuttujaa ja luomaasi laitetta.
"Laitetunnus" toimii laitteen ainutlaatuisena sormenjäljenä. "Käyttöavaimet", kuten nimestä voi päätellä, sallivat IoT: n julkaista Losantille laitetunnuksella.
Vaihe 3: Valmistele MQTT Publisher
Nyt kun olemme valmistelleet IoT -alustan tietojen vastaanottamista ja edustamista varten, meidän on valmisteltava MQTT -julkaisija, joka olisi vastuussa tietojen keräämisestä ja lähettämisestä alustalle.
MQTT -julkaisijoiden valmistelu on seuraava:
- Kirjoita koodi: Ohjaa julkaisijaa (IoT) tietojen keräämiseen, käsittelyyn ja lähettämiseen IoT -alustalle. Ohjeet on kirjoitettu ihmisen luettavissa olevilla korkean tason ohjelmointikielillä, joita yleensä kutsutaan koodiksi.
- Päivitä laiteohjelmisto: IoT ei ymmärrä näitä ohjeita helposti, koska se ei aluksi osaa mitään kieltä. Tämän ihmisen ja koneen välisen kielimuurin ylittämiseksi koodi kootaan karkeaksi ohjejoukkoksi, pohjimmiltaan heksadesimaalisten tai binaaristen arvojen joukkoiksi, jotka ovat ominaisia IoT: n muistipaikoille.
Tässä Instructable -ohjelmassa, koska käytän kätevää ESP32 -laitettani, vilkkun siihen Mongoose OS -laiteohjelmistoa, joka hyväksyy sekä C- että JavaScript -ohjelmat. JS -yhteensopivuuden lisäksi Mongoose OS: llä on vielä paljon tarjottavaa, kuten langattomat päivitykset, ohjelman säätämiseksi verkossa ja oma kojelauta laitteille (mDash) jne.
Olen kehittänyt avoimen lähdekoodin sovelluksen Mongoose OS: lle tätä Instructablea varten. Se on yksinkertainen sovellus nimeltä losant-temp-sensor, joka käyttää MQTT: tä lähettääkseen arvioidut ympäristölämpötilalukemat ESP32: n sisäisten lämpötilalukemien perusteella Losantille (vapaasti käytettävä IoT-alusta). On suositeltavaa käydä läpi sovelluksen koodi ymmärtääksesi paremmin. Välätämme tämän sovelluksen tätä Instructablea varten.
Jos olet seikkailunhaluinen, voit yrittää saavuttaa saman tavoitteen Arduino-ESP32-laiteohjelmistolla, joka mahdollistaa ESP32: n käytön Arduinona (WiFi-ominaisuudella).
Nopea katsaus vilkkuvaan sovellukseen, jossa on Mongoose OS:
- Asenna käyttöjärjestelmän käyttöjärjestelmä.
-
Avaa työkalu ja suorita seuraavat komennot:
- mos klooni
- cd losant-temp-anturi
- mos build --platform esp32
- mos vilkkuu
- mos wifi "wifi ssid" "" wifi -salasanasi "esim. mos wifi "Koti" "koti@123"
-
mos config-set temperature.basis =
lämpötila.yksikkö ="
"esim. mos konfiguraation asettama lämpötila.perusta = 33 / lämpötila.yksikkö =" celsius"
-
mos config-set device.id =
mqtt.client_id = mqtt.user = mqtt.pass =
Kun vilkkuminen on onnistunut, anna laitteen käynnistyä uudelleen ja suorita seuraavat komennot:
Kun olet suorittanut kaikki nämä vaiheet oikein, saat ESP32: n, joka lähettää lämpötilalukemat Losantille säännöllisesti 10 minuutin välein. Julkaisun onnistumisesta kertoo sininen LED, kuten yllä olevassa videossa näkyy.
Vaihe 4: Alaviite
Jos pystyt toistamaan edelliset vaiheet oikein, sinulla on nyt työprojekti, jonka avulla voit seurata lämpötilan kehitystä huoneessasi tai mihin tahansa projektin sijoittamiseen. Koska olen pitänyt tämän Instructable -ohjelman mahdollisimman yleisenä, voit siis käyttää IoT: si kaikenlaisten tietojen keräämiseen ja yrittää tehdä siitä jotain hyödyllistä, tai voit tehdä sen vain piilottamisen vuoksi, jos olet ymmärtänyt tämän ohjeen oikein.
Minulle paras osa IoT: tä on se, että sen avulla voimme kerätä valtavia paloja dataa, joka ei ole yksiselitteinen, ja muuttaa siitä jotain ratkaisevaa. Tämä todella herättää tieteen hengen. Minulle oli erittäin tyydyttävää ja valaisevaa huomata, että lämpötila laski huoneessani sadeaikana kaavioni kautta.
Losant-temp-sensor-app on optimoitu virrankulutukselle, koska se käyttää ESP32: n syvän lepotilan ominaisuutta, joten voit käyttää sitä pitkään ilman huolta akusta. Voit laajentaa virrankulutusta entisestään poistamalla kehityskortin LED -valon. Koko kokoonpanon nykyinen piirustus on esitetty yllä.
Tämän Instructable -ohjelman tarkoitus oli alusta alkaen vain esitellä sinulle IoT -maailma. Kun olet suorittanut tämän Instructable -ohjelman, sinulla on hyvä käsitys perusasioista, joita voit vahvistaa entisestään muiden verkkoresurssien avulla.
Vaikka et voi tehdä monimutkaisia projekteja tässä vaiheessa, on kuitenkin aina pidettävä mielessä, että jos sinulla on tarpeeksi vahva tiili ja tapa yhdistää ne yhteen, voit tehdä minkä tahansa kuviteltavan rakenteen yksinkertaisesta monimutkaiseksi. Samoin, kun ymmärrät perusteet ja osaat soveltaa niitä oikein, voit laittaa lukuisia keinoja. Taputa siis itseäsi selkään ottaaksesi ensimmäisen askeleen.
Vaihe 5: Lainat ja tuki
Tämä opas sisältää kuvituksia, esim. joka selittää henkilökohtaisesti tekemäni MQTT -vaihdon. Nämä kuvat ovat olleet mahdollisia vain seuraavien vapaasti käytettävien SVG-pakettien ansiosta:
- Infografiavektori, jonka loi freepik - www.freepik.com
- Infographic -vektori, jonka on luonut starline - www.freepik.com
- Ihmiset vektori luonut pikisuperstar - www.freepik.com
- Makrovektorin luoma abstrakti vektori - www.freepik.com
- Makrovektorin luoma abstrakti vektori - www.freepik.com
- Infografiavektori, jonka loi pikisuperstar - www.freepik.com
Tämän ohjeen on sponsoroinut DFRobot. DFRobotilla on mahtava elektroniikkakokoelma, joten muista tarkistaa se.
Jos sinusta tuntuu, että pidit tästä Instructable -ohjelmasta ja haluat lisää tällaisia Instructable -ohjelmia, voit tukea minua Patreonissa. Jos et voi mennä niin pitkälle, voit seurata minua täällä Instructablesissa.
Suositeltava:
Raspberry Pi: n yhdistäminen pilveen Node.js: n avulla: 7 vaihetta
Raspberry Pi: n yhdistäminen pilveen Node.js: n avulla: Tämä opetusohjelma on hyödyllinen kaikille, jotka haluavat yhdistää Raspberry Pi: n pilveen, erityisesti AskSensors IoT -alustaan, käyttäen Node.js. Jos sinulla ei ole Raspberry Pi: tä, suosittelen, että hankit Vadelman
Tietojen lähettäminen pilveen Arduino Ethernetin avulla: 8 vaihetta
Tietojen lähettäminen pilveen Arduino Ethernetin avulla: Tässä ohjeessa kerrotaan, miten voit julkaista tietosi AskSensors IoT -alustalle Arduino Ethernet Shield -sovelluksella. Ethernet Shieldin avulla Arduino voi helposti muodostaa yhteyden pilveen, lähettää ja vastaanottaa tietoja Internet -yhteyden avulla. Mitä me
Arduino WiFi: n yhdistäminen pilveen käyttämällä ESP8266: 7 vaihetta
Arduino WiFi: n yhdistäminen pilveen ESP8266: n avulla: Tässä opetusohjelmassa kerromme, kuinka Arduino liitetään IoT -pilveen WiFi: n avulla. kommunikoida AskSensors -pilven kanssa.L
Twitterin yhdistäminen Eclipse -projektiin Twitter4J -sovellusliittymän avulla: 5 vaihetta
Twitterin yhdistäminen Eclipse -projektiin Twitter4J -sovellusliittymän avulla: Tässä ohjeessa kerrotaan, kuinka voit yhdistää Twitter -tilisi Eclipse -projektiin ja kuinka tuoda Twitter4J -sovellusohjelmiston käyttöliittymä (API), jotta sen toimintoja voidaan käyttää lukemisen ja kirjoittamisen automatisoimiseen Twitteriin . Tämä opettavainen
UCL - Punaisen solmun yhdistäminen Siemens PLC: hen KEPserverin avulla: 7 vaihetta
UCL-Punaisen solmun yhdistäminen Siemens PLC: hen KEP-palvelimen avulla: Vaatimukset Solmunpunainen: https://nodered.org/docs/getting-started/installationKEPserver: https://www.kepware.com/en-us/kepserverex-6 -6-julkaisu