基于MYO的无线肌电控制鼠标

2018-08-30 08:52傅桢茵陆通归丽佳陈铁梅嵇晓强
关键词:肌电陀螺仪电信号

傅桢茵,陆通,归丽佳,陈铁梅,嵇晓强

(长春理工大学 生命科学技术学院,长春 130022)

据卫计委调查显示,2017年我国肢体残疾人口达到2400万人,数量极其庞大。大部分的上肢残疾者生活自理问题严重,尤其是在操作计算机方面受到极大限制,无法正常使用鼠标和键盘,工作和生活极大不便[1]。目前,大多数残疾人辅助设备仅能满足残疾人的行走、移动等基本生活保障,无法满足上肢残疾人电脑操作的需求。因此,为上肢残疾人设计一款基于肌电信号控制的智能鼠标有很高的实用价值和重要的社会意义。

现有的肌电控制设备多为肌电控制假肢,例如复旦大学医学院贾晓枫等[2]于2004年实现的中国首例采集残肢神经电信号用于控制假肢模拟装置,实验验证桡神经电信号控制的假肢能够控制假肢手指的伸指动作。但神经性假肢会对使用者造成皮肤刺激,结构复杂,研发价格昂贵,如果仅仅用于鼠标控制,则性价比太低。而且,目前现有的神经电信号控制的假肢只能实现抓握功能,无法灵活的操控鼠标。gForce肌电手势识别腕带[3],可以通过肌电电信号与手势结合对智能设备进行控制。虽然集成度比较高,但需要手势多样变化,难以为缺失手指的上肢残疾人所使用。由河北工业大学刘洋[4]所设计的上肢残疾人头戴式专用鼠标,使用咬牙动作时颞肌的表面肌电信号来区分鼠标模式,其优点在于适用于所有上肢残疾人群,尤其是高位截瘫患者,但在单方向咬牙时,较难保证另一方向的颞肌处于非用力状态,所以控制精度较难保障,且系统功耗高,头部佩戴舒适度低。

本文关注上肢残疾人的生活以及工作辅助,根据生活中常见的电脑鼠标控制的需要[5],设计了无线肌电控制鼠标,主要采集上臂肱二头肌信号进行鼠标左键、右键和拖动等多种模式的识别与控制,用力与非用力状态区分容易,误判率低。同时采用自主设计的集成模块(集成了蓝牙、微控制器、陀螺仪模块),较头戴式残疾人鼠标体积更小,功耗更低,更易佩戴。

1 无线肌电控制鼠标硬件系统设计

1.1 硬件系统设计总体方案

本文所设计的肌电控制鼠标硬件系统由肌电采集模块、蓝牙模块、微处理器及陀螺仪模块组成。无线肌电控制鼠标借助了上肢运动肌电信号图的变化进行设计。肌电信号通过采集模块进行模拟放大、滤波等处理,再经微控制器进行模数转换,产生用于鼠标控制的数字肌电信号,同时陀螺仪模块发送实时的位置变化信息给微控制器,微控制器综合肌电信号与手臂位置信息,确定鼠标模式,并通过蓝牙将微控制器输出信号传输进电脑,控制光标,实现鼠标功能。硬件系统设流程如图1所示。

图1 系统硬件原理框图

1.2 肌电采集模块MYO

肌电信号作为先进肌电假体的控制源具有很大的潜力,且有多项性能指标可作为量化基础[6]。由于表面肌电信号的幅值较为微弱,只有微伏级,范围一般为0~5000μV,肢体残疾者的肌电信号更加微弱[7]。同时,肌电信号中还夹杂着各种噪声干扰,所以准确提取肌电信号是系统设计的关键[4]。

为精确提取肌电信号,本文采用MYO作为肌电采集模块,其通过电势测量肌肉活动。MYO内置ADI芯片AD8221,可将肌电传感器信号进行可调放大、测量滤波,输出电压大小取决于所选肌肉的活动量大小。采用3.3V到5V电压供电,工作电流9mA,同时带有数据储存功能。MYO既可以输出原始信号也可以输出经放大整流并积分的EMG脉冲信号[8]。由于所使用的MYO肌电传感器采集效果较为理想,原始肌电信号已经在MYO肌电传感器中进行了整流,所以在采集完成后无需再进行去噪处理。本文将MYO输出信号连到微处理器AD输入引脚进行AD转换,再根据肌电信号特征与位置信息实现按键功能控制。肌电采集模块MYO如图2所示。

图2 肌电采集模块实物图

1.3 蓝牙模块

