Python - 实时从两个串口获取数据
我的项目是一个方向性天线,安装在一个自稳的底座上。我想用Python来编程,但如果需要的话,也可以换成其他更合适的语言。
问题 1:
我该如何实时接收串口数据[1],然后用Python解析这些数据呢?
问题 2:
接下来,我该如何把程序的输出发送给安装在底座上的伺服电机呢?(反馈系统)
[1](数据传输、处理和输出的最快时间)
1 个回答
2
你可以使用 pyserial
模块来用 Python 读取串口数据。想了解更多,可以查看这个链接: http://pyserial.sourceforge.net/shortintro.html
下面是文档中的一个简单使用示例:
>>> ser = serial.Serial('/dev/ttyS1', 19200, timeout=1)
>>> x = ser.read() # read one byte
>>> s = ser.read(10) # read up to ten bytes (timeout)
>>> line = ser.readline() # read a '\n' terminated line
>>> ser.close()
接下来,你需要解析 GPS 数据。大多数设备支持 "NMEA 0183" 格式,另外还有一个 StackOverflow 的问题,里面有关于如何用 Python 解析这个格式的信息: 用正则表达式解析 GPS 接收器输出
最后,输出数据以控制伺服电机的方式完全取决于你所使用的伺服接口硬件。