Irrigation System (Project Report)
Irrigation System (Project Report)
”
University Institue of Engineering and Technology
Kurukshetra University , Kurukshetra (Hr.)-”136119”
Project Report
On
“Irrigation System”
( Soil Moisture Detector )
This is great opportunity to acknowlege and to thank all those persons Support and help
this project would have been impossible. We would like to add a few heartfelt word for
the people who were the part of this Project in numerous ways.
We would like to thanks to hour Head of Department Dr. Priyanka Jangra and our
Project Guide Priya Singh for their indefatigable valuable Suggestion, moral support,
constant encouragement and sincerely thank to all faculty members of the insitution for
their extra effort to make our Suggestion inspire of all ideas.
I would like to express my special gratitude and thanks to industry Persons for giving
me such attention and time.
Submitted By :-
Harikishan ( 252201154)
Himanshu (252201155)
Vivek (252201172)
{ ECE-B(B3) }
CONTENT‘S
Project Aim.
Project Objective.
Introduction .
Software Requirement.
Code/Code explanation .
Circuit Diagram.
Project Aim :-
The aim of an irrigation system is to artificially apply water to soil or crops in order to promote
plant growth and ensure agricultural productivity, especially in areas where rainfall is
insufficient, irregular, or unpredictable.
At a broad level, the aim of an irrigation system extends beyond simply watering crops. It
encompasses several economic, environmental, and social goals that contribute to sustainable
development.
Project Objective :-
Ensure the regular and adequate supply of water to crops to support healthy growth.
Increase agricultural productivity by reducing dependence on rainfall.
Promote efficient use of water resources to avoid wastage.
Enable cultivation in dry and arid regions where rainfall is scarce.
Improve soil moisture conditions for better crop yield.
Support multiple cropping cycles by maintaining consistent water availability.
Scope :-
It also supports multiple cropping cycles, helps maintain soil health, and boosts economic
development by increasing crop yields.
Limitation :-
Irrigation systems have limitations, including high initial costs, ongoing maintenance and
energy expenses, and the risk of water wastage.
Improper use can lead to soil salinization, depletion of water resources, and environmental
impacts such as soil erosion. Additionally, over-irrigation can cause waterlogging,
harming crop growth.
INTRODUCTION
Many Irrigation systems are available in the market. Some are costly and few have
only audio or visual indication facilities. To eliminate this drawback, I have
developed this irrigation system for gardening applications with LCD display
facility. This system is cost-effective and easy to use with the least human effort.
In this irrigation system we used an Arduino and a soil moisture sensor. Also, we
can control the water supply automatically through this system. This can be done
in such a way that when the soil is dry, the motor automatically activates and
when the soil gets wet, it becomes inactive again. Also, we can use this project
for mainly Small gardens, flower gardens, or greenhouses. The soil moisture
sensor is mainly used for this project. An LCD display is also used to monitor the
soil moisture level. You can also connect a motor pump to the relay module .
Note :- In this irrigation system project we have used electric lamp bulb , instead of this you
can use small water pump…
Diode (IN4007) .
→ It is an semiconductor device which allow current to flow in only one direction “OR” It is mean responsible to convert the
Alternating current (AC) to pulsating Direct current (DC).
SOFTWARE REQUIREMENT
Arduino UNO R3 :-
1) Arduino UNO R3 :-
Arduino uno is open-source computer hardware and software device. This device are used to
control the all operation of there device this is control objects in the physical and digital world.
Arduino board designs use a variety of microprocessors and controllers.
The boards are equipped with sets of digital and analog input/output (In/0ut) pins that may be
interfaced to various expansion board or breadboard (shields) an other circuits.
The Arduino Uno is a microcontroller board based on the ATmega328P microcontroller IC.
It has 14 digital input/output pins (of which 6 can be used as PWM outputs), a 16 MHz crystal
oscillator, a USB connection, a power jack an ICSP header, and a reset button. It contains
everything needed to support the microcontroller, simply connect it to a computer with a USB
cable or power it with an AC-to-DC adapter or battery to get started.
Some Technical Specification of Arduino Uno :-
ATmega328P :-
ATmega328P chip is used in place of Arduino Uno, or vice versa, thee image below shows
the pin mapping.
2) FC-28 Soil moisture sensor :-
A soil moisture sensor is a device used to measure the water content in soil. It plays a
crucial role in agriculture, gardening, and environmental monitoring by helping determine
when soil needs watering.
These have two electrodes that measure electrical resistance in the soil. Moist soil conducts
electricity better, leading to lower resistance.
.
3) Single Channel Relay module (5v) :-
Relay is an electromechanical device that uses an electric current to open or close the
contacts of a switch. The single - channel relay module is much more than just a plain relay,
it comprises of components that make switching and connection easier and act as indicators
to slow if the module is powered and if the relay is active or not.
It can be used to control various appliances and equipment with large current. It is equpied
with high current relays that work under AC (200-220v,104) or DC (upto 30 V, 10 A). It has
a standard interface that can be controller directly by Microcontroller.
Relay is an electromechanical device that uses an electric current to open or close the contacts
of a switch. this is activate and deactivate relay module by applying a digital signal to control
pin of single channel relay module.
The following circuit show the internal circuit diagram of a 5v single channel relay module:-
→ It works on the Principal of electromagnetic induction. the electromagnetic field that creates
the temporary magnetic field is energised when the relay's circuit detects the fault current.
This magnetic field moves the relay armature to open or close connections. A 5v active high
or low signal activates the relay by energizing its coil. As mentioned earlier, internally a 5v
relay consists of a NC, NO, COM terminals and a coil.
4) Diode (IN4007) :-
A diode is a semiconductor device that essentially acts as a one-way switch for current. It
allows current to flow easily in one direction, but severely restricts current from flowing in
the opposite direction.
Diodes are also known as rectifiers because they change alternating current (ac) into
pulsating direct current (dc). Diodes are rated according to their type, voltage, and current
capacity.
Diodes have polarity, determined by an anode (positive lead) and cathode (negative lead).
Most diodes allow current to flow only when positive voltage is applied to the anode.
5) Capacitor :-
A capacitor is a two-terminal electrical device that can store energy in the form of an
electric charge.
It consists of two electrical conductors that are separated by a distance.The space between
the conductors may be filled by vacuum or with an insulating material known as a dielectric.
The basic unit of capacitance is Farad. But, Farad is a large unit for practical tasks. Hence,
capacitance is usually measured in the sub-units of Farads, such as micro-farads (μF) or
pico-farads (pF).
Most of the electrical and electronic applications are covered by the following standard unit
(SI) prefixes for easy calculations
→ 1 mF (millifarad) = 10-3 F
→ 1 µF (microfarad) =10-6 F
→ 1 nF (nanofarad) = 10-9 F
→ 1 pF (picofarad) = 10-12 F
A 16×2 LCD display is a widely used electronic display module that shows 16 characters per
line across 2 lines. It is commonly used in embedded systems, microcontroller projects, and
industrial applications.
LCD display will have 16 Pins and the programming approach is also the same and hence the
choice is left to you. Below is the Pinout and Pin Description of 16x2 LCD Module .
The pin configuration of LCD 16 X 2 is discussed below so that LCD 16×2 connection can be
done easily with external devices.
The HW-061 is a liquid crystal display (LCD) module that consists of a 16-character by 2-line
(16×2) display with an I2C (Inter-Integrated Circuit) communication interface. It combines the
traditional 16×2 LCD display with a small I2C module, allowing for easy interfacing with
microcontrollers like Arduino.
→ 16×2 Character Display: The module can display up to 16 characters per line and has two
lines, providing a total of 32 characters for displaying information.
→ I2C Interface: The I2C interface simplifies the connection between the LCD module and
microcontrollers like Arduino, requiring only two wires (SDA and SCL) for communication.
→ Backlight Control: Some variants of the HW-061 module feature a built-in backlight that can
be controlled via software to improve visibility in low-light conditions.
→ Adjustable Contrast: The contrast of the LCD can often be adjusted using a potentiometer
located on the module, allowing for optimal readability.
→ Low Power Consumption: LCD displays typically consume very little power, making them
suitable for battery-powered projects.
The HW-061 module usually has the following pinout:
Advantages :
Simplicity: The I2C interface reduces the number of wires required for communication,
simplifying wiring and making the module easy to use.
Space Saving: The integrated design of the LCD display and I2C module saves space on the
breadboard or PCB compared to traditional parallel interface LCD modules.
Wide Compatibility: The HW-061 module is compatible with various microcontrollers and
development boards, including Arduino, Raspberry Pi, and others, making it versatile for
different projects.
Common Applications :-
DIY Electronics Projects: The HW-061 module is commonly used in DIY electronics projects for displaying sensor
data, messages, and menu interfaces.
Home Automation: It can be integrated into home automation systems for displaying status information and
control interfaces.
Weather Stations: LCD displays are often used in weather stations to show weather data such as temperature,
humidity, and atmospheric pressure.
Educational Purposes: LCD displays are popular in educational settings for teaching electronics and programming
concepts due to their simplicity and versatility.
7) Voltage Regulator ( 7805 ) :-
Voltage sources in a circuit may have fluctuations resulting in not providing fixed voltage outputs.
A voltage regulator IC maintains the output voltage at a constant value. 7805 Voltage Regulator, a
member of the 78xx series of fixed linear voltage regulators used to maintain such fluctuations, is
a popular voltage regulator integrated circuit (IC).
The 78xx indicates the output voltage it provides. 7805 IC provides +5 volts regulated power
supply with provisions to add a heat sink.
CODE :-
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C dis(0x27, 16, 2);
void setup() {
Serial.begin(9600);
dis.init();
dis.backlight();
dis.clear();
pinMode(2, OUTPUT);
digitalWrite(2, HIGH);
delay(1000);
dis.setCursor(0, 0);
dis.print("IRRIGATION");
dis.setCursor(0, 1);
dis.print("SYSTEM IS ON ");
for (int a = 12; a <= 15; a++) {
dis.setCursor(a, 1);
dis.print(".");
delay(1500);
}
dis.clear();}
void loop() {
int value = analogRead(A0);
Serial.println(value);
if (value > 950) {
digitalWrite(2, LOW);
dis.setCursor(0, 0);
dis.print("MOTOR IS ON ");
} else {
digitalWrite(2, HIGH);
dis.setCursor(0, 0);
dis.print("MOTOR IS OFF");
}
→ First, the I2C library is included and creates the object for this library. It includes the I2C address
and the LCD height and width.
#include <LiquidCrystal_I2C.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C dis(0x27,
LiquidCrystal_I2C dis(0x27, 16,
16, 2);
2);
→ In the setup function, the LCD is started and the relay module connected pin set as output. Also
printed on the LCD as “IRRIGATION SYSTEM IS ON”.
void setup() {
Serial.begin(9600);
dis.init();
dis.backlight();
dis.clear();
pinMode(2, OUTPUT);
digitalWrite(2, HIGH);
delay(1000);
dis.setCursor(0, 0);
dis.print(“IRRIGATION”);
dis.setCursor(0, 1);
dis.print(“SYSTEM IS ON “);
for (int a = 12; a <= 15; a++)
{
dis.setCursor(a, 1);
dis.print(“.”);
delay(1500);
}
dis.clear();
}
→ In the loop function, the sensor values are taken and inserted into the variable named “value”.
Afterward, if these values are less than 300, they are printed as “HIGH” on the LCD, “MID”
between 300 and 950, and “LOW” above 950. Also. If the value is greater than 950, the relay
module is activated.
void loop() {
int value = analogRead(A0);
Serial.println(value);
if (value > 950) {
digitalWrite(2, LOW);
dis.setCursor(0, 0);
dis.print(“MOTOR IS ON “);
} else {
digitalWrite(2, HIGH);
dis.setCursor(0, 0);
dis.print(“MOTOR IS OFF”);
}
…
MOUNTING THE ALL COMPONENT‘S IN PCB BOARD
Submitted By :-
Harikishan ( 252201154)
Himanshu (252201155)
Vivek (252201172)
{ ECE-B(B3) }