一种便携式表面肌电采集系统设计

2018-10-19 03:50冀孟杰李晓欧
软件 2018年9期
关键词:肌电电信号电路

冀孟杰,李晓欧



一种便携式表面肌电采集系统设计

冀孟杰1,李晓欧2

(1. 上海理工大学医疗器械与食品学院,上海 200093;2. 上海健康医学院医疗器械学院,上海 201318)

为有效提高表面肌电采集系统的便携性,设计了一种新型的便携式表面肌电采集系统。该系统的硬件系统由前置放大电路、滤波电路、电平抬高电路等组成,软件系统则是利用C#和MATLAB混合编程对肌电信号进行实时显示和预处理。利用该系统采集肌电信号,并选择基于模糊熵特征量和支持向量机的方法识别手部动作。实验结果表明,系统成功地采集到肌电信号,并且采集部分体积为40 cm3,达到小型化,便于携带。同时在动作识别测试中,握拳动作识别率达到了100%,展拳动作识别率是88.9%,具有较高的识别率。

表面肌电;信号采集;预处理;动作识别应用

0 引言

人体在运动过程中伴随着各种肌肉动作,同时包含着复杂的神经系统的生物电活动。而表面肌电信号就是其中的一种生物电信号。表面肌电信号(Surface Electromyography,SEMG)是由电极周围的肌纤维产生的所有运动单元电位在时间和空间上的累积,是神经干上电活动和浅层肌肉肌电信号在皮肤表面的综合效应[1]。正是以其提取方便、无创测量、重复性好等优点,SEMG被广泛应用于例如假肢控制、肌肉疾病诊断、肌肉疲劳程度评定以及神经肌肉功能诊断等许多领域,使其在康复医学研究、协助身体运动和各种肌肉神经的基础研究方面有着深远的意义[2]。同时,SEMG又被应用于肌肉-计算机接口技术中,例如利用SEMG完成虚拟现实、轮椅、外骨骼等控制和跌倒检测[3-6]。

SEMG是微弱的复杂信号,具有非平稳性和非线性,通过电极从肌肉表面采集神经肌肉生物电信号,并将其记录、放大、传导和反馈,可对肌肉功能以及神经信号进行量化分析。肌电峰峰值是0~6 mV,幅值范围在10~5000 μV,肌肉松弛时约为20~30 μV,收缩时约为60~300 μV[7]。20~ 500 Hz是肌电信号能量集中的主要频段,其中50~ 150 Hz是绝大部分频谱集中的频段。肌电采集方式分两种,第一种是针电极采集,即植入式采集。它需要把针电极插入到肌肉组织中,不适合多次和长时间测量,易造成肌肉损伤。另外一种是表面电极采集。把表面电极贴在皮肤表面,使用方法简单且具有无创性。采集SEMG时,首先对信号进行放大和去噪等处理,这就决定了采集肌电的电路必须满足高增益、高输入阻抗、高共模抑制比、低漂移、低噪声等要求。

上世纪90年代以来,国外的肌电采集仪技术相对比较成熟。芬兰的MEGA公司自2004年推出了ME6000最多有16通道的表面肌电测试系统,美国Noraxon Telemyo公司的表面肌电遥测系统可将肌电信号通过无线电波传送至100 m以外的接受器[8]。加拿大Thalmic公司利用肌电信号做手势识别研究[9]。它们的产品大多价格高昂,体积较大,兼容性较差,不适于广泛应用。南京大学的周兵等人研制的表面肌电信号采集仪利用II操作系统来采集SEMG,缺点是缺少上位机的配合,肌电数据不易管理,并且选用的芯片成本高[10]。

本文设计了一种便携式表面肌电采集系统,与现有的其他的产品相比,本系统体积小,采集模块体积为40 mm×20 mm×50 mm,便于携带,硬件系统功耗低且其中采用的的元器件大多成本低廉,软件系统则是设计上位机,完成与单片机的指令通信,这些优势都为肌电采集系统的广泛应用提供了便利。

1 便携式表面肌电采集系统总体设计

1.1 硬件系统总体设计

