Furnace Control
I was now able to monitor the temperature and operation of my furnace system from the internet. Upon showing this to a few people at work, they asked if I could control the furnace remotely. I could not. I took this as a challenge. In addition, if we go away for a weekend, we usually set the thermostat so the house will be cold (in the winter), or hot (in the summer). We will come home, and the furnace/AC will take several hours to catch up.
Based on my experience with QKits.com, I checked to see what they had available. What seems to be the ultimate product is the VK013 - a 4 channel relay card, serial daisy chainable. This is a relay card with the following attributes:
- Serial Control
- Daisy Chainable
- Easy to control
I could have simply connected a relay to the parallel port, and written code to control that, however it is likely that when the system boots, it would toggle the outputs on the parallel port. It is not good for an AC unit to be cycled like that.
The VK013 is daisy chainable - meaning that if I use all 4 relays on this card, I can simply run a Ethernet cable to the next VK013 device. I can control dozen's of these devices from 1 serial port.
Before making the purchase, I needed to determine the wiring that is used to connect the thermostat to the furnace. After carefully removing the panels from the furnace (you know - the ones with all the warnings on them), I came up with the following wiring diagram:
Apparently this is a standard used for Honeywell systems. I have a TempStar SmartComfort system. It seems to have a Honeywell board in it.
I ordered the kit, and several days later it arrived. Except it is not a kit. It arrived fully assembled. With great anticipation, I plugged it in, opened up a serial session to it, and issued the command to turn on a relay. Nothing happened. After more playing, I realized that the commands are cAsE SeNsItIve. N0 <> n0. It makes sense now, but for 20 minutes or so, I was worried.
More code was written. A .NET asp page was created, as well as a seperate vb.net app. I will eventually combine this in with the temperature logger, but until it is stable, I don't want to mess with something that is already working.
The VK013 Relay card has been wired in series with the existing thermostat (in the red +24v line). I've wired the relay in the NC mode, in the hopes that if my server crashes, the relay will close, and return the furnace/AC control back to the thermostat.
The asp.net page is password protected from having unauthorized people on the internet from changing the temperature. Once a new temperature is received, the vb.net app kicks out an e-mail to a preset address (mine) informing me of what has happened.
I am having a problem that I am trying to track down, where it seems that my new relay control application is causing the computer to hang at random times. Usually when I am away. Once I return home, I find it powered on, but otherwise useless. A power cycle is required to bring it back to a useful state. I'm not sure what is causing this, but I am working on tracking it down.
Update (September 21, 2006)
I think I have resolved the hanging problem. I am using a Lava DSerial PCI card. Lava made 2 versions of the same card - they both 'appear' to work with the same driver, but one model will cause your system to freeze. The newer driver can be downloaded from Lava's Page (look for the driver that is for chips marked with "IMP". I've applied the new driver, and so far I have not had any problems.
<- Back | Next -> |