PROTOCOLO DE COMUNICACIONES DEL REGULADOR SRF1.5
El protocolo empleado es MODBUS modo RTU con las siguientes características:
RS-485 (2 wire). Número máximo de elementos en el bus: 32
Velocidad de comunicación: 9600 baudios.
Formato de datos:
8 bits.
Sin paridad.
1 bit de stop.
Registros de 16 bits (2 bytes).
Formato de variables: High Word First [H/L].
CRC según polinomio x
Nota: Es recomendable realizar reintentos en las comunicaciones. Timeout: 1seg.
Nota: Mínimo tiempo Wait To Send recomendado: 100ms.
LECTURA DE REGISTROS
Para la lectura de registros es posible utilizar los códigos de comando 3 ó 4 con la siguiente estructura
de mensaje:
Nº esclavo (1 byte) – Código (03 ó 04) (1 byte) – Dirección del 1
bytes) – Nº de registros a leer (00-YY) (2 bytes) – CRC16 (2 bytes)
Nº máximo de registros a leer en el mismo mensaje = 62
La contestación del regulador tiene la siguiente estructura de mensaje:
Nº esclavo (1 byte) – Código (03 ó 04) (1 byte) – Nº de bytes de datos (XX) (1 byte) – Datos
(AA-BB-CC-DD...) (2 bytes para cada registro) – CRC16 (2 bytes)
Nº de bytes de datos = 2 * Nº de registros a leer
ESCRITURA DE REGISTROS
Para la escritura de registros se utiliza el código de comando 6 con la siguiente estructura de mensaje:
Nº esclavo (1 byte) – Código (06) (1 byte) – Dirección del registro a escribir (00-XX) (2 bytes)
– Dato a escribir en el registro (AA-BB) (2 bytes) – CRC16 (2 bytes)
La contestación del regulador tiene la siguiente estructura de mensaje:
Nº esclavo (1 byte) – Código (06) (1 byte) – Dirección del registro escrito (00-XX) (2 bytes) –
Dato escrito en el registro (AA-BB) (2 bytes) – CRC16 (2 bytes)
ERRORES
Si se utiliza un código diferente al de lectura o escritura indicado, la respuesta que se recibe es:
Nº esclavo – Código OR 80Hex – Código de error (1) – CRC16 (2 bytes)
Si se intenta acceder en lectura o escritura a un registro con una dirección inexistente, la respuesta que
se recibe es:
Nº esclavo – Código OR 80Hex – Código de error (2) – CRC16 (2 bytes)
Si se intenta escribir en un registro de sólo lectura o se intenta escribir un valor ilegal en un registro, la
respuesta que se recibe es:
Nº esclavo – Código OR 80Hex – Código de error (3) – CRC16 (2 bytes)
COMUNICACIONES MODBUS REGULADOR SRF1.5
Aplicación: SUELO RADIANTE Y FAN-COIL / Cliente: ________________
(1 maestro + 31 esclavos)
16
15
2
+ x
+ x
+ 1.
(del registro 0 al registro 61)
.
er
registro a leer (00-XX) (2
Página 1