technoesolution
Published © CC BY-NC-SA

Water Irrigation System Using Arduino

This project will watering plants automatic when soil moisture level drops & cut off water supply when soil water level will moderate.

AdvancedFull instructions provided2 hours9,463
Water Irrigation System Using Arduino

Things used in this project

Hardware components

Arduino UNO
Arduino UNO
×1
Gravity: Analog Soil Moisture Sensor For Arduino
DFRobot Gravity: Analog Soil Moisture Sensor For Arduino
×1
LCD display 16x2
×1
Submersible Motor
×1
10k Trimpot
×1
MINI RELAY SPDT 5 PINS 12VDC 10A 120V CONTACT
TaydaElectronics MINI RELAY SPDT 5 PINS 12VDC 10A 120V CONTACT
×1
Male-female berge strips
×1
1N4007 – High Voltage, High Current Rated Diode
1N4007 – High Voltage, High Current Rated Diode
×1
9V battery (generic)
9V battery (generic)
×1
12V Adapter
×1
LED (generic)
LED (generic)
×1
Through Hole Resistor, 470 ohm
Through Hole Resistor, 470 ohm
×1
Single side copper clad PCB Board
×1
Transistor BC547
×1

Software apps and online services

Arduino IDE
Arduino IDE

Hand tools and fabrication machines

PCB Drill Machine
PCB Etching Kit
PCB Layout Print On Photo Paper

Story

Read more

Schematics

Circuit Diagram

Code

Arduino Code

C/C++
Use the following code & Upload into the your Arduino IDE.
/*
 * Hello Friends welcome to Techno-E-solution
 * Here is the code for Water Irrigation System Using arduino Uno
 */

int moistureSensor = 0;
int motor = 2;
#include<LiquidCrystal.h>
LiquidCrystal lcd(12,11,6,5,4,3);
void setup() {
Serial.begin(9600);
lcd.begin(16,2);
pinMode(motor,OUTPUT);
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("    WEL-COME ");
  delay(2000);
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("PLANT IRRIGATION");
  lcd.setCursor(0,1);
  lcd.print("     SYSTEM");
  delay(3000);
  lcd.clear();
  int SensorValue = analogRead(moistureSensor);
  if(SensorValue >=400)
{
lcd.setCursor(0,0);
lcd.print("STATUS ....");   
lcd.setCursor(0,1);
lcd.print("        DRY SOIL");
delay(5000);
lcd.clear();
} 
else
{ 
 lcd.setCursor(0,0);
lcd.print("STATUS ....");
lcd.setCursor(0,1);
lcd.print("      HUMID SOIL");
delay(5000);
lcd.clear(); 
}
 }
void loop(){

  int SensorValue = analogRead(moistureSensor);
  lcd.setCursor(0,0);
  lcd.print("SENSOR VAL =");
  lcd.println(SensorValue);

if(SensorValue >=400)
{
   
digitalWrite(motor,HIGH);
lcd.setCursor(0,1);
lcd.print("   *WATERING* ");
} 
else
{ 
digitalWrite(motor,LOW);
lcd.setCursor(0,1);
lcd.print(" *NOT WATERING*"); 
}
 }

Credits

technoesolution

technoesolution

23 projects • 15 followers
Youtuber | Electrical Engineer | Electronics Lover | Article Writer | Project Developer |

Comments