Turinys:

Esp32 oro monitorius: 6 žingsniai
Esp32 oro monitorius: 6 žingsniai

Video: Esp32 oro monitorius: 6 žingsniai

Video: Esp32 oro monitorius: 6 žingsniai
Video: Изучите Arduino за 30 минут: примеры и проекты 2024, Liepa
Anonim
Esp32 oro monitorius
Esp32 oro monitorius

Šioje pamokoje jūs sukursite oro monitorių, kuris stebi oro temperatūrą, drėgmę ir slėgį, naudodami „Blynk“, esp32, DHT22 ir BMP180.

Prekės

  • esp32 mikrovaldiklis
  • DHT22
  • BMP180

1 žingsnis: nustatykite „Blynk“

Šiam projektui jums reikės „Blynk“, kad galėtumėte pamatyti rezultatus realiuoju laiku bet kurioje pasaulio vietoje. Kaip nustatyti „Blynk“, galite pamatyti mano ankstesnėje pamokoje.

2 veiksmas: įdiekite bibliotekas

Pirmoji biblioteka, kurią turėsite įdiegti, yra „SparkFun RHT03 Arduino“biblioteka, kurią galite atsisiųsti iš https://learn.sparkfun.com/tutorials/rht03-dht22-humidity-and-temperature-sensor-hookup-guide?_ga= 2.53575016.1755727564.1559404402-688583549.1496066940#biblioteka-diegimas. Atsisiuntę atidarykite „Arduino IDE“ir eikite į Eskizas> Įtraukti biblioteką> Pridėti. ZIP biblioteką … ir pasirinkite ką tik atsisiųstą.zip failą.

Antroji biblioteka, kurią reikia įdiegti, yra „Adafruit BMP085“biblioteka, kurią galite įdiegti eidami į „Eskizas“> „Įtraukti biblioteką“> „Tvarkyti bibliotekas …“, tada ieškokite „BMP085“.

3 žingsnis: prijunkite grandinę

Sujunkite grandinę
Sujunkite grandinę
Sujunkite grandinę
Sujunkite grandinę

Dabar jums reikia prijungti grandinę, tai yra gana lengva grandinė. Žiūrėkite aukščiau pateiktą grandinės schemą.

4 žingsnis: sukurkite „Blynk“programą

Sukurkite „Blynk“programą
Sukurkite „Blynk“programą
Sukurkite „Blynk“programą
Sukurkite „Blynk“programą
Sukurkite „Blynk“programą
Sukurkite „Blynk“programą
Sukurkite „Blynk“programą
Sukurkite „Blynk“programą

Jums reikės programos „Blynk“, kad galėtumėte gauti duomenis ir juos grafiškai parodyti programoje. Norėdami jį sukurti, naudokite aukščiau esančias nuotraukas.

Valdikliai:

  • 2x matuokliai
  • 1x horizontalus lygis

Temperatūros matuoklio nustatymai:

  • Pavadinimas: Temperatūra
  • Spalva: oranžinė/geltona
  • Įvestis: V5 0-100
  • Etiketė: /pin /° C
  • Atnaujinimo intervalas: 1 sek

Drėgmės matuoklio nustatymai:

  • Pavadinimas: Drėgmė
  • Spalva: šviesiai mėlyna
  • Įėjimas V6 0-100
  • Etiketė: /pin /%
  • Atnaujinimo intervalas: 1 sek

Slėgio lygio nustatymai

  • Pavadinimas: slėgis
  • Spalva: oranžinė/geltona
  • Įvestis: V7 950-1050
  • Pasukimo ašis: išjungta
  • Atnaujinimo intervalas: 1 sek

5 veiksmas: įkelkite kodą

Dabar mes pasiruošę kodui. Prieš įkeldami kodą turėsite atlikti keletą pakeitimų, suraskite eilutę char auth = "YourAuthToken"; ir pakeiskite „YourAuthToken“anksčiau užrašytu „Auth Token“ir, jei naudojate „wifi“, raskite eilutę char ssid = "YourNetworkName"; ir pakeiskite „YourNetworkName“savo tinklo pavadinimu ir raskite eilutę char pass = "YourPassword"; ir pakeiskite „YourPassword“savo „Wi -Fi“slaptažodžiu. Tai atlikę, dabar galite įkelti kodą.

#define BLYNK_PRINT Serial #include

#įtraukti

#įtraukti

#įtraukti

#įtraukti

#įtraukti

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

// Smeigtukų apibrėžimai // ///////////////////// const int DHT22_DATA_PIN = 27; // DHT22 duomenų kaištis const int FLAME_SENSOR_DATA_PIN = 32; // Liepsnos jutiklio duomenų smeigtukas /////////////////////////// // RHT03 Objekto kūrimas // ////////// ////////////////// RHT03 rht; // Taip sukuriamas RTH03 objektas, kurį naudosime sąveikai su jutikliu ///////////////////////////// BMP180/BMP085 Objekto kūrimas // //////////////////////////// Adafruit_BMP085 bmp; // „Blynk“programoje turėtumėte gauti „Auth Token“. // Eikite į projekto nustatymus (veržlės piktograma). char auth = "YourAuthToken"; // Jūsų „WiFi“prisijungimo duomenys. // Atviriems tinklams nustatykite slaptažodį į „“. char ssid = "Jūsų tinklo pavadinimas"; char pass = "Jūsų slaptažodis"; „BlynkTimer“laikmatis; void sendSensor () {int updateRet = rht.update (); if (updateRet == 1) {// Drėgmės (), tempC () ir tempF () funkcijas galima iškviesti - po // sėkmingo atnaujinimo () -, kad būtų gautas paskutinis drėgmės ir temperatūros // vertės kintamasis latestHumidity = rht.humidity (); float latestTempC = rht.tempC (); float latestTempF = rht.tempF (); float latestPressure = bmp.readPressure ()/100; Blynk.virtualWrite (V5, latestTempC); „Blynk.virtualWrite“(V6, naujausia drėgmė); „Blynk.virtualWrite“(V7, naujausias slėgis); } else {// Jei atnaujinti nepavyko, pabandykite atidėti RHT_READ_INTERVAL_MS ms prieš // bandydami dar kartą. vėlavimas (RHT_READ_INTERVAL_MS); }} void setup () {// Derinimo pultas Serial.begin (9600); Blynk.begin (auth, ssid, pass); // Taip pat galite nurodyti serverį: //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 ("Nepavyko rasti galiojančio BMP085/BMP180 jutiklio, patikrinkite laidus!"); while (1) {}} // Nustatykite funkciją, kuri būtų vadinama kas antrą laikmatį.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }

6 žingsnis: Baigta

Baigta
Baigta
Baigta
Baigta
Baigta
Baigta

Gerai padaryta, grandinė dabar baigta ir dabar gali būti patalpinta toje vietoje, kur ji yra maitinama, ir į jūsų telefoną siųs temperatūros, drėgmės ir slėgio duomenis!

Rekomenduojamas: