Compatibilidad con excepciones de Modbus esclavo
Cuando el controlador AADvance funciona como Modbus esclavo, puede generar los
siguientes códigos de excepción:
Código 01: Illegal Function (Función no válida)
El código de función recibido en la consulta no es una acción permitida para el esclavo.
Si se emitió un comando Poll Program Complete (Programa de sondeo completo),
este código indica que ninguna función de programa lo precedía.
El Código 01 representa una función que el controlador AADvance no reconoce o no
admite.
Código 02: Illegal Data Address (Dirección de datos no válida)
La dirección de datos recibida en la consulta no es una dirección permitida para el
esclavo.
El controlador AADvance genera el código 02 cuando una solicitud especifica una
dirección que se encuentra fuera del rango de 0 a 65.535 de 16 bits. La excepción se
produce si la solicitud especifica la dirección implícitamente ("dame los 20 registros de
la dirección 65.530") o explícitamente ("dame el registro en la dirección 65.536").
Código 03: Illegal Data Value (Valor de datos no válido)
Un valor contenido en el campo de datos de consulta no es un valor permitido para el
esclavo.
El controlador AADvance puede generar el código 03 únicamente en escrituras
booleanas (de bobina).
Código 04: Slave Device Failure (Fallo de dispositivo esclavo)
Se ha producido un error irrecuperable mientras el esclavo intentaba realizar una
acción solicitada.
El código 04 representa un error interno en el controlador AADvance.
Código 06: Slave Device Busy (Dispositivo esclavo ocupado)
El esclavo está procesando un comando de programa de larga duración. El maestro
debería retransmitir el mensaje más tarde cuando el esclavo esté libre.
El controlador AADvance puede estar "ocupado" y, por lo tanto, generar el código
06 mientras espera que se descargue o se inicie la aplicación. El controlador puede
informar que está ocupado durante un máximo de 30 segundos; después de este
período, el controlador dejará de responder.
Publicación 1.2: July 2011
4-11