Automatic Irrigation System Using Arduino

by himanigarg175 in Circuits > Arduino

1044 Views, 5 Favorites, 0 Comments

Automatic Irrigation System Using Arduino

FXKBQUJIYAFX2QA.jpg

In this project i will be demonstrating Automatic Irrigation System with integrated temperature sensor which irrigates or waters your plants automatically. This system is best suited for drip irrigation technique.

A Moisture sensor is used to read the Moisture content of the soil. The LM35 Temperature Sensor reads the ambient temperature.

This System will help you to irrigate your backyard Garden or your Indoor Garden automatically and you need not worry about watering your favorite plants in your busy schedule.

An LCD is provided to monitor the Soil Status, Ambient Temperature and Status of Water supply(Water Pump).

Arduino UNO is the brain of this system and all the sensors and display devices are controlled by it.

COMPONENTS USED

FDG0AFQIYAFX3RC.jpg
FZ18C3WIYAFX3CL.jpg
FTVOMW9IYAFX3B8.jpg
F1UKX5CIYAFX3KG.jpg
FMSLHNXIYAFX3LE (1).jpg
FL9ZWR5IYAFX3JG (1).jpg
The following Components are used in this project__________________________________________

* Arduino UNO

* Soil Moisture Sensor ( with LM393 Driver)

* LM 35 Temperature Sensor

* 16x2 LCD Display

* Water level Switch

* Speaker

* 5V Relay

* BC547 or similar NPN Transistors

* Resistors ( Refer Circuit Diagram)

* Potentiometer ( 10Kohm )

* 5mm LED

* 1N4007 Diode

* Terminal Strips and Screw Terminals

* PCB

UNDERSTANDING THE WORKING....

FXKBQUJIYAFX2QA (1).jpg
FVSX0ENIYAFX2XZ.jpg
The Soil Moisture Sensor values depends on the resistance of the soil. The LM393 Driver is a dual differential comparator which compares the sensor voltage with fixed 5V supply voltage .

The value of this sensor varies from 0- 1023. 0 being most wet condition and 1023 being very dry condition.

The LM35 is a precision integrated-circuit temperature sensors, whose output voltage is linearly proportional to the Celsius temperature. The LM35 is operates at -55˚ to +120˚C.

The Water level Switch Contains a Reed-Magnetic Switch surrounded by a floating magnet. When water is available it Conducts.

The Arduino reads the status of the soil using Soil Moisture Sensor. If the Soil is DRY it does the following Operations....

1) Checks for the availability of water using water level sensor.

2) If the water is available, the Pump is turned ON and is automatically turned OFF when sufficient amount of water is supplied.

The Pump is Driven by a Relay driver circuit.

3) If the Water is Unavailable, you will be notified with a sound.

The Status of soil( Dry, Moist ,Soggy) , the temperature and the status of Pump is displayed on the LCD Screen.

BUILDING UP THE SYSTEM( CIRCUIT CONSTRUCTION)

F0YQXW9IYAFYHSV.jpg
F0QKBGGIYAFY9CB.jpg
FWURRFKIYAFXMGY.jpg
FPQVE3OIYAFYISH.jpg
F0YQXW9IYAFYHSV.jpg
Pleas refer the circuit diagram and build the circuit accordingly.

The Arduino Connections are given below._________________________________________________________

ARDUINO PINS

0______________________________N/C

1______________________________N/C

2______________________________LCD-14

3______________________________LCD-13

4______________________________LCD-12

5______________________________LCD-11

6______________________________N/C

7______________________________WATER_LEVEL_STATUS_LED

8______________________________N/C

9______________________________SPEAKER

10_____________________________N/C

11_____________________________LCD-6

12_____________________________LCD-4

13_____________________________PUMP_STATUS_LED)_AND_TO_RELAY

A0_____________________________SOIL_MOISTURE_SENSOR

A4_____________________________LM35_(TEMPERATURE_SENSOR)

LCD-1_____________GND

LCD-5_____________GND

LCD-2_____________+Vcc

LCD-3_____________LCD_BRIGHTNESS

___________________________________________________________________________________________

I have built this project on the Printed Circuit Board. It can also be constructed on Breadboard.

I have designed the Arduino shield for this project and all the components like Led, relay, etc are embedded in the shield itself.

You can refer to my video and instructables on how to make a PCB in this link..

UPLOAD THE CODE TO ARDUINO

FAP5EN5IYAFY0AK.jpg
The Arduino Code is written by me for the specific task of Automatic Irrigation.

This Software is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Procedure

1 Connect the Arduino to your computer.

2 Download the attached code and open it.

3 Select your COM Port and your Arduino Board from Tools Option.

4 Click Upload Button.

____________________________________________________________________________________

The temperature id calculated using the following formula
X = ((Sensor value) * 1023.0)/ 5000

Temperature in Celsius =( X/10)

If you want to change the sensitivity of the sensor for different soil conditions alter the values of the 3 conditions commented in the Code.

TESTING AND IMPLIMENTATION

FHLPAYLIYAFYB3C.jpg
FXKBQUJIYAFX2QA (1).jpg
The following steps can be followed to test the project.

1) Connect the Arduino to power supply (5V) via USB or External power source.

2) Dip or bury the moisture sensor in the soil. Better place the sensor near the roots of plants for accurate measurements. Do not short the terminals.

3) Connect the Water pump to the Relay (N/O and Common terminals) and switch ON the mains. Refer the Circuit for connection details and pin out. WARNING: HIGH VOLTAGES . UNDERSTAND THE WIRING BEFORE YOU PROCEED.

4) The temperature sensor can be placed on the PCB itself or on the soil. Do not immerse the sensor in water.

Congratulations!!! You have successfully set up the system for irrigating your plants automatically!!!.

5) The potentiometer can be varied to adjust the LCD brightness.

If you come across any doubts feel free to let me know in the comments section.