如图1所示,本文设计的便携式SEMG采集系统包括2个部分,分别是肌电信号采集部分和肌电信号接收部分。其中肌电信号采集部分由锂电池供电,包括获取SEMG信号的表面电极、信号处理电路、A/D转换、主控电路等。图2(a)是肌电采集盒的实体图。处理后的高信噪比SEMG信号以无线的方式发送至接收部分,接收到信号后通过USB转串口芯片将信号传给计算机,完成信号后处理和分析,接收盒可接收8个通道的表面肌电信号,如图2(b)所示。整个硬件系统的低功耗性主要是体现在模数转换电路和中央处理电路的设计上。设计的肌电采集系统采用单节800 mAH锂电池供电时,其总功耗为90 mW,达到了低功耗的要求。

图1 便携式肌电采集系统

图2 硬件实物图

1.1.1 信号采集电路设计

本文设计的SEMG采集系统是通过由导电凝胶及Ag/AgCl电极制成的电极片得到肌电信号。电极间构成三点差动式输入,一个为参考地,两个为信号输入端。通过前置放大电路,得到肌电的有效信号。为了减少干扰信号的影响,设计了高通和低通滤波电路。最后利用电平抬高电路和模数转换电路进行电平抬升和A/D转换。图3是SEMG采集流程图。以1个通道为例,SEMG采集系统硬件电路如图4所示。

图3 SEMG采集流程图

图4 硬件电路图

(1)前置放大电路

SEMG信号微弱,因此放大器必须大幅衰减信号的共模干扰,才能获得有效差分信号。另外放大器的输入阻抗要高,因为电极与皮肤间容易产生较大的接触阻抗,从而影响结果的准确性。放大器还要保证低噪声。因此同相并联型差动放大电路成为首选。它在满足以上要求的同时,对输入信号也有一定的缓冲作用。选用集成双运放AD8622一块芯片上的两个运放进行该功能块的设计以达到提高运放性能的匹配性的目的。该电路的外围电阻无需精密匹配。从理论上分析,运算放大器理想化时,并联型差动放大器的共模抑制比为无穷大,输入阻抗也为无穷大,且外围电阻的精度和阻值与共模抑制比无关[11]。

电路后级使用仪表放大器AD8422,它具有低偏置电压、低温漂、高共模抑制比及高精度等特点。采用AD8422,经并联型差动放大器输出的双端信号变成单端输出信号。前级放大倍数不可过大,因为电路的共模抑制比与放大倍数成反比,放大倍数过高,会影响抑制共模信号的效果,同时它可能会造成后续放大器信号因饱和而失真。本文前置放大电路设计的放大倍数为20倍。

(2)滤波电路

为了消除由皮肤和电极之间移动伪差等原因产生的低频干扰,高通滤波器必不可少。考虑到肌电的频谱分布情况,设计方案将二阶高通滤波器(HPF)的截止频率设计为15.4 Hz。肌电信号的增益为5倍。

同样,为了滤除高频干扰,设计二阶低通滤波器(LPF)。它的截止频率为1.88 KHz。同时肌电信号又再次放大5倍。

(3)电平抬高电路

由于SEMG信号的有效信号是在0 mV上下波动的,A/D转换芯片要求输入的模拟量为正或0,负数会按0处理,因此信号的电压范围被抬升到0 mV以上是实现A/D转换的首要前提,在实际应用中一般采用直流偏置的方法来解决这个问题。为了达到较高精度转换的目的,最好应将有效信号幅值范围抬升到A/D输入范围的1/3至3/3之 间[12]。使用AD8657将SEMG信号的幅值抬升到1.25 V上下。一般直接采集到的肌电信号是模拟信号,需要经过A/D转换才能处理。本设计中采用AD7680进行模数转换,参考电压Vref为2.5 V,其分辨率为16位,即使在数据吞吐量较高的情况下AD7680也能以极低的功耗工作。

(4)中央处理电路

