100% ont trouvé ce document utile (1 vote)
146 vues5 pages

Introduction au protocole Modbus

Le protocole Modbus définit la structure des messages et leur mode d'échange sur différents supports de transmission. Il existe un maître et des esclaves qui échangent des demandes et réponses. Les trames Modbus existent en format ASCII ou RTU.

Transféré par

aizddin
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
146 vues5 pages

Introduction au protocole Modbus

Le protocole Modbus définit la structure des messages et leur mode d'échange sur différents supports de transmission. Il existe un maître et des esclaves qui échangent des demandes et réponses. Les trames Modbus existent en format ASCII ou RTU.

Transféré par

aizddin
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Transmission de l’information COURS SEN

Le protocole Modbus
(réf : GenIndus)

I - INTRODUCTION
Le protocole MODBUS a été créé en 1979 par Modicon (Télémécanique, Schneider Automation). Il est
aujourd'hui très utilisé dans l'industrie. Il ne définit que la structure des messages et leur mode d’échange,
car on peut utiliser n’importe quel support de transmission (RS232, RS422 ou RS485) ; la liaison RS485
est la plus répandue car elle autorise le « multipoints ». Modbus est un bus de terrain industriel.
Exemple d’utilisation d’un bus série associé au protocole Modbus :
Variation de vitesse via automate industriel.

Automate industriel de
marque Wago

Variateur de vitesse (de rotation


d’un moteur électrique)

II – CARACTERISATION DES ECHANGES


Il y a un module maître et 1 ou plusieurs modules esclave (247 max).
Les échanges sont réalisés à l’initiative du maître et comportent une demande du maître et une réponse de
l’esclave. Ces demandes sont adressées :
- soit à un esclave (identifié par son numéro) ; (2 esclaves ne peuvent dialoguer ensemble)

Lycée des Métiers Jacques Prévert Combs – la – Ville


Section de BAC PRO Systèmes électroniques numériques 1
Electronique Industrielle Embarquée
Transmission de l’information COURS SEN

- soit à tous les esclaves (diffusion) ; dans ce cas, les commandes du maître sont obligatoirement
des commandes d’écriture et il n’attend pas de réponse.

Lycée des Métiers Jacques Prévert Combs – la – Ville


Section de BAC PRO Systèmes électroniques numériques 2
Electronique Industrielle Embarquée
Transmission de l’information COURS SEN

III – DIFFERENCE DE TRAMES MODBUS


Il existe 2 formats de trames des messages : ASCII (American Standard Code for Information
Interchange) et RTU (Remote Terminal Unit).
Ces 2 formats peuvent être utilisés dans le protocole Modbus, mais sont incompatibles entre eux. Environ
95% des modules communicants sur Modbus utilisent des trames RTU.
Le format ASCII offre une « souplesse » plus importante sur les timing inter-octet (jusqu’à 1 seconde) et
constitue une véritable transmission asynchrone.
Le format RTU permet pour une même vitesse de transmission, un plus fort débit de données.
La liaison Modbus est une liaison half-duplex (à l’alternat).

IV – STRUCTURE DES TRAMES MODBUS


- trame d’échange maître esclave (question) :

Codé sur 1 octet. Code fonction sur 1 octet CRC (Code de


Adresse de chaque (24). redondance cyclique) sur
esclave (unique) et qui va Permet de sélectionner 2 octets, utilisé pour
de 1 à 255. une commande (lecture, détecter les erreurs de
écriture, bit, mot). transmission.
Si octet = 00, la demande
concerne tous les Données
esclaves. complémentaires pour
IDU = identifiant d’unité exécuter l’action

Lorsque le message est reçu par l’esclave, ce dernier lit le mot de contrôle (CRC) et accepte ou refuse le
message.

Exemple du module GenIndus pour interroger l’état des entrées E1 à E4 :

Trame envoyée par le maître : 01 02 00 00 00 04 79 C9


01 adresse de l’esclave (par défaut)
02 code fonction de lecture
00 00 1ère adresse de l’entrée TOR
donnée
00 04 nombre d’adresses à lire (4 pour 4 entrées)
79 C9 Code de vérification des erreurs (il s’agit d’un calcul polynômial).

Lycée des Métiers Jacques Prévert Combs – la – Ville


Section de BAC PRO Systèmes électroniques numériques 3
Electronique Industrielle Embarquée
Transmission de l’information COURS SEN

- trame d’échange esclave maître (réponse) :


La trame de réponse a un format similaire à la trame question.

Exemple de réponse avec le GenIndus (lecture des entrées) :

Trame reçue par le maître : 01 02 01 00 A1 88


01 adresse de l’esclave
02 code fonction
01 nombre d’octets à lire
00 état des 4 entrées (%0000 E1=E2=E3=E4 =0)
A1 88 Code de vérification de la transmission

- trame d’échange esclave maître (réponse en cas d’erreur) :

Si une erreur apparaît, l’esclave répond avec un code fonction modifié et les données contiennent un code
d’exception permettant de connaître le type d’erreur.

PF : poids fort
pf : poids faible
pf PF

Lorsque le maître émet une demande, il calcule le CRC. Lorsque l’esclave reçoit le message, il le range
en mémoire, calcule le CRC et le compare au CRC reçu.
Si le message est incorrect (CRC différents), l’esclave ne répond pas.
Si le message est correct mais que l’esclave ne peut le traiter, il renvoie une réponse d’exception.

Lycée des Métiers Jacques Prévert Combs – la – Ville


Section de BAC PRO Systèmes électroniques numériques 4
Electronique Industrielle Embarquée
Transmission de l’information COURS SEN

V – STRUCTURE GENERALE DES TRAMES MODBUS SELON LES FORMATS


- Format ASCII
Chaque octet composant une trame est codé avec 2 caractères ASCII (2x 8 bits).

Start Adresse Fonction Données CRC Stop


1 octet 2 octets 2 octets n octets 2 octets 2 octets

- Format RTU (Unité Terminal Distante)


Ce mode RTU est à temps contrôlé : les temps entre les caractères et entre les trames doivent être
respectés, sinon le protocole sera refusé.

Start Adresse Fonction Données CRC Stop


Silence 1 octet 1 octets n octets 2 octets Silence
(256 max)

En mode RTU, chaque octet composant le message est transmis avec ou sans parité, comme suit :

Start Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7 Parité Stop

L’ensemble du message doit être transmis de manière continue. Si un silence de plus de 3 fois le temps de
transmission d’un mot intervient au cours de la transmission, le destinataire du message considérera que
la prochaine information sera l’adresse du début d’un nouveau message.

Lycée des Métiers Jacques Prévert Combs – la – Ville


Section de BAC PRO Systèmes électroniques numériques 5
Electronique Industrielle Embarquée

Vous aimerez peut-être aussi