肌电鼠标可通过蓝牙模块实现与上位机的通信,本文采用的是HC05-V11高性能主从一体蓝牙串口模块。它可以同各种带蓝牙功能的电脑、主机、手机等智能终端配对,该模块支持非常宽的波特率范围(4800~1382400),并且模块兼容5V或3.3V单机系统,可以很方便与肌电信号采集模块进行连接[9]。

蓝牙模块与单片机连接只需要4根线即可:VCC、GND、TXD、RXD,VCC和GND用于给模块供电,TXD和RXD则直接连接单片机的RXD和TXD即可。蓝牙模块与stm32最小系统接口连接如图3所示。

图3 蓝牙模块与stm32最小系统连接图

1.4 陀螺仪模块

MPU-6050陀螺仪主要用以获取光标的位置数据,实现鼠标移动控制。MPU-6050是全球首例9轴运动处理传感器[10]。它集成了3轴MEMS陀螺仪和加速度计,以及一个可扩展的数字运动处理器DMP。扩展之后可以通过其I2C或SPI接口输出一个9轴的信号。MPU-6050对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。

在无线肌电控制鼠标中,MPU-6050设定手臂所处的坐标轴上的角速度信息,通过程序算出手臂的移动方向及距离,将手臂的三维移动转化为光标的二维移动数据,最后通过无线模块发送给电脑接收端,实现光标的控制。

MPU-6050陀螺仪与单片机采用相同电压-3.3V,陀螺仪模块的数据线SDA连接单片机PB7引脚,时钟控制线SCL连接单片机PB6引脚。陀螺仪模块与stm32最小系统接口连接如图4所示。

图4 陀螺仪与stm32最小系统连接电路图

1.5 微控制器模块

无线肌电控制鼠标采用stm32处理器作为系统控制的核心,用于实现肌电信号模式判别和位置信息读取。相比于51单片机,stm32具有更多外设接口和性能优秀的片上外设,内部使用大量寄存器[11],指令执行速度更快,寻址灵活简单,执行效率更高,低功耗、性价比高、灵活的时钟控制机制,满足鼠标需要实时反馈的特性。stm32内部自带ADC转换精度高达12位,采集频率快,可将采集到肌电信号进行模数转换,无需外加A/D转换电路,避免了信号传输中的多种外部干扰,同时也简化了设计电路。系统硬件电路图如图5所示。

图5 系统硬件电路图

2 无线肌电控制鼠标软件系统设计

2.1 软件系统整体方案

无线肌电控制鼠标的软件设计包括三部分:一是对肌电传感器的输出信号进行特征提取,实现鼠标模式分类;二是实现陀螺仪光标控制;三是实现蓝牙通信。

软件采用Keil5进行模块化编程,通过stm32程序设计,实现陀螺仪模块与肌电采集分析模块的一体化,整合用力状态及位置信息,来判断无线肌电控制鼠标所处状态。由于MYO输出的是经放大整流并积分后的EMG脉冲信号,且在MYO内部已经进行了信号的去噪、滤波处理,所以软件可直接将已调制好的肌电脉冲信号连接到微控制器AD输入引脚进行AD转换。

微控制器进行肌电信号的特征提取,通过分析肌电信号在设定时间内的波形变化,再结合陀螺仪运动状况,来判断鼠标所处的模式。例如肌电信号变化阈值在1.5V以下,同时陀螺仪有移动信号发出时为单纯移动模式,此时陀螺仪通过读取其中X和Z轴上的角速度值,处理成二维数据,再将数据由蓝牙发送给电脑接收端,从而实现光标控制。

鼠标控制模式由三个条件判断,分别为用力状态、用力时间和移动状态。在非用力条件下,手臂移动则为移动状态,手臂静止则为静止状态;在用力且手臂静止条件下,短时间用力为右键点击,长时间用力为左键点击;在用力且手臂移动条件下,长时间用力为左键点击拖动。软件实现流程图如图6所示。

图6 程序流程图

2.2 肌电信号模式分类

肌电信号模式分类是无线肌电控制鼠标的首要问题和关键所在[12]。通过手臂不同活动状态下肌电信号的强度及变化速度的分析,得出光标控制的几种模式:左键、右键、点击拖动等。

图7 肌电信号特征提取流程框图

图7给出了肌电信号特征提取流程框图,首先获取在不同情况时的肌电传感器输出波形,分为以下三种情况:手臂移动、短暂用力、长时间用力。

在移动手臂时,会产生随机的肌电信号[13],此时肌电信号会出现短时间的平滑小波峰,但因其波峰峰值也能超过基准值,所以需要排除这部分非用力肌电信号带来的干扰。

