Deklaration von Eigenschaften beim Start

Bei normaler SPS-Programmierung werden Sie wahrscheinlich Aufrufe wie diesen finden:

Deklaration von Eigenschaften beim Start 1:

Wenn die Werte ständig von der SPS geschrieben werden, hätte das Schreiben aus dem BACnet keine Wirkung, die Werte würden sofort überschrieben werden. Daher sollten vor allem die Eigenschaften, die sich nicht oft oder gar nicht ändern, im Variablenbereich als Anfangsparameter deklariert werden. Der folgende Code zeigt ein Beispiel für die Initialisierung von Eigenschaften zum Zeitpunkt des ersten SPS-Starts.

PROGRAM test
VAR
       fbBI    :    FB_BACnet_BI    := (
                                 sObjectName := 'Name',
                                 sDescription := 'Description',
                                 bEventDetectionEnable := TRUE
                                                               );
       bDescriptionChanged          :     BOOL;
END_VAR


--------------

fbBI();
IF bDescriptionChanged THEN
       bDescriptionChanged := FALSE;
       fbBI.sDescription := 'New Description';
END_IF

Im obigen Beispiel werden die Property-Werte (nur die, die eine Konfiguration erfordern) aus der Deklaration zum Zeitpunkt des ersten SPS-Starts übernommen. Wenn eine Konfigurationseigenschaft geändert werden muss, empfehlen wir ein Write-on-Change-Verfahren, wie hier gezeigt, und nicht zyklisches Schreiben. Außerdem würde die Implementierung eines zyklischen Schreibens dazu führen, dass keine von BACnet geschriebenen Werte mehr angenommen werden.