The aim of the basic horticulture controller is to control the water supply to the planter boxes. It’s basically a limited controller, in the sense that I can either turn the water supply on or off, and I can only increase the soil moisture content and cannot decrease it actively. I tried a couple of cheap resistive soil moisture sensors but found them too inconsistent, and they corrode easily. There are some online designs for capacitative sensors, but I was curious to try the VG400 sensors from Vegetronix. Positives: consistent, do not corrode, and low power. Negatives: they’re expensive. There are a couple of additional negative points which I discovered the hard way and aren’t anywhere on their website. I’ll discuss them later.
At some point I’ve also wanted to install some kind of greenhouse / temperature control, so I’m also using the DS18b20 temperature sensors. I’m using the waterproof version so that I can insert the probes in the soil. The actuators are 12V solenoid valves. The control board is shown below.
The wiring is pretty terrible; let’s just call this Control Board Mark I. The blue terminal blocks are for the solenoid valves, and temperature and moisture sensors. The solenoid valves are controlled with a basic TIP120 transistor and 1N4004 diode to prevent induced current feeding back into the Arduino. A detailed switching circuit is given here. I’m also using an SD card adapter for data logging purposes and an nRF24L01+ transceiver for sending data to a remote unit (I bought a bunch of these together; they’re really very useful).
On the right is the CD74HC4067 multiplexer, because I’m running short of digital I/O pins on the Arduino, between the SD card logger, transceiver, and solenoid controls. Also, I found out pretty early that it’s really hard to use more than one VG400 sensor if they’re placed in neighboring boxes, because the readings can tend to interfere with each other (RF, according to the manufacturers). So I needed to power them on and off individually. Finally, I needed additional pins for the voltage readout from the VG400s.
I’ll post a detailed circuit diagram with a later entry on Control Board Mark II.

Pingback: Smart Horticulture, Part 3: Data Collection | Prasenjit Sengupta, Ph.D.