Attributo: is_connected
Tu usi il pragma 'is_connected' per decorare una variabile di blocco funzione booleano che, quando viene chiamata un'istanza di un modulo funzione, fornisce informazioni sul fatto che l'ingresso associato della POU abbia un'assegnazione.
L'uso del pragma richiede l'uso dell'attributo 'reflection' sul blocco funzione interessato.
Sintassi:
{attribute 'is_connected' := '<input variable>'}
Nel blocco funzione FB, viene dichiarata una variabile locale per ogni variabile di input (in1 e in2) e l'attributo 'is connected' viene anteposto ogni volta con il nome della variabile di input. La funzione stessa ottiene l'attributo pragma 'reflection'.
Quando viene chiamata un'istanza del blocco funzione, la variabile locale è TRUE nel caso in cui l'input ad esso assegnato abbia ricevuto assegnazione.
{attribute 'reflection'}
FUNCTION_BLOCK FB
VAR_INPUT
in1: INT;
in2: INT;
END_VAR
VAR
{attribute 'is_connected' := 'in1'}
in1_connection_info: BOOL;
{attribute 'is_connected' := 'in2'}
in2_connection_info: BOOL;
END_VARPresupposto: quando viene richiamata l'istanza del blocco funzione, in1 riceve un incarico esterno e in 2 non riceve un incarico. Ciò si traduce nel seguente codice:
in1_connection_info := TRUE; in2_connection_info := FALSE;