DOCA0214FR-04

Codes d'exception Modbus

Réponses d'exception

Les réponses d'exception provenant du client ou d'un serveur peuvent être le résultat d'erreurs de traitement de données. Un des événements suivants peut se produire après l'émission d'une requête par le client :

  • Si le serveur reçoit la requête du client sans erreur de communication et peut la traiter correctement, il renvoie une réponse normale.

  • Si le serveur ne reçoit pas la requête provenant du client à cause d'une erreur de communication, il ne renvoie pas de réponse. Le programme client finit par appliquer une condition de temporisation à la requête.

  • Si le serveur reçoit la requête du client, mais détecte une erreur de communication, il ne renvoie pas de réponse. Le programme client finit par appliquer une condition de temporisation à la requête.

  • Si le serveur reçoit la requête du client sans erreur de communication mais ne peut pas la gérer (par exemple, la requête consiste à lire un registre qui n'existe pas), le serveur renvoie une réponse d'exception pour informer le client de la nature de l'erreur.

Trame d'exception

Le serveur envoie une trame d'exception au client pour signaler une réponse d'exception. Une trame d'exception se compose de 4 champs :

Champ

Définition

Taille

Description

1

Numéro du serveur

1 octet

Destination de la requête

  • 1 à 247 : destination unique

2

Code de fonction d'exception

1 octet

Code de fonction de requête + 128 (0x80)

3

Code d'exception

n octets

Voir paragraphe suivant

4

Contrôle

2 octets

CRC16 (pour vérifier les erreurs de transmission)

Codes d'exception

La trame de la réponse d'exception comprend deux champs qui la différencient d'une trame de réponse normale :

  • Le code de fonction de la réponse d'exception est égal au code de fonction de la requête originale plus 128 (0x80).

  • Le code d'exception dépend de l'erreur de communication rencontrée par le serveur.

Le tableau suivant décrit les codes d'exception gérés par l’ATSE :

Code d'exception

Nom

Description

01 (0x01)

Fonction illégale

Le code fonction reçu dans la requête ne correspond pas à une action autorisée pour le serveur. L'état du serveur est peut-être inapproprié pour traiter une requête spécifique.

02 (0x02)

Adresse de données illégale

L'adresse de données reçue par le serveur n'est pas une adresse autorisée pour le serveur.

03 (0x03)

Valeur de données illégale

La valeur indiquée dans le champ de données de la requête n'est pas autorisée pour le serveur.

04 (0x04)

Server device failure (Défaillance du serveur)

Le serveur ne parvient pas à réaliser une action demandée à cause d'une erreur irrémédiable.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Contenu utile ?