Attribute is_connected

Présentation

L'attribut is_connected marque une variable booléenne d'un bloc fonction pour savoir quand l'instance de bloc fonction est appelée afin de déterminer si l'entrée associée du POU est affectée.

L'attribut reflection doit être affecté au bloc fonction respectif.

Syntaxe

{attribute 'is_connected' := '<input variable>'}

Exemple

Dans le bloc fonction FB, une variable locale est déclarée pour chaque variable d'entrée (in1 et in2). Chaque variable d'entrée est précédée de l'attribut is connected et du nom de celle-ci. Le bloc fonction est affecté à l'attribut de pragma reflection.

Si une instance du bloc fonction est appelée, la variable locale reçoit la valeur TRUE à condition que l'entrée concernée reçoive une affectation.

{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

Hypothèse : lorsque l'instance de bloc fonction est appelée, in1 reçoit une affectation externe et in2 n'en reçoit aucune. Le code obtenu est le suivant :

in1_connection_info := TRUE;
in2_connection_info := FALSE;