李紅利,劉培軍,陳國崴,張榮華,李月軍
(1.天津工業(yè)大學(xué) 電氣工程與自動化學(xué)院,天津 300387;2.杭申集團有限公司,杭州 311234)
在科學(xué)研究和醫(yī)療診斷等領(lǐng)域,人體的心電(ECG)信號具有非常重要的意義,其中包含了大量的生理和病理信息[1].傳統(tǒng)心電信號采集裝置的核心部分是心電信號放大器和模數(shù)轉(zhuǎn)換器件,因其內(nèi)部模塊組成較為復(fù)雜,整個儀器體積往往比較龐大,對使用環(huán)境要求較高[2].另外,傳統(tǒng)的模數(shù)轉(zhuǎn)換芯片精度較低、性能較差、功耗較高,從而導(dǎo)致ECG信號測量精度低[3].為克服以上缺點,本文基于STM32芯片,采用ADS1298前端采集芯片和LabVIEW上位機顯示平臺,設(shè)計了一套便攜式、高精度、小型化的實時心電信號采集顯示系統(tǒng),并進行實驗,結(jié)果表明該系統(tǒng)能夠?qū)崿F(xiàn)人體ECG信號的高精度(μV/bit)采集,并能實時動態(tài)顯示波形.
選用TI公司的24位高精度、低能耗的ADS1298前端采集轉(zhuǎn)換芯片,它是一款SOC芯片,在內(nèi)部可調(diào)增益設(shè)為最小值1時,可識別0.286 μV的電壓變化,芯片內(nèi)部通過軟件編程調(diào)節(jié)增益,可精確識別ECG信號的微小變化.選擇性能優(yōu)越的STM32系列單片機作為控制器.ADS1298通過SPI傳輸方式將轉(zhuǎn)換后的數(shù)字信號傳送到STM32F103RCT6控制器,數(shù)據(jù)暫儲存在控制器;然后通過配置藍牙模塊與上位機部分的參數(shù),數(shù)據(jù)將從控制器無線透傳到LabVIEW上位機,實現(xiàn)實時在線傳輸;最后,在LabVIEW上位機進行巴特沃斯濾波,包括高低通濾波、帶通濾波和工頻陷波處理等,進而實時動態(tài)顯示心電波形.系統(tǒng)框架見圖1.
圖1 系統(tǒng)框架Fig.1 System framework
預(yù)處理電路,即前置濾波電路,如圖2所示.該部分由二階無源低通濾波電路和3 V的限壓電路組成,可消除高頻干擾和對A/D芯片進行過壓保護.低通截止頻率為122.7 Hz,A/D采集芯片的供電電壓為3 V,滿足心電頻率及輸入端電壓通過的要求.
根據(jù)ADS1298芯片手冊,配置其外圍電路,如圖3所示.
圖2 前置濾波電路Fig.2 Prefilter circuit
圖3 A/D芯片外圍電路Fig.3 A/D peripheral circuit
系統(tǒng)采用德飛萊藍牙串口v2.0版模塊[4],它具有高速通信和低功耗的優(yōu)點,并且具備向下兼容的特點.藍牙模塊輸入電壓為3.3~6 V,傳輸距離為15 m,具有防反接和狀態(tài)指示燈功能,可以通過AT命令切換主機和從機模式、設(shè)置通訊比特率等.
LabVIEW上位機部分主要包括外置的顯示面板和內(nèi)部的軟件程序.軟件部分采用基于圖形的編程方式(G語言),G語言編程可縮短開發(fā)時間,降低開發(fā)難度[5-8].使用J-link下載器將編寫的程序加載到控制器內(nèi),進行數(shù)據(jù)采集,A/D采集轉(zhuǎn)換后的數(shù)據(jù)通過藍牙串口發(fā)送到LabVIEW上位機,然后對數(shù)據(jù)進行濾波處理,這里采用6階巴特沃斯濾波,先分3次進行干擾濾除,再進行適當?shù)牡屯?、帶阻、帶通濾波,最終得到心電波形圖.
LabVIEW軟件程序的主要部分為一個while循環(huán),進行連續(xù)的數(shù)據(jù)讀取和處理,循環(huán)內(nèi)部設(shè)置一個停止按鈕和一個條件結(jié)構(gòu).停止按鈕用于停止數(shù)據(jù)傳輸.條件結(jié)構(gòu)內(nèi)部設(shè)置VISA Config和VISA讀取函數(shù)2個模塊.VISA Config確定數(shù)據(jù)來自哪個串口.VISA讀取函數(shù)用于讀取藍牙串口發(fā)送來的數(shù)據(jù),通過設(shè)置一個屬性節(jié)點,以保證每次都能將串口中的數(shù)據(jù)讀完,然后利用一個條件結(jié)構(gòu)對得到的字符串進行處理,進行3次巴特沃斯濾波.具體的程序流程如圖4所示.
圖4 LabVIEW軟件程序Fig.4 Program of LabVIEW
實驗采集并處理4名受試者的ECG信號,4名受試者的基本信息見表1.
表1 受試者基本信息Tab.1 Basic information of the subjects
為驗證所設(shè)計的LabVIEW上位機程序的有效性,使用模擬心電信號發(fā)生器產(chǎn)生原始信號,見圖5(a),經(jīng)LabVIEW上位機程序濾波后得到的模擬ECG波形見圖5(b).
圖5 軟件濾除工頻干擾Fig.5 Software filter frequency interference
由圖5可見,原始信號中的工頻干擾基本濾除,說明本文設(shè)計的濾波程序是有效的.
4名受試者的ECG波形圖見圖6.比較4名受試者的ECG波形圖,可以明顯看出4人的心率及心電特征波略有差異,波形均呈周期性變化,P波、QRS波、T波和ST段等特征均比較明顯,可用于心率失常、心肌梗塞等病理分析,實驗結(jié)果說明本文設(shè)計的系統(tǒng)是有效可行的.
經(jīng)驗?zāi)B(tài)分解(EMD)算法適用于非線性非平穩(wěn)信號處理,是一種性能非常優(yōu)越的濾波算法,常用于人體生理信號檢測分析[9-12].本文利用LabVIEW上位機存儲的原始信號數(shù)據(jù),使用Matlab對EMD算法進行了實現(xiàn).以1號受試者為例,經(jīng)A/D轉(zhuǎn)換后的原始信號見圖7.圖7的數(shù)據(jù)信號經(jīng)分解得到的8個IMF,去掉高頻部分后,經(jīng)重構(gòu)得到圖8所示的波形圖,圖8與圖6(a)的ECG波形基本一致,這進一步說明本文設(shè)計的心電信號采集系統(tǒng)是切實可行的.
圖6 4名受試者的ECG波形圖Fig.6 ECG waveform s of four subjects
圖7 1號受試者的原始ECG信號Fig.7 Original ECG signal of No.1 subject
圖8 經(jīng)EMD重構(gòu)的信號波形Fig.8 Reconstructed signal waveform by EMD
采用TI公司的24位高精度ADS1298芯片、G語言編寫的LabVIEW上位機以及性能穩(wěn)定良好的STM32作為核心控制器,設(shè)計了一套心電信號實時采集顯示系統(tǒng),實驗結(jié)果表明該系統(tǒng)能夠滿足設(shè)計要求,與傳統(tǒng)系統(tǒng)相比,本系統(tǒng)程序設(shè)計比較簡單,實現(xiàn)了信號無線傳輸和波形圖實時顯示,為醫(yī)療診斷、病理檢測提供了可靠的實驗基礎(chǔ).