Python - Problema al leer archivos por puerto serial

 
Vista:

Problema al leer archivos por puerto serial

Publicado por Dany (2 intervenciones) el 20/10/2014 16:04:49
Hola a todos.

Les cuento que actualmente estoy trabajando con un beagle bone black (es un sbc como el raspberry pi), la cosa es que con este equipo tengo que leer datos de serial, así que me hice un programa en python en mi computador (windows) y puedo leer sin problemas todo el tiempo, este mismo código lo monté en el Beagle y la primera vez que lo ejecuto funciona sin problemas, pero la segunda me lee pura basura. la verdad nose que proceso interno se estará saltando el beagle que haga que no funcione igual. Para que el código vuelva a trabajar debo desconectar el puerto serial y volver a conectar y vuelve a trabajar . Como dato el mismo código lo hago funcionar en raspberry pi b+ y trabaja sin problemas igual como windows.

PD: actualmente trabajo con una base de datos pero no creo que ese sea el problema

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import time
import psycopg2
import serial
 
import cProfile, pstats, StringIO
pr = cProfile.Profile()
#pr.bias = 1.23610705428e-06
pr.enable()
 
puertoserial=serial.Serial('/dev/ttyUSB0',57600)
 
 
def limpia():
    puertoserial.setDTR(False)
    time.sleep(1)
    puertoserial.flushInput()
    puertoserial.setDTR(True)
 
################Config DB##########################################
 
try :
        condw=1
        print "Coneccion Local WLAN Establecida"
        wlocal_conn=psycopg2.connect(database="basededatos",
        user="postgres",
        password="raspberry",
        host="192.168.1.109",
        port="5432",
        connect_timeout="5")
except:
        print "No se puede establecer la coneccion WLAN"
 
if condw==1:
        wlocal_cur=wlocal_conn.cursor()
        wlocal_cur.execute("SELECT ndata FROM serial2")
        local_content=wlocal_cur.fetchall() # leo toda la columna
###################################################################
 
print len(local_content)
 
limpia()
c1=tempv=[]
i=0
c=0
ahora = time.strftime("%c") #agrega fechaa
while c<5760*5 :
 
    largo=puertoserial.inWaiting() #leo el largo del buffer    
 
    if (largo!= 0) :
 
            tempv.append(ord(i))
            c1.append(c)
            c=c+1
 
        wlocal_cur.execute("INSERT INTO serial2(data,ndata,hour) VALUES(%s,%s,%s);",
        ([tempv],[c1],ahora))
        wlocal_conn.commit() # para guardar cambios en la db    
        tempv=c1=[]
 
 
 
# ... do something ...
 
pr.disable()
s = StringIO.StringIO()
sortby = 'cumulative'
ps = pstats.Stats(pr, stream=s).sort_stats(sortby)
ps.print_stats()
print s.getvalue()
puertoserial.close()


Saludos y gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Problema al leer archivos por puerto serial

Publicado por MineTubeYT (21 intervenciones) el 20/10/2014 19:22:46
Creo que en este foro no te van a poder ayudar, deberias buscarlo en un foro especifico de raspberry pi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar