Beeinflussung der Synchronisierung einer Variablen

Wenn eine asynchrone V.CH.-/V.E.-Variable zwingend für einen Echtzeit-Zyklus verwendet werden muss, dann lässt sich Synchronität für den aktuellen NC-Satz erzwingen.

Dies geschieht durch ein Anfügen eines "s" an den V-Knoten der Variable. Dies ist nur für den aktuellen Satz gültig, für alle anderen Sätze bleibt der Zugriff der Variable asynchron!

N10 #RT CYCLE [ID=17 SCOPE = PROG]

N20 $IF ONCE Vs.CH.VarTest1 < 1   ; Hier wird ein synchroner                                   ; Zugriff erzwungen

N30 Vs.CH.VarTest1 = 1            ; Hier wird ein synchroner                                   ; Zugriff erzwungen

N40 $ENDIF

N50 #RT CYCLE END

N60 M30

Die Synchronisierung ist ebenfalls außerhalb eines Echtzeit-Zyklus möglich.

N10 #RT CYCLE [ID=17 SCOPE = GLOBAL]

N20 $IF ONCE 1 < 2

N30 V.E.LEVEL_1_A[0].REAL64 = V.E.LEVEL_1_A[0]

N40 $ENDIF

N50 #RT CYCLE END

N60 Vs.E.LEVEL_1_A[0].REAL64 ; synchroner Zugriff

N70 M30