中央处理电路采用CC1110芯片,它包括了一个以8051为核心的低功耗高性能控制器和功能强劲的无线收发机,自带4K的RAM和32 K的在系统可编程Flash和外设[13]。它的优点是更微小化、极低的功耗、低成本和较小的供电电压。CC1110有多种电源工作模式,在发射和接收模式下的速率为2.4kBaud,电流损耗分别低于16 mA或16.2 mA;CC1110工作时的速率为1.2 kBaud,电流损耗为16 mA;PM2模式下电流消耗为0.5 uA,可由定时器和外部中断唤醒;休眠模式下电流消耗仅为0.3 uA。它的休眠模式和转换到主动模式的超短时间的特性充分满足了系统的低功耗要求。CC1110芯片是TI公司基于Smart RF04技术设计的低功耗无线射频(RF)芯片。在射频性能上,它还有良好的接收选择性和较高的灵敏度。采用SimpliciTI技术的待机电流较低,并简化开发过程,进而降低射频匹配网络的系统功耗及成本,考虑到SimpliciTI技术在开发应用上的灵活性,本设计基于SimpliciTI通信协议将肌电信号以无线的方式发送至接收盒。

1.1.2 信号接收电路设计

CH340G是一种实现USB转串口的芯片。它内部独立的收发缓冲区支持通讯波特率50 bps~ 2 Mbps。它支持USB设备挂起从而达到降低系统功耗的效果。接收设备接收到信号后通过此芯片将信号传给计算机。

1.2 系统软件结构

上位机软件库的设计是以肌电采集系统的基本功能为基准的。设计主要是MicrosoftVisual Studio 2010环境下进行的。利用C#语言与MATLAB进行混合编译。基于.net平台直接调用编译后的M文件,解决了混合编程中接口及接口间数据交换的问题[14]。整个过程主要包括两大步骤,一是肌电信号采集显示;二是对肌电信号进行预处理。

1.2.1 肌电采集显示

通过设计的硬件将肌电数据通过无线传到计算机上。上位机的设计思路是:通过菜单项来控制不同的窗体,以此实现不同的功能。首先创建主窗体,并在主窗体中利用C#中的MenuStrip控件设置菜单。菜单分为数据采集和信号预处理。点击菜单栏(ToolStripMenuItem)触发其Click事件,分别显示子窗体—数据采集和信号预处理。在数据采集窗体中,首先读取电脑中的所有串口,添加数据接收事件注册,利用创建的串口线程接收数据。然后使用 SerialPort控件设置串口属性,选择相对应的波特率、数据位、停止位等相关属性。其中重要的步骤之一就是对接收的数据包根据肌电数据传输协议进行解读。首先通过包头、包尾、帧数以及通道ID等信息验证数据有无丢失,然后将数据包内代表肌电信号的低位与高位数据进行拼接,再通过单位换算将AD信号转换成测量的真实肌电值。其次,为了直观的显示肌电数据,本文利用PictureBox控件进行肌电信号波形的绘制,利用GDI+编程接口对图形进行处理。最后,为了后续的数据处理,需要把接收到的数据保存下来。采用文件流的形式将数据保存到固定文档中不失为一种好的选择。使用FileStream类可以产生在磁盘或网络路径上指向文件的文件流,对文件进行读取、写入、打开和关闭操作。

图5 子窗体---表面肌电采集

1.2.2 信号预处理

肌电信号能量主要集中在20~500 Hz之间,因此选用巴特沃斯带通滤波器采集有用的肌电信息。工频的幅度比表面肌电的大1~3个数量级,它以空间辐射耦合或电源传导耦合的方式影响电子设备的正常运行。考虑肌电信号在50 Hz附近比较重要,而陷波电路的特性又容易受到外围阻容元件的影响,一般电容器容值的误差在20%左右,难以制造频率准确的的带陷滤波器,因此选择数字滤波器-椭圆带阻滤波器滤除工频干扰。这降低了硬件成本和复杂性,增强系统的通用性。本文采用MATLAB设计50 Hz带阻滤波器滤除工频干扰。首先安装MCRInstaller和设置MATLAB编译器,并配置环境变量;其次编译有关带阻滤波的M文件;然后利用MATLAB提供的Deploy Tool将M文件编译成动态链接库(dll)文件;最后在Microsoft Visual Studio2010的环境下用C#语言进行调用。在C#编码中,调用MATLAB编写的dll文件时,输入与输出返回的数据类型都为MWArray,因此MWArray类型和C#中的数据类型要进行转换。利用Chart控件把滤波后的数据用曲线显示出来,同时设置滚动条来控制图形的局部放大与缩小。

