Introduction

Qu’est ce qu'une instance de types de données ?

L’instance d’un type de données est référencée soit par :

  • un nom (symbole), dans ce cas on dit que les données sont non localisées, car leur allocation mémoire n’est pas définie mais effectuée automatiquement par le système,

  • un nom (symbole) et une adresse topologique définie par le constructeur, dans ce cas on dit que les données sont localisées, car leur allocation mémoire est connue,

  • une adresse topologique définie par le constructeur, dans ce cas on dit que la donnée est à adressage direct, son allocation mémoire est connue.

Instances de données non localisées

Les instances de données non localisées sont gérées par le système d'exploitation de l'automate, leur emplacement physique dans la mémoire n'est pas connu de l'utilisateur.

Les instances de données non localisées sont définies à partir de types de données pouvant appartenir à l'une de ces familles :

  • Types de Données Elémentaires (EDT)

  • Types de Données Dérivés (DDT)

  • Type de Données Dérivé d'Equipement (DDT d'équipement),

  • Types de Données de Blocs Fonction (EFB/DFB),

  • Types de Données Diagramme Fonctionnel en Séquence (SFC).

Exemples :

NOTE : Les instances de types de données de diagramme fonctionnel en séquence (SFC) sont créées au moment où elles sont insérées dans le programme d'application avec un nom par défaut que l’utilisateur peut modifier.

Instances de données localisées

Localiser une variable (définie par un symbole) consiste à créer une adresse dans l'éditeur de variables.

Les instances de données localisées possèdent un emplacement mémoire prédéfini dans l'automate et cet emplacement est connu de l'utilisateur :

  • Adresse topologique pour les modules d'entrée/sortie

  • Adresse globale (M340, Premium) ou RAM d'Etat (M580, M340, Quantum)

Les instances de données localisées sont définies à partir de types de données pouvant appartenir à l'une de ces familles :

  • Types de Données Elémentaires (EDT)

  • Types de Données Dérivés (DDT)

  • Types de Données Dérivés d'Entrée/Sortie (IODDT).

La liste ci-dessous présente les instances de données à localiser sur un type d'adresse %MW, %KW :

  • INT,

  • UINT,

  • WORD,

  • BYTE,

  • DATE,

  • DT,

  • STRING,

  • TIME,

  • TOD,

  • Type de structure DDT,

  • Tableau.

Les instances de données EBOOL ou de tableaux EBOOL doivent être localisées sur un type d'adresse %M, %Q ou %I.

Le type d'instance de données IODDT doit être localisé par le type de voie de module %CH

NOTE : Les instances de type double de données localisées (DINT, DUNIT, DWORD) ou les instances flottantes (REAL) doivent être localisées par un type d’adresse %MW, %KW. Seule la localisation du type d'instance objets d'E/S est possible avec le type %MD<i>, %KD<i>, %QD, %ID, %MF<i>, %KF<i>, %QF, %IF en utilisant leur adresse topologique (par exemple %MD0.6.0.11, %MF0.6.0.31).
NOTE : Pour M580 et M340, vérifiez que la valeur d'index (i) est paire pour les instances de type double de données localisées (%MW et %KW).

Exemples :

NOTE : Les instances de types de données de diagramme fonctionnel en séquence (SFC) sont créées au moment où elles sont insérées dans le programme d’application avec un nom par défaut que l’utilisateur peut modifier.

Instances de données à adressage direct

Les instances de données à adressage direct possèdent un emplacement prédéfini dans la mémoire automate ou dans un module métier et cet emplacement est connu de l’utilisateur.

Les instances de données à adressage direct sont définies à partir de types appartenant à la famille de type de données élémentaires (EDT).

Exemples d’instances de données à adressage direct :

Interne

Constante

Système

Entrée/sortie

Réseaux

%M<i>

 

%S<i>

%Q, %I

 

%MW<i>

%KW<i>

%SW<i>

%QW, %IW

%NW

%MD<i> (1)

%KD<i> (1)

 

%QD, %ID

 

%MF<i> (1)

%KF<i> (1)

 

%QF, %IF

 
 

Légende :

(1) Non disponible pour Modicon M340

NOTE : les instances de données localisées peuvent être utilisées par un adressage direct dans le programme.

Exemple :

  • Var_1 : DINT AT %MW10

    ;%MW10 et %MW11 sont utilisés tous les deux. Un adressage direct %MD10 peut être utilisé, ou Var_1 dans le programme.