Códigos de excepción Modbus
Respuestas de excepción
Las respuestas de excepción del maestro (cliente) o de un esclavo (servidor) pueden ser el resultado de errores de proceso de datos. Tras una solicitud del maestro (cliente) se puede producir uno de los siguientes eventos:
-
Si el esclavo (servidor) recibe la solicitud del maestro (cliente) sin error de comunicación y puede gestionar la consulta correctamente, devuelve una respuesta normal.
-
Si el esclavo (servidor) no recibe la solicitud del maestro (cliente) debido a un error de comunicación, no devuelve una respuesta. El programa del maestro procesa finalmente una condición de tiempo sobrepasado para la solicitud.
-
Si el esclavo (servidor) recibe la solicitud del maestro (cliente), pero detecta un error de comunicación, no devuelve una respuesta. El programa del maestro procesa finalmente una condición de tiempo sobrepasado para la solicitud.
-
Si el esclavo (servidor) recibe la solicitud del maestro (cliente) sin un error de comunicación, pero no puede gestionarla (por ejemplo, la solicitud es leer un registro que no existe), el esclavo devuelve una respuesta de excepción para informar al maestro de la naturaleza del error.
Trama de excepción
El esclavo envía una trama de excepción al maestro para informar de una respuesta de excepción. Una trama de excepción se compone de 4 campos:
Campo |
Definición |
Tamaño |
Descripción |
---|---|---|---|
1 |
Número de esclavo |
1 byte |
Destino de la solicitud
|
2 |
Código de función de excepción |
1 byte |
Código de función de solicitud + 128 (0x80) |
3 |
Código de excepción |
n bytes |
Consulte el párrafo siguiente |
4 |
Comprobación |
2 bytes |
CRC16 (para comprobar errores de transmisión) |
Códigos de excepción
La trama de respuesta de excepción tiene dos campos que la diferencian de una trama de respuesta normal:
-
El código de función de excepción de la respuesta de excepción es igual al 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 que encuentre el esclavo.
En la tabla siguiente se describen los códigos de excepción gestionados por el interruptor automático:
Código de excepción |
Nombre |
Descripción |
---|---|---|
01 (0x01) |
Función ilegal |
El código de función recibido en la solicitud no es una acción autorizada para el esclavo. El estado del esclavo puede ser erróneo para procesar una solicitud específica. |
02 (0x02) |
Dirección de datos ilegal |
La dirección de datos recibida por el esclavo no es una dirección autorizada para el esclavo. |
03 (0x03) |
Valor de datos ilegal |
El valor existente en el campo de datos de solicitud no es un valor autorizado para el esclavo. |
04 (0x04) |
Fallo del dispositivo esclavo |
El esclavo no logra realizar una acción solicitada debido a un error irrecuperable. |
05 (0x05) |
Acuse de recibo |
El esclavo acepta la solicitud, pero necesita mucho tiempo para procesarla. |
06 (0x06) |
Dispositivo esclavo ocupado |
El esclavo está ocupado procesando otro comando. El maestro debe enviar la solicitud una vez que el esclavo esté disponible. |
07 (0x07) |
Acuse negativo |
El esclavo no puede cumplir la solicitud de programación enviada por el maestro. |
08 (0x08) |
Error de paridad en la memoria |
El esclavo detecta un error de paridad en la memoria al intentar leer la memoria ampliada. |
10 (0x0A) |
Ruta a la puerta de enlace no disponible |
La puerta de enlace está sobrecargada o no está configurada correctamente. |
11 (0x0B) |
El dispositivo de puerta de enlace deseado no responde |
El esclavo no está presente en la red. |
Dirección de datos no válida
En esta guía se describen los registros disponibles para cada módulo IMU con la última revisión del firmware. Si un registro descrito en la guía no se ha implementado en un módulo IMU que tiene una revisión del firmware antigua, se devuelve una respuesta de excepción con el código 02 (0x02), dirección de datos ilegal.
Puede actualizar el firmware de los módulos IMU utilizando el software EcoStruxure Power Commission.