Procesador de comunicaciones y Modbus TCP
13.5 Comunicación Modbus
Ejemplos de definición de áreas de datos:
• Primer ejemplo: data_type = 3, db = 1, start = 10, length = 6
La CPU mapea los registros de retención (data_type = 3) en el bloque de datos 1 (db = 1) y
coloca la dirección Modbus 10 (start = 10) en la palabra de datos 0 y la última dirección
Modbus válida 15 (length = 6) en la palabra de datos 5.
• Segundo ejemplo: data_type = 2, db = 15, start = 1700, length = 112
La CPU mapea las entradas (data_type = 2) en el bloque de datos 15 (db = 15) y coloca la
dirección Modbus 1700 (start = 1700) en la palabra de datos 0 y la última dirección Modbus
válida 1811 (length = 112) en la palabra de datos 111.
Códigos de condición
Tabla 13-71
Códigos de condición de ejecución de MB_SERVER
STATUS
Código de res‐
(W#16#)
puesta al servi‐
dor Modbus
(B#16#)
7001
7002
7003
8187
818C
8381
01
8382
03
8383
02
8384
03
1038
Errores de protocolo Modbus
MB_SERVER está esperando a que un cliente Modbus se conecte al puerto TCP asignado. Se
devuelve este código en la primera ejecución de una operación de conexión o de descone‐
xión.
MB_SERVER está esperando a que un cliente Modbus se conecte al puerto TCP asignado. Se
devolverá este código en las ejecuciones sucesivas, mientras se espera la finalización de una
operación de conexión o de desconexión.
Una operación de desconexión ha finalizado correctamente (válido solo para un ciclo del PLC).
MB_HOLD_REG no es válido, podría apuntar a un DB optimizado o está apuntando a un área
de menos de 2 bytes.
Puntero MB_HOLD_REG a un área de DB no optimizada (debe ser un área de memoria M o DB
global no optimizada) o el temporizador de procesos bloqueados supera el límite de 55
segundos. (específico de S7-1200)
Código de función no soportado
Error en la longitud de datos:
•
Especificación de longitud no válida en la trama Modbus recibida.
•
La longitud de trama introducida en el encabezado de la trama Modbus no concuerda con
el número de bytes recibidos realmente.
•
El número de bytes introducido en el encabezado de la trama Modbus no concuerda con
el número de bytes recibidos realmente (funciones 15 y 16).
Error en la dirección de los datos o acceso fuera de los límites del área de direcciones de
MB_HOLD_REG
Error de valor de datos
1
Manual de sistema, V4.5 05/2021, A5E02486683-AO
Controlador programable S7-1200