FB_BA_StepCtrl12

Schaltstufenbaustein, 12-fach

FB_BA_StepCtrl12 1:

Funktionsbeschreibung

Der Funktionsbaustein dient zur Ausgabe sequenziell folgender Steuerungsbefehle. Eine typische Anwendung dieses Bausteins ist der Startvorgang einer raumlufttechnischen Anlage. bEn ist für die generelle Freigabe des Funktionsbausteins. Bei bEn = FALSE werden alle Ausgänge von bQ01 bis bQ12 auf FALSE gesetzt. Das Starten der Steuersequenz erfolgt am Eingang bEvt01. Nach dem Ablauf des Timers udiDlyOn01 wird der zugehörige Ausgang bQ01 gesetzt. Weitere Stufen schalten nach einer steigenden Flanke an den Eingängen bEvt02 bis bEvt12 jeweils Zeitverzögert über die Timer udiDlyOn02 bis udiDlyOn12 zu. Wird bEvt01 bei hochgelaufener Steuerkette FALSE dann schalte die Steuersequenz in umgekehrter Reihenfolge zurück. Das Abschalten der Ausgänge wird durch die Timer udiDlyOff01 bis udiDlyOff12 verzögert.

Die Ausgänge bUp und bDwn zeigen an ob sich die Steuerkette im absteigenden oder fallenden Zustand befindet. Die Variable udiActvEvt zeigt an in welchen Schritt sich die Steuerkette aktuell befindet. Dabei bedeutet "0", dass die Schrittkette nicht aktiv ist. Für die Verwendung mit einem BACnet-Multistate-Output-Objekt, welches keine "0" anzeigen kann, steht der Ausgang udiStep zur Verfügung, der den Ausgang udiActvEvt+1 darstellt.

udiRemTiDlyOn zeigt beim Hochschalten der Steuerkette die verbleibenden Zeit bis zum nächsten Schritt an. udiRemTiDlyOff zeigt beim Runterschalten der Steuerkette die verbleibende Zeit bis zum Umschalten in den nächst niedrigeren Schritt an.

Beispiel

FB_BA_StepCtrl12 2:

t0 Einschalten der Schrittkette
t1 Einschalten Schritt 1, udiDlyOn01 = t1 - t0
t2 Ereignis Freigabe Schritt 2, Einschalten Schritt 2, udiDlyOn02 = 0
t3 Ereignis Freigabe Schritt 3, Einschalten Schritt 3, udiDlyOn03 = 0
t4 Ereignis Freigabe Schritt 4, Einschalten Schritt 4, udiDlyOn04 = 0
t5 Ereignis Freigabe Schritt 5, Einschalten Schritt 5, udiDlyOn05 = 0
t6 Abschalten der Schrittkette, Abschalten Schritt 5, Abschalten Schritt 4; udiDlyOff05 = 0, udiDlyOff04 = 0
t7 Abschalten Schritt 3, udiDlyOff03 = t7 -t6
t8 Abschalten Schritt 2, udiDlyOff02 = t8 -t7
t9 Abschalten Schritt 1, udiDlyOff01 = t9 -t8

Ein-/Ausgänge

VAR_INPUT

bEn         : BOOL;
bEvt01      : BOOL;
udiDlyOn01  : UDINT;
udiDlyOff01 : UDINT;
bEvt02      : BOOL;
udiDlyOn02  : UDINT;
udiDlyOff02 : UDINT;
bEvt03      : BOOL;
udiDlyOn03  : UDINT;
udiDlyOff03 : UDINT;
bEvt04      : BOOL;
udiDlyOn04  : UDINT;
udiDlyOff04 : UDINT;
bEvt05      : BOOL;
udiDlyOn05  : UDINT;
udiDlyOff05 : UDINT;
bEvt06      : BOOL;
udiDlyOn06  : UDINT;
udiDlyOff06 : UDINT;
bEvt07      : BOOL;
udiDlyOn07  : UDINT;
udiDlyOff07 : UDINT;
bEvt08      : BOOL;
udiDlyOn08  : UDINT;
udiDlyOff08 : UDINT;
bEvt09      : BOOL;
udiDlyOn09  : UDINT;
udiDlyOff09 : UDINT;
bEvt10      : BOOL;
udiDlyOn10  : UDINT;
udiDlyOff10 : UDINT;
bEvt11      : BOOL;
udiDlyOn11  : UDINT;
udiDlyOff11 : UDINT;
bEvt12      : BOOL;
udiDlyOn12  : UDINT;
udiDlyOff12 : UDINT;

bEn: Freigabe des Funktionsbausteins

