Automatic Plant Watering System

Introduction

Watering plants regularly can be tedious, and overwatering or underwatering can harm plant growth. An Automatic Plant Watering System uses soil moisture sensors and microcontrollers to detect the moisture level of soil and automatically water the plants when required.

This system is highly useful for home gardening, greenhouse automation, and smart agriculture.


Objective of the Project

  • To automatically water plants based on soil moisture
  • To save water and prevent overwatering
  • To reduce manual effort for plant care
  • To provide a simple smart agriculture solution

Working Principle

  1. A soil moisture sensor detects the dryness of soil
  2. Sensor data is read by a microcontroller (Arduino / ESP32)
  3. When the soil is dry, the water pump is activated to water the plant
  4. Once the soil is sufficiently moist, the pump automatically stops
  5. Optional: IoT integration allows remote monitoring of soil moisture

Components Required

  • Arduino Uno / ESP32
  • Soil Moisture Sensor
  • Submersible Water Pump
  • Relay Module (5V)
  • Power Supply / Battery
  • Connecting wires and small water container

Block Diagram

Soil Moisture Sensor
          ↓
      Arduino / ESP32
          ↓
     Relay Module
          ↓
     Water Pump
          ↓
      Plant Soil

Circuit Connections

Soil Moisture Sensor

VCC → 5V
GND → GND
AO  → A0 (Arduino Analog Pin)

Relay Module

IN  → D7 (Arduino Digital Pin)
VCC → 5V
GND → GND
COM → Power to Pump
NO  → Pump +
NC  → Not Used

Water Pump

Connect via relay COM and NO pins
Power supply to pump

Arduino Code (Automatic Plant Watering System)

#define sensorPin A0
#define relayPin 7

int soilMoistureValue = 0;
int threshold = 500; // Adjust according to soil

void setup() {
  pinMode(relayPin, OUTPUT);
  digitalWrite(relayPin, LOW); // Pump off initially
  Serial.begin(9600);
}

void loop() {
  soilMoistureValue = analogRead(sensorPin);
  Serial.print("Soil Moisture: ");
  Serial.println(soilMoistureValue);

  if (soilMoistureValue < threshold) { // Soil is dry
    digitalWrite(relayPin, HIGH); // Turn on water pump
    Serial.println("Pump ON - Watering Plants");
  } else { // Soil is wet
    digitalWrite(relayPin, LOW); // Turn off water pump
    Serial.println("Pump OFF - Soil Moist");
  }

  delay(5000); // Check every 5 seconds
}

Code Explanation

  • Soil moisture sensor reads the moisture content in soil
  • If soil is dry, the microcontroller activates the relay, turning on the pump
  • If soil is moist, the pump is turned off automatically
  • Threshold can be adjusted depending on soil type

Advantages

  • Automatic and hands-free plant watering
  • Saves water and prevents overwatering
  • Reduces manual effort for gardening
  • Simple and cost-effective

Applications

  • Home gardening
  • Greenhouse automation
  • Urban farming projects
  • Educational projects on smart agriculture

Future Enhancements

  • IoT integration to monitor soil moisture remotely
  • Mobile app notifications when watering occurs
  • Multiple pump system for multiple plants
  • Solar-powered water pump for sustainable gardening

Conclusion

The Automatic Plant Watering System is an excellent mini + innovation project for smart agriculture and home gardening. It ensures that plants receive the right amount of water, saves time and water, and demonstrates a practical application of microcontrollers and sensors.

Leave a Reply

Shopping cart

0
image/svg+xml

No products in the cart.

Continue Shopping