Kazalo:

ThingSpeak, ESP32 in brezžična temperatura in vlažnost na dolge razdalje: 5 korakov
ThingSpeak, ESP32 in brezžična temperatura in vlažnost na dolge razdalje: 5 korakov

Video: ThingSpeak, ESP32 in brezžična temperatura in vlažnost na dolge razdalje: 5 korakov

Video: ThingSpeak, ESP32 in brezžična temperatura in vlažnost na dolge razdalje: 5 korakov
Video: Учебное пособие по DHT11 и NodeMCU || Мониторинг влажности и температуры через Thingspeak 2024, Julij
Anonim
ThingSpeak, ESP32 in brezžična temperatura in vlažnost na dolge razdalje
ThingSpeak, ESP32 in brezžična temperatura in vlažnost na dolge razdalje

V tej vadnici bomo merili različne podatke o temperaturi in vlažnosti s senzorjem za temperaturo in vlago. Naučili se boste tudi, kako te podatke poslati v ThingSpeak. Tako ga lahko analizirate od kjer koli za različne aplikacije

1. korak: potrebna strojna in programska oprema

Potrebna strojna in programska oprema
Potrebna strojna in programska oprema
Potrebna strojna in programska oprema
Potrebna strojna in programska oprema

Strojna oprema:

  • ESP-32: ESP32 olajša uporabo Arduino IDE in Arduino Wire Language za aplikacije IoT. Ta modul ESp32 IoT združuje Wi-Fi, Bluetooth in Bluetooth BLE za različne aplikacije. Ta modul je v celoti opremljen z dvema jedroma procesorja, ki ju je mogoče upravljati in napajati posamično ter z nastavljivo frekvenco takta od 80 MHz do 240 MHz. Ta modul ESP32 IoT WiFi BLE z vgrajenim USB -jem je zasnovan tako, da se prilega vsem izdelkom IoT ncd.io. S pomočjo spletne strani ali namenskega strežnika spremljajte senzorje in krmilne releje, FET -e, krmilnike PWM, elektromagnete, ventile, motorje in še veliko več od koder koli po svetu. Izdelali smo lastno različico ESP32, ki se prilega NCD IoT napravam in ponuja več možnosti razširitve kot katera koli druga naprava na svetu! Vgrajena vrata USB omogočajo enostavno programiranje ESP32. Modul ESP32 IoT WiFi BLE je neverjetna platforma za razvoj aplikacij IoT. Ta modul ESP32 IoT WiFi BLE lahko programirate z uporabo Arduino IDE.
  • IoT daljinski brezžični senzor temperature in vlažnosti: industrijski daljinski brezžični temperaturni senzor vlažnosti. Ocena z ločljivostjo senzorja ± 1,7%RH ± 0,5 ° C. Do 500.000 prenosov iz 2 baterij AA. Meri od -40 ° C do 125 ° C z baterijami, ki zdržijo te ocene. Vrhunski 2-miljski doseg LOS in 28 milj z visokozmogljivimi antenami. Vmesnik za Raspberry Pi, Microsoft Azure, Arduino in drugo.
  • Brezžični mrežni modem z dolgim dosegom z vmesnikom USB

Uporabljena programska oprema

  • Arduino IDE
  • ThingSpeak

Knjižnica rabljena

  • Knjižnica PubSubClient
  • Wire.h

Odjemalec Arduino za MQTT

Ta knjižnica ponuja odjemalcu za preprosto objavljanje/naročanje sporočil s strežnikom, ki podpira MQTT

Za več informacij o MQTT obiščite mqtt.org.

Prenesi

Najnovejšo različico knjižnice lahko prenesete z GitHub

Dokumentacija

Knjižnica vsebuje številne vzorčne skice. Glejte Datoteka> Primeri> PubSubClient v aplikaciji Arduino. Celotna dokumentacija API.

Združljiva strojna oprema

Knjižnica uporablja API odjemalca Arduino Ethernet za interakcijo z osnovno omrežno strojno opremo. To pomeni, da deluje samo z naraščajočim številom desk in ščitov, vključno z:

  • Arduino Ethernet
  • Arduino Ethernet ščit
  • Arduino YUN - namesto EthernetClienta uporabite priloženi YunClient in najprej naredite Bridge.begin ()
  • Arduino WiFi Shield - če želite s tem ščitom poslati pakete, večje od 90 bajtov, omogočite možnost MQTT_MAX_TRANSFER_SIZE v PubSubClient.h.
  • SparkFun WiFly Shield - če se uporablja s to knjižnico
  • Intel Galileo/Edison
  • ESP8266
  • ESP32 Knjižnice trenutno ni mogoče uporabljati s strojno opremo, ki temelji na čipu ENC28J60 - na primer Nanode ali Nuelectronics Ethernet Shield. Za te je na voljo alternativna knjižnica.

