Fonctions de communication
Trois fonctions de communication spécifiques sont définies pour émettre et recevoir des données sur une voie de communication Modbus :
-
READ_VAR : pour lire des variables.
-
WRITE_VAR : pour écrire des variables.
-
DATA_EXCH : pour envoyer des requêtes Modbus à un autre appareil avec le protocole sélectionné.
La lecture ou l'écriture de variables s'effectue par l'envoi des requêtes ci-dessous à l'appareil esclave cible.
Ces requêtes utilisent les fonctions de communication READ_VAR, WRITE_VAR et DATA_EXCH :
Requête Modbus
|
Code fonction
|
Fonction de communication
|
Lecture de bits
|
16#01 ou 16#02
|
READ_VAR
|
Lecture de mots
|
16#03 ou 16#04
|
READ_VAR
|
Ecriture de bits
|
16#0F
|
WRITE_VAR
|
Ecriture de mots
|
16#10
|
WRITE_VAR
|
Autre requête
|
Tout
|
DATA_EXCH
|
NOTE : WRITE_VAR est utilisable en mode diffusion (mais pas READ_VAR). Dans ce cas, l'automate ne reçoit pas de réponse. L'envoi d'une requête de diffusion réinitialise le bit d'activité et le code 16#01 (échange interrompu à expiration du délai) est renvoyé dans le 2e mot de gestion de l'.
NOTE : l'automate Modicon M340 peut lire les objets de type et . Dans ce cas la fonction READ_VAR génère une requête Modbus : FC 0x2 ou 0x4. Pour les automates Quantum, elle permet d'accéder à l'état d'entrée ou aux registres d'état d'entrée.
Plus généralement, il est possible d'envoyer n'importe quelle requête Modbus à un appareil esclave par la fonction de communication DATA_EXCH.
Deux types de programmation permettent d'annuler un échange effectué par les fonctions de communication :