Thursday, July 08, 2010

Smarter Heating Control?

Central heating control systems historically tend to be incredibly simple, responding to a single, often badly located thermostat, and a time of day timer, which is often out of kilter with the hours we actually need the heating to be effective.

Using low cost, open source hardware, can we improve on the levels of control and make significant savings to the amount of energy we use heating our homes?

About 6 months ago in January, when we were up to our knees in snow, I started thinking about how our simple central heating systems could be modified to make them more efficient and to use less gas.

We have all strived to reduce our electricity consumption - by turning off unnecessary equipment, but with gas heating, we could be wasting hundreds of kWh and not even realising it.

Before I dive into more sophisticated electronic controls - I will point out that improved insulation and draughtproofing will always offer the most cost effective reduction in domestic heating fuel usage.

The extent to which we heat our houses is entirely subjective depending on our personal level of comfort and the house occupancy, which is a function of lifestyle. For example, a modern well insulated home occupied by a professional couple might need to run the heating for two hours in the early morning and a few hours in the evening, whilst for someone working from home, or at home with a young family might need constant background heating.

The first thing to do is to measure the existing usage, in terms of time of day, internal temperatures needed for comfort and absolute gas consumption, and relate these to the average outside temperatures.

In order to make use of low cost open source hardware, I have chosen the Arduino to form the basis of my home heating monitoring system. As well as low cost, it is easy to interface to, relatively easy to program and benefits from the vast experience of a very large user base. With the use of a series of expansion shields, such as the ethernet shield and the Real Time Clock/sensor/SDcard shield, it becomes a useful cost effective tool for on line, real time datalogging. It can function as a standalone system - without the need of a PC or laptop in attendance.

So what parts of this project are already in place? The following list are those that have already been achieved by various enthusiasts (plus myself), or arisen from suggestions from others in the HomeCamp Community.

1. Measuring the temperature across several rooms.

The standard Arduino has 6 analogue input channels. These can be readily used to read low cost thermistor temperature sensors. A few lines of code running on the Arduino, linearises and scales the output of the thermistor to give a temperature reading in degrees centigrade. You can also use pipeclip thermistors to monitor the temperature of points on your hot water cylinder so you can decide whether it it hot enough to bath or shower.

2. Tracking the outside temperature - weather compensation.

By measuring the outside temperature - particularly in the very early hours of the morning, it is possible to predict how much heat is likely to be needed to bring the house up to a comfortable temperature when the occupants awaken. Older, less well insulated houses lose more heat to the environment. Knowing this rate of heat loss - which is proportional to the temperature difference between inside and outside allows you to better predict how much gas heating you will need. As comfort is very much a lifestyle choice, if you have alternative heating, such as a multifuel stove, you may choose to use this in preference to gas - at weekends for example, to offset the gas consumption.

3. Historical records of daily average outside temperatures.

A historical archive of daily average temperatures is available online for many towns across the UK. This record could be coded into the Arduino as a look up table, so that it could make a prediction to how much heating is likely to be needed on a particular day. Based on the early morning temperature, the historical average, and whether it is a weekend, your heating control system might choose a different strategy than if it were a milder weekday - for instance.

4. Measuring gas consumption on an Arduino and outputing it in CurrentCost XML format to display on Dale Lane's GUI (and others).

An earlier post to this blog showed how it was possible to read the gas consumption from a gas meter by using a non-contact optical sensing method. The pulse count data, relating to gas consumption can be converted into an XML message format similar to that output by the Current Cost electricity monitor, and passed out via a serial connection to be logged and graphed on a PC. As an example of a third party application for graphing and logging - I chose Dale Lane's GUI.

As an aside, Current Cost have sold 1.126 million energy monitors, and are introducing new products to give access to internet connectivity. The "10 channel" display capability of the Current Cost Envi could be used to monitor additional household data - such as solar water heating, pV or anything else.

5. Determining the heat-up, cool down curves for the particular property.

For a given average outside temperature, heat loss from a property will be at a certain rate. By determining this rate, it is possible to calculate the amount of heat needed to warm a property up from cold to the comfort temperature, and this can be converted to the required boiler on-time.

6. Wireless control of the boiler using a hacked wireless thermostat protocol.

Some years ago I deciphered the wireless protocol used by my Drayton Digistat wireless thermostat, and implemented this protocol on a low cost PIC microcontroller and wireless transmitter. By simulating the "boiler-on" and "boiler-off" codes, it is possible to override the existing wireless thermostat and control the heating directly with your own control system.

I now have a very simple sketch for the Arduino which implements this wireless boiler on/off control.

This leads to possibilities of remotely controlling the heating either from a web browser, telephone link (using DTMF tones) or something as simple as a TV remote control.

7. Individual control of radiators with wireless remote rad-valves etc.

