Во ова упатство, ќе научиме како да го користиме SunFounder ESP32 заедно со сензор за влажност на почва за мерење на нивото на влажност во почвата, што може да помогне во автоматизирање на системите за наводнување. Со следење на нивоата на влажност, можеме да активираме зумер кога влажноста ќе падне под одреден праг, што укажува дека растенијата треба да се полеваат. Овој проект е вреден за одржување на здравјето на растенијата и може да се прошири за различни апликации за сензори за животна средина. (во видео на 00:00)
soil_mositure_module
Ќе користиме капацитивен сензор за влажност на почва, кој работи со мерење на промената во капацитетот помеѓу две плочи што варира врз основа на содржината на влага во околната средина. Овој сензор ќе обезбеди аналоген излез што ја рефлектира влажноста, што ни овозможува да донесуваме одлуки врз основа на отчитувањата. ESP32 ќе го чита аналогниот излез и ќе активира зумер ако почвата е премногу сува.
Објаснување на хардверот
За овој проект, основните компоненти се SunFounder ESP32 микроконтролерот, капацитивниот сензор за влажност на почва и зумер. ESP32 има вградени Wi-Fi и Bluetooth, што овозможува далечинско следење и контрола. Сензорот за влажност на почва се состои од две плочи што го мерат капацитетот, кој се менува во зависност од нивото на влажност во почвата. Оваа промена во капацитетот го менува излезниот напон, кој ESP32 го чита преку својот аналоген влез. Зумерот ќе не предупреди кога нивото на влажност ќе падне под поставениот праг.
soil_mositure_module_schematic
Детали од техничкиот лист
Производител
SunFounder
Број на дел
Сензор за влажност на почва
Работен напон
3.3 до 5 V
Тип на излез
Аналоген
Опсег на сигнал
0 до 3.3 V
Време на одговор
Брзо
Димензии
Прибл. 60 x 20 mm
Белешки / варијанти
Капацитивен тип сензор
Осигурајте се дека сензорот не е целосно потопен во вода за да се спречи оштетување.
Користете соодветни pull-up отпорници ако е потребно за стабилни отчитувања.
Калибрирајте го сензорот за вашиот специфичен тип на почва за точни отчитувања на влажноста.
Одржувајте соодветни жичени врски за да избегнете губење на сигналот.
Бидете внимателни со напојувањето за да избегнете ситуации со прекумерен напон.
Инструкции за жичање
ESP32-24-soild-moisture-wiring
За да го поврзете сензорот за влажност на почва со ESP32, поврзете го VCC пинот на сензорот со 3.3V пинот на ESP32. Потоа, поврзете го GND пинот на сензорот со GND пин на ESP32. Аналогниот излезен пин од сензорот за влажност на почва треба да се поврзе со аналогниот пин 35 на ESP32. За зумерот, поврзете го позитивниот пин со дигиталниот пин 13 на ESP32 и негативниот пин со GND. Осигурајте се дека сите врски се безбедни за да избегнете повремени проблеми за време на работата.
Примери на код и објаснување
Подолу е краток извадок од кодот што ја иницијализира сериската комуникација и го чита вредноста на сензорот за влажност:
void setup() {
// Иницијализирај сериска комуникација на 115200 бита во секунда:
Serial.begin(115200);
}
Овој фрагмент ја поставува сериската комуникација, што ни овозможува да ги гледаме отчитувањата од сензорот за влажност во серискиот монитор.
Следно, ја имаме главната јамка каде што се чита аналогната вредност од сензорот:
void loop() {
// Читај ја аналогната вредност
int analogValue = analogRead(35);
// Печати ги вредностите
Serial.printf("Аналогна вредност = %d\n",analogValue);
delay(300); // одложување помеѓу читањата за јасно читање од серискиот монитор
}
Во оваа јамка, кодот континуирано ја чита аналогната вредност од пинот 35 и ја печати на серискиот монитор на секои 300 милисекунди. Ова ни овозможува да го следиме нивото на влажност во реално време.
Демонстрација / Што да очекувате
Кога сензорот за влажност е поставен во сува почва, аналогната вредност ќе биде повисока, што укажува на ниска влажност. Спротивно на тоа, кога сензорот е вметнат во влажна почва, вредноста значително ќе се намали. Ако отчитувањето падне под дефинираниот праг (на пр., 2000), зумерот поврзан со пинот 13 ќе се активира, што сигнализира дека растението треба да се полева. Бидете внимателни со лебдечки влезови и осигурете се дека сензорот не е изложен на вода над препорачаните граници (во видео на 02:30).
Временски ознаки на видеото
00:00 Почеток
1:51 Вовед во проектот
5:53 Објаснување на жичањето
7:23 Објаснување на Arduino кодот
9:09 Избор на ESP32 плоча и COM порт во Arduino IDE
10:47 Демонстрација на проектот на саксијата со растение
823-ESP32 Tutorial 24/55- Arduino code for soil moisture measurement
Јазик: 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
}
Изјава: Како соработник на Amazon, заработуваме од квалификувани купувања. Ова значи дека може да добиеме мала провизија ако кликнете на линк и направите купување без дополнителни трошоци за вас.