【发布时间】:2020-02-05 14:15:43
【问题描述】:
我正在开发一个在 Python GUI 上显示传感器数据的项目。传感器数据在使用 Arduino 的串行端口上以2kHz 的速率出现。我正在使用 pyserial(使用 readline())读取笔记本电脑上的传感器数据。经过数小时的调试,我发现 python 能够读取大约 400 个样本/秒,即读取频率约为 400Hz。
有没有办法借助python以更高的速率读取串行数据?
提前致谢。
【问题讨论】:
我正在开发一个在 Python GUI 上显示传感器数据的项目。传感器数据在使用 Arduino 的串行端口上以2kHz 的速率出现。我正在使用 pyserial(使用 readline())读取笔记本电脑上的传感器数据。经过数小时的调试,我发现 python 能够读取大约 400 个样本/秒,即读取频率约为 400Hz。
有没有办法借助python以更高的速率读取串行数据?
提前致谢。
【问题讨论】:
假设传感器设计用于传输 2kHz 数据并且做得正确,我的猜测是您的 Python 代码读取数据样本、处理数据、更新绘图等所花费的时间是限制因素。您是否一次阅读和处理一个样本?有没有一种聪明的方法来读取大块中的所有可用数据,从而减少单个读取/处理步骤的数量?
您是否在“实时”绘制数据?如果是这样,情节更新很慢。
【讨论】: