DOCA0214FR-04

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

En mode de monodiffusion, 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 Traitement

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

  • Pour les messages normaux, la valeur maximale de Tr est d'environ 700 ms. Il est donc recommandé d'implémenter une temporisation de 1 seconde après l'envoi d'une requête Modbus.

Échange de données

Le protocole Modbus utilise 2 types de données :

  • Bit unique

  • Registre (16 bits)

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 RTU ont une taille maximale de 256 octets et se composent de 4 champs :

Champ

Définition

Taille

Description

1

numéro de 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 seulement

Voir 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)

Réglages par défaut

Les réglages par défaut de la communication Modbus sont les suivants :

Élément

Réglage

Vitesse en bauds

19200 bits/s

Données

8 bits

Parité

Paire

Arrêt

2 bits

Adresse

1

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

Contenu utile ?