Excel Modbus
Excel Modbus
Tabla de contenido
1. Introducción ................................................................................................................. 2
2. Controlador Modbus para Excel ........................................................................................... 2
3. Configuración de Excel como maestro Modbus ......................................................................... 3
Activar el menú de Desarrollador en Excel .................................................................................... 3
Habilitar el ActiveControl X para las comunicaciones Modbus ............................................................. 4
Configurar la seguridad para el manejo de macros .......................................................................... 5
Habilitar las comunicaciones Modbus .......................................................................................... 7
4. Probar la comunicación mediante servidor de depuración ......................................................... 10
Curso 2023-2024 i
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
Símbolo Significado
Pregunta teórica
Enlace web
Ejercicio de cálculo
Experimento práctico
Enlace a vídeo
Información extra
Razonamiento
Cuidado
Importante
V1.0a 1
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
MODBUS - EXCEL
1. Introducción
En este capítulo vamos a utilizar Excel como maestro o cliente de un servidor Modbus. Nos vamos a limitar a
establecer la comunicación de manera que posteriormente podamos realizar aplicaciones más complejas en Excel
para mostrar por ejemplo los datos de producción de la empresa.
https://www.modbustools.com/modbus_activex.html
Debemos descargar la versión acorde a nuestra versión de Excel (32 o 64 bits), y posteriormente la ejecutamos con
permisos de Administrador:
En caso de haber realizado alguno de los ejemplos anteriores de comunicaciones Modbus deberías tener instalado
ya algun software de simulación como puede ser Modbus Slave, el cual puedes descargar de la misma web que el
MBAXP.
V1.0a 2
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
1. Pulsar con el botón derecho del ratón sobre la cinta de opciones y seleccionar la opción “Personalizar cinta
de opciones”:
V1.0a 3
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
2. Y seleccionamos el MBAXP:
Como veremos más adelante, este nos permitirá configurar los parámetros de comunicación.
V1.0a 4
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
Para realizar la siguiente configuración lo haremos desde “Archivo > Opciones > Centro de Confianza >
Configuración del centro de confianza”.
V1.0a 5
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
2. A continuación habilitamos la ejecución de los controles “ActiveX” y desactivamos la opción “Modo seguro”,
de manera que la configuración tiene que quedar tal y como se ve en la siguiente imagen:
V1.0a 6
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
2. Podemos acceder a las propiedades del elemento y cambiar los parámetros de comunicación:
3. Pero lo vamos a hacer a través de un botón con el que comenzaremos la comunicación. De manera que
agregamos un botón:
V1.0a 7
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
4. En las propiedades podemos cambiar el “Caption” para poner el mensaje que queramos.
5. A continuación vamos a editar el código, y podemos utilizar el que viene junto a los ejemplos con el
programa:
Mbaxp1.Connection = TCP_IP '0 = TCP/IP .Mbaxp1 es el nombre del control ActiveX MBAXP1
Mbaxp1.IPAddr1 = 127 ' En este caso el servidor está en el mismo PC
Mbaxp1.IPAddr2 = 0
Mbaxp1.IPAddr3 = 0
Mbaxp1.IPAddr4 = 1
Mbaxp1.TCPIPPort = 502
Mbaxp1.Timeout = 1000 ' Read timeout
Mbaxp1.ConnectTimeout = 2000 ' TCP/IP Connection timeout
Mbaxp1.LicenseKey ("xxxx-xxxx-xxxx-xxxx-xxxx-xxxx")
e = Mbaxp1.OpenConnection
e = Mbaxp1.GetLastError
ElseIf e = 34 Then
Cells(1, 2) = "Connection timeout"
e = Mbaxp1.ReadHoldingRegisters(1, 1, 0, 5, 1000)
Mbaxp1.UpdateEnable (1)
End Sub
V1.0a 8
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
Mbaxp1.CloseConnection
End Sub
V1.0a 9
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
Para comprobar la correcta comunicación vamos a basarnos en el programa que se adjunta en los apuntes como
ejemplo, y el software Modbus Slave que hará las veces de servidor Modbus.
4. Cuando arranquemos el programa en Excel, debido a que es una versión demo, nos indica que solo
funcionará durante 60 minutos. Posteriormente será necesario reinicializarlo para volver a disponer de 60
minutos. En nuestro caso, para realizar pruebas es suficiente:
5. Y finalmente podemos comprobar como la comunicación entre el Modbus Slave y Excel es correcta. En un
principio el área accesible se corresponde con los 10 primeros holding registers:
V1.0a 10
AUTOMATIZAZIO ETA ROBOTIKA INDUSTRIALA
V1.0a 11