[pyar] puerto serie en python
Esteban Alejandro Chauque
achauque en gmail.com
Mar Mar 12 02:19:48 ART 2013
Buenas noches, muchas gracias por las respuestas. Había trabajado con
threads, pero no con Queue. Voy hacer las dos pruebas (tambien la de
los tiempos en el arduino) y les comento.
Saludos
El día 12 de marzo de 2013 00:34, Sebastián Seba
<ssebastianj en gmail.com> escribió:
> El día 12 de marzo de 2013 00:30, Sebastián Seba
> <ssebastianj en gmail.com> escribió:
>> El día 11 de marzo de 2013 21:53, Fernando FLORES CORCOBA
>> <fef.flores en gmail.com> escribió:
>>> Hola Esteban. A lo mejor, deberias intentar con usar un hilo y encolarlo,
>>> como te recomienda SAn.
>>> El arduino tiene un reloj de cuarzo, los cuales son muy estables, es muy
>>> dificil que el desfasaje se produzca por el clock del arduino.
>>> El problema esta en la recoleccion de los pulsos (la velocidad con que tomas
>>> la lectura desde python).
>>> suerte, y avisanos para ver como va eso.
>>> efrain
>>>
>>>
>>> El 11 de marzo de 2013 21:18, SAn <gringotumadre en gmail.com> escribió:
>>>
>>>> Hola Esteban, cómo es el contador de tiempo? Porque no deberias tener
>>>> que depender de actualizarlo tan rápido.
>>>>
>>>> Si es que no podes cambiar la parte del contador, entonces quizas
>>>> tengas que recurrir a un Thread que lea del puerto y una Queue para
>>>> pasar la informacion al thread principal.
>>>> Hay una receta que muestra esto en el wiki de PyAr cortesía de Mariano
>>>> Guerra: http://python.org.ar/pyar/ComunicarThreadsConQueue
>>>>
>>>> saludos y suerte
>>>> SAn
>>>>
>>>>
>>>> 2013/3/11 Esteban Alejandro Chauque <achauque en gmail.com>:
>>>> > Mi problema es que al ser un sistema de cronometraje si aumento el
>>>> > timeout me retrasa el contador de tiempo tambien. Estoy en un problema
>>>> > con eso.
>>>> >
>>>> >
>>>> > Saludos
>>>> >
>>>> > El día 11 de marzo de 2013 16:55, Santiago Paleka
>>>> > <santiagopaleka en gmail.com> escribió:
>>>> >> El 11 de marzo de 2013 16:14, Esteban Alejandro Chauque
>>>> >> <achauque en gmail.com>
>>>> >> escribió:
>>>> >>>
>>>> >>> Buenas tardes lista,
>>>> >>> He descargado pandora stop watch
>>>> >>> http://www.softpedia.es/programa-Pandora-Stopwatch-224274.html, es un
>>>> >>> cronometro hecho en python. La verdad funciona muy bien, pero mi
>>>> >>> necesidad me ha llevado a conectarlo con arduino para poder tomar el
>>>> >>> tiempo por medio de una barrera infrarroja.
>>>> >>> Pero no funciona del todo bien, cada tanto pierde un paso.
>>>> >>> La librería que estoy usando es PySerial. No estoy seguro si el
>>>> >>> problema se debe a la velocidad de transmisión o la velocidad con que
>>>> >>> tomo la lectura desde python.
>>>> >>> Las únicas lineas que agregue son:
>>>> >>>
>>>> >>> 169 strStep = serial.Serial('/dev/ttyUSB0', baudrate = 9600,
>>>> >>> timeout=.0001)
>>>> >>> 170 d = strStep.readline()
>>>> >>> 171 strStep.close()
>>>> >>> 172
>>>> >>> 173 # Events
>>>> >>> 174 if "PASE" in d:
>>>> >>> 175 recorded_times.append(stopwatch_time)
>>>> >>> 176 records_changed = True
>>>> >>>
>>>> >>>
>>>> >>>
>>>> >>> Saludos
>>>> >>> _______________________________________________
>>>> >>> pyar mailing list pyar en python.org.ar
>>>> >>> http://listas.python.org.ar/listinfo/pyar
>>>> >>>
>>>> >>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>> >>>
>>>> >>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> >>> Argentina - http://www.usla.org.ar
>>>> >>
>>>> >>
>>>> >> Hola Esteban, probá de ponerle mas tiempo de timeout, debe estar
>>>> >> saliendo
>>>> >> del readline (linea 170) sin datos.
>>>> >>
>>>> >> _______________________________________________
>>>> >> pyar mailing list pyar en python.org.ar
>>>> >> http://listas.python.org.ar/listinfo/pyar
>>>> >>
>>>> >> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>> >>
>>>> >> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> >> Argentina - http://www.usla.org.ar
>>>> > _______________________________________________
>>>> > pyar mailing list pyar en python.org.ar
>>>> > http://listas.python.org.ar/listinfo/pyar
>>>> >
>>>> > PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>> >
>>>> > La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> > Argentina - http://www.usla.org.ar
>>>> _______________________________________________
>>>> pyar mailing list pyar en python.org.ar
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>
>>>
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>
>> No trabajé con Arduino pero si bastante con el puerto serie y también
>> iría por la propuesta que hizo Gustavo y que es dejar la
>> responsabilidad al Arduino de cronometrar los tiempos y enviar esas
>> mediciones al puerto serie. De esa manera separás las mediciones por
>> un lado y la recepción y procesamiento de por el otro.
>>
>> Si es importante poder pausar el cronometraje podrías implementar un
>> protocolo simple en el cual enviás comandos desde la computadora al
>> Arduino, como por ejemplo: START, STOP, PAUSE (todos strings).
>
> Y sino, de última, probá aumentar la frecuencia con la que realizás el
> "polling" (comprobar si hay datos nuevos en el buffer de entrada del
> puerto serie).
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
More information about the pyar
mailing list