Skip to main content

ExST-Zuweisung: R=

Wenn der Operand der Reset-Zuweisung auf TRUE schaltet, bewirkt die Zuweisung, dass der Variablen links des Operators ein FALSE zugewiesen wird. Die Variable wird zurückgesetzt.

<variable name> R= <operand name> ;

Die Variablen und der Operand haben den Datentyp BOOL.

Beispiel 66. Beispiel
VAR
        xOperand: BOOL := FALSE;
        xResetVariable: BOOL := TRUE;
END_VAR

xResetVariable R= xOperand;

Wenn der Operand xOperand von FALSE auf TRUE schaltet, wird auch der Variablen xResetVariable ein FALSE zugewiesen. Dann aber behält die Variable ihren Zustand, auch wenn der Operand weiterhin seinen Zustand wechselt.



Mehrfachzuweisungen

Wichtig

Bei Mehrfachzuweisungen innerhalb einer Codezeile werden die einzelnen Zuweisungen nicht von rechts nach links abgearbeitet, sondern alle Zuweisungen beziehen sich auf den Operanden am Codezeilenende.

Beispiel 67. Beispiel
FUNCTION funCompute : BOOL
VAR_INPUT
        xIn : BOOL;
END_VAR
IF xIn = TRUE THEN
        funCompute := TRUE;
        RETURN;
END_IF

PROGRAM PLC_PRG
VAR
        xSetVariable: BOOL;
        xResetVariable: BOOL := TRUE;
        xVar: BOOL;
END_VAR
xSetVariable S= xResetVariable R= funCompute(xIn := xVar);

xResetVariable erhält die R=-Zuweisung des Rückgabewerts von funCompute. xSetVariable erhält die S=-Zuweisung des Rückgabewerts von funCompute, aber nicht von xResetVariable.