2 采集系统的应用

利用设计的采集系统进行手部动作识别应用。首先在设计的上位机采集界面上,点击“打开串口”按钮触发上位机与单片机进行通讯,进而采集肌电信号并进行预处理。下一步骤是特征提取。原始肌电信号的数据量庞大,因此需要将它们转换成最能反映其分类本质的特征向量。特征提取的方法有时域法,频域法、时频法、高阶谱法、非线性法特征法等。本文选用模糊熵作为特征量来识别手部的握拳,展拳动作。模糊熵是对模式复杂性的度量,定量的对时间序列的规则性进行评估[15]。模糊熵对噪声有一定的鲁棒性,又具有较好的连续性,且保持相对的一致性,对序列的长度的依赖性较小,因此适合对生理信号如肌电信号的分析。常见的模式识别算法有K近邻分类(K-Nearest Neighbor Classification, KNN)、线性判别分析(Linear Discriminant Analysis, LDA)、朴素贝叶斯(Adaptive Naive Bayes Classifier, NBC)、支持向量机(Support Vector Machine, SVM)等。支持向量机具有坚实的数学理论基础,泛化能力强、收敛到全局最优、维数不敏感,在解决小样本、非线性及高维模式识别中表现出许多特有的优势[16]。因此选用支持向量机分类器做模式分类。动作识别的流程如图6所示。

3 实验结果和分析

在健康受试者的手臂尺侧腕屈肌位置处贴上电极片,并以握拳未用力和握拳用力的两种不同的情况来采集对应的表面肌电信号,最后通过信号预处理界面进行滤波。由图7可以看出,设计的表面肌电采集系统可以完整的采集到肌电信号。受试者做握拳这个动作未用力时,肌电信号的变化幅值较小,当受试者用力握拳时,肌电信号的输出波形有明显变化,并且用力越大,肌电信号的幅值就越大,因此肌肉的收缩程度越大,肌电信号的幅值就越大。健康受试者进行动作识别测试时,采样频率为4000 Hz,每种动作做50次,每次采集1 s的肌电数据。训练集为80组,测试集为20组数据。识别率如表1所示,握拳动作的识别正确率是100%,展拳的识别率是88.9%。

图6 识别系统流程图

图7 上位机波形显示

表1 两种手部动作的识别率

Tab.1 Recognition rates of two types of hand actions

4 结论

针对目前肌电采集系统体积大,功耗高的问题,本文设计了一种便携式表面肌电采集系统。本系统基于前置放大电路、高低通滤波电路等硬件电路和上位机处理的软件程序,成功地采集到表面肌电信号,实现实时传输、动态显示波形变化和数据存储的功能。在展拳和握拳动作识别测试中,选择模糊熵进行特征提取,利用支持向量机分类器进行分类识别,取得较好的的分类结果,验证了本系统的实用性。本系统为肌电信号的进一步研究和应用如假肢控制、手势识别、肌肉疾病诊断等搭建了一个有效的平台。

[1] 章帆, 邢丽冬, 钱志余, 等. 基于STM32微处理器的表面肌电信号无线采集与处理系统设计[J]. 医疗卫生装备, 2016, 37(7): 50-52.

[2] 朱显武, 张东强. 肌电信号的预处理[J]. 北京生物医学工程, 2010, 29(3): 288-290.

[3] 李文, 赵丽娜, 李腾飞,等. 表面肌电信号在脑卒中患者上肢运动功能康复中的应用[J]. 中国康复医学杂志, 2013, 28(2): 163-165.

[4] 蔡军, 李玉兰. 基于DBN的sEMG智能轮椅人机交互系统[J]. 华中科技大学学报(自然科学版), 2015, 43(S1): 74-77.

[5] 王露露, 胡鑫, 胡杰,等. 一种上肢外骨骼康复机器人的控制系统研究[J]. 生物医学工程学杂志, 2016, 33(6): 1168- 1175.

[6] Nouredanesh M, Kukreja S L, Tung J. Detection of compensatory balance responses using wearable electromyography sensors for fall-risk assessment[C]// International Conference of the IEEE Engineering in Medicine & Biology Society. Conf Proc IEEE Eng Med Biol Soc, 2016: 1680.

