Vous êtes sur la page 1sur 16

THEME 5 : BUS MODBUS 1

THEME 5 : BUS MODBUS 2

INTRODUCTION
Le modèle OSI gère les grands réseaux à commutation de paquets (domaine de la
télécommunication). Le temps n'a pas été pris en compte. Pour les Réseaux Locaux Industriels
(RLI), la notion de temps réel est un point très important. La couche physique est indispensable
à la communication. La couche liaison de données aussi pour la détection des erreurs. Les
couches réseau et transport ont été définies pour gérer les problèmes des paquets qui transitent
par des stations intermédiaires : elles n'ont plus lieu d'être pour les RLI car toutes les stations
sont interconnectées. La couche session permet l'échange d'une grande quantité d'information,
ce qui n'est pas le cas pour les RLI. La couche présentation peut être figée et non dynamique ce
qui la rend transparente. La couche application reste évidemment nécessaire. Il en résulte un
modèle (IEEE 802) à trois couches. Ainsi, les réseaux locaux industriels (RLI) sont basés sur
une restriction du modèle OSI (Organisation de Standardisation Internationale). Ils emploient
les 3 couches suivantes :

 La couche physique qui doit respecter des contraintes fortes liées à l’environnement
(température, vibrations, ...),
 La couche liaison de données qui doit assurer un transport fiable de quantité assez faible
de données,
 La couche application (qui peut être vide dans de nombreux réseaux).

Un réseau industriel fait communiquer entre eux non seulement des PC, mais aussi des
automates, des interfaces d’entrée / sortie (capteurs, actionneurs, variateurs, affichage,
supervision) et des systèmes complets (ascenseurs, process...) dans une zone géographique
limitée (un « terrain ») qui respecte le modèle d'interconnexion des systèmes ouverts (OSI).
C'est un réseau bidirectionnel, sériel, multi-branche (mult-idrop), Leur rôle étant de contrôler
et d’agir sur des grandeurs évoluant au fil du temps, il s’agit de systèmes « temps réel ». On
parle aussi de « bus de terrain » ou de « réseau de terrain ». Il existerait plus de 2000 bus de
terrain différents. Les technologies les plus répandues sont : Modbus, Profibus, Interbus-S, ASI,
Lonworks et bus CAN.

Le Modbus (MODicon BUS) est un protocole de communication industriel utilisé pour des
réseaux d’automates programmables (API) développé par Gould Modicon (devenu Schneider
Electric) en 1979. Il est généralement utilisé pour la transmission des données entre les
instruments de contrôle, les automates, les capteurs et les HMI. Il est maintenant devenu une
norme " open public-domain Protocol " dans le domaine de l'automatisme et de la
THEME 5 : BUS MODBUS 3

communication industrielle, et est le moyen le plus couramment utilisé pour faire communiquer
des équipements industriels. Il est souvent utilisé pour connecter un ordinateur de supervision
à une unité terminale distante (Remote terminal unit RTU) dans les systèmes de contrôle de
supervision et d'acquisition de données (SCADA). Il fonctionne sur le mode maître/esclave
pour l’échange des trames. Le Modbus peut être implémenté via une liaison série (RS485,
RS422 et RS232) ou Ethernet (Modbus TCP). Les protocoles de la liaison série sont le Modbus
RTU et le Modbus ASCII. MODBUS est un protocole de messagerie de couche application

pour la communication client / serveur entre périphériques connectés sur différents types de bus
ou de réseaux, positionné au niveau 7 du modèle OSI. La popularité de Modbus est due à sa
flexibilité, sa facilité de mise en œuvre et sa simplicité.

I. PRINCIPE GENERAL

