在不同设备上的2个python程序之间传输数据

时间:2019-03-03 20:04:40

标签: python-3.x raspberry-pi ubuntu-18.04

我正在研究一个使用EEG耳机控制无人机的项目。 EEG耳机连接到我的笔记本电脑[runnig ubuntu 18.04],无人机连接到树莓派[raspbian]。

用于在笔记本电脑上处理EEG数据的代码以及用于控制无人机的代码是在python 3.6上编写的,并且可以正常工作。

设置:

EEG头戴式耳机[neurosky mindwave mobile 2]和无人机[parrot mambo]都使用BLE [低功耗蓝牙]与设备连接。由于它们都使用蓝牙,因此很难使用单个代码和便携式计算机同时向这两个设备发送和接收数据,因为它们需要连续的不间断连接和高数据速率。因此,EEG耳机通过BLE连接到笔记本电脑,而类似的无人机则连接到树莓派3b +。笔记本电脑负责处理EEG信号并确定所需的命令,而树莓派则充当无人机的无线控制器。 system setup

我需要在这两个代码[和设备]之间传递值,以便使用EEG信号控制无人机。例如,如果要在处理信号后使无人机前进,则需要从笔记本电脑向树莓派发送“ 1”或“ f”。

以太网电缆或USB等有线连接优于无线方法。

数据大小和速率非常小,因为单个字符就足够了,并且每隔几秒钟仅发送一次。

哪种是实现这种交流的最佳方法

1 个答案:

答案 0 :(得分:0)

使用kafka0mq将笔记本电脑的发送方与rasp pi接收方松散耦合。 如果其中一个重新启动,没关系,另一个将继续插电。 在kafka的情况下,您将能够在调整和测试rasp pi客户端代码时一次又一次地重放笔记本电脑发布者会话。