Automated Irrigation System

1. Introduction. Description of the project

In recent years, smart agriculture has experienced considerable developement, productivity and efficiency, being the main descriptive terms of this process. With the developement of controlled technology a lot of methods and systems have been developed for monitoring the paramters specific to agriculture. In this case, farmers can control the main factors that influence the agricultural process, obtaining a maximum productivity, advantageous from an economic point of view.

In this project we are using an ESP32 CH340 developement board connected to a soil moisture sensor, a DHT11 temperature and humidity sensor and a water pump and other peripherals to create an smart irrigation system redesigned on a smaller scale, for a potted plant that can be found in everyone's home.

For programming the board I used Arduino IDE, being compatible and having a special set of libraries for ESP32. The soil moisture sensor is used to measure the moisture level of the soil, and based on a predefined threshold it automatically waters the plant using the submersible water pump.

Also to keep the plant in a friendly enviroment (a good temperature) we are using a DHT11 sensor to read the temperature and humidity, and using a cooling fan and a heating element (incandescent light), based on a set threshold we can chage the temperature in the plant proximity.

I created a Firebase database to store all extracted values, and I implemented a Web Application to have a better vizualization on the data using figures such as gauges and linear graphs.

2. Hardware components and wiring

The hardware components needed for this project are:

  • 1 x ESP32 CH340
  • 1 x Submersible Water Pump
  • 1 x 5V / 3V3 regulators board
  • 1 x Soil Moisture Sensor
  • 1 x DHT11
  • 1 x 12V DC Power Supply
  • 1 x 12V Cooling Fan
  • 1 x Lightbulb
  • 2 x 2 channel Relay
  • 1 x Breadboard
  • Jumper wires
  • Micro USB data cable
  • PC with an internet connection and with Arduino IDE
  • Here is how the setup looks like:

  • Here is a better view to the connections:

3. Software implementation

  • The code for the ESP32 was created in ArduinoIDE.

  • Firebase database fetching data from the Esp32:

  • The web application cards and gauges:

  • The web application charts:

  • The web aplication table:

4. Demonstration

This setup was implemented to measure the moisture level and the other parameters once a day. To create a demo video, I changed the thresholds in the ESP32 code, so that the room temperature and the moisture of the soil don't create any difficulties. At the start of the wiki is a Youtube link to the demo.

5. Conclusion

In conclusion this project is an interesting way to see how the embedded systems and the Internet of Things can be used in our every day life and what benefits we could get from them and last but not least it is a great way to learn more about senors, circuits, protocols and how to implement a Firebase DB and creating a web application. The main use of this project is to implement an easy way to monitor the soil moisture, temperature and humidity of a plant, also being convenient and cost-effective.

6. Resources

iothings/proiecte/2022/automated_irrigation_system.txt · Last modified: 2023/01/20 09:10 by razvan.negulescu
CC Attribution-Share Alike 3.0 Unported Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0