Click These:

Saturday, May 10, 2014

Garden Watering System Using Arduino and 595 Shift Registers

hey everyone, i just wanted to write about a project i've been working on recently...

a while ago, I was inspired by the 'Garden Arduino' project i found on Make.com and Instructables.com

http://www.instructables.com/id/Garduino-Gardening-Arduino/

http://makezine.com/projects/make-18/garduino-geek-gardening/

upon reading about this project, i quickly set to building it... at first i didn't have a water pump to hook up to the circuit, so i plugged in the nearest thing i could find instead... i ended up having a plant that was controlling my lava lamp. whenever it needed water, it would kick on the lamp... i would water the plant, the lava lamp would turn off until the plant needed water again. this alone was pretty cool...

eventually i got a small water pump, enough to deliver a little trickle of water to a plant, i think i pulled it out of a small garden fountain type thing... i replaced my lava lamp with a water pump and VOILA! self watering plant.

at this point, my plant started doing pretty nicely, but family members were concerned about the high voltage electrical equipment being around water like that... (the circuit for the project requires relays that control 120 volt AC current - potentially very dangerous when mixed with water) anyway, long story short, i decided to take apart the project due to the concerns that were raised by those around me. everyone slept more soundly knowing that there was less potential for some sort of electrical fire or something caused by a water spill or a bare wire, etc...

even though i ended up taking it apart, i never put the project completely out of my mind... i thought to myself that i'd like to build that project again, except even BETTER...

i thought about how things were with that project and how i might do it differently... for instance...

-using a water pump that actually has some decent pressure...

-detecting the moisture level for the soil separately  for each plant and then be able to route water to exactly the plant that needs it...

-LCD display for showing sensor readings and other info.

-some way to interact with the garden controller after uploading, so that you can change variables manually such as watering time, minimum soil moisture level that triggers watering, how many plants are hooked up to controller, which plants are actively being watered or are suspended from watering for maintenance or other reasons, etc...

-use 9volt or 12 volt solenoids and pump so that there is much less danger of between the water and the electrical circuits.

...i put this project on the backburner for quite a while, but for the last few months i had been researching and making strategic purchases with this project in mind... acquiring some 595 shift registers for the specific purpose of expanding my digital outputs for controlling relays that would eventually be hooked up to solenoids and a water pump...

i decided to use half of the shift register outputs for controlling the relay bank (pump, solenoids), and the other half for controlling which plant soil moisture sensor is active.

so far i've gotten a better pump, some solenoids, water lines, water line connectors and adapters, duct tape, electrical wire, shift registers, analog multiplexers, LEDs, resistors, some galvanized nails, an LCD screen,  9v and 12v DC adapters, electrical tape, solder...

i'm starting to get things arranged and things are finally coming together really nicely. in my next post i'll write up how i'm building it, show some schematics and the code i wrote to get it all working, and offer ideas for other things i might be able to add to it, or other ways to enhance it.

thanks for reading. subscribe and comment please. suggestions and feedback appreciated.