Présentation
Supposons
une communication entre deux stations d'automate sur un réseau
Fipway. La station 1 doit envoyer les données (20 octets situés
dans %MW70:10
) à la station 2 qui les reçoit
dans une table située dans %MW80:10
. Chaque
automate dispose d'une table de gestion commençant à l'adresse %MW90
.
Pour la station 1, le mot %MW93
doit contenir la longueur des données à envoyer, soit
20 (10 mots à envoyer).
Pour la station 2, le mot %MW93
est défini sur 0 avant l'échange afin de
connaître le nombre de caractères reçus à la fin
de l'échange.
La fonction DATA_EXCH
requiert
la programmation des deux automates, l'un pour l'envoi et l'autre
pour la réception.
Figure
Les deux stations sont connectées via un réseau Fipway :

Emission programmée dans la station 1
Programmation en ST :
IF RE(%I0.3.2) AND NOT %MW90.0 THEN
(* initialisation des données à envoyer *)
%MW93:= 20;
(* fonction de communication *)
DATA_EXCH(ADDR(’{20.2}APP’),2,%MW70:10,%MW90:4,%MW80:1);
END_IF;
Paramètres de la requête :
Paramètres |
Description |
---|---|
|
|
2 |
Type de communication : émission |
|
Données à envoyer |
|
Table de gestion |
|
Zone de réception des réponses. En l'occurrence, il n'existe aucune donnée à recevoir, mais un mot doit cependant être réservé (obligatoire). |
Réception programmée dans la station 2
IF RE(%I0.3.4) AND NOT %MW90.0 THEN
(* initialisation des données à recevoir *)
%MW93:= 0;
(* fonction de communication *)
DATA_EXCH(ADDR(’{20.1}APP’),3,%MW70:1,%MW90:4,%MW80:10);
END_IF;
Paramètres de la requête :
Paramètres |
Description |
---|---|
|
|
3 |
Type de communication : réception |
|
Données à envoyer. En l'occurrence, il n'y en a pas, mais au moins un mot doit être réservé. |
|
Table de gestion |
|
Zone de réception : 10 mots sont délivrés à partir de la station 1. |