Tuesday, January 31, 2012

Din Rail installed

Been working mostly on the software portion, but as a side task I did cut and install the DIN rail to my server rack. I think it should look pretty slick once I have the connections in place. I don't know how common it is to put a DIN rail on a server rack, but hey, it works!

I think my serial class is more or less proven for the temp sensing and relay control, so I will be starting on the actual thermostat app next. I'm hoping to get something rough done within a week or so, I can add the more fancy eco algorithm stuff later down the road.

Friday, January 27, 2012

DIN rails, wire and DIN terminal connectors

This stuff came in today, which will be used for this hvac project, and possibly other future stuff.

The DIN rail will be screwed into the server rack and treated like a patch panel for misc sensor/electrical connectivity. Basically anything that does not really have a plug type. For now I'll only be controlling the furnace, and I'll only have 2 thermal sensors. One where the existing thermostat is, and the other I'm not sure yet. Either the server room, or outside, but winter is not an ideal time to be putting holes in outside walls. The circuit board can handle 6 sensors in total so I may put the second sensor indoors and wait till summer to order more and put one outside.

Once the outside temperature sensor is installed my program will be able to use that to better control the furnace start times based on the schedule. For example the app will know to start the furnace 1 hour before a schedule based on the outside and indoor temp.

Friday, January 20, 2012

HVAC temp sensor

Using a makeshift breadboard to wire up the resistor and temp sensor (aka: cut out a piece of plastic from HDD tray inserts)

The unmarked wire is for ground, the one with one line goes to the DQ pin of the sensor and will go to the channel pin of the control module. The wire with 2 markings is the VDD pin of the sensor and will go to the +5v line of the control module. I will be using cat6 to wire this to the module, so probably one pair for DQ and VDD and a single wire for ground. I can probably technically use the common wire of the thermostat as ground, but I rather use the one fed from the control module to be on the safe side.

I will try to shove this behind the existing thermostat which will save me from figuring how to put this on the wall and hide it.

There is also another sensor that will go outside, but not sure how I want to do that yet, and considering it's like -30 out there, I rather wait till spring to do any type of outside work. Chances are what I'll do is mount it on the house in some kind of small plastic box. Might even put it inside the phone nid.

The outside sensor will be used to help the system better calculate start times and run times to increase efficiency. For example, on a -30 day I might want the furnace to start earlier than a -5 day. the current indoor temp will also play a role in that calculation. The program will learn the heat gain/loss and then based on these values should be rather accurate in knowing when to start the heat.

There will also be other features such as over running past the set temp to avoid short cycling. So on a -30 day it may be better off to run the heat 2 degrees past what it's set to, and let it drop 3 degrees before starting again. The less short cycling, the more efficient things will be. Still lot of things to think about. At first the program will simply be an advanced temp scheduling program and I'll add more features over time. Being able to set the temp or change schedules from the office, or my playbook will be pretty cool.

Monday, January 16, 2012

21st century HVAC control

I just got this in the mail today:

It's a 4 port relay controller with 6 input sensors. I also got 2 temp sensors, but really I should have got 6 from the get go and be done. Might put in another order once I confirm it works as I want.

My goal is to hook this up to my mini atom server which I will dedicate as a environmental control system. The relays will be used to control the heat and the temp sensors as a thermostat. I will code a web based app to control it. I plan to add lot of intelligence to it such as know how early to start the furnace based on the outside temperature. Once this is done I'll be able to control the furnace from work. I will be starting shiftwork soon, too, so being able to setup more complex schedules than the typical weekly/weekend settings will be great. I will also have a function to quickly override a schedule for a single day. Sometimes I go for lunch at 12:00 other times I go for lunch at 1:00 etc we just kinda play it by ear. So when I determined when I go for lunch then I'll set it to start so it's warm when I get home. Should be a fun toy to play with, and it will be practical.

I now need to decide how to physically set it up. How I wire it, etc... to make it as clean as possible. I might mount the board right into the server somehow, then have a terminal strip on the back of the server to make the thermostat and sensor connections. For now I'll have one sensor where my current thermostat is (I'll just shove it right in it basically) and the current thermostat will be used simply as a backup. It will be wired in parallel.

Later on I might add more sensors, like one on the upper floor, one in the basement, one in what will be the server room, maybe one in the garage.

I will only need 3 relays, so the 4th will probably be used for some misc purpose. Maybe the hvac for the server room itself once I build that room.

Now if I could add voice recognition to that server and have sensors around the house, that would be awesome. The server is called HAL9000. :D