Warming the hearth (part 1).

Posted: January 22, 2009 in Construction, Projects

One of the many reasons we bought our house was that even though it was 100+ years old, it had forced hot air (and air conditioning). All good, but I doubt they did any forced hot air systems back in the early 1900’s. So as you might imagine the system in our house has a few flaws. One of those flaws is the (future) baby’s room. For whatever reason, the baby’s room doesn’t have a vent to supply heat. The problem is that the room cools down when the door is closed (which I assume will happen often enough in the future).

To solve the issue I installed a powered through-wall fan that pulls air from the outside hallway. This does an excellent job of equalizing the temperature in the room, however it is quite loud (it’s rated at 160CFM on “low” which means that it can exchange all the air in the room in about 5 minutes). Leaving the fan on all the time just isn’t an option (I’m a little OCD about things like noises). At the same time, I don’t think it’s reasonable to have to turn the fan on when we’re going to close the door (because I’m lazy too).

What I need is a way to automatically have the fan come on when it’s needed. For this I figure I have two out-of-the-box options. I could use a timer to turn the fan on every hour for 5 minutes, or I could use a thermostat set to come on if the temperature in the room drops. The temperature in the house changes hour-to-hour so at night a thermostat would see a low temperature and keep the fan running as it tries in vain to heat the room. A timer would work better, but it’s still not a perfect solution since the room could still get too cold, or it could turn on the fan when it doesn’t need to run.

What I really need is a thermostat that compares the temperature between the hallway and the room, and turn on the fan if it’s more than a degree or two off. This would mean that the fan would only operate when it’s needed and only for as long as it’s needed. The problem is that there is no such device available on the market, so I’m going to have to build my own.

Enter the Arduino

I bought an Arduino last year on a whim. It seemed like something cool that I wanted to play with, which I did, but then it went into a drawer and hasn’t been pulled out since. It tweaked my want-to-be hobbyist side, what’s cooler than a little computer for $35 that you can capture digital and analog data with (my laptop can’t even do that without additional hardware). It seems like the Arduino is a perfect little brain to get my fan to do what I want it to.

The Plan

The concept is pretty easy. Two temperature sensors (about $1 each) measuring the hallway and the room temperature, the Arduino for logic, and a relay capable of switching 120V(60W) current.

There are four states that the system has to be aware of:

  1. Room and house are the same temperature (do nothing).
  2. Room is colder than house and it’s winter (turn fan on).
  3. Room is colder than house and it’s summer (do nothing).
  4. Room is warmer than house and it’s summer (turn fan on).

You’ll notice that we have to do a little more logic than checking a temperature differential, we also have to find out if we’re in the summer or winter (in the summer we tend to put window A/Cs in to help reduce running the A/C in the whole house at night).

Stage One

I ordered a bunch of electronics from Allied Electronics, pulled out my test board, and my Arduino and started playing around. A little guidance from Justin and I was up and running. Since I’m still waiting on a few custom circuit boards (for the 120V switch), I worked on the low voltage stuff (and the programming of the chip).

It needs a little more software testing, but I’ve built a pretty solid chunk of code that checks the temperature of the air once a second and makes sure we’re in spec. It detects if it’s summer or winter (it assumes that the air temp isn’t above 72 in the winter, and in the summer it doesn’t drop below 64). Once a day it runs the fan for an extra 10 minutes and checks the temperatures of the sensors to make sure they match (and sets up a differential if they don’t). There is also some error detection in the script so if things get wildly out of whack it should try to fix itself.

Stage Two

When I get my high voltage boards from the manufacturer I can solder the boards together and see what kind of a form factor I can fit everything into.

Stage Three

Once I have my differential thermostat, I’ll need to wire the sensors into the walls, and hook everything up to live power… then cross my fingers.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s