Accueil > Communication industrielle > Bus de terrain MODBUS
Communication industrielle

Bus de terrain MODBUS

Le protocole :

Un protocole consiste en la définition de trames d’échange. Plusieurs protocoles en été définies. Le protocole le plus connu est le protocole Modbus (marque déposée par MODICON) et Profibus (Siemens) qui sont deux protocoles standards de dialogue basé sur une structure hiérarchisée entre un maître et plusieurs esclaves. Mikroelectronika propose aussi un protocole non standard pour communiquer des microcontrôleurs de type PIC, DsPIC, AVR et Intel. Néanmoins l’utilisateur est libre de définir son propre protocole.

protocole MODBUS
MODBUS RS485
  • Le maître envoie une demande et attend une réponse.
  • Deux esclaves ne peuvent dialoguer ensemble.
  • Le dialogue maître – esclave peut être schématisé sous une forme successive de liaisons point à point.
  • Mode de communication : half-duplex. (2 fils ou 4 fils)
  • le maître parle à l’ensemble des esclaves, sans attente de réponse (diffusion générale).

Il ne peut y avoir sur la ligne qu’un seul équipement en train d’émettre. Aucun esclave ne peut envoyer un message sans une demande préalable du maître. Le dialogue direct entre les esclaves est impossible.
1. Structure des messages :
Le maître envoie un message constitué de la façon suivante:

Structure des messages modbus
  • La détection de fin de message est réalisée sur un silence de durée supérieure ou égale à la durée de transmissionde 3 octets.
  • L’esclave répond par un message du même type que le message question.

Le protocole Modbus est très utilisé pour les communications des automates programmables industriels et des variateurs de vitesse des moteurs électriques.

2. Adressage

Les abonnés du bus sont identifiés par des adresses attribuées par l’utilisateur.
L’adresse de chaque abonné est indépendante de son emplacement physique.
Les adresses vont de 1 à 64 pour le protocole Modbus et de 1 à 255 en général et ne doivent pas obligatoirement être attribuées de manière séquentielle.
Deux abonnés ne peuvent avoir la même adresse.

3. Echange maître vers 1 esclave

Le maître interroge un esclave de numéro unique sur le réseau et attend de la part de cet esclave une réponse.

Echange maître vers 1 esclave

4 Echange Maître vers tous les esclaves

Le maître diffuse un message à tous les esclaves présents sur le réseau, ceux-ci exécutent l’ordre du message sans émettre une réponse.

Echange Maître vers tous les esclaves

5 Format général d’une trame

Deux types de codage peuvent être utilisés pour communiquer sur un réseau Modbus.
Tous les équipements présents sur le réseau doivent être configurés selon le même type.

  • Mode RTU (Unité terminale distante):

La trame ne comporte ni octet d’en-tête de message, ni octets de fin de message.
Sa définition est la suivante :

Unité terminale distante

CRC16 : paramètre de contrôle polynomial (cyclical redundancy check).
La détection de fin de trame est réalisée sur un silence supérieur ou égal à 3 octets.

  • Mode ASCII :

Chaque champ composant une trame est codé avec 2 caractères ASCII (2 fois 8 bits).

Mode ASCII

LRC : C’est la somme en hexadécimal modulo 256 du contenu de la trame hors délimiteurs, complémentée à 2 et transmise en ASCII.

6. Trame d’échange question/réponse

La question :
Elle contient un code fonction indiquant à l’esclave adressé quel type d’action est demandé.
Les données contiennent des informations complémentaires dont l’esclave a besoin pour exécuter cette fonction.
Le champ octets de contrôle permet à l’esclave de s’assurer de l’intégralité du contenu de la question.

La réponse
Si une erreur apparaît, le code fonction est modifié pour indiquer que la réponse est une réponse d’erreur.
Les données contiennent alors un code (code d’exception) permettant de connaître le type d’erreur.
Le champ de contrôle permet au maître de confirmer que le message est valide.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Résoudre : *
33 ⁄ 11 =