Fonctions de Modbus
Description générale
Le protocole Modbus propose un certain nombre de fonctions qui permettent de lire ou d'écrire des données sur le réseau Modbus. Le protocole Modbus offre également des fonctions de diagnostic et de gestion de réseau.
Seules les fonctions Modbus gérées par les relais VigiPacT sont décrites ici.
Fonctions
Les fonctions suivantes sont disponibles :
|
Code de fonction |
Code de sous-fonction |
Nom |
Description |
|---|---|---|---|
|
1 (0x01) |
– |
Lecture des bits de sortie |
Lecture des bits de sortie |
|
2 (0x02) |
– |
Lecture des entrées TOR |
Lecture des bits d'entrée |
|
3 (0x03) |
– |
Lecture de registres de maintien |
Lecture de n registres |
|
5 (0x05) |
– |
Ecriture dans un bit de sortie |
Ecriture de 1 bit |
|
6 (0x06) |
– |
Ecriture dans un registre |
Ecriture 1 registre |
|
16 (0x10) |
– |
Ecriture dans plusieurs registres |
Ecriture n registres |
|
43 (0x2B) |
14 (0x0E) |
Lecture d'identification de produit |
Lecture des données d'identification du serveur |
Exemple de lecture de registre
Le tableau suivant indique comment lire le courant mesuré dans le registre 1005. L'adresse du registre 1005 est 1005-1 = 1004 = 0x03EC. L'adresse Modbus du serveur Modbus est 247 = 0xF7.
|
Requête du client |
Réponse du serveur |
||
|---|---|---|---|
|
Nom du champ |
Exemple |
Nom du champ |
Exemple |
|
Adresse de serveur Modbus |
0xF7 |
Adresse de serveur Modbus |
0xF7 |
|
Code de fonction |
0x03 |
Code de fonction |
0x03 |
|
Adresse du registre à lire (MSB) |
0x03 |
Longueur des données en octets |
0x02 |
|
Adresse du registre à lire (LSB) |
0xEC |
Valeur du registre (MSB) |
0x12 |
|
Nombre de registres (MSB) |
0x00 |
Valeur de registre (LSB) |
0x34 |
|
Nombre de registres (LSB) |
0x01 |
CRC (MSB) |
0xXX |
|
CRC (MSB) |
0xXX |
CRC (LSB) |
0xXX |
|
CRC (LSB) |
0xXX |
– |
|
Le contenu du registre 1005 (adresse 0x03EC) est 0x1234 = 4 660. Le courant mesuré est donc de 4 660 mA.