This project was the first stage of developing a controller for a radiant floor heat system. The microcontroller will use inputs from thermostats, thermocouples, a flow meter, and pressure switches to control the operation of the pumps and valves to achieve improved efficiency of the system as a whole.
This project idea came from a friend who recently built a house which utilizes an outdoor wood boiler for heating. He expressed that he was disappointed in the efficiency of the current system and wished he had more control over the system operation. This seemed like a good application of what I’ve learned in this course. The main goal is to improve the efficiency of the system by shortening the amount of time that the Pumps need to run while still properly heating the home. By doing this, consumption of both electricity and wood will be reduced.
Implementation of this project involves a large amount of work outside of the microprocessor. Because of this, I bound the scope of this academic project to the control logic only. In order to implement this in the house, I will have to build the circuitry to translate the control logic over to the voltages necessary for operation of the valves, pumps and sensors. In order to verify and validate the controller logic worked as desired I built a demonstration board that models the inputs and outputs of the system. This board was used to debug the controls during development and it was also a convenient way of demonstrating this project at the end of the semester. Toggle switches were used to model the 5 thermostats, adjustable voltage dividers were used for thermocouples, a 555 Timer circuit was used for the flow meter and LEDs were used for all outputs.
High Level Design
The primary goal of this project is to improve the efficiency of heating a home that utilizes radiant floor heating. Several improvements over the current system will achieve this goal. The five major upgrades are compared here with Figures 2 and 3 showing the system before and after:
- Outside Pump will be controlled based on demand for Heat and Domestic Hot water
- a. Old system – this pump was always on
- Each Valve will be opened one at a time to maximize the flow rate to a single loop. This will decrease the time it will take to insert heat into the zone and hopefully reduce the amount of time the pumps need to run.
- a. Old System – many valves could be opened at the same time. The more valves that were opened, the longer it would take to warm up any of the loops. Not all loops may warm up at the same rate.
- The heat exchanger in the attic will be warmed up based on current temperature and if the air handler is running (to reduce/prevent condensation).
- a. Old System –Heat was sent to attic constantly @ 20minutes ON, then 40 minutes OFF. This ran regardless of the temperature up there or if the air handler was operating.
- A Pressure sensor and Flow meter will be added to detect if a leak or blockage has occurred. The system will be shut down if either of these conditions is detected.
- a. Old System – there were NO such safety features.
- 5. The system will provide real time data to the homeowner including: Pump/Valve Events, Thermocouple measurements. This data can be analyzed to make adjustments to the system operation for further improvements on it’s operation.
- a. Old System – There was no feedback of the system operation.
Thermocouples – The range of our ADC is 0-5v but our expected temp ranges are: 60-180degF for Hot sensors and 0-100 for the Attic sensor. Because of this we simply scaled/shifted the expected range into the ADC range. The following equations are the baseline we are starting with for development. Each of the thermocouples will be calibrated once in the real system.
TU Calculation – At each pulse of the flow meter we will read the supply tcouple and return tcouple of the heat system, get a BTU calculation and then sum all the values of BTU. At the end of the cycle for that valve send out the summation of BTU to be logged by the computer, this also allows us the resolution of which loop inside each zone draws more heat. Then in the computer side of things we can then apply a little statistics to find the highest heat demand times/loops and send a one cycle heat system demand an hour or two before the demand (forecasting).
At each pulse of the flow meter we will calculate:
W = 8.3lbs/75.3 = 0.11lbs/pulse
Since our flow meter generates 75.3 pulses per gallon
Cp = 1
∆t = (tcouplein – tcoupleout)
The heart of this design revolved around being able to deliver heat to specific areas of the home while running the pumps as little as possible and also not short cycling the pumps. To do this we warm up only one loop of the system at a given time. After a single valve is opened to allow hot fluid to flow through the loop, the thermocouple on the return side is monitored. Once the temperature coming out of the loop approaches the input temperature, there is little value to running more hot fluid through it. Once the loop is already warmed up it will continue to conduct heat into the floor. In other words, there is little return on investment of running the pump to move hot fluid through an already warm loop. So, we use this to decide when to transition to the next loop.
When there is active demand for heat in the home, the inside pump is kept on to prevent short cycling. Because it is kept on it was important that we ensure there are always at least one valve open while it is on. The timing diagram in Figure 5 shows how valves are activated one at time while ensuring at least one is opened while the pump is running. Also shown in this diagram (in green) once the loop is warm, a transition to the next valve begins. The temperature is unknown at the transition points when more than one valve is opened.
- (1) 4”x6” Doublesided Presensitized 1oz copper $11.14 (Digikey PC61P-ND )
- (1) MAX232 Serial Driver $1.16 (Digikey 296-1402-5-ND)
- Etching Chemicals $FREE – reused from previous project
- (6) 10k TrimPots $FREE – lab asset
- (12) LEDs $FREE – lab asset
- (1) PIC 18F4520 $FREE – leftover parts bin**
- (1) 555 Timer $FREE – leftover parts bin**
- (1) DB9 Connector $FREE – leftover parts bin **
- (1) Pushbutton Switch $FREE – leftover parts bin**
- (1) 7 port Switch Bank $FREE – leftover parts bin**
- (1) +5V Power Supply and Connector $FREE – leftover parts bin**
- Multiple Resistors $FREE – leftover parts bin**
- Multiple Capacitors $FREE – leftover parts bin**
- Male Headers $FREE – leftover parts bin**
- Two wire Jumper $FREE – leftover parts bin**
Total cost = $12.30
For more detail: Heat Control System Using 644
This free embedded project also found using:
- microcontroller based automatic temperature controller with cooling system and block diagram