Instalación y configuració...
8.8.4 Campo de dirección
El campo de dirección de un mensaje contiene 8 bits. Las
direcciones válidas de dispositivos auxiliares están en el
rango de 0 a 247 decimal. Los dispositivos auxiliares indivi-
duales tienen direcciones asignadas en un rango entre 1 y
247 (0 se reserva para el modo de transmisión, que
reconocen todos los auxiliares). Un maestro se dirige a un
auxiliar poniendo la dirección de este en el campo de
dirección del mensaje. Cuando el auxiliar envía su
respuesta, pone su propia dirección en dicho campo, para
que el maestro sepa qué auxiliar le está contestando.
8.8.5 Campo de función
El campo de función de un mensaje contiene 8 bits. Los
códigos válidos están en el rango de 1 a FF. Los campos
de función se utilizan para enviar mensajes entre el
maestro y el auxiliar. Cuando se envía un mensaje desde
un maestro a un dispositivo auxiliar, el campo de código
de función le indica al auxiliar la clase de acción que debe
realizar. Cuando el auxiliar responde al maestro, utiliza el
campo de código de función para indicar una respuesta
normal (sin error), o que se ha producido un error de
alguna clase (esta respuesta se denomina «excepción»).
Para dar una respuesta normal, el auxiliar simplemente
devuelve el código de función original. Para responder con
una excepción, el auxiliar devuelve un código equivalente
al de la función original, pero con su bit más significativo
cambiado a 1 lógico. Además, el auxiliar pone un código
único en el campo de datos del mensaje de respuesta.
Esto le indica al maestro el tipo de error ocurrido o la
razón de la excepción. Consulte también
capétulo 8.8.10 Códigos de función admitidos por Modbus
RTU y capétulo 8.8.11 Códigos de excepción Modbus
8.8.6 Campo de datos
El campo de datos se construye utilizando grupos de dos
dígitos hexadecimales, en el intervalo de 00 a FF en
hexadecimal. Están hechos con un carácter RTU. El campo
de datos de los mensajes enviados desde un maestro a un
dispositivo auxiliar contiene información más detallada que
el auxiliar debe utilizar para realizar la acción definida por
el código de función. Este puede incluir elementos tales
como direcciones de registro o bobinas, la cantidad de
elementos que se manejarán y el contador de los bytes de
datos reales del campo.
MG11BC05
Guía de Diseño de
8.8.7 Campo de comprobación CRC
Los mensajes incluyen un campo de comprobación de
errores, que se comporta en base al método de Compro-
bación de redundancia cíclica (CRC). El campo CRC
comprueba el contenido de todo el mensaje. Se aplica
independientemente del método de comprobación de
paridad utilizado para los caracteres individuales del
mensaje. El valor CRC lo calcula el dispositivo emisor, que
añade el CRC como último campo del mensaje. El
dispositivo receptor vuelve a calcular un CRC durante la
recepción del mensaje y compara el valor calculado con el
valor recibido en el campo CRC. Si los dos valores son
distintos, el resultado es un tiempo límite de bus. El campo
de comprobación de errores contiene un valor binario de
16 bits implementado como dos bytes de 8 bits. Cuando
esto se ha realizado, el byte de orden bajo del campo se
añade primero, seguido del byte de orden alto. El byte de
orden alto del CRC es el último byte que se envía en el
mensaje.
8.8.8 Direccionamiento de bobinas
En Modbus, todos los datos están organizados en bobinas
(señales binarias) y registros de retención (registros de
retención). Las bobinas almacenan un solo bit, mientras
que los registros de retención alojan una palabra de 2
bytes (es decir, 16 bits). Todas las direcciones de datos de
los mensajes Modbus están referenciadas a cero. La
primera aparición de un elemento de datos se gestiona
como elemento número cero. Por ejemplo: la bobina
conocida como «bobina 1» de un controlador programable
se direcciona como «bobina 0000» en el campo de
dirección de un mensaje Modbus. «Bobina 127» decimal se
direcciona como «bobina 007EHEX» (126 decimal).
El registro de retención 40001 se direcciona como registro
0000 en el campo de dirección del mensaje. El campo de
código de función ya especifica una operación de «registro
de retención». Por lo tanto, la referencia «4XXXX» es
implícita. El registro de retención 40108 se procesa como
un registro 006BHEX (107 decimal).
Danfoss A/S © Rev. 06/2014 Reservados todos los derechos.
8
8
155