Principe client-serveur Modbus
Présentation
Le protocole Modbus échange des informations en utilisant un mécanisme de requête-réponse entre un client et un serveur. Le principe client-serveur est un modèle de protocole de communication dans lequel un appareil (le client) contrôle un ou plusieurs autres appareils (les serveurs). Un réseau Modbus standard comprend 1 client et jusqu'à 31 serveurs.
Une description détaillée du protocole Modbus est disponible sur www.modbus.org.
Caractéristiques du principe client-serveur
Le principe client-serveur présente les caractéristiques suivantes :
-
Un seul client à la fois est connecté au réseau.
-
Seul le client peut lancer une communication et envoyer des requêtes aux serveurs.
-
Le client peut s'adresser individuellement à chaque serveur en utilisant son adresse spécifique ou simultanément à tous les serveurs via l'adresse 0.
-
Les serveurs peuvent uniquement envoyer des réponses au client.
-
Les serveurs ne peuvent pas initier une communication, ni vers le client, ni vers les autres serveurs.
Modes de communication client-serveur
Le protocole Modbus peut échanger des informations en utilisant 2 modes de communication :
-
mode de monodiffusion
-
mode de diffusion générale
Mode de monodiffusion
Mode de diffusion générale
Temps de réponse
Valeurs avec le protocole Modbus :
-
Valeur type < 10 ms dans 90 % des échanges
-
La valeur maximale est d'environ 700 ms. Il est donc recommandé de mettre en oeuvre une temporisation de 1 seconde après l'envoi d'une requête Modbus.
Echange de données
Le protocole Modbus utilise 2 types de données :
-
Bit unique
-
Registre (16 bits)
Les disjoncteurs MasterPacT MTZ, MasterPacT NT/NW, ComPacT NS et ComPacT NSX ne prennent en charge que les registres.
Chaque registre possède un numéro de registre. Chaque type de données (bit ou registre) possède une adresse de 16 bits.
Les messages échangés avec le protocole Modbus contiennent l'adresse des données à traiter.
Registres et adresses
L'adresse du registre numéro n est n-1. Les tableaux détaillés figurant dans les chapitres suivants de ce document indiquent à la fois les numéros de registres (au format décimal) et les adresses correspondantes (au format hexadécimal). Par exemple, l'adresse du registre numéro 12000 est 0x2EDF (11999).
Trames
Toutes les trames échangées avec le protocole Modbus ont une taille maximale de 256 octets et se composent de 4 champs :
|
Champ |
Définition |
Taille |
Description |
|---|---|---|---|
|
1 |
Numéro du serveur |
1 octet |
Destination de la requête
|
|
2 |
Codes de fonction |
1 octet ou 2 octets |
|
|
3 |
Données |
n registres |
Données de requête ou de réponse NOTE: Le nombre de registres (n) est
limité à 52 avec le déclencheur MasterPacT MicroLogic E.
|
|
4 |
Contrôle |
2 octets |
CRC16 (pour vérifier les erreurs de transmission) |


