一段时间后,从Myo接收数据停止

时间:2017-05-22 13:08:17

标签: python myo

我正在使用此(https://github.com/dzhu/myo-raw)项目将Myo Armband连接到我的PC(在Windows上运行)并接收原始EMG数据。我有两个与此相关的问题:

1)数据接收速度极慢,但作者已对此发出警告。看来,关闭除EMG之外的所有内容都会加快接收数据的速度,但有没有办法加快速度呢?顺便说一下,Linux上的一切都很好;

2)数据接收在一段时间后崩溃。我注意到,当我试图做出“强壮”的手势,比如握拳,右手向右移动时,它通常会崩溃。我没有解释,因为在Linux下一切正常。

我在这里问我的问题,因为GitHub页面似乎已经死了。

2 个答案:

答案 0 :(得分:0)

对于#1,您可以尝试使用official Bluetooth protocol而不是myo-raw,因为该库早于官方标题的发布。不确定这是否会让你获得更好的结果,但这是一个选择。

#2的唯一基于Myo的原因可能是Myo因缺乏运动而入睡,但考虑到您正在做手势,我认为并非如此。我会仔细检查myo-raw(例如open PRs)和你的代码,看看是否有什么不妥。

答案 1 :(得分:0)

所以,问题是如此微不足道,而不是我几个小时都在责备自己。将n = self.ser.inWaiting()print(n)添加到BT.recv_packet()后,我注意到n呈指数级增长,直到达到12千字节,然后连接停止。添加这个:

        ret = self.proc_byte(ord(c))
        if ret:
            if n >= 100:
                self.ser.flushInput()

解决了这个问题。