Kazalo:

Nadzor zraka Esp32: 6 korakov
Nadzor zraka Esp32: 6 korakov

Video: Nadzor zraka Esp32: 6 korakov

Video: Nadzor zraka Esp32: 6 korakov
Video: ESP32 Tutorial 6 - Using RGB LED Project 2.3 -SunFounder's ESP32 IoT Learnig kit 2024, November
Anonim
Nadzor zraka Esp32
Nadzor zraka Esp32

V tej vadnici boste izdelali nadzornik zraka, ki spremlja temperaturo, vlažnost in tlak zraka, pri čemer bodo vsi uporabljali Blynk, esp32, DHT22 in BMP180.

Zaloge

  • esp32 mikrokrmilnik
  • DHT22
  • BMP180

1. korak: Namestite Blynk

Za ta projekt boste potrebovali Blynk, da boste lahko rezultate videli v realnem času kjer koli na svetu. Kako nastaviti Blynk, si lahko ogledate v moji prejšnji vadnici.

Korak: Namestite knjižnice

Prva knjižnica, ki jo boste morali namestiti, je knjižnica SparkFun RHT03 Arduino, ki jo lahko prenesete s spletnega mesta https://learn.sparkfun.com/tutorials/rht03-dht22-humidity-and-temperature-sensor-hookup-guide?_ga= 2.53575016.1755727564.1559404402-688583549.1496066940#knjižnica-namestitev. Po prenosu odprite Arduino IDE in pojdite v Sketch> Include Library> Add. ZIP Library … in izberite datoteko.zip, ki ste jo pravkar prenesli.

Druga knjižnica, ki jo morate namestiti, je knjižnica Adafruit BMP085, to lahko namestite tako, da odprete Sketch> Include Library> Manage Libraries … in nato poiščete »BMP085«.

3. korak: Ožičite vezje

Ožičite vezje
Ožičite vezje
Ožičite vezje
Ožičite vezje

Zdaj morate povezati vezje, to je precej enostavno vezje. Glejte sheme vezja zgoraj.

4. korak: Zgradite aplikacijo za Blynk

Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk
Zgradite aplikacijo za Blynk

Potrebovali boste aplikacijo v Blynku, da boste lahko prejemali podatke in vam jih grafično prikazali v aplikaciji. Za njegovo izdelavo uporabite zgornje slike.

Pripomočki:

  • 2x merilnika
  • 1x vodoravna raven

Nastavitve merilnika temperature:

  • Ime: Temperatura
  • Barva: oranžna/rumena
  • Vhod: V5 0-100
  • Oznaka: /pin /° C
  • Interval osveževanja: 1 s

Nastavitve merilnika vlažnosti:

  • Ime: Vlažnost
  • Barva: svetlo modra
  • Vhod V6 0-100
  • Oznaka: /pin /%
  • Interval osveževanja: 1 s

Nastavitve ravni tlaka

  • Ime: Tlak
  • Barva: oranžna/rumena
  • Vhod: V7 950-1050
  • Obrnjena os: Izklopljeno
  • Interval osveževanja: 1 s

5. korak: Naložite kodo

Zdaj smo pripravljeni na kodo. Preden naložite kodo, morate narediti nekaj sprememb, poiščite vrstico char auth = "YourAuthToken"; in zamenjajte YourAuthToken z žetonom za preverjanje pristnosti, ki ste ga zapisali prej, in če uporabljate wifi, poiščite vrstico char ssid = "YourNetworkName"; in zamenjajte YourNetworkName z imenom vašega omrežja in poiščite vrstico char pass = "YourPassword"; in zamenjajte YourPassword z geslom za Wi -Fi. Po tem lahko kodo naložite.

#define BLYNK_PRINT Serijski #include

#vključi

#vključi

#vključi

#vključi

#vključi

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

// Pin Definitions // /////////////////////// const int DHT22_DATA_PIN = 27; // DHT22 podatkovni pin const int FLAME_SENSOR_DATA_PIN = 32; // Podatkovni zatič senzorja plamena /////////////////////////// // RHT03 Ustvarjanje predmetov // //////////// /////////////////// RHT03 rht; // Tako nastane objekt RTH03, ki ga bomo uporabili za interakcijo s senzorjem ///////////////////////////// BMP180/BMP085 Ustvarjanje predmetov // //////////////////////////// Adafruit_BMP085 bmp; // V aplikaciji Blynk bi morali dobiti žeton za preverjanje pristnosti. // Pojdite na Nastavitve projekta (ikona matice). char auth = "YourAuthToken"; // Vaše poverilnice WiFi. // Za odprta omrežja nastavite geslo na "". char ssid = "Ime vašega omrežja"; char pass = "Vaša geslo"; Časovnik BlynkTimer; void sendSensor () {int updateRet = rht.update (); if (updateRet == 1) {// Funkcije vlažnosti (), tempC () in tempF () je mogoče poklicati - po // uspešni posodobitvi () - za zadnjo vrednost vlažnosti in temperature // latestHumidity = rht.humidity (); float latestTempC = rht.tempC (); float latestTempF = rht.tempF (); float latestPressure = bmp.readPressure ()/100; Blynk.virtualWrite (V5, najnovejša TempC); Blynk.virtualWrite (V6, najnovejša vlažnost); Blynk.virtualWrite (V7, najnovejši pritisk); } else {// Če posodobitev ni uspela, poskusite odložiti za RHT_READ_INTERVAL_MS ms, preden // poskusite znova. zamuda (RHT_READ_INTERVAL_MS); }} void setup () {// Konzola za odpravljanje napak Serial.begin (9600); Blynk.begin (auth, ssid, pass); // Določite lahko tudi strežnik: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.begin(auth, ssid, pass, IPAddress (192, 168, 1, 100), 8080); rht.begin (DHT22_DATA_PIN); if (! bmp.begin ()) {Serial.println ("Ni bilo mogoče najti veljavnega senzorja BMP085/BMP180, preverite ožičenje!"); while (1) {}} // Nastavitev funkcije za klicanje vsakega drugega timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }

Korak 6: Končano

Dokončano
Dokončano
Dokončano
Dokončano
Dokončano
Dokončano

Dobro opravljeno, vezje je zdaj končano in ga lahko postavite na mesto, kjer je napajano, in bo v vaš telefon poslalo podatke o temperaturi, vlažnosti in tlaku!

Priporočena: