__VARINFO

Définition

Cet opérateur n'est pas défini par la norme IEC 61131-3.

Syntaxe dans la déclaration

<name of the info variable> : __SYSTEM.VAR_INFO; // Data structure for info variable

Syntaxe de l'appel

<name of the info variable> := __VARINFO( <variable name> ); // Call of the operator

Fonction

L'opérateur __VARINFO permet de fournir des informations sur une variable du projet pendant l'exécution. Celles-ci sont enregistrées dans la structure de données d'une variable de type __SYSTEM.VAR_INFO.

Exemple

Pendant l'exécution, la variable MyVarInfo contient les informations relatives à la variable MyVar.

//Declaration
VAR
   MyVarInfo: __SYSTEM.VAR_INFO
   MyVAR: INT;
END_VAR

//Program code
MyVarInfo:= __VARINFO (MyVar);

Type SYSTEM.VAR_INFO

Une variable de type __SYSTEM.VAR_INFO contient les éléments suivants :

Elément

Type de données

Initialisation

Description

ByteAddress

DWORD

0

Adresse de la variable.

NOTE : Pour accéder aux bits d'une variable <variable name>.<bit index>, l'adresse de la variable contenant les bits est indiquée.

ByteOffset

DWORD

0

Décalage de l'adresse de la variable (en octets).

Area

DINT

0

Numéro de la zone de mémoire (dans le système d'exécution).

BitNr

INT

0

Nombre de bits (en octets).

NOTE : Si la variable n'est pas de type entier, alors BitNr = -1.

BitSize

INT

0

Taille de la variable (en bits).

BitAddress

UDINT

0

Adresse des bits de la variable.

Valide uniquement si la variable est située dans une zone %I, %Q ou %M.

TypeClass

TYPE_CLASS

TYPE_BOOL

Classe de type de données de la variable.

Exemple : TYPE_INT, TYPE_ARRAY

NOTE : Pour les types de données utilisateur ou les instances de bloc fonction, TYPE_USERDEF est fourni comme classe de types de données.

TypeName

STRING[79]

‘’

Type de données de la variable.

NumElements

UDINT

0

Pour les tableaux : Nombre d'éléments du tableau.

BaseTypeClass

TYPE_CLASS

TYPE_BOOL

Pour les tableaux : Classe de type de données des éléments du tableau.

ElemBitSize

UDINT

0

Pour les tableaux : Taille binaire d'un élément de tableau.

MemoryArea

MEMORY_AREA

MEM_MEMORY

Informations sur la zone de mémoire :

  • MEM_GLOBAL : Zone de mémoire globale

  • MEM_LOCAL : Zone de mémoire locale

  • MEM_MEMORY: %M

  • MEM_INPUT: %I

  • MEM_OUTPUT : %Q

  • MEM_RETAIN : Zone de mémoire conservée

Symbol

STRING[39]

‘’

Nom de la variable.

Comment

STRING[79]

‘’

Commentaire de la déclaration de variable.