Next Article in Journal
An IIoT-Device for Acquisition and Analysis of High-Frequency Data Processed by Artificial Intelligence
Previous Article in Journal
An IoT- and Cloud-Based E-Waste Management System for Resource Reclamation with a Data-Driven Decision-Making Process
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

IoT-Enabled Smart Drip Irrigation System Using ESP32

FAB-LAB, Qatar Scientific Club, Doha P.O. Box 9769, Qatar
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
IoT 2023, 4(3), 221-243; https://doi.org/10.3390/iot4030012
Submission received: 15 May 2023 / Revised: 14 June 2023 / Accepted: 1 July 2023 / Published: 7 July 2023
(This article belongs to the Topic IoT for Energy Management Systems and Smart Cities)

Abstract

:
Agriculture, or farming, is the science of cultivating the soil, growing crops, and raising livestock. Ever since the days of the first plow from sticks over ten thousand years ago, agriculture has always depended on technology. As technology and science improved, so did the scale at which farming was possible. With the popularity and growth of the Internet of Things (IoT) in recent years, there are even more avenues for technology to make agriculture more efficient and help farmers in every nation. In this paper, we designed a smart IoT-enabled drip irrigation system using ESP32 to automate the irrigation process, and we tested it. The ESP32 communicates with the Blynk app, which is used to collect irrigation data, manually water the plants, switch off the automatic watering function, and plot graphs based on the readings of the sensors. We connected the ESP32 to a soil moisture sensor, temperature sensor, air humidity sensor, and water flow sensor. The ESP32 regularly checks if the soil is dry. If the soil is dry and the soil temperature is appropriate for watering, the ESP32 opens a solenoid valve and waters the plants. The amount of time to run the drip irrigation system is determined based on the flow rate measured by the water flow sensor. The ESP32 reads the humidity sensor values and notifies the user when the humidity is too high or too low. The user can switch off the automatic watering system according to the humidity value. In both primary and field tests, we found that the system ran well and was able to grow green onions.

1. Introduction

Agriculture, which involves the cultivation of crops and animals, is one of the most essential practices for maintaining and growing the human population. Not only does it provide nourishment to human beings, but it is also helpful in eliminating extreme poverty and boosting the economy of a country. Agriculture accounts for 4% of the global gross domestic product (GDP) and is projected to feed about 9.7 billion people by 2050 [1].
Agriculture has always depended on technology in one way or another. People used extremely simple tools for farming more than 12,000 years ago. The farm tools were often made of wood or animal bones [2]. As time went on, humans developed better tools for farming. By the second agricultural revolution in the U.S., tractors were a common sight in farmlands [3].
Water is essential for plant growth and the distribution of mineral nutrients. Irrigation involves the application of water to the soil through a system of pumps, tubes, and sprays. It is commonly used in areas where rainfall is low [4]. There are many different types of irrigation systems. For sustainable agriculture in desert countries, where efficient water use is necessary, drip irrigation systems are a great fit [5]. With drip irrigation, water is directly applied to the soil (close to the roots of the plants) in the form of droplets over time. The most significant advantage of drip irrigation systems compared to other systems is the amount of water saved [6,7].
We can use the Internet of Things (IoT) in any application that requires data collection, automation, or control. With the growing popularity of IoT, there has been an increase in the ideas surrounding smart agricultural technology [8,9]. In this paper, we designed a smart IoT-enabled drip irrigation system using an ESP32 microcontroller. The system comprises an ESP32, solenoid valve, soil moisture sensor, temperature sensor, air humidity sensor, and water flow sensor. We used the Blynk IoT mobile app and web dashboard to collect irrigation data, turn the automatic irrigation feature on or off, manually open the valve if needed, and plot temperature, soil moisture content, and air humidity graphs. Opening the valve allows water to reach the roots of the plants. The soil moisture sensor constantly checks if the soil is dry. If the soil is dry and the temperature is ideal, the ESP32 can automatically open the valve and irrigate the field. Based on the humidity sensor readings, the user can turn off the automatic irrigation feature or turn it back on.
We set out to grow green onions from onion bulbs. After a week of running the drip irrigation system, spring onions began to grow from a few onion bulbs. The irrigation for the week was conducted automatically by the system with no interference from the users. Each spring onion received 0.676 gallons of water over the week, which is a satisfactory outcome. We also plotted the weekly temperature, soil moisture, and air humidity graphs.
The remainder of the paper is organized as follows: Section 2 illustrates various relevant works and how we build upon them. Section 3 covers the overview of the entire system. Section 4 highlights the hardware used, with further details provided in Section 4.1, Section 4.2 and Section 4.3. Section 5 covers the results of the implementation and tests. Finally, Section 6 provides the conclusion and future scope of our project.

2. Related Works

There have been prior works on smart irrigation systems and smart drip irrigation systems [10,11]. Refs. [12,13] provide overviews of smart irrigation systems. They talk about wireless communications, irrigation methods, sensors applicable to smart irrigation systems, and types of monitoring in this field. Likewise, ref. [14] provides a detailed breakdown of irrigation monitoring, control, and the scheduling system, while [15] investigates the use cases, challenges, and issues of IoT in agriculture.
In ref. [16], a smart irrigation system was designed using a resistive soil moisture sensor, temperature sensor, water flow meter, and Arduino UNO single board computer (SBC). The system monitors temperature and soil moisture level, and if the soil becomes dry or the temperature exceeds 30 °C, the field is irrigated. Ref. [17] details a smart system that monitors and controls agricultural production using IoT. It monitors the data and provides it to the farmer, who can use the data to control the system remotely when needed, reducing the workload.
In ref. [18], a smart irrigation system was designed using a resistive soil moisture sensor, temperature sensor, air humidity sensor, and Arduino UNO SBC. The system monitors and displays the temperature and humidity readings. If the soil is too dry, the motor is powered on so that the soil receives water. Ref. [19] proposed an innovative design of a solar-powered smart drip irrigation system using a node microcontroller unit (MCU) that monitors temperature and humidity via a DHT11 sensor, and the soil moisture value determines when the pump turns on. Ref. [20] proposes a smart farm using a long-range wireless area network (LoRaWAN).
We built on the prior works in five crucial ways. Firstly, we used an ESP32 microcontroller. The ESP32 is cheap, has built-in Wi-Fi, and Blynk IoT officially supports the ESP32. Secondly, we offer improved automatic irrigation. The ESP32 takes into account the actual time of the day, soil moisture content, and soil temperature before opening the valve and watering the plants. The temperature readings are not available just for monitoring. We used the temperature readings to ensure that we watered the plants at the best temperature for maximum water absorption. Thirdly, we improved the monitoring and control features. Along with soil moisture and temperature, the ESP32 also monitors the humidity and notifies the user when the humidity is too low or too high. The user can then decide to switch off the automatic irrigation feature or manually open/close the valve based on the monitored values.
Fourthly, we set the duration of watering the plants through the drip irrigation system with the help of the flow sensor. Lastly, the ESP32 collected real-time data. We used these data to track the date and time of irrigation, and to help ensure that we did not accidentally water the plants multiple times in a single day, with assistance from the flow sensor.

