Hľadať kód

Návod na ESP32 24/55 - Meranie vlhkosti pôdy pre zavlažovanie | SunFounderova ESP32 IoT vzdelávacia súprava

Návod na ESP32 24/55 - Meranie vlhkosti pôdy pre zavlažovanie | SunFounderova ESP32 IoT vzdelávacia súprava

V tomto návode sa naučíme, ako používať SunFounder ESP32 spolu so senzorom vlhkosti pôdy na meranie úrovne vlhkosti v pôde, čo môže pomôcť pri automatizácii zavlažovacích systémov. Sledovaním úrovní vlhkosti môžeme spustiť bzučiak, keď vlhkosť klesne pod určitú hranicu, čo signalizuje, že rastliny potrebujú zalievanie. Tento projekt je hodnotný pre udržanie zdravia rastlín a môže byť rozšírený pre rôzne aplikácie snímania životného prostredia. (vo videu o 00:00)

soil_mositure_module

Použijeme kapacitný senzor vlhkosti pôdy, ktorý funguje na princípe merania zmeny kapacity medzi dvoma doskami, ktorá sa mení na základe obsahu vlhkosti okolitého prostredia. Tento senzor poskytne analógový výstup, ktorý odráža úroveň vlhkosti, čo nám umožní robiť rozhodnutia na základe nameraných hodnôt. ESP32 prečíta analógový výstup a aktivuje bzučiak, ak je pôda príliš suchá.

Vysvetlenie hardvéru

Pre tento projekt sú hlavnými komponentmi mikrokontrolér SunFounder ESP32, kapacitný senzor vlhkosti pôdy a bzučiak. ESP32 má vstavané Wi-Fi a Bluetooth, čo umožňuje diaľkové monitorovanie a ovládanie. Senzor vlhkosti pôdy pozostáva z dvoch dosiek, ktoré merajú kapacitu, ktorá sa mení v závislosti od úrovne vlhkosti v pôde. Táto zmena kapacity mení výstupné napätie, ktoré ESP32 číta cez svoj analógový vstup. Bzučiak nás upozorní, keď úroveň vlhkosti klesne pod nastavenú hranicu.

soil_mositure_module_schematic

Podrobnosti z datasheetu

Výrobca SunFounder
Označenie dielu Senzor vlhkosti pôdy
Prevádzkové napätie 3,3 až 5 V
Typ výstupu Analógový
Rozsah signálu 0 až 3,3 V
Čas odozvy Rýchly
Rozmery Približne 60 x 20 mm
Poznámky / varianty Kapacitný typ senzora

 

  • Uistite sa, že senzor nie je úplne ponorený vo vode, aby nedošlo k poškodeniu.
  • V prípade potreby použite vhodné pull-up rezistory pre stabilné hodnoty.
  • Kalibrujte senzor pre váš konkrétny typ pôdy pre presné merania vlhkosti.
  • Udržiavajte správne zapojenie vodičov, aby nedošlo k strate signálu.
  • Buďte opatrní s napájaním, aby nedošlo k prepätiu.

Pokyny na zapojenie

ESP32-24-soild-moisture-wiring

Na zapojenie senzora vlhkosti pôdy k ESP32 pripojte pin VCC senzora na pin 3,3V na ESP32. Potom pripojte pin GND senzora na pin GND na ESP32. Analógový výstupný pin zo senzora vlhkosti pôdy by mal byť pripojený na analógový pin 35 na ESP32. Pre bzučiak pripojte kladný pin na digitálny pin 13 na ESP32 a záporný pin na GND. Uistite sa, že všetky spojenia sú pevné, aby sa predišlo občasným problémom počas prevádzky.

Príklady kódu a vysvetlenie

Nižšie je krátky výňatok z kódu, ktorý inicializuje sériovú komunikáciu a číta hodnotu senzora vlhkosti:

void setup() {
  // Inicializácia sériovej komunikácie rýchlosťou 115200 bitov za sekundu:
  Serial.begin(115200);
}

Tento úryvok nastaví sériovú komunikáciu, čo nám umožní zobraziť hodnoty zo senzora vlhkosti v sériovom monitore.

Ďalej máme hlavnú slučku, kde sa číta analógová hodnota zo senzora:

void loop() {
  // Prečítanie analógovej hodnoty
  int analogValue = analogRead(35);
  
  // Výpis hodnôt
  Serial.printf("Analógová hodnota = %d\n",analogValue);
  
  delay(300);  // oneskorenie medzi čítaniami pre jasné čítanie v sériovom monitore
}

V tejto slučke kód nepretržite číta analógovú hodnotu z pinu 35 a vypisuje ju do sériového monitora každých 300 milisekúnd. To nám umožňuje sledovať úroveň vlhkosti v reálnom čase.

Demonštrácia / Čo očakávať

Keď je senzor vlhkosti umiestnený v suchej pôde, analógová hodnota bude vyššia, čo indikuje nízku vlhkosť. Naopak, keď je senzor vložený do vlhkej pôdy, hodnota výrazne klesne. Ak hodnota klesne pod definovanú hranicu (napr. 2000), bzučiak pripojený na pin 13 sa aktivuje, čo signalizuje, že rastlina potrebuje zalievanie. Buďte opatrní s plávajúcimi vstupmi a uistite sa, že senzor nie je vystavený vode nad odporúčané limity (vo videu o 02:30).

Časové značky videa

  • 00:00 Začiatok
  • 1:51 Úvod do projektu
  • 5:53 Vysvetlenie zapojenia
  • 7:23 Vysvetlenie Arduino kódu
  • 9:09 Výber dosky ESP32 a COM portu v Arduino IDE
  • 10:47 Demonštrácia projektu na kvetináči
  • 14:30 Zapnutie bzučiaka, keď je kvetináč suchý

Obrázky

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
Jazyk: 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
}

Zdroje a referencie

Súbory📁

Žiadne súbory nie sú k dispozícii.