Project feasibility?

I thought I’d post a question to see if the project I’m contemplating is feasible.

A little background. I have a small piece of property that is off grid. I’m building a small cabin out there that will be powered off solar. I am installing a hydronic radiant floor for heating. Being that I live in Texas my heating requirements will be minimal, and I am planning on using solar hot water collectors for hot water and for cabin heating. I will have a well insulated 1500 gallon reserve hot water tank that will will be heated with the solar hot water collectors.

Being that this cabin will be completely off grid and powered by solar panels and heated with solar thermal collectors I want to make a power efficient home automation system that will do a few things.

First thing I want is a way to monitor the temperature of the solar hot water collectors, compare it against the temperature of the reserve hot water tank, and if the solar hot water collector is hotter than the hot water storage tank and if the hot water tank need additional heating, turn on a pump to run water thru the collectors to raise the temp of the hot water reserve tank.

Next thing I want is a thermostat in the cabin. There will be 2 zones. I want a way to monitor the temperature in each zone, and when needed, turn on a water pump to circulate hot water from the reserve hot water reserve tank through the radiant floor heating system to warm the cabin.

Next I would like a way to monitor my cabin battery voltage and current flowing into and out of the battery.

Lastly I would like to implement a simple security system that can be armed when I'm sleeping, will chime when a door or window is opened, and have a SMS text message feature that can be turned on when I'm away from my property to text me saying that there was an alarm.

I would like to have a small touch screen to control this system. Anything from 3” to 5” would be fine.

A few of the menu buttons I would like to change color based off of their value.

That’s basically what I’m wanting to do, I know it’s way beyond my skill level right now, but I have some time to learn. I’m just wondering if an Arduino Mega would be able to do what I’m wanting. I really want to keep the power requirements low and that is what I think an Arduino based system would be better then something like a Raspberry Pi.

Please let me know if you think this will be possible with an Arduino

I made a few rough templates of the menu driven system I want to make for the LCD touch screen

Home Screen

Security Screen

Thermostat Control Screen

Solar Thermal collector Screen

Battery Bank Monitor Screen

It can be done.

I don't know if you need a Arduino Mega. You could start with an Arduino Uno. During development you might blow the Uno and perhaps you end up using a number of Arduino boards.

The difference in power requirements of the Arduino or the Raspberry Pi would not be that big. You need additional hardware anyway.

Turning on pumps is easy. You could use relays or power mosfets.
Do you know PID control ? Arduino Playground - PIDLibrary
Measuring voltages is also no problem.
For currents you could use hall current sensors.
SparkFun Current Sensor Breakout - ACS723 (Low Current) - SEN-14544 - SparkFun Electronics

Measuring temperatures is reliable with a digital sensor like the DS18B20. You need a library to read its temperture.

Sending SMS and the touch screen if for advanced users.
You can take a look at www.sparkfun.com and www.adafruit.com what kind of hardware can be used with the Arduino.

This is a touch screen, 2.8 18-bit color TFT LCD with touchscreen breakout board [ILI9325] : ID 335 : $40.00 : Adafruit Industries, Unique & fun DIY electronics and kits

Shields for sms:

http://tronixstuff.wordpress.com/2011/01/19/tutorial-arduino-and-gsm-cellular-part-one/
Some use an old mobile phone to send the sms.

What about safety ?
Could heat build up somewhere ?
What if the pump would be turned on, and not turned off ?

Safety will be somewhat of a concern, but I'm not dealing with extreme temps. The solar hot water collectors will be angled for the winter months, and as such will not be very efficient in summer when there is not nearly as much demand for hot water.

Additionally the solar collectors will only generate around 140F water so no worries for a steam explosion or anything like that.

But, if I'm going to have a GPRS Shield anyway, it would make sense to have SMS alerts sent when certain parameters are exceeded on both the solar PV and the Solar Thermal systems.

The motor control, temp reading, hall sensors, and voltage reading all seem pretty straight forward

Where I get lost is in the implementation of a touch screen to control the system, printing the values from the sensors onto the scren, and implementing a GPRS board to send GPRS alerts.

I have a lot to learn. Right now I have the Adruino Uno starter kit and am going thru different lessons to learn how the Arduino works. I’m a Disabled Vet so I have plenty of time and this project gives me something to do.

I thought the Mega might be better because of the additional pins and the additional memory. A lot of the LCD boards I have looked at on line use most of the pins on an uno.

Personally, I would use some type of tablet for the controller/touchscreen/display. Mainly because it is already meant for this type of thing and has an OS and API available (with windowing system.) So programming a menu based system for them is simple compared to trying to implement it from scratch yourself. They are portable and battery operated. They use ROM so they are generally quick to power up and go. And they can be easily mounted to the wall, set on a stand, etc... So, for example at night, it can be in the bedroom on a bedstand beside you and on the wall in the kitchen during the day.

Android and Windows CE tablets in the 7" flavor are not bad price-wise at all. Both have many free tools to write programs with.

I would get something with bluetooth so that I could use serial communication between my tablet and control system.

The majority of the time, you will either be running off battery for the tablet or trickle charging it, so I doubt that it would add a great deal of power demand to your system. If that were a concern, I bet a simple 12V solar panel meant for automobiles would be enough to keep the tablet and arduino controller running without tapping anything at all off your main system.

Not necessarily advice, but an idea that I had for my own home control system... Essentially use a tablet like above, and have some type of recognition of the room that I am in to change the controls and functions to what I am likely to use at that time.

For example, when I have the tablet in the kitchen, it would switch to a recipe book, kitchen timers, etc...

When I am in the den, it would switch to multimedia controls and possibly an ebook reader, and when I am in the bedroom, the screen would change to a low brightness system with alarms, security, etc..

I was planning to do this either through dock connectors that have smarts in them or through RFID in each room.

Do you know an Android App, that can be used with Bluetooth, without programming an new App ?

Not right off the top of my head. But I have seen several apps that allow you to set up buttons and output serial commands. But, the OP is looking for more of a dashboard here, so probably not good enough and a custom solution is probably unavoidable.

This looks promising:
http://www.amarino-toolkit.net/index.php/getting-started.html
Also, there is some work for getting processing running on Android, IIRC.

And finally, there is always the possibility of just using a web server and logging in that way from a tablet.

All of those options beat trying to develop a graphical driver, windowing system, and touchscreen interface from the low level, IMHO. Plus you get a bigger screen, battery, enclosure, etc for less than $100

http://wiki.processing.org/w/Android