I am looking to use a Pi to replace my home heating thermostat/programmer, using a 8 or so LM35's and the same number of outputs (possibly as relays connected to standard zone valve or solenoids to work with 22mm copper piping).
In the future this will possibly be expanded to also monitor the temperature of a solar water heater, and control mixing of water with a domestic hot water tank though this shouldn't be to much different to the room stat I am looking to do now. I.e if temperature of HWT is less then set amount and water of solar heater is greater then that of HWT, let the solar water circulate, if its not, then fire up boiler...
Looking through the tutorials, there are a number of projects that i think will cater for the hardware side of my requirements...
IO Expander (prob 16) http://learn.adafruit.com/mcp230xx-gpio-expander-on-the-raspberry-pi
Real time clock http://learn.adafruit.com/adding-a-real-time-clock-to-raspberry-pi
ADC using LM35 instead of the POT http://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi/connecting-the-cobbler-to-a-mcp3008
Use of the LCD will be to display temperature of various sensors, current time, and the buttons to adjust the current selected "room" and adjust the predefined temperature.
IO expander to give me sufficient I/O connections for the 16 required for the heating system (8 in and 8 out)
RTC to keep time in case of power outage etc and not being able to connect to internet to get the current time.
The ADC to convert the voltage from the LM35 to a digital value...
a)Will all of these work together from i2c side?
b)would it be best to use a number of ADC's connected to the IO Expander for the inputs from the LM35? ( ie PI -> expander -> ADC -> LM35)
c)Any suggestions for method of controlling the relay or solenoid? Couldn't find any tutorials for this sort of thing...
d)Any other hints or tips to bring the above together?
Basic setup will be as follows:
R-Pi, in its own box (hidden away near the boiler)
the LCD on its own in a box in a convenient location (eg mounted in hallway)
8 or so LM35's in their own enclosures in various rooms
Overall the system will have a by-pass to allow a minimum temperature to be maintained should the R-Pi setup fail.