Industrial manufacturing
Industrial Internet of Things | Industrial materials | Equipment Maintenance and Repair | Industrial programming |
home  MfgRobots >> Industrial manufacturing >  >> Manufacturing Technology >> Manufacturing process

Smart Arduino-Driven Automatic Watering System

Components and supplies

Smart Arduino-Driven Automatic Watering System
Arduino UNO
×1
1/4'' Carbon Arc Gouging Rods
×2
Solenoid Valve
×2
IRF640 Mosfet
×2
Smart Arduino-Driven Automatic Watering System
Resistor 220 ohm
×2
680 Ohm Resistor
×2
Smart Arduino-Driven Automatic Watering System
Jumper wires (generic)
×1
Smart Arduino-Driven Automatic Watering System
1N4007 – High Voltage, High Current Rated Diode
×2

Necessary tools and machines

Smart Arduino-Driven Automatic Watering System
Soldering iron (generic)
File (generic)

Apps and online services

Smart Arduino-Driven Automatic Watering System
Arduino IDE

About this project

During the hottest months of the summer, plants can dry out, and leave a once colourful garden completely dead. Watering by hand uses up precious time in our busy schedules, which most of us cannot afford. Also, hand watering wastes water, a precious resource, especially during these months. Here, this system is designed to take the hassle out of watering, by watering only when the soil becomes dry, all without manual intervention.

How It Works

Soil moisture is read using an Arduino Uno, via a pair of carbon (graphite) electrodes inserted approximately 10 cm into the ground. The moisture level is read as a voltage, by passing a current through the rods and the soil. As the soil moisture decreases, the voltage read increases, activating a valve to water the area. On the contrary, as the soil becomes moist enough, the conductance increases, the voltage across the rods decreases, and the valve is turned off.

Prepare the Moisture Sensor

First, snap the arc gouging rod in half, then remove the copper jacket from the graphite core using a file, leaving 5 cm of copper at the top. Solder a piece of 20 gauge copper wire to the copper part, which will connect the sensing rod to the Arduino. Ensure the wire is long enough to go from the plant's location to the control hardware. Lastly, insert the rods into the ground beside plant to be watered, keeping the copper above the soil.

Smart Arduino-Driven Automatic Watering System

Setup the Arduino

The code for this project is provided below. Customize it for the number of rods and output valves needed. Auxiliary electronics will need to be connected as shown in the schematic, and component values shown are a general guideline and do not need to be exact. The threshold value in the code will need to be adjusted based on the soil characteristics in your area.

Smart Arduino-Driven Automatic Watering System

Next, Connect pins 4 and 8 to the gates of the two transistors. A transistor such as an IRF640, TIP120 or similar will work well to switch the solenoid valve. To protect the transistors, connect diodes in reverse polarity across the solenoids.

Powering the Project

A DC 12V mains isolating power supply, battery or solar panel can be used to run it. For safety reasons, non-isolating wall adapters must not be used as they will pose a shock hazard since live mains current can travel through the electronics and into the ground.

Putting It All Together

Install the Arduino and auxiliary electronics in a waterproof box and the solenoid valves in a separate box. Connect the hoses, power on the system and adjust the sensor rod depth for optimal results. Position the hose far enough away from the sensor as to ensure the plant is watered thoroughly before shutting off.

Note on using metal electrodes

Metal electrodes may be convenient, but they can cause problems and should be avoided. As a current is passed through the soil to sense moisture, the metal breaks down, corroding and leaching into the soil. The electrode's resistance will increase, giving inaccurate dry/wet readings and contaminating the soil with metal ions which can be detrimental to plant health. If the arc gouging rods are unavailable, try extracting the carbon rods from carbon-zinc batteries or a thick pencil lead.

Next Steps

This project can be integrated with with an ESP8266 unit to allow for remote control over the internet. As well, a custom 3D printed case can be used to better fit the hardware components more neatly and efficiently.

And there it is! Please leave your feedback and improvement suggestions in the comments below, I'd highly appreciate it!

Code

Arduino code for this project
Works with any Arduino Uno, with auxiliary components as shown in the schematic.https://github.com/MansonHau/AutoWateringSystem/blob/master/Moisture_Detection.ino

Schematics

Complete circuit for this projectSmart Arduino-Driven Automatic Watering System

Manufacturing process

  1. Build an Italian Word Clock with Arduino Nano, NeoPixel, LCD, and RTC
  2. Arduino-Powered Automatic Plant Watering System
  3. Smart Home Plant Watering System Powered by Arduino Nano
  4. Build a Reliable Sigfox kWh Meter with Arduino MKR Fox 1200
  5. Bluetooth-Enabled Temperature Monitor with Arduino Nano
  6. Touch‑Free Gesture Lock: Secure Access with APDS‑9960 and Arduino
  7. Arduino Nano Companion Kit – Essential Components & Tools for DIY Electronics
  8. Real-Time Heart Rate Monitoring System with Arduino & Infrared Sensors
  9. A Comprehensive Guide to Automatic Transmission Systems
  10. Automatic Lubrication Systems: How They Work and Why They Matter