Indholdsfortegnelse:

ThingSpeak, ESP32 og trådløs temp og luftfugtighed med lang rækkevidde: 5 trin
ThingSpeak, ESP32 og trådløs temp og luftfugtighed med lang rækkevidde: 5 trin

Video: ThingSpeak, ESP32 og trådløs temp og luftfugtighed med lang rækkevidde: 5 trin

Video: ThingSpeak, ESP32 og trådløs temp og luftfugtighed med lang rækkevidde: 5 trin
Video: Monitoring Temperature and Humidity using DHT11 and ESP32 2024, Juli
Anonim
ThingSpeak, ESP32 og trådløs trådløs temperatur og lang rækkevidde
ThingSpeak, ESP32 og trådløs trådløs temperatur og lang rækkevidde

I denne vejledning måler vi forskellige temperatur- og fugtighedsdata ved hjælp af Temp og fugtighedsføler. Du lærer også, hvordan du sender disse data til ThingSpeak. Så du kan analysere det overalt for forskellige applikationer

Trin 1: Hardware og software påkrævet

Hardware og software påkrævet
Hardware og software påkrævet
Hardware og software påkrævet
Hardware og software påkrævet

Hardware:

  • ESP-32: ESP32 gør det let at bruge Arduino IDE og Arduino Wire Language til IoT-applikationer. Dette ESp32 IoT-modul kombinerer Wi-Fi, Bluetooth og Bluetooth BLE til en række forskellige applikationer. Dette modul er fuldt udstyret med 2 CPU-kerner, der kan styres og drives individuelt og med en justerbar urfrekvens på 80 MHz til 240 MHz. Dette ESP32 IoT WiFi BLE -modul med integreret USB er designet til at passe i alle ncd.io IoT -produkter. Overvåg sensorer og kontrolrelæer, FET'er, PWM -controllere, solenoider, ventiler, motorer og meget mere overalt i verden ved hjælp af en webside eller en dedikeret server. Vi fremstillede vores egen version af ESP32 til at passe ind i NCD IoT -enheder og tilbyder flere udvidelsesmuligheder end nogen anden enhed i verden! En integreret USB -port gør det let at programmere ESP32. ESP32 IoT WiFi BLE -modulet er en utrolig platform til udvikling af IoT -applikationer. Dette ESP32 IoT WiFi BLE -modul kan programmeres ved hjælp af Arduino IDE.
  • IoT Trådløs temperatur- og luftfugtighedssensor med lang rækkevidde: Industriel langtrækkende trådløs temperaturfugtighedsføler. Grad med en sensoropløsning på ± 1,7%relativ luftfugtighed ± 0,5 ° C. Op til 500.000 transmissioner fra 2 AA -batterier. Måler -40 ° C til 125 ° C med batterier, der overlever disse vurderinger. Overlegen 2-mils LOS-rækkevidde og 28 miles med højgevinstantenner. Grænseflade til Raspberry Pi, Microsoft Azure, Arduino og mere.
  • Langtrækkende trådløst mesh-modem med USB-interface

Brugt software

  • Arduino IDE
  • ThingSpeak

Bibliotek brugt

  • PubSubClient -bibliotek
  • Wire.h

Arduino -klient til MQTT

Dette bibliotek giver en klient til at lave simple publish/subscribe -beskeder med en server, der understøtter MQTT

For mere information om MQTT, besøg mqtt.org.

Hent

Den nyeste version af biblioteket kan downloades fra GitHub

Dokumentation

Biblioteket kommer med en række eksempelskitser. Se Filer> Eksempler> PubSubClient i Arduino -applikationen. Fuld API -dokumentation.

Kompatibel hardware

Biblioteket bruger Arduino Ethernet Client API til at interagere med den underliggende netværkshardware. Dette betyder, at det bare fungerer med et stigende antal brædder og skjolde, herunder:

  • Arduino Ethernet
  • Arduino Ethernet Shield
  • Arduino YUN - brug den medfølgende YunClient i stedet for EthernetClient, og sørg for at lave en Bridge.begin () først
  • Arduino WiFi Shield - hvis du vil sende pakker større end 90 bytes med dette skjold, skal du aktivere indstillingen MQTT_MAX_TRANSFER_SIZE i PubSubClient.h.
  • SparkFun WiFly Shield - når det bruges sammen med dette bibliotek
  • Intel Galileo/Edison
  • ESP8266
  • ESP32Biblioteket kan i øjeblikket ikke bruges med hardware baseret på ENC28J60 -chippen - f.eks. Nanode eller Nuelectronics Ethernet Shield. For dem er der et alternativt bibliotek til rådighed.

