fork download
  1. // กำหนดขาที่เชื่อมต่อกับอุปกรณ์
  2. const int soilSensorPin = A0; // ขา Analog ที่เชื่อมต่อกับเซ็นเซอร์วัดความชื้นในดิน
  3. const int relayPin = 2; // ขา Digital ที่เชื่อมต่อกับรีเลย์ควบคุมปั๊มน้ำ
  4.  
  5. // กำหนดค่าความชื้นในดินที่ต้องการ (ปรับค่าตามความเหมาะสม)
  6. const int moistureThreshold = 500; // ค่านี้ขึ้นอยู่กับเซ็นเซอร์ที่ใช้ (ค่าต่ำกว่าแสดงว่าดินแห้ง)
  7.  
  8. void setup() {
  9. Serial.begin(9600); // เริ่มการสื่อสาร Serial เพื่อดูค่าจากเซ็นเซอร์
  10. pinMode(relayPin, OUTPUT); // กำหนดให้ขา relayPin เป็นขาออก
  11. }
  12.  
  13. void loop() {
  14. // อ่านค่าจากเซ็นเซอร์วัดความชื้นในดิน
  15. int sensorValue = analogRead(soilSensorPin);
  16.  
  17. // แสดงค่าความชื้นในดินทาง Serial Monitor
  18. Serial.print("Soil Moisture: ");
  19. Serial.println(sensorValue);
  20.  
  21. // ตรวจสอบความชื้นในดินและควบคุมปั๊มน้ำ
  22. if (sensorValue > moistureThreshold) {
  23. // ดินแห้ง: เปิดปั๊มน้ำ
  24. digitalWrite(relayPin, HIGH);
  25. Serial.println("Watering ON");
  26. } else {
  27. // ดินชื้น: ปิดปั๊มน้ำ
  28. digitalWrite(relayPin, LOW);
  29. Serial.println("Watering OFF");
  30. }
  31.  
  32. delay(1000); // หน่วงเวลา 1 วินาที ก่อนอ่านค่าอีกครั้ง
  33. }
Success #stdin #stdout 0.04s 25496KB
stdin
Standard input is empty
stdout
// กำหนดขาที่เชื่อมต่อกับอุปกรณ์
const int soilSensorPin = A0; // ขา Analog ที่เชื่อมต่อกับเซ็นเซอร์วัดความชื้นในดิน
const int relayPin = 2; // ขา Digital ที่เชื่อมต่อกับรีเลย์ควบคุมปั๊มน้ำ

// กำหนดค่าความชื้นในดินที่ต้องการ (ปรับค่าตามความเหมาะสม)
const int moistureThreshold = 500; // ค่านี้ขึ้นอยู่กับเซ็นเซอร์ที่ใช้ (ค่าต่ำกว่าแสดงว่าดินแห้ง)

void setup() {
  Serial.begin(9600); // เริ่มการสื่อสาร Serial เพื่อดูค่าจากเซ็นเซอร์
  pinMode(relayPin, OUTPUT); // กำหนดให้ขา relayPin เป็นขาออก
}

void loop() {
  // อ่านค่าจากเซ็นเซอร์วัดความชื้นในดิน
  int sensorValue = analogRead(soilSensorPin);

  // แสดงค่าความชื้นในดินทาง Serial Monitor
  Serial.print("Soil Moisture: ");
  Serial.println(sensorValue);

  // ตรวจสอบความชื้นในดินและควบคุมปั๊มน้ำ
  if (sensorValue > moistureThreshold) {
    // ดินแห้ง: เปิดปั๊มน้ำ
    digitalWrite(relayPin, HIGH);
    Serial.println("Watering ON");
  } else {
    // ดินชื้น: ปิดปั๊มน้ำ
    digitalWrite(relayPin, LOW);
    Serial.println("Watering OFF");
  }

  delay(1000); // หน่วงเวลา 1 วินาที ก่อนอ่านค่าอีกครั้ง
}