DOCA0091FR-08

Principe maître-esclave Modbus

Présentation générale

Le protocole Modbus échange des informations en utilisant un mécanisme de requête-réponse entre un maître (client) et un esclave (serveur). Le principe maître-esclave est un modèle de protocole de communication dans lequel un appareil (le maître) contrôle un ou plusieurs autres appareils (les esclaves). Un réseau Modbus standard comporte 1 maître et jusqu'à 31 esclaves.

Une description détaillée du protocole Modbus est disponible sur www.modbus.org.

Caractéristiques du principe maître-esclave

Le principe maître-esclave présente les caractéristiques suivantes :

  • Un seul maître à la fois est connecté au réseau.

  • Seul le maître peut initier une communication et envoyer des requêtes aux esclaves.

  • Le maître peut s'adresser individuellement à chaque esclave en utilisant son adresse spécifique ou simultanément à tous les esclaves via l'adresse 0.

  • Les esclaves peuvent uniquement envoyer des réponses au maître.

  • Les esclaves ne peuvent pas initier une communication, ni vers le maître, ni vers les autres esclaves.

Modes de communication maître-esclave

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

En mode de monodiffusion, le maître s'adresse à un esclave en utilisant l'adresse spécifique de l'esclave. L'esclave traite la requête puis répond au maître.

1 Requête

2 Traitement

3 Réponse

Mode de diffusion générale

Le maître peut également s'adresser à tous les esclaves en utilisant l'adresse 0. Ce type d'échange est appelé diffusion générale. Les esclaves ne répondent pas aux messages de diffusion générale.

Temps de réponse

Le temps de réponse Tr est le temps nécessaire à un esclave pour répondre à une requête envoyée par le maître :

Valeurs avec le protocole Modbus :

  • Valeur type < 10 ms dans 90 % des échanges

  • La valeur maximale est environ 700 ms. Il est donc recommandé de mettre en œuvre un délai d'attente 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 prennent uniquement en charge 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 sont d'une taille maximale de 256 octets et se composent de 4 champs :

Champ

Définition

Taille

Description

1

Numéro de l'esclave

1 octet

Destination de la requête

  • 0: diffusion générale (tous les esclaves sont concernés)

  • 1–247 : destination unique

2

Codes de fonction

1 octet ou 2 octets

Voir la description des codes de fonction

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)