Códigos de excepciones Modbus TCP/IP y Modbus-SL
Respuestas de excepción
Las respuestas de excepción emitidas por el cliente o un servidor pueden ser el resultado de errores de procesamiento de datos. Uno de los siguientes eventos puede producirse tras una solicitud del cliente:
-
Si el servidor recibe la solicitud del cliente sin error de comunicación y gestiona correctamente dicha solicitud, devolverá una respuesta normal.
-
Si el servidor no recibe la solicitud del cliente debido a un error de comunicación, no devolverá una respuesta. Finalmente, el programa cliente aplica una condición de retardo a la solicitud.
-
Si el servidor recibe la solicitud del cliente, pero detecta un error de comunicación, no devolverá una respuesta. Finalmente, el programa cliente aplica una condición de retardo a la solicitud.
-
Si el servidor recibe la solicitud del cliente sin un error de comunicación, pero no puede atender dicha solicitud (por ejemplo, la solicitud consiste en leer un registro que no existe), el servidor devolverá una respuesta de excepción para informar al cliente de la naturaleza del error.
Trama de excepción
El servidor envía una trama de excepción al cliente para indicar una respuesta de excepción. Una respuesta de excepción está formada por cuatro campos:
Campo |
Definición |
Tamaño |
---|---|---|
1 |
Número de servidor |
1 byte |
2 |
Código de función de excepción |
1 byte |
3 |
Código de excepción |
n bytes |
4 |
Comprobación |
2 bytes |
Gestión de excepciones de Modbus
La trama de respuesta de excepción está formada por dos campos que la distinguen de una trama de respuesta normal:
-
El código de función de excepción es el mismo que el código de función de la solicitud original más 128 (0x80).
-
El código de excepción depende del error de comunicación detectado por el servidor.
En la siguiente tabla se describen los códigos de excepciones gestionados por los dispositivos inalámbricos de EcoStruxure Panel Server:
Código de excepción |
Nombre |
Descripción |
---|---|---|
01 |
Función no válida |
El código de función recibido en la solicitud no es una acción autorizada para el servidor. Es posible que el servidor se encuentre en un estado inadecuado para procesar una solicitud específica. |
02 |
Dirección de datos no válida |
La dirección de datos recibida por el servidor no es una dirección autorizada para el servidor. |
03 |
Valor de datos no válido |
El valor del campo de datos de la solicitud no es un valor autorizado para el servidor. |
04 |
Error de dispositivo servidor |
El servidor no puede realizar una acción necesaria debido a un error irreparable. |
06 |
Dispositivo servidor ocupado |
El servidor está ocupado procesando otro comando. El cliente debe enviar la solicitud cuando el servidor esté libre. |
Acceso a variables
Una variable Modbus puede tener los siguientes atributos:
-
Solo lectura
-
Lectura/escritura
-
Solo escritura