- Súčasti sú povinné
- Schéma zapojenia
- Nastavenie Thinger.io pre záznamník teploty ESP8266
- Nastavenie IFTTT pre záznamník údajov NodeMCU
- Programovanie NodeMCU pre zaznamenávanie údajov
- Prihlasovanie údajov na serveri Thinger.io z NodeMCU
- Vytvára sa koncový bod v súbore Thinger.io na odoslanie e-mailovej výstrahy
Predtým sme program NodeMCU používali na zaznamenávanie údajov o teplote do tabuľky Google. Teraz tu pošleme údaje do cloudu IoT spoločnosti Thinger.io a zobrazíme ich v atraktívnom grafickom formáte. Senzor BMP180 je prepojený s NodeMCU ESP8266 na zhromažďovanie údajov o teplote, vlhkosti a nadmorskej výške, ktoré sa odošlú na platformu Thinger.io. V tomto tutoriáli sa naučíme, ako spravovať rôzne funkcie platformy thinger.io, ako sú zariadenia, koncové body, dátové segmenty alebo prístupové tokeny.
Súčasti sú povinné
- NodeMCU ESP8266
- BMP180 Tlakový senzor
- Prepojovacie drôty
- Nepál
Schéma zapojenia
Schéma zapojenia tohto záznamníka dát ESP8266 je veľmi jednoduchá, tu je s NodeMCU prepojený iba snímač BMP180.
Snímač BMP180 používa komunikačný protokol I2C. Musíte teda pripojiť piny SCL a SDA BMP180 na piny SCL a SDA (D1 a D2) NodeMCU. Pripojte tiež kolíky V IN a GND BMP180 na 3,3 V a GND NodeMCU. Nepripájajte senzor priamo k 5V, pretože by to mohlo senzor trvale poškodiť.
Ak sa chcete dozvedieť viac informácií o NodeMCU, pozrite si rôzne projekty IoT založené na NodeMCU ESP8266.
Nastavenie Thinger.io pre záznamník teploty ESP8266
Thinger.io je platforma otvoreného zdroja pre internet vecí. Poskytuje všetky potrebné nástroje na prototypovanie, škálovanie a správu pripojených produktov veľmi jednoduchým spôsobom. Thinger.io poskytuje tri základné nástroje, napríklad Data Bucks, Dashboard a Endpoint na prácu s dátami zariadení; tieto nástroje možno použiť na vizualizáciu údajov o zariadení a na rozšírenie interoperability zariadení.
Data Bucks: Nástroj Data Bucks možno použiť na škálovateľné ukladanie údajov o zariadeniach, programovanie rôznych intervalov vzorkovania alebo zaznamenávanie udalostí vyvolaných zariadeniami.
Dashboard: Nástroj Dashboard obsahuje niektoré panely s prispôsobiteľnými widgetmi, ktoré je možné vytvoriť behom niekoľkých minút pomocou technológie drag and drop na vizualizáciu uložených údajov v reálnom čase.
Koncové body: Koncové body možno integrovať platformu s ďalšími službami, ako je IFTTT, vlastné webové služby, e-maily, alebo volajte na iné zariadenia.
V tomto protokolovaní ESP8266 budeme skúmať tieto nástroje.
Ak chcete odosielať údaje na server Thinger.io, musíte si vytvoriť bezplatný účet na platforme Thinger.io a pripojiť svoje zariadenie podľa nasledujúcich pokynov.
Krok 1: Prvým krokom je vytvorenie nového zariadenia. Ak chcete vytvoriť nové zariadenie, kliknite na Zariadenia na karte ponuky a potom na tlačidlo Pridať zariadenie.
Potom vyplňte formulár ID zariadenia, popisom a povereniami alebo vygenerujte náhodné poverenia pre svoje zariadenie a kliknite na možnosť „ Pridať zariadenie “.
To je všetko; vaše zariadenie je pripravené na pripojenie. V ďalšom kroku naprogramujeme NodeMCU na odosielanie údajov na platformu Thinger.io.
Nastavenie IFTTT pre záznamník údajov NodeMCU
Tu používame IFTTT na zasielanie e-mailových varovaní, keď teplota prekročí limit. IFTTT (If This Then That) je webová služba, pomocou ktorej môžeme vytvárať reťazce podmienených príkazov nazývaných applety. Pomocou týchto appletov môžeme posielať e-maily, Twitter, Facebook oznámenia.
Ak chcete používať IFTTT, prihláste sa do účtu IFTTT, ak ho už máte, alebo si vytvorte účet.
Teraz vyhľadajte výraz „ Webhooks “ a kliknite na sekciu Webhooks v službách.
Potom v okne Webhooks kliknite na „Dokumentácia“ v pravom hornom rohu a získate súkromný kľúč. Skopírujte tento kľúč, tento kľúč sa použije pri vytváraní Endpoint v Thinger.io.
Potom pomocou aplikácií Webhooks a Email vytvorte applet. Ak chcete vytvoriť applet, kliknite na svoj profil a potom na položku Vytvoriť. „
Teraz v ďalšom okne kliknite na ikonu „ Toto “. Teraz vyhľadajte Webhooks v sekcii vyhľadávania a kliknite na „ Webhooks “.
Teraz zvoľte spúšťač „ Prijať webovú požiadavku“ a zadajte názov udalosti ako dočasnú a potom kliknite na vytvoriť spúšťač.
Potom kliknite na „ Potom“ a potom na E-mail.
Teraz v e-maile kliknite na „poslať mi e-mail“ a zadajte predmet a telo e-mailu a potom kliknite na vytvoriť akciu. V poslednom kroku dokončite nastavenie appletu kliknutím na „ Dokončiť “.
Programovanie NodeMCU pre zaznamenávanie údajov
Celý kód na odoslanie údajov na server Thinger.io je uvedený na konci stránky. Tu vysvetľujeme niektoré dôležité časti.
Spustite kód zahrnutím všetkých požadovaných knižníc. ThingerESP8266.h slúži na obnovenie spojenia medzi platformou internetu vecí a NodeMCU zatiaľ čo Adafruit_BMP085.h sa používa na čítanie BMP dáta snímača. Knižnicu ThingerESP8266.h môžete nainštalovať zo správcu knižníc IDE Arduino.
#include
Ďalej zadajte poverenia do kódu, aby bolo možné zariadenie rozpoznať a priradiť k vášmu účtu.
#define USERNAME "Používateľské meno vášho účtu" #define DEVICE_ID "NodeMCU" // názov vášho zariadenia #define DEVICE_CREDENTIAL "FcLySVkP8YFR"
Potom zadajte názov svojho koncového bodu. Koncový bod sa používa na integráciu platformy s externými službami, ako sú IFTTT, požiadavka HTTTP atď.
#define EMAIL_ENDPOINT „IFTTT“
Definujte premenné na ukladanie údajov o tlaku, teplote a nadmorskej výške.
tlak, teplota, nadmorská výška;
Vo vnútri prázdnej slučky () prečítajte údaje senzora. PSone typ dát môže pojať rôzne dátové typy. Dátový typ Pson sa teda používa na príjem viacerých hodnôt súčasne.
vec >> (pson & out) {out = bmp.readPressure () / 100; out = bmp.readAltitude (); out = bmp.readTemperature (); };
Použitie ak podmienka volať koncový bod, ak teplota opustí okolo 15 stupňov. Tu sú údaje názov koncového bodu.
if (Teplota> 15) {thing.call_endpoint (EMAIL_ENDPOINT, "data");} Serial.print ("Odosielanie údajov");
Prihlasovanie údajov na serveri Thinger.io z NodeMCU
Teraz pripojte snímač BMP k NodeMCU a nahrajte kód. NodeMCU použije vaše prihlasovacie údaje na pripojenie k zariadeniu, ktoré ste vytvorili skôr. Ak sa úspešne pripojí, zobrazí sa pripojené, ako je to znázornené na nasledujúcom obrázku:
Kliknutím na názov zariadenia v ponuke Zariadenia môžete skontrolovať štatistiku svojho zariadenia, ako sú Prenesené údaje, Prijaté údaje, IP adresa, Čas pripojenia atď.
Keď teraz prijímame údaje, vytvoríme informačný panel na vizualizáciu údajov pomocou widgetov.
Ak chcete vytvoriť informačný panel, na karte ponuky kliknite na informačné panely a potom na položku Pridať informačný panel .
Teraz v ďalšom okne zadajte podrobnosti palubnej dosky, ako je názov, ID a popis, a potom kliknite na informačný panel.
Potom prejdite na nový informačný panel kliknutím na názov informačného panela. V predvolenom nastavení sa informačný panel zobrazí prázdny. Ak chcete pridať widgety, musíte najskôr povoliť režim úprav kliknutím na pravý horný prepínač palubnej dosky. Potom kliknite na tlačidlo „ Pridať widget“ .
Keď kliknete na tlačidlo „ Pridať widget“ , zobrazí sa vyskakovacie okno, kde môžete zvoliť typ widgetu, farbu pozadia atď. V mojom prípade som vybral widget Gauge Widget.
Po kliknutí na uložiť sa dostanete na ďalšiu obrazovku, kde musíte zvoliť režim Zdrojová hodnota, Zariadenie, Zdroj, Hodnota a Obnoviť. Vyberte všetky hodnoty a potom kliknite na tlačidlo Uložiť.
Teraz zopakujte rovnaký postup pre ostatné premenné. Môj informačný panel vyzeral takto:
Vytvára sa koncový bod v súbore Thinger.io na odoslanie e-mailovej výstrahy
Teraz vytvoríme koncový bod na integráciu Thinger.io s IFTTT. Koncový bod môže zariadenie zavolať na vykonanie akejkoľvek akcie, ako je napríklad odoslanie e-mailu, odoslanie SMS, volanie rozhrania REST API, interakcia s IFTTT, volanie zariadenia z iného účtu alebo volanie na akýkoľvek iný koncový bod
Ak chcete vytvoriť koncový bod, na kartách ponuky kliknite na možnosť „Koncový bod“ a potom na „Pridať koncový bod“.
Teraz v ďalšom okne zadajte požadované podrobnosti. Podrobnosti sú:
Endpoint Id: Jedinečný identifikátor pre váš koncový bod.
Popis koncového bodu: Napíšte popis alebo podrobné informácie o svojom koncovom bode.
Typ koncového bodu: Vyberte typ koncového bodu z daných možností.
Názov udalosti výrobcu: Zadajte názov svojho appletu IFTTT.
Kľúč kanála Maker: Tajný kľúč vášho servera Webhooks.
Potom kliknite na Test koncového bodu a skontrolujte, či všetko funguje. Mal by vám poslať e-mail s varovaním o údajoch o teplote.
Namiesto použitia nástroja IFTTT Webhook Trigger môžete poslať e-mail alebo telegramovú správu alebo môžete odoslať požiadavku HTTP pomocou funkcií koncového bodu.
Takto možno NodeMCU ESP8266 použiť na zaznamenávanie údajov o teplote, tlaku a nadmorskej výške zo senzora BMP180 na internet.
Pracovné video a kompletný kód sú uvedené na konci stránky.