FB_BA_HeatCool_PID

Dieses Template dient zur Regelung einer Heiz- Kühlzone.
Mit der Prioritätenauswahl EnergLvlSlcn wird zunächst das aktuell gültige Energieniveau bestimmt.
Der Fensterkontakt hat dabei immer Vorrang und schaltet bei geöffnetem Fenster auf das Energieniveau „Protection“. Bei Präsenz im Raum wird stets das Niveau „Comfort“ aktiviert.
Der Funktionsbausteins RmTAdj dient einer lokalen Verschiebung des Raumtemperatursollwerts für die Energieniveaus „Pre-Comfort“ und „Comfort“.
Die Sollwertverschiebung erfolgt dabei über einen lokalen Eingabewert fRmTAdj oder über einen externen Wert fRmTAdj_In der über die Basisklasse FB_BA_Ext_SunblindAngle (interner Baustein) etwa über eine HMI eingelesen wird. Gültig ist dabei immer der Wert, welcher als letzter geändert wurde, dafür ist der Baustein FB_BA_LastWriterWins_R04 verantwortlich. Der Raumtemperaturwert ist auf +/- fRmTAdjLimit (im FB_init vordefiniert auf 1.0) begrenzt.
Die Instanz FnctSel des Funktionsbausteins FB_BA_FnctSel aktiviert den Heiz- oder Kühlregler der Temperaturzone.
Datenaustausch HMI
Der Datenaustausch mit der HMI wird hier in der Basisklasse FB_BA_Ext_HeatCoolBase (interner Baustein) realisiert. In diesem Template sichtbar ist die Verwendung folgender Variablen:
- fRmTAdj_In: Eingabe Raumsollwertverschiebung von der HMI.
- fRmTAdj_Out: Ausgabe aktuelle Raumsollwertverschiebung an die HMI.
- fRmTAdjLimit_Out: Ausgabe der +/- Bereichsgrenze der Raumsollwertverschiebung an die HMI.
- fRmT_Out: Ausgabe aktuelle Raumtemperatur an die HMI.
- fSPHtg_Out: Ausgabe Sollwert Heizen an die HMI.
- fSPCol_Out: Ausgabe Sollwert Kühlen an die HMI.
- fCtrlValHtg_Out: Ausgabe Ausgang Heizregler an die HMI.
- fCtrlValCol_Out: Ausgabe Ausgang Kühlregler an die HMI.
- eActualEnergyLevel_Out: Ausgabe aktuelles Energieniveau an die HMI.
- bErr_Out: Ausgabe Status "Fehler an FnctSel" an die HMI.
![]() | Die Initialisierung des Templates erfolgt innerhalb der Methode FB_Init. |
Blockschaltbild

Syntax
FUNCTION_BLOCK FB_BA_HeatCool_PID EXTENDS FB_BA_Ext_HeatCoolBase
VAR_INPUT
bPrc : BOOL;
bWdwCon : BOOL;
eMedium : E_BA_Medium;
bDewPnt : BOOL;
fRmT : REAL;
fRmTAdj : REAL;
stBuildingSpRmT : ST_BA_SpRmT;
eBuildingEnergyLevel : E_BA_EnergyLvlEx;
END_VAR
VAR_OUTPUT
bCtrlHtgActv : BOOL;
fCtrlValHtg : REAL;
bCtrlColActv : BOOL;
fCtrlValCol : REAL;
eReqdMedium : E_BA_Medium;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
ePipeSys : E_BA_PipeSys;
nFnctSelChgOvrDly : UDINT;
fRmTAdjLimit : REAL;
END_VAR
VAR_INPUT CONSTANT
CtrlHtg : FB_BA_Loop;
CtrlCol : FB_BA_Loop;
END_VAR
VAR
RmTAdj : FB_BA_RmTAdj;
EnergLvlSlcn : FB_BA_PrioSwi_UDI04;
SpSlcnHtg : FB_BA_MUX_R04;
SpSclnCol : FB_BA_MUX_R04;
FnctSel : FB_BA_FnctSel;
END_VAR
Eingänge
Name | Typ | Beschreibung |
---|---|---|
bPrc | BOOL | Präsenzerkennung |
bWdwCon | BOOL | Fensterkontakt (offen = TRUE) |
eMedium | Anstehendes Medium (Heiz- oder Kühlmedium, nur wichtig für Zweileiterbetrieb) | |
bDewPnt | BOOL | Taupunktwächter (Alarm = TRUE) |
fRmT | BOOL | Raumtemperatur [°C] |
fRmTAdj | REAL | Raumsollwertverschiebung [K] |
stBuildingSpRmT | Struktur der Raumsollwerte (Protection Cooling..Comfort Cooling und Protection Heating .. Comfort Heating) | |
eBuildingEnergyLevel | Aktuelles Gebäudeenergieniveau |
Ausgänge
Name | Typ | Beschreibung |
---|---|---|
bCtrlHtgActv | BOOL | Heizregler ist aktiv |
fCtrlValHtg | REAL | Stellwert Heizventil |
bCtrlColActv | BOOL | Kühlregler ist aktiv |
fCtrlValCol | REAL | Stellwert Kühlventil |
eReqdMedium | Gefordertes Medium (Heiz- oder Kühlmedium) |
Eingänge CONSTANT PERSISTENT
Name | Typ | Beschreibung |
---|---|---|
ePipeSys | Auswahl Zwei- oder Vierleitersystem. | |
nFnctSelChgOvrDly | UDINT | Umschaltverzögerung [s] von Heizen auf Kühlen und umgekehrt. |
fRmTAdjLimit | REAL | Einstellbarer Bereich [K] der Sollwertverschiebung fRmTAdj : -fRmTAdjLimit <= fRmTAdj <= +fRmTAdjLimit |
Variablen
Name | Typ | Beschreibung |
---|---|---|
RmTAdj | Baustein der die entsprechenden Sollwerte mit der Verschiebung beaufschlagt und explizit ausgibt. | |
EnergLvlSlcn | Priorisierende Auswahl und Umwandlung der möglichen Energieniveaus in einen Zahlenwert. | |
SpSlcnHtg | Auswahl des Heizsollwertes | |
SpSclnCol | Auswahl des Kühlsollwertes | |
FnctSel | Funktionsauswahl Heizen oder Kühlen. |
Voraussetzungen
Entwicklungsumgebung | Erforderliche Function |
---|---|
TwinCAT ab v3.1.4024.35 | TF8040 | TwinCAT Building Automation ab V5.0.0.0 |