FB_BARFctSelection

Der Funktionsbaustein dient zur Freigabe einer Raumheizung oder Raumkühlung. Er kann für 2-Leiter Rohrleitungssysteme (change over) oder 4-Leiter Rohrleitungssysteme verwendet werden.
Bei einem 4-Leiter Rohrleitungssystem erfolgt die Umschaltung vom Heiz- in den Kühlbetrieb automatisch anhand des Vergleiches von dem Raumtemperatursollwert und dem Raumtemperaturistwert.
Skizze:
Bei einem 2-Leiter Rohrleitungssystem darf die Freigabe des Heizbetriebes oder des Kühlbetriebes nur dann erfolgen, wenn Heizmedium bzw. Kühlmedium ansteht. Diese Information bekommt die Raumtemperaturregelung von den Primäranlagen.
Sowohl in 2-Leiter Rohrleitungssystemen als auch in 4-Leiter Rohrleitungssystemen kann das Umschalten zwischen dem Heizbetrieb und dem Kühlbetrieb durch einen Timer verzögert werden. Dafür muss die Eingangsvariable udiChangeOverDelay größer Null sein.
Folgende Tabellen beschreiben den Zusammenhang zwischen den Eingängen und dem Ausgang eCtrlFct des Funktionsbausteins FB_BARFctSelection.
Im 2-Leiter Rohrleitungssystem
bEnable | bPipeSystem | bFeedbHeatMedium | bFeedbCoolMedium | interim Result | bDewPoint | eCtrlFct |
---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | OFF | TRUE / FALSE | OFF |
1 | 0 | 0 | 0 | Heating | TRUE / FALSE | Heating |
1 | 0 | 0 | 1 | Cooling | TRUE | OFF |
FALSE | Cooling | |||||
1 | 0 | 1 | 0 | Heating | TRUE / FALSE | Heating |
1 | 0 | 1 | 1 | Heating | TRUE / FALSE | Heating |
Im 4-Leiter Rohrleitungssystem
bEnable | bPipeSystem | T_Room < = Tsetpoint | T_Room > Tsetpoint | interim Result | bDewPoint | eCtrlFct |
---|---|---|---|---|---|---|
0 | 1 | 0 | 0 | OFF | TRUE / FALSE | OFF |
1 | 1 | 0 | 1 | Cooling | TRUE | OFF |
FALSE | Cooling | |||||
1 | 1 | 1 | 0 | Heating | TRUE / FALSE | Heating |
1 | 1 | 1 | 1 | Heating | TRUE / FALSE | Heating |
VAR_INPUT
eDataSecurityType : E_HVACDataSecurityType;
bSetDefault : BOOL;
bEnable : BOOL;
bPipeSystem : BOOL;
bFeedbHeatMedium : BOOL;
bFeedbCoolMedium : BOOL;
bDewPoint : BOOL;
rRoomTemp : REAL;
stSetpoint : ST_BARSetpointRoom;
eDataSecurityType:Wenn eDataSecurityType:= eHVACDataSecurityType_Persistent ist, werden die persistenten VAR_IN_OUT-Variablen des Funktionsbausteins bei einer Wertänderung im Flash des Rechners abgelegt. Dafür ist es zwingend erforderlich den Funktionsbaustein FB_HVACPersistentDataHandling einmalig im Hauptprogramm, das zyklisch aufgerufen wird, zu instanziieren. Ansonsten wird der instanziierte FB intern nicht freigegeben.
Eine Wertänderung kann vom Gebäudeleitsystem, einem lokalen Bediengerät oder von einem Schreibzugriff von TwinCAT aus erfolgen. Beim Neustart des Rechners werden die gesicherten Daten automatisch vom Flash in den RAM zurück gelesen.
Anwendungsbeispiel: example_persistent.zip
Bei eDataSecurityType:= eHVACDataSecurityType_Idle werden die persistent deklarierten Variablen nicht spannungsausfallsicher gespeichert.
Hinweis | |
Eine sich zyklisch ändernde Variable darf niemals mit der IN_OUT-Variablen eines Funktionsbausteins verbunden werden, wenn eDataSecurityType:= eHVACDataSecurityType_Persistent ist. Es würde zu einem frühzeitigen Verschleiß des Flashspeichers führen. |
bSetDefault: Wenn die Variable TRUE ist, werden die Default-Werte der VAR_IN_OUT Variablen übernommen.
bEnable: TRUE, Freigabe des Bausteines. Liegt ein FALSE an, ist der Baustein gesperrt und eCtrlFct := eHVACCtrlFct_Off.
bPipeSystem: FALSE, bedeutet ein 2-Leitersystem ist vorhanden. TRUE, bedeutet ein 4-Leitersystem ist vorhanden.
bFeedbHeatMedium: Meldung von der Energieerzeugung bzw. Verteilung, dass Heizmedium zur Verfügung steht.
bFeedbCoolMedium: Meldung von der Energieerzeugung bzw. Verteilung, dass Kühlmedium zur Verfügung steht.
bDewPoint: An diesen Eingang wird der Taupunktfühler angeschlossen, löst dieser aus wird die Kühlregelfunktion deaktiviert und eCtrlFct := eHVACCtrlFct_Off gesetzt.
rRoomTemp: Über diese Eingangsvariable wird dem Funktionsbaustein die aktuelle Raumtemperatur übergeben.
stSetpoint: STRUKTUR, die die Sollwerte der einzelnen Energieniveaus beinhaltet (siehe ST_BARSetpointRoom).
VAR_OUTPUT
eCtrlFct : E_BARCtrlFct;
uiReqHeating : UINT;
uiReqCooling : UINT;
udiRT_ChangeOverDelay : UDINT;
eCtrlFct: Dieser Ausgang enthält die aktuelle Regelfunktion (siehe E_BARCtrlFct).
uiReqHeating: Ist 1, wenn der Raum/Zone Heizenergie anfordert. Ist 0, wenn kein Heizbedarf vorhanden ist.
uiReqCooling: Ist 1, wenn der Raum/Zone Kühlenergie anfordert. Ist 0, wenn kein Kühlbedarf vorhanden ist.
udiRT_ChangeOverDelay: Zeigt die verbleibende Zeit an, bis die aktive Regelfunktion umgeschaltet wird.
VAR_IN_OUT
uiChangeOverDelay : UINT;
uiChangeOverDelay: Umschaltzeit zw. den Regelfunktionen. Die Angabe muss in Sekunden erfolgen. Ist die Eingabe größer 0, wird diese immer beachtet. Soll zw. den Regelfunktionen keine Umschaltzeit sein, muss die Variable 0 sein. Die Variable wird persistent gespeichert. Voreingestellt auf 0.
Voraussetzungen
Entwicklungsumgebung | erforderliche Bibliothek | Erforderliche Function |
---|---|---|
TwinCAT 3.1 ab Build 4022.16 | Tc2_HVAC V3.3.1.0 | TF8000 | TC3 HVAC V1.0.0.0 |