Foros del Web » Programando para Internet » PHP »

No lee datos de bascula puerto COM

Estas en el tema de No lee datos de bascula puerto COM en el foro de PHP en Foros del Web. Hola que tal amigos programadores y buscadores de desafios o con conocimento para compartir. Tengo una problema que llevo acarreando de un par de dias, ...
  #1 (permalink)  
Antiguo 05/02/2012, 15:11
Avatar de blakmetall  
Fecha de Ingreso: diciembre-2010
Ubicación: Jalisco
Mensajes: 181
Antigüedad: 13 años, 4 meses
Puntos: 18
No lee datos de bascula puerto COM

Hola que tal amigos programadores y buscadores de desafios o con conocimento para compartir.
Tengo una problema que llevo acarreando de un par de dias,
ya intente muchas cosas pero nada me funciona al 100.

Tengo una bascula Torrey EQ - 10 / 20.
La bascula tiene salida para puerto serie macho, asi que tengo un adaptador hembra-hembra y un cable macho - usb para poder realizar la conexion a la pc.

instale los drivers que venian en caja del cable macho - usb y todo quedo bien por esa parte, este es el nombre que sale en los dispositivos conectados Prolific USB-to-Serial Comm Port (COM7).

Primero intente lo facil abri el puerto con el fopen.

--- intento 1 ---

checar si podia abrir el puerto si problema
Código PHP:
$handler fopen("COM7:","r+"); 
y con esto no me daba error.

Lo siguiente que hice fue intentar leer datos de la bascula, le puse algo encima y puse el siguiente codigo.
Código PHP:
$handler fopen("COM7:","r+");
    if(
$handler){
        echo 
fread($handler,1000);
        echo 
"abierto";
    }
    else
        echo 
"no abierto"
En este punto al ejecutar lo anterior veo que la bascula parpadea, o sea que recibio la solicitud de datos, pero al ejecutarse la linea fread()
el script sigue ejecutandose y nunca me recibe los datos, en ocaciones la bascula se queda parpadeando.

(probado con wamp, xxamp en windows 7 64 bits)

--- intento 2 ---

Me meti a la pagina esa de byteworks para descargarme el codigo que tienen para la comunicacion con el puerto serial,etc y dije a chido con esto la armo.

realice todas las configuraciones, meti el archivo php_ser++.dll en la carpeta ext de php, reinicie todo y al parecer me funciono al abrir el puerto tambien.

Ahora ejecute este codigo segun las instrucciones de esa libreria.

Código PHP:
$functions get_extension_funcs($module);
ser_open("COM7"96008"None"1"None");
$str ser_read();
echo 
$str;

//tambien agregue esta linea y esta siempre me tria 119 no importando cuanto peso le pusiera a la bascula
echo ser_readbyte( ); 
Y yo entusiasmado dije, con este ya la hice, pero cual fue mi sorpresa que la linea
ser_read() no me trajo datos, nada

--- ahi termino mi intento numero 2 ---

--- El intento 3 y 4, fue probar los primeros 2 en
win xp 32 bit ---

--- el ultimo intento ---
Me descarge el programa scale.exe (que solo podia ejecutarse en win xp) y lo
ejecute esperando que en ese al menos recibiera los datos y los mostrara en pantalla en su propio programa claro, sin meterle codigo y nada.
Seleccione el puerto bien y todo pero no me aparecia nada en la pantalla del programa

mas que las opciones de "configurar"
el cuadro negro donde supongo deberia salir el peso de la bascula
y tres radio buttons: enviar, recibir, espera.
de los cuales solo los de recibir y espera se cambiaban entre si.

-----

Esta es toda la informacion que tengo, si alguien pudiese tener la amabilidad y claro si ha configurado este tipo de bascula o similares me podria orienta acerca de como hacerlo bien.

Tambien tengo la duda de que si la bascula sirve para enviar datos del pesos a la pc, por que al parecer estuvo arrumbada cierto tiempo y no la usaban.

Gracias por todos los que se tomaron la molestia de leer hasta el final.
Pero para no dar informacion incompleta, mejor decirles todo lo que hice para no
generar mas dudas.

Gracias.
__________________
To the end....
  #2 (permalink)  
