Sie sind auf Seite 1von 24

Smart irrigation system

↠This project is based on the AEIOU heuristic framework of Design Engineering

Approach.

↠Design for Performance, Safety and Reliability is ensured in terms of

segregation of the low voltage and the high voltage parts of the circuit.

↠Design for Manufacturability and Assembly is ensured in terms of compact

sensors that can be installed within the fields.

↠Design for Aesthetics and Ergonomics is achieved in terms of remote access

by farmers and seasonal and environmental based access to irrigation.

↠Design for cost and Environment is addressed by correct usage of water, that

has now become a prized Natural Resource.

↠The system can be interfaced via Bluetooth Module using MIT App.

Cost of the Project: ₹1593/-

List of Components Used In Smart Irrigation


System

Component Name Component Value Quantity


Arduino UNO 1

Bluetooth Module HC-05-09 1

Temperature and Humidity DHT-11 1


Sensor

Soil moisture sensor FC-28 1

Peristaltic pump AB11 4

LEDs Red, Green and Yellow 3

Miscellaneous

Adaptor 1 A, 6 V 1

Connecting Jumpers

Breadboard 1

1. Sensors

(a) Soil moisture sensor

The soil moisture sensor is used to measure the volumetric water content of soil.

It is used to monitor soil moisture content to control irrigation in greenhouses. A


moisture sensor is used to sense the level of moisture content present in

irrigation field. It has a level detection module in which we can set a reference

value.

(b) Temperature and Humidity Sensor

The temperature and humidity sensor is necessary to reduce the watering

frequency. That is when the weather gets cooler, less water is needed whereas

vice versa in the other case.

2. Relay Module

The relay module is an electrically operated switch that allows you to turn ON or

OFF a circuit using voltage and/or current much higher than a Microcontroller

could handle. There is no connection between the low voltage circuit operated by

the Microcontroller and the high power circuit. The relay protects each circuit

from the other. Each channel in the module has three connections named NC,

COM, and NO. Depending on the input signal trigger mode, the jumper cap can

be placed at high level effective mode which ‘closes’ the normally open (NO)

switch at high level input and at low level effective mode which operates the

same but at low level input.

3. Peristaltic Pump:A peristaltic pump is a type of positive displacement


pump used for pumping a variety of fluids. The fluid is contained within a flexible
tube fitted inside a circular pump casing. It is reputed to pump water from a depth
of about 31 feet.

Block Diagram

The Model works as follows:

The results of the moisture, temperature and threshold level can be calculated

through the sensors used in the project. Analysis of soil parameters can be done

and the needed nutrients can be calculated for the soil. The need of water supply
of the soil can be calculated and hence appropriate irrigation is done through

smart techniques.

Featured experimental result and analysis:

System configuration:

↠This module is used to configure all hardware devices. Soil moisture sensor,

Temperature and Humidity sensor, Pump all are connected to major component

arduino with Bluetooth connectivity.

Soil moisture and temperature sensing:

↠In this module we analyze the moisture content in the soil and it’s temperature.

According to the sensor values further decision are taken.

Send the results on Arduino serial monitor:

Once the values of temperature and moisture are generated on serial monitor.

The threshold can also be notified on serial monitor itself. And if result of

Moisture, Temperature and Humidity goes below the threshold value the pump

will automatically turn ON and if the level of Moisture, Temperature and Humidity

increase upto threshold level of field then pump will automatically turn OFF.

Schematic
In schematic, Red Wire- Vcc and Black Wire- Ground.

External supply is given to Arduino through 6V-1A Adaptor.

In place of motor, connect 6V peristaltic pump.

Actual Photograph
Temperature, Humidity and Moisture Requirements of Major crops are listed:

Sr. No. Crop Name Temperature Moisture (%) Humidity(%)

1 Rice 21-37 20-25 60-80

2 Wheat 10-15 14-20 60-70

3 Bajra 20-38 20-25 55-70

A theoretic study of the parameters considered in our project is summarized by

study of different literature materials and papers published.


References for the same is obtained from:

● Link 1
● Link 2
● Link 3

Construction & Testing

Fig.1: Circuit interface with Arduino with sensors for Smart Irrigation System
Fig. 2: Serial Monitor for Smart Irrigation System
Fig. 3: Android
Application for Smart Irrigation System
Fig. 4:
Application Icon
Fig. 5: Android Application with the result

The readings are


DHT11—-OK

HUMIDITY: 13.0%

TEMPERATURE: 31.0%

MOISTURE: 52%

MOISTURE IS HIGH

Flowchart
Flowchart for Smart Irrigation System

App Blocks: (MIT App Inventor)


Software Used

Arduino IDE
Code Skeleton

#define Temperature and Humidity sensor A0 // Analog pin A0 of Arduino Uno

int sensor_pin = A0;

int output_value ;

int ledPin1 = 13;

int ledPin2 = 12;

int ledPin3 = 11;

int pos = A1; // Define motor position

————————————————————————————————————

——————————

#define Sensor_PIN No.

void setup()

{
(ledPin1, OUTPUT); (ledPin2, OUTPUT); (ledPin3, OUTPUT); // Define the

pinModes

pinMode(motorPin, OUTPUT); // set A1 to an output so we can use it to turn on

the transistor

Serial.begin(9600); // Baud Rate

Serial.println(“Reading From the Sensor …”);

————————————————————————————————————

—————————-

void loop()

// READ DATA

Serial.print(“Define Sensor, \t”);

int chk = Read the Output of Sensor;


switch (chk)

case SensorNameLIB_OK:

Serial.print(“OK,\t”);

break;

case SensorNameLIB_ERROR_CHECKSUM:

Serial.print(“Checksum error,\t”);

break;

case SensorNameLIB_ERROR_TIMEOUT:

Serial.print(“Time out error,\t”);

break;

default:

Serial.print(“Unknown error,\t”);
break;

————————————————————————————————————

——————————

// DISPLAY DATA

Serial.print(“Humidity:”);

Serial.print(sensorname.humidity, 1);

Serial.print(“%”);

Serial.println(“,\t”);

Serial.print(“Temperature:\t”);

Serial.print(sensorname.temperature, 1);

Serial.println(“`C”);

value= analogRead(sensor_pin);
value = map(value,550,0,0,100);

Serial.print(“Mositure : “);

Serial.print(output_value);

Serial.println(“%”);

if (Humidity value>10)

Sensorinput gets HIGH; //green LED ON

else {

Sensorinput gets LOW; //Digital Output

if (Sensor value>31)

{
Sensorinput gets HIGH; // Digital output

Serial.println(“Tempearture is HIGH”); //yellow LED ON

else {

Sensorinput gets Low;

if (value>50)

Sensorinput gets HIGH;

Serial.println(“Moisture is high”);// RED

else {

Sensorinput gets LOW;


}

if (output_value<10) { Serial.println(“output value is low”); Sensorinput gets HIGH;

// Digital output delay(x); Sensorinput gets LOW; // Digital output delay(x); } else {

Sensorinput gets HIGH; //Digital output } if(Serial.available()>0)

char data = Serial.read();

if (data == ‘a’)

Motorinp pin gets HIGH; //Digital output

else if(data == ‘b’)

Motorinp pin gets LOW; //Digital output

}
}

delay(x);

//

// END OF FILE

//———————————————————————————————————

——————————

Das könnte Ihnen auch gefallen