基于TGAM的意念控制无人机系统

2019-07-16 03:14张志远陈珂李晶晶
电脑知识与技术 2019年15期
关键词:信号处理

张志远 陈珂 李晶晶

摘要:设计出了一款基于TGAM脑电传感器的无人机控制系统,通过对TGAM传感器数据的提取、传输、滤波、特征提取等方式,将人脑的精神状况转化为可对系统进行操作是实用输入信号,实现了对无人机油门和方向等基本操作的控制。该系统具有通用性,可扩展应用到各种无线控制领域。

关键词:TGAM模块;无人机控制;脑电波分析;信号处理;STM32

中图分类号:TP311        文献标识码:A

文章编号:1009-3044(2019)15-0286-03

1 引言

脑机接口的研究最早起源于19世纪60年代,到21世纪,迎来了研究的热潮。它是一种基于脑电信号实现人机交互的新型控制方式,可以简化现有的控制系统。该技术,在医疗,游戏,教育以及通讯控制等多个领域都可以有重要的应用。

本项目中,利用美国神念科技有限公司推出的传感TGAM,实时检测大脑前额发出的微弱的脑电波信号(电压信号)。检测对象的情绪状况不同,发出的脑电波信号也会相应改变。利用该信号来控制无人机的起飞降落等基本动作,实现了比较好的调控效果。

2 系统的基本构成

整个系统由干电极、TGAM模块、蓝牙、基于STM32的飞行控制器、基于NRF24L01 +的无线通信电路、基于NRF51822的无线通信模块,基于STM32的无人机系统等部分组成。本系统针对无人机控制系统结构中飞行控制器这一设备不易操作的特点,初步开发了一款集脑电波信号发送、接收、信号处理及无人机控制的系统。考虑到蓝牙设备的发送距离有限,因此借用了原有飞行控制器的无线收发模块进行远距离信号传输。其系统框图1所示,利TGAM采集大脑前额脑电波电压信号,经蓝牙HC-05传输到飞行控制器上的蓝牙HC-06,经过飞行控制器的NRF24L01 +的无线通信电路,将信号传输到无人机上的NRF51822,至此信号传输完毕。再由无人机上的STM32F103对原始电压信号进行数据处理,利用处理完的数据对无人机进行控制,实现了人脑对无人机的无线控制。

3 控制系统软硬件设计

TGAM芯片必须将干电极贴近在大脑前额处,两个参考电极放置在左耳乳突出和右耳乳突出,才能构成电势差,并通过计算参考电势来消除一定的干扰。在不连接参考电极时进行脑电采集,电压信号变化剧烈以致芯片无法处理信号。通过设置双面电极耳夹,整体体积小巧,调整和操作极为方便,可以基本达到要求。

信号的传输选用两个蓝牙模块,考虑道飞行器与人相距较远,而利用了飞行控制器上的NRF24L01 +发送模块,和无人机上的NRF51822无线接收模块。从而将TGAM数据包传输到飞行器的STM32F103芯片上。

图1即是该系统的主要设备。

STM32可以对原始数据进行归一化处理和滤波处理,将其转化成飞行器的控制的输入信号。飞行器通过pwm输出,经多层pid反馈计算来实现准确控制各路电机的转速。本项目将输入信号转化成为pwm输出信号,实现对飞行器高度的和方向的控制。

4 脑电波采集和处理

4.1 脑电波的采集

脑电模块 TGAM 检测出来的信号,是经过电路放大处理的电压信号。使用干电极读取人的脑电信号,可以过滤掉周围噪音的部分干扰,并将检测到的大脑信号转成数字信号。经过TGAM芯片处理的输出原始数据rawdata与前额皮肤电压v满足:[rawdata=2000×4096×V1.8]。TGAM大约每秒钟发送 513个数据包,经过对每个数据包的计算,校验,对第513个数据包进行解析、分类处理,可以将繁杂的脑电波转化为信號强度、放松度、专注度三个数值以及8个 EEG Power 的值。本项目只取其中的专注度和信号强度进行研究,专注度大小用 1 ~ 100 表示 , 数值越大表示进入集中程度越深。信号强度大小用1 ~ 200 表示 , 数值越小表示进入相应程度越深。未佩戴时,专注度信号为0,信号强度为200。图2显示了1分钟内测试对象在不同状态下的脑波数据结果。

4.2 脑电波的解析

