Python - 实时从两个串行端口获取数据

时间:2011-02-07 23:52:17

标签: python parsing math gps real-time

我的项目是定向天线,安装在自稳定基座上。我希望使用的语言是python,但如果需要,可以将其更改为更适合的语言。

问题1:

您如何实时接收串行数据 [1] ,然后在python中解析数据?

问题2:

如何将程序的输出发送到安装在基座上的伺服器? (反馈系统)。

[1] (数据传输,处理和输出的最快时间)

1 个答案:

答案 0 :(得分:1)

您可以使用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”格式,这是另一个SO问题,其中包含有关使用Python解析该信息的信息:Parsing GPS receiver output via regex in Python

最后,输出伺服控制数据完全取决于您用于伺服接口的硬件。