FB_HVAC3PointActuator

Dieser Funktionsbaustein dient zur Ansteuerung von Dreipunktventilen oder Dreipunktklappen mit oder ohne stetiger Stellungsrückmeldung.
Häufige Anwendung findet der Baustein in Verbindung mit dem Funktionsbaustein FB_HVACAnalogTo3Point.
VAR_INPUT
eDataSecurityType : E_HVACDataSecurityType;
bSetDefault : BOOL;
bEnable : BOOL;
bAutoOpen : BOOL;
bAutoClose : BOOL;
eCtrlModeActuator : E_HVAC3PointActuatorMode;
bManSwitch : BOOL;
rFeedb : REAL
bCtrlVoltage : 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: Mit der Eingangsvariablen bEnable wird der Baustein vom SPS-Programm frei gegeben. Ohne Freigabe des Bausteins bleibt das Dreipunktstellorgan immer ganz geschlossen. Der Ausgang bClose ist dauerhaft TRUE.
bAutoOpen / bAutoClose: Im Automatikbetrieb wird der Dreipunktantrieb von den Eingangsvariablen bAutoClose und bAutoOpengesteuert.
eCtrlModeActuator: Enum, das die Betriebsart festlegt (siehe E_HVAC3PointActuatorMode).
bManSwitch: Besitzt der Dreipunktantrieb einen Hand-/Not-Schalter im Schaltschrank, dann kann dieser an den Eingang bManSwitch angeschlossen werden, somit wird der Status vom Hand-/Not-Schalter überwacht. Bei bManSwitch= FALSE wird der Ausgang bOut des Antriebes auf FALSE gesetzt.
rFeedb: Analoge Stellungsrückmeldung vom Stellorgan (0%..100%).
bCtrlVoltage: Parameter zur Kontrolle der Steuerspannung. Die Steuerspannung steht an, wenn die Variable bCtrlVoltage TRUE ist. Bei einem Ausfall der Steuerspannung wird die Feedbackkontrolle unterdrückt.
bReset: Quittierungseingang bei einer Störung.
VAR_OUTPUT
bOpen : BOOL;
bClose : BOOL;
byState : BYTE;
eStateModeActuator : E_HVAC3PointActuatorMode;
bErrorFeedb : BOOL;
bInvalidParameter : BOOL;
bOpen: An diesem Ausgang wird das Signal zum Auffahren des Dreipunktantriebes angeschlossen.
bClose: An diesem Ausgang wird das Signal zum Zufahren des Dreipunktantriebes angeschlossen.
byState: Zeigt den Status der Ansteuerung vom Stellorgan an:
byState.0:= Enable
byState.1:= Manual Switch
byState.2:= Enable Feedback Control
byState.3:= Control Voltage
byState.4:= Reset
eStateModeActuator: Zeigt in welchem Betriebsmodus das Stellorgan ist (siehe E_HVAC3PointActuatorMode).
bErrorFeedb: Beim Setzen des Ausgangs bClose muss sich die Position des Antriebs innerhalb der Zeit tStrokeTime mindestens um den Betrag von rHysteresisFeedb verringert haben.
Beim Setzen des Ausgangs bOpenmuss sich die Position des Antriebs innerhalb der Zeit tStrokeTime mindestens um den Betrag von rHysteresisFeedb erhöht haben.
Ist die tatsächliche Position nach einem Verfahrbefehl innerhalb der vorgegebenen Zeit nicht innerhalb des Toleranzbereichs, dann wird dieses am Ausgang bErrorFeedb mit TRUE signalisiert. Beide Ausgänge bOpenund bClose werden FALSE. Die Störung wird mit einer positiven Flanke am Eingang bReset quittiert.
bInvalidParameter: TRUE, wenn bei der Plausibilitätsüberprüfung ein Fehler aufgetreten ist. Die Meldung muss mit bReset quittiert werden.
VAR_IN_OUT
bEnableFeedbCtrl : BOOL;
rMinValueFeedb : REAL;
rMaxValueFeedb : REAL;
rHysteresisFeedb : REAL;
tStrokeTime : TIME:
bEnableFeedbCtrl: Ist der Eingang TRUE, dann ist die Kontrolle des Rückführungssignals aktiviert. Die Variable wird persistent gespeichert.
rMinValueFeedb: Dient zur Skalierung der analogen Stellungsrückmeldung. rMinValueFeedb beinhaltet den Wert des Analogsignals bei komplett geschlossenem Stellorgan (0%..100%). Die Variable wird persistent gespeichert. Voreingestellt auf 0.
rMaxValueFeedb: Dient zur Skalierung der analogen Stellungsrückmeldung. rMaxValueFeedb beinhaltet den Wert des Analogsignals bei komplett geöffnetem Stellorgan (0%..100%). Die Variable wird persistent gespeichert. Voreingestellt auf 0.
rHysteresisFeedb: Bedingt durch die Verfahrzeit des Antriebes, ist bei einem Sprung des Positionssollwertes die Stellungsrückführung immer nacheilend. Mit der Variablen rHysteresisFeedbCtrl wird ein Bereich festgelegt, innerhalb dessen der Positionssollwert des Stellorgans vom Rückführsignal abweichen kann, ohne dass die Feedbackkontrolle (bErrorFeedb) anspricht (0%..100%). Die Variable wird persistent gespeichert. Voreingestellt auf 10.
tStrokeTime: Durch das Nacheilen der tatsächlichen Position in Bezug auf die Sollposition wird das Ansprechen der Feedbackkontrolle bei einer Überschreitung der maximal zulässigen Differenz durch die Zeitvariable tStrokeTime [s] verzögert. Wenn das Stellorgan ganz geschlossen und einen Sollwertsprung auf 100% erhält, sollte als Zeit mindestens die Verfahrzeit des Antriebes über seinen gesamten Verfahrweg eingegeben werden (0s..3600s). Die Variable wird persistent gespeichert. Voreingestellt auf 200s.
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 |