3. System Overview

The overview of the IoT-enabled smart drip irrigation system is shown in Figure 1. The ESP32 is the brain of the system. We connected the ESP32 to different sensors and a relay. The temperature sensor probe and soil moisture sensor probe were inserted into the soil and monitored the soil temperature and moisture levels, respectively. The water flow sensor provides data on the water flow rate, and the humidity sensor measures the humidity of the air. The system opens the solenoid valve to water the plants using a relay. The ESP32 uses Wi-Fi to communicate with the mobile app or web dashboard via Blynk cloud. We used the Blynk app to collect irrigation data, manually control the valve, and plot the soil temperature fluctuation graph.
It is best to water the plants in the morning or early in the evening. Watering the crops in the afternoon can lead to the water becoming hot and burning the plants. Watering the crops late in the evening may lead to water stagnation and encourage rot, fungal growth, and insects [22,23]. We used the hourly weather reports in Qatar [24,25] to set our morning irrigation window from 5 a.m. to 8 a.m. and evening irrigation window from 6 p.m. to 8 p.m. In these time windows, the weather is usually warm, and the temperature is between 24 °C and 30 °C, as shown in Figure 2. Using real-time data, the ESP32 will check the moisture and temperature of the soil within these time windows and water the plants if necessary.
We used an air humidity sensor to gather humidity data. If the temperature is very warm and the humidity is low, too much water will evaporate through transpiration. The water loss will lead to the plants attempting to absorb more water, and as they consume more water, they will consume more nutrients. Excess nutrients will cause the tips of the leaves to burn, and the leaves will wilt [26]. Hence, watering the soil when the humidity is too low may not be a good idea. The ESP32 will notify us if the humidity is too high or low. Based on the humidity readings, along with the other sensor data, we can turn the automatic irrigation feature on or off.
We can open the valve manually by using the app if there is a need to do so. The irrigation data are saved to the app as they help to recognize trends and eventually improve the system. The irrigation data consist of the date and time of irrigation, the temperature of the soil at the time of irrigation, and the rate of the flow of water in the drip line.
Figure 2. The hourly reported temperature in Qatar for May 2023, color-coded into bands. The shaded overlays indicate night and civil twilight (source: www.weatherspark.com (accessed on 13 May 2023)) [27].
Figure 2. The hourly reported temperature in Qatar for May 2023, color-coded into bands. The shaded overlays indicate night and civil twilight (source: www.weatherspark.com (accessed on 13 May 2023)) [27].
Iot 04 00012 g002
We interfaced the ESP32 with a moisture sensor, temperature sensor, air humidity sensor, water flow sensor, and solenoid valve. Using the data from these sensors, the ESP32 determines when to open the solenoid valve. The solenoid valve controls the flow of water into the pipes of the drip irrigation system. The flowchart highlighting the logic programmed into the ESP32 is shown in Figure 3.
When we turn on the system, the ESP32 initializes its non-volatile storage (NVS) flash, Wi-Fi, real-time operating system (RTOS), soil moisture sensor, temperature sensor, air humidity sensor, and flow sensor. The ESP32 then connects to the Blynk servers and checks the moisture content of the soil, temperature, and humidity. If the irrigation system is currently set to automatic irrigation and if the soil is dry, it then obtains the current time of the day and compares it to the morning and evening irrigation time windows. If the time is within the irrigation time window, the ESP32 will check if the soil temperature is within the ideal range. If the temperature is within the ideal range for maximum water absorption, the ESP32 will open the valve for an hour and water the plants. The ESP32 will then wait ten minutes before checking the soil moisture level.
If the soil is dry but the current time is not within the irrigation time windows, the ESP32 will not open the valve. Similarly, if the temperature is not in the ideal range, the ESP32 will not open the valve. If the soil is humid during the moisture check, the ESP32 will keep the valve closed. An improved flowchart based on the results of our tests is presented in Section 5.

4. Materials Used

4.1. Hardware

The system’s main hardware components are a microcontroller, moisture sensor, temperature sensor, air humidity sensor, water flow sensor, solenoid valve, relay, and a step-down transformer.

4.1.1. Microcontroller—ESP32

The ESP32 is a low-cost, 32-bit microcontroller. It has built-in Bluetooth and Wi-Fi, making it useful for IoT applications. It can accommodate multiple sensors and devices with 48 general purpose input–output (GPIO) pins. We used the inbuilt Wi-Fi of the ESP32 to communicate with the Blynk mobile app or web dashboard. ESP32 sends irrigation information to Blynk cloud. We can control the valve or set the irrigation time using the mobile app.

4.1.2. Moisture Sensor—DFRobot

We used a SEN0308 DFRobot soil humidity sensor, which detects soil humidity and sends analog signals to the ESP32. The sensor is shown in Figure 4.
The SEN0308 is a capacitive moisture sensor that offers improved waterproof performance, increased length, and high corrosion resistance [28]. It solves a critical issue encountered with commonly used resistive moisture sensor probes, which is probe corrosion. The SEN0308 has excellent corrosion resistance and can be inserted into the soil for long periods.
We inserted the sensor probe into the soil. The sensor measures changes in capacitance that are caused by alterations in the dielectric due to humidity [29]. It does not measure moisture directly but instead measures the moisture’s ions. The sensor sends analog signals to the ESP32 based on the measurement, which is converted to a digital signal by the ESP32.

