Présentation

Qu’est ce qu’une référence d’instance de données ?

Aperçu

Une référence d'instance de données par adresse n'est possible que sur certaines instances de données qui appartiennent à la famille EDT. Ces instances sont :

  • les variables internes (%M<i>, %MW<i>, %MD<i>, %MF<i>),

  • les constantes (%KW<i>, %KD<i>, %KF<i>),

  • les entrées/sorties (%I<adresse>, %Q<adresse>).

NOTE : Les instances %MD<i>, %MF<i>, %KD<i> et %KF<i> ne sont pas disponibles pour les automates Modicon M340 et Modicon M580.

Référence par adressage direct

L'adressage est considéré direct quand l'adresse de l'instance est fixe, c'est-à-dire définie lors de l'écriture dans le programme.

Exemples :

Références par adresse indexée

L'adressage est considéré indexé lorsque l'adresse de l'instance est complétée par un index.

L'index est défini soit par :

  • une valeur appartenant aux types Entiers,

  • une expression arithmétique composée de types Entiers.

Une variable indexée a toujours un équivalent non indexé :

Les règles de calcul de <j> sont les suivantes :

Objet<i>[index]

Objet<j>

%M<i>[index]

<j>=<i> + <index>

%MW<i>[index]

<j>=<i> + <index>

%KW<i>[index]

<j>=<i> + <index>

%MD<i>[index]

<j>=<i> + (<index> x 2)

%KD<i>[index]

<j>=<i> + (<index> x 2)

%MF<i>[index]

<j>=<i> + (<index> x 2)

%KF<i>[index]

<j>=<i> + (<index> x 2)

Exemples :

Lors de la compilation du programme, un contrôle vérifie que :

  • l'index n'est pas négatif,

  • l'index ne dépasse pas l'espace mémoire alloué pour chacun des trois types.

Bits extraits de mots

Il est possible d'extraire l'un des 16 bits des mots simples (%MW, %SW; %KW, %IW, %QW).

L'adresse de l'instance est complétée par le rang du bit extrait (<j>).

Exemples :

Bits extraits d'octets

Il est possible d'extraire l'un des bits d'un octet.

L'adresse du bit extrait est accessible par :

  • le nom de l'octet correspondant,

  • le rang définissant sa position dans l'octet (nombre entre 0 et 7).

Exemple :

MyByte est une variable de type BYTE. MyByte.i est une valeur BOOL valide si 0 <= i <= 7

MyByte.0, MyByte.3 et MyByte.7 sont des valeurs BOOL valides.

MyByte.8 n'est pas valide.

Création d'un type de structure avec le bit extrait

L'utilisateur peut créer un type de structure à l'aide du bit extrait.

Pour afficher la boîte de dialogue Classement des bits, cliquez avec le bouton droit sur l'instance ou le type de données qui doit être :

  • WORD

  • UINT

  • INT

  • BYTE

  • un bit extrait avec un parent compatible

Tableaux de bits et de mots

Il s'agit d'une suite d'objets adjacents (bits ou mots) de même type et de longueur définie.

Présentation des tableaux de bits :

Type

Adresse

Accès en écriture

Bits d'entrées TOR

%Ix.<i>:L

Non

Bits de sorties TOR

%Qx.<i>:L

Oui

Bits internes

%M<i>:L

Oui

Présentation des tableaux de mots :

Type

Adresse

Accès en écriture

Mots internes

%MW<i>:L

%MD<i>:L

%MF<i>:L

Oui

Mots constantes

%KW<i>:L

%KD<i>:L

%KF<i>:L

Non

Mots système

%SW50:4

Oui

Exemples :

  • %M2:65 définit un tableau EBOOL de %M2 à %M66.

  • %M125:30 définit un tableau INT de %MW125 à %MW154.