可穿戴式心率檢測系統(tǒng)的設(shè)計(jì)
點(diǎn)擊:900
A+ A-
所屬頻道:新聞中心
摘 要:針對當(dāng)前心率檢測儀穩(wěn)定性差、功耗大、體積大等缺陷,設(shè)計(jì)一種實(shí)用性強(qiáng)的可穿戴式心率檢測方案。本文詳細(xì)介紹了脈搏信號采集電路設(shè)計(jì),并以STM32芯片為控制核心,利用三軸加速度計(jì)獲取噪聲源構(gòu)建自適應(yīng)濾波器來消除運(yùn)動干擾,對處理后數(shù)據(jù)存儲、計(jì)算與結(jié)果顯示,實(shí)現(xiàn)了對心率實(shí)時(shí)、連續(xù)、可靠的檢測,展示了可穿戴設(shè)備在醫(yī)療、運(yùn)動、健康等領(lǐng)域的美好應(yīng)用前景。
0 引 言
近年來,可穿戴醫(yī)療設(shè)備發(fā)展迅猛,各大公司紛紛布局以期搶占巨大的市場蛋糕。可穿戴設(shè)備由于具有便攜式、非侵入的特點(diǎn),特別適合用于監(jiān)測生理指標(biāo)、記錄數(shù)據(jù)、動態(tài)觀察等需求,加之我國醫(yī)療資源分布的不平衡和政府的大力支持,可穿戴醫(yī)療設(shè)備已經(jīng)成為醫(yī)療電子行業(yè)未來新的增長點(diǎn)和爆發(fā)點(diǎn)。心率測量是醫(yī)學(xué)檢查的必查項(xiàng)目之一,是反映血液循環(huán)機(jī)能的重要生理指標(biāo),對其進(jìn)行長時(shí)間準(zhǔn)確的記錄有著重要的醫(yī)學(xué)意義。本文將設(shè)計(jì)一種可隨身佩戴、低功耗、可長時(shí)間記錄顯示的高性價(jià)比心率檢測儀。
1 系統(tǒng)結(jié)構(gòu)
心率是指人體心臟每分鐘跳動的次數(shù),其值因人而異,并且即使是同一個(gè)人在不同狀態(tài)下,其值也不盡相同,通常,人在安靜或睡眠狀態(tài)時(shí)心率較慢,運(yùn)動、情緒焦慮或病情發(fā)作時(shí)心率過快,正常成年人心率值在75次/分左右。目前心率測量方法主要分為三種:一是通過壓力傳感器測到的波動來計(jì)算脈率,往往和測血壓連用;二是從心電圖中提取相鄰R波波峰間隙;三是采用光電容積脈搏波描記法。前兩種方法成本高、體積大、佩戴不便,長時(shí)間使用會增加使用者生理和心理上的不舒適感。而光電容積法具有測量方法簡單、佩戴方便、可靠性高等特點(diǎn),是目前廣泛采用的方法,其基本原理是通過發(fā)射紅光或紅外光照射到人體皮下組織中,流經(jīng)皮下組織的血容量隨心臟搏動以“脈沖”方式流動,皮下組織的半透明度也不斷變化,光信號經(jīng)血液吸收、反射、透射等過程后,光電二極管的電信號變化周期就是脈搏率。系統(tǒng)整體結(jié)構(gòu)包括前端信號采集、藍(lán)牙4.0無線傳輸、電源管理、顯示存儲、三軸加速度計(jì)等部分。設(shè)計(jì)中檢測部位選擇血液循環(huán)豐富且易于固定的手指尖,光電二極管將指尖血容積變化轉(zhuǎn)換成光電流,進(jìn)而經(jīng)前端調(diào)理電路提取出脈搏信號 , 系統(tǒng)選用 MCU( 即STM32F103)自帶的 ADC 進(jìn)行信號采樣。因采集的信號易受人體運(yùn)動干擾影響,引起測量結(jié)果失真,設(shè)計(jì)中引入了3軸加速度計(jì)獲取運(yùn)動偽影噪聲,以便后續(xù)進(jìn)一步處理。STM32將采集的信號經(jīng)數(shù)字濾波、消噪后存儲在TF卡中,同時(shí)進(jìn)行心率計(jì)算和顯示,可以選擇通過藍(lán)牙4.0將保存的數(shù)據(jù)實(shí)時(shí)無線傳輸?shù)缴衔粰C(jī)進(jìn)行醫(yī)學(xué)信息分析,整個(gè)系統(tǒng)采用聚合物鋰電池供電。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 前端模擬電路設(shè)計(jì)
信號采集電路如圖1所示,940nm的紅外光透過指尖照射到光電二極管時(shí),產(chǎn)生光電效應(yīng),輸出的微弱電流經(jīng)過流壓轉(zhuǎn)換電路轉(zhuǎn)換成電壓值。脈搏信號屬于信噪比低的低頻微弱信號,為了減小低頻失真和抑制測量參數(shù)外的其他干擾,要求跨阻放大器U1高輸入阻抗、高共模抑制比、低噪聲、低溫漂,考慮到上述要求,選用TI公司的CMOS微功耗軌至軌單電源運(yùn)放 OPA2333,其典型值為共模抑制比 130dB,最大溫度漂移0.05μⅤ/℃,輸入偏置電流±70pA,輸入失調(diào)電壓 2μV。在運(yùn)放同相端和反相端同時(shí)引入1/2Vcc的偏置電壓,防止信號截止、飽和,人為的引入共模信號也要求運(yùn)放具有高共模抑制比,同時(shí)也減小了光電管D1結(jié)電容,提高了響應(yīng)速度。為了提取有效信號,采用帶通濾波器對信號進(jìn)行濾波處理。高通濾波采用無源RC結(jié)構(gòu)來濾除直流分量,其截止頻率為0.34Hz。低通濾波采用無限增益多路反饋(MFB)電路,其截止頻率為15.65Hz,通帶放大倍數(shù)為-43。經(jīng)過濾波后的脈搏信號幅值較小,不能被MCU很好地識別,于是使用比例運(yùn)算電路進(jìn)行二次放大,放大后信號約900mV。為了消除工頻干擾,最后部分加入具有正反饋的雙T型50Hz陷波器,Q值為2.75。由示波器顯示的佩戴者分別在靜止和運(yùn)動時(shí)的前端模擬電路輸出波形如圖2所示和3所示。
圖1 前端模擬電路
圖2 靜止測量時(shí)模擬電路輸出波形 圖3 運(yùn)動時(shí)模擬電路輸出波形
2.2 電源管理
系統(tǒng)采用鋰電池供電,首先MiniUSB輸出的5V電壓直接提供給鋰電池充電管理芯片TP4056,由其對鋰電池進(jìn)行充電管理,該芯片是一款完整的單節(jié)鋰離子電池采用恒定電流/恒定電壓線性充電器,高達(dá) 1A 充電電流,當(dāng)輸入電壓被拿掉時(shí),TP4056自動進(jìn)入低電流狀態(tài),將電池漏電流降至2uA以下。鋰電池充電電壓為4.2V,容量為500mAh,由于鋰電池在放電過程中輸出電壓會下降,而系統(tǒng)工作在3.3V,因此需要加低壓降穩(wěn)壓器以保證系統(tǒng)正常工作。穩(wěn)壓芯片采用TPS73633,輸出電壓穩(wěn)定在 3.3V,可以輸出 400mA 的電流,壓差最低可達(dá)到75mV,外圍電路簡單,完全滿足要求。為了便于佩戴者及時(shí)充電和保存數(shù)據(jù)的需要,系統(tǒng)使用BQ27425芯片進(jìn)行電池電量監(jiān)測。電源具體電路可以參考各芯片的數(shù)據(jù)手冊設(shè)計(jì)。
3 數(shù)據(jù)處理及軟件實(shí)現(xiàn)
3.1 基于三軸加速度計(jì)的自適應(yīng)濾波器設(shè)計(jì)
佩戴者在安靜狀態(tài)時(shí),采集電路輸出波形穩(wěn)定,但在運(yùn)動時(shí),脈搏信號明顯受到運(yùn)動干擾,發(fā)生基線漂移和波形失真,影響特征點(diǎn)識別。由于自適應(yīng)濾波特別適合在沒有關(guān)于信號和噪聲的先驗(yàn)知識的條件下,在線更新濾波器參數(shù)以適用信號和噪聲未知或隨機(jī)變化的統(tǒng)計(jì)特性,從而實(shí)現(xiàn)最優(yōu)濾波,所以本文采用自適應(yīng)濾波器進(jìn)行實(shí)時(shí)消噪處理。運(yùn)動干擾信號選用ADI公司的ADXL345超低功耗三軸加速度計(jì)芯片獲取,該芯片既能測量運(yùn)動或沖擊導(dǎo)致的動態(tài)加速度,也能測量靜止加速度,±16g時(shí)高達(dá)13位分辨率,嵌入式存儲器管理系統(tǒng)采用32級FIFO緩沖器,從而將主處理器負(fù)荷降至最低,并降低系統(tǒng)總體功耗,可以通過SPI或IIC總線與MCU串行通信。自適用濾波器主要由兩部分組成:系數(shù)可調(diào)的數(shù)字濾波器和用來更新濾波器系數(shù)的自適應(yīng)算法。數(shù)字濾波器結(jié)構(gòu)分為FIR和IIR兩種,由于FIR濾波器總是穩(wěn)定的、可實(shí)現(xiàn)的、嚴(yán)格的線性相位,在實(shí)際應(yīng)用中被廣泛采用,本設(shè)計(jì)中采用的是FIR濾波器的橫向型結(jié)構(gòu)。自適應(yīng)算法有很多種,由Widrow和Hoff提出的最小均方(LMS)算法是目前廣泛應(yīng)用的一種線性自適應(yīng)濾波算法,簡化了對梯度向量的計(jì)算,具有計(jì)算簡單、易于實(shí)現(xiàn)、穩(wěn)定性好等優(yōu)點(diǎn),本文就是采用LMS算法用STM32來實(shí)現(xiàn)自適應(yīng)濾波器的設(shè)計(jì)。自適應(yīng)濾波原理如圖4所示,采樣信號d(n)含有所要提取的被淹沒在噪聲中的脈搏信號,且與噪聲不相關(guān),而參考輸入x(n)與噪聲相關(guān),x(n)通過濾波器處理得到噪聲的估計(jì)值y(n),d(n)減去y(n)就是所要提取的脈搏信號e(n),為了使e(n)中噪聲最小,通過自適應(yīng)算法不斷更新濾波器權(quán)值,從而得到噪聲的最優(yōu)估計(jì),也就得到所要提取脈搏信號的最優(yōu)估計(jì)。基本 LMS 算法如下:w(k,n+1=)wk,(n+2μ)e n x n,式中:w(k, n和w(k, n+1分別是迭代前后的系數(shù)值, n 是時(shí)間序列, k= 0, 1,......,N-1; N 是濾波器階數(shù); μ是收斂因子,控制收斂速度和穩(wěn)定性; x(n)是濾波器輸入信號。算法實(shí)現(xiàn)分三步計(jì)算,用C語言編程程序如下:
圖4 自適應(yīng)消噪原理
3.2 系統(tǒng)軟件設(shè)計(jì)及測試
系統(tǒng)初始化包括初始化時(shí)鐘、OLED開機(jī)界面、ADC、定時(shí)器中斷、ADXL345及偏移校準(zhǔn)、TF卡、串口DMA等。MCU以250Hz的采樣率每次分別采樣200個(gè)三個(gè)軸向的加速度分量和脈搏信號,而由運(yùn)動干擾引起的血流變化需延遲一段時(shí)間才能到達(dá)傳感器,經(jīng)過多次實(shí)驗(yàn)對比,選取0.12s作為時(shí)間間隔。同時(shí)為了實(shí)現(xiàn)加速度信號和脈搏信號的同步,開辟230個(gè)存儲空間用于存放單軸加速度信號和200個(gè)存儲空間用于存放脈搏信號,第一次采集時(shí),先采集30個(gè)加速度信號,然后再同時(shí)采集加速度信號和脈搏信號,一次采樣完成后將各軸加速度分量存儲空間的尾部30個(gè)數(shù)據(jù)移至各自存儲空間的頭部,再次開啟下次采集,依次循環(huán)。為了確定運(yùn)動干擾對脈搏信號的影響程度,通過matlab大樣本分析計(jì)算三個(gè)軸向加速度分量與脈搏信號的相關(guān)系數(shù),得到的相關(guān)系數(shù)和實(shí)際三個(gè)軸向的加速度分量值做加權(quán)平均,最終作為自適應(yīng)濾波器的參考輸入,劇烈運(yùn)動時(shí)濾波效果如圖5所示。在自適應(yīng)濾波前,對ADC采樣數(shù)據(jù)和加速度計(jì)數(shù)據(jù)進(jìn)行FIR低通濾波去除高頻干擾,考慮到人體運(yùn)動信號和脈搏信號的頻率,設(shè)計(jì)為30階截止頻率為5Hz的漢明窗結(jié)構(gòu),為了更大限度的減少系統(tǒng)開銷,濾波器參數(shù)擴(kuò)大相應(yīng)倍數(shù),四舍五入取整參與濾波運(yùn)算,最后再將計(jì)算結(jié)果同比縮小相應(yīng)倍數(shù),同時(shí)利用單位脈沖響應(yīng)的偶對稱性,將數(shù)據(jù)移位寄存器對稱各項(xiàng)相加后和濾波器系數(shù)寄存器前一半對應(yīng)項(xiàng)相乘做累加運(yùn)算,從而降低卷積運(yùn)算的運(yùn)算量。心率計(jì)算時(shí),設(shè)定一次采樣脈搏波數(shù)組中最大最小值差的0.7倍加上最小值之和為閾值,從數(shù)組起始位置開始選取4個(gè)數(shù)據(jù)點(diǎn)判斷是否前三個(gè)數(shù)據(jù)點(diǎn)值小于閾值,而第四個(gè)數(shù)據(jù)點(diǎn)值大于或等于閾值,若是則記錄第四個(gè)數(shù)據(jù)點(diǎn)的位置,以相同方法尋找下一個(gè)滿足要求的數(shù)據(jù)點(diǎn),通過兩數(shù)據(jù)點(diǎn)在數(shù)組中的位置來得到心率數(shù)值。
圖5 劇烈運(yùn)動時(shí)濾波效果
4 結(jié) 語
本文所設(shè)計(jì)的可穿戴式心率檢測系統(tǒng)從測量可信度、功耗、用戶體驗(yàn)等角度出發(fā),所選用的芯片和模塊均符合低功耗的原則,具有體積小、可靠性高、功耗低、性價(jià)比高、結(jié)構(gòu)簡單等特點(diǎn),可用于病人和正常人日常的健康監(jiān)護(hù),存儲功能利于歷史查閱,具有較好的實(shí)用價(jià)值。當(dāng)然,運(yùn)動狀態(tài)的測量精度、心率計(jì)算算法以及模具外觀設(shè)計(jì)有待進(jìn)一步改進(jìn)。
(審核編輯: 智匯張瑜)
分享