Le protocole Modbus est un protocole de dialogue basé sur une structure hiérarchisée
entre un maître et plusieurs esclaves. Il est composé d’une station Maître et de stations esclaves.
Seule la station Maître peut être à l’initiative de l’échange (la communication directe entre
stations Esclaves n’est pas réalisable). Le maître peut s’adresser aux esclaves individuellement
ou envoyer un message de diffusion générale à tous les esclaves. Les esclaves renvoient un
message (réponse) aux requêtes qui leur sont adressées individuellement. Les requêtes de
diffusion générale n’attendent pas de réponses en retour. Un seul équipement peut émettre sur
la ligne à tout moment. Le maître gère l'échange et seul lui peut prendre l'initiative. Il interroge
chacun des esclaves successivement. Aucun esclave ne peut envoyer de message à moins qu'il
ne soit invité à le faire. Le maître répète la question lorsqu'un échange est incorrect et déclare
l'esclave interrogé absent si aucune réponse n’est reçue dans un délai donné. Si un esclave ne
comprend pas un message, il envoie une réponse d'exception au maître. Le maître peut réitérer
ou non la requête.

Figure 1 : Principe de fonctionnement du Modbus.


THEME 5 : BUS MODBUS 4

II. NORMES
La norme BUS MOBUS définit un protocole de transmission de message de la couche
d’application du niveau 7 du modèle OSI et du serveur « client-serveur » entre des dispositifs
relies par un bus ou un réseau.
On distingue généralement plusieurs à savoir :
 La norme électrique RS232 caractérisée la transmission d’un signal sur un fil
référencier par rapport à la mase à la liaison point à point ;
 La norme électrique RS244 et RS484 : norme électrique caractérisant la transmission
d’un signal sur un support différentiel (liaison multi point du bus). Deux fils
correspondant à des niveaux complémentaires sont utilisés pour des codes
d’information.
Soit le tableau résumant spécification de chaque norme :
Spécification RS232 RS422 RS485
Type de unipolaire Différentie Différentie
communication
Connexion 3 fils Tx, Rx et la 5 fils paire Tx, paire 3 fils TR
électriques masse Rx et masse
nominales
Nombre de 1 transmetteur, 1transmeur 32 transmetteurs
transmetteurs alloués 1 récepteur 31 récepteurs 32 récepteurs
par par la ligne
Longueur maximum 16,5m 1320m 1320m
du câble
Débit câble 64 Kbits/s 10k Mbits/s 10k Mbits/s
maximum

III. TOPOLOGIES, TYPES DE CALBES, CONNECTEURS ET AUTRES


MODULES

1. Topologie
Le bus Modbus gère toutes les topologies en étoile, en ligne et en anneau.

 Topologie en étoile : Dans un réseau en étoile, tous les contrôleurs et périphériques se


connectent à un switch central.
 Topologie en ligne : Dans un réseau en ligne, le contrôleur se connecte directement à
un port du premier module Modbus TCP. Le deuxième port Ethernet du module Modbus
TCP se connecte à un autre module qui, à son tour, se connecte au module suivant
jusqu'à ce que tous les périphériques soient connectés.
THEME 5 : BUS MODBUS 5

 Topologie en anneau : Dans un réseau en anneau, le contrôleur se connecte au premier


module Modbus TCP via un switch. Le deuxième port Ethernet du module Modbus TCP
se connecte à un autre module qui, à son tour, se connecte au module suivant jusqu'à ce
que tous les périphériques soient connectés.
 Topologies combinées : Un réseau unique peut inclure des composants en étoile et en
ligne.

2. Types de câbles
Les supports de transmission ou MEDIUMS influent sur :
o Vitesse,
o Distance,
o Immunité électro-magnétique.
Mediums les plus utilisés :

 La paire de fils torsadés : Le plus simple à mettre en œuvre, et le moins cher. C’est le
plus utilisé sur les bus de terrain.
 Le câble coaxial : Il se compose d’un conducteur en cuivre, entouré d’un écran mis à la
terre. Entre les deux, une couche isolante de matériau plastique. Le câble coaxial a
d’excellentes propriétés électriques et se prête aux transmissions à grande vitesse. Plus
difficile à mettre en œuvre.
 La fibre optique : Ce n’est plus un câble en cuivre qui porte les signaux électriques mais
une fibre optique qui transmet des signaux lumineux. Convient pour les environnements
industriels agressifs, les transmissions sont sûres, et les longues distances (maxi 10000
mètres).
3. Connecteurs

4. Variantes du bus MODBUS


