冀孟杰,李曉歐
?
一種便攜式表面肌電采集系統設計
冀孟杰1,李曉歐2
(1. 上海理工大學醫療器械與食品學院,上海 200093;2. 上海健康醫學院醫療器械學院,上海 201318)
為有效提高表面肌電采集系統的便攜性,設計了一種新型的便攜式表面肌電采集系統。該系統的硬件系統由前置放大電路、濾波電路、電平抬高電路等組成,軟件系統則是利用C#和MATLAB混合編程對肌電信號進行實時顯示和預處理。利用該系統采集肌電信號,并選擇基于模糊熵特征量和支持向量機的方法識別手部動作。實驗結果表明,系統成功地采集到肌電信號,并且采集部分體積為40 cm3,達到小型化,便于攜帶。同時在動作識別測試中,握拳動作識別率達到了100%,展拳動作識別率是88.9%,具有較高的識別率。
表面肌電;信號采集;預處理;動作識別應用
人體在運動過程中伴隨著各種肌肉動作,同時包含著復雜的神經系統的生物電活動。而表面肌電信號就是其中的一種生物電信號。表面肌電信號(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所示,本文設計的便攜式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設備掛起從而達到降低系統功耗的效果。接收設備接收到信號后通過此芯片將信號傳給計算機。
上位機軟件庫的設計是以肌電采集系統的基本功能為基準的。設計主要是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控件把濾波后的數據用曲線顯示出來,同時設置滾動條來控制圖形的局部放大與縮小。
利用設計的采集系統進行手部動作識別應用。首先在設計的上位機采集界面上,點擊“打開串口”按鈕觸發上位機與單片機進行通訊,進而采集肌電信號并進行預處理。下一步驟是特征提取。原始肌電信號的數據量龐大,因此需要將它們轉換成最能反映其分類本質的特征向量。特征提取的方法有時域法,頻域法、時頻法、高階譜法、非線性法特征法等。本文選用模糊熵作為特征量來識別手部的握拳,展拳動作。模糊熵是對模式復雜性的度量,定量的對時間序列的規則性進行評估[15]。模糊熵對噪聲有一定的魯棒性,又具有較好的連續性,且保持相對的一致性,對序列的長度的依賴性較小,因此適合對生理信號如肌電信號的分析。常見的模式識別算法有K近鄰分類(K-Nearest Neighbor Classification, KNN)、線性判別分析(Linear Discriminant Analysis, LDA)、樸素貝葉斯(Adaptive Naive Bayes Classifier, NBC)、支持向量機(Support Vector Machine, SVM)等。支持向量機具有堅實的數學理論基礎,泛化能力強、收斂到全局最優、維數不敏感,在解決小樣本、非線性及高維模式識別中表現出許多特有的優勢[16]。因此選用支持向量機分類器做模式分類。動作識別的流程如圖6所示。
在健康受試者的手臂尺側腕屈肌位置處貼上電極片,并以握拳未用力和握拳用力的兩種不同的情況來采集對應的表面肌電信號,最后通過信號預處理界面進行濾波。由圖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
針對目前肌電采集系統體積大,功耗高的問題,本文設計了一種便攜式表面肌電采集系統。本系統基于前置放大電路、高低通濾波電路等硬件電路和上位機處理的軟件程序,成功地采集到表面肌電信號,實現實時傳輸、動態顯示波形變化和數據存儲的功能。在展拳和握拳動作識別測試中,選擇模糊熵進行特征提取,利用支持向量機分類器進行分類識別,取得較好的的分類結果,驗證了本系統的實用性。本系統為肌電信號的進一步研究和應用如假肢控制、手勢識別、肌肉疾病診斷等搭建了一個有效的平臺。
[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