< Retour

Protocole Modbus : bases de RTU, ASCII et TCP

1. Qu’est-ce que Modbus ?

Modbus est un protocole de messages de couche application pour échanger des données entre contrôleurs et dispositifs. RS-485 et RS-232 sont des interfaces électriques ; Modbus RTU, ASCII et TCP définissent les formats de messages et transports associés. Une interface RS-485 n’implique pas automatiquement la prise en charge de Modbus.

En contrôle des fluides, il peut lire un état ou transmettre des paramètres. Prise en charge, fonctions et registres doivent être confirmés dans le manuel du contrôleur exact. Cet article ne prétend pas que tous les produits FOREACH disposent de ces interfaces.

2. Comment distinguer RTU, ASCII et TCP ?

Le connecteur ne suffit pas à identifier le mode. En série, mode, débit en bauds et format de trame doivent correspondre ; TCP exige des réglages réseau et de service compatibles.

ModeStructure du messageÀ vérifier
Modbus RTUAdresse + Code fonction + Données + CRCParamètres série, adresse et temporisation des trames
Modbus ASCIICodage ASCII avec LRC et caractères de début/fin définisParamètres série, codage et LRC
Modbus TCPEn-tête MBAP + Code fonction + Données ; sans CRC RTU supplémentaireIP, port, identifiant de transaction et Unit Identifier

3. Adresses série et requête–réponse

Les adresses individuelles série vont de 1 à 247 ; 0 est la diffusion et 248–255 sont réservées. Le contrôleur initie normalement une requête unicast et le dispositif adressé répond. Les écritures diffusées ne reçoivent pas de réponse. Un champ de 8 bits ne rend pas toutes les valeurs 0–255 valides comme adresses individuelles.

Ces règles concernent les liaisons série. Modbus TCP comporte un Unit Identifier dans MBAP ; son rôle d’acheminement par passerelle dépend de l’implémentation. N’appliquez pas aveuglément l’adressage série à toute configuration TCP.

4. Lire les fonctions avec la table des registres

Le code fonction indique le type de données et l’opération de lecture/écriture ; les données contiennent adresses, quantités ou valeurs. Deux dispositifs Modbus n’ont pas nécessairement les mêmes registres.

Vérifiez le décalage éventuel entre numéros du manuel et adresses de départ du message. Confirmez largeur, signe, échelle, unités et ordre des mots pour les valeurs multiregistres. Vitesse, position et volume liquide ne sont pas interchangeables.

SensMessage unicast série normal
Contrôleur → DispositifAdresse | Code fonction | Données | CRC (RTU) / LRC (ASCII)
Dispositif → ContrôleurAdresse | Code fonction | Données | CRC (RTU) / LRC (ASCII)
Code fonction (hex)Opération
01Lire les bobines
02Lire les entrées discrètes
03Lire les registres de maintien
04Lire les registres d’entrée
05Écrire une bobine
06Écrire un registre
0FÉcrire plusieurs bobines
10Écrire plusieurs registres
Le tableau couvre les échanges unicast série normaux. La diffusion n’a pas de réponse ; les exceptions modifient le sens du code fonction et des données. TCP utilise le format présenté plus haut. Un dispositif n’implémente pas nécessairement toutes ces fonctions.

5. Mise en service d’un dispositif de contrôle des fluides

Confirmez câblage et alimentation, puis réglez la communication selon le manuel. Lisez d’abord un état connu et vérifiez adresse, fonction et données avant de tester les écritures autorisées et les mouvements.

Vérifiez séparément communication, acceptation de commande, fin du mouvement et volume délivré. Un acquittement d’écriture ne prouve pas que la pompe a terminé. Après expiration du délai, interrogez l’état avant de répéter un dosage pour éviter de le doubler.

Enregistrez requêtes, réponses, exceptions et délais. Utilisez limites, référencement, état des vannes et chronologie pour localiser les problèmes. Commandes, adresses et unités exactes proviennent du manuel du dispositif.

Références

PrécédentAucune actualité précédente
SuivantAucune actualité suivante

Planifier ensemble communication et mouvement

Fournissez modèle du contrôleur, manuel, table des registres, câblage et séquence requise. Confirmez interfaces et unités de commande avant intégration.