FB_HVACCmdCtrlSystem1Stage

Dieser Funktionsbaustein FB_HVACCmdCtrlSystem1Stage ist ein Anlagenschalter. Mit Ihm wird beispielsweise eine einstufige Lüftungsanlage in den Automatik- oder Handbetrieb geschaltet. Im Automatikbetrieb könnte die Anlage über ein Zeitschaltprogramm oder über die Anforderung eines Bedientableaus gesteuert werden. Der Funktionsbaustein FB_HVACCmdCtrlSystem1Stage ist aktiv, wenn die Eingangsvariablen bEnable = TRUE und eCtrlModeActuator = eHVACActuatorMode_Auto_BMS oder eHVACActuatorMode_Auto_OP ist.
VAR_INPUT
eDataSecurityType : E_HVACDataSecurityType;
bSetDefault : BOOL;
bEnable : BOOL;
eCtrlModeActuator : E_HVACActuatorMode;
bExternalRequest : BOOL;
bTimeScheduler : BOOL;
bReset : BOOL;
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: Freigabe des Bausteines, wenn bEnable = TRUE ist. Ist bEnable = FALSE, so ist bOn = FALSE.
eCtrlModeActuator: Enum, über welches die Betriebsarten Hand, Auto und Aus der Anlage vorgegeben wird (siehe E_HVACActuatorMode). Bei falscher Angabe wird intern mit der letzten, gültigen Betriebsart weitergearbeitet. Bei der Erstinbetriebnahme ist diese eHVACActuatorMode_Auto_BMS. bInvalidParameter wird bei falscher Parameterangabe gesetzt.
bExternalRequest: Externe Anforderung der Anlage z.B. von einem Bedientableau über einen Taster oder Schalter.
bTimeScheduler: Anforderung der Anlage über ein Zeitschaltprogramm.
bReset: Quittierungseingang bei einem Fehler
VAR_OUTPUT
bOn : BOOL;
eStateModeActuator : E_HVACActuatorMode;
bRequestScheduler : BOOL;
bRequestExternal : BOOL;
bInvalidParameter : BOOL;
bOn: An dieser Ausgangsvariablen wird die Freigabe der Anlage ausgegeben.
eStateModeActuator: Enum, über das der Status der Betriebsart des Motors an die Steuerung zurückgegeben wird (siehe E_HVACActuatorMode).
bRequestScheduler: Dieser Ausgang signalisiert, dass die Anlage von der Eingangsvariablen bTimeScheduler angefordert ist.
bRequestExternal: Dieser Ausgang signalisiert, dass die Anlage von der Eingangsvariable bExternalRequest angefordert ist.
bInvalidParameter: Zeigt an, dass ein falscher Parameter an einer der Variablen eCtrlModeActuator,ePlantMode oder eExternalRequestMode anliegt. Eine falsche Parameterangabe führt nicht zum Stillstand des Bausteines, siehe Beschreibung der Variablen. Nach Behebung der falschen Parameterangabe muss die Meldung bInvalidParameter mit bReset quittiert werden.
VAR_IN_OUT
ePlantMode : E_HVACPlantMode;
eExternalRequestMode : E_HVACExternalRequestMode;
tOffDelay : TIME;
ePlantMode: Mit dieser Aufzählungsvariablen können verschiedene Funktionen der Anlage im Automatikbetrieb in Abhängigkeit der Eingangsvariablen bExternalRequest und bTimeScheduler vorgenommen werden (siehe E_HVACPlantMode).
ePlantMode = eHVACPlantMode_TimeSchedulingOnly: Die Anlage wird ausschließlich über die Eingangsvariable bTimeScheduler ein- und ausgeschaltet.
ePlantMode = eHVACPlantMode_TimeScheduling_And_ExternalRequest: Die Anlage wird eingeschaltet, wenn die Eingangsvariablen bTimeScheduler UND bExternalRequest = TRUE sind.
ePlantMode = eHVACPlantMode_TimeScheduling_Or_ExternalRequest: Die Anlage wird über die Eingangsvariablen bTimeScheduler ODER bExternalRequest eingeschaltet.
ePlantMode = eHVACPlantMode_ExternalRequestOnly: Die Anlage wird ausschließlich über die Eingangsvariable bExternalRequest ein- und ausgeschaltet.
Liegt ein nicht korrekter Variablenwert an, dann wird, wenn vorhanden der letzte, gültige Variablenwert genommen. Wenn kein gültiger, letzter Wert vorliegt, dann wird mit dem Default-Wert weitergearbeitet. bInvalidParameter wird bei falscher Parameterangabe gesetzt. Die Variable wird persistent gespeichert. Voreingestellt auf 0.
eExternalRequestMode: Mit dem Enum eExternalRequestMode wird die Wirkungsweise der Eingangsvariable bExternalRequest im Automatikbetrieb in Abhängigkeit des Enums ePlantMode vorgegeben (siehe E_HVACExternalRequestMode).
eExternalRequestMode = eHVACExternalRequestMode_ButtonOn_Off: Die externe Anforderung wird nach einer steigenden Flanke von bExternalRequest auf TRUE gesetzt. Eine weitere steigende Flanke setzt die Anforderung wieder auf FALSE zurück.
eExternalRequestMode = eHVACExternalRequestMode_ButtonOffDelay: Die externe Anforderung verlängert oder setzt die Nutz Zeit der Anlage nach einer steigenden Flanke an der Eingangsvariablen bExternalRequest um die eingestellte Zeit von tOffDelay.
eExternalRequestMode = eHVACExternalRequestMode_SwitchOn_Off: Die externe Anforderung ist aktiv, wenn bExternalRequest = TRUE ist. Sie wird deaktiv, wenn bExternalRequest = FALSE ist.
Liegt ein falscher Variablenwert an, dann wird, wenn vorhanden der letzte, gültige Variablenwert genommen. Wenn kein gültiger, letzter Wert vorliegt, dann wird mit dem Default-Wert weitergearbeitet. bInvalidParameter wird bei falscher Parameterangabe gesetzt. Die Variable wird persistent gespeichert. Voreingestellt auf 0.
tOffDelay: Zeitwert für die Nutzzeitverlängerung der Anlage. Die Nutzzeitverlängerung kann nur aktiviert werden, wenn eModeExternalRequest = 2 ist. Die Variable wird persistent gespeichert. Voreingestellt auf 30min.
Verhalten der Ausgangsgröße
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 |