PDA

Ver la Versión Completa : Puerto COM1 y bascula digital


jjha79
06-10-2010, 02:23:42
Hola Buenas tardes, tengo la necesidad de realizar una aplicación que me permita pasar a una forma en delphi 2010 los datos del peso en una bascula digital a través del puerto USB. que opciones me recomiendan? existe alguna forma o aplicación de ejemplo? de antemano muchas gracias!

ElKurgan
06-10-2010, 09:17:53
¡Que casualidad!. Precisamente acababa de leer un artículo muy interesante del maestro Seoane con un ejemplo sobre balanzas (http://delphi.jmrds.com/). Tal vez puedas empezar por ahí.

Un saludo

Neftali [Germán.Estévez]
06-10-2010, 11:14:50
Hola Buenas tardes, tengo la necesidad de realizar una aplicación que me permita pasar a una forma en delphi 2010 los datos del peso en una bascula digital a través del puerto USB. que opciones me recomiendan? existe alguna forma o aplicación de ejemplo? de antemano muchas gracias!


Lo primero que hay que saber es qué tipo de báscula es y cómo "manda" los datos al PC una vez conectada. En la documentación de la báscula debería explicar esa informacón.

jjha79
06-10-2010, 17:43:39
Buen día, estoy leyendo el articulo que me recomienda ElKurgan, esta muy interesante y creo que me sera de gran utilidad, también voy a darle una hojeada al manual técnico de la bascula, que por cierto se me paso especificar es una balanza de peso para camiones de carga, y de la cual ya recibo el peso en una aplicación de muestra con el componente TCOMPORT, pero sin obtener buenos resultados al querer pasar la lectura del peso a un componente TEdit por lo cual decidí empezar de cero. Muchas gracias Neftali y ElKurgan, espero su comentario.

FGarcia
06-10-2010, 18:29:33
No comentas nada sobre el programa de ejemplo que utilizas actualmente, la balanza de camiones de carga que marca es? conoces el protocolo de comunicaciones (la cadena de datos que transmite).
Si estas usando comport (Djan Cernilla) es bastante fácil usando el componente ComPacket, solo declara por código no por inspector de objetos (hay una falla) los caracteres de inicio y fin de cadena y ya esta.

FGarcia
06-10-2010, 19:01:02
Anexo un archivo con un ejemplo que hice ya hace algun tiempo. Espero te sirva como punto de partida.

Para probar el puerto COM sin usar nada mas que tu PC deberas de puentear los pines 2 y 3 en el puerto.

jjha79
03-05-2011, 19:31:56
Hola MGarcia, después de casi un año continuare con este proyecto, en aquella ocasión recibí tus ejemplos, los cuales me gustaron mucho. creo que son muy buenos, sin embargo el código fuente al compilarlo me marca error ([DCC Error] Principal.pas(97): E2003 Undeclared identifier: 'stIniFile') no se porque. me gustaría saber si me puedes ayudar con este problema y así finalizar con este proyecto. de antemano muchas gracias.
P.D. estoy usando delphi 2010

FGarcia
03-05-2011, 23:43:20
Te he contestado al privado que me enviaste, pero ya que el tema tambien esta en el foro lo contesto aqui.

1. El ejemplo que puse esta en d2010 y el componente comport esta compilado para el mismo.

2. Deberas declarar en el uses donde colocaste el Comport la unidad CTypes

3. Por si las dudas declara tambien la unit IniFiles.


Edito: el nombre correcto es CPortTypes. No es necesario IniFiles

jjha79
03-05-2011, 23:58:55
Gracias por contestar FGarcia, eres muy amable, ya agregue en Uses Ctypes y IniFiles, sin embargo me marca el siguiente error ([DCC Fatal Error] Principal.pas(7): F1026 File not found: 'ctypes.dcu'), que puede ser?
De antemano muchas gracias!

FGarcia
04-05-2011, 03:57:44
Creo que no leiste la edicion que hice de mi post anterior:

El nombre correcto es CPortTypes y no es necesario el IniFiles

jjha79
04-05-2011, 18:19:22
Muchas Gracias FGarcia, ya hice la corrección y todo perfecto. después te informo de mis resultados.

jjha79
04-05-2011, 18:28:09
disculpa mi ignorancia FGarcia, pero ¿porque en todos los ejemplos que he mirado sobre codigo del commport, se utiliza la variable str del tipo string ejemplo:(ComPort1.ReadStr(Str, Count)), y al compilar indica el sigueinte error ([DCC Error] Principal.pas(588): E2033 Types of actual and formal var parameters must be identical)??
lo que hice yo es declarar str del tipo ansistring, pero no se si sea lo correcto.
de antemano muchas gracias.

FGarcia
04-05-2011, 22:01:55
Te recuerdo que delphi 2009 y siguientes ya usan código UNICODE, ComPort es para versiones anteriores y los ejemplos están hechos para esas versiones así que al portar a d2010 debes de actualizar el uso de comport y sus variables.

Dale una leida al Delphi 2009 Handbook de Marco Cantu. (http://www.marcocantu.com) Rezale a San Google y tal vez se te conceda el milagro.

jjha79
05-05-2011, 17:18:24
Muchas gracias por su ayuda, ya logre solucionar mi problema.