Modbus vs RS485

Modbus est-il similaire au RS485 - Tutoriel sur la communication RS485


Le RS485 est une norme de transmission de données série très largement utilisée dans l'industrie. Le protocole Modbus est souvent utilisé lors de la mise en place d'une communication RS485. La différence entre les protocoles RS485 et RS232 réside dans le fait que ce dernier transmet des caractères ASCII pour la communication. Il est important de comprendre le fonctionnement de Modbus si vous devez travailler avec des périphériques utilisant le protocole RS485.

Si vous êtes un technicien responsable du support des périphériques RS485, il existe des techniques qui peuvent vous simplifier la vie. Nous proposons ce court tutoriel pour vous permettre de comprendre les différentes entre les protocoles Modbus et RS485.

Sommaire

  1. Qu'est-ce que la communication RS485 ?
  2. Qu'est-ce que Modbus ?

Le RS485 est un protocole similaire au RS232 qui est utilisé pour mettre en place une communication série. Les deux protocoles utilisent des signaux électriques différents pour transmettre des données.

L'une des raisons pour lesquelles le RS485 est utilisé dans l'industrie est sa capacité à communiquer avec plusieurs périphériques connectés à un même bus, ce qui évite de devoir disposer de plusieurs interfaces lors d'une communication avec plusieurs périphériques à la fois. Vous pouvez pour cela utiliser un terminateur de bus, déplacer un commutateur ou utiliser une petite résistance à visser sur un terminal.

Il faut faire attention à bien utiliser la bonne interface, les protocoles RS485 et RS32 n'étant pas entièrement compatibles. Vous pouvez mettre en place une passerelle entre des interfaces RS232 et RS485, mais vous verrez généralement le protocole RS485 se connecter directement aux ports USB, GSM ou Ethernet. Cette approche moins onéreuse évite d'avoir à utiliser du matériel additionnel.

Les périphériques utilisant des ports RS485 se servent généralement du protocole Modbus. Lorsque vous cessez d'utiliser les protocoles ASCII avec des périphériques RS232, il est conseillé de connaître les différences qu'ils comportent avec le protocole Modbus. C'est justement le but de ce court tutoriel Modbus.

Vous trouverez ci-dessous un tableau résumant les caractéristiques du protocole RS485, qui permet une transmission en half-duplex sur une ligne pouvant atteindre une longueur de 1,2 km.

Paramètre
Mode de fonctionnement Différentiel
Nombre de pilotes et de récepteurs 32 pilotes
32 pilotes
Longueur maximale du câble (en mètres) 1200
Débit de données maximal (en bauds) 10 M
Tension commune maximale (en volts) 12 à -7
Niveaux maximum de sortie du pilote (chargé) +/- 1,5
Niveaux minimum de sortie du pilote (déchargé) +/- 6
Charge du pilote (en ohms) 60 (min)
Limite d'intensité de court-circuit en sortie du pilote (en mA) 150 à Gnd, 250 à -7 ou 12 V
Résistance d'entrée minimum du récepteur (en kohms) 12
Sensibilité du récepteur +/- 200 mv

Si vous souhaitez obtenir plus d'informations sur le RS485, vous pouvez consulter l'EIA (Electronic Industries Alliance) ou des entreprises telles que Texas Instruments et Maxim Semiconductors, qui fabriquent des périphériques compatibles avec ce protocole.

Qu'est-ce que le système half-duplex ?


Un système half-duplex se compose d'un ou plusieurs émetteurs et récepteurs, et seul un émetteur peut être actif à la fois. La communication est démarrée par un émetteur qui envoie une requête vers un récepteur spécifique. L'émetteur attend ensuite une réponse durant un laps de temps prédéterminé ou décide qu'aucune réponse ne proviendra du récepteur.

Un réseau RS485 est conçu sur le modèle maître/esclave. Le maître joue le rôle de l'émetteur, en envoyant des requêtes vers un esclave désigné qui agit comme récepteur. Le maître attend la réponse, et si celle-ci ne lui parvient pas dans le délai imparti, il met un terme à la communication.

Qu'est-ce que Modbus ?


Messages Modbus


Principe des messages Modbus. Sur un réseau Modbus RS485, la communication débute lorsque le périphérique maître envoie une requête vers un esclave connecté au réseau. Un périphérique esclave passe son temps à surveiller le réseau dans l'attente de requêtes qui lui sont potentiellement destinées. Lorsqu'une requête est reçue, il effectue l'action demandée ou envoie une réponse au maître. Les requêtes peuvent uniquement être créées par le périphérique maître.

Principe des messages Modbus

Le protocole Modbus offre au maître le choix d'adresser des messages à des périphériques esclaves spécifiques ou de communiquer simultanément avec tous les esclaves. Cette dernière méthode est réalisée à l'aide d'une adresse spéciale dite de “broadcast”. Certains périphériques, notamment ceux fabriqués par Integra et SPR, ne prennent pas en charge l'adresse de broadcast.

Les opérations de lecture et d'écriture sont envoyées via des messages Modbus à l'aide de bobines d'entrée logiques. Une bobine se compose de mots de 16 bits et de registres binaires. Un esclave peut uniquement répondre à un message reçu et ne peut en aucun cas démarrer une communication avec le maître.

Chaque périphérique esclave connecté au bus RS485 en parallèle se voit attribuer un identifiant unique d'esclave Modbus. Toute communication Modbus débute par l'envoi de l'identifiant de l'esclave, soit pour informer un périphérique esclave qu'il peut accepter une requête, soit pour indiquer au maître quel périphérique a envoyé la réponse.

Tout comme pour les communications RS232, les périphériques maîtres et esclaves doivent être configurés correctement. Les paramètres tels que la vitesse et la parité doivent être synchronisés sur l'ensemble du réseau.

Format des messages Modbus


Le format de message utilisé dans les communications Modbus entre le maître et l'esclave est défini dans le protocole.

Une requête Modbus se compose de l'adresse du périphérique (ou de broadcast), d'un code de fonction définissant l'action requise, des données renvoyées en réponse à la requête et d'une vérification d'erreurs.

Une réponse Modbus se compose d'éléments vérifiant que l'action requise a bien été effectuée, des données envoyées avec la réponse et d'une vérification d'erreurs. Le périphérique esclave créera un message d'erreur en guise de réponse s'il n'est pas en mesure d'effectuer l'action requise ou si des erreurs ont empêché la bonne réception du message.

Les modes de transmission série


La communication Modbus utilise deux modes de transmission série distincts : ASCII et RTU.

Le mode Modbus ASCII (American Standard Code for Information Interchange) envoie chaque message de 8 bits sous la forme de deux caractères ASCII. L'un des avantages du mode ASCII est qu'il offre la possibilité de surveiller facilement les messages sur une console texte. Ce mode supporte également un intervalle d'une seconde sans déclencher d'avertissement d'expiration.

Le mode Modbus RTU (Remote Terminal Unit) transmet les messages dans un format différent. Un message 8 bits se compose ici de deux caractères hexadécimaux de 4 bits chacun. Les données utilisant ce mode de transmission doivent être envoyées en flux continu. Un meilleur débit peut être atteint par rapport au mode ASCII pour une rapidité de modulation identique.

Serial Port Monitor

Configuration requise: Windows (32-bit et 64-bit): XP/2003/2008/Vista/7/8/10, Windows Server 2012, Windows Server 2012/2016/2019 , 8.15MB taille
Version 8.0.388 (le 7 Juil, 2020) Notes de mise à jour
Catégorie: Serial Port Software