Wire Library

Wire -biblioteket giver dig mulighed for at kommunikere med I2C -enheder, ofte også kaldet "2 wire" eller "TWI" (Two Wire Interface), der kan downloades fra Wire.h

Grundlæggende brug

  • Wire.begin () Begynd at bruge Wire i master -tilstand, hvor du vil starte og kontrollere dataoverførsler. Dette er den mest almindelige anvendelse ved grænseflade med de fleste I2C perifere chips.
  • Wire.begin (adresse) Begynd at bruge Wire i slave -tilstand, hvor du vil svare på "adresse", når andre I2C -masterchips starter kommunikation. Sender
  • Wire.beginTransmission (adresse) Start en ny transmission til en enhed ved "adresse". Master mode bruges.
  • Wire.write (data) Send data. I master -tilstand skal beginTransmission først kaldes.
  • Wire.endTransmission () I master -tilstand afslutter dette transmissionen og får alle bufferede data til at blive sendt.

Modtager

  • Wire.requestFrom (adresse, tælling) Læs "tæl" bytes fra en enhed på "adresse". Master mode bruges.
  • Wire.available () Returnerer antallet af tilgængelige bytes ved at ringe til modtage.
  • Wire.read () Modtag 1 byte.

Trin 2: Upload af koden til ESP32 ved hjælp af Arduino IDE

  • Inden du uploader koden, kan du se denne sensors funktion på et givet link.
  • Download og inkluder PubSubClient -biblioteket og Wire.h -biblioteket.
  • Du skal tildele din API -nøgle, SSID (WiFi -navn) og adgangskode til det tilgængelige netværk.
  • Kompiler og upload Temp-ThinSpeak.ino-koden.
  • For at kontrollere enhedens forbindelse og de sendte data skal du åbne den serielle skærm. Hvis der ikke ses noget svar, kan du prøve at tage din ESP32 ud af stikkontakten og derefter tilslutte den igen. Sørg for, at baudhastigheden på den serielle skærm er indstillet til den samme, der er angivet i din kode 115200.

Trin 3: Seriel skærmoutput

Seriel skærmoutput
Seriel skærmoutput

Trin 4: Få ThingSpeak til at fungere

Få ThingSpeak til at fungere
Få ThingSpeak til at fungere
Få ThingSpeak til at fungere
Få ThingSpeak til at fungere
Få ThingSpeak til at fungere
Få ThingSpeak til at fungere
  • Opret kontoen på ThnigSpeak.
  • Opret en ny kanal ved at klikke på Kanaler.
  • Klik på Mine kanaler.
  • Klik på Ny kanal.
  • Inde i Ny kanal, navngiv kanalen.
  • Navngiv feltet i kanalen, feltet er variablen, hvor dataene offentliggøres.
  • Gem nu kanalen.
  • Nu kan du finde dine API -nøgler på instrumentbrættet. Gå til tryk på hjemmesiden, og find din 'Write Api Key', som skal opdateres, før du uploader koden til ESP32.
  • Når kanalen er oprettet, vil du kunne se dine temperatur- og fugtighedsdata i privat visning med felter, du har oprettet inde i kanalen.
  • For at plotte en graf mellem temp- og fugtighedsdata kan du bruge MATLAB -visualisering.
  • For at gå til appen skal du klikke på MATLAB -visualisering.
  • Inde vælger det Custom, i dette har vi valgt plottemperatur og vindhastighed på to forskellige y-akser 8 som et eksempel. Klik nu på Opret.
  • MATLAB -koden genereres automatisk, når du opretter visualisering, men du skal redigere felt -id, læse kanal -id, kan kontrollere følgende figur.
  • Gem derefter og kør koden.
  • Du ville se plottet.

Anbefalede: