VAR_CONFIG - Variables de configuration

Présentation

La configuration des variables permet de mapper des variables de bloc fonction sur l'image de process, au niveau des E/S de l'équipement. Inutile alors de définir l'adresse définitive dès la déclaration de la variable du bloc fonction. Dans ce cas, l'adresse définitive est attribuée une fois pour l'ensemble des instances de blocs fonction, dans une liste VAR_CONFIG globale.

Pour ce faire, vous pouvez attribuer des adresses incomplètes aux variables de bloc fonction déclarées entre les mots clés VAR et END_VAR. Identifiez ces adresses au moyen d'un astérisque.

Syntaxe de l'identificateur

<identificateur> AT %<I|Q>* : <type de données>

Exemple d'utilisation d'adresses partiellement définies :

FUNCTION_BLOCK locio
VAR
 xLocIn AT %I*: BOOL := TRUE;
 xLocOut AT %Q*: BOOL;
END_VAR

Dans cet exemple, 2 variables d'E/S locales sont définies : une variable d'entrée locale (%I*) et une variable de sortie locale (%Q*).

Procédez comme suit pour définir les adresses dans la configuration des variables d'une liste de variables globales (GVL) :

Etape

Action

1

Exécutez la commande Ajouter un objet.

2

Ajoutez un objet Liste de variables globales (GVL) dans l'arborescence Équipements.

3

Déclarez les variables d'instance avec adresses définitives entre les mots clés VAR_CONFIG et END_VAR.

Tenez compte des points suivants lors de la définition des adresses :

  • Indiquez le chemin d'instance complet des variables d'instance, et séparez les différents POU et noms d'instances par un point.

  • Dans la déclaration, saisissez une adresse d'une classe (entrée/sortie) identique à celle de l'adresse incomplète (%I*, %Q*) dans le bloc fonction.

  • Vérifiez que le type de données corresponde à la déclaration dans le bloc fonction.

Syntaxe du chemin variable d'instance

<chemin variable d'instance> AT %<I|Q><emplacement> : <type de données>;

Les variables de configuration dont le chemin d'instance est incorrect (car instance inexistante) sont signalées comme erreurs. Une erreur est aussi détectée lorsqu'une variable d'instance attribuée à une adresse incomplète n'est associée à aucune configuration d'adresse définitive.

Exemple de configuration de variables

Supposons que le bloc fonction locio (voir exemple précédent) soit défini dans un programme :

PROGRAM PLC_PRG
VAR
locioVar1: locio;
locioVar2: locio;
END_VAR

Voici une configuration de variables correcte (dans une liste de variables globales) :

VAR_CONFIG
PLC_PRG.locioVar1.xLocIn AT %IX1.0 : BOOL;
PLC_PRG.locioVar1.xLocOut AT %QX0.0 : BOOL;
PLC_PRG.locioVar2.xLocIn AT %IX1.0 : BOOL;
PLC_PRG.locioVar2.xLocOut AT %QX0.3 : BOOL;
END_VAR
NOTE : toute modification au niveau des E/S mappées directement apparaît immédiatement sur l'image de process. En revanche, vous devez patienter jusqu'à la fin de la tâche en question pour voir les modifications de variables mappées via VAR_CONFIG.
NOTE : dans une liste de variables globales, les mots clés VAR_GLOBAL et VAR_CONFIG sont utilisés de façon exclusive seulement.