[7] Agostini V, Knaflitz M. An Algorithm for the Estimation of the Signal-To-Noise Ratio in Surface Myoelectric Signals Generated During Cyclic Movements[J]. IEEE transactions on bio-medical engineering, 2012, 59(1): 219-25.

[8] 李世明. 肌电测量技术的应用[J]. 中国组织工程研究, 2006, 10(41): 149-151.

[9] Sathiyanarayanan M, Rajan S. MYO Armband for physiotherapy healthcare: A case study using gesture recognition application[C]// International Conference on Communication Systems and Networks. IEEE, 2016: 1-6.

[10] 周兵, 纪晓亮, 张荣, 等. 表面肌电信号采集仪的软硬件设计[J]. 现代科学仪器, 2010, (4): 58-61.

[11] 熊平, 唐建. 表面肌电信号前端处理系统[J]. 计算机工程与应用, 2015, 51(1): 218-222.

[12] 李成凯, 席旭刚, 王俊伟, 等. 表面肌电信号采集系统设计[J]. 杭州电子科技大学学报(自然科学版), 2015, 35(2): 34-37.

[13] 唐志鹏,陈新. 基于CC1110的远程无线抄表系统的设计[J]. 有线电视技术,2016, 23(1): 32-35.

[14] 蒋顺业, 兰洋. C#与Matlab混合编程在预警系统中的应用[J]. 软件, 2013, 34(4): 82-84.

[15] 邹晓阳, 雷敏. 基于多尺度模糊熵的动作表面肌电信号模式识别[J]. 生物医学工程学杂志, 2012, 29(6): 1184-1188.

[16] 黄衍, 查伟雄. 随机森林与支持向量机分类性能比较[J]. 软件, 2012, 33(6): 107-110.

A Portable Acquisition System Design for Surface Electromyography

JI Meng-jie1, LI Xiao-ou2

(1. School of Medical Instrument and Food Engineering, University of Shanghai for Science and Technology, Shanghai 200093, China;2.College of Medical Instrument, Shanghai University of Medicine & Health Sciences, Shanghai 201318, China)

In order to improve the portability of the acquisition system for surface electromyography effectively, a new portable acquisition system is designed. The hardware system is composed of a preamplifier, a filter circuit, a level-elevation circuit, etc. The program system is designed by the MATLAB and C# language, and the SEMG signals is displayed in real time and preprocessed. SEMG signals are acquired by the system, and then a method which is combined the fuzzy entropy with Support Vector Machine is used to identify hand actions. The experimental results of the experiment show that the system successfully collect the signals of SEMG, and the volume of the signal acquisition part is 40cm3. It is miniaturized and portable. The recognition rate of hand grasps is up to 100%, and the recognition rate of hand extension is 88.9% in action recognition test, which has a high recognition rate.

Surface electromyography; Signal acquisition; Signal preprocessing; Application of action recognition

TN911.7

A

10.3969/j.issn.1003-6970.2018.09.005

上海市自然科学基金项目(14ZR1440100) 上海高校穿戴式医疗技术与器械工程研究中心项目

冀孟杰(1992-),女,研究生,主要研究生物医学工程仪器及医学信息处理技术;李晓欧(1975-),男,教授,主要研究方向为人体智能感知技术、穿戴式医疗器械。

本文著录格式:冀孟杰,李晓欧. 一种便携式表面肌电采集系统设计[J]. 软件,2018,39(9):21-26

猜你喜欢
肌电电信号电路
电路的保护
盆底肌电刺激联合盆底肌训练治疗自然分娩后压力性尿失禁的临床观察
基于联合聚类分析的单通道腹部心电信号的胎心率提取
基于Code Composer Studio3.3完成对心电信号的去噪
巧用立创EDA软件和Altium Designer软件设计电路
基于MATLAB模拟混沌电路
基于随机森林的航天器电信号多分类识别方法
经皮神经肌电刺激治疗上肢周围神经损伤的疗效
女生穿运动鞋与高跟鞋步行腰背肌电比较
基于生物电信号的驾驶疲劳检测方法