4.1.3. Temperature Sensor—DS18B20

We used a DS18B20 one-wire bus temperature sensor probe, as shown in Figure 5. These sensors provide up to 12-bit temperature measurements in Celsius and have an alarm function with non-volatile user-programmable lower and upper trigger points. Each sensor has a unique 64-bit ID burned in at the factory to differentiate them, which allows us to control multiple sensors with a single GPIO pin of a microcontroller. This sensor’s significant advantages are its high accuracy and waterproofing [30].

4.1.4. Air Humidity Sensor—DHT22

We used a DHT22 humidity–temperature sensor, as shown in Figure 6. It is low-cost and uses a capacitive humidity sensor to measure the humidity in the air. It also uses a thermistor to measure the temperature. The data can be obtained from the data pin of the DHT22. The DHT22 is good for 0–99.9% humidity readings wit + / 2% accuracy [31].

4.1.5. Water Flow Sensor—FS300A G3/4 Inch

The FS300A consists of a water rotor, a hall-effect sensor, and a plastic valve body, as shown in Figure 7. The water flows in through the inlet and out through the outlet due to the flow of water and the wheel rolls, and so does the magnet. The rotation of the magnet triggers the hall-effect sensor, which outputs high- and low-square waves. We calculate the water flow by counting the square waves [32].

4.1.6. Solenoid Valve—Hunter PGV-100G (24VAC)

We used a hunter PGV one-inch solenoid valve, which is an electrically controlled valve. This valve is shown in Figure 8. A solenoid is an electric coil with a movable magnetic core. Applying an electric current to this coil creates a magnetic field, which moves the core and allows water to flow. If the current is cut off, the valve closes, and the water flow stops [33].

4.1.7. Relay

A relay is a simple electrically controlled switch. By sending a signal from the ESP32, we can turn the switch on and supply a 24 V AC to the solenoid valve and open it.

4.1.8. Step-Down Voltage Regulator

The smart drip irrigation system is powered using a 12 V DC adapter. We used a step-down voltage regulator to supply the ESP32 with the 5 V needed for operation.

4.2. Drip Irrigation Setup

4.2.1. Acrylic Container

To make our irrigation system somewhat portable, we made an acrylic container. We first cut out the base and walls of the container from an 18 mm thick acrylic sheet using a computerized numerical control (CNC) machine and then glued them together and applied silicone, as shown in Figure 9a. Once the glue and silicone were dry, we added some screws to the container for strength and drilled drainage holes in the base of the acrylic container to allow for percolation, as shown in Figure 9b. The diameter of the holes ranged from 10 to 12 mm.

4.2.2. Soil

After preparing the container, we poured in one and three-fourths of a 50 L bag of all-purpose potting soil [34], as shown in Figure 10. This translates to 6.280 inches of soil, which is sufficient for growing green onions as they require 6–8 inches of soil [35]. The soil is a mixture of organic compost and moisture-retaining coir residues that prolong hydration and reduce drought stress, making the soil quite useful for the subtropical desert climate of Qatar. The elemental analysis of the soil is shown in Table 1.

4.3. Drip Irrigation Piping

After the addition of soil, we drilled holes in two opposing walls and added the mainline, dripline, and drippers, as shown in Figure 11. We will connect the rest of the smart irrigation system to this basic drip irrigation setup later.

5. Experiments and Discussion

5.1. Primary Tests in the Laboratory

The initial tests were conducted in the lab to test the moisture sensor, temperature sensor, air humidity sensor, water flow sensor, solenoid valve, and firmware. The system was powered using a power supply. Using the relay, the ESP32 was able to control the solenoid valve. A loud click noise let us know when the valve was opened or closed. We calibrated the soil moisture sensor by first reading the value of the sensor in the air and then placing the probe in a glass of water and re-reading the value. After calibrating the moisture sensor, we proceeded to confirm that the ESP32, moisture sensor, and valve worked well together. To do so, we programmed the valve to open if the ESP32 was not in the cup of water. We then replaced the cup with a potted plant, re-calibrated the moisture sensor with the soil [36,37], and repeated the experiments.
We connected the DS18B20 temperature sensor to the ESP32 using the GPIO. As ESP32 does not have a dedicated 1-wire bus interface GPIO pin, we had to perform bit-banging on the GPIO to use the DS18B20. We followed the timing diagrams of the DS18B20 in order to write and read 1 s and 0 s. Lastly, we performed simple calibration by measuring the known temperatures [38]. We measured the temperatures of different objects with DS18B20 and compared them to the readings from a FLIR C3-X thermal camera. Figure 12a shows the temperature measured by the DS18B20 for a cup of hot water, and Figure 12b shows the thermal capture using the camera for the same cup. We repeated the temperature measurement with other test scenarios, and the results are shown in Table 2.
As the measured temperature difference was less than + / 1 °C, we then proceeded to connect the air humidity sensor and water flow sensor. We set up an interrupt on the ESP32 GPIO pin to read the pulses from the flow meter. To calibrate the sensor, we poured a known amount of water through the flow meter and checked if the sensor could calculate the amount of water that flowed through [39]. We observed that the error was less than one percent.

5.2. Comparing the Sensor Readings to Weather Forecasts

To test the accuracy of the sensor measurements in an outdoor environment, we took the readings from the DS18B20 soil temperature sensor and DHT22 air temperature and humidity sensor and compared them to the data gathered from timeanddate.com [40]. The test was conducted over a period of 4 h on 16 June 2023. Table 3 compares the temperature measured by the soil temperature sensor (DS18B20), air temperature sensor (DHT22), and the temperature data obtained from timeanddate.com (accessed on 16 June 2023).
As seen in the table, the air temperature measured by the DHT22 and the data obtained from timeanddate.com (accessed on 16 June 2023) match. The soil temperature measured by the DS18B20 was always slightly more than the air temperature. A comparison of the air humidity is shown in Table 4.
The measured and observed humidity slightly differ. The differences observed may be due to the differences in measurement locations. timeanddate.com (accessed on 16 June 2023) has a weather station set up at Doha International Airport; our tests were done in Abu Hamour on a windy day, with wind speeds reaching 37 km/h. Despite the slight differences, all the sensors performed well and are fit for the smart irrigation system.

