FB_BARSunblindEvent

Dieser Baustein dient zur Positions- und Winkelvorgabe bei einem beliebigen Ereignis. Sie kann beispielsweise genutzt werden, um eine Parkposition anzufahren oder im Wartungsfall die Jalousie hochfahren zu lassen.
Die Funktion wird über den Eingang bActivate aktiviert. Ist dies der Fall, so wird der Aktiv-Merker im Positioniertelegramm (bActive in stSunblind) am Ausgang stSunblind gesetzt und die an den In-Out-Variablen eingetragenen Werte uiPositionEvent für die Jalousiehöhe in % und iAngleEvent für den Lamellenwinkel in Grad in diesem Telegramm weiter gereicht. Ist die Funktion durch Rücksetzen von bActive nicht mehr aktiv, so wird der Aktiv-Merker im Positioniertelegramm stSunblind wird zurück und die Positionen für Höhe und Winkel auf "0" gesetzt. Nutzt man den Prioritätenbaustein, so kann dann eine Funktion niedrigerer Priorität die Steuerung übernehmen.
VAR_INPUT
eDataSecurityType : E_HVACDataSecurityType;
bActivate : 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. |
bActivate: Ein TRUE-Signal an diesem Eingang aktiviert den Baustein und übergibt die eingetragenen Sollwerte im Positioniertelegramm ST_BARSunblind zusammen mit dem Aktivmerker. Ein FALSE-Signal setzt den Aktivmerker wieder zurück, sowie Position und Winkel auf Null.
VAR_OUTPUT
stSunblind : ST_BARSunblind;
bActive : BOOL;
bActive : Entspricht dem Boole´schen Wert bActive im Jalousie-Telegramm ST_BARSunblind und dient zur reinen Anzeige, ob der Baustein ein aktives Telegramm sendet.
stSunblind: Ausgabestruktur der Jalousiestellungen, siehe ST_BARSunblind
VAR_IN_OUT
Damit die eingetragenen Parameter über einen Steuerungsausfall hinweg erhalten bleiben ist es erforderlich, sie als In-Out-Variablen zu deklarieren. Im Programm wird ihnen dann eine Referenz-Variable zugewiesen. Jede Änderung des Wertes dieser Referenz-Variablen wird im Funktionsbaustein persistent gespeichert und nach einem Steuerungsausfall und -wiederanlauf zurück in die Referenz-Variable geschrieben. Wären die Parameter nur als Eingangsvariablen deklariert, so könnten sie eine Referenzvariable nicht beschreiben.
Anwendungsbeispiel: example_persistent.zip.
uiPositionPark : UINT;
iAnglePark : INT;
uiPositionEvent: Höhenposition der Jalousie in % im Falle einer Aktivierung.
iAngleEvent: Lamellenwinkel der Jalousie in Grad im Falle einer Aktivierung.
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 |