Il existe des versions du protocole Modbus pour le port série et pour Ethernet et d'autres
protocoles qui prennent en charge la suite de protocoles Internet. Il existe de nombreuses
variantes de protocoles Modbus :

 Modbus RTU (Remote Terminal Unit) : Il est utilisé dans la communication série et
utilise une représentation binaire compacte des données pour la communication par
protocole. Le format RTU suit les commandes/données avec une somme de contrôle de
THEME 5 : BUS MODBUS 6

contrôle de redondance cyclique. Comme mécanisme de contrôle d'erreur pour garantir


la fiabilité des données. Modbus RTU est l'implémentation la plus courante disponible
pour Modbus. Un message Modbus RTU doit être transmis en continu sans hésitation
entre les caractères. Les messages Modbus sont encadrés (séparés) par des périodes
d'inactivité (silencieuses).
 Modbus ASCII (American Standard Code for Information Interchange) : Il est utilisé
dans la communication série et utilise des caractères ASCII pour la communication par
protocole. Le format ASCII utilise une somme de contrôle de contrôle de redondance
longitudinale. Les messages Modbus ASCII sont encadrés par deux points (":") et un
saut de ligne (CR / LF).
 Modbus TCP / IP ou Modbus TCP : Il s'agit d'une variante Modbus utilisée pour les
communications sur les réseaux TCP / IP, se connectant sur le port 502. Elle ne nécessite
pas de calcul de somme de contrôle (checksum calculation), car les couches inférieures
offrent déjà une protection de somme de contrôle.
 Modbus over TCP / IP ou Modbus RTU / IP : Il s'agit d'une variante Modbus qui diffère
de Modbus TCP en ce qu'une somme de contrôle est incluse dans la charge utile comme
avec Modbus RTU.
 Modbus sur UDP : L'utilisation de Modbus sur UDP sur les réseaux IP, élimine les
conditions requises pour TCP.
 Modbus Plus (Modbus +, MB + ou MBP) : Modbus Plus est propriétaire de Schneider
Electric et, contrairement aux autres variantes, il prend en charge les communications
peer-to-peer entre plusieurs maîtres. Il nécessite un coprocesseur dédié pour gérer la
rotation rapide des jetons. Il utilise une paire torsadée à 1 Mbit/s. Un matériel spécial
est requis pour connecter Modbus Plus à un ordinateur, généralement une carte conçue
pour le bus ISA (Industry Standard Architecture), PCI (Peripheral Component
Interconnect).
 Pemex Modbus : Il s'agit d'une extension du Modbus standard avec prise en charge des
données historiques et de flux. Il a été conçu pour la société pétrolière et gazière Pemex
pour une utilisation dans le contrôle des processus et n'a jamais été largement adopté.
 Enron Modbus : Il s'agit d'une autre extension du Modbus standard développé par Enron
Corporation Les principales différences entre les deux protocoles sont la numérotation
des adresses de registre, la prise en charge des registres 32 bits et 16 bits et la capacité
de transmettre des journaux d'événements et des données historiques.
THEME 5 : BUS MODBUS 7

Le modèle de données et les appels de fonction sont identiques pour les 4 premières variantes
de protocoles ; seule l'encapsulation est différente. Cependant, les variantes ne sont pas
interopérables, pas plus que les formats de trame.

IV. PROTOCOLE DE COMMUNICATION


