Introduction
Ce court article a pour but de vous guider dans le paramétrage de vos trame Modbus TCP ou RTU vous y retrouverez :
- Les types de données échangés via Modbus
- Les codes de fonction Modbus
- Les codes d’erreurs Modbus
Si tu veux en savoir plus sur les spécificités et la configuration des réseaux Modbus TCP ou Modbus RTU consultes nos guides pour chaque type de protocole :
Les types de données échangés via Modbus
Les types de données échangés sont les même qu’il s’agisse d’une communication Modbus RTU (liaison série) ou Modbus TCP (liaison Ethernet)
Type d’objet | Description |
---|---|
Coils | Interrupteurs binaires activés/désactivés qui peuvent être lus et modifiés via Modbus. Utilisés couramment pour contrôler des relais ou d’autres dispositifs d’entrée/sortie booléens. |
Discrete Inputs | Entrées binaires qui ne peuvent être que lues. Ces entrées sont typiquement utilisées pour des capteurs ou tout autre dispositif d’entrée fournissant un état binaire, comme un bouton-poussoir ou un interrupteur de limite. |
Input Registers | Registres de 16 bits qui ne peuvent être que lus. Ils sont souvent utilisés pour lire les entrées numériques de dispositifs de mesure comme les capteurs de température ou les compteurs d’énergie. |
Holding Registers | Registres de 16 bits qui peuvent être lus ou écrits. Ils sont utilisés pour stocker et récupérer des valeurs numériques utilisées par l’application. |
Multiple Registers | Réfère à des opérations sur plusieurs registres simultanément, soit pour la lecture ou l’écriture, permettant des transferts de données plus efficaces et groupés. |
Les codes fonctions Modbus
Les codes de fonctions modbus définissent les actions à réaliser, comme la lecture ou l’écriture de données.
Codes fonctions Modbus courants
Petit guide pour choisir la fonction modbus qu’il vous faut :
- Pour lire l’état ou les données : Utilisez les fonctions 01, 02, 03 ou 04 selon que vous travaillez avec des bobines, entrées discrètes, ou registres.
- Pour écrire des commandes ou paramètres : Utilisez 05 ou 06 pour une commande unique, ou 15 et 16 pour écrire sur plusieurs bobines ou registres en une seule fois.
- Pour des diagnostics ou des besoins avancés : Les fonctions plus avancés comme 07, 08, ou 22 sont utiles pour vérifier l’état du réseau, tester la communication ou gérer des modifications complexes.
Pour des applications standard, les fonctions Modbus de lecture/écriture de bobines et de registres couvrent la majorité des besoins, tandis que les fonctions plus avancées s’appliquent aux cas spécifiques nécessitant des diagnostics ou des opérations complexes. De plus la plupart des composant intégrant le protocole Modbus intègre nativement les fonction de vérification de l’état du réseau.
Codes d’erreur Modbus RTU
Lorsqu’un appareil esclave rencontre une erreur lors du traitement d’une requête, il répond avec un message d’exception contenant un code d’erreur. Ces codes fournissent des informations sur la nature de l’erreur. Voici quelques codes d’exception courants :
Code | Signification |
---|---|
0x01 | Fonction illégale |
0x02 | Adresse de données illégale |
0x03 | Valeur de données illégale |
0x04 | Défaillance du dispositif esclave |
0x05 | Accusé de réception |
0x06 | Dispositif esclave occupé |