5.3. Testing the Solenoid Valve Outdoors

We used a large 400 US gallon water tank for the irrigation system, as seen in Figure 13a. We also installed a pump motor to ensure the water flowed with enough pressure to open the solenoid valve. We placed the motor wiring in a container with a gasket lid to protect the connections from water and put an acrylic container sealed with silicone over the motor to provide some protection from the rain, as shown in Figure 13b. Lastly, we made holes in one of the walls of the container to provide air circulation for the motor.
Once the water tank was ready, we connected the solenoid valve to the pump motor. The electronic components were placed in a plastic container with a rubber gasket to protect them from water. The printed circuit boards (PCBs) were fastened into place using screws and a raiser. We designed a case for the barrel jack of the adapter and 3D-printed it. Next, we drilled holes into the walls of the container to allow wires to pass through and applied silicone to prevent moisture from entering the container. The field-ready kit can be seen in Figure 14a,b.
We tested the system and found that the solenoid valve worked well and would let water flow through as directed by the ESP32. We connected the solenoid valve outlet to the inlet of the water flow sensor. We made more acrylic containers sealed with silicone to improve the irrigation system’s overall dust and water resistance. We placed one container over the extension board and the other electronics. We put the other container over the solenoid valve and flow sensor. The containers are shown in Figure 15a,b. To keep the wiring between the PCB and solenoid valves free of water, we 3D-printed a simple case and sealed it using glue and silicone. This case is shown in Figure 15c. We also placed the DHT22 humidity sensor in a plastic enclosure and sealed it with silicone, as shown in Figure 15d.
We found the irrigation system capable of withstanding dust and light rain due to all the containers and silicone.

5.4. Testing the Entire Smart Drip Irrigation System in the Field

After confirming that the irrigation system was satisfactorily water- and dust-resistant, we connected the outlet of the water flow sensor to the drip irrigation system’s mainline. We placed the drippers at different locations and positioned the moisture sensor and temperature sensor in the soil near one of the drippers. We placed the DHT22 on top of the acrylic case covering the valve. The entire smart drip irrigation system is shown in Figure 16.
We tested the system without any plants for the first few days and opened the valve for just ten minutes at a time. The water flow rate through the mainline was 10 L per hour, as per the flow meter sensor. We collected the water from the drippers using a bottle for ten minutes and measured it in a graduated cylinder. We repeated the tests multiple times and present our findings in Table 5. The average flow rate of 0.64 L per hour falls within the range specified by the manufacturer of the dripper [41].
We programmed the ideal temperature range to be between 27–32 °C or 80.6–89.6 °F. While maximum water is used at a soil temperature of 59 °F [42], it is not a temperature that is easy to reach in the summer months. Hence, we continued our tests with an attainable temperature range. We also programmed the acceptable relative humidity range to be between 25% and 90%; 25% was set as the lower limit as most plants grow best with a relative humidity of over 50%. Although many plants will tolerate lower levels, only those native to arid regions will tolerate humidity below 25% [43]. If the humidity reading crossed the lower or upper limit, we received a notification on the Blynk app. For the most part, the system worked as we expected. The ESP32 opens the valve if the soil is dry and the current time and temperature are within the programmed ideal range. If the soil is moist, the ESP32 will not open the valve. However, we discovered some issues during our tests.
At times, even though the ESP32 had opened the valve once, the soil around the sensor was not moist. This delay led to the ESP32 opening the valve a second time and over-watering the soil. To combat this, we modified the firmware to block the valve from being opened twice on the same day if the water flow sensor was already triggered earlier the same day. Hence, the flow sensor confirms that the plants received water. It was possible to manually open the valve via the app if we needed to do so.
Additionally, if the tank was empty during the irrigation window, the ESP32 still opened the valve and considered that it had done its job, but the soil was dry. If there is a water shortage, the ESP32 might miss the irrigation window and not water the plants. We handled this issue by modifying the firmware and setting up a notification. We received an app notification if the irrigation window had passed, the flowmeter was never triggered, and the soil was dry even though the ESP32 opened the valve. The Blynk app notification allowed us to inspect the tank and soil and decide between manually opening the valve or waiting for the next irrigation time window. The modified flow chart accommodating the above changes is shown in Figure 17.
The most significant differences in the final flowchart occurred after confirming that the soil was dry. If the ESP32 conducts the moisture check within one of the irrigation time windows, it then checks if the valve was opened earlier today. If the system had opened the valve before, it would not open the valve again to prevent over-watering the plants. If the ESP32 has yet to open the valve and the temperature is in the ideal range, it will open the valve and water the plants.
Due to the extreme weather changes in Qatar this year, there were days when we were not even close to the ideal soil temperature for irrigation. We added a safety feature to ensure that the plants did not remain thirsty just because the soil was not at the ideal temperature. If the soil is dry, the ESP32 has not opened the valve as yet, and the evening time window is about to end, the ESP32 will open the valve to water the plants regardless and note down the temperature at the time of irrigation.
If the valve is opened once, the morning and evening irrigation time windows have passed, and the soil is still dry, the admin user will receive a notification about the dry soil. We can then decide if the valve needs to be opened manually through the app.
After we updated the ESP32 firmware according to the latest flowchart, we planted onion bulbs into the soil to grow spring onions. We placed the bulbs near the drippers. Later, we positioned the moisture sensor in the soil near one of the bulbs and drippers. We then opened the solenoid valve for sixty minutes compared to the ten minutes during the early testing phase. We then watered the onion bulbs.

6. Results

