modbus rtu en autoit

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
kaxim
Mensajes: 14
Registrado: 09 May 2014, 23:31

modbus rtu en autoit

Mensaje por kaxim »

Hola,
Alguien sabe de alguna libreria para utilizar modbus rtu en autoit?
Necesito poderme comunicar con unos dispositivos PLC que funcionan sobre un bus 485 con protocolo modbus rtu. Actualmente para salir del paso estoy utilizando un exe: http://www.modbusdriver.com/modpoll.html que me devuelve los valores que consulto al PLC pero tengo que abrir una consola de windows tratar cadenas de texto y etc....
Me gustaria poder tener otras vías para no depender de este exe y que quede una cosa mas profesional.

Gracias.
Avatar de Usuario
chekok
Hacker del Foro
Mensajes: 111
Registrado: 16 Sep 2011, 11:50
Ubicación: Valencia / España
Contactar:

Re: modbus rtu en autoit

Mensaje por chekok »

Hola, echale un vistazo a esta web: http://www.icpdas.com/products/PAC/i-8000/modbus.htm

Tienen una dll que quizás podría valerte.
La vida es larga y dura.
kaxim
Mensajes: 14
Registrado: 09 May 2014, 23:31

Re: modbus rtu en autoit

Mensaje por kaxim »

gracias compañero, le hecho un vistazo.

El problema es que ando algo verde de dll, no entiendo mucho la verdad. De programación sé lo básico.
Alguna ayuda para poder entender como hacer funcionar las dll en autoit?
Avatar de Usuario
chekok
Hacker del Foro
Mensajes: 111
Registrado: 16 Sep 2011, 11:50
Ubicación: Valencia / España
Contactar:

Re: modbus rtu en autoit

Mensaje por chekok »

Puedes encontrar en la ayuda de Autoit las funciones que necesitas con sus explicaciones.

Por ejemplo:

Código: Seleccionar todo

$archivo_dll = DllOpen("mi_fichero.dll")                               ; Esta línea abre el archivo dll que deseamos usar.
DllCall($archivo_dll , "int", "Funcion_a_usar", "tipo_parametro1", "valor_parametro1", ...)  ; Con dllcall() usamos la dll
DllClose($archivo_dll )                                                         ; Esta cierra la dll cuando ya no la necesitamos.
Creo que el ejemplo es claro. Si tienes dudas consultanos y te lo aclaramos. :smt023
La vida es larga y dura.
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: modbus rtu en autoit

Mensaje por Dany »

esto quizas te ayude con las dlls

http://www.emesn.com/autoitforum/viewto ... f=2&t=3435


Saludos
  • ............................................Imagen
    ......................................Imagen
kaxim
Mensajes: 14
Registrado: 09 May 2014, 23:31

Re: modbus rtu en autoit

Mensaje por kaxim »

Mi problema es el traducir de C# a Autoit. Pongo ejemplo:
Configurar el puerto COM y abrir la conexion. En C# se hace del siguiente modo:

1. Creamos el puerto. Codigo C#

Código: Seleccionar todo

SerialPort serialPort = new SerialPort();
En Autoit, la primera vez tengo que abrir la Dll. Código autoit:

Código: Seleccionar todo

Local $mbus = DllOpen("Modbus.dll")
$serialport = DllCall ($mbus,"SerialPort","new SerialPort")

2. Configuramos el puerto. Codigo C#

Código: Seleccionar todo

serialPort.PortName = "COM1";
serialPort.BaudRate = 19200;
serialPort.DataBits = 8;
serialPort.Parity = Parity.None;
serialPort.StopBits = StopBits.One;
serialPort.Open();
Este paso no lo sé traducir a AutoIT porque deberia crear una estructura, pero no sé de que tipo tiene que ser cada variable.


3. Abrimos el puerto. Codigo C#

Código: Seleccionar todo

ModbusSerialMaster master=ModbusSerialMaster.CreatuRtu(serialPort);
Código autoit:

Código: Seleccionar todo

$master = DllCall ($mbus,"ModbusSerialMaster","ModbusSerialMaster.CreatuRtu("&$serialPort&")")
Alguien me hecha una mano en como traducir todo esto?
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: modbus rtu en autoit

Mensaje por Dany »

pasa el link de la libreria y la dcumentacion...
  • ............................................Imagen
    ......................................Imagen
kaxim
Mensajes: 14
Registrado: 09 May 2014, 23:31

Re: modbus rtu en autoit

Mensaje por kaxim »

En el siguiente link está la documentación y las dll:
http://ftp.icpdas.com/pub/cd/8000cd/nap ... s/nmodbus/

La question es que primero hay que crear un objeto "SerialPort". No tengo muy claro si hay que crearla con la dll o si autoit a traves de algun objeto com de windows se puede ocupar un puerto COM y luego con la dll para consultar via modbus.

Gracias compañero por tu apoyo.
kaxim
Mensajes: 14
Registrado: 09 May 2014, 23:31

Re: modbus rtu en autoit

Mensaje por kaxim »

Creo que esto va a resultar bastante dificil, no?
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: modbus rtu en autoit

Mensaje por Dany »

Creo que esa libreria solo funciona con .Net
  • ............................................Imagen
    ......................................Imagen
kaxim
Mensajes: 14
Registrado: 09 May 2014, 23:31

Re: modbus rtu en autoit

Mensaje por kaxim »

ya me lo temía porque esta muy vinculado a comandos que solo pueden utilizarse en .Net
Responder