M241 Logic Controller como dispositivo esclavo en Modbus TCP
En esta sección se describe la configuración de M241 Logic Controller como dispositivo Modbus TCP esclavo.
Para configurar M241 Logic Controller como dispositivo Modbus TCP esclavo, debe añadir la funcionalidad Dispositivo Modbus TCP esclavo al controlador (véase Adición de un dispositivo Modbus TCP esclavo). Esta funcionalidad crea un área de E/S específica en el controlador que es accesible a través del protocolo Modbus TCP. Esta área de E/S se usa cada vez que un maestro externo tiene que acceder a los objetos %IW y %QW del controlador. La funcionalidad Dispositivo Modbus TCP esclavo permite proporcionar a esta área los objetos de E/S del controlador a los que se puede acceder con una solicitud de registro Modbus de lectura/escritura.
El dispositivo Modbus TCP esclavo añade otra función de servidor Modbus al controlador. Es posible direccionar este servidor con una aplicación de cliente Modbus especificando un ID de unidad configurado (dirección Modbus) de 1 a 247. El servidor Modbus integrado del controlador esclavo no necesita configuración y se direcciona con un ID de unidad igual a 255. Consulte Configuración de Modbus TCP.
Las entradas/salidas se ven desde el controlador esclavo: las entradas se escriben mediante el maestro y las salidas se leen mediante el maestro.
El dispositivo Modbus TCP esclavo puede definir una aplicación de cliente Modbus con privilegios, cuya conexión no se cierra a la fuerza (las conexiones Modbus integradas se pueden cerrar cuando se requieren más de 8 conexiones).
La duración del timeout asociada a la conexión con privilegios le permite verificar si el maestro con privilegios sondea el controlador. Si no se recibe ninguna solicitud Modbus dentro de la duración del timeout, la información de diagnóstico i_byMasterIpLost se establece en 1 (TRUE). Para obtener más información, consulte Variables de sistema de solo lectura del puerto Ethernet.
Para obtener más información sobre Modbus TCP, consulte el sitio web www.modbus.org.
Adición de un dispositivo esclavo Modbus TCP
|
Paso |
Acción |
|---|---|
|
1 |
Añadir un módulo de ampliación TM4ES4 a la configuración. Para ello, debe haber añadido Industrial_Ethernet_manager al controlador lógico. |
|
2 |
Seleccione Dispositivo Modbus TCP esclavo en el Catálogo de hardware. |
|
3 |
Arrástrelo y colóquelo en Dispositivos en uno de los nodos resaltados. Para obtener más información sobre cómo añadir un dispositivo al proyecto, consulte: • Uso del método de arrastrar y colocar • Uso del menú contextual o el botón Más |
Para configurar Dispositivo Modbus TCP esclavo, haga doble clic en Ethernet_1 > ModbusTCP_Slave_Device_ en Dispositivos.
Aparece el siguiente cuadro de diálogo:
|
Elemento |
Descripción |
|---|---|
|
Dirección maestra IP |
Dirección IP del maestro Modbus Las conexiones no están cerradas en esta dirección. |
|
TimeOut |
Timeout en incrementos de 500 ms NOTA: Se aplica el timeout a la dirección maestra IP a menos que la dirección sea 0.0.0.0. |
|
Puerto esclavo |
Puerto de comunicación Modbus (502) |
|
ID de unidad |
Envía las solicitudes al dispositivo Dispositivo Modbus TCP esclavo (de 1 a 247), en lugar de enviarlas al servidor Modbus integrado (255). |
|
Registros de mantenimiento (%IW) |
Número de registros %IW que se deben usar en el intercambio (de 2 a 40) (2 bytes para cada registro) |
|
Registros de entrada (%QW) |
Número de registros %QW que se deben usar en el intercambio (de 2 a 40) (2 bytes para cada registro) |
Ficha Asignación de E/S de dispositivo Modbus TCP esclavo
Las E/S se asignan a registros Modbus desde el punto de vista del maestro de la siguiente manera:
oLos %IW se asignan desde el registro 0 al n-1 y son L/E (n = cantidad de registros de mantenimiento, 2 bytes para cada registro %IW).
oLos %QW se asignan desde el registro n al n+m - 1 y son de solo lectura (m = cantidad de registros de entrada, 2 bytes para cada registro %QW).
Una vez que se ha configurado un dispositivo Modbus TCP esclavo, los comandos Modbus enviados a su ID de unidad (dirección Modbus) se gestionan de manera diferente a como lo haría el mismo comando cuando se dirigen a cualquier otro dispositivo Modbus de la red. Por ejemplo, cuando el comando Modbus 3 (3 hex) se envía a un dispositivo Modbus estándar, lee y devuelve el valor de uno o más registros. Cuando este mismo comando se envía al Modbus TCP esclavo, facilita una operación de lectura por parte del explorador de E/S.
Una vez que se ha configurado un dispositivo Modbus TCP esclavo, los comandos Modbus enviados a su ID de unidad (dirección Modbus) acceden a los objetos %IW y %QW del controlador, en lugar de a las palabras Modbus normales (a las que se accede cuando el ID de unidad es 255). De este modo se facilitan las operaciones de lectura/escritura mediante una aplicación Modbus TCP IOScanner.
El dispositivo Modbus TCP esclavo responde a un subconjunto de los comandos Modbus normales con el objetivo de intercambiar datos con el explorador de E/S externo. Se admiten los siguientes comandos Modbus con el dispositivo Modbus TCP esclavo:
|
Decimal de código de función (Hex) |
Función |
Comentario |
|---|---|---|
|
3 (3) |
Leer registro de mantenimiento |
Permite que el maestro lea los objetos %IW y %QW del dispositivo |
|
6 (6) |
Escribir registro único |
Permite que el maestro escriba los objetos %IW del dispositivo |
|
16 (10) |
Escribir varios registros |
Permite que el maestro escriba los objetos %IW del dispositivo |
|
23 (17) |
Leer/escribir varios registros |
Permite que el maestro lea los objetos %IW y %QW del dispositivo y escriba los objetos %IW del dispositivo |
|
Otros |
No admitido |
– |
NOTA: Modbus solicita que el intento para acceder a los registros superiores a n+m- 1 se responda mediante el código de excepción 02 - DIRECCIÓN DE DATOS NO VÁLIDA.
Para enlazar la E/S con variables, seleccione la ficha Asignación de E/S de dispositivo Modbus TCP esclavo:
|
Canal |
Tipo |
Descripción |
|
|---|---|---|---|
|
Entrada |
IW0 |
WORD |
Registro de mantenimiento 0 |
|
... |
... |
... |
|
|
IWx |
WORD |
Registro de mantenimiento x |
|
|
Salida |
QW0 |
WORD |
Registro de entrada 0 |
|
... |
... |
... |
|
|
QWy |
WORD |
Registro de entrada y |
|
El número de palabras depende de los parámetros Registros de mantenimiento (%IW) y Registros de entrada (%QW) de la ficha Modbus TCP.
NOTA: Salida significa SALIDA del controlador de origen (%IW para el controlador). Entrada significa ENTRADA del controlador de origen (%QW para el controlador).
NOTA: El Dispositivo Modbus TCP esclavo actualiza los registros %IW y %QW como una unidad coherente en el tiempo una vez, sincronizada con las tareas IEC (tarea MAST de forma predeterminada). En cambio, el servidor Modbus TCP integrado solo garantiza la coherencia en el tiempo para una palabra (2 bytes). Si la aplicación necesita coherencia en el tiempo para más de una palabra (2 bytes), use el dispositivo Modbus TCP esclavo.
Seleccione la tarea de ciclo de bus que va a usar:
oEmplear configuración de ciclo del bus de orden superior (tarea predeterminada)
oMAST
Existe un parámetro de tarea de ciclo de bus correspondiente en el editor de asignación de E/S del dispositivo que contiene el Dispositivo Modbus TCP esclavo. Este parámetro define la tarea responsable de actualizar los registros %IW y %QW.