IoT based Smart Irrigation for Agricultural Fields
Pradeep K V1*, Balasundaram A2*, Rabindra Kumar Singh3
1Assistant Professor, School of Computer Science and Engineering, Vellore Institute of Technology (VIT), Chennai, India
2Assistant Professor, School of Computer Science and Engineering, Centre for Cyber Physical Systems, Vellore Institute of Technology (VIT), Chennai, India.
3Associate Professor, School of Computer Science and Engineering, Vellore Institute of Technology (VIT), Chennai, India
*[email protected], [email protected]
India is the second-largest irrigated country, but only one-third of the area is irrigated.
It is due to uncertain rainfall and lack of water. Most of the areas need canals to be built for irrigation without being depending on the rainfall. The utilization of water is very important for irrigation.The implementation of IoT agriculture starts with intelligent irrigation for the majority of fields. Optimizing the water schedule and quantity of water helps us to save water, money, and have the best crop on the field. Sensor-based IoT technology gathers soil moisture, temperature, humidity data, and transmits this information to farm irrigation systems from sensors. A platform responds to these signals and the drip irrigation switches on as soon as there is insufficient water in the soil. Our paper is designed to overcome the problem of irrigation by reducing the usage of water while watering the plants. The proposed system uses sensors like a soil moisture sensor, temperature, and humidity sensor. The microcontroller is used to send data to Blynk and Thing Speak, Blynk application is used to monitor the data, and Thing Speak cloud is used to store the data. This system provides a feasible monitoring platform and automates the irrigation process. This leads to a transition from traditional farming to modern farming. Over 74 years since independence, India has made immense progress towards agriculture.
Keywords: IoT, Blynk, Thing Speak, Irrigation, Automation
Indian agriculture is diverse ranging from traditional farming practices to utilizing modern agricultural technologies.At present most of the farmers are using a labor-intensive irrigation method, where labor is required for watering the plants and it takes a lot of time to irrigate the whole land. They irrigate the land at regular intervals throughout the crop period.Technology in agriculture is growing day by day and showing usgood results. IoT plays a major role in the evolution of agriculture towards technology. The main objective of this paper is to automate the process of irrigation using IoT. Mobile devices are used to monitor the sensor data from the microcontroller, this data can be accessed from anywhere in the world with the help of the internet. Using IoT in agriculture helps to automate the whole process and save a lot of time and energy as well. The main reason to automate the process of irrigation is to save water by giving the right amount of water for plants using the sensor's data.A significant problem for agriculture nowadays is water shortage. This system enables farmers to efficiently irrigate the fields with an automatic irrigation system dependent on soil humidity, temperature, and humidity.The IoT is a technology where it is possible to use a mobile device to control the system's functioning. With the support of IoT, interconnecting, and
communicating with objects mounted at various locations that are remote from users would not be a problem. IoT is a type of network technology that senses data from various sensors and makes it possible to link to the Internet to exchange information. IoT may also be used to change the device's status.
A communication system to collect data from the sensors and to be relayed to the user's device will also be included in the central processing unit which is a microcontroller. The information processed by the central module is translated into meaningful information. To overcome the excessive flow of water into the fields, the proposed system has been planned.
Using sensors temperature, humidity, and soil moisture readings are continuously monitored and sent these values using Rest API to the Thing Speak cloud platform. The mobile application continuously collects the data from themicrocontroller that has attached sensors.
The relay that is attached to the microcontroller regulates the motor once the soil moisture value exceeds the threshold limit. For both Android and IOS users, this application is viable and available. This application includes motor status, values of humidity, temperature, and humidity. The application shows the pump's current status. When the level is reached by soil moisture, the mobile application receives a notification.
The research work is going on how to implement IOT in the agricultural field. Here are some research works done on the irrigation systems in past few years. In  The proposed system uses master and slave type where master includes Raspberry Pi, Relay, and Motor Pump. Slave includes Arduino, Soil Moisture, and Temperature sensor. Here Zigbee acts as a medium to connect Master and Slave. The system read the soil moisture value and send it to Raspberry Pi via the Zigbee module. Raspberry Pi decides the condition of the relay-based on soil condition whether it is wet or dry.
In  The proposed system sends an email to the user using Raspberry Pi to run the drip system when irrigation is required and via Zigbee medium it also sends to Arduino and it sends to relay to control the solenoid valve. An ultrasound distance sensor is used to check the water storage in the water tank. In  The proposed system uses Raspberry Pi to read soil moisture level and send values to a mobile application called Blue Term. Here Blue term is used to send instructions to Raspberry Pi to control the motor.
In  The proposed system uses Raspberry Pi to get values from soil moisture, temperature, and humidity sensors and compute the values. A camera fixed to Raspberry Pi is used to look at the field area. When the water level reduces, Raspberry Pi sends signals to the relay to turn on/off the motor.In  The proposed system uses Arduino Uno ATMEGA328 to connect with sensors like soil moisture and Raspberry Pi is used to process the data and send message to the registered mobile number. Raspberry Pi is also used to signal the relay to operate the motor for irrigation.
In  The proposed system using Arduino Uno ATMEGA 328P to connect with soil moisture, temperature, and humidity, PH sensors. It also connects with a solenoid valve to release water whenever required for the irrigation. Data is displayed using an LCD display connected to it. In  The proposed system uses Arduino to connect with water flow, soil moisture, PH, and Temperature sensors. Esp8266 Node MCU is used to send data to websites and interact with users. Arduino is used to analyzing the data and alert the user using Node
MCU Esp8266 WIFI built-in microcontroller. This system is connected with an LCD screen to display data.
In  The proposed system uses a MAX232 dual transmitter/receiver to receive and send signals using GSM module connected to it along with microcontroller. Rain gun type of irrigation mechanism is connected to a water pump for irrigation. The microcontroller is used to send signals for the solenoid valve to release water. Whenever the threshold is reached signal is sent to mobile to activate the buzzer.In  The proposed system uses ATMEGA328 microcontroller and connect with soil moisture, temperature, and humidity, water level sensors. Zigbee Transceiver is used to send data to the cloud server. Java wen application is used to store data using MySQL database and connect with Mobile applications.
In  The proposed system uses an AT89S52 microcontroller and MAX232 transceiver to connect with sensors like soil moisture, temperature, and humidity. A light sensor is used to check the light so that oxygen levels are checked. The Ph sensor or ORP is used. The data from all sensors is given via phidgets Interface and operates the motor using a gsm module with a mobile interface. In  The proposed system uses an Arduino Uno microcontroller to acquire data from sensors like soil moisture, temperature, humidity, and light. Kalman filtering is done to the acquired data from sensors. The data from the weather forecasts is taken and compared with the filtered data for decision making. A mobile application is used to manually control the watering system.
In  The proposed system uses more complex sensors and processors like Arm processor, ADC CMOS for address pins for data acquisition, Raspberry camera, and boards and webserver to send data. There is no mobile application or cloud platform for storage and display of data to monitor efficiently. In  The proposed uses Raspberry pi, a gsm module for sending information along with Zigbee technology. Uses an LCD mini screen to display information. No proper application on mobile devices and cloud storage.
In  The proposed system uses an Arduino Uno microcontroller to connect with sensors like soil moisture, temperature, and humidity. The data is displayed using a mobile application. Based on the threshold the relay is controlled using a microcontroller. The system has no data collection using cloud technologies.In  The proposed system uses Raspberry pi and a webserver to send data(unknown). No mobile application or cloud storages to visualize or display data.
In  The proposed system uses Arduino Uno and Node MCU microcontroller to read soil moisture, temperature, and humidity sensor values. The data Ph value is also read. The data is sent to the firebase and stored. The data is analyzed using the Naïve-Bayes classifier algorithm.In  The proposed system uses Arduino Uno and sensors such as Soil Moisture, Temperature, Humidity, Rain detection, and Float sensors. Node MCU is used to transfer the data to the cloud and mobile applications.
In  The proposed system uses Raspberry Pi and Arduino Uno to collect data from Soil Moisture, Temperature, and humidity sensors. The data is collected and sent to raspberry pi to apply the machine learning algorithm KNN is deployed on data.In  The proposed paper focuses on machine learning techniques to predict the soil moisture on the field.
Sensors like Soil moisture, Temperature, Humidity and soil temperature are used to collect data on field. In  This paper shows the trends in IOT agricultural irrigation systems. Like
what are the sensors used over the years and what factors are considered based on the previous research papers published on IoT Agriculture.
The proposed system is used to automate the process of irrigation. Node MCU ESP8266 microcontroller is used to read data from sensors like soil moisture, Temperature, and Humidity. This system continuously gets data from sensors using a microcontroller and connects with the Mobile Applications and the cloud to send data. The data is read by the Node MCU microcontroller and with the help of the WIFI module built in it, it sends the data to Thing Speak cloud. This data can be displayed using the Blynk Mobile Application, which is available in both Android and IOS. Relay is connected with a microcontroller to turn on/off the motor for irrigation automatically whenever the threshold is reached.
Figure 1. Blocks constituting the proposed system
When the threshold is reached, Node MCU sends the notification to the user on the Blynk Application. When the threshold reaches notification is sent to the user to turn on the irrigation system. In addition, when the drip irrigation system is connected to the engine in the field, better irrigation is possible. Drip irrigation is a very efficient irrigation method for crop development, due to the way the water supply enters each plant's root zone.This system is primarily designed to prevent water wastage during the irrigation process and also to decrease the effort to irrigate the entire field.As we use a drip irrigation system, there will be one or two emitters for each plant in the field to release plant water. The use of sensors in the field can be minimized here, as the amount of water released by emitters during the irrigation process would be the same over the field.
Drip irrigation is beneficial because water soaks directly into the soil and no evaporation can occur. When opposed to other irrigation techniques, it offers the highest return on investment.
High-quality yields are very consistent. When using drip irrigation, there would be no runoff or waste of water.
Soil Moisture Sensor: FC-28 soil moisture sensor is used to measure the soil moisture level. It consists of four pins, VCC which is used for power, GND is ground, A0 is Analog output, D0 is a digital output. Both VCC and GND are used to supply voltage. The output of digital pin D0 is only 1 or 0, so we are using Analog pin A0 to calculate the level of moisture content present in the soil. To measure the volumetric content of water within the soil, the soil moisture sensor is used. This sensor primarily uses capacitance to measure the soil's water content (dielectric permittivity). By inserting this sensor into the ground, the work of this sensor can be done and the status of the water content in the soil can be recorded as a percentage.
In the area of irrigation for plants, soil moisture plays an important role. The nutrients in the soil provide the plants with food for their growth. To adjust the temperature of the plants, the supply of water to the plants is also important. With water, the temperature of the plant may be adjusted using a technique such as transpiration. And plant root systems are also best established in moist soil as growing. Extreme levels of soil moisture can contribute to anaerobic conditions that can promote the growth of the plant as well as soil pathogens.
Temperature and humidity sensor: DHT11 Temperature and humidity sensor are used to read both temperature and humidity values. It has a capacitive humidity sensor and a thermistor-based temperature sensor to measure the ambient temperature and humidity. It consists of three pins VCC, GND to Power, and Data(I/O) - Digital serial Data Output.
The water vapor present in the air is humidity. Various physical, chemical, and biological processes are influenced by the level of humidity in the air. DHT11 is a wireless sensor for temperature and humidity. DHT11 is a low-cost optical temperature and humidity sensing sensor. Any microcontroller such as the Arduino, Node MCU ESP826 can be easily interfaced with this sensor to calculate humidity and temperature instantly. The DHT11 sensor consists of an element that senses capacitive humidity and temperature sensing thermistor. As a dielectric between them, the humidity sensing capacitor has two electrodes with a humidity-holding substrate. The change in capacitance value occurs as humidity levels change. This modified resistance values are processed by the IC measure and converted into digital form. This sensor uses a Negative Temperature Coefficient Thermistor to calculate temperature, which causes its resistance value to decrease with an increase in temperature.
Microcontroller: Node MCU ESP8266 microcontroller is used. It is an open-source Lua based development board for IoT applications. It includes firmware that runs on ESP8266 Wi-Fi SOC, with help of this data is sent to the Blynk app and Thing Speak cloud.
It consists of different category of pins, first is Power: Micro-USB Node MCU can be powered through the USB port, 3.3V can be supplied to this pin to power the board, it has GND - Ground pins, it has Vin - for external power supply. Second, we have control pins EN, RST this button resets the microcontroller. Third, we have Analog pin A0 to measure Analog voltage, in our case soil moisture sensor. Fourth we have GPIO pins GPIO 1-16 these
are general-purpose pins to connect with different sensors and relay. It has a flash memory of 4MB. Its clock speed is 80MHZ.
Relay: Using relays, we can power high voltage electronic devices. In fact, a relay is a switch operated electrically by an electromagnet. The 5v from a microcontroller is triggered with a low voltage electromagnet and it pulls a contact to make or break a high voltage circuit. The 5v relay is used to switch on/offloads from the microcontroller. It consists of two led lights one is a power indicator led with red color and the second is a signal indicator led with green color.
Motor: A Dc motor is used to pump water to plants. It consists of two wires positive and negative. Those wires are connected with relay and external power supply like batteries.
When the sensor data is read and processed it sends signals from the microcontroller to the relay and the relay turns on/off the motor.
Wires: Different types of jumper wires are used to connect with sensors, micro- controller, relay. Motor, battery, and external power supply for micro-controller using a cable. Jumper wires like male to female and female to female are used to connect with each equipment.
Mobile Application: Blynk Mobile Application is used to control the hardware remotely. It is also used to display the data of soil moisture, temperature, and humidity levels with better UI using widgets. It is used to control hardware remotely and display data of sensors. It is an open-source application. It is available for Android and IOS devices. Blynk has its own server and directly connects with hardware without any requirement of servers on our laptop.
Thing Speak: Thing Speak is an open-source IOT application, it allows you to display data, aggregate data, and analyze data that is taken from sensors and sent through Node MCU. It has a specific channel for each project and authentication read and writes key to its channels. Each channel consists of several fields to store data and visualize in the form of graph lines or bars etc.
In the below figures we can see the daily data taken for more than 30 days. In figure 1 the temperature data is shown and in figure 2 the humidity data is shown. In figure 3 soil moisture data is shown.
Figure 2. Experimental Results
Blynk application below shows us the data from sensors sent by microcontroller through specific user authentication token. Data is visualized using widgets to show soil moisture, temperature, and humidity. Bottom right we can see a notification widget, it sends notifications to the user when the threshold is reached. Bottom left is the button used for controlling motor.
Figure 3. Screenshotof Blynk application
The proposed system is ready and all the connections required for the sensors and micro controller are given for proper working of the system and using external power supply using 5v battery, motor is connected. Now the irrigation process is ready and automatically powers the motor, when the threshold is reached on the field. The data collected from sensors is sent to Thing Speak using Representational state transfer Rest API. This Rest API works very efficiently and communicates over HTTP protocol. Thing Speak stores data from sensors like soil moisture, temperature, humidity, location of the filed. The data collected on Thing Speak cloud is taken and Data set is created with Temperature, Humidity, and Soil Moisture values.
The main purpose of this analysis is to predict the status of motor based on the sensor data.
Using machine learning algorithms, a model is built and It is tested with the help of random data values.
Figure 4.Flow diagram of the system developed
To create the machine learning model, Jupyter notebook and python libraries are used. Three classification algorithms Random Forest Classifier, Support Vector Machine, and Decision Tree Classifier are used and found that Random Forest Classifier is giving the best accuracyfor the model to predict whether to turn on the relay or not based on temperature, humidity, and soil moisture. Data is divided into 70 percent train data and 30 percent test data.
Decision Tree Classifier 0.9885591112584977
Random Forest Classifier 0.9890565412037805
Model is deployed to Heroku cloud platform. It is a platform as a service. Using git hub, model can be directly deployed to Heroku.
The proposed system using the Blynk application to monitor data and Thing Speak to store the data is very feasible and also very affordable because both are open source and more developers are coming up with new updates. We can easily upgrade this system with features like adding more sensors and coming up with new models as they are free and available to everyone. The whole system is very easy and very secured to use. Blynk has its own authentication tokens to transfer data and Thing Speak also has its own channel id, private keys to both read and write data to the channel fields. This system can avoid water wastage and increase crop yield at a time consistently as we are using drip irrigation.
1.SnehaAngal – “Raspberry pi and Arduino Based Automated Irrigation System” 2013 International Journal of Science and Research (IJSR).
2.Nikhil Agrawal, SmitaSinghal – “Smart Drip Irrigation System Using Raspberry Pi and Arduino”, 2015 International Conference on Computing, Communication &
3.Vaishali S, Suraj S, Vignesh G, Dhivya S and Udhaya Kumar S – “Mobile Integrated Smart Irrigation Management and Monitoring System Using IOT”, 2017 International Conference on Communication and Signal Processing.
4.Ms. SwapnaliB.Pawar, Prof. Priti Rajput, Prof. Asif Shaikh – “Smart Irrigation System Using IOT And Raspberry Pi”, 2018 International Research Journal of Engineering and Technology (IRJET).
5.Chandan Kumar Sahu, PramiteeBehera – “A Low-Cost Smart Irrigation Control System”, 2015 International Conference On Electronics And Communication System by IEEE.
6.G. Parameswaran, K. Sivaprasath – “Arduino Based Smart Drip Irrigation System Using Internet of Things”, 2016 International Journal of Engineering Science and Computing.
7.Prakhar Srivastava, Mohit Bajaj, Ankur Singh Rana – “Overview of ESP8266 Wi-Fi module based Smart Irrigation System using IoT”, 2018 4th International Conference on Advances in Electrical, Electronics, Information, Communication and Bio- Informatics (AEEICB-18) by IEEE.
8.Karan Kansara, Vishal Zaveri, Shreyans Shah, SandipDelwadkar, Kaushal Jani –
“Sensor-based Automated Irrigation System with IOT: A Technical Review”, 2015 International Journal of Computer Science and Information Technologies.
9.Shweta B. Saraf, Dhanashri H. Gawali – “IoT Based Smart Irrigation Monitoring And Controlling System”, 2017 IEEE International Conference On Recent Trends in Electronics Information & Communication Technology (RTEICT).
10.Aalaa Abdullah, Shahad Al Enazi and IssamDamaj – “AgriSys: A Smart and Ubiquitous Controlled Environment Agriculture System”, 2016 MEC International Conference on Big Data and Smart City (ICBDSC).
11.NarayutPutjaikal, SasimaneePhusael, Anupong Chen-Iml, Dr.Phond, Phunchongharnl, and DrKhajonpongAkkarajitsakup, - "A control system in an intelligent farming by using Arduino technology", 2016 Fifth ICT International Student Project Conference (ICT-ISPC).
12.RamyaVenkatesan and AnandhiTamilvanan, “A Sustainable Agricultural System Using IoT”, 2017 International Conference on Communication and Signal Processing.
13.Sandeep Kumar, P. Raja, G. Bhargavi, “A Comparative Study on Modern Smart Irrigation System and Monitoring the Field by using IOT.”, 2018 International Conference on Computing, Power and Communication Technologies (GUCON).
14.Pavan Kumar Naik, ArunKumbi, KirthishreeKatti, Nagaraj Telkar, “Automation of irrigation system using IoT”, 2018 International Journal of Engineering and Manufacturing Science.
15.Gaikwad Tararani, GanduleShital, KorabuSofiya, PawarGouri, Prof.Vasekar S.R.
“Smart drip irrigation system using IoT”, 2018 International Research Journal of Engineering and Technology (IRJET).
16.Rishabh Modi, Madhavan P, Karan Veer Mahajan – “Smart Irrigation System”, 2019 International Journal of Engineering and Advanced Technology (IJEAT).
17.Sumathi K, Adchaya P, Jayasri M, Nandhini B, Pavithra J T - “Smart Irrigation and Agriculture Monitoring system using Cloud Server based on IoT”, 2020 International Journal of Advanced Trends in Computer Science and Engineering.
18.YuthikaShekhar, EktaDagur, Sourabh Mishra, Rijo Jackson Tom, and Veeramanikandan. M, Suresh Sankaranarayanan – “Intelligent IoT Based Automated Irrigation System”, 2017 International Journal of Applied Engineering Research ISSN.
19.Gursimran Singh, Deepak Sharma, AmarendraGoap, Sugandha Sehgal, A K Shukla, Satish Kumar – “Machine Learning based soil moisture prediction for Internet of Things based Smart Irrigation System”, 2019IEEE International Conference on Signal Processing, Computing and Control.
20. Laura García, Lorena Parra, Jose M. Jimenez, Jaime Lloret,and Pascal Lorenz – “IoT- Based Smart Irrigation Systems: An Overview on the Recent Trends on Sensors and IoT Systems for Irrigation in Precision Agriculture”, 2020.