IoT: ThingSpeak
| 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í
Mobilní aplikace
Vaše data můžete sledovat i přes mobilní aplikaci pro Android ThingShow - ThingSpeak visualizer.
/* návod */
thingspeak - webová prezentace
