Prototype for kitchen garden automation (under construction)

1. Abstract

Some times ago, I developed a first basic prototype to automate watering of my kitchen garden. The main purpose of this project was to reduce the water consumption due to the garden watering. Instead of using a manual watering with some water hoses, the first step (three years ago) was to deploy a drip watering irrigation system with manual shut-offs. This basic prototype, based on a Microchip PIC16F didn't provide any communication interface and all tasks (start/stop watering) were hardcoded. So, each time I wanted to change the timing, I had to re-flash the PIC... but it did the job ;-)

Today, I want to enhance this prototype using my faithful MBED card to build a new one with communication functionalities, remote commands mechanism, sensors and actuators support, including sensors data collection and triggered actions.

2. Principles

The main ideas which lead to this new prototype were:

  • To replace my old PIC16F by the more powerful MBED, moving from Assembler to C++ (Youpi!!!!!)
  • To enhance my prototype with Ethernet communication, sensors, actuators... and also a radio communication module, 5000 m2 is quite large
  • To extend automation to exterior lights, the garage portal, swimming pool pump and Ph/Acid levels...
  • To automate the future hen house
  • And to manage a solar power supply, including sun tracking, regulation... And to conclude: a lot a tasks to be done ;-(

NOTE: Do not hesitate to add add your own requirements ;).

3. Fonctionalities

This clause tries to organize a little beat the principles listed above.

3.1 Communication module

For now, the communication will be based on wired Ethernet only. Later on, I'll introduce Wi-Fi and radio communication support. I have nothing to add, all is already well explained here.

3.2 Date/Time module

My first prototype used a RTCC (the well known DS1707) to set the time base but I got an important drift. Introducing a communication mechanism leads me to improve my time base using a RTCC (MCP9803) synchronized on a time server. And why should I not use a GPS module as backup in case of the time server becomes unreachable? Looking on my mess, I found one: a UBlox UP501 module.

3.3 GPS module

This GPS module uses is an Faxtrax UP501, with a default speed of 9600bps.

3.4 Shut-off automation

3.5 Swimming pool automation

3.x Power supply module

NOTE: The automatic watering uses Gardena 24V~ electro-valves.

X. Schematics

For circuits and PCBs design, I uses Designspark PCB. Here is the the full project: (comming soon)

X.1 MBED part

Following design describes the MBED part of the prototype: (coming soon)

X.2 I2C part

Following design describes the I2C part of the prototype: /media/uploads/Yann/i2c.pdf

X.3 SPI part

Following design descibes the SPI part of the prototype: (coming soon)

Y. Compile toolchain

I used the GCC Arm embedded compile toolchain.

Z. References


1 comment on Prototype for kitchen garden automation (under construction):

02 Mar 2015

Hello,

How are you getting on with your project? I am very impressed with your plan as I setting out on something similar but less thorough. You grandeur is encouraging me.

Is the pH/acid levels meter for a swimming pool?

Claire

Please log in to post comments.