Wireless motorised gearheads are available from Conrad Electronics (search for Radiator thermostats) for popular makes of thermostatic radiator valves (TRVs). These allow complete rooms to be individually temperature controlled, by monitoring the room temperature and setting the local TRV accordingly. It's possible to fool a TRV into shutting off its radiator by gently warming the wax "bulb". It takes a power resistor and about 1W of power to keep a TRV shut. This could be an alternative to a wireless system.

8. Uploading data to web with ethernet shield and datalog/display with Pachube.

Several low cost ethernet shields and gateways are now available which allow data to be sent up to the net for remote hosting, using free services such as Pachube. By using an external microcontroller that hosts the TCP/IP stack and has an integrated ethernet controller, the burden of this is taken from the Arduino. Data can then be communicated to/from the web as simple serial text.

9. Remote control/ access to heating system via web browser / iPhone app etc.

Once you have an ethernet connection to your central heating controller, remote access and monitoring is possible via web browser or custom app running on iPhone or Android etc. Not my immediate field of expertise - but many HomeCampers are working on similar apps.

10. Back-end datalogging, graphing and analysis (Ubuntu, Joggler, Processing etc).

A serial or wireless connection from the central heating controller to a laptop, PC or other graphical platform allows historical consumption to be logged and displayed. The O2 Joggler is a particularly economically priced platform capable of running Linux/Ubuntu. Again, whilst not my area, there are many hacking various platforms and re-purposing them for home automation applications.

17 comments:

Andrew Taylor said...

A very interesting read. I have been following the work both Alertme and Passivenergy been doing on automated heating systems. I wonder how far you are with the project as I would like to do something similar myself?!

Ox And Wegehead said...

Wireless motorised gearheads link goes to a shopping cart that of course gags and spits at you since it's not logged in.
Is there a better link for these gearmotors for controlling a valve. Something I have done using jack screws and large ball valves was a mixing station for maintaining the return water temp to a diesel engine cooling system after "recovering" the waste heat for an ammonia heat pump.

Ken Boak said...

Ox and Wedgehead, the link to Conrad Electronics UK has been fixed, but you will have to do your own search on "radiator thermostats"

Lee said...

Excellent post. I've an arduino reading some DS1280's and have also hacked the boiler to use the wireless thermostat. Have you any more details on the hacking of the wireless protocol and/or the sketch?

Cheers for any help
Lee

Ken Boak said...

Lee,

Is it a Drayton Digistat you are using. If so, my code should be usable.

I also have code for a simple datalogger - to log temperature readings from 1-wire 18B20s and log to a SDcard. I use the NuElectronics "sensor" shield which has SDcard and real time clock.

If you contact me by email - I'll send you the sketch.

kendotboakatgmaildotcom :-)

room thermostat said...

I agree with this post. The features is really nice and it can also save energy.

room thermostat said...

A typical outdoor reset control will proportionally vary the water temperature produced by your boiler for heating.

Air Cleaner said...

Our Air Cleaner business, it affected by microbial contaminants ,gases or energy stressor that can induce adverse health conditions. Indoor air is becoming an increasingly more concerning health hazard than outdoor air.

AC Service Phoenix said...

Thanks for sharing, it really helpful for my AC Service Phoenix business. It provide wide range of experience with many different brands of air conditioners.

HVAC Baltimore said...

HVAC Baltimore business. It provides a Plumbing, Heating, Air Conditioning, Remodeling, and other Construction Services to home owners. The benefits are to provide Discounts on repairs, services and new equipment purchases.

compare room thermostats said...

Smarter heating controls are definatley the way forward, however user training is also a big issue. This will remain a problem for a while, technology is always ahead of user knowledge.

plumbing said...

You can also purchase a central heating thermostat that controls more than just the heating system. This type of thermostat will also work with air conditioning, ventilation and whole-house humidifier and dehumidifier systems.

ac service 77006 said...

Your article has helped me to understand this subject on a different level. I would like to appreciate your efforts for exploring this issue. Thank you for your information. ac service 77006

AC Service ,Humble said...

Extremely interesting post.Thanks for provide this kind of interesting stuff. I like your post, keep posting AC Service ,Humble

Heating Repair Skokie said...

Heating and cooling units play an important role in our lives. They help us to remain comfortable in utmost weather conditions. Heating Repair Skokie

Miamiairconditioningheatrepair said...

Air conditioning units are very useful especially in summers when the hot temperature and sweating makes us so much uncomfortable. Air Conditioning Repair Delray Beach is one of the best service provider,If you need it.

Jake Alexander said...

Thank you for sharing this post. I found it very interesting and informative. We need to keep working on alternative heating methods. No longer can we rely on foreign oil or burn fossil fuels. I have been using a outdoor wood boiler for some time now. Not only is it environmentally friendly but cost effective as well.