Indholdsfortegnelse:

Esp32 luftmonitor: 6 trin
Esp32 luftmonitor: 6 trin

Video: Esp32 luftmonitor: 6 trin

Video: Esp32 luftmonitor: 6 trin
Video: ESP32, более мощная чем любая другая Ардуино 2024, November
Anonim
Esp32 luftmonitor
Esp32 luftmonitor

I denne vejledning vil du bygge en luftmonitor, der overvåger lufttemperatur, fugtighed og tryk, alt sammen ved hjælp af Blynk, en esp32, en DHT22 og en BMP180.

Forbrugsvarer

  • esp32 mikrokontroller
  • DHT22
  • BMP180

Trin 1: Opsætning af Blynk

Du skal bruge Blynk til dette projekt, så du kan se resultaterne i realtid overalt i verden. Du kan se, hvordan du konfigurerer Blynk i min tidligere tutorial.

Trin 2: Installer bibliotekerne

Det første bibliotek, du skal installere, er SparkFun RHT03 Arduino-biblioteket, du kan downloade dette fra https://learn.sparkfun.com/tutorials/rht03-dht22-humidity-and-temperature-sensor-hookup-guide?_ga= 2.53575016.1755727564.1559404402-688583549.1496066940#bibliotek-installation. Efter at have downloadet det, skal du åbne Arduino IDE og gå til Skitse> Inkluder bibliotek> Tilføj. ZIP -bibliotek … og vælg den.zip -fil, du lige har downloadet.

Det andet bibliotek, du skal installere, er Adafruit BMP085 -biblioteket, du kan installere dette ved at gå ind i Sketch> Include Library> Manage Libraries … derefter søge efter 'BMP085'.

Trin 3: Tråd op i kredsløbet

Tråd op i kredsløbet
Tråd op i kredsløbet
Tråd op i kredsløbet
Tråd op i kredsløbet

Nu skal du tilslutte kredsløbet, det er et ret let kredsløb. Se kredsløbsskemaerne ovenfor.

Trin 4: Byg applikationen til Blynk

Byg applikationen til Blynk
Byg applikationen til Blynk
Byg applikationen til Blynk
Byg applikationen til Blynk
Byg applikationen til Blynk
Byg applikationen til Blynk
Byg applikationen til Blynk
Byg applikationen til Blynk

Du skal bruge programmet i Blynk, så du grafisk kan modtage dataene og få dem vist i appen. Brug billederne ovenfor til at bygge det.

Widgets:

  • 2x målere
  • 1x vandret niveau

Temp Gauge Indstillinger:

  • Navn: Temperatur
  • Farve: Orange/gul
  • Indgang: V5 0-100
  • Mærkning: /pin /° C
  • Opdateringsinterval: 1 sek

Fugtighedsmålerindstillinger:

  • Navn: Fugtighed
  • Farve: Lyseblå
  • Indgang V6 0-100
  • Etiket: /pin /%
  • Opdateringsinterval: 1 sek

Indstillinger for trykniveau

  • Navn: Tryk
  • Farve: Orange/gul
  • Indgang: V7 950-1050
  • Vipakse: Fra
  • Opdateringsinterval: 1 sek

Trin 5: Upload koden

Nu er vi klar til koden. Inden du uploader koden, skal du foretage et par ændringer. Find linjen char auth = "YourAuthToken"; og erstat YourAuthToken med Auth Token, du skrev ned tidligere, og hvis du bruger wifi, find linjen char ssid = "YourNetworkName"; og erstat YourNetworkName med dit netværksnavn og find linjen char pass = "YourPassword"; og erstat YourPassword med din Wifi -adgangskode. Efter at have gjort dette kan du nu uploade koden.

#define BLYNK_PRINT Seriel #include

#omfatte

#omfatte

#omfatte

#omfatte

#omfatte

/////////////////////

// Pin Definitioner // ////////////////////////// const int DHT22_DATA_PIN = 27; // DHT22 data pin const int FLAME_SENSOR_DATA_PIN = 32; // Flammesensordatapind //////////////////////////////// // RHT03 Oprettelse af objekter // ////////// ///////////////////// RHT03 rht; // Dette opretter et RTH03 -objekt, som vi vil bruge til at interagere med sensoren ///////////////////////////// // BMP180/BMP085 Oprettelse af objekter // ///////////////////////////////// Adafruit_BMP085 bmp; // Du bør få Auth Token i Blynk -appen. // Gå til Projektindstillinger (møtrikikon). char auth = "YourAuthToken"; // Dine WiFi -legitimationsoplysninger. // Indstil adgangskode til "" for åbne netværk. char ssid = "DitNetværksnavn"; char pass = "YourPassword"; BlynkTimer timer; void sendSensor () {int updateRet = rht.update (); hvis funktionerne (updateRet == 1) {// Fugtigheden (), tempC () og tempF () kan kaldes - efter // en vellykket opdatering () - for at få den sidste luftfugtighed og temperatur // værdi float latestHumidity = rht.fugtighed (); float latestTempC = rht.tempC (); float latestTempF = rht.tempF (); float latestPressure = bmp.readPressure ()/100; Blynk.virtualWrite (V5, latestTempC); Blynk.virtualWrite (V6, latestHumidity); Blynk.virtualWrite (V7, seneste tryk); } ellers {// Hvis opdateringen mislykkedes, kan du prøve at forsinke i RHT_READ_INTERVAL_MS ms før // prøve igen. forsinkelse (RHT_READ_INTERVAL_MS); }} ugyldig opsætning () {// Debug -konsol Serial.begin (9600); Blynk.begin (auth, ssid, pass); // Du kan også angive server: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.begin(auth, ssid, pass, IPAddress (192, 168, 1, 100), 8080); rht.begynder (DHT22_DATA_PIN); hvis (! bmp.begin ()) {Serial.println ("Kunne ikke finde en gyldig BMP085/BMP180 -sensor, tjek ledninger!"); mens (1) {}} // Opsæt en funktion, der skal kaldes hver anden timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }

Trin 6: Færdig

Færdig
Færdig
Færdig
Færdig
Færdig
Færdig

Godt gået, kredsløbet er nu færdigt og kan nu placeres et sted, hvor det er strømforsynet og sender temperatur-, fugtigheds- og trykdata til din telefon!

Anbefalede: