#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
const int Analoginpin = 12; //กำหนดขา input เซนเซอร์
const int Relay = 15; //กำหนดขา input รีเลย์
int sensorvalue = 0;
int outputvalue = 0;
void setup() {
Serial.begin(9600);
pinMode(Relay, OUTPUT); //กำหนดขา output รีเลย์
lcd.init();
lcd.backlight();
}
void loop() {
sensorvalue = analogRead(Analoginpin);
outputvalue = map(sensorvalue, 0, 4095, 0, 100);
Serial.print(outputvalue);
Serial.println(" %");
if (outputvalue <= 40) { //การตั้งค่า % การรดน้ำต้นไม้
digitalWrite(Relay, HIGH); //เมื่อความชื้นน้อยกว่า 40% สั่งให้ปั๊มทำงาน
} else {
digitalWrite(Relay, LOW); //เมื่อความชื้นมากกว่า 40% สั่งให้ปั๊มหยุดทำงาน
}
lcd.setCursor(1,0);
lcd.print("Soil moisture: ");
lcd.setCursor(5,1);
lcd.print(outputvalue);
lcd.print(" %");
delay(2500);
}