文獻標識碼: A
文章編號: 0258-7998(2012)01-0031-03
心音信號是人體最重要的生理信號之一,含有關于心臟各個部分如心房、心室、大血管、心血管及各個瓣膜功能狀態的大量病理信息,是心臟及大血管機械運動狀況的反映,具有非線性、非平穩的特點[1-2]。心音來自于人體內部,不容易被復制或模仿,同時還具有獨特性,個體的不同,心音信號的表現形式也不相同。對其進行檢測分析,可以達到對身份進行識別和驗證的目的[3]。此外,通過聽取心音,也可以獲得用以判斷心臟疾病的相關信息[4]。
本文設計、實現一套心音信號采集與分析系統,并研究利用心音進行被測試者的身份識別。因為傳統的密碼、口令等驗證方法存在容易被忘記或破解的缺陷,而利用人體生物特征進行身份識別具有獨特的優勢,如指紋、虹膜、手形和面部特征等識別技術已經較為成熟,相關產品已經進入市場。但是利用人體生理信號,如心音、脈搏等,進行身份識別的研究才剛剛興起,有著很大的研究價值和發展空間。隨著計算機技術的迅速發展,基于單片機、DSP等核心控制器采集心音信號,利用PC機進行定量分析,已成為心音檢測系統的研究趨勢[5-6]。因此,本系統利用STC12C5A單片機采集HKY-06B型 PVDF薄膜式心音傳感器輸出的心音信號,并通過RS232總線發送到上位機,實現了檢測終端與上位機之間的數據通信,同時在上位機采用虛擬儀器軟件LabVIEW設計開發了一套集數據管理、采集和分析于一體的虛擬心音檢測系統。
1 系統設計
系統的硬件結構框圖如圖1所示,包括以下幾個部分:(1)心音傳感器模塊。能將心臟搏動信號轉化為低阻抗音頻信號;(2)信號預處理模塊。負責對微弱的心音信號進行前置放大、低通濾波、高通濾波和功率放大;(3)單片機模塊。負責將預處理后的心音信號進行A/D采樣以及通過鍵盤執行數據存儲、液晶顯示等功能;(4)串口通信模塊。負責與上位機進行數據通信;(5)電源模塊。為系統提供+5 V和+12 V電源。
2 硬件設計
2.1 心音傳感器
HKY-06B型心音傳感器采用新型高分子聚合材料微音傳感元件采集心臟搏動和其他體表動脈搏動信號,再經過高度集成化信號處理電路處理,輸出低阻抗音頻信號。其具有集成度高、可靠性高、靈敏度高、過載能力強、體積小和使用壽命長等特點。其典型的供電電壓為5 V,頻率響應在1 Hz~1 500 Hz,靈敏度為4 mV/Pa。
2.2 信號預處理
在利用單片機對傳感器輸出的音頻信號進行A/D轉換之前,需要對信號進行預處理,主要包括前置放大、低通濾波、高通濾波和功率放大4個電路。
前置放大電路如圖2所示,采用NPN型硅晶體三極管3DG6,其偏置電路采用R15、R5和R8組成的分壓電路,并在發射極接有電阻R17,以穩定放大器的靜態工作點。當在放大器的輸入端加入輸入信號時,放大器的輸出端便可得到一個與輸入信號相位相反、幅值放大的信號。
圖5所示為OTL低頻功率放大器,其由晶體三極管Q4組成推動級,Q1、Q2是一對參數對稱的NPN和PNP型晶體三極管。Q4管工作于甲類狀態,它的集電極電流由電位器R6進行調節,該電流的一部分流經電位器R4及二極管D2,給Q1、Q2提供偏壓。調節R4,可以使Q1、Q2得到合適的靜態電流而工作于甲、乙類狀態,以克服交越失真。靜態時要求輸出端中點(Q1、Q2的發射極)的電位U=2.5 V,可以通過調節R6來實現。又由于R6的一端接在輸出端中點,因此,在電路中引入交直流電壓并聯負反饋,一方面能夠穩定放大器的靜態工作點,同時也改善了非線性失真。功率放大電路中用到了3DG6、3DG12和3CG12雙極結型三極管(BJT)。
2.3 單片機模塊
根據心音信號的特點以及系統性價比的要求,結合STC系列單片機的性能特點,采用STC12C5A作為核心控制器,負責將預處理后的信號進行A/D轉換、數據存儲、液晶顯示和串口通信等。STC12C5A單片機是高速、低功耗、超強抗干擾的新一代8051單片機,其指令代碼完全兼容傳統8051,但速度快8倍,并且自帶8路高速10 bit A/D轉換,完全可以滿足心音檢測系統的要求。
3 軟件設計
檢測系統的軟件包括單片機軟件和上位機軟件兩部分。
3.1 單片機軟件設計
單片機軟件采用模塊化設計思想,主要包括:主程序、鍵盤子程序、液晶顯示子程序、RS232通信子程序、數據存儲子程序、A/D轉換子程序等。主程序流程圖如圖6所示,首先對整個系統進行初始化設置,使系統正常工作,再執行按鍵掃描程序,根據掃描得到的鍵值,進入不同的服務子程序。其中比較重要的還有A/D中斷子程序,其應用公式Vin=(Vcc×D)/256將采集到16進制ADC轉換數據的電壓值轉變為4位10進制電壓數據。
3.2 上位機軟件設計
上位機軟件主要是與單片機進行通信,實時采集并發送心音數據,為進一步的分析提供一個良好的人機交互平臺。虛擬儀器軟件LabVIEW前面板采用交互式圖形化用戶界面,程序框圖采用G語言編程,可以用來設計虛擬心音檢測平臺[7-8]。本系統采用模塊化設計思想,主要包括數據管理、數據采集、數據回放、數據分析和報表打印模塊等。由于模塊較多,在一個面板上很難顯示出所有內容,一般可以通過Tab Control控件進行分頁顯示,但如果前面板控件過多,程序框圖必然繁亂,因此本系統采用多面板方式。
管理模塊采用免費并開源的數據庫訪問包LabSQL,實現被測試者信息的錄入、查詢、修改和刪除等功能。數據采集模塊利用虛擬儀器軟件架構VISA,打開、設置計算機的串口實現與下位機間的RS232通信,但要注意要設置一樣的波特率、數據位、奇偶校驗位等。數據分析模塊主要完成小波包去噪、特征提取和模式識別等處理功能。
4 實驗結果
利用本系統對三位被測試者分別采集20組信號,總共60組信號進行分析。首先采用小波包變換去除噪聲,進行小波包能量特征提取,得到小波包分解的第三層8個系數的能量特征值;然后將前5個能量特征值組合成特征向量,并對應不同測試者樣本附上1、2和3的標簽;最后隨機選取50個樣本訓練SVM識別模型,并利用遺傳算法(GA)優化SVM的參數c和g,剩下的10個樣本作為測試數據,進行10次實驗,求取平均識別率。仿真結果表明,WPT+GA-SVM平均識別率為85%。
對于GA-SVM分類模型,GA的參數選擇為種群規模為20、進化次數為50次、交叉概率為0.4、變異概率為0.2。GA優化SVM時適應度變化曲線如圖7所示。表1給出了其中一次實驗的10個測試樣本的特征向量、預測標簽和實際標簽。
由表1可見,10個測試樣本僅編號9的樣本被誤判,其余都正確分類,識別率達90%。測試結果的識別率未能達到100%的原因及措施:(1)樣本數量較少。需要建立一個心音數據庫;(2)采集過程中的噪聲對最后的識別率有一定的影響。但預處理電路去噪還有改進的空間,軟件去噪值得繼續深入研究;(3)特征提取和模式識別都至關重要,因此還需要進一步挖掘優化算法。
本文從硬件和軟件兩個方面提出了一個基于STC單片機和LabVIEW的心音信號檢測系統,通過心音身份識別實驗表明,信號調理電路設計的好壞決定了系統能否可靠、穩定地運行。本文所設計的硬件系統具有開發周期短、性價比高的特點,單片機軟件采用模塊化設計,調試方便,上位機軟件界面友好、操作簡便、功能強大。
參考文獻
[1] 郭興明,林輝杰,肖守中.復雜度在心音信號分析中的應用[J].儀器儀表學報,2010,31(2):259-262.
[2] 楊秀梅,潘家華,張祖興.ICA在心音信號處理中的應用[J].生物醫學工程學雜志,2008,25(4):766-769.
[3] 成謝鋒,馬勇,張少白,等.基于數據融合的三段式心音身份識別技術[J].儀器儀表學報,2010,31(8):1712-1719.
[4] 胡玉良,王海濱,陳健.心音時域分析的新方法研究[J]. 生物醫學工程學雜志,2010,27(2):425-428.
[5] 郭興明,吳文竹,唐俊銓.便攜式心臟儲備參數監測系統的設計與實現[J].中國生物醫學工程學報,2010,29(6): 863-868.
[6] 王海濱,江鐘偉,董秀成.基于聽診器的心音采集解析系統[J].生物醫學工程學雜志,2009,26(2):282-287.
[7] 周紅標,陳若珠,田守軍.基于小波變換的脈搏信號分析儀的設計[J].北京生物醫學工程,2009,28(6):288-302.
[8] 周紅標,張新榮,唐中一.基于無線傳感器網絡和虛擬儀器的農殘檢測系統的建立[J].河南農業科學,2011,40(3):88-91.