Home » » Under-floor Heating Controller Circuit Diagram

Under-floor Heating Controller Circuit Diagram


Central heating systems that include under-floor heating of ten leave the extra pump used to pump the water through the under-floor pipes running continuously. The reason for this is that the central heating controller doesn’t have a separate control circuit and output for the underfloor heating pump.

Under-floor Heating Controller Circuit Diagram


This circuit was designed to control the under-floor heating pump independently or via the switch in the living room thermostat. The design has been made very flexible and can be connected in four different ways:
  1. Temperature sensor 1 is connected to the inlet pipe of the under floor heating, Temperature sensor 2 is shor ted. The pump is turned on when the inlet pipe becomes warm enough. When the temperature of the inlet pipe drops below the trigger temperature the pump will continue to run for 20 minutes.
  2. Temperature sensor 1 is connected to the inlet pipe of the underfloor heating, Temperature sensor 2 is connected to the outlet pipe. This works in a similar way to that in the previous configuration, but also: as long as the inlet pipe is warm the pump will be stopped (temporarily) when the outlet pipe rises above the trigger temperature.
  3. Switch input connected to the living room thermostat. As long as the switch (connected to the same input as for Temperature sensor 1) is closed, the pump will run. When the switch opens the pump stops after 20 minutes.
  4. Switch input connected to the living room thermostat, Temperature sensor 2 is connected to the outlet pipe of the underfloor heating. This works in a similar way to that in the previous configuration, but also: as long as the inlet pipe is warm the pump will be stopped (temporarily) when the outlet pipe rises above the trigger temperature.
Temperature sensor 2 can also be used to protect the underfloor heating from overheating. In this case, set the trigger temperature to about 50 degrees and connect the sensor to the inlet pipe of the pump.

The circuit is built around an ATtiny25. Two ADC inputs of the controller measure the voltage across both PTCs. The voltage across the first temperature sensor is compared by the software to a trigger value and zero. When the trigger value is exceeded or the value is zero (due to an external switch), the Motor power pin (pin 5) is pulled high and the pump is started via the optotriac. When the pump is started, another output (pin 6) is pulled low at the same time. You can connect external components to this output, such as an indicator lamp.

To prevent a continuous current from flowing through the presets and temperature sensors, the PTCs are connected to ground via a software-controlled FET only when a measurement is made.

A configuration fuse inside the microcontrol-ler is blown so that the internal clock runs at 128 kHz. This is fast enough to run the pro-gram and this frequency is divided by 1024 in the prescaler of timer1. Timer1 then counts to 125 and generates an interrupt. This interrupt will occur approximately once per second.

During the interrupt routine the state for the pump is determined. When Temperature sen-sor 1 exceeds the trigger value or equals zero (switch input), the pump timer will be set to 20 minutes. These 20 minutes are to make sure that the pump remains on for another 20 minutes after the temperature has fallen below the trigger level. If the second temper-ature sensor goes above the trigger level the pump will be stopped immediately.

At the end of the interrupt routine a measure-ment is started by first making the FET con-duct so the PTCs are connected to ground. An ADC routine is then run to read in the value. The temperature sensors are measured alter-nately, so that the measurement interval for each sensor is 2 seconds.

The circuit will turn on the pump for a mini-mum of 5 minutes during any 18-hour period. For this there is a Summer-timer, which keeps track of how long ago the pump was last on. When the pump is turned on the Summer-timer is reset to zero. If the Summer-timer hasn’t been reset for 18 hours (16-bit integer = 65,536 s = 18.2 hours), the pump timer will be set to 5 minutes. As long as this is active, the pump will be on.


Author: Marc Dirix - Copyright: Elektor

0 comments:

Post a Comment