Antiguo 06/02/2012, 01:32
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: No lee datos de bascula puerto COM

Tu problema es demasiado específico para un foro. Ni la máquina ni el software son standard, además no es un software tipicamente web. Por lo general para este tipo de cosas se hacen aplciaciones de escritorio. La única solución es que sigas investigando por tu cuenta, con suerte podrás consultar al fabricante.
Saludos,
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 23/05/2015, 11:27
 
Fecha de Ingreso: mayo-2015
Mensajes: 2
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: No lee datos de bascula puerto COM

hola, no se mucho de hp pero para que la bascula te devuelva el peso tu se lo solicitas a la bascula con el envio de un caracter especial que la bascula esta preparado para recibir. cuando la bascula recibe esta instrucción y devuelve el peso leido en algun formato que desconosco pero que en el manual tecnico de la bascula lo describe.
el caracter que le debes enviar es el "P" mayuscula. mira esto viene en un archivo readme del software de la bascula de la pagina de torrey. el software es un .zip llamado scale.zip
-----------------------------------------------------------------------------------------------------------------------
UTILIZANDO VISUAL BASIC.....

PARA ENTABLAR COMUNICACION POR EL PUERTO SERIE DE LA COMPUTADORA
CON LA BASCULA

ES NECESARIO CONFIGURAR EL OBJETO COMM DE VISUAL BASIC
VEA EL DIBUJO ANEXO "PORTCOM.BMP".

PARA ENVIAR UN DATO POR EL PUERTO SOLO ES NECESARIO
INTRODUCIR DENTRO DEL CODIGO LA SIGUIENTE ASIGNACION


PUERTO.OUTPUT=CHR$(80)
PUERTO.OUTPUT="P"


AMBAS INSTRUCCIONES ENVIA UNA "P" EN ASCII POR EL PUERTO SERIE
PARA LEER DATOS DEL PUERTO SOLO ES NECEARIO HACER UNA ASIGNACION A LA INVERSA


DATO = PUERTO.INPUT


ES CONVENIENTE REALIZAR UN RETARDO ANTES DE CADA INSTRUCCION DE LECTURA
O ESCRITURA, ESTO DEBIDO A QUE LA COMPUTADORA GENERALMENTE ES MAS RAPIDA
QUE LA BASCULA.
  #4 (permalink)  
Antiguo 23/05/2015, 12:41
 
Fecha de Ingreso: mayo-2015
Mensajes: 2
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: No lee datos de bascula puerto COM

actualizacion.
yo tenia un problema similar. conectar la bascula a la pc con cable usb (la pc no tiene serial, es una all-in-one) y usarla con el sistema de punto de venta MICROSIP.
el problema era el cable y el "convertidor de sexo" del conector serial. use el cable serial macho -usb manhatan y ese cambiador de sexo para conectarlo . es una pieza que tiene de ambos lados serial hembra. con eso no me funcionaba la conexion. no comunicaba con la pc. lo que hize fue comprar un cable rs-232 NULL hembra -hembra en STEREN. y ese cable lo use para conectarlo a la bascula y al extremo serial-macho del cable serial macho-usb manhatan., es decir en lugar del cambiador de sexo use el nuevo cable NULL. y listo jalo sin mayor problema. en el sistema solo configure el dispositivo para que el caracter de solicitud de peso fuera "P" ( usando el codigo numerico 80. en ascii). espero esto le sirva a alguien. saludos.
  #5 (permalink)  
Antiguo 23/05/2015, 13:52
Avatar de Jilti  
Fecha de Ingreso: abril-2007
Mensajes: 47
Antigüedad: 17 años
Puntos: 4
Respuesta: No lee datos de bascula puerto COM

Saludos.... ve cambiando la velocidad de la transmisión en baudios en el script php, porque tu lo has puesto a 9600 y quizás la máquina trabaja a otra velocidad y el pc no recibe los datos.
Las velocidades en baudios podrían ser 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600 y 115200.

Ves probando el valor 9600 de tu script por los que te he puesto arriba a ver si tienes suerte.

PD: Me acabo de dar cuenta que el post es del 2012 :S

Etiquetas: puerto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:43.