Nínú ẹ̀kọ́ yìí, a óò kọ́ bí a ṣe le lo SunFounder ESP32 pẹ̀lú ẹ̀rọ ìwọ̀n ọ̀rinrin ilẹ̀ láti wọn ipele ọ̀rinrin nínú ilẹ̀, èyí tí ó lè ran wa lọ́wọ́ nínú ṣíṣe àdánilójú àwọn ètò ìrì. Nípa ṣíṣe àbójútó àwọn ipele ọ̀rinrin, a lè mú buzzer ṣiṣẹ́ nígbà tí ọ̀rinrin bá kéré ju ààlà kan, tí ó ń fi hàn pé àwọn ohun ọ̀gbìn nílò omi. Iṣẹ́ yìí ṣe pàtàkì fún ìmúdáradára ìlera ohun ọ̀gbìn, ó sì lè gbòòrò sí i fún àwọn ohun èlò ìmọ̀ nípa àyíká. (nínú fídíò ní 00:00)
soil_mositure_module
A óò lo ẹ̀rọ ìwọ̀n ọ̀rinrin ilẹ̀ capacitive, èyí tí ó ṣiṣẹ́ nípa wíwọn ìyípadà capacitance láàárín àwọn pálánkì méjì tí ó yàtọ̀ dá lórí iye ọ̀rinrin tí ó wà nínú ohun tí ó yí i ká. Ẹ̀rọ yìí yóò pèsè ìjàde analog tí ó ń fi ipele ọ̀rinrin hàn, tí yóò jẹ́ kí a ṣe àwọn ìpinnu dá lórí àwọn ìwọ̀n náà. ESP32 yóò ka ìjàde analog náà, yóò sì mú buzzer ṣiṣẹ́ bí ilẹ̀ bá gbẹ ju.
Ohun Èlò Tí A Ṣàlàyé
Fún iṣẹ́ yìí, àwọn èròjà pàtàkì ni SunFounder ESP32 microcontroller, ẹ̀rọ ìwọ̀n ọ̀rinrin ilẹ̀ capacitive, àti buzzer kan. ESP32 ní Wi-Fi àti Bluetooth tí a kọ́ sínú rẹ̀, tí ó ń jẹ́ kí àbójútó àti ìdarí láti ọ̀nà jíjìn ṣeé ṣe. Ẹ̀rọ ìwọ̀n ọ̀rinrin ilẹ̀ ní àwọn pálánkì méjì tí ń wọn capacitance, èyí tí ń yàtọ̀ dá lórí ipele ọ̀rinrin nínú ilẹ̀. Ìyípadà capacitance yìí ń yí folti ìjàde padà, èyí tí ESP32 ń ka nípasẹ̀ ìfidánilẹ́nu analog rẹ̀. Buzzer yóò kìlọ̀ fún wa nígbà tí ipele ọ̀rinrin bá kéré ju ààlà tí a ṣètò.
soil_mositure_module_schematic
Àwọn Àlàyé Datasheet
Olùṣelọ́pọ̀
SunFounder
Nọ́mbà apá
Ẹ̀rọ Ìwọ̀n Ọ̀rinrin Ilẹ̀
Folti ìṣiṣẹ́
3.3 sí 5 V
Iru ìjàde
Analog
Ìwọ̀n ìfihàn
0 sí 3.3 V
Àkókò ìdáhùn
Yára
Ìwọ̀n
Ní nǹkan bí 60 x 20 mm
Àwọn àkíyèsí / oríṣiríṣi
Ẹ̀rọ irú capacitive
Rí i dájú pé ẹ̀rọ náà kò bọ́ sínú omi pátápátá láti yẹra fún ìbàjẹ́.
Lo àwọn resistor ìfà sókè tí ó yẹ bí ó bá pọn dandan fún ìwọ̀n tí ó dúró ṣinṣin.
Ṣe ìmúdọ́gba ẹ̀rọ náà fún irú ilẹ̀ rẹ̀ pàtó fún ìwọ̀n ọ̀rinrin tí ó pé.
Mú àwọn ìsopọ̀ onirin ṣe déédéé láti yẹra fún pàdánù ìfihàn.
Ṣọ́ra fún ìpèsè agbára láti yẹra fún àwọn ipò folti púpọ̀.
Àwọn Ìtọ́nisọ́nà Ìsopọ̀ Onirin
ESP32-24-soild-moisture-wiring
Láti so ẹ̀rọ ìwọ̀n ọ̀rinrin ilẹ̀ pọ̀ mọ́ ESP32, so pin VCC ti ẹ̀rọ náà pọ̀ mọ́ pin 3.3V lórí ESP32. Nígbà tí ó bá yẹ, so pin GND ti ẹ̀rọ náà pọ̀ mọ́ pin GND kan lórí ESP32. Pin ìjàde analog láti ẹ̀rọ ìwọ̀n ọ̀rinrin ilẹ̀ yẹ kí a so pọ̀ mọ́ pin analog 35 lórí ESP32. Fún buzzer, so pin rere pọ̀ mọ́ pin onínọ̀mbà 13 lórí ESP32 àti pin odi pọ̀ mọ́ GND. Rí i dájú pé gbogbo àwọn ìsopọ̀ ti ṣe déédéé láti yẹra fún àwọn ìṣòro àìdúró ṣinṣin nígbà ìṣiṣẹ́.
Àwọn Àpẹẹrẹ Kóòdù & Ìtọ́sọ́nà
Nísàlẹ̀ ni àyọkà kúkúrú kan láti inú kóòdù tí ń bẹ̀rẹ̀ ìbánisọ̀rọ̀ serial àti tí ń ka iye ẹ̀rọ ìwọ̀n ọ̀rinrin:
void setup() {
// Bẹ̀rẹ̀ ìbánisọ̀rọ̀ serial ní 115200 bítì fún ìṣẹ́jú àáyá:
Serial.begin(115200);
}
Àyọkà yìí ṣètò ìbánisọ̀rọ̀ serial, tí ó ń jẹ́ kí a wo àwọn ìwọ̀n láti ẹ̀rọ ìwọ̀n ọ̀rinrin nínú àbójútó serial.
Nígbà tí ó tó, a ní ìyípo àkọ́kọ́ níbi tí a ti ń ka iye analog láti ẹ̀rọ náà:
void loop() {
// Ka iye analog
int analogValue = analogRead(35);
// Tẹ àwọn iye jáde
Serial.printf("Iye analog = %d\n",analogValue);
delay(300); // idaduro láàárín àwọn ìwọ̀n fún kíkà tí ó ṣe kedere láti àbójútó serial
}
Nínú ìyípo yìí, kóòdù ń ka iye analog láti pin 35 nígbà gbogbo, ó sì ń tẹ ẹ jáde sí àbójútó serial ní gbogbo 300 milliseconds. Èyí ń jẹ́ kí a ṣe àbójútó ipele ọ̀rinrin ní àkókò gidi.
Ìfihàn / Ohun Tí A Ó Retí
Nígbà tí a bá gbé ẹ̀rọ ìwọ̀n ọ̀rinrin sínú ilẹ̀ gbígbẹ, iye analog yóò ga, tí ó ń fi ọ̀rinrin kíkéré hàn. Ní òdìkejì, nígbà tí a bá fi ẹ̀rọ náà sínú ilẹ̀ tí ó ní ọ̀rinrin, iye náà yóò kéré púpọ̀. Bí ìwọ̀n náà bá kéré ju ààlà tí a ṣàlàyé (fún àpẹẹrẹ, 2000), buzzer tí a so pọ̀ mọ́ pin 13 yóò ṣiṣẹ́, tí ó ń fi hàn pé ohun ọ̀gbìn nílò omi. Ṣọ́ra fún àwọn ìfidánilẹ́nu tí ń fòfò, kí o sì rí i dájú pé a kò fi ẹ̀rọ náà sí omi ju àwọn ààlà tí a ṣedá rẹ̀ lọ (nínú fídíò ní 02:30).
Àwọn Àkókò Nínú Fídíò
00:00 Ìbẹ̀rẹ̀
1:51 Ìfihàn sí iṣẹ́ náà
5:53 Ìsopọ̀ onirin tí a ṣàlàyé
7:23 Kóòdù Arduino tí a ṣàlàyé
9:09 Yíyàn Bọ́ọ̀dù ESP32 àti ibùdó COM nínú Arduino IDE
823-ESP32 Tutorial 24/55- Arduino code for soil moisture measurement
Ede: 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
}
Ifihan: Gẹ́gẹ́ bíi ọmọ ẹgbẹ́ Amazon, a ń rí owó láti inú rira tó yẹ. Èyí túmọ̀ sí i pé a lè gba owó kékèké tí o bá tẹ̀ sí ìjápọ̀ kan kí o sì ra nkan kan láìsí owó míràn fún ọ.