基于Open-BCI头部信号的小车运动控制实现

前期准备
硬件
OpenBCI相关设备

1.OpenBCI是个面向脑机接口EEG信号采集的开源硬件。OpenBCI Cyton是一个Arduino兼容的带有8通道神经接口和一个32位处理器开发板。
基于Open-BCI头部信号的小车运动控制实现
2.基于Arduino单片机的可编程小车
基于Open-BCI头部信号的小车运动控制实现
软件
OpenBCI_GUI
OpenBCI_Python
Arduino 软件(IDE)

一、理论知识
脑机接口

脑机接口从定义上说就是如何使用头部信号与外部机械进行直接交互的一项技术,并且对脑机接口的相关研究已经超过40年了。从上个世纪以来,人们不断地从各类试验之中总结经验,对此相关的知识逐渐积累,并且以多年在动物身上的试验结果中总结的方法,把一些相关的植入性设备进行人体植入,主要用于恢复已经受伤的感觉器官,如眼睛,耳朵和运动肢体等。
基于Open-BCI头部信号的小车运动控制实现
脑电信号采集设备
侵入式脑机接口
侵入式脑机接口主要用于重建特殊感觉(例如视觉)以及瘫痪病人的运动功能。此类脑机接口通常直接植入到大脑的灰质,因而所获取的神经信号的质量比较高。但其缺点是容易引发免疫反应和愈伤组织(疤),进而导致信号质量的衰退甚至消失。

非侵入式脑机接口

优点:非入侵式脑机接口具有良好的时间分辨率、易用性、便携性和相对低廉的价格。

缺点:虽然这种非侵入式的设备方便佩戴于人体,但是由于颅骨对信号的衰减作用和对神经元发出的电磁波的分散和模糊效应,记录到信号的分辨率并不高。这种信号波仍可被检测到,但很难确定发出信号的脑区或者相关的单个神经元的放电。存在较低的信噪比和空间分辨率等问题。

二、研究方法与思路
(一)系统设计

连接

系统启动时,上位机与下位机通过WiFi建立通信连接,采集设备通过蓝牙建立通信连接。

传输

USB Dongle接收实时脑电信号,将其传输到电脑上。

处理

PC端将接收到的实时数据,进行处理工作。

识别

系统将处理后的数据,进行信号识别工作,并将结果传输给下位机。

控制

下位机接收上位机的控制指令后,对小车运动状态进行实时控制。
基于Open-BCI头部信号的小车运动控制实现
(二)机器小车
连接

下位机与上位机之间通过WiFi建立通信连接。

启动

通过串口读取来自上位机的控制指令,并且将第一个左转信号视为启动信号。

行进

启动后,小车向前行进,并且实时检测串口信号。

控制

根据控制命令,控制小车左转或右转后,继续行进。
基于Open-BCI头部信号的小车运动控制实现
(三)信号预处理
时间片数据

将每秒钟的250个数据封装成一段。

去基线漂移

数字信号中会含有基线干扰信号(低频噪音),会对信号分析产生不利影响。需要通过预处理消除信号基线

陷波滤波

在我国采用的是50 Hz频率的交流电,所以在平时需要对信号进行采集处理和分析时,常会存在50 Hz的工频干扰。

带通滤波

经过多次试验发现,选取在7-13Hz范围的波形信号最为明显。
基于Open-BCI头部信号的小车运动控制实现
(四)信号识别
1.保持睁眼时

基于Open-BCI头部信号的小车运动控制实现
2.单次眨眼
基于Open-BCI头部信号的小车运动控制实现
3.两次眨眼
基于Open-BCI头部信号的小车运动控制实现
三、测试
(一)OpenBCI眼电验证

1.设置过滤噪声开关-Notch(与交流电相关,大陆地区为50 Hz)
2.设置合适的标尺-VertScale(正常设置为200~1000,具体根据实际测量数据大小自由调整)
3.关闭不使用的通道(防止影响使用中的通道的数据观察)
4.保持皮肤干爽(建议粘贴脑电极前使用洁面膏等清洗脸部,并擦干保持干燥)
5.使用黏性较强的胶带粘贴
6.通过对比(a)(b)©(d)可知,带通滤波器的选择在7-13Hz时,波形最为容易分析,所以在信号处理系统设计中,带通滤波器的频带剪切频率f1选择为7Hz和剪切频率f2选择为13Hz。
基于Open-BCI头部信号的小车运动控制实现
(二)机器小车测试
将小车运行测试代码烧写入小车中如下图所示
基于Open-BCI头部信号的小车运动控制实现
当小车从串口接收到第一个左转指令时,将其视为启动命令,控制小车前进,其后不断从串口缓冲区读取命令,当读取到字符l时控制小车左转,并输出left,当读取到字符r时控制小车右转,并输出right。测试结果如下图所示。

基于Open-BCI头部信号的小车运动控制实现

(三)信号处理系统测试
基于Open-BCI头部信号的小车运动控制实现
信号处理系统运行如上图所示,首先各设备之间建立连接,然后读取EEG数据,先对其进行信号预处理,再进行信号识别。测试结果如下图所示,设备连接正常,数据传输正常,信号处理系统运行正常。
基于Open-BCI头部信号的小车运动控制实现
四、建议及总结
1.改进方法,减少系统误差,减少控制时延。
2.开源硬件成本低廉,开发方便。
3.该系统适用性强,经过适当改造可以控制其他设备。
4.对于特定人群例如残疾人、聋哑人的应用前景更为广阔。