Description de la fonction

La fonction WRITE_ASYN permet d’écrire 1 kilo-octet de données par le canal de messagerie asynchrone de modules TSX ETY en mode TCP/IP.

Les données accessibles en écriture sont les suivantes :

  • Bits internes

  • Mots internes

L’écriture asynchrone ne peut s’effectuer qu’entre deux stations d’un même segment de réseau Ethernet TCP/IP.

La fonction WRITE_ASYN est émise à la fin de la tâche MAST seulement si celle-ci est configurée en mode périodique. Il est possible d’activer 8 fonctions simultanément.

La taille des buffers d'émission et de réception est exprimée en mots. Elle est de 512 mots soit 1024 octets.

NOTE : La fonction serveur asynchrone supporte les protocoles UNI-TE V1 ou V2.0. La fonction WRITE_ASYN utilise le protocole UNI-TE V2.0.

Les paramètres supplémentaires EN et ENO peuvent être configurés.

Principe d'un échange

La figure suivante illustre les échanges entre deux stations pour une fonction WRITE_ASYN :

Représentation en FBD

Représentation :

Représentation en LD

Représentation :

Représentation en IL

Représentation :

LD Address
WRITE_ASYN Object_Type, First_Object, Object_Number, Data_to_Write, Management_Param

Représentation en ST

Représentation :

WRITE_ASYN(Address, Object_Type, First_Object, Object_Number, Data_to_Write, Management_Param);

Description des paramètres

Le tableau suivant décrit les paramètres d’entrée :

Paramètre

Type

Commentaire

Address

ARRAY [0... 5] OF INT

Adresse de l’entité destinataire de l’échange. Les adresses sont de la forme ADDR(’{Network.Station}SYS.

Object_Type

STRING

Type des objets à écrire :

  • %M : bits internes,

  • %MW : mots internes,

  • %S : bits système,

  • %SW : mots système.

First_Object

DINT

Indice du premier objet à écrire dans l’équipement destinataire.

Object_Number

INT

Nombre d’objets à écrire.

Data_to_Write

ARRAY [n... m] OF INT

Tableau de mots contenant la valeur des objets à écrire.

Le tableau suivant décrit les paramètres d’entrée/sortie :

Paramètre

Type

Commentaire

Management_Param

ARRAY [0.. 3] OF INT

Table de gestion de l’échange. Le compte rendu d'opération prend l’une des valeurs suivantes :

  • 16#00 : échange correct,

  • 16#01 : arrêt sur timeout, la réponse n'a pas pu être émise en moins de 2 secondes,

  • 16#02 : arrêt à la demande de l'utilisateur (STOP, S0, INIT, redémarrage à chaud ou à froid),

  • 16#03 : format d’adresse incorrect,

  • 16#05 : paramètres de gestion incorrects,

  • 16#07 : destination manquante,

  • 16#09 : taille du tampon de réception insuffisante,

  • 16#10 : taille du tampon d'émission insuffisante,

  • 16#11 : absence de ressource système (déjà 8 fonctions actives),

  • 16#19 : numéro d'échange incorrect,

  • 16#FF : message refusé.

Remarque : n'oubliez pas de programmer une valeur de Timeout pour arrêter un échange en cours lorsque la réponse ne revient pas à l'émetteur.