We checked back on the smart drip irrigation system in one week. The spring onions had begun to grow atop a few onion bulbs, and the plants were healthy and received plenty of water. The growing spring onions are shown in Figure 18.
Further details about the irrigation system are available on the Blynk IoT dashboard. The web dashboard is shown in Figure 19a,b.
The “Valve Manual Open” button allows us to open the solenoid valve as needed and the “Valve Automation Lock” button allows us to block the automatic irrigation function. The “Irrigation Data” widget provides the exact date, time, soil temperature, and flow rate of when the ESP32 last opened the solenoid valve. The “Temperature” graph shows the fluctuation of temperature throughout the day, the “Air humidity” graph shows the variation of humidity, and the “Soil Moisture” graph shows the alteration of moisture in the soil.
We collected the irrigation data over one week and plotted the soil moisture content graph (Figure 20). The soil is dry if the moisture reading crosses 380. If the moisture reading is above 380 and the temperature and irrigation window are in the proper range, the ESP32 opens the valve to irrigate the field. The soil is considered wet if the reading is between 190 and 380, and very wet if the reading is between 0 and 190. As seen in the graph, the onions received water four times this week.
Each dripper had a flow rate of 0.64 L per hour and watered an onion bulb for an hour a day for four days a week. In other words, the onion received 0.64 L of water a day. The total water provided to an onion over the week was as follows:
0.64 × 4 = 2.56 L
To convert the value into gallons, we divide Equation (1) by 3.785, as shown:
2.56 / 3.785 = 0.676 gallons
Spring onions or shallots grown from the bulb need about an inch of water per week to grow well [44]. “One inch of water” refers to the amount of water necessary to cover one square foot of soil with one inch of water [45]. As there are 12 inches in a foot, the square inches of water needed per square foot of soil is as follows:
12 × 12 = 144 sq . inch
Moreover, 1 gallon is 231 cubic inches. Thus, when we divide 144 sq. inches by 231, we obtain the amount of water needed by onion bulbs per square foot as follows:
144 / 231 = 0.623 gallons
As seen above, the actual amount of water provided to the onion bulbs in a week using the smart irrigation system in Equation (2) and the recommended amount of weekly water in Equation (4) are very close; hence, the smart irrigation system succeeds in providing adequate moisture to the plants.
We plotted the humidity variation graph for one week, as shown in Figure 21. The humidity was mostly above the lower limit of 25%. However, corresponding to some of the hottest hours of the day, it was not uncommon for the humidity to fall well below the 25% mark.
We plotted the temperature fluctuation graph for one week, as shown in Figure 22. The temperatures were the highest between 1 p.m. and 3 p.m. This timing also coincides with the lowest humidity readings of the day. The highest observed temperature was 46 °C. The temperature was comparatively low during the morning and evening irrigation time windows.
The moisture content, humidity, and temperature data collected are valuable for observing the weekly and monthly trends, making changes to the firmware, and are especially useful for building a greenhouse around the smart irrigation system.

7. Conclusions

We were successful in building an IoT-enabled smart drip irrigation system. It provides an enhanced automation feature, where if the soil is dry, the temperature is in the ideal range for maximum water absorption, the time falls within the designated morning or evening irrigation windows, and the ESP32 will open the solenoid valve and water the plants. We added safety features to prevent scenarios such as over-irrigation, missing the irrigation time, or leaving the plants thirsty.
Using the Blynk IoT dashboard, we can also monitor soil moisture, temperature, and air humidity. If the humidity is too low or too high, the admin user receives a notification on the Blynk app. We can use the Blynk dashboard to stop the automation function or manually open the valve based on the monitored data.
The smart drip irrigation system is currently being used to grow green onions from onion bulbs. While the system has been performing well, there are still some areas of improvement to explore, such as:
  • Exploring a companion app where we can select the crop planted; the watering time would be changed accordingly to meet the crop needs.
  • Expanding the system to control multiple sensors and valves.
  • Exploring the impact of watering the plants at the ideal temperature for maximum water absorption make.
  • Using Bluetooth or Wi-Fi mesh to control multiple smart drip irrigation systems.
  • Exploring some portability options and solar energy systems.
  • Integrating pH sensors, wind speed sensors, rain sensors, and more.

Author Contributions

Conceptualization, M.Z.C. and G.P.P.; methodology, G.P.P. and M.Z.C.; software, G.P.P.; validation, G.P.P. and F.D.; formal analysis, G.P.P.; resources, M.Z.C. and F.D.; data curation, G.P.P. and F.D.; writing—original draft preparation, G.P.P.; writing—review and editing, G.P.P. and M.Z.C.; supervision, M.Z.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Not applicable.

Acknowledgments

We thank Faisal Kuttikadavath (Qatar Scientific Club) for providing us with the space, tools, knowledge, and help needed to set up the garden for the smart drip irrigation system.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
IoTInternet of Things
SBCsingle board computer
MCUmicrocontroller unit
LoRaWANlong-range wireless area network
NVSnon-volatile storage
RTOSreal-time operating system
GPIOgeneral purpose input–output
CNCcomputerized numerical control
pHpotential of hydrogen
ECelectrical conductivity
PCBprinted circuit board