bEvt01: Einschalten der Steuerkette

udiDlyOn01: Einschaltverzögerung für Ausgang bQ01 [s]

udiDlyOff01: Ausschaltverzögerung für Ausgang bQ01 [s]

bEvt02: Weiterschaltbefehl Schritt 2

udiDlyOn02: Einschaltverzögerung für Ausgang bQ02 [s]

udiDlyOff02: Ausschaltverzögerung für Ausgang bQ02 [s]

bEvt03: Weiterschaltbefehl Schritt 3

udiDlyOn03: Einschaltverzögerung für Ausgang bQ03 [s]

udiDlyOff03: Ausschaltverzögerung für Ausgang bQ03 [s]

bEvt04: Weiterschaltbefehl Schritt 4

udiDlyOn04: Einschaltverzögerung für Ausgang bQ04 [s]

udiDlyOff04: Ausschaltverzögerung für Ausgang bQ04 [s]

bEvt05: Weiterschaltbefehl Schritt 5

udiDlyOn05: Einschaltverzögerung für Ausgang bQ05 [s]

udiDlyOff05: Ausschaltverzögerung für Ausgang bQ05 [s]

bEvt06: Weiterschaltbefehl Schritt 6

udiDlyOn06: Einschaltverzögerung für Ausgang bQ06 [s]

udiDlyOff06: Ausschaltverzögerung für Ausgang bQ06 [s]

bEvt07: Weiterschaltbefehl Schritt 7

udiDlyOn07: Einschaltverzögerung für Ausgang bQ07 [s]

udiDlyOff07: Ausschaltverzögerung für Ausgang bQ07 [s]

bEvt08: Weiterschaltbefehl Schritt 8

udiDlyOn08: Einschaltverzögerung für Ausgang bQ08 [s]

udiDlyOff08: Ausschaltverzögerung für Ausgang bQ08 [s]

bEvt09: Weiterschaltbefehl Schritt 9

udiDlyOn09: Einschaltverzögerung für Ausgang bQ09 [s]

udiDlyOff09: Ausschaltverzögerung für Ausgang bQ09 [s]

bEvt10: Weiterschaltbefehl Schritt 10

udiDlyOn10: Einschaltverzögerung für Ausgang bQ10 [s]

udiDlyOff10: Ausschaltverzögerung für Ausgang bQ10 [s]

bEvt11: Weiterschaltbefehl Schritt 11

udiDlyOn11: Einschaltverzögerung für Ausgang bQ11 [s]

udiDlyOff11: Ausschaltverzögerung für Ausgang bQ11 [s]

bEvt12: Weiterschaltbefehl Schritt 12

udiDlyOn12: Einschaltverzögerung für Ausgang bQ12 [s]

udiDlyOff12: Ausschaltverzögerung für Ausgang bQ12 [s]

VAR_OUTPUT

bQ01           : BOOL;
bQ02           : BOOL;
bQ03           : BOOL;
bQ04           : BOOL;
bQ05           : BOOL;
bQ06           : BOOL;
bQ07           : BOOL;
bQ08           : BOOL;
bQ09           : BOOL;
bQ10           : BOOL;
bQ11           : BOOL;
bQ12           : BOOL;
bUp            : BOOL;
bDwn           : BOOL;
udiActvEvt     : UDINT;
udiRemTiDlyOn  : UDINT;
udiRemTiDlyOff : UDINT;

bQ01: Schritt 1 Ein

bQ02: Schritt 2 Ein

bQ03: Schritt 3 Ein

bQ04: Schritt 4 Ein

bQ05: Schritt 5 Ein

bQ06: Schritt 6 Ein

bQ07: Schritt 7 Ein

bQ08: Schritt 8 Ein

bQ09: Schritt 9 Ein

bQ10: Schritt 10 Ein

bQ11: Schritt 11 Ein

bQ12: Schritt 12 Ein

bUp: Steuerkette ist im aufsteigenden Zustand

bDwn: Steuerkette ist im fallenden Zustand

udiActvEvt: Aktiver Schritt, Anzeige 0..12, wobei "0" für eine nicht aktive Schrittkette steht.

udiRTiDlyOn: Restzeit bis zum Hochschalten in den nächsten Schritt [s]

udiRTiDlyOff: Restzeit bis zum Runterschalten in den vorherigen Schritt [s]

Voraussetzungen

Entwicklungsumgebung

Zielsystem

erforderliche Bibliothek

erforderliches Supplement

TwinCAT 2.11 R3/x64

PC/CX

TcBA-Bibliothek ab V1.0.0

TS8040 | TwinCAT Building Automation ab V1.0.0