Search Code

ESP32 Tutorijal 24/55 - Mjerenje vlažnosti tla za navodnjavanje | SunFounderov ESP32 IoT komplet za učenje

ESP32 Tutorijal 24/55 - Mjerenje vlažnosti tla za navodnjavanje | SunFounderov ESP32 IoT komplet za učenje

U ovom tutorijalu naučit ćemo kako koristiti SunFounder ESP32 zajedno sa senzorom vlažnosti tla za mjerenje nivoa vlažnosti u tlu, što može pomoći u automatizaciji sistema za navodnjavanje. Praćenjem nivoa vlažnosti, možemo aktivirati zujalicu kada vlažnost padne ispod određene granice, što ukazuje da biljke treba zaliti. Ovaj projekat je vrijedan za održavanje zdravlja biljaka i može se proširiti za različite aplikacije senzora okoline. (u videu na 00:00)

soil_mositure_module

Koristit ćemo kapacitivni senzor vlažnosti tla, koji radi mjerenjem promjene kapaciteta između dvije ploče koja varira ovisno o sadržaju vlage u okolnom mediju. Ovaj senzor će pružiti analogni izlaz koji odražava nivo vlažnosti, omogućavajući nam da donosimo odluke na osnovu očitanja. ESP32 će čitati analogni izlaz i aktivirati zujalicu ako je tlo previše suho.

Objašnjenje hardvera

Za ovaj projekat, primarne komponente su SunFounder ESP32 mikrokontroler, kapacitivni senzor vlažnosti tla i zujalica. ESP32 ima ugrađen Wi-Fi i Bluetooth, što omogućava daljinsko praćenje i upravljanje. Senzor vlažnosti tla sastoji se od dvije ploče koje mjere kapacitet, koji se mijenja ovisno o nivou vlažnosti u tlu. Ova promjena kapaciteta mijenja izlazni napon, koji ESP32 čita kroz svoj analogni ulaz. Zujalica će nas upozoriti kada nivo vlažnosti padne ispod postavljene granice.

soil_mositure_module_schematic

Detalji iz tehničke dokumentacije

Proizvođač SunFounder
Broj dijela Senzor vlažnosti tla
Radni napon 3.3 do 5 V
Tip izlaza Analogni
Raspon signala 0 do 3.3 V
Vrijeme odziva Brzo
Dimenzije Približno 60 x 20 mm
Napomene / varijante Kapacitivni tip senzora

 

  • Pazite da senzor ne bude potpuno potopljen u vodu kako biste spriječili oštećenje.
  • Koristite odgovarajuće pull-up otpornike ako je potrebno za stabilna očitanja.
  • Kalibrirajte senzor za vaš specifični tip tla za tačna očitanja vlažnosti.
  • Održavajte ispravne veze žica kako biste izbjegli gubitak signala.
  • Budite oprezni s napajanjem kako biste izbjegli situacije prenapona.

Upute za povezivanje

ESP32-24-soild-moisture-wiring

Za povezivanje senzora vlažnosti tla na ESP32, spojite VCC pin senzora na 3.3V pin na ESP32. Zatim spojite GND pin senzora na GND pin na ESP32. Analogni izlazni pin sa senzora vlažnosti tla treba spojiti na analogni pin 35 na ESP32. Za zujalicu, spojite pozitivni pin na digitalni pin 13 na ESP32 i negativni pin na GND. Osigurajte da su sve veze sigurne kako biste izbjegli povremene probleme tokom rada.

Primjeri koda i objašnjenje

Ispod je kratki izvod iz koda koji inicijalizira serijsku komunikaciju i čita vrijednost senzora vlažnosti:

void setup() {
  // Inicijaliziraj serijsku komunikaciju na 115200 bitova u sekundi:
  Serial.begin(115200);
}

Ovaj isječak postavlja serijsku komunikaciju, omogućavajući nam da vidimo očitanja sa senzora vlažnosti u serijskom monitoru.

Zatim imamo glavnu petlju gdje se analogno vrijednost čita sa senzora:

void loop() {
  // Čitaj analognu vrijednost
  int analogValue = analogRead(35);
  
  // Ispiši vrijednosti
  Serial.printf("Analogna vrijednost = %d\n",analogValue);
  
  delay(300);  // kašnjenje između očitanja za jasno čitanje sa serijskog monitora
}

U ovoj petlji, kod kontinuirano čita analognu vrijednost sa pina 35 i ispisuje je na serijski monitor svakih 300 milisekundi. Ovo nam omogućava da pratimo nivo vlažnosti u realnom vremenu.

Demonstracija / Šta očekivati

Kada se senzor vlažnosti postavi u suho tlo, analogno vrijednost će biti viša, što ukazuje na nisku vlažnost. Suprotno tome, kada se senzor umetne u vlažno tlo, vrijednost će značajno pasti. Ako očitanje padne ispod definirane granice (npr. 2000), zujalica spojena na pin 13 će se aktivirati, signalizirajući da biljku treba zaliti. Budite oprezni s plutajućim ulazima i osigurajte da senzor nije izložen vodi iznad preporučenih granica (u videu na 02:30).

Vremenske oznake videa

  • 00:00 Početak
  • 1:51 Uvod u projekat
  • 5:53 Objašnjeno povezivanje
  • 7:23 Objašnjen Arduino kod
  • 9:09 Odabir ESP32 ploče i COM porta u Arduino IDE
  • 10:47 Demonstracija projekta na saksiji za biljke
  • 14:30 Uključivanje zujalice kada je saksija suha

Images

ESP32-24-soild-moisture-wiring
ESP32-24-soild-moisture-wiring
ESP32-24-soild-moisture-schematic
ESP32-24-soild-moisture-schematic
soil_mositure_module
soil_mositure_module
soil_mositure_module_schematic
soil_mositure_module_schematic
823-ESP32 Tutorial 24/55- Arduino code for soil moisture measurement
Language: C++
void setup() {
  // Initialize serial communication at 115200 bits per second:
  Serial.begin(115200);
}

void loop() {
  // Read the analog value
  int analogValue = analogRead(35);
  
  // Print out the values
  Serial.printf("Analog value = %d\n",analogValue);
  
  delay(300);  // delay between reads for clear read from serial monitor
}

Resources & references

Files📁

No files available.