This system is for automating watering plants at home, it release you from manually watering the plants and it can save water and do the watering your garden more precise.
The software logic uses moisture light and temperature sensors to activate solenoid valve or/and water pump.
It have button to change sensor reading value display and water information on tft display. And Other button to change working mode, it can work on one of the modes: sensor mode, schedule mode or manually. and Third button for general purpose (watering cancel, set tank state and load config ).
The system have SD card for storing configuration information (CONFIG.TXT) and watering log file (DATALOG.CSV).
The config file holds the system property values, key value example :
- lastWateringDate 13:38:58 19/9/2021
- sensorLastWateringDate 09:44:52 1/1/1970
- moistureWateringThreshhold 29
- lightWateringThreshhold 100
- wateringTime 120
- schWateringTime 120
- schWateringFrequency 86400
- schLastWateringDate 08:49:53 22/9/2021
- waterReservoirState 3.30
- flowRate 0.01
- defaultMode 1
A CLI logic was implemented throw Serial interface, commands :
- log - print log file to terminal
- log.del - delete log file
- cfg - print config info to terminal
- time – show system time
- time.unixtime - set time
- moisture.% - sets moisture Watering Threshhold
EXPANDED TECHNICAL DETAILS
Precision Agriculture at Home
This Smart Irrigation system optimizes water usage by only watering when necessary.
- Soil Analysis: Features a Capacitive Soil Moisture sensor which provides a more stable reading than resistive probes. The Arduino samples the moisture level and compares it against a user-defined "Dry" threshold.
- Environment Monitoring: Incorporates a DHT22 sensor to measure ambient temperature and humidity, adjusting the duration of the watering cycle based on the heat.
Actuation Stage
- Pump Control: Managed via a 12V Solenoid Valve and a DC water pump connected through a Relay Module.
- Safety: Includes a "Rain Sensor" override; if it's currently raining, the system automatically skips the scheduled watering to conserve resources.