Le protocole MODBUS permet une communication facile dans tous les types
d'architectures de réseaux. Tous les types d'appareils (API, IHM, panneau de commande, pilote,
Motion control, périphérique d'E/S…) peuvent utiliser le protocole MODBUS pour lancer une
opération à distance. La même communication peut se faire aussi bien sur une ligne série que
sur un réseau Ethernet TCP / IP. Les passerelles permettent une communication entre plusieurs
types de bus ou de réseaux en utilisant le protocole MODBUS.

Le protocole MODBUS définit une unité de données de protocole simple Protocol Data
Unit (PDU) indépendante des couches de communication sous-jacentes. Le mappage du
protocole MODBUS sur des bus ou réseaux spécifiques peut introduire des champs
supplémentaires sur l'unité de données d'application Application Data Unit (ADU).

Figure 2 : Trame Modbus générale

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.

Les commandes de diffusion sont obligatoirement des commandes d'écriture. Il n'y a pas de
réponse émise par les esclaves.
THEME 5 : BUS MODBUS 8

Toutes les trames échangées ont la même structure.

Les demandes du maître sont adressées soit :


 A un esclave donné (identifié par son numéro dans le premier octet de la trame de
demande).
 A tous les esclaves (diffusion).

Tout échange comporte deux trames, une demande du maître et une réponse de l'esclave.
Sauf pour la diffusion (écriture seulement) ou l'échange est constitué d'une trame du maître.
Chaque trame contient quatre types d'informations :
Le numéro de l'esclave (1 octet) : le numéro de l'esclave spécifie l'esclave destinataire
(1 à 255). Si ce numéro est zéro, la demande concerne tous les esclaves, il n'y a pas de
message de réponse.
Le code fonction (1 octet) : il permet de sélectionner une commande (lecture, écriture,
bit, mot) et de vérifier si la réponse est correcte.
Le champ information (n octets) : il contient les paramètres liés à la fonction : adresse
bit, adresse mot, valeur de bit, valeur de mot, nombre de bits, nombre de mots.
Le mot de contrôle (2 octets) : il est utilisé pour détecter les erreurs de transmission.
C’est un code de vérification d’erreur appelé contrôle de redondance cyclique sur 16
bits ou CRC16. Le CRC (Cyclical Redundancy Check) est calculé par l’émetteur avant
d’être transmis. Le récepteur calcule aussi un CRC avec la trame reçue et le compare
avec le CRC reçu : des valeurs différentes indiqueront une erreur dans la transmission
du message. Le CRC utilisé par Modbus est basé sur un calcul utilisant un OU
EXCLUSIF (XOR).
THEME 5 : BUS MODBUS 9

Présentation des trames de demande et de réponse

Demande

Réponse

Certains équipements permettent le choix entre ces deux types de formats de trames :

 Le format RTU (Remote Terminal Unit.) permet pour une même vitesse de transmission
un plus fort débit de données. Les données sont sur 8 bits. Chaque octet de la trame est
transmis sous la forme de 2 caractères hexadécimaux.
 Le format ASCII (Américan Standard Code for Information Interchange.) offre une
"souplesse" plus importante sur les timings inter-octet (jusqu'à 1 seconde) et constitue
une véritable transmission asynchrone. Les données sont sur 7 bits (les trames sont donc
visibles en hexadécimal et il faut deux caractères pour représenter un octet). Ce dernier
mode est quasiment tombé en désuétude. Ici, chaque octet de la trame est transmis sous
la forme de 2 caractères ASCII.
THEME 5 : BUS MODBUS 10

Ces deux formats de trames 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 principal avantage du mode RTU est qu’il transmet plus rapidement les informations. Le
mode ASCII permet d’avoir un intervalle de temps d’une seconde entre 2 caractères consécutifs,
pour ne pas générer d’erreur de transmission.

Figure 3 : Formats de trames MODBUS RTU/MODBUS ASCII

V. IMPLEMENTATION
Modbus est un protocole de communication utilisé pour des réseaux d’automates
programmables (API). Il fonctionne sur le mode maître/esclave pour l’échange des trames.

Le protocole Modbus peut être utilisé :

 Directement sur une liaison série de type RS-422 ou RS-485 ou TTY (boucle de courant)
avec des débits et des distances variables
 Via TCP/IP avec Ethernet : on parle alors de Modbus TCP/IP ou Modbus TCP
 Via Modbus Plus (ou Modbus+). Modbus Plus est un réseau à passage de jetons à 1
Mb/s, pouvant transporter les trames Modbus et d’autres services propre à ce réseau.
THEME 5 : BUS MODBUS 11

1. Structure Modbus

Figure 4 : Une architecture Modbus

2. Modbus SL (liaison série)

Modbus SL est le protocole de dialogue appliqué aux liaisons série, basé sur une
structure de type maître/esclave : le maître pose des questions et les esclaves donnent les
réponses, et même lorsque plusieurs périphériques sont connectés à une ligne en série, un seul
appareil peut parler à la fois. Il est utilisé pour des réseaux d'automates programmables. La
solution Modbus RS485 a été la plus utilisée dans le monde. Elle permet des vitesses de
communication allant jusqu'à 115 kbps, mais la plupart des dispositifs supportent seulement
des communications jusqu'à 19,2 kbps. Elle est d'un faible coût de mise en œuvre. Cette solution
a la plus large base installée et de réseaux de fournisseurs. Le point faible de Modbus SL est sa
vitesse de transmission limitée par la vitesse des lignes en série et le nombre maximum
d'appareils. Modbus SL peut être confronté à certains problèmes dans son application sur des
sites industriels très importants, mais il est encore un choix économique et raisonnable pour la
majorité des systèmes de protection moteur.

Principe d’une liaison série : les n bits sont transmis au rythme d’une horloge dont la valeur de
période permet de définir la notion de débit (vitesse de transmission) égal au nombre de bits
transmis par unité de temps (bits/s)
THEME 5 : BUS MODBUS 12

Les différents modes d’exploitation d’une liaison série :

 Simplex : l’exploitation de la ligne se fait en mode unidirectionnel


 Half duplex : l’exploitation de la ligne se fait en mode bidirectionnel mais pas
simultanément
 Full duplex : l’exploitation de la ligne se fait en mode bidirectionnel simultané sur le
même support physique

Figure 5 : Une architecture Modbus SL


THEME 5 : BUS MODBUS 13

Figure 6 : Les échanges Modbus SL

3. Modbus / TCP

Le protocole Modbus / TCP utilise le standard Ethernet 10 Mbps pour véhiculer toute
la structure des messages Modbus. Il offre une vitesse très rapide et accepte un grand nombre
de périphériques dans un même réseau. Il facilite l'intégration d'un équipement MCC dans le
réseau local (LAN) d'une entreprise, aussi il est préféré par de plus en plus de clients et s'avère
un excellent choix pour les applications des grands chantiers.

Contrairement à Modbus SL, Modbus / TCP fonctionne sur un concept client / serveur :

 un client initie les demandes et les réponses d'un serveur,


 n'importe quel périphérique peut être un client ou un serveur,
 de nombreux appareils sont à la fois client et serveur dans le même temps,
 un réseau peut réunir de nombreux clients,
 plusieurs clients peuvent envoyer des requêtes au même moment et plusieurs serveurs
peuvent répondre en même temps,
 un client peut parler à plusieurs serveurs en même temps,
 un serveur peut répondre à plusieurs clients en même temps,
 Ethernet dirige et s'assure de la livraison des données à tous les périphériques en même
temps.
THEME 5 : BUS MODBUS 14

Figure 7 : Une architecture typique de la communication

VI. POINTS FORTS ET POINTS FAIBLES

1. Points forts

 Simplicité et faible cout d’implémentation


 Supporte des équipements de marques différents
 Proposé par la plupart des constructeurs et éditeurs de logiciel
 Haut niveau d’intégration dans plusieurs plateformes logicielles

2. Points faibles

 Nécessité d’écrire un programme pour accéder à une variable


 Relativement lent
 Pas de communication directe d’esclave à esclave.
THEME 5 : BUS MODBUS 15

VII. Conclusion
Le BUS MODBUS est un protocole industriel utilisé pour des réseaux d’automates
programmables dont le principe est basé sur une structure hiérarchisée en un maître et plusieurs
esclaves pour l’échange des trames.
THEME 5 : BUS MODBUS 16

REFERENCES BIBLIOGRAPHIQUES
[1] Guide du MODBUS comprendre et mettre en oeuvre facilement le Bus Industriel
MODBUS-juin
[2] Alicat scientific Modbus aux norms TCP/IP de protocole d’automatisme industielle
[3] Vitual Serial Port, Electronoc Time Publishing, Modbus vs RS485, by Olga Weis 9, 2020.
[4] Communication industrielle: le bus RS485, extrait du cahier technique, GROUPE
SOCOMEC, S.A.Strasbourg B 548 500 149 B.P. 60010-1, rue de westhouse-F-67235 Benfel
Cedex, Tel: 03 88 57 41 41- Fax: 03 88 57 78 78.

Vous aimerez peut-être aussi