Estimating the Home’s Heat Loss Rate

I’ve been collecting various sets of data with my Arduino-based RIMU.1 environmental data logger. In particular, I have seven nights worth of overnight records showing both indoor and outdoor temperatures. The data were all taken with the recorder in the same locations. Some nights are contiguous, but the 7-night set spans about 10 days.

The indoor temperature, during the “night” setting on the thermostat tends to drop quite linearly until the furnace runs again around 6 am. The following graph shows the data, which looks like a black staircase, along with a linear fit of the data. The fit is quite good.

I capture only one important datum from this overnight trend—the slope. Later I’ll show how I use the rate of temperature decline, measured in degrees Fahrenheit per hour of decline.


The outdoor temperature sensor is a thermistor, and the measurement is markedly noisier. The temperature varies more too, presumably due to wind turbulence near the house. The linear trend is much less clear, though it is clearly cooling some during the night. I do measure the average difference between the indoor and outdoor temperature which I call the “mean temperature contrast”. This is done in degrees Fahrenheit, though I probably should have done it in Kelvin. The contrast is measured as a difference, not a ratio.


If I take the seven days of data and plot the temperature decline rate versus the temperature contrast I see the picture you might expect, below. Remember that bigger numbers mean faster falling indoor temperature. You can see the outlier caused by the windy night. There is another outlier (~28, ~0.60) which, if I recall correctly, is the one night I closed the blinds. A hint of the follow-on experiment.

The next question is, does closing the blinds cause this rate to be materially different?


Hot and Cold, Thermal Monitoring

Since the RIMU’s creation I’ve logged two noteworthy data sets along with several that are not yet ripe for sharing. I logged the refrigerator’s internal temperature overnight (using the thermistor) and I logged the oven’s internal temperature for a few minutes while making bread sticks today. The results are more interesting than I might have expected.

The following plot shows the oven temperature as measured with the RIMU’s thermocouple. The set point was 425, which appears not to be reached in steady state. In fact, typical operation shows a swing of about 37 degrees F. Recovery is quite fast, actually. These data were collected with the convection fan off, and the thermocouple near the front of the oven.


The second plot of interest is the refrigerator data, taken with the thermistor located about halfway back, one quarter of the way from the right edge, resting just above the top shelf.


The temperature oscillates locally, after about half an hour of quite the motor runs for about half an hour, creating a three degree local temperature swing. What is bizarre is the nightly decline (shown by the blue line) which measured an average temperature decline from 31 F to 29 F.

RIMU: Recording Independent Measurement Unit, an Arduino Project

I don’t remember where I first heard of the Arduino programmable microcontroller platform. An Arduino Uno, the variant I have, is about the size of a box of Altoids mints. It has a port to receive DC power, a USB port for programming and debugging, and a very capable microcontroller. It is programmed in a flavor of C++, and there are tons of software libraries that support it.

Arduino, which is open source, can be augmented with accessories. The cutest are the “shields”, circuit boards that plug directly on top of the Arduino like a sandwich. Shields are available for all kinds of things. Four days ago I received a set of parts from Adafruit Industries including my Arduino Uno, data logger shield, and a series of sensors. The result is a fully functioning data logger, focused on thermal information. It may not be pretty to you, but to me it looks fine.

20120108_8966 annotated

The RIMU has three different ways to measure temperature, which is one of its main functions. For high temperatures, like the oven, barbecue, or smoker, it has a thermocouple which is rated to 500 C (930 F). For measuring the temperature outside the house RIMU has weather-proof thermistor. For tracking the temperature next to the logger there is a barometer and thermometer. A sensitive luminosity sensor measures the amount of light falling on it, and can be a source of information about what else is happening.

The magic is mostly happening on the Arduino, but the part the user interfaces with is on the breadboard (next photo). On the left there is a toggle switch, which turns on or off the logging. Next there is a small brown button which tabs through the display options. The blue knob controls the contrast on the display. Below and left of the blue knob is where the weather-proof thermistor (black wires) connects. To the right of the display are the sensors. At the top right is the thermocouple interface, and below it are the pressure and temperature sensor, and in the lower right the luminosity sensor.

20120108_8971 copy

An annoyingly small button allows the user to tab through the display options. Each display provides sensor information, in addition to the time and date. The time and date represent the battery-backed real-time clock on board the logger shield.


The first display state is the weatherproof thermistor (t-mist), the second is the local temperature and pressure in millibar, the third and fourth displays are the light sensors in lux, and the final display is the high-temperature (thermocouple) display.

The sensor mix here is made from Adafruit’s packages, shown in detail. The pressure and temperature sensor, and the luminosity sensor are shown up close in the next picture.


The following picture shows the thermocouple interface.


The results of one day’s log are shown in the next three plots. These record the temperature in my bedroom, and just outside the window of my bedroom for most of a 24 hour period. You can see in the “local” temperature record a scalloped shape caused by the furnace cycling. The undulations in the temperature through the night are mysterious. My best guess is that the wind was changing speed or direction, and the effect is caused by changes in the air bubble near the temperature sensor.


The barometric pressure rose through the night and morning, until about 10 am. I can’t reach any conclusions from this.


The light level reflects electric lights until about 7 am, around sunrise. I don’t know what causes the oscillation between 8 and 9 am, nor what causes the spike around 3:30 pm. Still, rather interesting.


The next experiment is to instrument the smoker and make ribs. Many smokers have a water pan in the bottom, which I have heard keeps the temperature at the local boiling point (202F). The other claim is that the water provides a thermal mass, helping the temperature restore quickly after the door has been opened. I am not aware of any humidity arguments.

One work-around I have used is to put bricks, wrapped in foil, in the bottom of the smoker. But bricks are not very conductive, and their specific heat is less than 1/4 that of water. Interestingly, solid wax has a specific heat close to that of water. I propose to test smoking without meat and measure the recuperation time in the smoker after the door has been open a minute. The thermocouple, of course, will be the instrument of choice.

I’m also interested in how long it takes the baking stone to pre-heat in the oven. Or the Dutch oven inside the oven, as used for rustic breads. Should be fun!