Modbus est un protocole série et Ethernet ouvert et simple qui permet à un contrôleur de lire et d’écrire des emplacements de données numérotés (registres) à l’intérieur d’appareils industriels. Ses deux variantes dominantes sont Modbus RTU (série, sur RS-485) et Modbus TCP (le même modèle de données encapsulé dans des paquets Ethernet/IP). Publié par Modicon en 1979, il est antérieur à la plupart des équipements de votre atelier et pourtant il reste, discrètement, le moyen de communication d’une grande partie des automates programmables, variateurs, compteurs et capteurs. Ce n’est pas glamour. Il n’a pas de sécurité intégrée, pas d’auto-description, et un modèle de données qui paraît ancien. Mais il est gratuit à implémenter, trivial à déboguer et supporté par presque tout, ce qui explique exactement pourquoi il demeure le choix par défaut pour la capture de données machine bon marché et fiable.
Les deux variantes partagent une couche application identique. Les mêmes codes de fonction et la même carte de registres fonctionnent que les octets voyagent sur une paire torsadée cuivre ou sur un commutateur Ethernet. Ce qui diffère, c’est le transport sous-jacent.
En bref : RTU est bon marché, robuste et lent sur un câble partagé ; TCP est plus rapide, concurrent et utilise votre réseau d’usine existant mais nécessite un appareil compatible Ethernet ou une passerelle.
Modbus n’envoie pas d’étiquettes nommées. Il envoie le contenu d’emplacements numérotés, et il existe exactement quatre tables :
Parce qu’un registre ne fait que 16 bits, une valeur supérieure à 65535 (un compteur de production 32 bits, une vitesse en virgule flottante) est répartie sur deux registres consécutifs. Voici le piège classique : l’ordre des octets et des mots n’est pas standardisé. Un compteur 32 bits valant 1 000 000 peut arriver comme paire de mots (15, 16960) sur un appareil et (16960, 15) sur un autre. Si votre compteur renvoie des valeurs incohérentes, inversez l’ordre des mots avant d’accuser le câblage. Confirmez toujours la carte de registres et l’endianness dans le manuel de l’appareil, pas en devinant.
Supposons que vous souhaitiez le nombre de bonnes pièces d’une presse pour alimenter un calcul de disponibilité et de performance. Le manuel indique que le total cumulé est situé dans les registres de maintien 40001 et 40002 comme entier non signé 32 bits, mot de poids fort en premier.
Alimentez ce débit avec le temps de cycle idéal de la machine et vous obtenez la performance en temps réel ; ajoutez le temps planifié et les arrêts et vous obtenez le taux de rendement synthétique. C’est toute la magie. Une lecture de deux registres, une fois par seconde, transforme une presse silencieuse en source de données, et cela ne coûte rien d’autre qu’une interrogation. Associez ce même flux au débit et au taux de rebut et vous pouvez voir des pertes que le compte-rendu de poste n’a jamais capturées.
La décision revient généralement à ce que l’appareil supporte déjà et à la distance que les données doivent parcourir.
Aucune des deux variantes n’est un système de contrôle. Modbus est un protocole d’échange de données, pas un SCADA et pas une couche de sécurité, donc gardez-le hors de tout chemin nécessitant un timing ou une sécurité garantis.
RTU est semi-duplex sur un câble partagé, donc le timing des interrogations compte. Si un maître interroge 20 esclaves à 9600 bauds et que chaque transaction (requête plus réponse plus temps de retournement) prend environ 30 à 50 millisecondes, un balayage complet des 20 appareils prend environ une seconde. Ajoutez des appareils ou réduisez la vitesse et vos données vieillissent. Lorsque la résolution inférieure à la seconde est importante, répartissez la charge sur plusieurs ports séries ou migrez les appareils les plus sollicités vers TCP.
La sécurité est l’autre mise en garde honnête. Le Modbus classique n’a ni authentification ni chiffrement ; quiconque sur le câble peut lire ou écrire n’importe quel registre. Gardez-le sur des réseaux OT isolés ou des VLAN, n’exposez jamais le port 502 sur Internet, et traitez l’accès en écriture comme privilégié. Cette même fondation de données alimente des indicateurs de fiabilité tels que le MTBF et le MTTR et soutient une transition vers la maintenance conditionnelle, mais seulement si le canal qui les transporte est conçu en tenant compte de ces limites.
Fabrico est la fondation de données temps réel qui transforme ces lectures Modbus brutes en décisions. Il capture la production en direct et le TRS à partir des données machine que vous avez déjà, que les valeurs arrivent par RTU, TCP ou une passerelle intermédiaire. Lorsqu’une machine n’a pas d’API ou n’expose rien d’utile sur le fil, Fabrico peut lire l’état visuellement avec de la vision par ordinateur, de sorte que vous n’êtes pas bloqué par une ligne ancienne. Au-dessus de la supervision se trouve un GMAO prêt pour le terrain pour les ordres de travail, les actifs, la planification préventive et les pièces de rechange, ce qui signifie que le même signal qui mesure un arrêt peut déclencher la réponse appropriée. Fabrico est conçu dans l’UE avec résidence des données dans l’UE, un point réel à considérer lorsque vos données de production quittent le plancher. Pour l’aspect maintenance de cette boucle, voyez comment il soutient un passage de la maintenance réactive à proactive.
Non. Il est ancien (1979) et techniquement limité, mais il est ouvert, gratuit à implémenter et supporté par une énorme base installée d’automates, variateurs et compteurs. Pour des lectures de registres simples, ce qui constitue la majeure partie du travail de supervision machine, les protocoles plus récents ajoutent de la complexité sans bénéfice évident. Modbus reste le choix pragmatique par défaut précisément parce qu’il est omniprésent et facile à déboguer.
Pas directement, car ils utilisent des transports physiques différents, mais ils partagent la même couche application, donc une passerelle Modbus traduit proprement entre eux. Les cartes de registres et les codes de fonction sont identiques des deux côtés, ce qui fait du pontage une boîte simple et peu coûteuse plutôt qu’un ré-ingénierie complète.
Presque toujours l’ordre des mots ou des octets. Un nombre 32 bits s’étend sur deux registres 16 bits, et Modbus n’a jamais standardisé quel mot vient en premier, si bien qu’une valeur peut arriver mot-haut-en-premier ou mot-bas-en-premier selon le fabricant. Vérifiez le manuel de l’appareil pour l’ordre des octets et des mots, puis inversez dans votre code d’analyse. Le câblage est rarement le coupable.
Protocole ancien, insight moderne : si vos machines parlent déjà Modbus, vous êtes à une interrogation de la TRS en temps réel. Réservez une démo Fabrico pour voir vos données machines réelles transformées en décisions.