非用力状态下肌电信号的波动相对平滑,可以与用力状态下的峰值段的剧烈抖动进行区别,从而去除非用力状态下可能导致的误判,提升鼠标操作的精确度。

短暂用力时的肌电信号幅值高且峰值段出现多个波峰,可提取这段肌电信号的特征实现点击按键功能。

持续用力时的肌电信号幅值持续偏高,且出现抖动波形,出现多个尖峰,可提取这段肌电信号的特征实现按键拖动功能。

结合肌电信号的不同状态即:移动、短暂用力、长时间用力三种模式,以及手臂用力时肌电信号波动的幅值,分析出用力时肌电信号幅值高度,得出一个基准值,根据基准值初步判断是否用力。考虑到手臂移动时的幅值也会增高,所以当AD转换后的数值大于基准值并出现峰值时便开始计数,在设定时间内通过峰值数进行按键功能区分。这个基准值需要多次实际测量校准,使得计数值能够在三个范围内准确判断出属于哪一种按键功能[14]。肌电信号用力模式流程如图8所示。

图8 肌电信号用力模式判断流程

3 实验结果与分析

为了验证无线肌电控制鼠标的准确性和灵敏性,本文做了大量的实际测试实验。将信号采集装置安置在上臂肱二头肌两侧部位,电脑端接入蓝牙适配器进行信号接收。采用握力计实际测试手臂用力程度,首先进行非用力状态下手臂的移动测试,获得的肌电信号如图9所示。

图9 非用力手臂移动肌电图

此时肌电信号相对平滑,与用力状态时锯齿状抖动形成对比。

手臂进行短暂用力测试时所获得的肌电信号波形如图10所示,此时出现明显的短暂波峰,且幅值较高,在波峰段有明显锯齿状抖动。

图10 单次用力手臂肌电图

完成单次用力后电脑光标显示为右键点击状态(如图11所示)。

图11 实际操作单击右键

持续用力时所获得的肌电信号如图12所示,此时波形显示有持续高峰,在高峰段有与短暂用力相同的锯齿状抖动波形。

图12 持续用力手臂肌电图

此时电脑光标显示为左键单次点击,如图13所示。

图13 实际操作单击左键

持续用力并移动肌电信号波形图与持续用力时相似,但光标显示为点击拖动状态,如图14所示。

通过实测结果表明:完成非用力状态移动、持续用力、用力移动等不同动作后,在电脑上分别显示了光标对应的操作,符合预先设计目标,在点击拖动操作中,移动较小的距离就能达到图14显示的操作结果,精确度较高。同时,使用的握力计读值为3~6kg,证明无线肌电控制鼠标使用较小的力就能完成操作,适合上肢残疾人群使用。

图14 实际操作点击拖动

4 结论

无线肌电控制鼠标在上肢残疾人对电脑控制方面有着重要作用。本文针对上肢残疾人使用电脑困难,以及目前市场缺少价格亲民的手部辅助装置的现状,设计了无线肌电控制鼠标,实现了无线肌电控制鼠标基本控制功能。

相比于现有的肌电相关的信号控制仪器,本文所述的无线肌电控制鼠标优势在于只根据用力状况与移动状况就能判断所处模式,能基本满足了上肢残疾患者的生活工作需要,且具有小型化、智能化及可扩展功能,作为残疾人辅助设备局限性小,被控对象将来可实现与假肢、智能家居、VR等复杂被控对象关联,进行不同肌电信号与不同动作的匹配,实现实景操作,未来发展前景十分广阔。

目前完成的无线肌电控制鼠标适用于大部分上肢残疾患者,但因个体肌电强度差异性,可能会影响无线肌电控制鼠标的使用效果。如何提高设备的普适性是今后研究的方向。另一方面,如何提高无线肌电控制鼠标的精确度,使微控制器能够通过肌电波形,即锯齿状抖动状态与平滑状态,精确分析不同强度用力状态,最大限度的增加判断的可靠性与精确性,同样是今后研究的方向。

猜你喜欢
肌电陀螺仪电信号
盆底肌电刺激联合盆底肌训练治疗自然分娩后压力性尿失禁的临床观察
产后早期联合应用盆底肌电生物反馈仪、电刺激、针对性护理对盆底肌功能恢复的影响
基于联合聚类分析的单通道腹部心电信号的胎心率提取
基于EMD的MEMS陀螺仪随机漂移分析方法
基于Code Composer Studio3.3完成对心电信号的去噪
我国著名陀螺仪专家——林士谔
基于随机森林的航天器电信号多分类识别方法
微机械陀螺仪概述和发展
MEMS三轴陀螺仪中不匹配干扰抑制方法
经皮神经肌电刺激治疗上肢周围神经损伤的疗效