Auto Irrigation Using Arduino: Bachelor of Engineering
Auto Irrigation Using Arduino: Bachelor of Engineering
Auto Irrigation Using Arduino: Bachelor of Engineering
Bachelor of Engineering
By
Supervisor :
Asst. Prof. BANDANAWAZ M. KOTIYAL
MUMBAI UNIVERSITY
2015-2016
Project Report Approval for B.E
Examiners:
1._______________________________.
2._______________________________.
Supervisor(s):
____________________________________
Asst. Prof. BANDANAWAZ M. KOTIYAL
H.O.D (EXTC):
___________________________
Asst. Prof. MUJIB A. TAMBOLI
Date:
Place:
DECLARATION
We declare that this written submission represents our ideas in our own words and where other sides
or words have been included, we have adequately cited and referenced the original sources. We also
declare that we have adhered to all principles of academic honesty and integrity and have not
misrepresented or fabricated or falsified any idea/data/fact/source in my submission. We understand
that any violation of the above will be cause for disciplinary action by the Institute and can also
evoke penal action from the sources which have thus not been properly cited or from whom proper
permission has not been taken when needed.
___________________________________
SHAIKH SHEROZ MOHD HASAN
12ET55
Date:
Place:
ACKNOWLEDGEMENT
The project work is the fruit of many hardworking hands. It‟s those small inputs from Asst. Prof. ZARRAR
KHAN and Asst. Prof. AFZAL SHAIKH as well as some different people that have lent a helping to our
project.
I take this opportunity to express my profound gratitude and deep regards to my guide Asst. Prof.
Bandanawaz M. Kotiyal for his exemplary guidance, monitoring and constant encouragement throughout
the course of this project work.
I also take this opportunity to express a deep sense of gratitude to Asst.Prof. MUJIB A.TAMBOLI, HOD of
E.X.T.C. Deptartment for his cordial support, valuable information and guidance, which helped me in
completing this task through various stages.
I am obliged to staff members of AIKTC, for the valuable information provided by them in their respective
fields. I am grateful for their cooperation during the period of my project work.
ABSTRACT
India is the agriculture based country. Our ancient people completely depended on
the agricultural harvesting. Agriculture is a source of livelihood of majority Indians and
has great impact on the economy of the country. In dry areas or in case of inadequate
rainfall, irrigation becomes difficult. So, it needs to be automated for proper yield and
handled remotely for farmer safety. Increasing energy costs and decreasing water
supplies point out the need for better water management. Irrigation management is a
complex decision making process to determine when and how much water to apply to a
growing crop to meet specific management objectives. If the farmer is far From the
agricultural land he will not be noticed of current conditions. So, efficient water
management plays an important role in the irrigated agricultural cropping systems.
A low cost alternative solution for efficient water management currently in use is
drip irrigation systems that consist of an automated controller to turn on & off the control
values, which in turn helps the farmers by managing the water supply to the crop fields
and further maintains the moisture levels of soil that helps in better crop production. This
project probes into the design of the automated irrigation system based on Arduino. This
Embedded project is to design and develop a low cost feature which is based on
embedded platform for water irrigation system. This project uses temperature and soil
moisture sensors to detect the water quantity present in agriculture. The project uses
Arduino micro controller which is controller to process the information.
The aim of the implementation was to demonstrate that the automatic irrigation
can be used to reduce water use.
TABLE OF CONTENT
DECLARATION
ACKNOWLEDGEMENT VI
ABSTRACT V
TABLE OF CONTENTS VI
1. INTRODUCTION 1
2. OBJECTIVE OF PROJECT 2
3. LITERATURE SURVEY 3
4. PROBLEM STATEMENT 4
5. SCOPE OF PROJECT 5
6. ADOPTED METHODOLOGY 6
9. REFERENCES 37
Auto Irrigation Using Arduino 2016
1. Introduction
By using the concept of modern irrigation system a farmer can save water up to
50%. This concept depends on two irrigation methods those are: conventional irrigation
methods like overhead sprinklers, flood type feeding systems i.e. wet the lower leaves
and stem of the plants. The area between the crop rows become dry as the large amount
of water is consumed by the flood type methods, in which case the farmer depends only
on the incidental rainfalls. The crops are been infected by the leaf mold fungi as the soil
surface often stays wet and is saturated after irrigation is completed.
Overcoming these drawbacks new techniques are been adopted in the irrigation
techniques, through which small amounts of water applies to the parts of root zone of a
plant. The plant soil moisture stress is prevented by providing required amount of water
resources frequently or often daily by which the moisture condition of the soil will retain
well. The diagram below shows the entire concept of the modern irrigation system. The
traditional techniques like sprinkler or surface irrigation requires / uses nearly half of
water sources. Even more precise amounts of water can be supplied for plants. As far as
the foliage is dry the plant damage due to disease and insects will be reduced, which
further reduces the operating cost.
The dry rows between plants will leads to continuous federations during the
irrigation process. Fertilizers can be applied through this type of system, and the cost
required for will also reduces. The erosion of soil and wind is much reduced by the recent
techniques when compared with overhead sprinkler systems. The soil characteristics will
define the form of the dripping nature in the root zone of a plant which receives moisture.
As the method of dripping will reduce huge water losses it became a popular
method by reducing the labor cost and increasing the yields. When the components are
activated, all the components will read and gives the output signal to the controller, and
the information will be displayed to the user (farmer). The sensor readings are analog in
nature so the ADC pin in the controller will convert the analog signals into digital format.
Then the controller will access information and when the motors are turned On/Off it will
be displayed on the LCD Panel.
-1-
Auto Irrigation Using Arduino 2016
2. Objective of Project
There is an urgent need for a system that makes the agricultural process easier and
burden free from the farmer‟s side. With the recent advancement of technology it has
become necessary to increase the annual crop production output entirely agro-centric
economy.
The ability to conserve the natural resources as well as giving a splendid boost to
the production of the crops is one of the main aims of incorporating such technology into
the agricultural domain of the country.
To save farmers effort, water and time. Irrigation management is a complex
decision making process to determine when and how much water to apply to a growing
crop to meet specific management objectives.
If the farmer is far from the agricultural land he will not be noticed of current
conditions. So, efficient water management plays an important role in the Irrigated
agricultural cropping systems.
-2-
Auto Irrigation Using Arduino 2016
3. Literature Survey
It is a simple project more useful in watering plants automatically without any human
interference. We know that people do not pour the water on to the plants in their gardens when
they go to vacation or often forget to water plants. As a result, there is a chance to get the plants
damaged. This project is an excellent solution for such kind of problems. Many irrigation
systems exits such as,
1. Monitoring of rice crops using GPRS and wireless sensors for efficient use of water and
Electricity.
2. Wireless Sensor Based Remote Monitoring System for Agriculture Using ZigBee and
GPS.
3. Design of Embedded System for the Automation of Drip Irrigation.
4. A Survey of Automated GSM Based Irrigation System.
5. Wireless Sensor Networks Agriculture: For Potato Farming.
6. Design and Implementation of GSM based Irrigation System Using ARM7.
7. Automated Irrigation System Using a Wireless Sensor Network and GPRS Module.
8. Automated Irrigation System Using Solar Power.
9. Review for ARM based agriculture field monitoring system.
10. Automatic Irrigation Control by using wireless sensor networks.
11. Remote Sensing and Control of an Irrigation System Using a Distributed Wireless Sensor
Network.
-3-
Auto Irrigation Using Arduino 2016
4. Problem Statement
-4-
Auto Irrigation Using Arduino 2016
5. Scope of project
Day by day, the field of electronics is blooming and have caused great impact on
and has a huge scope for future development. The project can be extended to greenhouses
where manual supervision is far and few in between. The principle can be extended to
create fully automated gardens and farmlands. Combined with the principle of rain water
harvesting, it could lead to huge water savings if applied in the right manner. In
agricultural lands with severe shortage of rainfall, this model can be successfully applied
farmer can increase his profit by solving different problems that are faced by the farmer
in his routine life. And also to involve Arduino – Controller with a video capturing by
using an MMS facility about the crop position and at the same time sending video to the
farmer.
-5-
Auto Irrigation Using Arduino 2016
6. Adopted Methodology
PROJECT PLANNING
a. Analysis of the exiting situation and the exact nature of problem faced through
discussions with the project guide.
c. With the help of the guide the specifications of the program were decided and then
implemented in the project.
d. Use of Accelerometer sensor to interface the computer and embedded system meant for
process and control.
-6-
Auto Irrigation Using Arduino 2016
Above is the manner in which we are going to implement the circuit. The first part
of the block diagram are different sensors and the second part is an LCD Panel and
motors for supplying water. The major hardware modules which are needed: Arduino
processor, motor, different sensors and an LCD Panel .
-7-
Auto Irrigation Using Arduino 2016
COMPONENTS:
Features
1. Calibrated Directly in Celsius (Centigrade)
2. Linear + 10-mV/°C Scale Factor
3. 0.5°C Ensured Accuracy (at 25°C)
4. Rated for Full −55°C to 150°C Range
5. Suitable for Remote Applications
6. Low-Cost Due to Wafer-Level Trimming
7. Operates from 4 V to 30 V
8. Less than 60-μA Current Drain
9. Low Self-Heating, 0.08°C in Still Air
10. Non-Linearity Only ±¼°C Typical
11. Low-Impedance Output, 0.1 Ω for 1-mA Load
-8-
Auto Irrigation Using Arduino 2016
- 10 -
Auto Irrigation Using Arduino 2016
- 11 -
Auto Irrigation Using Arduino 2016
different components like minerals, air and water), the value of the permittivity is made
up by the relative contribution of each of the components. Since the dielectric constant of
liquid water is much larger than that of the other soil constituents, the total permittivity of
the soil or bulk permittivity is mainly governed by the presence of liquid water. The
dielectric methods use empirical (calibrated) relationships between volumetric water
content and the sensor output signal (time, frequency, impedance, wave phase). These
techniques are becoming widely adopted because they have good response time (almost
instantaneous measurements), do not require maintenance, and can provide continuous
readings through automation. Although these sensors are based on the dielectric principle
the various types available (frequency domain reflectometry-FDR, capacitance, time
domain transmission-TDT, amplitude domain reflectometry-ADR, time domain
reflectometry-TDR, and phase transmission) present important differences in terms of
calibration requirements, accuracy, installation and maintenance requirements and cost.
Soil moisture is an important component in the atmospheric water cycle, both on a
small agricultural scale and in large-scale modelling of land/atmosphere interaction.
Vegetation and crops always depend more on the moisture available at root level than on
precipitation occurrence. Water budgeting for irrigation planning, as well as the actual
scheduling of irrigation action, requires local soil moisture information. Knowledge of
the degree of soil wetness helps to forecast the risk of flash floods, or the occurrence of
fog.
Soil water content is an expression of the mass or volume of water in the soil,
while the soil water potential is an expression of the soil water energy status. The relation
between content and potential is not universal and depends on the characteristics of the
local soil, such as soil density and soil texture.
The basic technique for measuring soil water content is the gravimetric method.
Because this method is based on direct measurements, it is the standard with which all
other methods are compared. Unfortunately, gravimetric sampling is destructive,
rendering repeat measurements on the same soil sample impossible. Because of the
difficulties of accurately measuring dry soil and water volumes, volumetric water
contents are not usually determined directly.
- 12 -
Auto Irrigation Using Arduino 2016
Measuring soil moisture is very important in agriculture to help farmer for
managing the irrigation system. Soil moisture sensor is one who solves this. This sensor
measures the content of water. Soil moisture sensor uses the capacitance to measure the
water content of soil. It is easy to use this sensor. Simply insert this rugged sensor into
the soil to be tested, and the volumetric water content of the soil is reported in percent.
Soil moisture sensors measure the volumetric water content in soil.
Soil moisture sensors typically refer to sensors that estimate volumetric water
content. Another class of sensors measure another property of moisture in soils
called water potential; these sensors are usually referred to as soil water potential sensors
and include tensiometers and gypsum blocks.
- 13 -
Auto Irrigation Using Arduino 2016
The Arduino Uno can be powered via the USB connection or with an external
power supply. The power source is selected automatically. External (non-USB) power
can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be
connected by plugging a 2.1mm center-positive plug into the board's power jack. Leads
from a battery can be inserted in the Gnd and Vin pin headers of the POWER connector.
The board can operate on an external supply of 6 to 20 volts. If supplied with less than
7V, however, the 5V pin may supply less than five volts and the board may be unstable.
If using more than 12V, the voltage regulator may overheat and damage the board. The
recommended range is 7 to 12 volts.
- 14 -
Auto Irrigation Using Arduino 2016
Arduino
- 15 -
Auto Irrigation Using Arduino 2016
- 16 -
Auto Irrigation Using Arduino 2016
5V (4) & 3.3V (5): As you might guess, the 5V pin supplies 5 volts of power, and
the 3.3V pin supplies 3.3 volts of power. Most of the simple components used with the
Arduino run happily off of 5 or 3.3 volts.
Analog (6): The area of pins under the „Analog In‟ label (A0 through A5 on the
UNO) are Analog In pins. These pins can read the signal from an analog sensor (like a
temperature sensor) and convert it into a digital value that we can read.
Digital (7): Across from the analog pins are the digital pins (0 through 13 on the
UNO). These pins can be used for both digital input (like telling if a button is pushed)
and digital output (like powering an LED).
PWM (8): You may have noticed the tilde (~) next to some of the digital pins (3,
5, 6, 9, 10, and 11 on the UNO). These pins act as normal digital pins, but can also be
used for something called Pulse-Width Modulation (PWM). We have a tutorial on PWM,
but for now, think of these pins as being able to simulate analog output (like fading an
LED in and out).
AREF (9): Stands for Analog Reference. Most of the time you can leave this pin
alone. It is sometimes used to set an external reference voltage (between 0 and 5 Volts) as
the upper limit for the analog input pins.
- 17 -
Auto Irrigation Using Arduino 2016
4.7 TX RX LEDs
TX is short for transmit, RX is short for receive. These markings appear quite a
bit in electronics to indicate the pins responsible for serial communication. In our case,
there are two places on the Arduino UNO where TX and RX appear – once by digital
pins 0 and 1, and a second time next to the TX and RX indicator LEDs (12). These LEDs
will give us some nice visual indications whenever our Arduino is receiving or
transmitting data (like when we‟re loading a new program onto the board).
4.8 Main IC
The black thing with all the metal legs is an IC, or Integrated Circuit (13). Think
of it as the brains of our Arduino. The main IC on the Arduino is slightly different from
board type to board type, but is usually from the A Tmega line of IC‟s from the ATMEL
company. This can be important, as you may need to know the IC type (along with your
board type) before loading up a new program from the Arduino software. This
information can usually be found in writing on the top side of the IC. If you want to know
more about the difference between various IC‟s, reading the datasheets is often a good
idea.
- 18 -
Auto Irrigation Using Arduino 2016
V. LCD Panel :
- 19 -
Auto Irrigation Using Arduino 2016
layer are almost completely untwisted and the polarization of the incident light is not
rotated as it passes through the liquid crystal layer. This light will then be mainly
polarized perpendicular to the second filter, and thus be blocked and the pixel will appear
black. By controlling the voltage applied across the liquid crystal layer in each pixel, light
can be allowed to pass through in varying amounts thus constituting different levels of
gray.
As most of present-day LCDs used in television sets, monitors and smart phones
have high-resolution matrix arrays of pixels to display arbitrary images using
backlighting with a dark background when no image is displayed, different arrangements
are used. For this purpose, TN LCDs are operated between parallel polarizer‟s, whereas
IPS LCDs feature crossed polarizer‟s. In many applications IPS LCDs have replaced TN
LCDs, in particular in smart phones such as iPhones.
Both the liquid crystal material and the alignment layer material contain ionic
compounds. If an electric field of one particular polarity is applied for a long period of
time, this ionic material is attracted to the surfaces and degrades the device performance.
This is avoided either by applying an alternating current or by reversing the polarity of
the electric field as the device is addressed (the response of the liquid crystal layer is
identical, regardless of the polarity of the applied field).
- 20 -
Auto Irrigation Using Arduino 2016
- 21 -
Auto Irrigation Using Arduino 2016
The water pump is used to artificially supply water for a particular task. It can be
electronically controlled by interfacing it to a microcontroller. It can be triggered
ON/OFF by sending signals as required. The process of artificially supplying water is
known as pumping. There are many varieties of water pumps used. This project employs
the use of a small water pump which is connected to a H-Bridge.
The pumping of water is a basic and practical technique, far more practical than
scooping it up with one's hands or lifting it in a hand-held bucket. This is true whether the
water is drawn from a fresh source, moved to a needed location, purified, or used for
irrigation, washing, or sewage treatment, or for evacuating water from an undesirable
location. Regardless of the outcome, the energy required to pump water is an extremely
demanding component of water consumption. All other processes depend or benefit
either from water descending from a higher elevation or some pressurized plumbing
system.
- 22 -
Auto Irrigation Using Arduino 2016
Specifications:
Operating range: 3.0 - 12.0 Volts
Nominal Voltage: 12
No Load Speed: 5600 rpm
No Load Current: 0.022 A
Max. Efficiency Speed: 4906 rpm
Max. Efficiency Current: 0.16 -0.23 A
Max. Efficiency Torque: 21.1 g.cm
Stall Torque: 170 g.cm
Stall Current: 1.1 - 1.5 A
Body Diameter: 24.4 mm
Body Length: 32.5 mm
Shaft Diameter: 2 mm
Shaft Length: 10.5 mm
Weight: 50 grams
Contacts: 2mm x 3.9mm
End Play: 0.05 ~ 0.45mm
Operating Temperature: -10ºC ~ 60ºC
- 23 -
Auto Irrigation Using Arduino 2016
The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial
port, and interrupt system to continue functioning. The Power-down mode saves the
RAM contents but freezes the oscillator, disabling all other chip functions until the next
interrupt or hardware reset.The device is manufactured using Atmel‟s high density non-
- 24 -
Auto Irrigation Using Arduino 2016
volatile memory technology. The On-chip ISP Flash allows the program memory to be
reprogrammed In-System through an SPI serial interface, by a conventional non-volatile
memory programmer, or by an On-chip Boot program running on the AVR core. The
Boot program can use any interface to download the application program in the
Application Flash memory. Software in the Boot Flash section will continue to run while
the Application Flash section is updated, providing true Read-While-Write operation. By
combining an 8-bit RISC CPU with In-System Self-Programmable Flash on a monolithic
chip, the Atmel ATmega48PA/88PA/168PA/328P is a powerful microcontroller that
provides a highly flexible and cost effective solution to many embedded control
applications. The Boot program can use any interface to download the application
program in the Application Flash memory. This allows very fast start-up combined with
low power consumption.
Even though there are separate addressing schemes and optimized opcodes for
register file and I/O register access, all can still be addressed and manipulated as if they
were in SRAM. In the ATMEGA variant, the working register file is not mapped into the
data address space; as such, it is not possible to treat any of the ATMEGA's working
registers as though they were SRAM.
- 25 -
Auto Irrigation Using Arduino 2016
- 26 -
Auto Irrigation Using Arduino 2016
- 27 -
Auto Irrigation Using Arduino 2016
6.3 MAJOR SOFTWARE REQUIRED
The open-source Arduino Software (IDE) makes it easy to write code and upload
it to the board. It runs on Windows, Mac OS X, and Linux. The environment is written in
Java and based on Processing and other open-source software. This software can be used
with any Arduino board. For latest software refer to link.
https://www.arduino.cc/en/Main/Software
Arduino was born at the Ivrea Interaction Design Institute as an easy tool for fast
prototyping, aimed at students with or without a background in electronics and
programming.
Arduino is an open-source prototyping platform based on easy-to-use hardware and
software.
Arduino boards are able to read inputs - light on a sensor, a finger on a button, or a
message - and turn it into an output - activating a motor, turning on an LED, publishing
something online and many more.
You can tell your board what to do by sending a set of instructions to the microcontroller
on the board.
To do so you use the Arduino programming language (based on Wiring), and the Arduino
Software (IDE), based on Processing.
Cross-platform - The Arduino Software (IDE) runs on Windows, Macintosh OSX, and
Linux operating systems. Most microcontroller systems are limited
to Windows.
Simple, clear programming environment - The Arduino Software (IDE) is easy-to-use
for beginners, yet flexible enough for advanced users to take advantage of as well.
- 28 -
Auto Irrigation Using Arduino 2016
Open source and extensible hardware - The plans of the Arduino boards are published
under a Creative Commons license, so experienced circuit designers can make their own
version of the module, extending it and improving it.
Open source and extensible software - The Arduino software is published as open
source tool and the language can be expanded through C++ libraries.
- 29 -
Auto Irrigation Using Arduino 2016
Step 4 : Install the drivers:
Installing drivers for the Arduino Uno or Arduino Mega 2560 with Windows7,
Vista, or XP
- 30 -
Auto Irrigation Using Arduino 2016
Step 6: Open the blink example
Open the LED blink example sketch: File > Open > Temp_and_humid.ino
- 31 -
Auto Irrigation Using Arduino 2016
the entry that disappears should be the Arduino board. Reconnect the board and select
that serial port.
- 32 -
Auto Irrigation Using Arduino 2016
III. Embedded C
Embedded C is a set of language extensions for the C Programming language. C
is often used for system programming, including implementing applications. Embedded
C uses most of the syntax of standard C, e.g., main() function, variable definition, data
type declaration, conditional statements (if, switch, case), loops (while, for), functions,
arrays and strings, structures etc.
It is small and simpler to learn, understand, program and debug. It is efficient &
supports access to I/O and provides ease of management of large embedded projects.
The compiler derives its name from the way it works, looking at the entire piece
of source code and collecting and reorganizing the instruction. See there is a bit little
difference between compiler and an interpreter. Interpreter just interprets whole program
at a time while compiler analyzes and execute each line of source code in succession,
without looking at the entire program.
- 33 -
Auto Irrigation Using Arduino 2016
IV. Advantage of Embedded C
- 34 -
Auto Irrigation Using Arduino 2016
7. Advantages
1) Relatively simple to design and install.
2) It is safest system and no manpower is required.
3) The system helps to farmer or gardener to work when irrigation is taking place, as only the
area between the plants are wet.
3) Reduce soil erosion and nutrient leaching.
4) The system need smaller water sources, as it consumes less than half of the water.
5) Fertilizers can also be provided by using the system.
6) PH content of the soil is maintained Through the suggestions which helps for healthy plant
growth.
- 35 -
Auto Irrigation Using Arduino 2016
8. Conclusion
The primary applications for this project are for farmers and gardeners who do not
have enough time to water their crops/plants. It also covers those farmers who are
wasteful of water during irrigation.
As water supplies become scarce and polluted, there is a need to irrigate more
efficiently in order to minimize water use and chemical leaching. Recent advances in soil
water sensing make the commercial use of this technology possible to automate irrigation
management for vegetable production. However, research indicates that different sensors
types perform under all conditions with no negative impact on crop yields with
reductions in water use range as high as 70% compared to traditional practices.
- 36 -
Auto Irrigation Using Arduino 2016
Websites:
http://web.science.mq.edu.au/
http://en.wikipedia.org/wiki/
http://www.journals.elsevier.com/
http://pages.cs.wisc.edu/
http://cs.stanford.edu/projects/
http://www.Drip Irrigation Images.com
http://gardenbot.org/howTo/soilMoisture/
Methods. American Society of Agronomy, Madison, Wisconsin, United States, 1188 pp.
- 37 -