【问题标题】:Python - Fetching data from two serial ports in realtimePython - 从两个串口实时获取数据
【发布时间】:2011-06-23 02:55:59
【问题描述】:

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

问题一:

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

问题2:

我怎样才能将程序的输出发送到安装在底座上的伺服系统? (反馈系统)。

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

【问题讨论】:

  • 伺服系统使用什么硬件,它们是如何与计算机连接的?
  • 尽管我很喜欢 Python,但我不确定我是否认为它适合实时编程。
  • @Payne 我将使用 PIC 微控制器并通过插入 USB 的 FTDI 串行转换器连接它,从而形成“虚拟 COM 端口”
  • @Nathan 我同意,但我最熟悉 python 而不是其他编程语言。如果你能帮我将我的代码(上图)嵌入到合适的语言中。将不胜感激。
  • 您将在 PIC 微控制器上使用什么固件/系统来驱动伺服系统?这将决定您如何从主机发送数据以移动伺服系统。

标签: python parsing math gps real-time


【解决方案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

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

【讨论】:

    猜你喜欢
    • 2019-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多