Pyserial

Esta semana estuve jugando con python para interrogar mediante puerto serie dispositivos.

La verdad es que resultó mucho más sencillo de lo que pensaba, algo de complicación a la hora de interpretar las constantes de ascii para el group separator (GS).

La interrogación es tan sencilla como hacer:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
    import sys
    import serial

    try:
        ser = serial.Serial(port='/dev/ttyS0', baudrate=9600, bytesize=serial.EIGHTBITS, timeout=1, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, xonxoff=1,rtscts=0)
    except:
        print "Fallo al abrir el dispositivo"
        sys.exit(-1)


    ser.write("Hola")
    respuesta=ser.readline()
    string="%s" % (chr(26))
    ser.write(string)
    ser.close()

Jugando un poco con los requisitos, podemos hablar el lenguaje del dispositivo que tengamos conectado o empezar con los ejemplos de terminal, etc que acompañan a pyserial (terminales, etc)

A partir de aquí, es cuestión de coger la referencia técnica del dispositivo a interrogar y ponernos a ello.

Nota: Si quieres cambiar la velocidad, lo puedes hacer de forma dinámica haciendo:

1
   ser.baudrate=19200

Like this post? Share on: TwitterFacebookEmail


Pablo Iranzo Gómez Avatar Pablo Iranzo Gómez opensource enthusiast and Lego fan doing some python simple programs like @redken_bot in telegram, etc
Comments

comments powered by Disqus

Keep Reading


Published

Category

tech

Tags

Stay in Touch