TGAM数据包是以异步的串行字节流发送的,可以经过蓝牙HC-05进行传输。TGAM发送的包有小包和大包两种小包的格式是[AA AA 04 80 02 xxHigh xxLow xxCheckSum,]前面的[AA AA 04 80 02]是不变的,后三个字节是变化的,[xxHighxxLow]和组成了原始数据[rawdata],[xxCheckSum]就是校验和。所以一个小包里面只包含了一个有用的数据,那就是rawdata,大约每秒钟会有512个原始数据。其中:

[rawdata = (xxHigh << 8) | xxLow?         ]

[ if(rawdata > 32768)]

[                       { ]

[rawdata ?=65536?  ]

[                        }]

[sum = ((0x80 + 0x02 + xxHigh +]

[ xxLow)^ 0xFFFFFFFF)  0xFF;]

如果sum 和 xxCheckSum 是相等的,那说明这个包是正确的。在第513个大包里包含了信号强度 Signal, 专注度 Attention, 冥想度Meditation, 和 8 个 EEG Power 的值,需要根据通信协议进行层层校验和并进行一系列计算,最终读取数据。

4.3 脑电波的处理

通过编程解析转换数据,可以使其控制飞行器的起飞和降落。专注度越高,飞行器的油门越大,飞行器飞的高度越高。为了确定油门的最低值,经过一系列测试,其中图3测试表明最低专注度为20左右。因此在专注度小于等于20时,油门设为0。下表为专注度与油门的等级划分:

[专注度 油门THRUST(0~100) <=20 0 20~30 25 30~40 35 40~50 45 50~60 55 >=60 60 ]

飞行器具有定高飞行的功能,因此一定的油门对应相应的飞行高度,为了保证飞行器的安全,因此将最高油门设为60。

由于一秒钟可以采集513个信号强度,但只能采集1个专注度和冥想度,因此数据变化会比较缓慢,而值与值的差异会相对比较大。此外,经过测验,专注度无论如何都无法达到100,并且都低于90,通过归一化处理,将0到90的值限制在到0~100当中。在归一化之前需要进行滤波处理,每次采集10个值,存入数组C[10],经过冒泡排序去掉两个最低值,去掉两个最高值,剩余6个值取平均,如此一来一分钟只能取36个值在0~100的专注度。因此控制的精度具有一定的局限性,但提供了一种比较合理的新型控制方式。

通过实验,可以看出脑电信号的强弱程度能够用专注度和冥想度数值来体现,当专注度数值增大的时候,大脑注意力处于慢慢集中状态,脑电信号较强;反之,脑电信号较弱。冥想度正好与脑电信号相反,当冥想度数值增大的时候,脑电信号较弱;冥想度数值减小的时候,脑电信号较强,因为此时大脑处于兴奋、紧张状态,安静程度较弱。因此可以利用大脑状态与专注度和冥想度之间的对应关系进行编程应用。

实验中还发现,眨眼的时候,原始数据rawdata会发生剧烈的波动,如图3所示。因此,可以利用前后数值的误差进行波动比较,波动误差超过一定值,表明人物发生眨眼动作。在该思想指导下,利用眨眼信号进行无人机向前飞和向后飞的控制。眨眼一次,改变一次飞行状态。其控制流程图如图4所示,实验取得了良好的效果。

此外,利用该方法进行灯泡的亮灭控制,呼吸灯的亮度控制,智能小車的速度控制等都取得了良好的调控效果,实验证明,该方法可以应用到多种连续性控制领域。并且选用更高的精度脑电提取芯片,其控制效果会更加好。

5 总结

本文介绍了基于TGAM的意念控制无人机系统,利用TGAM模块提取出来的专注度和冥想度和原始数据rawdata进行了实验研究,并取得了良好的控制效果,但是由于芯片本身的性能,使控制具有一定的局限性。此外这种控制系统具有很强的通用性,可以应用到各种无线控制领域。而脑电芯片可以提取的脑波有很多,对其他脑波的进一步研究,对于更加复杂的控制系统具有重要意义!

参考文献:

[1] 岳敬伟,葛瑜,周宗潭,等.脑机接口系统中的交互技术[J].计算机测量与控制,2008,16(08):1180-1183.

[2] 纪建伟.基于EEG能量解码的机械手控制方法研究[D].沈阳工业大学,2017.

[3] 王佳威.脑电波信号的处理方法和应用[D].北京邮电大学,2012.

[4] 封顺天.可穿戴设备的发展现状及趋势[J].通讯技术,2013(3).

[5] 白冬梅.脑电信号的特征分析和特征提取[D].大连理工大学,2006.

【通联编辑:代影】

猜你喜欢
信号处理
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会