House temperature analysis
One of the things I've been curious about is how good house thermostats are at keeping the temperature constant.  I've lived in a number of places where temperature varied over a wide range, but only recently have I had a simple means of measuring temperature.  This involved the use of USB temperature monitors which are niftly little gadgets which will store 11 days worth of temperature data sampling once/minute.  The USB temperature monitors are available from the Weather Shop (link at WattsUpWithThat.com)

The temperature data which I recorded in the last two days was obtained with one monitor next to my thermostat upstairs and a second monitor 2/3 of the way from floor to ceiling in basement as far away from extraneous temperature sources as possible.  The upstairs monitor was an attempt to measure the temperature that the thermostat sees and the downstairs monitor was in a portion of the house which is away from windows and likely the most thermally stable area.

I tried this experiment once before but the data seemed uninterpretable.  It's because the temperature upstairs is kept within rather narrow limits.  Here is the graph of upstairs temperature:


All the above graph tells us is that the mean temperature upstairs is 72.27 F with a small SD.  It also tells me that the thermostat is way off in its calibration as that setting reads 68 F.

Much more information is available when one performs an FFT on the data.  The display below has an x-axis which is the reciprocal of time so the units are hours/cycle rather than cycles/hour.  I just find hours/cycle a lot easier to wrap my head around instead of constantly computing reciprocals of frequency in my head.


Note the prominent peak at about 2 hours/cycle.  There are a lot of other freqencies present there which I suspect are an artifact of doing an FFT on square wave data.  The point at 0 Hz has been omitted (and has a value of 72.27 reflecting the mean of the waveform).  I suspect that the furnace has been coming on about every 2 hours and to verify this now have another USB monitor hanging right below one of the basement heat vents and, in 11 days assuming the temperature outside doesn't change drastically, will have verification or rejection of this hypothesis.  The thermostat upstairs seems to be working just as it was designed to do.

Most of my time has been spent in the basement as my computers live there and I noticed that temperature appeared to fluctuate more there.  My temperature sense was proved correct when one looks at the raw basement temperature data.


The basement is cooler by 0.76 F degrees on average and varies more than the upstairs of the house.  Still, the temperature is kept within a 3 degree range.  I suspect that the low temperatures on 9/10 February were due to sunny days which heated up the upstairs and thus reduced the amount of time the furnace was on.  Highest basement temperatures are in the evening and this is likely due to greater cooling of the upstairs during that time.

Where things get interesting is when one does an FFT of the basement temperature data.


The basement temperature dominent frequency is 24.7 hours which I suspect reflects the daily rhythm of external heating and cooling that results in varying operation of the furnace.  Not sure why it's 24.7 hours instead of 24.  The 2 hour cycle is visible albeit quite attenuated compared to the upstairs record.

This data analysis was just playing around with two of my toys; the USB temperature monitors and DPlot program.  Looking at the upstairs data in the frequency domain provides way more information than the raw temperature record.  What would be really need to put some of the cycles >24 hours into perspective would be an outside temperature.  I do have a third USB temperature monitor but am currently unable to find a Canadian source of the 3.6 V Lithium batteries that it needs (the greatest drawback of this other very neat little device).

Data visualization is so much easier with DPlot than it was writing my own VB programs to display data.  DPlot can be scripted from VB via DDE and that is the next project I plan on doing.  Also, this web page was a test of how easy it would be to organize my graphs of various things I measure as HTML files.
Last modified 18/2/2011 T:=01:29