این ماژول شامل یک تقویت کننده و یک الکترود می باشد که داخل خاک قرار می کیرد
دو عدد دیود نورانی وضعیت روشن بودن ماژول و خروجی دیجیتال آن را نمایش میدهند
حساسیت ماژول نیز با کمک پتانسیومتر آن قابل تنظیم است.
پین AO خروجی آنالوگ سنسور است که با کمک آن میتوانید سطح رطوبت را اندازه گیری کنید
پین DO خروجی دیجیتال میباشد که متناسب با تنظیم پتانسیومتر 0 و 1 میشود
الکترود این سنسور به دلیل تماس مستقیم با خاک از عمر مفید محدودی برخوردار است
const int sensor_pin = A1; /* Soil moisture sensor O/P pin */
void setup() {
Serial.begin(9600); /* Define baud rate for serial communication */
}
void loop() {
float moisture_percentage;
int sensor_analog;
sensor_analog = analogRead(sensor_pin);
moisture_percentage = ( 100 - ( (sensor_analog/1023.00) * 100 ) );
Serial.print("Moisture Percentage = ");
Serial.print(moisture_percentage);
Serial.print("%\n\n");
delay(1000);
}
این ماژول بر مبنای اختلاف مقاومت الکتریکی خاک خشک و مرطوب کار میکند.
جریان ضعیفی بین پایه های الکترود برقرار شده و با اندازه گیری جریان عبوری از طریق پین AO میتوان سطح رطوبت خاک را اندازه گرفت.
همچنین با تنظیم پتانسیومتر روی ماژول میتوان خروجی دیجیتال ماژول را طوری تنظیم کرد که اگر رطوبت از حد مطلوب کمتر شود خروجی DO فعال شود.
ماژول با ولتاژ 3.3 الی 5 ولت کار میکند و کار با آن بسیار آسان است
در اینجا از این ماژول جهت اندازه گیری سطح رطوبت استفاده میکنیم
برای این کار مانند شکل زیر پینهای ماژول را به میکرو کنترولر متصل می کنیم
برای محاسبه درصد رطوبت به پین AO نیاز داریم که آن را به A1 میکرو کنترولر متصل کرده ایم.
از آنجا که ماژول را با 5 ولت راه اندازی کرده ایم نیازی به استفاده از AREF نیست.
مجموعه این مدار و تکه برنامه کوچکی که آورده ایم قادر به نمایش میزان رطوبت خاک بر روی پنجره سریال می باشند
یک لیوان خاک خشک آماده کنید.
الکترود ماژول را درون آن قرار دهید و نتیجه را بر روی پنجره سریال ببینید
حالا به تدریج آب به داخل خاک اضافه کنید و و متوجه تغییرات خواهید شد