- Potrebne komponente
- Shema vezja
- Nastavitev Thinger.io za temperaturni zapisovalnik ESP8266
- Nastavitev IFTTT za zapisovalnik podatkov NodeMCU
- Programiranje NodeMCU za beleženje podatkov
- Beleženje podatkov na Thinger.io iz NodeMCU
- Ustvarjanje končne točke v Thinger.io za pošiljanje opozoril po e-pošti
Prej smo uporabljali NodeMCU za beleženje podatkov o temperaturi v Googlovem listu. Zdaj bomo podatke poslali v oblak Thinger.io IoT in jih prikazali v privlačni grafični obliki. Senzor BMP180 je povezan z NodeMCU ESP8266 za zbiranje podatkov o temperaturi, vlažnosti in nadmorski višini, ki bodo poslani na platformo Thinger.io. V tej vadnici bomo izvedeli, kako upravljati različne funkcije platforme thinger.io, kot so naprave, končne točke, segmenti podatkov ali žetoni za dostop.
Potrebne komponente
- NodeMCU ESP8266
- BMP180 Tlačni senzor
- Jumper žice
- Breadboard
Shema vezja
Shema vezja za ta zapisovalnik podatkov ESP8266 je zelo preprosta, tu je z NodeMCU povezan samo senzor BMP180.
Senzor BMP180 uporablja komunikacijski protokol I2C. Torej morate povezati zatiča SCL in SDA BMP180 z zatiči SCL in SDA (D1 in D2) NodeMCU. Prav tako priključite V IN in GND zatič BMP180 na 3,3 V in GND NodeMCU. Senzorja ne priključite neposredno na 5 V, ker lahko trajno poškoduje senzor.
Če želite izvedeti več o NodeMCU, preverite različne IoT projekte, ki temeljijo na NodeMCU ESP8266.
Nastavitev Thinger.io za temperaturni zapisovalnik ESP8266
Thinger.io je odprtokodna platforma za internet stvari. Zagotavlja vsa potrebna orodja za izdelavo prototipov, skaliranje in upravljanje povezanih izdelkov na zelo preprost način. Thinger.io ponuja tri bistvena orodja, tj. Data Bucks, Dashboard in Endpoint za delo s podatki o napravah; ta orodja se lahko uporabljajo za vizualizacijo podatkov o napravi in razširitev interoperabilnosti naprav.
Data Bucks: orodje Data Bucks se lahko uporablja za shranjevanje podatkov naprave na prilagodljiv način, programiranje različnih intervalov vzorčenja ali snemanje dogodkov, ki jih sprožijo naprave.
Nadzorna plošča: Orodje na nadzorni plošči ima nekaj plošč s prilagodljivimi pripomočki, ki jih lahko ustvarite v nekaj minutah s tehnologijo povleci in spusti za vizualizacijo sprotnih in shranjenih podatkov.
Končne točke: Končne točke lahko uporabite za integracijo platforme z drugimi storitvami, kot so IFTTT, spletne storitve po meri, e-poštna sporočila ali klicanje drugih naprav.
V tem zapisovanju ESP8266 bomo raziskali ta orodja.
Če želite podatke poslati na Thinger.io, morate ustvariti brezplačen račun na platformi Thinger.io in slediti spodnjim korakom za povezavo naprave.
1. korak: Prvi korak je ustvariti novo napravo. Če želite ustvariti novo napravo, na zavihku menija kliknite Naprave in nato gumb Dodaj napravo.
Nato izpolnite obrazec z ID-jem naprave, opisom in poverilnicami ali ustvarite naključne poverilnice za svojo napravo in kliknite » Dodaj napravo« .
To je vse; naprava je pripravljena za povezavo. V naslednjem koraku bomo NodeMCU programirali za pošiljanje podatkov na platformo Thinger.io.
Nastavitev IFTTT za zapisovalnik podatkov NodeMCU
Tu uporabljamo IFTTT za pošiljanje opozoril po e-pošti, ko temperatura preseže mejo. IFTTT (If This Then That) je spletna storitev, s katero lahko ustvarimo verige pogojnih stavkov, imenovanih apleti. S pomočjo teh programčkov lahko pošiljamo e-pošto, Twitter, Facebook obvestila.
Če želite uporabljati IFTTT, se prijavite v račun IFTTT, če ga že imate, ali ustvarite račun.
Zdaj poiščite " Webhooks " in kliknite na Webhooks v razdelku Services.
Nato v oknu Webhooks kliknite »Dokumentacija« v zgornjem desnem kotu, da dobite zasebni ključ. Kopirajte ta ključ, ta ključ bo uporabljen med ustvarjanjem končne točke v Thinger.io.
Po tem ustvarite programček s pomočjo storitev Webhooks in Email . Če želite ustvariti programček, kliknite svoj profil in nato » Ustvari. "
Zdaj v naslednjem oknu kliknite ikono » To «. Zdaj v razdelku za iskanje poiščite Webhooks in kliknite » Webhooks« .
Zdaj izberite sprožilec » Prejmi spletno zahtevo« in vnesite ime dogodka kot začasno in nato kliknite na ustvari sprožilec.
Po tem kliknite » Potem to« in nato še E-pošta.
Zdaj v e-pošti kliknite "pošlji mi e-pošto", vnesite zadevo in telo e-pošte ter nato kliknite na ustvarjanje dejanja. V zadnjem koraku kliknite » Dokončaj «, da dokončate namestitev programčka.
Programiranje NodeMCU za beleženje podatkov
Popolna koda za pošiljanje podatkov na Thinger.io je navedena na koncu strani. Tukaj razlagamo nekaj pomembnih delov.
Zaženite kodo tako, da vključite vse zahtevane knjižnice. ThingerESP8266.h se uporablja za vzpostavitev povezave med platformo interneta stvari in NodeMCU pa Adafruit_BMP085.h uporablja za branje BMP podatkov senzorja. Knjižnico ThingerESP8266.h lahko namestite iz upravitelja knjižnice Arduino IDEs.
#include
Nato v kodo vnesite poverilnice, da bo naprava prepoznana in povezana z vašim računom.
#define USERNAME "Uporabniško ime vašega računa" #define DEVICE_ID "NodeMCU" // Ime vaše naprave #define DEVICE_CREDENTIAL "FcLySVkP8YFR"
Nato vnesite ime končne točke. Končna točka se uporablja za integracijo platforme z zunanjimi storitvami, kot so IFTTT, zahteva HTTTP itd.
#define EMAIL_ENDPOINT "IFTTT"
Določite spremenljivke za shranjevanje podatkov o tlaku, temperaturi in nadmorski višini.
int tlak, temperatura, nadmorska višina;
Znotraj void zanke () preberite podatke senzorja. Pson tip podatkov lahko vsebuje različne vrste podatkov. Torej se podatkovni tip Pson uporablja za sprejemanje več vrednosti hkrati.
stvar >> (pson & out) {out = bmp.readPressure () / 100; out = bmp.readAltitude (); out = bmp.readTemperature (); };
Uporabite pogoj if za klic končne točke, če temperatura preseže 15 stopinj. Tu so podatki ime končne točke.
if (Temperatura> 15) {thing.call_endpoint (EMAIL_ENDPOINT, "data");} Serial.print ("Pošiljanje podatkov");
Beleženje podatkov na Thinger.io iz NodeMCU
Zdaj priključite senzor BMP na NodeMCU in naložite kodo. NodeMCU bo uporabil poverilnice vašega računa za povezavo z napravo, ki ste jo ustvarili prej. Če se uspešno poveže, bo prikazan povezan, kot je prikazano na spodnji sliki:
Statistične podatke o napravi, kot so posredovani podatki, prejeti podatki, naslov IP, čas povezave itd., Lahko preverite s klikom imena naprave v meniju naprave
Ko zdaj prejemamo podatke, bomo ustvarili nadzorno ploščo za vizualizacijo podatkov s pomočjo gradnikov.
Če želite ustvariti nadzorno ploščo, na zavihku menija kliknite Nadzorne plošče in nato » Dodaj nadzorno ploščo« .
Zdaj v naslednje okno vnesite podrobnosti armaturne plošče, kot so ime, ID in Opis armaturne plošče, in nato kliknite Nadzorna plošča.
Po tem odprite novo nadzorno ploščo, tako da kliknete ime nadzorne plošče. Privzeto je nadzorna plošča prazna. Če želite dodati pripomočke, morate najprej omogočiti način urejanja s klikom na zgornje desno stikalo na armaturni plošči. Nato kliknite gumb " Dodaj pripomoček" .
Ko kliknete gumb » Dodaj pripomoček« , se prikaže pojavno okno, kjer lahko izberete vrsto pripomočka, barvo ozadja itd. V mojem primeru sem izbral pripomoček za merjenje.
Ko kliknete na shrani, se prikaže naslednji zaslon, kjer morate izbrati način izvorne vrednosti, naprave, vira, vrednosti in osveževanja. Izberite vse vrednosti in nato kliknite gumb Shrani.
Zdaj ponovite isti postopek za ostale spremenljivke. Moja nadzorna plošča je izgledala tako:
Ustvarjanje končne točke v Thinger.io za pošiljanje opozoril po e-pošti
Zdaj bomo ustvarili končno točko za integracijo Thinger.io z IFTTT. Naprava lahko pokliče končno točko, da izvede katero koli dejanje, na primer pošlje e-pošto, pošlje SMS, pokliče REST API, komunicira z IFTTT, pokliče napravo iz drugega računa ali pokliče katero koli drugo končno točko
Če želite ustvariti končno točko, na zavihkih v meniju kliknite možnost »Končna točka« in nato »Dodaj končno točko«.
Zdaj v naslednje okno vnesite zahtevane podrobnosti. Podrobnosti so:
ID končne točke: enolični identifikator končne točke.
Opis končne točke: Napišite opis ali podrobne informacije o svoji končni točki.
Endpoint Type: izberite vrsto končne točke med danimi možnostmi.
Ime dogodka izdelovalca: Vnesite ime svojega programčka IFTTT.
Ključ programa Maker: vaš skrivni ključ za Webhooks.
Po tem kliknite Test Endpoint, da preverite, ali vse deluje. Poslalo bi vam e-pošto z opozorilom o temperaturnih podatkih.
Namesto da uporabite IFTTT Webhook Trigger, lahko pošljete e-poštno sporočilo ali sporočilo v telegramu ali zahtevo HTTP s funkcijo končne točke.
Tako lahko NodeMCU ESP8266 uporabite za beleženje podatkov o temperaturi, tlaku in nadmorski višini s senzorja BMP180 v internet.
Delovni video in popolna koda sta podana na koncu strani.