Skip to main content

Asignación ExST: S=

Cuando el operando de la asignación Set cambia a TRUE, entonces TRUE se asigna a la variable a la izquierda del operador. La variable está configurada.

<variable name> S= <operand name> ;

Las variables y el operando tienen el tipo de dato BOOL.

ejemplo 64. Ejemplo
PROGRAM PLC_PRG
VAR
        xOperand: BOOL := FALSE;
        xSetVariable: BOOL := FALSE;
END_VAR

xSetVariable S= xOperand;

Cuando el operando xOperand cambia de FALSE a TRUE, entonces TRUE también se asigna a la variable xSetVariable. Pero luego la variable mantiene este estado, incluso si el operando continúa cambiando su estado.



Múltiples asignaciones

Importante

En el caso de asignaciones múltiples dentro de una línea de código, las asignaciones individuales no se procesan de derecha a izquierda, sino que todas las asignaciones se refieren a los operandos al final de la línea de código.

ejemplo 65. Ejemplo
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 obtiene el R= asignación del valor de retorno de funCompute. xSetVariable obtiene el S= asignación de ht valor de retorno de funCompute, pero no de xResetVariable.