Simulador Maestro Modbus
Modbus Master es un simulador gratuito desarrollado EQUINOX que permite probar dispositivos de automatización esclavos de tipo Modbus.
Soporta las siguientes variantes del protocolo:
- Modbus ASCII
- Modbus RTU
- Modbus TCP
Independientemente de la variante utilizada, admite el transporte de datos tanto por puertos serie como a través de Ethernet (TCP/IP). Esto le brinda una mayor flexibilidad que otros simuladores disponibles en el mercado.
Licencia y descarga
Este programa es software libre disponible bajo la licencia GPLv3.
Puede redistribuirse y usarse sin restricciones, bajo responsabilidad del usuario y sin garantía.
El programa es portable, descomprima el archivo ZIP y comience a utilizarlo.
Modo de uso
Parámetros de ventana principal
Modbus settings
Parámetro | Descripción |
---|---|
Function code | Tipo de dato a interrogar: Coils, Input Contacts, Holding Registers, Input Registers |
Slave address | Dirección Modbus del esclavo a interrogar |
First data object | Dirección del primer objeto a interrogar (del tipo de dato seleccionado). En este parámetro no deberá considerarse la dirección base del tipo de dato a interrogar (10.000 para Input Registers, 30.000 para Input Registers, 40.000 para Holding Registers). |
Quantity | Cantidad de objetos a interrogar |
Operating mode
Parámetro | Descripción |
---|---|
Mode | Modo de operación (ver tabla siguiente) |
Variant | Variante Modbus a utilizar: TCP, RTU o ASCII. Cualquiera de las tres variantes puede ser utilizada con puertos seriales y también con sockets TCP/IP (de acuerdo a la configuración establecida en Settings –> Communication) |
Scan rate | Cada cuantos segundos se enviará una interrogación |
Data format | Formato en que se presentarán los datos recibidos (formato lista o formato tabla) |
Mode
Parámetro | Descripción |
---|---|
Poll once | Interrogar solo una vez |
Poll continuosly | Interrogar de forma continua, con intervalo en segundos definido por “Scan rate” |
Scan (step “x”) | Interrogar bloques consecutivos de “x” objetos cada uno, hasta totalizar la cantidad de finida en “Quantity”, comenzando en el objeto “First data object”, con intervalo en segundos definido por “Scan rate” |
Parámetros de configuraciones
Los mismos se especifican en el menú Settings–>Communication
Parámetro | Descripción |
---|---|
Connection type | Seleccionar “Serial” para puertos seriales y TCP/IP para usar sockets. Esta selección no determina la variante Modbus a utilizar (RTU, TCP o ASCII), pudiéndose utilizar cualquiera de ellas tanto a través de puertos seriales como sockets. |
Serial settings
Parámetro | Descripción |
---|---|
Serial port | Puerto serie a utilizar (solo para “Connection type” del tipo “Serial” |
Bitrate | Velocidad 1200, 2400, 4800, 9600, 19200, 38400, 57600 o 115200 bps |
Parity | Paridad par, impar, marca o espacio (o ninguna) |
Data bits | Cantidad de bits de datos |
Stop Bits | Cantidad de bits de stop |
TCP/IP settings
Parámetro | Descripción |
---|---|
Host | Host al cuál se conectará el simulador. Puede ser una dirección ip o un hostname |
Port | Puerto del host donde escucha el esclavo Modbus al cual se desea conectar |
Formatos de presentación de los datos
Formato tabla
En este modo se muestran casilleros, uno para cada objeto del tipo de datos seleccionado. Los casilleros correspondientes a los objetos que hayan sido interrogados serán completados con el valor correspondiente (0 o 1 para los tipos de datos digitales o el valor que corresponda para los analógicos).
Formato lista
Se muestra el listado de objetos interrogados, la primera columna es la dirección del objeto, la segunda es el nombre del mismo (ver sección siguiente: “Archivo modbus.map”, la tercera columna es el valor actual, la cuarta columna es el valor de la interrogación previa (útil para realizar comparaciones entre interrogaciones), y la quinta columna es la marca de tiempo cuando cada objeto fue interrogado.
Archivo modbus.map
El simulador permite definir los nombres de los objetos para cada tipo de dato, estos nombres serán utilizados cuando los datos sean presentados en “Formato lista”.
Para hacerlo se debe crear un archivo llamado “modbus.map” en la misma carpeta donde se encuentre el programa. El contenido del archivo deberá respetar el siguiente formato de ejemplo:
1,2,2048,CTRL.CBCSWI1.Pos.Oper.ctlVal Select open (1=Select) |
1,2,2049,CTRL.CBCSWI1.Pos.Oper.ctlVal Select close (1=Select) |
1,2,2050,CTRL.CBCSWI1.Pos.Oper.ctlVal Cancel selection (1=Cancel) |
1,2,2051,CTRL.CBCSWI1.Pos.Oper.ctlVal Execute selection (1=Execute) |
Se trata de cuatro parámetros separados por coma:
Parámetro | Descripción |
---|---|
Parámetro 1 | Dirección del esclavo Modbus |
Parámetro 2 | Tipo de dato (1 para Coils, 2 para Input Status, 3 para Holding Registers, 4 para Input registers) |
Parámetro 3 | Dirección del objeto |
Parámetro 4 | Nombre del objeto |