Soil Moisture Sensor — เซ็นเซอร์วัดความชื้นดิน
YL-69 / HL-69 เป็นเซ็นเซอร์วัดความชื้นในดินที่นิยมใช้กับ Arduino ราคาถูก (~20-30 บาท) ทำงานโดยวัดความต้านทานไฟฟ้าระหว่างหัววัด 2 ขา — ยิ่งดินชื้น ค่ายิ่งต่ำ ยิ่งดินแห้ง ค่ายิ่งสูง
การต่อวงจร
YL-69 Module (LM393): VCC → Arduino 5V GND → GND DO → Digital output (ไม่ใช้ในโหมด Analog) AO → Arduino A0 (Analog Input)
Source Code — อ่านค่าความชื้น
const int MOISTURE_PIN = A0;
int dryValue = 720; // ค่าเมื่อดินแห้ง (ปรับตามดินจริง)
int wetValue = 280; // ค่าเมื่อดินเปียก
void setup() {
Serial.begin(9600);
}
void loop() {
int raw = analogRead(MOISTURE_PIN);
int percent = map(raw, dryValue, wetValue, 0, 100);
percent = constrain(percent, 0, 100);
Serial.print("Raw: "); Serial.print(raw);
Serial.print(" | Moisture: "); Serial.print(percent);
Serial.println("%");
if (percent < 30) {
Serial.println("⚠️ ดินแห้ง! ควรรดน้ำ");
} else if (percent > 80) {
Serial.println("✅ ดินชื้นเพียงพอ");
}
delay(5000);
}
การ Calibrate เซ็นเซอร์
ค่า dryValue และ wetValue แตกต่างกันตามชนิดดิน ควร Calibrate ก่อนใช้งานจริง:
void calibrate() {
// จุ่มหัววัดในน้ำเปล่า → อ่านค่า = wetValue
int wet = analogRead(MOISTURE_PIN);
Serial.print("Wet value: "); Serial.println(wet);
delay(5000);
// วางหัววัดในดินแห้งสนิท → อ่านค่า = dryValue
int dry = analogRead(MOISTURE_PIN);
Serial.print("Dry value: "); Serial.println(dry);
// นำค่าที่ได้ไปใช้ใน loop()
}
ปัญหาและการแก้ไข
- Sensor ขึ้นสนิม: หัววัดทองแดงจะค่อยๆ ผุกร่อน เปลี่ยนทุก 3-6 เดือน หรือใช้ Capacitive Soil Moisture Sensor (รุ่น V1.2 ที่ไม่เป็นสนิม)
- ค่าเพี้ยน: อย่าวัดขณะเพิ่งรดน้ำใหม่ๆ รอ 5-10 นาทีให้น้ำซึมกระจายก่อน
- ป้องกัน: ทาแอลกอฮอล์ที่หัววัดหลังใช้งาน เพื่อป้องกันการกัดกร่อน
แนะนำ: สำหรับระบบที่ต้องทำงานตลอด 24/7 ควรใช้ Capacitive Soil Moisture Sensor แทน YL-69 เพราะไม่มีโลหะเปลือย ไม่เกิดการกัดกร่อน และอายุการใช้งานยาวนานกว่า
💰 ราคาประมาณการ
| อุปกรณ์ | ราคา |
|---|---|
| Soil Moisture YL-69 | ~20-40 บาท |
| Capacitive Moisture v1.2 | ~50-90 บาท |
| LDR + 10k Resistor | ~5-10 บาท |
| DHT22 | ~80-120 บาท |
| PIR HC-SR501 | ~30-60 บาท |
| Rain Sensor YL-83 | ~25-45 บาท |
| Flow Sensor YF-S201 | ~60-100 บาท |
🔋 ทางเลือกใช้แบตเตอรี่
เซ็นเซอร์ทั้งหมดใช้ไฟ 5V ซึ่ง Arduino จ่ายให้ได้โดยตรง ถ้าใช้แบตเตอรี่ 12V + Buck Converter → 5V เซ็นเซอร์จะทำงานปกติ
สำหรับระบบนอกบ้านที่ไม่มีปลั๊กไฟ ใช้ Solar Cell 10W + แบต 12V 7Ah (~1,000-1,500 บาท) จ่ายไฟทั้งระบบได้ 24 ชม.
⚠️ หมายเหตุ: เนื้อหานี้ค้นคว้าและเรียบเรียงโดย Hermes AI — ข้อมูลทางเทคนิคควรตรวจสอบก่อนนำไปใช้งานจริง