Codes de diagnostic pris en charge

Le code fonction 3 Modbus permet d'accéder à une grande variété de fonctions de diagnostic, concernant notamment le réseau, les ports Ethernet et le port 502 Modbus.

Pour accéder aux diagnostics du code fonction 3 depuis l'équipement local, vous devez définir l'ID d'unité sur 100.

Les modules suivants prennent en charge les codes de diagnostic Modbus indiqués ci-après.

  • Module de tête d'E/S distantes Quantum (140CRP31200)

  • Module de tête d'E/S distribuées Quantum (140NOC78000)

  • Module de communication de commande Quantum (140NOC78100)

  • Module adaptateur d'E/S distantes Quantum (140CRA31200)

  • Module de tête d'E/S distribuées M340 (BMXNOC0401)

  • Module adaptateur d'E/S distantes M340 (BMXCRA31200)

  • Module Quantum IEC 61850 (140NOP85000)

  • Module de communication M580 (BMENOC03•1)

  • Module de communication M580 (BMENOP0300)

Code fonction 3 Modbus : Diagnostic réseau de base

Les informations de diagnostic réseau de base sont disponibles à partir de l'adresse 40001 (décimal), comme décrit dans le tableau suivant.

Adresse de début (décimal)

Longueur (mots)

Ordre des octets dans le registre

Commentaires

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40001

2

Octet de poids fort 00

Octet 01

Validité du diagnostic réseau de base

Octet 02

Octet de poids faible

40003

1

Octet de poids fort

Octet de poids faible 03

Etat global des communications

40004

1

Octet de poids fort

Octet de poids faible

Services de communication pris en charge

40005

1

Octet de poids fort

Octet de poids faible

Etat des services de communication

40006

2

IP1

IP2

Adresse IP (IP1.IP2.IP3.IP4)

IP3

IP4

40008

2

MS 1

MS 2

Masque de sous-réseau (MS1.MS2.MS3.MS4)

MS 3

MS 4

40010

2

P 1

P 2

Passerelle par défaut (P1.P2.P3.P4)

P 3

P 4

40012

3

MAC 1

MAC 2

Adresse MAC (MAC1:MAC2:MAC3:MAC4:MAC5:MAC6)

MAC 3

MAC 4

MAC 5

MAC 6

40015

3

Octet de poids fort 00

01

Format de trame Ethernet - fonction/configuration/fonctionnement

02

03

04

Octet de poids faible 05

40018

2

C00

C01

Trames Ethernet reçues OK

C02

C03

40020

2

C00

C01

Trames Ethernet transmises OK

C02

C03

40022

1

Octet de poids fort

Octet de poids faible

Nombre de connexions client ouvertes

40023

1

Octet de poids fort

Octet de poids faible

Nombre de connexions serveur ouvertes

40024

2

C00

C01

Nombre de messages d'erreur détectée Modbus envoyés

C02

C03

40026

2

C00

C01

Nombre de messages Modbus envoyés

C02

C03

40028

2

C00

C01

Nombre de messages Modbus reçus

C02

C03

40030

8

Car. 1

Car. 2

Nom d'équipement

Car. 3

Car. 4

Car. 5

Car. 6

Car. 7

Car. 8

Car. 9

Car. 10

Car. 11

Car. 12

Car. 13

Car. 14

Car. 15

Car. 16

40038

2

Octet de poids fort 00

Octet 01

Mode d'affectation d'adresse IP - fonction/fonctionnement

Octet 02

Octet de poids faible 03

Exemple : Lecture des diagnostics réseau de base avec le code fonction 3 Modbus

Prenons un exemple pour expliquer comment lire les registres 40018 et 40019, qui permettent de comptabiliser le nombre de trames Ethernet reçues OK. La requête comporte 7 octets. Voici la formule de calcul de l'adresse de début, représentée au format hexadécimal dans l'octet 2 ci-dessous :

40018 - 40001 = 17 déc = (11 hex)

