Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Technology

Computer-driven, Open Source Based HVAC Control? 26

richardtallent asks: "Other than various X-10 compatible products, has anyone found a consumer-level, computer-programmable thermostat? I could hack something out with some discrete components and a serial port, but I'd prefer a stand-alone, wall-mounted device that communicates via Ethernet or serial. GPL/LGPL/BSD-licensed software is a must; full documentation and a CLR, Java, or ActiveX interface library would be even better. With a fully programmable interface, I could set up any number of scenarios and variables based on DOW, time, work/school schedules, CPU temperature override, current or forecasted weather, electricity/gas rates, IR signals, remote control via DSL, etc. I could also automate alerts for replacing the filter, estimate costs before the bill arrives, etc." I have seen the home of the future. We will build them ourselves out of nifty little projects like these.
This discussion has been archived. No new comments can be posted.

Computer-driven, Open Source Based HVAC Control?

Comments Filter:
  • Hack value?

    You don't want to shell out for a professionally-installed HVAC?

    Why?
  • This might help... (Score:3, Informative)

    by chewedtoothpick ( 564184 ) <chewedtoothpick@hot m a i l . c om> on Thursday June 06, 2002 @02:56AM (#3650889)
    here is a site that contains information about networked thermostats. Perhaps you can get one and hack it to do what you want. On the flip side, a few buddies and I who live in the heart of the wine industry (Napa Valley, CA) are trying to program computer-controlled cooling/heating/mixing systems etc... for the wine industry. Perhaps we can/should work on converting this to a standard HVAC thermostat as well. (note: we actually have been thinking of doing that but were worried about a possibally weak market.) Any suggestions?

    http://www.xcicorp.com/ (the site about networked thermostats)

    Sig? I don't need no stinking sig!
  • My own bodge... (Score:4, Interesting)

    by canthusus ( 463707 ) on Thursday June 06, 2002 @03:26AM (#3650928)
    This doesn't involve anything clever (like temperature sensing/control, like network communications), but it shows that you can bodge up a workable computer controlled controller quickly and easily. It's running on a laptop nailed to my wall, and has been going nine years now!

    At risk of getting my site dash-slotted here it is [grayfamily.org.uk].

    (try not to mock too hard - it works!)

  • Maxim (Score:2, Interesting)

    by linuxator ( 529956 )
    Check out maxim 1-wire temperature sensors. Those little monsters are worth to try. They also got serial(RS-232), parallel and USB interface.

    http://www.maxim-ic.com/
  • Ah, HVAC... (Score:1, Offtopic)

    by orangesquid ( 79734 )
    h4cking, virii and cr4ckz!

    w00t!

  • [Sorry for being OT, I just couldn't resist asking a related question...]

    I have a home burglar alarm system I purchased several years ago that basically just gets inputs on twisted pairs from simple sensors all over the house and has a phone line out, some power sensor, and the ability to activate an outside alarm.

    But a lot of the system seems to be software, AFAICT.

    Is there any open source implementation of a burglar alarm system?

  • Simple DIY (Score:2, Interesting)

    by fille ( 575662 )
    Just buy a BasicStamp module (or something similar), hook up a sensor, a relais, an lcd and a couple of buttons. The software should be very easy to write. Even networking modules are available for the Stamp-modules, I believe. More info: www.basicstamp.com
  • I am currently a programmer for an HVAC company. We use control products made by this company. http://www.kmc-controls.com/ All programming is done in BASIC. Works great. Most HVAC stuff is just IF THEN statements. KMC is due to release a web enabled interface box for their systems sometime soon. Each controller is a standalone computer with anywhere from 4 to 128 IN/OUTs. They communicate with each other using RS-485 (much more robust that 232 in high RF interference enviroments). Their high end controllers use ethernet and the BACNet protocol allowing login across the internet. The system is designed to dial a pager, cell phone, or control computer in the event of an alarm. -- Brice Ligget Encode Corp. ligget (at) attbi.com
  • Sounds like you could use a Progammable Logic Controller, MatPLC [sourceforge.net] is working on GPL'd PLC hardware and software. There is a mailing list. This sort of question could be posted there. Or check out A-List [control.com] another good resource.
  • by uslinux.net ( 152591 ) on Thursday June 06, 2002 @11:03AM (#3652459) Homepage
    or was it Embedded Linux Journal? Anyway, there was an embedded systems article discussing a project to build a thermostat which would get the weather forecast and try to save on heating/cooling by running the system at temperatures and times which were more efficient. I think they called it predictive cooling. Very, very cool idea.
  • It runs java, has Ethernet, RS-232, and 1-wire interfaces built in, and it's small enough to look like a normal programmable thermostat.

    http://www.ibutton.com/TINI/index.html [ibutton.com]
  • Hack it up... (Score:3, Interesting)

    by cr0sh ( 43134 ) on Thursday June 06, 2002 @03:52PM (#3654345) Homepage
    The simplest way to control the thermostat of your HVAC is to simply get one of those X10 relay units (basically a simply relay controlled by X10), then hook a power supply and resistor in series with the relay switch contacts, then place the resistor (cover the bare leads with heat shrink tubing) near the bi-metalic strip or sensor in the thermostat. Then use X10 to switch the current on and off to the resistor, which will heat up, causing the temperature to rise local to the thermostat, turning the unit on and off.

    Now, that is a cheesy way to do it, but it works, and it doesn't require anything real fancy.

    If you want something better looking, the wires that run down from the HVAC unit are typically 12 or 24 VDC or AC. You have two wires, when connected together cause the contactor (basically the industry term for BIG HONKIN RELAY) to turn on and off. So, all the thermostat is doing is using another relay, transistor, or mecury switch to make and break contact between those two wires. There is also a third (and possibly fourth and fifth) wire used as well, for heating, etc - and things get even funkier with gas heat, electric AC, etc. It isn't too complicated, but you would do yourself well to know what kind of system you have, and what kind of thermostat you need, then get a cheap mechanical thermostat, take it apart, and study it so you know what goes where.

    Anyhow, once you know your system, and what wires do what, at that point it is easy and cheap to get a few relays to hook into the system. You could even put the box up near or in the AC unit itself. If you absolutely need serial/ethernet, then look into a BASIC Stamp, PIC, or the newly released Javelin Stamp (Java-based Stamp) - there are also a ton of similar micro-controllers as well by other companies. Anyhow, use one of them to control the relays, and communicate with the uC via serial commands.

    Finally, regardless of whether you use the funky X10 control, or the more sophisticated relay system, you need sensors. What you want are called thermistors - they are basically resistors that are very sensitive to temperature changes. Be sure to get ones that have a temp range you need, and remember some are marketed in only degress celcius, so if you are needing degrees farenheit, you need to convert to know the range. Anyhow, you will need these and a few microcontrollers with ADCs - the thermistor is hooked up with another resistor and a power source (separate from the uC!!!) in a voltage divider, and that voltage is read by the uC's ADC and converted into a value. You will have to calibrate with a real thermometer to know what values equal what temp, but once you know that, you can use these thermistors as good sensors.

    Place the thermistors in the following spots: Put one at each register outlet, one at the HVAC intake, one inside the attic, one outside, and one at the center of each room.

    With the information from these probes, you can now know when to turn the HVAC on and off. If you wanted to take this further, you could hook fans and window blind controls to the system to help with the cooling/heating of specific rooms. You could also set up the HVAC vent system with "vent valves" (these may need to be custom built) that can open/close on control from the system to direct the heating/cooling to the areas that need it. Couple that with door/window sensors, and the system could shut off cooling/heating for unused rooms, for example.

    As you can see, the system, and associated programming, can and will become VERY complex VERY quickly. But if this is something you really want to do, it can also be a VERY fun project...

    Good luck!
  • http://www.misterhouse.net
  • by t0qer ( 230538 ) on Thursday June 06, 2002 @11:11PM (#3657478) Homepage Journal

    Just plug a thermistor [thermistor.com] into the
    joystick port of any computer, instant digital thermometer.




  • I bought an RCS TR15 [resconsys.com]

    The documentation (in PDF's on that page) was decent enough that it let me slap together a small Ruby script to control it in a very short while.

    I've been using this thermostat with my script running out of cron for about six months now, and it's worked quite nicely.

Byte your tongue.

Working...