Leer datos de una bascula con WinEvent
- FaustinoGarcia
- Novato
- Mensajes: 17
- Registrado: Mar Feb 22, 2011 2:04 pm
- Ubicación: Tucumán - Argentina
- Contactar:
Leer datos de una bascula con WinEvent
Hola
Tengo la necesidad de leer una bascula con una window desde una app;
compre el WinEvent pero "nunca" lo use y "nunca" hice este tipo de
trabajo. La bascula está conectada con una RS232 a la PC.
Necesito "una receta", por así decirlo, para usar/configurar el WinEvent para tomar datos desde un puerto COM es más "no se ni por donde empezar" ni donde leer en el manual de Capesoft; el WinEvent sirve para varias tareas y mi falta total de experiencia en este tema me complica más las cosas.
En fin... me pueden tirar una punta para empezar?? se que cada bascula tiene su forma de enviar los datos lo que "necesito" 1ro. es configurar el WinEvent para que lea el puerto COM (sea como sea lo enviado por la bascula). Me pueden ayudar???
Estoy "desnudo", a los gritos, con dos palillos en las manos, remando en el dulce de lecho y sentado en una cascara de nuez...
Desde ya Gracias!!
Faustino Garcia
Tucumán - ARG
Tengo la necesidad de leer una bascula con una window desde una app;
compre el WinEvent pero "nunca" lo use y "nunca" hice este tipo de
trabajo. La bascula está conectada con una RS232 a la PC.
Necesito "una receta", por así decirlo, para usar/configurar el WinEvent para tomar datos desde un puerto COM es más "no se ni por donde empezar" ni donde leer en el manual de Capesoft; el WinEvent sirve para varias tareas y mi falta total de experiencia en este tema me complica más las cosas.
En fin... me pueden tirar una punta para empezar?? se que cada bascula tiene su forma de enviar los datos lo que "necesito" 1ro. es configurar el WinEvent para que lea el puerto COM (sea como sea lo enviado por la bascula). Me pueden ayudar???
Estoy "desnudo", a los gritos, con dos palillos en las manos, remando en el dulce de lecho y sentado en una cascara de nuez...
Desde ya Gracias!!
Faustino Garcia
Tucumán - ARG
- gsanchez
- Novato
- Mensajes: 23
- Registrado: Dom May 08, 2011 6:17 pm
- Ubicación: Cabo San Lucas, México
- Contactar:
Re: Leer datos de una bascula con WinEvent
Código: Seleccionar todo
! === Leemos bascula === !
buf STRING(1024)
GLO:BasParam = 'COM' & CFG:BasPuerto & ':' & CLIP(CFG:BasVelocidad) & ',' & CLIP(CFG:BasParidad) & ',' & CLIP(CFG:BasDataBit) & ',' & CLIP(CFG:BasStopBit)
! COM1:9600,N,8,1 <-- Ejemplo
! --- Abrimos puerto --- !
pid# = NewPort(CLIP(GLO:BasParam),1024,1024)
! --- Enviamos identificador a la bascula --- !
! En la mayoria de las básculas hay que enviarle una 'P' para que nos envie el peso
buf = 'P' !Length = 1
BSent# = WritePort(pid#,buf,1)
ds_Sleep(50) !Retardamos 1/2 segundo
! --- leemos el peso --- !
BRec# = ReadPort(pid#,buf,0)
! --- Cerramos puerto --- !
ClosePort(pid#)
! En este momento ya tenemos el peso en la variable Buf
! La mayoria de las básculas te devuelve algo como esto: '10.6 Kg'
! es necesario quitarle la palabra Kg yo lo hago con la función vuKeepChars
! de Valutilities; puedes implantar algo con pos/instring
! --- Obtenemos el peso --- !
LOC:Peso = buf
LOC:Chars = '0123456789.'
LOC:Cantidad = vuKeepChars(LOC:Peso,LOC:Chars)
! Listo, el peso esta en la variable LOC:Cantidad
Saludos
Si la vida te da la espalda, agarrale una nalga
- FaustinoGarcia
- Novato
- Mensajes: 17
- Registrado: Mar Feb 22, 2011 2:04 pm
- Ubicación: Tucumán - Argentina
- Contactar:
Re: Leer datos de una bascula con WinEvent
Gracias!!!
Por supuesto que sirve, tengo una consulta más:
Este codigo puede ir en una ROUTINE o FUNCION que sea convocada desde un botón (Ejm: Leer Bascula) o donde debo poner este embeb??
Saludos
Faustino Garcia
Tucumán - ARG
Por supuesto que sirve, tengo una consulta más:
Este codigo puede ir en una ROUTINE o FUNCION que sea convocada desde un botón (Ejm: Leer Bascula) o donde debo poner este embeb??
Saludos
Faustino Garcia
Tucumán - ARG
- gsanchez
- Novato
- Mensajes: 23
- Registrado: Dom May 08, 2011 6:17 pm
- Ubicación: Cabo San Lucas, México
- Contactar:
Re: Leer datos de una bascula con WinEvent
yo lo tengo en el embed de un botón; si el cliente necesita pesar la mercancia oprime el boton "pesar" y se ejecuta la rutina antes mencionada y despues manipulo la variable LOC:Cantidad como me convenga
Saludos
Saludos
Si la vida te da la espalda, agarrale una nalga
- FaustinoGarcia
- Novato
- Mensajes: 17
- Registrado: Mar Feb 22, 2011 2:04 pm
- Ubicación: Tucumán - Argentina
- Contactar:
Re: Leer datos de una bascula con WinEvent
Muchisimas GRACIAS!!
La G es de Gustavo??
La G es de Gustavo??
- gsanchez
- Novato
- Mensajes: 23
- Registrado: Dom May 08, 2011 6:17 pm
- Ubicación: Cabo San Lucas, México
- Contactar:
-
- Mensajes: 2
- Registrado: Jue Mar 03, 2011 5:22 pm
- Contactar:
Re: Leer datos de una bascula con WinEvent
gsanchez escribió:Espero que te sirva este ejemploCódigo: Seleccionar todo
! === Leemos bascula === ! buf STRING(1024) GLO:BasParam = 'COM' & CFG:BasPuerto & ':' & CLIP(CFG:BasVelocidad) & ',' & CLIP(CFG:BasParidad) & ',' & CLIP(CFG:BasDataBit) & ',' & CLIP(CFG:BasStopBit) ! COM1:9600,N,8,1 <-- Ejemplo ! --- Abrimos puerto --- ! pid# = NewPort(CLIP(GLO:BasParam),1024,1024) ! --- Enviamos identificador a la bascula --- ! ! En la mayoria de las básculas hay que enviarle una 'P' para que nos envie el peso buf = 'P' !Length = 1 BSent# = WritePort(pid#,buf,1) ds_Sleep(50) !Retardamos 1/2 segundo ! --- leemos el peso --- ! BRec# = ReadPort(pid#,buf,0) ! --- Cerramos puerto --- ! ClosePort(pid#) ! En este momento ya tenemos el peso en la variable Buf ! La mayoria de las básculas te devuelve algo como esto: '10.6 Kg' ! es necesario quitarle la palabra Kg yo lo hago con la función vuKeepChars ! de Valutilities; puedes implantar algo con pos/instring ! --- Obtenemos el peso --- ! LOC:Peso = buf LOC:Chars = '0123456789.' LOC:Cantidad = vuKeepChars(LOC:Peso,LOC:Chars) ! Listo, el peso esta en la variable LOC:Cantidad
Saludos
-
- Mensajes: 2
- Registrado: Jue Mar 03, 2011 5:22 pm
- Contactar:
Re: Leer datos de una bascula con WinEvent
Con este codigo, ya no necesito el WinEvent?
- Mauricio
- Desarrollador de Clarion
- Mensajes: 1125
- Registrado: Dom Feb 06, 2011 9:34 am
- Ubicación: España
- Contactar:
Re: Leer datos de una bascula con WinEvent
Si, necesitás el WinEvent.
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog
www.tdcsoftware.com y www.clarioneros.com/blog
-
- Mensajes: 1
- Registrado: Mar Sep 23, 2014 11:40 pm
- Contactar:
Re: Leer datos de una bascula con WinEvent
handradev escribió:gsanchez escribió:Espero que te sirva este ejemploCódigo: Seleccionar todo
! === Leemos bascula === ! buf STRING(1024) GLO:BasParam = 'COM' & CFG:BasPuerto & ':' & CLIP(CFG:BasVelocidad) & ',' & CLIP(CFG:BasParidad) & ',' & CLIP(CFG:BasDataBit) & ',' & CLIP(CFG:BasStopBit) ! COM1:9600,N,8,1 <-- Ejemplo ! --- Abrimos puerto --- ! pid# = NewPort(CLIP(GLO:BasParam),1024,1024) ! --- Enviamos identificador a la bascula --- ! ! En la mayoria de las básculas hay que enviarle una 'P' para que nos envie el peso buf = 'P' !Length = 1 BSent# = WritePort(pid#,buf,1) ds_Sleep(50) !Retardamos 1/2 segundo ! --- leemos el peso --- ! BRec# = ReadPort(pid#,buf,0) ! --- Cerramos puerto --- ! ClosePort(pid#) ! En este momento ya tenemos el peso en la variable Buf ! La mayoria de las básculas te devuelve algo como esto: '10.6 Kg' ! es necesario quitarle la palabra Kg yo lo hago con la función vuKeepChars ! de Valutilities; puedes implantar algo con pos/instring ! --- Obtenemos el peso --- ! LOC:Peso = buf LOC:Chars = '0123456789.' LOC:Cantidad = vuKeepChars(LOC:Peso,LOC:Chars) ! Listo, el peso esta en la variable LOC:Cantidad
Saludos
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados