DOCA0107FR-03

Principe client-serveur Modbus

Présentation

Le protocole Modbus RTU é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 comporte 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 initier 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 RTU permet d'échanger des informations en utilisant deux modes de communication :

  • mode requête-réponse

  • mode de diffusion générale

Mode requête-réponse

En mode requête-réponse, le client s'adresse à un serveur en utilisant l'adresse spécifique du serveur. Le serveur traite la requête puis répond au client.

1 Requête

2 Processus

3 Réponse

Mode de diffusion générale

Le client peut également s'adresser à tous les serveurs via l'adresse 0. Ce type d'échange est appelé diffusion générale. Les serveurs 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 serveur pour répondre à une requête envoyée par le client :

Valeurs avec le protocole Modbus :

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

  • La valeur maximale est égale à 700 ms environ. 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 :

  • bits

  • mots de 16 bits appelés registres

Les relais VigiPacT prennent en charge ces deux types de données.

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 100 est 0x0063 (99).

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 du serveur

1 octet

Destination de la requête :

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

  • 1 à 247 : destination unique

2

Codes de fonction

1 octet ou 2 octets

Voir la section Fonctions de Modbus

3

Données

n registres

Données de requête ou de réponse

4

Contrôle

2 octets

CRC16 (pour vérifier les erreurs de transmission)

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Contenu utile ?