Skip to main content

Configuration des variables - VAR_CONFIG

Vous utilisez la "Configuration de variables" pour mapper les variables des blocs fonctionnels à la mémoire image du processus. Lors de la déclaration dans le bloc fonction, vous affectez les variables aux entrées/sorties des appareils sans préciser l'adresse complète. Les adresses exactes sont ensuite spécifiées de manière centralisée pour toutes les instances de bloc fonctionnel de l'application dans une liste de variables globales VAR_CONFIG-Déclarations. Cette liste de variables globales avec les VAR_CONFIGdéclarations est appelée configuration de variable.

Important

Les modifications des variables directement affectées aux adresses d'E/S sont affichées CODESYS directement dans l'image de processus. Affiche les changements dans les variables qui sont mappées via une configuration de variable CODESYS uniquement à la fin de la tâche concernée.

Déclaration des variables dans le bloc fonction

Lors de la déclaration des variables dans le bloc fonction, vous déclarez les variables entre les mots clés VAR et END_VAR. Ce faisant, vous affectez des adresses incomplètes aux variables. Marquez ces adresses incomplètes d'un *.

Syntaxe:

<Bezeichner> AT %<I\|Q>*:<Datentyp>;

Exemple 19. Exemple

2 variables d'E/S locales sont définies : la variable d'entrée xLocIn et la variable de sortie xLocOut.

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


Les adresses sont finalement définies dans la configuration des variables dans une liste de variables globales.

Dans la liste des variables globales, que vous utilisez comme configuration de variables, entrez les déclarations des variables avec les adresses exactes entre les mots-clés VAR_CONFIG et END_VAR un.

la VAR_CONFIG-Les variables doivent être spécifiées avec le chemin d'accès complet à l'instance, chaque POU et nom d'instance étant séparés par un point. La déclaration doit contenir une adresse dont la classe (entrée/sortie) correspond à la classe de l'adresse incomplètement spécifiée (%I*, %Q*) dans le bloc fonction. Le type de données doit également correspondre.

Syntaxe:

<instance variable path> AT %<I\|Q><location>: <data type>;

Si l'instance du chemin n'existe pas, un message d'erreur s'affiche. CODESYS génère également une erreur s'il n'y a pas de configuration d'adresse pour une variable que vous avez déclarée avec une adresse incomplète.

Exemple 20. Exemple

L'utilisation suivante du module de fonction locio de l'exemple ci-dessus est dans un programme :

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

Une configuration de variable correcte dans une liste de variables globales ressemblerait alors à ceci, par exemple :

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


Création d'une configuration variable

Conditions préalables : Vous avez ouvert un projet avec une configuration de contrôleur avec un appareil de terrain. Le projet contient un programme, par exemple PLC_PRG, et un bloc fonction, par exemple func1. L'appareil de terrain possède des entrées et des sorties. La vue textuelle est sélectionnée dans les options de l'éditeur de déclaration.

Affectez des variables aux E/S d'appareil avec des adresses incomplètes dans le bloc fonctionnel, puis créez une configuration de variable.

  1. Dans l'arborescence des appareils, double-cliquez sur le bloc fonction, par exemple func1.

    L'éditeur de blocs s'ouvre.

  2. Dans la partie déclaration, tapez entre les mots clés VAR et END_VAR un: xLocIn AT %I*: BOOL := TRUE; et à la ligne suivante XLocOut AT %Q*:BOOL;

    Vous avez une variable d'entrée xLocIn déclarée et ceci à l'adresse de saisie incomplète %I* affecté à un appareil de terrain. La variable de sortie déclarée a l'adresse de sortie incomplète %Q* attribué.

  3. Cliquez sur l'objet PLC_PRG dans l'arborescence des appareils et insérer dans la partie déclaration du programme VAR et END_VAR Par exemple, saisissez les déclarations suivantes :

    locioVar1: func;

    locioVar2: func;

  4. Sélectionnez l'objet Application dans l'arborescence des appareils, sélectionnez la commande du menu contextuel Ajouter un objet → Liste des variables globales et cliquez dans la boîte de dialogue Ajouter une liste de variables globales sur le bouton Ajouter à.

    La liste des variables globales est ajoutée à l'arborescence des équipements et son éditeur s'ouvre.

  5. Changer le mot-clé VAR_GLOBAL dans VAR_CONFIG environ.

  6. Choisissez la commande Déclarations → Ajouter tous les chemins d'instance.

    Les chemins d'instance suivants sont ajoutés :

    PLC_PRG.logioVar1.xLocIn AT %I*;
    PLC_PRG.logioVar2.xLocIN AT %I*;
    PLC_PRG.logioVar1.xLocOut AT %Q*;
    PLC_PRG.logioVar2.xLocOut AT %Q*;
  7. Remplacez maintenant les détails d'adresse incomplets %I* et %Q* avec les adresses complètes exactes.