IoT: ThingSpeak
m (Stránka Letní IoT: ThingSpeak přemístěna na stránku IoT: ThingSpeak) |
m (→Možnosti zobrazení) |
||
| (Není zobrazeno 16 mezilehlých verzí od 1 uživatele.) | |||
| Řádka 1: | Řádka 1: | ||
| − | [[Category:VSE]][[Category:Informatika]][[Category:Letní IoT]] | + | [[Category:VSE]][[Category:Informatika]][[Category:Letní IoT]][[Category:IoT]][[Category:Učebnice IoT]] |
| + | == Co to je == | ||
| + | |||
| + | Webová služba, na posílání dat ze zařízení. My tam budeme pravidelně posílat data z čidel a vytvoříme si tak meteostanici. | ||
| + | |||
| + | == Založení účtu == | ||
| + | |||
| + | Na webu [https://thingspeak.com/ Thingspeak] si založte účet. | ||
| + | |||
| + | (vpravo nahoře) Sign in -> (pod MathWorks) Create one! -> Vyplňte přihlašovací údaje (bez diakritiky) -> Continue -> zaškrknout Use this email for my MathWorks Account -> Continue | ||
| + | (přejděte na email, dojde Vám email) Verify email -> pokračujte na webu Continue -> Zadejte heslo (8-50 znaků, jedno velké písmeno a jednu číslici) -> Continue -> (Účet se vytvoří) -> OK | ||
| + | Máte zvolit k čemu to budete používat (zvolte, co uznáte za vhodné) | ||
| + | |||
| + | == Založení kanálu (projektu) == | ||
| + | |||
| + | Po úspěšném založení účtu / přihlášení se. | ||
| + | |||
| + | Channels -> My Channels -> New Channels | ||
| + | Vyplnit název a zvolit počet polí (Field), můžeme posílat až 8 hodnot (teplota, vlhkost, tlak, intenzita osvětlení...) -> Save Channel | ||
| + | |||
| + | == Úprava kanálu == | ||
| + | |||
| + | Smazání zaslaných hodnot ''Channel Settings -> Clear Channel (dole, červené tlačítko)'' | ||
| + | |||
| + | Změna počtu polí a jejich názvů ''Channel Settings -> Field 1 – Field 8'' | ||
| + | |||
| + | Api klíče (zápis i čtení) ''Api keys'' | ||
| + | |||
| + | == Odesílání náhodných dat == | ||
| + | |||
| + | Nejprve musíme otestovat, zda je možné něco odesílat (zda je v pořádku spojení). Budou se odesílat náhodná čísla v rozmezí 0 - 100. | ||
| + | |||
| + | Stáhněte si následující kód a v něm jsou poznámky co a jak. | ||
| + | |||
| + | <div class="Priklad"> | ||
| + | [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/ThingsSpeak_zkouskaSpojeni/ThingsSpeak_zkouskaSpojeni.ino Zkouška spojení] | ||
| + | </div> | ||
| + | |||
| + | Také budeme potřebovat knihovnu [https://github.com/CestmirKolarik/IoTucebnice/blob/main/Knihovny/ThingSpeak.zip ThingSpeak] a na [https://github.com/CestmirKolarik/IoTucebnice/blob/main/Knihovny/WiFiManager-master.zip Wifi]. | ||
| + | |||
| + | == Odesílání dat z čidel == | ||
| + | |||
| + | Pokud se nám povedlo odesílat něco na ThingSpeak, můžeme přejít na odesílání dat z čidla. | ||
| + | |||
| + | Budeme muset do předchozího kódu přidat věci, které jsou potřeba k [[IoT: HTU21D |čidlu]] (knihovny, inicializace...) | ||
| + | |||
| + | * Import knihoven | ||
| + | #include <ThingSpeak.h> | ||
| + | #include <ESP8266WiFi.h> | ||
| + | #include <Wire.h> | ||
| + | #include <HTU21D.h> | ||
| + | |||
| + | HTU21D myHTU21D(HTU21D_RES_RH12_TEMP14); | ||
| + | |||
| + | * ve void setup() – za inicializováním sériové komunikace | ||
| + | //kontroluje, že je čidlo správně zapojené a funguje | ||
| + | while (myHTU21D.begin() != true) | ||
| + | { | ||
| + | Serial.println(F("HTU21D, SHT21 snímač selhal nebo není připojen")); | ||
| + | delay(5000); | ||
| + | } | ||
| + | Serial.println(F("HTU21D, SHT21 snímač je aktivní")); | ||
| + | |||
| + | * ve void loop() budeme posílat data z čidla | ||
| + | |||
| + | void loop() { | ||
| + | //pokud je wifi odpojena, znovu ji připojíme | ||
| + | if(WiFi.status() != WL_CONNECTED){ | ||
| + | connectWiFi(); | ||
| + | } | ||
| + | |||
| + | //z čidel si do proměnných načteme hodnoty | ||
| + | float teplota = myHTU21D.readTemperature(); | ||
| + | float vlhkost = myHTU21D.readHumidity(); | ||
| + | |||
| + | //přiřadíme hodnotu polím v thingspeaku | ||
| + | ThingSpeak.setField(1, teplota); | ||
| + | ThingSpeak.setField(2, vlhkost); | ||
| + | |||
| + | //odešleme hodnoty polí na thingspeak | ||
| + | sendToThingspeak(); | ||
| + | |||
| + | //počká interval | ||
| + | delay(interval); | ||
| + | } | ||
| + | |||
| + | <div class="Priklad"> | ||
| + | [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/ThingsSpeak_HTU21D/ThingsSpeak_HTU21D.ino Celý kód na HTU21D] | ||
| + | </div> | ||
| + | |||
| + | == Možnosti zobrazení == | ||
| + | |||
| + | Přidání Widgetu – ''Add Widgets'' | ||
| + | |||
| + | Úprava Widgetu – v pravé horní části Widgetu je ''tužtička'', na tu klikněte a zobrazí se Vám nastavení | ||
| + | |||
| + | == Mobilní aplikace == | ||
| + | |||
| + | Vaše data můžete sledovat i přes mobilní aplikaci pro Android [https://play.google.com/store/apps/details?id=com.devinterestdev.thingshow&hl=cs&gl=US ThingShow - ThingSpeak visualizer]. | ||
| + | |||
| + | Aplikací, co dělají tuto věc je mnoho, já jsem si vybral tuto a ukážu Vám, jak to funguje. | ||
| + | |||
| + | *Budeme potřebovat | ||
| + | ** Channel ID: 1327277 | ||
| + | ** Read API Key: V1MKMRTBT4WF1RH8 (ten najdeme v ''API Keys'') | ||
| + | *V mobilní aplikaci dáme v pravém dolním rohu +, podle toho, zda máme veřejný, či soukromý kanál, tak zvolíme další možnost (veřejný nepotřebuje Read API key). | ||
| + | *Musíme zadat Channel ID a API Key a server (již je napsán – https://thingspeak.com) | ||
| + | *Open | ||
| + | *''OK znak'' vpravo nahoře | ||
| + | *A je hotovo, u ostatních aplikacích by to mělo být podobné | ||
| + | |||
| + | == Další články == | ||
[http://jurasek.wz.cz/index.php/iot1/22-thingspeak-webova-prezentace thingspeak - webová prezentace] | [http://jurasek.wz.cz/index.php/iot1/22-thingspeak-webova-prezentace thingspeak - webová prezentace] | ||
Aktuální verze z 16. 3. 2021, 22:14
Obsah |
Co to je
Webová služba, na posílání dat ze zařízení. My tam budeme pravidelně posílat data z čidel a vytvoříme si tak meteostanici.
Založení účtu
Na webu Thingspeak si založte účet.
(vpravo nahoře) Sign in -> (pod MathWorks) Create one! -> Vyplňte přihlašovací údaje (bez diakritiky) -> Continue -> zaškrknout Use this email for my MathWorks Account -> Continue (přejděte na email, dojde Vám email) Verify email -> pokračujte na webu Continue -> Zadejte heslo (8-50 znaků, jedno velké písmeno a jednu číslici) -> Continue -> (Účet se vytvoří) -> OK Máte zvolit k čemu to budete používat (zvolte, co uznáte za vhodné)
Založení kanálu (projektu)
Po úspěšném založení účtu / přihlášení se.
Channels -> My Channels -> New Channels Vyplnit název a zvolit počet polí (Field), můžeme posílat až 8 hodnot (teplota, vlhkost, tlak, intenzita osvětlení...) -> Save Channel
Úprava kanálu
Smazání zaslaných hodnot Channel Settings -> Clear Channel (dole, červené tlačítko)
Změna počtu polí a jejich názvů Channel Settings -> Field 1 – Field 8
Api klíče (zápis i čtení) Api keys
Odesílání náhodných dat
Nejprve musíme otestovat, zda je možné něco odesílat (zda je v pořádku spojení). Budou se odesílat náhodná čísla v rozmezí 0 - 100.
Stáhněte si následující kód a v něm jsou poznámky co a jak.
Také budeme potřebovat knihovnu ThingSpeak a na Wifi.
Odesílání dat z čidel
Pokud se nám povedlo odesílat něco na ThingSpeak, můžeme přejít na odesílání dat z čidla.
Budeme muset do předchozího kódu přidat věci, které jsou potřeba k čidlu (knihovny, inicializace...)
- Import knihoven
#include <ThingSpeak.h> #include <ESP8266WiFi.h> #include <Wire.h> #include <HTU21D.h> HTU21D myHTU21D(HTU21D_RES_RH12_TEMP14);
- ve void setup() – za inicializováním sériové komunikace
//kontroluje, že je čidlo správně zapojené a funguje
while (myHTU21D.begin() != true)
{
Serial.println(F("HTU21D, SHT21 snímač selhal nebo není připojen"));
delay(5000);
}
Serial.println(F("HTU21D, SHT21 snímač je aktivní"));
- ve void loop() budeme posílat data z čidla
void loop() {
//pokud je wifi odpojena, znovu ji připojíme
if(WiFi.status() != WL_CONNECTED){
connectWiFi();
}
//z čidel si do proměnných načteme hodnoty
float teplota = myHTU21D.readTemperature();
float vlhkost = myHTU21D.readHumidity();
//přiřadíme hodnotu polím v thingspeaku
ThingSpeak.setField(1, teplota);
ThingSpeak.setField(2, vlhkost);
//odešleme hodnoty polí na thingspeak
sendToThingspeak();
//počká interval
delay(interval);
}
Možnosti zobrazení
Přidání Widgetu – Add Widgets
Úprava Widgetu – v pravé horní části Widgetu je tužtička, na tu klikněte a zobrazí se Vám nastavení
Mobilní aplikace
Vaše data můžete sledovat i přes mobilní aplikaci pro Android ThingShow - ThingSpeak visualizer.
Aplikací, co dělají tuto věc je mnoho, já jsem si vybral tuto a ukážu Vám, jak to funguje.
- Budeme potřebovat
- Channel ID: 1327277
- Read API Key: V1MKMRTBT4WF1RH8 (ten najdeme v API Keys)
- V mobilní aplikaci dáme v pravém dolním rohu +, podle toho, zda máme veřejný, či soukromý kanál, tak zvolíme další možnost (veřejný nepotřebuje Read API key).
- Musíme zadat Channel ID a API Key a server (již je napsán – https://thingspeak.com)
- Open
- OK znak vpravo nahoře
- A je hotovo, u ostatních aplikacích by to mělo být podobné
Další články
thingspeak - webová prezentace