- Tarvittavat komponentit
- Piirikaavio
- Thinger.io-asetukset ESP8266-lämpötilalokeroon
- IFTTT-asetukset NodeMCU-tiedonkerääjälle
- NodeMCU: n ohjelmointi tiedonkeruuta varten
- Tietojen kirjaaminen Thinger.io-palveluun NodeMCU: lta
- Luo päätepiste Thinger.io-palvelussa sähköpostihälytyksen lähettämistä varten
Aikaisemmin käytimme NodeMCU: ta lämpötilatietojen kirjaamiseen Google-taulukkoon. Nyt täällä aiomme lähettää tietoja Thinger.io IoT -pilviin ja näyttää ne houkuttelevassa graafisessa muodossa. BMP180-anturi on liitetty NodeMCU ESP8266: n kanssa lämpötilan, kosteuden ja korkeuden tietojen keräämiseksi, jotka lähetetään Thinger.io-alustalle. Tässä opetusohjelmassa opitaan, miten hallitaan thinger.io-alustan eri ominaisuuksia, kuten laitteita, päätepisteitä, tietoryhmiä tai käyttöoikeustunnuksia.
Tarvittavat komponentit
- SolmuMCU ESP8266
- BMP180 Paineanturi
- Neulalangat
- Leipälauta
Piirikaavio
Tämän ESP8266-tiedonkerääjän piirikaavio on hyvin yksinkertainen, tässä vain BMP180-anturi on liitetty NodeMCU: han.
BMP180-anturi käyttää I2C-yhteyskäytäntöä. Joten sinun on kytkettävä BMP180: n SCL- ja SDA-nastat NodeMCU: n SCL- ja SDA-nastoihin (D1 ja D2). Liitä myös BMP180: n V IN- ja GND-nasta NodeMCU: n 3,3 V: n ja GND: hen. Älä kytke anturia suoraan 5V: iin, koska se voi vahingoittaa anturia pysyvästi.
Jos haluat lisätietoja NodeMCU: sta, tarkista erilaiset IoT-projektit, jotka perustuvat NodeMCU ESP8266: een.
Thinger.io-asetukset ESP8266-lämpötilalokeroon
Thinger.io on esineiden internetin avoimen lähdekoodin foorumi. Se tarjoaa kaikki tarvittavat työkalut yhdistettyjen tuotteiden prototyyppiin, mittakaavaan ja hallintaan hyvin yksinkertaisella tavalla. Thinger.io tarjoaa kolme välttämätöntä työkalua eli Data Bucks, Dashboard ja Endpoint laitetietojen käsittelyyn. Näitä työkaluja voidaan käyttää laitteen tietojen visualisointiin ja laitteiden yhteentoimivuuden laajentamiseen.
Data Bucks: Data Bucks -työkalua voidaan käyttää tallentamaan laitetiedot skaalattavalla tavalla, ohjelmoimalla erilaisia näytteenottovälejä tai tallentamalla laitteiden nostamia tapahtumia.
Dashboard: Dashboard-työkalussa on joitain paneeleja, joissa on mukautettavat widgetit, jotka voidaan luoda muutamassa minuutissa vetämällä ja pudottamalla -tekniikalla reaaliaikaisen ja tallennetun datan visualisoimiseksi.
Päätepisteet: Päätepisteitä voidaan käyttää alustan integroimiseen muihin palveluihin, kuten IFTTT, mukautetut verkkopalvelut, sähköpostit tai soittaminen muihin laitteisiin.
Tässä ESP8266-kirjauksessa tutkimme näitä työkaluja.
Jos haluat lähettää tietoja Thinger.io: lle, sinun on luotava ilmainen tili Thinger.io-alustalle ja liitettävä laite noudattamalla seuraavia ohjeita.
Vaihe 1: Ensimmäinen vaihe on luoda uusi laite. Luo uusi laite napsauttamalla valikkovälilehdessä Laitteet ja napsauttamalla sitten Lisää laite -painiketta.
Täytä sitten lomake laitetunnuksella, kuvauksella ja tunnistetiedoilla tai luo satunnaiset tunnistetiedot laitteellesi ja napsauta Lisää laite .
Siinä kaikki; laite on valmis muodostamaan yhteyden. Seuraavassa vaiheessa ohjelmoimme NodeMCU: n lähettämään tiedot Thinger.io-alustalle.
IFTTT-asetukset NodeMCU-tiedonkerääjälle
Täällä käytämme IFTTT: tä sähköpostivaroitusten lähettämiseen, kun lämpötila ylittää rajan. IFTTT (If This Then That) on verkkopohjainen palvelu, jolla voimme luoda ehdollisten lauseiden ketjut, joita kutsutaan appleteiksi. Näitä sovelmia käyttämällä voimme lähettää sähköpostia, Twitteriä, Facebook-ilmoituksia.
Jos haluat käyttää IFTTT: tä, kirjaudu IFTTT-tilille, jos sinulla on jo sellainen, tai luo tili.
Etsi nyt ' Webhooks ' ja napsauta Webhooks in Services -osiossa.
Napsauta sitten Webhooks-ikkunassa oikeassa yläkulmassa olevaa 'Dokumentaatio' saadaksesi yksityisen avaimen. Kopioi tämä avain, tätä avainta käytetään, kun luodaan Endpoint Thinger.io -sivustossa.
Luo sen jälkeen sovelma Webhook- ja Email-palveluilla . Luo sovelma napsauttamalla profiiliasi ja napsauttamalla sitten Luo. '
Napsauta seuraavassa ikkunassa tätä -kuvaketta. Etsi nyt Webhookeja hakuosiosta ja napsauta ' Webhooks '.
Valitse nyt Vastaanota verkkopyyntö -liipaisin ja kirjoita tapahtuman nimi lämpötilaksi ja napsauta sitten Luo liipaisin.
Napsauta tämän jälkeen ' Sitten se' ja napsauta sitten Sähköposti.
Napsauta nyt sähköpostissa "lähetä minulle sähköpostia", kirjoita sähköpostin aihe ja teksti ja napsauta sitten Luo toiminto. Viimeistele Applet-määritys napsauttamalla viimeisessä vaiheessa Valmis .
NodeMCU: n ohjelmointi tiedonkeruuta varten
Täydellinen koodi tietojen lähettämiseen Thinger.io: lle on annettu sivun lopussa. Tässä selitämme joitain tärkeitä osia.
Aloita koodi sisällyttämällä kaikki vaaditut kirjastot. ThingerESP8266.h käytetään luomaan yhteyden esineiden internetin alustan ja NodeMCU kun Adafruit_BMP085.h käytetään lukemaan BMP anturin tiedot. Voit asentaa ThingerESP8266.h- kirjaston Arduino IDEs -kirjastonhallinnasta.
#sisältää
Syötä seuraavaksi tunnukset koodiin, jotta laite voidaan tunnistaa ja liittää tiliisi.
#define USERNAME "Tilisi käyttäjätunnus" #define DEVICE_ID "NodeMCU" // Laitteen nimi #define DEVICE_CREDENTIAL "FcLySVkP8YFR"
Kirjoita sitten päätepisteesi nimi. Päätepistettä käytetään alustan integroimiseen ulkoisiin palveluihin, kuten IFTTT, HTTTP-pyyntö jne.
#define EMAIL_ENDPOINT "IFTTT"
Määritä muuttujat paine-, lämpötila- ja korkeustietojen tallentamiseksi.
int Paine, lämpötila, korkeus;
Sisällä void silmukka (), lue anturin tietoja. Pson tietotyyppi mahtuu erilaiset tiedot. Joten Pson-tietotyyppiä käytetään useiden arvojen vastaanottamiseen samanaikaisesti.
juttu >> (pson & out) {out = bmp.readPressure () / 100; out = bmp.readAltitude (); out = bmp.readTemperature (); };
Käytä jos ehto soittaa Endpoint Jos lämpötila-arvo menee ohi 15 astetta. Tässä data on päätepisteen nimi.
if (Lämpötila> 15) {thing.call_endpoint (EMAIL_ENDPOINT, "data");} Serial.print ("Tietojen lähettäminen");
Tietojen kirjaaminen Thinger.io-palveluun NodeMCU: lta
Liitä nyt BMP-anturi NodeMCU: han ja lataa koodi. NodeMCU käyttää tilisi kirjautumistietoja yhteyden muodostamiseen aiemmin luomallesi laitteelle. Jos se muodostaa yhteyden onnistuneesti, se näkyy yhdistettynä alla olevan kuvan mukaisesti:
Voit tarkistaa laitteesi tilastotiedot, kuten lähetetyt tiedot, vastaanotetut tiedot, IP-osoite, yhteysaika jne., Napsauttamalla laitteen nimeä Laitteet-valikossa.
Kun vastaanotamme tietoja nyt, luomme hallintapaneelin tietojen visualisoimiseksi widgetien avulla.
Luo koontinäyttö napsauttamalla valikkovälilehdessä Koontinäytöt ja napsauttamalla sitten Lisää koontinäyttö .
Kirjoita nyt seuraavaan ikkunaan kojelaudan tiedot, kuten kojelaudan nimi, tunnus ja kuvaus, ja napsauta sitten Kojelauta.
Tämän jälkeen pääset uuteen hallintapaneeliin napsauttamalla Hallintapaneelin nimeä. Kojelauta näkyy oletusarvoisesti tyhjä. Widgetien lisäämiseksi sinun on ensin otettava käyttöön muokkaustila napsauttamalla kojelaudan oikeassa yläkulmassa olevaa kytkintä. Napsauta sitten Lisää widget -painiketta.
Kun napsautat Lisää widget -painiketta, se näyttää ponnahdusikkunan, jossa voit valita widgetin tyypin, taustavärin jne. Minun tapauksessani olen valinnut mittari-widgetin.
Kun napsautat Tallenna, se vie sinut seuraavaan näyttöön, jossa sinun on valittava Lähde-arvo, Laite, Resurssi, Arvo ja Päivitä-tila. Valitse kaikki arvot ja napsauta sitten Tallenna-painiketta.
Toista nyt sama menettely muille muuttujille. Kojelautani näytti tältä:
Luo päätepiste Thinger.io-palvelussa sähköpostihälytyksen lähettämistä varten
Nyt luomme päätepisteen Thinger.io: n integroimiseksi IFTTT: n kanssa. Laite voi kutsua päätepisteen suorittamaan minkä tahansa toiminnon, kuten sähköpostin lähettämisen, tekstiviestin lähettämisen, REST-sovellusliittymän soittamisen, IFTTT-yhteyden käytön, laitteen soittamisen toisesta tilistä tai soittamisen mihin tahansa muuhun
Luo päätepiste napsauttamalla valikkovälilehdissä olevaa vaihtoehtoa Päätepiste ja napsauttamalla sitten Lisää päätepiste.
Syötä nyt seuraavaan ikkunaan tarvittavat tiedot. Tiedot ovat:
Päätepisteen tunnus: Päätepisteen yksilöllinen tunniste.
Päätepisteen kuvaus: Kirjoita kuvaus tai yksityiskohtaisia tietoja päätepisteestäsi.
Endpoint Type: Valitse päätepisteen tyyppi annetuista vaihtoehdoista.
Maker-tapahtuman nimi: Kirjoita IFTTT-sovelman nimi.
Maker Channel Key: Webhooksin salainen avain.
Tämän jälkeen napsauta Test Endpoint tarkistaa, toimiiko kaikki. Sen pitäisi lähettää sinulle sähköposti, jossa on varoitus lämpötiladatasta.
IFTTT Webhook Trigger -toiminnon käyttämisen sijaan voit lähettää sähköposti- tai sähkeviestin tai lähettää HTTP-pyynnön Endpoint-ominaisuuksien avulla.
Näin NodeMCU ESP8266: ta voidaan käyttää lämpötilan, paineen ja korkeuden tietojen kirjaamiseen BMP180-anturista Internetiin.
Toimiva video ja täydellinen koodi annetaan sivun lopussa.