Le nombre de registres à diagnostiquer (2 hexadécimal) figure dans l'octet 4 :

Numéro d'octet

Valeur

0

Code fonction = 03 (hex)

1

Adresse de début (poids fort) = 00 (hex)

2

Adresse de début (poids faible) = 11 (hex)

3

Nombre de registres (poids fort) = 00 (hex)

4

Nombre de registres (poids faible) = 2 (hex)

5

Octet de poids fort CRC (inséré par l'application émettrice Modbus)

6

Octet de poids faible CRC (inséré par l'application émettrice Modbus)

La réponse normale est renvoyée dans 8 octets. Dans cet exemple, la réponse attendue est 14229 hexadécimal. Cette valeur figure dans les octets 2 à 5 de la réponse :

Numéro d'octet

Valeur

0

Code fonction = 03 (hex)

1

Nombre d'octets = 4 (hex)

2

Données 1er registre, octet de poids fort = 00 (hexadécimal)

3

Données 1er registre, octet de poids faible = 01 (hexadécimal)

4

Données 2e registre, octet de poids fort = 42 (hexadécimal)

5

Données 2e registre, octet de poids faible = 29 (hexadécimal)

6

Octet de poids fort CRC

7

Octet de poids faible CRC

Numéro d'octet

Valeur

0

Code fonction d'origine + 80 hex (= 83 hex)

1

Code de l'erreur détectée

2

Octet de poids fort CRC

3

Octet de poids faible CRC

Pour plus d'informations sur le code fonction 3 Modbus et sur les autres codes fonction, reportez-vous au Guide de référence du protocole Modicon Modbus (PI-MBUS-300).

Code fonction 3 Modbus : Données de diagnostic du port interne Ethernet

Les informations de diagnostic du port interne sont disponibles à partir de l'adresse 40040 (décimal), comme décrit dans le tableau suivant.

Adresse de début (décimal)

Longueur (mots)

Ordre des octets dans le registre

Commentaires

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40040

1

Octet de poids fort

Octet de poids faible

Validité des données de diagnostic du port interne

40041

1

Octet de poids fort

Octet de poids faible

Numéro logique/physique du port interne

40042

1

Octet de poids fort

Octet de poids faible

Commande Ethernet du port interne - Fonction

40043

1

Octet de poids fort

Octet de poids faible

Vitesse de liaison du port interne - Fonction

40044

1

Octet de poids fort

Octet de poids faible

Commande Ethernet du port interne - Configuration

40045

1

Octet de poids fort

Octet de poids faible

Vitesse de liaison du port interne - Configuration

40046

1

Octet de poids fort

Octet de poids faible

Commande Ethernet du port interne - Fonctionnement

40047

1

Octet de poids fort

Octet de poids faible

Vitesse de liaison du port interne - Fonctionnement

40048

3

MAC 1

MAC 2

Adresse MAC (MAC1:MAC2:MAC3:MAC4:MAC5:MAC6)

MAC 3

MAC 4

MAC 5

MAC 6

40051

2

MSB C00

C01

Validité des données des compteurs de supports du port interne

C02

LSB C03

40053

2

MSB C00

C01

Nombre de trames transmises OK sur le port interne

C02

LSB C03

40055

2

MSB C00

C01

Nombre de trames reçues OK sur le port interne

C02

LSB C03

40057

2

MSB C00

C01

Nombre de collisions Ethernet sur le port interne

C02

LSB C03

40059

2

MSB C00

C01

Erreurs de détection de porteuse détectées sur le port interne

C02

LSB C03

40061

2

MSB C00

C01

Nombre de collisions Ethernet excessives sur le port interne

C02

LSB C03

40063

2

MSB C00

C01

Erreurs CRC détectées sur le port interne

C02

LSB C03

40065

2

MSB C00

C01

Erreurs FCS détectées sur le port interne

C02

LSB C03

40067

2

MSB C00

C01

Erreurs d'alignement détectées sur le port interne

C02

LSB C03

40069

2

MSB C00

C01

Nombre d'erreurs de transmission MAC interne détectées sur le port interne

C02

LSB C03

40071

2

MSB C00

C01

Collisions tardives sur le port interne

C02

LSB C03

40073

2

MSB C00

C01

Nombre d'erreurs de réception MAC interne détectées sur le port interne

C02

LSB C03

40075

2

MSB C00

C01

Collisions multiples sur le port interne

C02

LSB C03

40077

2

MSB C00

C01

Collisions simples sur le port interne

C02

LSB C03

40079

2

MSB C00

C01

Transmissions différées sur le port interne

C02

LSB C03

40081

2

MSB C00

C01

Trames trop longues sur le port interne

C02

LSB C03

40083

2

MSB C00

C01

Trames trop courtes sur le port interne

C02

LSB C03

40085

2

MSB C00

C01

Erreur de test SQE détectée sur le port interne

C02

LSB C03

40087

1

Octet de poids fort

Octet de poids faible

Longueur de l'étiquette d'interface sur le port interne

40088

32

Car. 64 EI

Car. 63 EI

Caractères de l'étiquette d'interface sur le port interne

40089

Car. 62 EI

Car. 61 EI

...

...

...

40118

Car. 04 EI

Car. 03 EI

40119

Car. 02 EI

Car. 01 EI

40120

1

Octet de poids fort

Octet de poids faible

Validité du diagnostic des comptes d'interface sur le port interne

40121

2

MSB C00

C01

Nombre d'octets reçus sur le port interne

C02

LSB C03

40123

2

MSB C00

C01

Nombre de paquets de diffusion individuelle reçus sur le port interne

C02

LSB C03

40125

2

MSB C00

C01

Nombre de paquets de diffusion non individuelle reçus sur le port interne

C02

LSB C03

40127

2

MSB C00

C01

Nombre de paquets entrants ignorés sur le port interne

C02

LSB C03

40129

2

MSB C00

C01

Nombre de paquets entrants contenant des erreurs sur le port interne

 

C02

LSB C03

401331

2

MSB C00

C01

Nombre de paquets entrants inconnus sur le port interne

C02

LSB C03

40133

2

MSB C00

C01

Nombre d'octets envoyés sur le port interne

C02

LSB C03

40135

2

MSB C00

C01

Nombre de paquets de diffusion individuelle envoyés sur le port interne

C02

LSB C03

40137

2

MSB C00

C01

Nombre de paquets de diffusion non individuelle envoyés sur le port interne

C02

LSB C03

40139

2

MSB C00

C01

Nombre de paquets sortants ignorés sur le port interne

C02

LSB C03

40141

2

MSB C00

C01

Nombre de paquets sortants contenant des erreurs sur le port interne

C02

LSB C03

Code fonction 3 Modbus : Données de diagnostic du port Ethernet 1

Les données de diagnostic du port 1 sont disponibles à partir de l'adresse 40143 (décimal). Comme indiqué dans le tableau suivant, les données de diagnostic du port 1 correspondent aux mêmes champs que ceux du port interne. L'adresse de début est simplement décalée.

Adresse de début

Longueur

Ordre des octets dans le registre

Commentaires

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40143

1

Octet de poids fort

Octet de poids faible

Validité des données de diagnostic du port 1

...

...

...

...

...

40244

2

MSB C00

C01

Nombre de paquets sortants contenant des erreurs sur le port 1

C02

LSB C02

Code fonction 3 Modbus : Données de diagnostic du port d'embase Ethernet

Les données de diagnostic du port d'embase sont disponibles à partir de l'adresse 40246 (décimal). Comme indiqué dans le tableau suivant, les champs des données de diagnostic sont les mêmes que ceux du port interne et du port 1. L'adresse de début est simplement décalée.

Adresse de début

Longueur

Ordre des octets dans le registre

Commentaires

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40246

1

Octet de poids fort

Octet de poids faible

Validité des données de diagnostic du port d'embase

...

...

...

...

...

40347

2

MSB C00

C01

Nombre de paquets sortants contenant des erreurs de port d'embase

C02

LSB C02

Code fonction 3 Modbus : Données de diagnostic du port Ethernet 3

Les données de diagnostic du port 3 sont disponibles à partir de l'adresse 40349 (décimal). Comme indiqué dans le tableau suivant, les données de diagnostic du port 3 correspondent aux mêmes champs que ceux du port interne, du port 1 et du port 2. L'adresse de début est simplement décalée.

Adresse de début

Longueur

Ordre des octets dans le registre

Commentaires

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40349

1

Octet de poids fort

Octet de poids faible

Validité des données de diagnostic du port 3

...

...

...

...

...

40450

2

MSB C00

C01

Nombre de paquets sortants contenant des erreurs sur le port 3

C02

LSB C03

Code fonction 3 Modbus : Données de diagnostic du port Ethernet 4

Les données de diagnostic du port 4 sont disponibles à partir de l'adresse 40452 (décimal). Comme indiqué dans le tableau suivant, les données de diagnostic du port 4 correspondent aux mêmes champs que ceux du port interne et des ports 1 à 3. L'adresse de début est simplement décalée.

Adresse de début

Longueur

Ordre des octets dans le registre

Commentaires

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40452

1

Octet de poids fort

Octet de poids faible

Validité des données de diagnostic du port 4

...

...

...

...

...

40553

2

MSB C00

C01

Nombre de paquets sortants contenant des erreurs sur le port 4

C02

LSB C03

Port Ethernet absent

Si l'équipement ne contient pas de port Ethernet physique, les registres Modbus associés renvoient données = 0.

Code fonction 3 Modbus : Données de diagnostic du port Modbus TCP 502

Les informations de diagnostic du port 502 Modbus TCP sont disponibles à partir de l'adresse 40555 (décimal), comme décrit dans le tableau suivant.

Adresse de début

Longueur

Ordre des octets dans le registre

Commentaires

 

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40555

2

Octet de poids fort 00

Octet 01

Validité des données de diagnostic du port 502 Modbus TCP

 

Octet 02

Octet de poids faible 03

40557

1

Octet de poids fort

Octet de poids faible

Etat du port 502

40558

1

Octet de poids fort

Octet de poids faible

Nombre de connexions ouvertes

40559

2

MSB C00

C01

Nombre de messages MB envoyés

C02

LSB C03

40561

2

MSB C00

C01

Nombre de messages MB reçus

C02

LSB C03

40563

1

Octet de poids fort

Octet de poids faible

Nombre de connexions client ouvertes MB

40564

1

Octet de poids fort

Octet de poids faible

Nombre de connexions serveur ouvertes MB

40565

1

Octet de poids fort

Octet de poids faible

Nombre maximum de connexions

40566

1

Octet de poids fort

Octet de poids faible

Nombre maximum de connexions client

40567

1

Octet de poids fort

Octet de poids faible

Nombre maximum de connexions serveur

40568

2

MSB C00

C01

Nombre de messages d'erreur détectée MB envoyés

C02

LSB C03

40570

1

Octet de poids fort

Octet de poids faible

Nombre de connexions prioritaires ouvertes

40571

1

Octet de poids fort

Octet de poids faible

Nombre maximum de connexions prioritaires

40572

1

Octet de poids fort

Octet de poids faible

Nombre d'entrées dans la table des connexions non autorisées

40573

2

MSB - IP1

IP2

Adresse IP distante 1

Connexion 1

IP3

LSB - IP4

40575

1

Octet de poids fort

Octet de poids faible

Nombre de tentatives d'ouverture d'une connexion non autorisée 1

40576

2

MSB - IP1

IP2

Adresse IP distante 2

Connexion 2

IP3

LSB - IP4

40578

2

Octet de poids fort

Octet de poids faible

Nombre de tentatives d'ouverture d'une connexion non autorisée 2

...

...

...

...

...

 

40663

2

MSB - IP1

IP2

Adresse IP distante 31

Connexion 31

IP3

LSB - IP4

40665

1

Octet de poids fort

Octet de poids faible

Nombre de tentatives d'ouverture d'une connexion non autorisée 31

40666

2

MSB - IP1

IP2

Adresse IP distante 32

Connexion 32

IP3

LSB - IP4

40668

1

Octet de poids fort

Octet de poids faible

Nombre de tentatives d'ouverture d'une connexion non autorisée 32

Code fonction 3 Modbus : Données de table de connexion du port Modbus TCP 502

Les données de la table de connexion du port 502 Modbus TCP sont disponibles à partir de l'adresse 40669 (décimal), comme décrit dans le tableau suivant.

Adresse de début

Longueur

Ordre des octets dans le registre

Commentaires

 

OCTET DE POIDS FORT

OCTET DE POIDS FAIBLE

40669

1

Octet de poids fort

Octet de poids faible

Validité de la table de connexion

 

40670

1

Octet de poids fort

Octet de poids faible

Nombre d'entrées

40671

1

Octet de poids fort

Octet de poids faible

Index d'entrée de début

40672

1

Octet de poids fort

Octet de poids faible

Index de connexion 1

Connexion 1

40673

2

IP1

IP2

Adresse IP distante de la connexion 1

IP3

IP4

40675

1

Octet de poids fort

Octet de poids faible

Numéro de port distant de la connexion 1

40676

1

Octet de poids fort

Octet de poids faible

Numéro de port local de la connexion 1

40677

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB envoyés via la connexion 1

40678

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB reçus via la connexion 1

40679

1

Octet de poids fort

Octet de poids faible

Nombre de messages d'erreur détectée MB envoyés via la connexion 1

40680

1

Octet de poids fort

Octet de poids faible

Index de connexion 2

Connexion 2

40681

2

IP1

IP2

Adresse IP distante de la connexion 2

IP3

IP4

40683

1

Octet de poids fort

Octet de poids faible

Numéro de port distant de la connexion 2

40684

1

Octet de poids fort

Octet de poids faible

Numéro de port local de la connexion 2

40685

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB envoyés via la connexion 2

40686

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB reçus via la connexion 2

40687

1

Octet de poids fort

Octet de poids faible

Nombre de messages d'erreur détectée MB envoyés via la connexion 2

...

...

...

...

...

 

41168

1

Octet de poids fort

Octet de poids faible

Index de connexion 63

Connexion 63*

41169

2

IP1

IP2

Adresse IP distante de la connexion 63

IP3

IP4

41171

1

Octet de poids fort

Octet de poids faible

Numéro de port distant de la connexion 63

41172

1

Octet de poids fort

Octet de poids faible

Numéro de port local de la connexion 63

41173

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB envoyés via la connexion 63

41174

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB reçus via la connexion 63

41175

1

Octet de poids fort

Octet de poids faible

Nombre de messages d'erreur détectée MB envoyés via la connexion 63

41176

1

Octet de poids fort

Octet de poids faible

Index de connexion 64

Connexion 64*

41177

2

IP1

IP2

Adresse IP distante de la connexion 64

IP3

IP4

415179

1

Octet de poids fort

Octet de poids faible

Numéro de port distant de la connexion 64

41180

1

Octet de poids fort

Octet de poids faible

Numéro de port local de la connexion 64

41181

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB envoyés via la connexion 64

41182

1

Octet de poids fort

Octet de poids faible

Nombre de messages MB reçus via la connexion 64

41183

1

Octet de poids fort

Octet de poids faible

Nombre de messages d'erreur détectée MB envoyés via la connexion 64

* Les modules adaptateurs RIO 140 CRA 312 10 et BMX CRA 312 •0 peuvent prendre en charge jusqu'à 8 connexions.