#include <LiquidCrystal_I2C.h>
#define I2C_ADDR    0x27
#define LCD_COLUMNS 16
#define LCD_LINES   2
#define soil 3
#define Red 4
#define green 5
#define Relay 6
int val;
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
void setup() {
  // Init
  Serial.begin(9600);
  lcd.init();
  lcd.backlight();
  pinMode(3, INPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  // Print something
  lcd.setCursor(0, 0);
  lcd.print("Automatic Plant");
  lcd.setCursor(0, 1);
  lcd.print("watering system");
  delay (5000);
  lcd.clear();
  
}
void loop() {
  val= digitalRead(soil);
  if(digitalRead(soil) == LOW){
Serial.println(val);
digitalWrite(Red, HIGH);
digitalWrite(green,LOW);
digitalWrite(Relay,HIGH);
  lcd.setCursor(0, 0);
  lcd.print("Soil is dry");
  lcd.setCursor(0, 1);
  lcd.print("Pump will on ");
} else {
digitalWrite(Red, LOW);
digitalWrite(green, HIGH);
digitalWrite(Relay, LOW);
  
  lcd.setCursor(0, 0);
  lcd.print("Soil is wet now");
  lcd.setCursor(0, 1);
  lcd.print("Pump will off");
  
delay(500);
}
}This is an example of
 Soil sensor
if press, wet and pump off.
This is an example of
 Relay on and off 
if LED green light on,
 it is pump on.