Assegnazione ExST: S=
Quando l'operando dell'assegnazione Set passa a TRUE
, poi TRUE
è assegnato alla variabile a sinistra dell'operatore. La variabile è impostata.
<variable name> S= <operand name> ;
Le variabili e l'operando hanno il tipo di dati BOOL
.
PROGRAM PLC_PRG VAR xOperand: BOOL := FALSE; xSetVariable: BOOL := FALSE; END_VAR xSetVariable S= xOperand;
Quando l'operando xOperand
passa da FALSE
a TRUE
, poi TRUE
viene assegnato anche alla variabile xSetVariable
. Ma poi la variabile mantiene questo stato, anche se l'operando continua a cambiare il suo stato.
Incarichi multipli
Importante
In caso di assegnazioni multiple all'interno di una riga di codice, le singole assegnazioni non vengono elaborate da destra a sinistra, ma tutte le assegnazioni si riferiscono agli operandi alla fine della riga di codice.
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
ottiene il R=
assegnazione del valore di ritorno di funCompute
. xSetVariable
ottiene il S=
assegnazione di ht valore di ritorno di funCompute
, ma non da xResetVariable
.