Knjižnica Wire

Knjižnica Wire omogoča komunikacijo z napravami I2C, pogosto imenovane tudi "2 Wire" ali "TWI" (Two Wire Interface), ki jih lahko prenesete iz Wire.h

Osnovna uporaba

  • Wire.begin () Začnite uporabljati Wire v glavnem načinu, kjer boste sprožili in nadzirali prenos podatkov. To je najpogostejša uporaba pri povezovanju z večino perifernih čipov I2C.
  • Wire.begin (naslov) Začnite uporabljati Wire v pomožnem načinu, kjer se boste odzvali na "naslov", ko drugi glavni čipi I2C začnejo komunikacijo. Oddajanje
  • Wire.beginTransmission (naslov) Začnite nov prenos na napravo na "naslov". Uporablja se glavni način.
  • Wire.write (data) Pošlji podatke. V glavnem načinu morate najprej poklicati beginTransmission.
  • Wire.endTransmission () V glavnem načinu prekine prenos in povzroči pošiljanje vseh medpomnjenih podatkov.

Prejemanje

  • Wire.requestFrom (naslov, število) Preberite "štetje" bajtov iz naprave na "naslov". Uporablja se glavni način.
  • Wire.available () Vrne število bajtov, ki so na voljo za klic prejema.
  • Wire.read () Prejemanje 1 bajta.

2. korak: Nalaganje kode v ESP32 z uporabo Arduino IDE

  • Preden naložite kodo, si lahko ogledate delovanje tega senzorja na dani povezavi.
  • Prenesite in vključite knjižnico PubSubClient in knjižnico Wire.h.
  • Za razpoložljivo omrežje morate dodeliti ključ API, SSID (ime WiFi) in geslo.
  • Sestavite in naložite kodo Temp-ThinSpeak.ino.
  • Če želite preveriti povezljivost naprave in poslane podatke, odprite serijski monitor. Če ni odgovora, poskusite izklopiti ESP32 in ga nato znova priključiti. Prepričajte se, da je hitrost prenosa serijskega monitorja nastavljena na enako, kot je določeno v kodi 115200.

Korak: Izhod serijskega monitorja

Izhod serijskega monitorja
Izhod serijskega monitorja

4. korak: Ustvarjanje ThingSpeak -a

Ustvarjanje ThingSpeak dela
Ustvarjanje ThingSpeak dela
Ustvarjanje ThingSpeak dela
Ustvarjanje ThingSpeak dela
Ustvarjanje ThingSpeak dela
Ustvarjanje ThingSpeak dela
  • Ustvarite račun na ThnigSpeak.
  • Ustvarite nov kanal s klikom na Kanali.
  • Kliknite na Moje kanale.
  • Kliknite Nov kanal.
  • V novem kanalu poimenujte kanal.
  • Poimenujte polje znotraj kanala, polje je spremenljivka, v kateri so podatki objavljeni.
  • Zdaj shranite kanal.
  • Zdaj lahko na nadzorni plošči najdete svoje ključe API. Pojdite na pipo na domači strani in poiščite svoj "Write Api Key", ki ga morate posodobiti, preden naložite kodo v ESP32.
  • Ko je kanal ustvarjen, si lahko ogledate svojo temperaturo in podatke o vlažnosti v zasebnem pogledu s polji, ki ste jih ustvarili v kanalu.
  • Če želite narisati graf med podatki o temp in vlažnosti, lahko uporabite vizualizacijo MATLAB.
  • Za to pojdite na aplikacijo, kliknite MATLAB vizualizacija.
  • Znotraj izbere Custom, pri tem imamo za primer izbrano temperaturo ploskve in hitrost vetra na dveh različnih osi y 8. Zdaj kliknite na Ustvari.
  • Koda MATLAB bo samodejno ustvarjena, ko ustvarite vizualizacijo, vendar morate urediti id polja, prebrati id kanala, lahko preverite naslednjo sliko.
  • Nato shranite in zaženite kodo.
  • Videli bi zaplet.

Priporočena: