When the operand of the Set assignment switches to TRUE
, then TRUE
is assigned to the variable to the left of the operator. The variable is set.
<variable name> S= <operand name> ;
The variables and the operand have the data type BOOL
.
Example
PROGRAM PLC_PRG VAR xOperand: BOOL := FALSE; xSetVariable: BOOL := FALSE; END_VAR xSetVariable S= xOperand;
When the operand xOperand
switches from FALSE
to TRUE
, then TRUE
is also assigned to the variable xSetVariable
. But then the variable keeps this state, even if the operand continues to change
its state.
Multiple assignments




NOTICE

In the case of multiple assignments within a code line, the individual assignments are not processed from right to left, but all assignments refer to the operands at the end of the code line.
Example
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
gets the R=
assignment of the return value of funCompute
. xSetVariable
gets the S=
assignment of ht return value of funCompute
, but not from xResetVariable
.