(华南师范大学 物理与电信工程学院,广州 510006)
2011年,世界卫生组织(World Health Organi- zation)和世界银行(The World Bank)在《世界残疾报告》中指出,由于年龄增长、道路交通意外等其他因素造成的肢体残疾人数量在持续增长[1]。由于基于单通道信号控制的智能轮椅存在指令识别率低、控制响应时间较长等问题[2],近年来不少研究人员融合多种控制信号,针对肢体残疾人的自主控制,提出了多种智能轮椅的控制策略。2016年Geonhee Lee等提出了一种融合肌电和头部姿态信号的轮椅控制系统,大幅提高识别的准确率,使控制成功率提升至90%以上[3]。同年,来自日本的研究者们提出的一种适用于轮椅的融合控制方法,将多种生理信号如眼电、脑电、肌电和头部姿态进行组合控制测试,其中3种融合控制方法成功率在93%以上[2]。
目前,基于多信号融合控制的智能轮椅大大提高了控制指令的识别准确率,但由于缺乏对实际使用时安全性和舒适性的考虑,大部分此类智能轮椅仍停留在实验阶段,未能投入商用[4]。本文控制方法主要解决的问题,在于如何能在保证操控性的同时,不限制使用者对周围环境的自由观测,使得人机交互的过程更加自然与流畅,既保证舒适性又需要保证使用者的安全。因此,本文提出的一种基于眼电和头部姿态融合操纵的轮椅控制方法,在保证指令判断的准确性同时,最大程度地满足此类特殊群体对轮椅操纵性、安全性、舒适性的具体要求。
以往传统的眼电控制轮椅,在使用过程中,并不允许使用者对周围环境进行观测,这会产生不适,同时也造成了一定安全隐患。利用眼球向上下左右各方向运动来控制轮椅,该方式可能会引起使用者眼睛的疲劳,且不符合人们日常的导向习惯。因此,在使用者能利用头部姿态的前提下,应当避免使用眼动信号作为轮椅的导向信号。
头部姿态被认为是人类表示方向最自然的一种方式[5]。因此,本文将头部姿态角度的变化作为轮椅运动的导向信号。但使用者在操纵轮椅的同时,有观察周边环境的需要,如果操纵系统误把使用者观察环境的头姿变化认作转向行为,将造成安全隐患。因此,使用头部姿态作为导向,必须要有控制信号来决定该时刻下使用者是否意图轮椅转向。
故本文融合了眼电信号和头部姿态导向信号的优势,弥补两种控制信号各自的不足,提出了一种新式的轮椅控制方法。眨眼信号的优势在于完成起来十分快速且动作轻微、不费力,十分适合用于需频繁使用的确认信号[5]。头部姿态作为导向信号有操纵性好、不易疲劳的优势,但必须限制使用者观察周围环境的需要。因此将眨眼信号作为头部姿态导向信号的控制信号。上下方向的眼动信号则有操作复杂、耗时久的缺点,但其有不容易发生误操作的优势,适合将其作为不常用、功能相对复杂且不允许产生误识别的操作信号,本文将其作为使用者向外界求助、求救的发送信号。
本文提出的新式融合控制方法的具体控制流程如图1所示。操纵的模式分为“控制模式”和“自由控制模式”。连续两次点头动作进入“控制模式”,处在该模式下,头部前倾,轮椅缓慢加速向前运动;头部稍稍后倾便会刹车,且当后倾时长和角度超过某值时,开始倒车;左右各摆头一次,便可以退出“控制模式”。使用者在该模式下的行进过程中,允许左右转动头部,自由观察身边的事物,达到保障特殊群体对舒适性、安全性需要的目的。
在意图转向时,进行一次有意识的眨眼动作,轮椅将接收命令、进入“自由控制模式”,此时使用者的头部将可以控制轮椅进行转向,使用者超过一段时间不转向,将退出自由控制模式。在经由眨眼确认的自由控制模式下,轮椅做出相应左、右转动作。
在任何情况之下,头部后倾角度达10°以上,轮椅马上制动。如果使用者由于身体不适等原因需要发送求救信号,只需眼球向下运动并保持一定时长,系统将通过GSM模块向提前设定好的紧急联系人名单发送若干条求助信息,从而确保使用者的安全。此外,系统还保留了一个功能,在使用者眼球向上运动时触发,留待产品的实际需要使用。
图1 控制流程图
本文设计并实现了一套完整的轮椅控制软硬件系统。具体架构如图2所示,分为头戴护目镜和轮椅控制单元两大部分。
图2 系统架构设计
2.1.1 硬件设计
为采集位于眼睛上下部位的电信号,考虑实用性和美观性的同时,提出了一种新式头戴护目镜装置。
能将所述采集电极隐蔽、牢固地贴合在使用者面部,一方面可以省去采集电极用于粘贴在使用者面部的粘性物质,改善了使用者的佩戴舒适度,让采集电极本身更加适宜重复使用,另一方面减少了外界对采集电极的影响,提升了眼电采集过程的可靠性;再者,以护目镜作为基础框架,确保了控制器的结构强度和耐用度。将3个导电海绵电极缝合到普通护目镜上,如图3所示,利用护目镜的设计巧妙地采集到眼眶处丰富的眼电信号。
此外,护目镜上还嵌入了带数据采集功能及发送功能的电路模块。使用TI公司推出的低功耗、高集成度的模拟前端芯片ADS1293采集眼电信号,ADS1293以其紧凑性、便携性、低功耗性,常被用于生物电势测量;采用BNO-055芯片收集头部姿态变化数据,该芯片内置姿态解算芯片和运动控制库,可直接回送头部三轴欧拉角数据,免去复杂的滤波算法等软件处理流程。选取Nordic公司的无线处理器nRF52832作为头戴部分的数据处理单元。这款芯片支持低功耗蓝牙技术,并集成了32 位的ARM Cortex-M4F CPU和SPI、UART、ADC等多种外设接口[6]。nRF52832可以驱动ADS1293及BNO-055采集前端数据,并将数据通过BLE协议栈无线传输至位于轮椅处的控制单元。
图3 护目镜示意图及眼电采集的电极位置
2.1.2 电极选择
目前,眼电信号采集几乎都使用银/氯化银凝胶电极。导电凝胶在使用过程中会带来诸多不便,使用前一般需要对皮肤进行除毛和去角质层等,费时费力,在长时间使用过程中,随着导电胶的脱水,眼电采集信号的质量会出现失真,并且湿电极的触感较差,一般仅在实验室或专业监测仪器上研究使用。
为了设计出便于穿戴且具有良好导电效果及触感的采集装置,本文选择了一种高性能的导电海绵替代传统电极。导电海绵的使用成本低廉、舒适性高且更加适合循环使用。经过测试,这种材料具有非常柔软的触感,且电阻极低,约为10 kΩ。另外,导电海绵对护目镜镜框还能起到一定的缓冲作用,进一步改善了使用者的使用舒适度,如图3所示。
在基于眼电的人机交互研究中,为尽可能的消除共模信号干扰,一般对眼电采集使用双导联的采集方式。结合护目镜边框与眼部周围的接触位置,本文选择了在右眼上下位置安放电极构成双导联,并在右眼颧骨位置加入了右腿驱动电极,电极位置如图3所示。右腿驱动电极在生物电测量电路中起着不可忽视的作用[6]。由于眼电信号及其微弱,并且人体可以被视为天线,在采集时会受到家用供电噪音的电磁干扰,这种干扰会覆盖掉眼电信号,使有用的信号难以测量。右腿驱动电路的原理是将各路输入信号相加得到共模电压,经内部放大器反相后,将输出电压导入人体形成深度负反馈,从而有效的削弱电磁干扰噪声的影响。
采用树莓派3B+型号作为位于轮椅处的主控单元。负责驱动轮椅上的第二块BNO-055芯片,采集轮椅的姿态角数据;蓝牙接收前端采集的数据,实时处理并进行指令判断,驱动轮椅电机完成相应的操作,以及通过GSM模块发送求救信息。
本文采用的GSM模块为SIM800A。 SIM800A是双频GSM/GPRS、紧凑型、高可靠性的无线模块,其性能稳定,外观小巧,性价比高,能满足客户的多种需求。该模块工作频率为GSM/GPRS 900/1 800 MHz,支持AT指令集接口, 支持文本和PDU模式。同时,SIM800A尺寸为24*24*3 mm,适用于紧凑型产品设计需求,因此十分满足本文轮椅移动装置的设计要求。
位于头戴护目镜的主控,负责将ADS1293采集的原始数据进行预处理,利用小波分析初步提取特征。然后通过蓝牙传输给位于轮椅处的树莓派,依靠树莓派优秀的运算能力和强大的Python工具箱,实现对眼电信号的识别和分类。
3.1.1 预处理及特征提取
本文中使用2016年专注于脑机接口研究(brain-computer interfaces)的BNCI Horizon 2020项目的开源数据集[6]。该数据集包含 257个眼电数据样本,包括以 200Hz进行采样的眼电信号(EOG)。该数据集采用和本文一致的眼电双导联采集方法,收集被测人员在模拟驾驶情况下成功发送指令、成功刹车的过程,与本文实际应用场景相类似。被测人员需要在极短的时间内完成指令,识别过程也必须足够迅速,以应对驾驶中的紧急情况,因此该数据集与本文智能轮椅控制的实际使用情景相关度高。数据集包括3个模块,每个模块测试时长为45分钟,各模块间休息时间为10到15分钟。本文选用上述数据集的训练集中的257个眼电信号作为样本,其中前205个样本作为随机森林算法的训练集,后52个作为测试集。数据集不同眼部动作占比情况如表1所示。
表1 数据集眨眼及眼动各状态占比情况
3.1.2 预处理及特征提取
对原始信号进行的预处理和初步特征提取包括:
1)分帧,将连续的时间序列数据切分为具有一定长度的序列。
2)去除直流,归一化。眼电数据的直流成分为携带的无用信息。
3)db4小波基的小波分解,进行数据的降噪、滤波并初步提取特征。
与传统的FIR滤波器不同,本系统采用了小波变换进行去噪和初步特征提取。小波变换是一种时间-尺度(频率)分析方法,具有时频局部化和多分辨特性,特别适合于处理非平稳信号[7]。本文选取了db4小波基对信号进行了9层分解并对信号进行重构,抑制肌电噪声的干扰,获得0.097 7~6.25 Hz的眼电信号。
眼电信号的预处理过程如图4所示。可以看到,处理后的信号毛刺少,特征明显,十分有利于后续的信号分析。
图4 眼电信号的预处理过程
3.1.3 识别与分类
随机森林算法是基于决策树的组合模型,它的优势在于训练速度快、精度高和抗噪性强等。本文选取功能十分强大的机器学习算法库scikit-learn,将准备好的数据按特征和标签区分,就可实现随机森林多分类模型的构建、预测和性能测试。
我们选取眼电数据的时域统计特征:均值、峰值、斜率峰值,对数据进行处理。每个决策树模型 都有一票投票权来选择最终结果。分类决策公式为:
(1)
其中:I(·)为示性函数,hi(s)是单个决策树归类结果,H(s)表征组合归类结果。导入sklearn的tree包,使用DecisionTreeClassifier对模型进行训练,用graphviz输出建立的决策树,输出结果如图5所示。
图5 决策树可视化结果
头部姿态控制作为一种人机交互方式,为老年人及肢体残疾人士提供了更为灵活的操作方式。目前,头部姿态识别技术可分为两类:一类是基于摄像头的姿态图像识别[8],另一类是基于可穿戴式传感器的姿态识别。基于图像识别的方法识别准确率高,但该方法对于拍摄角度、灯光等环境因素要求较高,且需要经过相应的图像识别算法处理,响应速度较慢。因此本文采用了一种基于角度差的双传感器头部姿态识别方法,利用内置数据融合算法的传感器实时采集头部和轮椅的Yaw(偏航角)、Roll(翻滚角)、Pitch(俯仰角)三轴欧拉角数据[9],根据两者的角度差,可实时判断头部三维姿态变化。具体控制原理如图6所示。
图6 头部姿态控制原理示意图
在轮椅实际的左右转动过程中,传感器输出的Yaw(偏航角)只能从0~360°周期变化,当头部或轮椅经过角度边界时,角度会发生360°突变,如图7所示。此时偏航角的差值将不再是轮椅和头部间实际的角度差,需要人工进行修正处理。突变修正公式为:
AngleYaw=Yaw±360°
(2)
其中:AngleYaw为修正后的数据,Yaw为原始数据。
当角度从360°突变至0°时,需要进行360°补偿修正,从0°突变至360°时需要进行-360°补偿修正。通常当角度发生突变时,实际检测的突变值会小于360°,这是由突变时间过短及硬件采集的延时性造成的。经过测试,设定角度突变检测阈值为250°时,检测效果最佳,检测成功率高达97%。
图7 偏航欧拉角度变化示意图
本文的操纵识别率测试方式通过统计20位被测人员发出指令得到执行的正确次数占比。参与测试的人员随机在室内、室外等各种场合进行5次自由操作测试,测试时长为20分钟。三类指令识别正确率统计结果如表2所示。可见被测人员成功利用眨眼进入自由控制模式的识别率在8成以上。头部姿态的识别率和眼动信号的识别率均在99%以上,且由于头部姿态导向使用了PID算法,操作者能明显感觉到转向过程的逐步平稳,使用流畅、准确度极高。总体识别率取3种指令识别的准确率加权平均值,为92.25%。
表2 操作识别准确率
本文的轮椅舒适性测试方式是:被测人员在完成对轮椅的一系列操作后对其进行体验问卷调查。调查内容包括转向流畅程度、操作延时情况、指令识别出错情况、操作的简单易用程度以及轮椅的安全性评价等。被测人员根据自己的主观感受来确定本次实验实际舒适性,对其赋一个[0,1]的舒适性数值,并且该数值越大表明舒适性越高,高于0.85为“舒适”,低于0.6为“不舒适”,其他则认为是“一般”。
与识别成功率测试类似,参与本方案轮椅人机交互功能测试的人员随机在室内、室外等各种场合进行5次时长为20分钟的自由操作测试。测试结束后,对被测人员进行调查问卷的派发填写,随后收集并整理有效的调查问卷。由于每个测试人员对舒适性的主观感受标准不一样,因此本文选择了“最大,最小”法对数据进行归一化处理[10]。公式为:
fsij=(faij-fnj)/(fmj-fnj)
(3)
其中:j表示第j个测试人员,fsij和faij分别为第j个测试人员在第i次测试中的舒适度数值和归一化数值,fmj和fnj是5次测试中舒适度的最大值和最小值。
取5次归一化实验结果的平均值,作为每一项实验的舒适性测试结果。统计结果如图7所示,参加测试人员认为人机交互体验各个模块操作“舒服”和“一般”所占比例远高于“不舒适”所占的比例,因此,本方案的控制方法舒适性测试合格。
图8 测试结果图
本文提出了一种融合眼电信号以及头部姿态变化进行操纵的智能轮椅控制策略,并实现了一套完整的轮椅控制系统,重点提升轮椅使用的安全性和舒适性。该融合控制策略,为智能轮椅领域在实用性方面提出了一种新思路,同时也易于推广到其他不同控制方式的融合。成功将两种控制方式融合起来,提升用户体验和操控的准确程度。同时,也可以将该控制系统模块化,使其能够轻松改装至现有的摇杆控制电动轮椅,为手脚均不便的残疾人士提供一种轮椅操作系统的升级方案。