Gestor Modbus

Introducción

El gestor Modbus se utiliza para el protocolo Modbus RTU o ASCII en modo maestro o esclavo.

Adición del administrador

Para añadir un gestor Modbus al controlador, seleccione el Gestor Modbus en el Catálogo de hardware, arrástrelo al árbol de dispositivos y colóquelo en uno de los nodos resaltados.

Para obtener más información sobre cómo añadir un dispositivo al proyecto, consulte:

• Uso del Catálogo de hardware

• Uso del menú contextual o el botón Más

Configuración del gestor Modbus

Para configurar el gestor Modbus para el controlador, haga doble clic en Gestor Modbus en el árbol de dispositivos.

La ventana de configuración del gestor Modbus se muestra de este modo:

Defina los parámetros tal como se describe en esta tabla:

Elemento

Descripción

Modalidad de transmisión

Especifique la modalidad de transmisión que se utilizará:

  • RTU: usa codificación binaria y comprobación de errores de CRC (8 bits de datos).

  • ASCII: los mensajes están en formato ASCII, comprobación de errores LRC (7 bits de datos)

Este parámetro debe ser idéntico para todos los dispositivos Modbus del enlace.

Direccionamiento

Especifique el tipo de dispositivo:

  • Maestro

  • Esclavo

Dirección

Dirección Modbus del dispositivo cuando esclavo está seleccionado.

Tiempo entre tramas (ms)

Tiempo para evitar la colisión de buses.

Este parámetro debe ser idéntico para todos los dispositivos Modbus del enlace.

Ajustes de línea de serie

Parámetros especificados en la ventana de configuración de líneas serie.

Maestro Modbus

Si el controlador se configura como un maestro Modbus, se admiten los siguientes bloques de funciones de la biblioteca PLCCommunication:

  • ADDM

  • READ_VAR

  • SEND_RECV_MSG

  • SINGLE_WRITE

  • WRITE_READ_VAR

  • WRITE_VAR

Para obtener más información, consulte las descripciones del bloque de funciones de la biblioteca PLCCommunication.

Esclavo Modbus

Si el controlador se configura como un esclavo Modbus, se admiten las siguientes peticiones de Modbus:

Código de función

Dec. (Hex)

Subfunción

Dec. (Hex)

Función

1 (1 hex)

Lectura de salidas digitales (%Q)

2 (2 hex)

Lectura de entradas digitales (%I)

3 (3 hex)

Lectura de registro múltiple (%MW)

6 (6 hex)

Escritura de registro único (%MW)

8 (8 hex)

Diagnostic

15 (F hex)

Escritura de salidas digitales múltiples (%Q)

16 (10 hex)

Escritura de registros múltiples (%MW)

23 (17 hex)

Lectura/escritura de registros múltiples (%MW)

43 (2B hex)

14 (E hex)

Identificación del dispositivo de lectura

En esta tabla se incluyen los códigos de subfunción que admite la petición Modbus de diagnóstico 08:

Código de subfunción

Función

Decimal

Hexadecimal

 

10

0A

Limpia contadores y el registro de diagnóstico

11

0B

Devuelve el recuento de mensajes del bus

12

0C

Devuelve el recuento de errores de comunicaciones del bus

13

0D

Devuelve el recuento de errores de excepción del bus

14

0E

Devuelve el recuento de mensajes del esclavo

15

0F

Devuelve el recuento de esclavos sin respuesta

16

10

Devuelve el recuento de esclavos NAK

17

11

Devuelve el recuento de esclavos ocupados

18

12

Devuelve el recuento de desbordamiento de caracteres del bus

En esta tabla se enumeran los objetos que se pueden leer con una petición de identificación de dispositivo de lectura (nivel de identificación básico):

ID de objeto

Nombre del objeto

Tipo

Valor

00 hex

Nombre del proveedor

Cadena ASCII

Schneider Electric

01 hex

Código de producto

Cadena ASCII

Referencia del controlador

02 hex

Revisión principal/secundaria

Cadena ASCII

aa.bb.cc.dd (igual que el descriptor del dispositivo)

En el siguiente apartado se describen las diferencias entre la asignación de memoria Modbus del controlador y la asignación de HMI Modbus. Si no programa la aplicación para identificar estas diferencias en la asignación, el controlador y HMI no se comunicarán correctamente. Por consiguiente, puede que los valores incorrectos se escriban en áreas de memoria encargadas de las operaciones de salida.

 ADVERTENCIA
FUNCIONAMIENTO IMPREVISTO DEL EQUIPO
Programe la aplicación para que traduzca la asignación de memoria de Modbus utilizada por el controlador y la que utiliza cualquier dispositivo HMI conectado.
Si no se siguen estas instrucciones, pueden producirse lesiones graves, muerte o daños en el equipo.

Cuando el controlador y el HMI Magelis están conectados a través de Modbus (HMI es un maestro de peticiones Modbus), el intercambio de datos utiliza peticiones de palabra simple.

Las palabras sencillas de la memoria HMI se solapan cuando se utilizan palabras dobles, pero no en el caso de la memoria del controlador (consulte el siguiente diagrama). Para que el área de la memoria HMI y la de la memoria del controlador coincidan, la relación entre las palabras dobles de la memoria HMI y las de la memoria del controlador debe ser 2.

A continuación encontrará ejemplos de coincidencias de memoria en el caso de palabras dobles:

  • El área de memoria %MD2 de HMI corresponde al área de memoria %MD1 del controlador porque la petición Modbus utiliza las mismas palabras sencillas.

  • El área de memoria %MD20 de HMI corresponde al área de memoria %MD10 del controlador porque la petición Modbus utiliza las mismas palabras sencillas.

A continuación encontrará ejemplos de coincidencias de memoria en el caso de bits:

  • El área de memoria %MW0:X9 de HMI corresponde al área de memoria %MX1.1 del controlador porque las palabras sencillas están divididas en 2 bytes diferentes dentro de la memoria del controlador.

Adición de un modem

Para añadir un modem al gestor Modbus, consulte Cómo añadir un módem a un administrador.