文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.166939
中文引用格式: 王皓,陳少勇,,王佳權(quán),,等. 非接觸式睡眠狀態(tài)識(shí)別算法硬件化實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2017,,43(8):62-65.
英文引用格式: Wang Hao,,Chen Shaoyong,Wang Jiaquan,,et al. Hardware implementation of unobtrusive sleep state discrimination algorithm[J].Application of Electronic Technique,,2017,43(8):62-65.
0 引言
隨著社會(huì)的急速發(fā)展,,睡眠質(zhì)量問題正在困擾著各個(gè)年齡層次的人群,。近年來中年人群頻繁出現(xiàn)睡眠呼吸暫停綜合征患者,這是一種睡眠時(shí)呼吸停止的睡眠障礙,。最常見的原因是上呼吸道阻塞,,經(jīng)常以大聲打鼾、身體抽動(dòng)或手臂甩動(dòng)結(jié)束,。睡眠呼吸暫停伴有睡眠缺陷,、白天打盹、疲勞,,以及心動(dòng)過緩或心律失常和腦電圖覺醒狀態(tài),。
現(xiàn)有的生物醫(yī)療儀器對該癥狀的判斷基本采用接觸式檢測技術(shù),其主要特點(diǎn)是通過電極組成的多導(dǎo)聯(lián)方式,,從而達(dá)到檢測生理信號(hào)的目的,,如臨床上的速度式呼吸測量法、容積式呼吸測量法,、光電式脈搏心率測量法等。這些方法有三大缺點(diǎn),,一是對人體有一定的約束,,被測人員不能隨意進(jìn)行肢體動(dòng)作,;二是這類監(jiān)測方法主要依靠附著在人體上的接觸式心電電極來獲取信號(hào),對人體皮膚直接接觸,,不利于長時(shí)間測量,;三是軟件處理的時(shí)間長,且無法提供快速準(zhǔn)確的測量,。由于其對監(jiān)測對象的條件約束,,也限制了其應(yīng)用的范圍。
對睡眠質(zhì)量進(jìn)行監(jiān)測,,非接觸式設(shè)計(jì)顯得必要,。本文采用非接觸式檢測,秉承算法硬件化設(shè)計(jì)思路,,通過主要成分分析提取BCG信號(hào)的特征值,;流水線設(shè)計(jì)加快體動(dòng)合成指數(shù)的計(jì)算,搭配靈活的嵌入式Nios軟核識(shí)別睡眠時(shí)人的靜息狀態(tài),,全面主動(dòng)檢測心臟沖擊信號(hào),;軟硬協(xié)同的SoC設(shè)計(jì)減少了系統(tǒng)的面積,縮短了睡眠模式識(shí)別的時(shí)間,,準(zhǔn)確率可達(dá)97%,。
1 非接觸式睡眠識(shí)別算法
1.1 算法和設(shè)計(jì)流程
從PVDF中采集過來的信號(hào)包含多維度的生理信息,包括心率,、呼吸,、BCG和體動(dòng)信號(hào)等。當(dāng)呼吸暫停事件發(fā)生時(shí),,有效的信號(hào)量與其他因素混雜在一起,。為了區(qū)別呼吸暫停、正常呼吸和肢體律動(dòng),,采用主要成分提取模塊對特征信號(hào)進(jìn)行有效分離,。基于標(biāo)準(zhǔn)差值的方法合成有效信號(hào)的體動(dòng)指數(shù),,最后睡眠判斷模塊對指數(shù)的閾值判別,,識(shí)別出此時(shí)病人所在模式。算法設(shè)計(jì)如圖1所示,。
信號(hào)處理流程主要基于4個(gè)步驟:提取PVDF采集的BCG信號(hào),、主要成分分析和數(shù)據(jù)分段、體動(dòng)指數(shù)合成,、睡眠模式判斷,。整個(gè)算法以60 s為一個(gè)周期,R_PVDF為原始ADC采集到的PVDF信號(hào),RESP為經(jīng)過30 Hz數(shù)字低通濾波(37階,,IIR巴特沃斯)之后的PVDF信號(hào),,主要成分分析模塊對兩種信號(hào)處理,同時(shí)減少數(shù)據(jù)維度,、提取最大特征值,,接著計(jì)算出體動(dòng)合成指數(shù)σ和自適應(yīng)閾值,最后判斷出患者的睡眠狀態(tài),。
1.2 BCG信號(hào)獲取
邏輯控制模塊如圖2,,為了快速獲取ADC內(nèi)的睡眠數(shù)據(jù),clk引腳連接c3時(shí)鐘信號(hào)50 MHz,,作為模塊內(nèi)部時(shí)鐘,。該模塊采用有限狀態(tài)機(jī)模式設(shè)計(jì),用純Verilog代碼編寫,,在always語句的引導(dǎo)下循環(huán)46個(gè)時(shí)鐘周期,,最終AD_DATA引腳端以940 ns的周期吐出12位BCG信號(hào)數(shù)據(jù)。
1.3 體動(dòng)合成指數(shù)和自適應(yīng)閾值
經(jīng)過主成分分析和10 s數(shù)據(jù)分段之后,,PC1R_PVDF和PC1RESP被劃分為6個(gè)10 s周期信號(hào),。在自適應(yīng)閾值判決前,每段來自PC1RESP的10 s數(shù)據(jù)集會(huì)通過標(biāo)準(zhǔn)差公式進(jìn)行計(jì)算,,得出體動(dòng)合成指數(shù)σ,。體動(dòng)合成指數(shù)公式如下:
實(shí)驗(yàn)表明,正常人在靜息睡眠階段也會(huì)產(chǎn)生很多肢體動(dòng)作信號(hào),,為了減小對呼吸暫停綜合癥的識(shí)別不足,,采用自適應(yīng)閾值的方式計(jì)算周期信號(hào)的平均值。采用這個(gè)方法,,每段60 s數(shù)據(jù)集都能獲得一個(gè)自適應(yīng)的閾值,,從而使得誤判率極大減小,自適應(yīng)閾值計(jì)算公式如下:
1.4 睡眠模式判斷
利用參數(shù)σi和σj就能判定PVDF傳感帶上的人目前所在的狀態(tài),,根據(jù)優(yōu)先級(jí)排序的判斷條件如下(最大電壓輸出為5 V):
條件1:σi>40%×最大電壓輸出(肢體律動(dòng))
條件2:σj>70%×最大電壓輸出(正常呼吸)
條件3:10%×σv<σj<70%×最大電壓輸出(呼吸暫停)
條件4:σj<10%×σv(離開)
2 算法硬件化實(shí)現(xiàn)
2.1 系統(tǒng)框架與設(shè)計(jì)流程
系統(tǒng)的整體設(shè)計(jì)如圖3所示,。本系統(tǒng)總體分為兩大部分,一是前端模擬信號(hào)采集電路,,二是后端數(shù)字邏輯控制及算法硬件化,。前端部分包括PVDF傳感帶、前置放大,、低通濾波,、ADC采樣,后端部分均采用純Verilog進(jìn)行硬件化設(shè)計(jì),,其中包括邏輯控制,、數(shù)據(jù)存儲(chǔ),、算法硬件化,通過FPGA內(nèi)嵌的NiosII處理器搭建軟件系統(tǒng),,控制液晶顯示,。外部50 MHz晶振為整個(gè)系統(tǒng)提供全局時(shí)鐘樹。
整個(gè)系統(tǒng)的設(shè)計(jì)流程為:首先用Altium Designer完成硬件系統(tǒng)的電路設(shè)計(jì),、芯片布局,然后使用Verilog HDL在Quartus平臺(tái)上完成邏輯控制,、算法的硬件化設(shè)計(jì),、訓(xùn)練、仿真和綜合,,在SOPC Builder平臺(tái)上完成CPU軟核定制,,使用ModelSim和SignalTap進(jìn)行算法驗(yàn)證,最后通過USB-Blaster下載到FPGA電路板,。
2.2 前端模擬信號(hào)采集電路
生理信號(hào)的采集選用PVDF超薄壓電傳感帶,,放置在睡墊下垂直靠近人體心臟的位置。由于人體本征信號(hào)屬于超低頻信號(hào),,使用者在以自然睡眠的姿勢躺在上面后,,所傳遞出來的是極其微弱的電荷信號(hào),通常電壓強(qiáng)度在0~20 mV之間,。因此需要對生理信號(hào)進(jìn)行放大和濾波,。
前端信號(hào)處理電路采用LMV602低噪聲運(yùn)算放大器,組成電荷放大電路,,實(shí)驗(yàn)證明在調(diào)配R1,、C1的值時(shí)增益為200可取得最佳信噪比。此電路采用單電源供電,,并且5 V電壓通過電阻分壓,,輸入在放大器同相端,對生理信號(hào)產(chǎn)生2.5 V的抬壓效果,,省去后級(jí)單獨(dú)設(shè)計(jì)抬壓電路的冗余問題,。此電路簡潔、完善,,能將信號(hào)放大到適合ADC轉(zhuǎn)換的電壓,,具體硬件電路圖如圖4所示。
為了去除混疊在有效生理信號(hào)中的50 Hz工頻干擾,,第二級(jí)采用低通濾波電路,。3 dB截止頻率為:
該電路不僅可以放大0.1 Hz~10 Hz的信號(hào),還能大大降低50 Hz工頻干擾,。濾波輸出后的信號(hào)幅度為0~2.5 Vpp,,因此AD芯片采用12 bit高精度ADS7818,,該芯片內(nèi)置2.5 V參考電壓,外部在1腳接上震蕩電容,,使AD開始工作,。ADS7818輸入電壓量程為0~5 V,通過2.5 V抬壓后,,滿足AD采樣的量程范圍,。
2.3 硬件加速設(shè)計(jì)
算法的硬件化過程采用流水線設(shè)計(jì),首先定義了20個(gè)12 bit寄存器用來保存被分段后的10 s PVDF數(shù)據(jù),,然后數(shù)據(jù)在時(shí)鐘c2作用下傳輸?shù)?0個(gè)LPM_MULT乘法器進(jìn)行平方根運(yùn)算,,再后一級(jí)是2個(gè)20輸入的PARALLEL_ADD加法器,最后調(diào)用了FPGA內(nèi)嵌的IP核ALTSQRT進(jìn)行開方,,最終算出結(jié)果即為體動(dòng)合成指數(shù)σ,。
流水線式的設(shè)計(jì)實(shí)際是將串行操作轉(zhuǎn)化為并行操作,將算法中的組合邏輯延時(shí)路徑系統(tǒng)地分割,,并在各個(gè)部分之間插入寄存器暫存中間數(shù)據(jù),,縮短了一個(gè)時(shí)鐘周期內(nèi)信號(hào)通過組合邏輯電路延時(shí)路徑長度,使得單位時(shí)間內(nèi)處理的數(shù)據(jù)量變大,,即電路的吞吐量變大,,從而提升算法的速度。
設(shè)計(jì)語言采用硬件描述語言Verilog HDL,,整個(gè)設(shè)計(jì)流程在Altera公司的Quaruts,、Eclipse平臺(tái)下完成,最后通過USB-Blaster下載到電路板,。
2.4 嵌入式軟核協(xié)同處理
借助于Altera可重構(gòu)SoC技術(shù)和FPGA的硬件可編程本身特性,,本算法定制了嵌入式軟核Nios II,通過SOPC Builder配置處理器,、JATG接口,、ROM和普通PIO口,在時(shí)鐘接口的作用下,,算法數(shù)據(jù)被送至Nios II處理器進(jìn)行最終判斷,,同時(shí)Nios II軟核通過Avalon總線同內(nèi)部的ROM、外部的SDRAM,、Flash等器件進(jìn)行數(shù)據(jù)交換,,系統(tǒng)定制如圖5。
為了方便板級(jí)調(diào)試,,本設(shè)計(jì)定制了JTAG接口,。通過PC端的Nios II IDE(集成開發(fā)環(huán)境)即可以對嵌入式處理器進(jìn)行軟件開發(fā),包括編輯,、編譯和調(diào)試程序,。與傳統(tǒng)嵌入式開發(fā)過程相比,,JTAG接口兼容了SignalTap Logic Analyzer軟件,能有效地捕獲和顯示實(shí)時(shí)芯片內(nèi)部信號(hào),,深度分析睡眠算法,。
Nios II是Altera推出的32位RISC嵌入式處理器,是SoC系統(tǒng)中最為核心的一個(gè)IP核,。其優(yōu)勢是享有32位指令集體系,,與二進(jìn)制代碼100%兼容,性能超過200DMIPS,。
3 驗(yàn)證和評價(jià)
為了全方位評估算法,,用Altium Designer設(shè)計(jì)系統(tǒng)電路原理圖并繪制PCB版圖,使用沉金工藝制作PCB硬件電路板,,F(xiàn)PGA芯片采用CycloneIV EP4CE15F17C8, 將硬件系統(tǒng)通過USB-Blaster下載到電路板后,,其資源占用情況如表1所示,。
根據(jù)綜合后的結(jié)果,可以得出的結(jié)論是:該算法適用于大部分FPGA芯片,,在硬軟核搭配使用的情況下,,資源占用率不高,為今后睡眠識(shí)別技術(shù)發(fā)展提供了良好的開發(fā)性和擴(kuò)展性,。
此外,,在SingalTapII Logic Analyzer邏輯分析平臺(tái)上,采用相同的數(shù)據(jù)集對硬件和軟件實(shí)現(xiàn)進(jìn)行評估,,結(jié)果如表2所示,。
據(jù)觀察,識(shí)別率上硬件算法會(huì)略低于軟件算法,,其原因是設(shè)計(jì)中采用的LPM_MULT,、ALTSQRT等IP模塊對浮點(diǎn)計(jì)算存在“四舍五入”的情況,因此會(huì)造成除法,、開方等運(yùn)算結(jié)果出現(xiàn)略微偏差,,但該誤差屬于可接受范圍內(nèi);在識(shí)別時(shí)間上,,硬件算法在50 MHz時(shí)鐘頻率下僅需19.72 ms就能完成識(shí)別,,相比軟件的4.9 s,速度提升了約25萬倍,。
根據(jù)實(shí)測數(shù)據(jù)在ModelSim-Altera聯(lián)合仿真平臺(tái)的仿真結(jié)果如圖6,,經(jīng)過算法的提取、處理,,PVDF睡眠生理信號(hào)最終被分類為Normal Breath(正常呼吸),、Apneic Event(呼吸暫停),、Body Movement(肢體律動(dòng))。
4 結(jié)論
本文提出一種非接觸式睡眠模式識(shí)別算法,,利用PVDF非接觸式傳感帶構(gòu)建硬件系統(tǒng)對多維度生理信號(hào)進(jìn)行實(shí)時(shí)采集和處理,,通過ModelSim、SignalTap平臺(tái)仿真驗(yàn)證,,該算法在較短的識(shí)別時(shí)間內(nèi)有著97%以上的識(shí)別準(zhǔn)確率,。本設(shè)計(jì)突破了傳統(tǒng)穿戴式醫(yī)療儀器的復(fù)雜穿戴性,具有體積小,、實(shí)時(shí)性強(qiáng)的特點(diǎn),,并為預(yù)防、診斷呼吸暫停綜合癥提供參考依據(jù),,非常適合用在醫(yī)療嵌入式應(yīng)用方面,。
參考文獻(xiàn)
[1] 丁鑫,金雷,,劉諾,,等.基于織物電極的非接觸便攜式睡眠心電監(jiān)測系統(tǒng)設(shè)計(jì)[J].北京生物醫(yī)學(xué)工程,2012,,31(3):293-296.
[2] 王琛磊.基于DSP的睡眠監(jiān)測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),,2013.
[3] Paalasmaa Joonas,Waris Mikko,,Toivonen Hannu,,et al.Unobtrusive online monitoring of sleep at home[C].34th Annual International Conference of the IEEE EMBS,2012:3784-3788.
[4] Song Changyue,,Liu Kaibo,,Zhang Xi,et al.An obstructive sleep apnea detection approach using a discriminative hidden markov model from ECG signals[J].IEEE Transactions on Biomedical Engineering,,2016,,7(7):1532-1542.
[5] MORA G G,KORTELAINEN J M,,HERN?魣NDEZ E R P,,et al.Evaluation of pressure bed sensor for automatic SAHS screening[J].IEEE Transactions on Instrumentation and Measurement,2015,,7(7):1935-1943.
[6] GUERRERO G,,KORTELAINEN J M,PALACIOS E,,et al.Detection of sleep-disordered breathing with pressure bed sensor[C].35th Annual International Conference of the IEEE EMBS,,2013:1342-1345.
[7] Carolina Varon,Alexander Caicedo,,Dries Testelmans,,et al.A novel algorithm for the automatic detection of sleep apnea from single-lead ECG[J].IEEE Transactions on Biomedical Engineering,,2015,9(9):2269-2278.
作者信息:
王 皓,,陳少勇,,王佳權(quán),黃啟俊
(武漢大學(xué) 物理科學(xué)與技術(shù)學(xué)院,,湖北 武漢430072)