References

  1. Agriculture Overview: Development News, Research, Data | World Bank. Available online: https://www.worldbank.org/en/topic/agriculture/overview#1 (accessed on 12 December 2022).
  2. Woods, M.; Woods, M.B. Ancient Agricultural Technology: From Sickles to Plows; Twenty-First Century Books: Minneapolis, MO, USA, 2011; pp. 98–99. ISBN 978-0-7613-7269-1. [Google Scholar]
  3. Bellis, M. Farm Machinery and Technology Changes from 1776 to 1990. Available online: https://www.thoughtco.com/american-farm-tech-development-4083328 (accessed on 13 December 2022).
  4. Types of Agricultural Water Use | Other Uses of Water | Healthy Water | CDC. Available online: https://www.cdc.gov/healthywater/other/agricultural/types.html (accessed on 13 December 2022).
  5. Ranjan, S.; Sow, S. Drip Irrigation System for Sustainable Agriculture. Agric. Food 2020, 2, 67–69. [Google Scholar]
  6. Mangi, N. Performance and evaluation of drip irrigation system, and its future advantages. Sch. Rep. 2020, 4, 27–41. [Google Scholar]
  7. Sathyapriya, E.; Naveenkumar, M.R.; Dhivya, V. An Empirical Study on Drip Irrigation. In Proceedings of the National Conference on Micro Irrigation, TNAU, Coimbatore, India, 1–3 March 2017. [Google Scholar]
  8. Verdouw, C.; Wolfert, S.; Tekinerdogan, B. Internet of Things in Agriculture. In CABI Reviews; CABI International: Wallingford, UK, 2016; pp. 1–12. [Google Scholar] [CrossRef]
  9. Verma, D.K.; Mishra, A.; Mishra, K. Role of IOT in Introducing Smart Agriculture. Int. Res. J. Eng. Tech. 2022, 9, 883–887. [Google Scholar]
  10. Ghosh, S.; Sayyed, S.; Wani, K.; Mhatre, M.; Hingoliwala, H.A. Smart irrigation: A smart drip irrigation system using cloud, android and data mining. In Proceedings of the 2016 IEEE International Conference on Advances in Electronics, Communication and Computer Technology (ICAECCT), Rajarshi Shahu College of Engineering, Pune, India, 2–3 December 2016. [Google Scholar]
  11. Swetha, R.N.; Nikitha, J.; Pavitra, B. Smart Drip Irrigation System for Corparate Farming-Using Internet of Things. Int. J. Creat. Res. Thoughts 2017, 5, 1846–1851. [Google Scholar]
  12. Obaideen, K.; Yousef, B.A.; AlMallahi, M.N.; Tan, Y.C.; Mahmoud, M.; Jaber, H.; Ramadan, M. An overview of smart irrigation systems using IoT. Energy Nexus 2022, 7, 100124. [Google Scholar] [CrossRef]
  13. Gamal, Y.; Soltan, A.; Said, L.A.; Madian, A.H.; Radwan, A.G. Smart Irrigation Systems: Overview. IEEE Access 2023, 4. [Google Scholar] [CrossRef]
  14. Bwambale, E.; Abagale, F.K. Smart Irrigation Monitoring and Control. In Encyclopedia of Smart Agriculture Technologies; Zhang, Q., Ed.; Springer: Cham, Switzerland, 2022; pp. 1–7. [Google Scholar] [CrossRef]
  15. Mohy-eddine, M.; Guezzaz, A.; Benkirane, S.; Azrour, M. IoT-Enabled Smart Agriculture: Security Issues and Applications. In Artificial Intelligence and Smart Environment. ICAISE 2022. Lecture Notes in Networks and Systems; Farhaoui, Y., Rocha, A., Brahmia, Z., Bhushab, B., Eds.; Springer: Cham, Switzerland, 2023; Volume 635, pp. 566–571. [Google Scholar] [CrossRef]
  16. El Mezouari, A.; El Fazziki, A.; Sadgal, M. Smart Irrigation System. In Proceedings of the 10th IFAC Conference on Manufacturing Modelling, Management and Control MIM 2022, Nantes, France, 22–24 June 2022; pp. 3298–3303. [Google Scholar] [CrossRef]
  17. Mabrouki, J.; Azoulay, K.; Elfanssi, S.; Bouhachlaf, L.; Mousli, F.; Azrour, M.; El Hajjaji, S. Smart System for Monitoring and Controlling of Agricultural Production by the IoT. In IoT and Smart Devices for Sustainable Environment. EAI/Springer Innovations in Communication and Computing; Azrour, M., Irshad, A., Chaganti, R., Eds.; Springer: Cham, Switzerland, 2022; pp. 103–115. [Google Scholar] [CrossRef]
  18. Gomathy, C.K.; Vamsikumar, A.; Karthik, B.; Purushothamreddy, A. The smart irrigation system using IoT. Int. Res. J. Eng. Tech. 2021, 8, 462–468. [Google Scholar]
  19. Yusuf, S.D.; Comfort, S.L.D.; Umar, I.; Loko, A.Z. Simulation and Construction of a Solar Powered Smart Irrigation System Using Internet of Things (IoT), Blynk Mobile App. Asian J. Agric. Hort. Res. 2022, 9, 136–147. [Google Scholar] [CrossRef]
  20. Saban, M.; Bekkour, M.; Amdaouch, I.; El Gueri, J.; Ait Ahmed, B.; Chaari, M.Z.; Ruiz-Alzola, J.; Rosado-Muñoz, A.; Aghzout, O.A. Smart Agricultural System Based on PLC and a Cloud Computing Web Application Using LoRa and LoRaWan. Sensors 2023, 23, 2575. [Google Scholar] [CrossRef] [PubMed]
  21. Pereira, G.P.; Chaari, M.Z. Comparison of Blynk IoT and ESP Rainmaker on ESP32 as beginner-friendly IoT solutions. In Proceedings of the 2022 International Conference on Internet of Things (ICIOT 2022), Honolulu, HI, USA, 10–14 December 2022. [Google Scholar] [CrossRef]
  22. Carberry, A. How to Choose the Best Time for Watering a Garden: 7 Steps. Available online: https://www.wikihow.com/Choose-the-Best-Time-for-Watering-a-Garden (accessed on 14 December 2022).
  23. When to Water—Southern Living Plants. Available online: https://southernlivingplants.com/planting-care/when-to-water/ (accessed on 14 December 2022).
  24. Hourly Forecast for Doha, Qatar. Available online: https://www.timeanddate.com/weather/qatar/doha/hourly (accessed on 4 March 2023).
  25. Qatar Historical Past Weather | Weather25.com. Available online: https://www.weather25.com/asia/qatar?page=past-weather#day=2&month=3 (accessed on 4 March 2023).
  26. What Humidity Do Houseplants Need?—Be.Green. Available online: https://be.green/en/blog/what-humidity-houseplants-need (accessed on 13 June 2023).
  27. Doha March 2023 Historical Weather Data (Qatar)—Weather Spark. Available online: https://weatherspark.com/h/m/150272/2023/5/Historical-Weather-in-May-2023-in-Qatar#Figures-ColorTemperature (accessed on 13 May 2023).
  28. Waterproof Capacitive Soil Moisture Sensor SKU SEN0308-DFRobot. Available online: https://wiki.dfrobot.com/Waterproof_Capacitive_Soil_Moisture_Sensor_SKU_SEN0308 (accessed on 23 February 2023).
  29. Koyuncu, H.; Gunduz, B.; Koyuncu, B. Construction of 3D Soil Moisture Maps in Agricultural Fields by Using Wireless Sensor Networks. Gazi Univ. J. Sci. 2021, 34, 84–98. [Google Scholar] [CrossRef]
  30. Yudhana, A.; Kusuma, A.C. Water quality monitoring at paddies farming based on android. IOP Conf. Ser. Mater. Sci. Eng. 2018, 403, 012042. [Google Scholar] [CrossRef]
  31. DHT22 Temperature-Humidity Sensor—Waveshare Wiki. Available online: https://www.waveshare.com/wiki/DHT22_Temperature-Humidity_Sensor (accessed on 13 June 2023).
  32. G3-4 Water Flow Sensor | Seeed Studio Wiki. Available online: https://wiki.seeedstudio.com/G3-4_Water_Flow_sensor/ (accessed on 23 February 2023).
  33. Odiagbe, M.; Eronu, E.M.; Shaibu, F.E. An Effective Water Management Framework Based on Internet of Things (IoT) Technology. Eur. J. Eng. Res. Sci. 2019, 4, 102–108. [Google Scholar] [CrossRef] [Green Version]
  34. Mitras Trading Co. WLL | All Purpose Potting Soil. Available online: https://www.mitraswll.com/all-purpose-potting-soil-OF.html# (accessed on 6 June 2023).
  35. Koehler, K. How to Grow Green Onions: Your Complete Guide. Available online: https://a-z-animals.com/blog/how-to-grow-green-onions-your-complete-guide/ (accessed on 6 June 2023).
  36. Nagahage, E.A.A.D.; Nagahage, I.S.P.; Fujino, T. Calibration and Validation of a Low-Cost Capacitive Moisture Sensor to Integrate the Automated Soil Moisture Monitoring System. Agriculture 2019, 9, 141. [Google Scholar] [CrossRef] [Green Version]
  37. Muzdrikah, F.S.; Nuha, M.S.; Rizqi, F.A. Calibration of Capacitive Soil Moisture Sensor (SKU:SEN0193). In Proceedings of the 2018 4th International Conference on Science and Technology (ICST), Yogyakarta, Indonesia, 7–8 August 2018. [Google Scholar]
  38. DS18B20—Programmable Resolution 1-Wire Digital Thermometer. Available online: https://www.analog.com/media/en/technical-documentation/data-sheets/DS18B20.pdf (accessed on 23 February 2023).
  39. Husni, N.L.; Dampito; Abdurrahman; Evelina; Handayani, A.S.; Rasyad, S.; Anisah, M. Modified Design of Water Metering System. J. Phys. Conf. Ser. 2020, 1500, 012018. [Google Scholar] [CrossRef]
  40. Maia, R.F.; Netto, I.; Tran, A.L.H. Precision agriculture using remote monitoring systems in Brazil. In Proceedings of the 2017 IEEE Global Humanitarian Technology Conference (GHTC), San Jose, CA, USA, 19–22 October 2017; pp. 1–6. [Google Scholar] [CrossRef]
  41. J-Turbo Key Plus Dripper. Available online: https://www.jains.com/PDF/Catalogue/Drip/Dripper/Turbo%20Key%20Plus.pdf (accessed on 6 April 2023).
  42. Dwivedi, A.; Kumar, P.; Kumar, P.; Kumar, Y.; Sharma, Y.K.; Kayastha, A.M. Soil sensors: Detailed insight into research updates, significance, and future prospects. In New Pesticides and Soil Sensors; Grumezescu, A.M., Ed.; Academic Press: Cambridge, MA, USA, 2017; pp. 561–594. ISBN 978-0-12-804299-1. [Google Scholar]
  43. Humidity, Temperature and Watering | Space for Life. Available online: https://espacepourlavie.ca/en/humidity-temperature-and-watering (accessed on 13 June 2023).
  44. Iannotti, M. How to Grow Shallots. Available online: https://www.thespruce.com/growing-shallots-in-the-vegetable-garden-1403464 (accessed on 25 April 2023).
  45. Russel, K. Water Inches—The Daily Garden. Available online: https://www.thedailygarden.us/garden-word-of-the-day/water-inches (accessed on 25 April 2023).
