FB_CrestronPushBoolArray

FB_CrestronPushBoolArray 1:

Dieser Funktionsblock dient dazu, ein Bool-Array der SPS in eine Crestron Steuerung zu schreiben.

Die Push-Befehle empfangen keine Bestätigung von der Crestron-Steuerung. Dadurch ist die Ausführungsgeschwindigkeit höher als bei den Write-Befehlen.

Die Kommunikation erfolgt hierbei über eine Instanz von FB_CrestronCommunication. Bei der Deklaration von FB_CrestronPushBoolArray wird die gewünschte Instanz von FB_CrestronCommunication angegeben.

Beispiel:

VAR
    fbCrestronPushBoolArray : FB_CrestronPushBoolArray(Communication.fbCrestronCommunication);
END_VAR

VAR_INPUT

bStart        : BOOL;
pData         : POINTER TO BOOL;
nElements     : INT;
nWriteOffset  : INT;

bStart: Durch eine positive Flanke wird der Push-Befehl versendet.

pData: Zeiger auf ein Bool-Array, in dem sich die Werte befinden, die geschrieben werden sollen. Der Programmierer ist selbst dafür verantwortlich das Bool-Array in der Größe so zu dimensionieren, dass es die gesamten Daten enthält.

nElements: Gibt die Anzahl der Elemente an, die in das SIMPL+ Macro TwinCAT 3 Communication der Crestron Steuerung geschrieben werden sollen. Der Zeiger pData verweist somit auf ein Bool-Array, das mindestens so viele Elemente hat, wie durch nElements angegeben (1-50).

nWriteOffsets: Gibt an, ab welcher Position die Daten in das SIMPL+ Macro TwinCAT 3 Communication der Crestron Steuerung geschrieben werden sollen (1-500).

VAR_OUTPUT

bBusy        : BOOL;
bError       : BOOL;
nErrorId     : UDINT;

bBusy: Während des Schreibvorgangs wird der Ausgang bBusy auf TRUE gesetzt und bleibt so lange TRUE, bis das Schreiben abgeschlossen wurde. Während dieser Zeit können über diesen Baustein keine weiteren Befehle aktiviert werden.

bError: Der Ausgang ist TRUE, sobald beim Ausführen des Befehls ein Fehler auftritt.

nErrorId: Enthält den Fehlercode, der bei der Ausführung des Bausteins auftreten kann. Ist kein Fehler aufgetreten, so ist der Wert 0.