Automatic Plant Watering System With Arduino

Are you forgot to water your plants? It is a big problem in those days. We all are busy in our daily life. So most of us forgot to maintain home plants like indoor and outdoor. By adding an Automatic Plant Watering System in the garden or agricultural field, we can help all plants reach their fullest potential as well as reduce water wastage.

With the help of Arduino and soil moisture sensors, we have designed a system that is ideal for every plant in the yard. With this system, we can able to water our plants automatically when the soil is dry. This system consists of a soil moisture sensor, a mini DC water pump, a water flow controller and an automation system.

Must Read Automatic Plant Irrigation System Using 555 Timer IC

Principle Behind Automatic Plant Watering System

We all know when the soil gets dry, the plants need water for living. So we set a threshold value of the moisture level of the soil. When the moisture level goes the below threshold value, the pump spread water on the soil. The moisture is sensed by the moisture sensor.

After spreading water the moisture level goes up, and the sensor sends a signal to the pump to stop the water flow. By using this method, the plants get automatically watered.


Automatic Plant Watering System

Circuit Diagrams

Automatic Plant Watering System Circuit Diagram
Automatic Plant Watering System Circuit Diagram

Components Required

  • Arduino
  • Soil Moisture Sensor
  • BC547 NPN Transistor
  • 5V Relay
  • LED (Red, Green)
  • 3-6V Mini DC Water Pump
  • 1KΩ Resistor (1KΩ, 100Ω-x2)
  • IN4007 PN Diode
  • 9V Battery
  • 5V Battery

Circuit Connection

Now we are going to connect all the components shown in the above circuit diagram. This is so simple circuit to construct.

First, connect the VCC of the relay to the 5V pin of the Arduino (Or external 5V power source). Connect Input of the relay module to pin 3 of the Arduino. Connect the moisture sensor to the comparison module.

Then connect Ao on the comparison module to the Arduino Ao pin. The VCC of the comparison module to 3.3V on the Arduino. Now connect the NC (Normally Closed) of the relay to the DC pump’s one terminal. After that positive terminal of the battery should be connected to the COM on the relay. At last, connect all the ground lines to the GND of the Arduino.
Now we just need to program the Arduino.

Working Principle of Automatic Plant Watering System

The working principle of this project is very simple. The moisture sensor senses the moisture level of the soil and when the sensor senses a low moisture level it automatically switches on the pump. The Arduino helps this system in this process. The pump supplies water until the microcontroller sends another signal to switch off the pump. After increasing the moisture level of the soil, the sensor switch off the pump. This whole process continues while power is on in the circuit.

Advantages of Automatic Plant Watering System

  • The main advantage is that it not requires any human to operate.
  • It can reduce the wastage of water.
  • It protects plants from runoff of water and nutrients.

Disadvantages of Automatic Plant Watering System

  • Naturally, it helps plants to water regularly. But while talking about succulent plants, it needs not be watered regularly. But according to the watering system, it waters frequently which can damage the roots of the succulent plants.

Arduino Code

4 thoughts on “Automatic Plant Watering System With Arduino”

  1. There are two components in the thumbnail. One is main soil sensor which two ports will come to its main analog digital converter port sens1 and sens2 that is drawn in diagram. And from there the 4 pins which is Vcc, gnd, analog and digital pin which is connected to the Arduino board. These are also drawn.

  2. Hi what is the component between the soil sensor and the aurduino board. it is not shown in the circuit diagram.

    Correct me if i am wrong

Leave a Comment