# BMS Basics – Heating Curve #### Written by HVAC Guy

This blog will give you an honest insight into the day-to-day process of being a BMS Engineer. I will be talking about all different aspects of the job from software strategy planning to on-site hiccups and frustrations.

#### 17 July 2021

Heating Curve is a popular term within the Building Management Systems industry. You will find at least one heating curve within most BMS control systems out there, they can be applied in different ways, but they are mostly used to calculate a required temperature for a system or circuit.

A heating curve is something which calculates an output based on the measured input and some user defined settings.

• The software relies on always knowing the measured input.
• The software relies on some basic settings being correctly configured.
• The calculated output can be varied further with additional information.

Examples where this type of BMS software strategy could be used:

• Boiler flow set point.
• VT heating flow set point.
• Frost valve set point.

There are other examples as well, but you will notice from above that they are often “set points”. This is because the software calculates an output, or in most cases, a set point.

For this post we are going to look at using a heating curve to calculate a VT heating flow set point, also known as “weather compensation”.

The flow temperature set point is scheduled against the outside air temperature in this case. This means that the outside air temperature is acting as the measured input and the calculated flow set point is the output.

#### Settings for the controls software

In order for the calculation to work you must set some parameters within the software. These parameters may be labelled differently depending on the software / equipment that you are using, but they often look something like this:

• Input low
• Input high
• Output low
• Output high
• Maximum out
• Minimum out

The input points are referring to the measured input you are monitoring. In this example our input is the outside air temperature so the input settings should be set accordingly. Usually, a low of 0°C and a high of 20°C will be fine, this typically covers the range for which we want to control against.

The output points are settings which scale the output based on the measured input. Often we set these to a low value of 80°C and a high value of 20°C. This means that we have set up a simple heating curve that will provide a set point of 80°C when the outside temperature is 0°C and a set point of 20°C when the outside air is 20°C. The scale will work linearly between these values as shown in the following chart. Notice how the output “low” is higher than the output “high” value, this is because we are setting the output value based on the input, so the output low value refers to what you want the output to be when the input is at it’s low point.

So, with an outside temperature of 5°C we will provide a set point of 65°C with the above settings.

#### Example using the Niagara4 software with Tridium Controls

Niagara works with objects placed on a wire sheet. To achieve the same results, we use a block called a “reset” and then configure the settings exactly the same.

#### This can now be taken further!

Simply calculating the VT flow set point based on the outside air temperature is not always the best form of control. What if we are putting 65°C into a space that is already at 23°C?

The solution for this is to add “room temperature compensation”.

Room temperature compensation takes the calculated heating flow set point further by adding a layer of feedback into the calculation. To do this you must:

• Measure the room temperature as well as the outside air temperature.
• Set a required room temperature set point.
• Add in a compensation factor to the calculation.

#### Room Compensation using Niagara 4 software

The logic is applied when creating this type of control within the Niagara workbench.

Another important thing to note here is that the room temperature compensation now adds to the heating slope without a min or max to the calculation. For example, if the room temperature were to drop to 12°C the calculation would add 50°C onto the required temperature, this would then output a VT flow temperature set point of 100°C. Obviously this is not achievable and would be incorrect, for this reason you have to add an additional limiting object to maintain your maximum and minimum flow temperature.

Adding the limit output object above and setting the values now prevents the heating flow set point from reaching unrealistic values whilst also allowing the system to provide room temperature compensation.