Clarion - PLC

Consultas, trucos, consejos. Todo sobre Clarion en todas sus versiones
Responder
raai
Ayudante de Santa
Mensajes: 62
Registrado: Vie Feb 25, 2011 6:24 pm
Contactar:

Clarion - PLC

Mensaje por raai » Mar Jun 12, 2012 10:14 pm

Hola posiblemente pueda desarrollar un sistema en el cual tenga que comunicarme con unos PLC's alguien me puede orientar como buscar información para poder realizar esto.


Saludos y gracias.


raai
Ayudante de Santa
Mensajes: 62
Registrado: Vie Feb 25, 2011 6:24 pm
Contactar:

Re: Clarion - PLC

Mensaje por raai » Lun Jun 18, 2012 11:46 pm

Bueno me he bajado un dll con el cual se supone que puedo operar el PLC que les comento. Necesito poder usar este dll en clarion

Me pueden orientar de como uso este dll en clarion, el dll no es clarion es para usarse en windows. Ya tengo el archivo lib generado con libmaker de clarion.

Se supone que debo de definir los prototipos en clarion pero aqui es donde no se como se hace, por favor ayudenme.

Saludos.

Clemar
Novato
Mensajes: 23
Registrado: Mié Ago 24, 2011 10:47 am
Contactar:

Re: Clarion - PLC

Mensaje por Clemar » Mar Jun 19, 2012 9:15 am

Hola Raii:
Tal vez deberías poner algún dato de como es la operación que necesitás realizar con el PLC.

Por ejemplo, nosotros tenemos una aplicación que solo debe subir a la base de datos los reportes del plc.
Entonces no nos complicamos, programamos el plc para que genere archivos .txt y periódicamente los subimos a la base de datos, está todo automatizado y funciona, los datos están disponibles con menos de 10 minutos de retraso (cada 10 minutos se suben los datos).

Si tenés que comandarlo es otra cosa, cual es el canal de comunicación?, RS232 ?, TCP/IP ?.

Para prototipear una DLL hay ejemplos en el ftp de Evolution Consulting, por ejemplo, como comandar la RS232 usando las API de windows.
Lamentablemente nunca profundicé estos temas, solamente llegué hasta solucionar el problema del momento.

Espero que te sirva. Saludos!

raai
Ayudante de Santa
Mensajes: 62
Registrado: Vie Feb 25, 2011 6:24 pm
Contactar:

Re: Clarion - PLC

Mensaje por raai » Mar Jun 19, 2012 10:13 pm

Hola Clemar,

Se conecta por Ethernet. Ahora ya logré hacer uso de algunas funciones sin embargo tengo problemas en una.

la definicion es la siguiente:

Código: Seleccionar todo

int MXEIO_Connect ( char *szIP,WORD wPort,DWORD dwTimeOut,int * hConnection); // Asi esta definida la funcion en C/C++

Asi la defino en clarion

module('funcionesPLC')
     MXEIO_Connect(*string szIP, signed wPort, ulong dwTimeOut,*signed hConnection),SIGNED,RAW,C,NAME('MXEIO_Connect')
     MXEIO_Disconnect(signed hConnection),SIGNED,RAW,C,NAME('MXEIO_Disconnect')
 end
Me marca error diciendo el prototipo no existe. Intento usar la funcion para conectar.

Seguramente definí algun parametro mal pero no logro saber cual es, espero me puedan ayudar.

César
Novato
Mensajes: 14
Registrado: Dom Feb 13, 2011 3:06 pm
Ubicación: Villa María, Córdoba
Contactar:

Re: Clarion - PLC

Mensaje por César » Mié Jun 20, 2012 3:46 pm

Hola: probá asi:

Código: Seleccionar todo

module('funcionesPLC')
     MXEIO_Connect(LONG szIP, SHORT wPort, ULONG dwTimeOut, LONG hConnection), SHORT, PASCAL
     MXEIO_Disconnect(SHORT hConnection), SHORT, PASCAL
end
luego para llamar:
declaras estas variables:

Código: Seleccionar todo

LOC:szIP        CSRTING(256)  (el tamaño que haga falta en este parametro)
LOC:hConnection SHORT
el llamado:

Código: Seleccionar todo

 LOC:szIP = 'lo que vaya aca' & '<0,0>'

 Res# = MXEIO_Connect(ADDRESS(LOC:szIP), el_wport, el_dwtimeout, ADDRESS(LOC:hConnection))
  ! obiamente que en el_wport pones el valor que tengas que poner y en el_dwtimeout también.
  
 message(Res#) ! supongo que aca sabras si andubo o no

 Res# = MXEIO_Disconnect(LOC:hConnection)
Si no anda asi, proba cambiar los prototipos por estos otros:

Código: Seleccionar todo

module('funcionesPLC')
     MXEIO_Connect(LONG szIP, SHORT wPort, ULONG dwTimeOut, LONG hConnection), SHORT, C, NAME('MXEIO_Connect')
     MXEIO_Disconnect(SHORT hConnection), SHORT, C, NAME('MXEIO_Connect')
end
César .-

César
Novato
Mensajes: 14
Registrado: Dom Feb 13, 2011 3:06 pm
Ubicación: Villa María, Córdoba
Contactar:

Re: Clarion - PLC

Mensaje por César » Mié Jun 20, 2012 5:51 pm

Error: Cambiar todos los SHORT que puse por LONG , también esta variable LOC:hConnection debe ser LONG.
Excepto el parámetro wPort, que quede con SHORT.

raai
Ayudante de Santa
Mensajes: 62
Registrado: Vie Feb 25, 2011 6:24 pm
Contactar:

Re: Clarion - PLC

Mensaje por raai » Jue Jun 28, 2012 6:20 pm

Hola Cesar,

Fijate que defini las funciones que me hiciste favor de corregirme.

Cuando ejecuto la aplicacion simpre me arroja el erro de que no puede establecer la conexion y no se porque.

Estoy intentando usar el siguiente dispositivo que no es PLC (me aclararon esto).

MOXA ioLogik E1214.

Lo que tengo que hacer con esta tarjeta que se conecta via Ethernet es si ocurrio un error en un sistema que voy a desarrollar esta tarjeta debe de prender un foco para indicar que algo esta mal, solo eso.

Pero como te comento no puedo establecer la conexion con la tarjeta y no se que pasa, ojala y me puedas orientar.


Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 66 invitados