Figure 1. Overview of the IoT-enabled smart drip irrigation system [21].
Figure 1. Overview of the IoT-enabled smart drip irrigation system [21].
Iot 04 00012 g001
Figure 3. Flow chart of the IoT-enabled smart drip irrigation system.
Figure 3. Flow chart of the IoT-enabled smart drip irrigation system.
Iot 04 00012 g003
Figure 4. DFRobot moisture sensor.
Figure 4. DFRobot moisture sensor.
Iot 04 00012 g004
Figure 5. DS18B20 waterproof temperature sensor.
Figure 5. DS18B20 waterproof temperature sensor.
Iot 04 00012 g005
Figure 6. DHT22 air humidity sensor.
Figure 6. DHT22 air humidity sensor.
Iot 04 00012 g006
Figure 7. FS300A G3/4 inch water flow sensor.
Figure 7. FS300A G3/4 inch water flow sensor.
Iot 04 00012 g007
Figure 8. Hunter PGV-100G solenoid valve.
Figure 8. Hunter PGV-100G solenoid valve.
Iot 04 00012 g008
Figure 9. Preparing the acrylic container. (a) Curing the super glue and silicone. (b) Drainage holes drilled in the base of the container.
Figure 9. Preparing the acrylic container. (a) Curing the super glue and silicone. (b) Drainage holes drilled in the base of the container.
Iot 04 00012 g009
Figure 10. Adding soil to the container.
Figure 10. Adding soil to the container.
Iot 04 00012 g010
Figure 11. The addition of drip irrigation pipelines.
Figure 11. The addition of drip irrigation pipelines.
Iot 04 00012 g011
Figure 12. Measuring the temperature of a hot cup of water using the DS18B20 sensor and a thermal camera. (a) Temperature measured by the DS18B20 sensor. (b) Temperature measured by the thermal camera (FLIR C3-X, manufactured by Teledyne FLIR LLC, Wilsonville, OR, USA).
Figure 12. Measuring the temperature of a hot cup of water using the DS18B20 sensor and a thermal camera. (a) Temperature measured by the DS18B20 sensor. (b) Temperature measured by the thermal camera (FLIR C3-X, manufactured by Teledyne FLIR LLC, Wilsonville, OR, USA).
Iot 04 00012 g012
Figure 13. Water tank and pump motor for the irrigation system; (a) 400 US gallon water container; (b) water pump motor covered for water resistance.
Figure 13. Water tank and pump motor for the irrigation system; (a) 400 US gallon water container; (b) water pump motor covered for water resistance.
Iot 04 00012 g013aIot 04 00012 g013b
Figure 14. Plastic container for the smart drip irrigation system. (a) Components of the irrigation system placed in the container. (b) Sealed container ready for outdoor use.
Figure 14. Plastic container for the smart drip irrigation system. (a) Components of the irrigation system placed in the container. (b) Sealed container ready for outdoor use.
Iot 04 00012 g014
Figure 15. Making the irrigation system water- and dust-resistant. (a) Protecting the electronics with an acrylic container. (b) Protecting the solenoid valve and water flow sensor with an acrylic container. (c) Protecting the solenoid wires with a 3D-printed case. (d) Protecting the DHT22 with a plastic case.
Figure 15. Making the irrigation system water- and dust-resistant. (a) Protecting the electronics with an acrylic container. (b) Protecting the solenoid valve and water flow sensor with an acrylic container. (c) Protecting the solenoid wires with a 3D-printed case. (d) Protecting the DHT22 with a plastic case.
Iot 04 00012 g015aIot 04 00012 g015b
Figure 16. Smart drip irrigation system working in the field.
Figure 16. Smart drip irrigation system working in the field.
Iot 04 00012 g016
Figure 17. Final flow chart of the smart drip irrigation system firmware.
Figure 17. Final flow chart of the smart drip irrigation system firmware.
Iot 04 00012 g017
Figure 18. Smart irrigation system used for growing spring onions.
Figure 18. Smart irrigation system used for growing spring onions.
Iot 04 00012 g018
Figure 19. Web dashboard for the smart drip irrigation system. (a) Switches, irrigation data, and temperature graph. (b) Humidity and moisture content graph.
Figure 19. Web dashboard for the smart drip irrigation system. (a) Switches, irrigation data, and temperature graph. (b) Humidity and moisture content graph.
Iot 04 00012 g019aIot 04 00012 g019b
Figure 20. Soil moisture variation for one week.
Figure 20. Soil moisture variation for one week.
Iot 04 00012 g020
Figure 21. Humidity fluctuation throughout the week.
Figure 21. Humidity fluctuation throughout the week.
Iot 04 00012 g021
Figure 22. Temperature fluctuation throughout the week.
Figure 22. Temperature fluctuation throughout the week.
Iot 04 00012 g022
Table 1. Test results of the elemental analysis of the soil [34].
Table 1. Test results of the elemental analysis of the soil [34].
Elemental AnalysisResults
Total organic carbon45.5%
Total organic nitrogen1.40%
Total nitrogen1.40%
Sodium chloride0.76%
Potential of hydrogen (pH)6.7
Electrical conductivity (EC)1.51 dS/m
Cadmium (Cd)<0.01%
Chromium (Cr)<0.01%
Selenium (Se)<0.01%
Carbon nitrogen ratio34:1
Copper (Cu)<0.01%
Lead (Pb)<0.01%
Molybdenum (Mo)<0.01%
Nickel (Ni)<0.01%
Potassium oxide (K 2 O)0.03%
Phosphorus pentoxide (P 2 O 5 )<0.01%
Zinc (Zn)<0.01%
Arsenic (As)<0.01%
Mercury (Hg)<0.01%
Organic matter78.9%
Moisture content42.2%
Table 2. Comparison of the DS18B20 temperature sensor with a thermal camera.
Table 2. Comparison of the DS18B20 temperature sensor with a thermal camera.
TestSubject of Temperature MeasurementTemperature Measured by DS18B20 (°C)Temperature Measured by Thermal Camera (°C)
1Cup of hot water70.070.0
2Cup of room temperature water25.024.3
3Cup of cold water11.512.0
4Dry soil21.521.2
5Wet soil24.023.4
Table 3. Comparison of temperatures.
Table 3. Comparison of temperatures.
Time (GMT+3)Temperature Obtained from timeanddate.com (accessed on 16 June 2023) (°C)Soil Temperature Measured by DS18B20 (°C)Air Temperature Measured by Thermal Camera (°C)
12:00434443
13:004344.543
14:004244.542
15:004243.542
Table 4. Comparison of Temperature.
Table 4. Comparison of Temperature.
Time (GMT+3)Relative Humidity Obtained from timeanddate.com (accessed on 16 June 2023) (%)Relative Humidity Measured by DHT22 (%)
12:001816.9
13:001516.4
14:001414.6
15:001517.1
Table 5. Measured flow rate of the mainline and drippers.
Table 5. Measured flow rate of the mainline and drippers.
Test NumberMainline Flow Rate (lph)Flow Rate of Each Dripper (lph)Total Flow Rate of Eight Drippers (lph)
1160.715.68
2100.594.72
3120.665.28
4100.604.8
5120.665.28
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Pereira, G.P.; Chaari, M.Z.; Daroge, F. IoT-Enabled Smart Drip Irrigation System Using ESP32. IoT 2023, 4, 221-243. https://doi.org/10.3390/iot4030012

AMA Style

Pereira GP, Chaari MZ, Daroge F. IoT-Enabled Smart Drip Irrigation System Using ESP32. IoT. 2023; 4(3):221-243. https://doi.org/10.3390/iot4030012

Chicago/Turabian Style

Pereira, Gilroy P., Mohamed Z. Chaari, and Fawwad Daroge. 2023. "IoT-Enabled Smart Drip Irrigation System Using ESP32" IoT 4, no. 3: 221-243. https://doi.org/10.3390/iot4030012

Article Metrics

Back to TopTop