Heating curve
Block name
T1_EQUITHERMAL_CURVE
ST call
PROGRAM T1_TEST VAR REAL1,REAL2,REAL3,REAL4,REAL5,REAL6,REAL7,REAL8,REAL9,REAL10,REAL11,REAL12,REAL13,REAL14,REAL15,REAL16,REAL17,REAL18,REAL19: REAL; BOOL1:BOOL; FB: LIB.HVAC.V1_0.T1_EQUITHERMALCURVE; END_VAR FB(IN:= REAL1, BR:= BOOL1, FDY:= REAL2, FX1:= REAL3, FX2:= REAL4, FX3:= REAL4, FX4:= REAL5, FY1:= REAL6, FY2:= REAL7, FY3:= REAL8, FY4:= REAL9, TDY:= REAL10, TX1:= REAL11, TX2:= REAL12, TX3:= REAL13, TX4:= REAL14, TY1:= REAL15, TY2:= REAL16, TY3:= REAL17, TY4:= REAL18, OUT=> REAL19); END_PROGRAM
Library
LIB\HVAC
Version
V1.0
Description
A heating curve calculates heating water setpoint based on the outside temperature: the lower the outside temperature, the higher the heating water setpoint. The block contains two 4-point curves: day curve, and night curve.
Inputs
Input | Type | Description | Default value |
BR | BOOL | Llinear interpolation switch, see below | False |
IN | REAL | Input: outside temperature (°C) | 0 |
FDY | REAL | Night depression temperature correction (K) | 0 |
FX1 | REAL | X - coordinate of 1st point - night (°C) | -15 |
FX2 | REAL | X - coordinate of 2nd point - night (°C) | -5 |
FX3 | REAL | X - coordinate of 3rd point - night (°C) | 0 |
FX4 | REAL | X - coordinate of 4th point - night (°C) | 15 |
FY1 | REAL | Y - coordinate of 1st point - night (°C) | 80 |
FY2 | REAL | Y - coordinate of 2nd point - night (°C) | 60 |
FY3 | REAL | Y - coordinate of 3rd point - night (°C) | 40 |
FY4 | REAL | Y - coordinate of 4th point - night (°C) | 30 |
TDY | REAL | Day depression temperature correction (K) | 0 |
TX1 | REAL | X - coordinate of 1st point - day (°C) | -15 |
TX2 | REAL | X - coordinate of 2nd point - day (°C) | -5 |
TX3 | REAL | X - coordinate of 3rd point - day (°C) | 0 |
TX4 | REAL | X - coordinate of 4th point - day (°C) | 15 |
TY1 | REAL | Y - coordinate of 1st point - day (°C) | 80 |
TY2 | REAL | Y - coordinate of 2nd point - day (°C) | 60 |
TY3 | REAL | Y - coordinate of 3rd point - day (°C) | 40 |
TY4 | REAL | Y - coordinate of 4th point - day (°C) | 30 |
Outputs
Output | Type | Description |
OUT | REAL | Heating water setpoint (°C) |
Function
The input temperature is calculated by linear interpolation in the range given by neighbouring outside parameter values. The block contains two heating curves: for day and for night, which are switched by the BR variable. If BR is TRUE, the TX - TY curve is active, if BR is FALSE, the FX - FY curve is active. The input BR is usually connected to a time scheduler, if a separate night curve is used. The *dy variables move the whole curve along the y axis, i.e. the values are added to the resulting heating water setpoint. They can be connected to the room controller output to correct the setpoint according to the reference room temperature, which would compensate the thermal gains caused by e.g. internal influences or solar irradiation of the facade.
If the outside temperature falls below *X1, the heating water setpoint is limited by *Y1. Similarly, if the outside temperature rises above *X4, the setpoint does not fall below *Y4.
Application example
The block is used in heating circuits with outside temperature compensation. It can be used also to calculate the maximum temperature of boilers or heat exchangers, or as a general “linearisation” function with a 4-point curve. At the image below, find a simple weather-compensated controller (block B35) which acquires its setpoint from the heating curve output (block T1). tout is the outside temperature. The T17 time schedule changes between day and night heating curves.
In some situations, it is advisable to filter the outside temperature, or prevent malfunction of the curve in case of broken outside temperature sensor.