Atributo: is_connected
Usas el pragma 'is_connected'
para decorar una variable de bloque de función booleana que, cuando se llama a una instancia de módulo de función, proporciona información sobre si la entrada asociada de la POU tiene una asignación.
El uso del pragma requiere el uso del atributo. 'reflection'
en el bloque de funciones afectado.
Sintaxis:
{attribute 'is_connected' := '<input variable>'}
En el bloque de funciones FB
, se declara una variable local para cada variable de entrada (in1
y in2
) y el atributo 'is connected'
se antepone cada vez con el nombre de la variable de entrada. La función en sí obtiene el atributo pragma. 'reflection'
.
Cuando se llama a una instancia del bloque de funciones, la variable local se TRUE
en el caso de que la entrada que tiene asignada haya recibido una asignación.
{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_VAR
Suposición: cuando se llama a la instancia del bloque de funciones, in1
recibe una asignación externa y in 2
no recibe una asignación. Esto da como resultado el siguiente código:
in1_connection_info := TRUE; in2_connection_info := FALSE;