周童桐+毛維安+王丹瑤+閆麗
摘 要:常規(guī)心電監(jiān)護(hù)設(shè)備活動局限性強(qiáng),難以攜帶,且無法進(jìn)行遠(yuǎn)程監(jiān)測。文中設(shè)計(jì)了一種遠(yuǎn)程心電監(jiān)測分析系統(tǒng),該系統(tǒng)使用AD8232模擬前端進(jìn)行心電采集,并由STM32微處理器處理信息,通過Android設(shè)備進(jìn)行數(shù)據(jù)中繼,經(jīng)由WiFi或3G/4G網(wǎng)絡(luò)與PC機(jī)實(shí)現(xiàn)遠(yuǎn)程監(jiān)測分析,因而能夠?qū)崿F(xiàn)心電波形繪制,心率計(jì)算,頻譜心電圖分析,信息保存等功能。具有功耗低,成本低,精度高,體積小,易攜帶等特點(diǎn)。測試結(jié)果表明該系統(tǒng)運(yùn)行穩(wěn)定,各項(xiàng)功能均可達(dá)到設(shè)計(jì)要求,并在移動健康、智慧醫(yī)療等領(lǐng)域具有一定的實(shí)用性和廣泛的應(yīng)用前景。
關(guān)鍵詞:心電監(jiān)測;STM32;Android;頻譜心電圖
中圖分類號:TP393;TP274 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2017)08-00-04
0 引 言
近年來,在人民生活水平不斷提高的同時(shí),生活壓力的加大和較少的運(yùn)動使得近年來心臟疾病的發(fā)病率大大上升。因心血管疾病具有病情隱蔽,突發(fā)性強(qiáng),危險(xiǎn)性高的特點(diǎn)[1],故對高危人群進(jìn)行日常監(jiān)測,遠(yuǎn)程診斷,對異常情況盡早發(fā)現(xiàn)并予以治療是一種行之有效的辦法。傳統(tǒng)的心電監(jiān)護(hù)設(shè)備價(jià)格昂貴,體型笨重,難以實(shí)現(xiàn)日常監(jiān)護(hù)?,F(xiàn)雖有一些手持式心電監(jiān)測設(shè)備[2,3],但功能較少,不能連續(xù)監(jiān)測及遠(yuǎn)程數(shù)據(jù)傳輸,且普遍不滿足可穿戴的要求。因此,對于能夠連續(xù)監(jiān)測患者心臟狀況,同時(shí)不限制患者活動空間的穿戴式心電監(jiān)護(hù)設(shè)備的研究十分必要。
1 總體設(shè)計(jì)
由于現(xiàn)有設(shè)備不足,本文設(shè)計(jì)制作了一套基于STM32與Android系統(tǒng)的遠(yuǎn)程心電監(jiān)測分析系統(tǒng)。首先由單導(dǎo)聯(lián)電極采集心電信號,經(jīng)由AD8232為核心的調(diào)理電路進(jìn)行放大和模擬濾波;再由以STM32F103C8T6芯片為核心的數(shù)據(jù)處理模塊進(jìn)行A/D轉(zhuǎn)換,并通過數(shù)字濾波器進(jìn)行工頻陷波處理和高通濾波處理優(yōu)化信號后,由藍(lán)牙串口發(fā)送至Android客戶端;之后由Android端程序?qū)?shù)據(jù)進(jìn)行分析,繪制波形,對異常情況進(jìn)行提醒報(bào)警,同時(shí)也作為系統(tǒng)的數(shù)據(jù)中繼,通過設(shè)置遠(yuǎn)程PC對應(yīng)的IP端口,將數(shù)據(jù)通過建立的TCP連接發(fā)送給PC端程序供專業(yè)人員查看與分析;PC端程序具有心率計(jì)算、頻譜分析、波形繪制、數(shù)據(jù)存儲等功能,且支持多用戶連接。系統(tǒng)總體框架如圖1所示,其中心電采集與調(diào)理電路、信號處理及發(fā)送電路為下位機(jī)部分,Android客戶端、遠(yuǎn)程PC端為上位機(jī)部分。
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)由心電調(diào)理電路與信號處理發(fā)送電路構(gòu)成,作為ECG信號采集和處理的核心,為后端提供純凈的數(shù)字化心電信息。下位機(jī)硬件整體大小控制在4.5 cm×5 cm×1.5 cm之內(nèi),通過聚合物鋰電池供電,制成腕帶式裝置供佩戴使用。
2.1 心電采集與調(diào)理電路的設(shè)計(jì)
心電采集與調(diào)理電路部分需將頻率為0.05~100 Hz,幅值約1 mV的心電信號進(jìn)行濾波提取并放大約1 000倍。故采用ADI公司推出的用于生物電測量的AD8232芯片;其在4mm×4 mm的范圍內(nèi)集成了儀表放大器、增益放大器、右腿驅(qū)動電路等[4]。相較由分立元器件組成的采集電路更節(jié)省空間與功耗。
AD8232內(nèi)置的儀表放大器可將采集信號放大100倍并對近直流信號進(jìn)行濾波[5]。儀表放大器原理如圖2所示。
芯片內(nèi)置雙極點(diǎn)高通濾波器,原理如圖3所示。濾波器截止頻率應(yīng)設(shè)為0.05 Hz。參考公式(1),可取R1=R2=10 MΩ,C1=C2=330 nF。
(1)
AD8232提供了一個(gè)非專用運(yùn)算放大器,用于低通濾波及額外增益,其低通濾波器原理如圖4所示。濾波器截止頻率設(shè)為100Hz,增益為10。參考公式(1)、(2),可取R1=R2=160 kΩ、R3=0.9 MΩ、R4=0.1 MΩ;C1=C2=10 nF。
(2)
2.2 信號處理電路的設(shè)計(jì)
信號處理電路部分采用ARM Cortex-M3內(nèi)核的STM32F103C8T6作為主控芯片,在硬件資源滿足設(shè)計(jì)需求的同時(shí),能大大減小所占空間,降低功耗,減少成本,滿足穿戴式設(shè)備的特點(diǎn)。此處使用的是由該芯片構(gòu)成的最小系統(tǒng),尺寸僅為2.3 cm×5.3 cm×0.3 cm,包含晶振,復(fù)位電路,SWD調(diào)試接口等。
2.3 無線傳輸模塊設(shè)計(jì)
對數(shù)字濾波優(yōu)化后的信息進(jìn)行數(shù)據(jù)幀編碼,并傳送到Android客戶端。為兼顧低功耗與小體積,采用搭載TI公司CC2240芯片的藍(lán)牙透傳模塊HC-08作為無線傳輸部分的主體,其采用Bluetooth 4.0協(xié)議,該技術(shù)不僅具備極低的運(yùn)行和待機(jī)功耗,還提高了傳輸距離。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件由下位機(jī)的嵌入式應(yīng)用程序與上位機(jī)的面向用戶應(yīng)用程序(Android客戶端及PC客戶端)組成。下位機(jī)程序的功能是進(jìn)行信號采集、濾波、編碼與發(fā)送;Android客戶端程序用于顯示波形及信息、中繼數(shù)據(jù)、提醒報(bào)警;遠(yuǎn)程PC客戶端程序進(jìn)行數(shù)據(jù)分析、保存、繪圖等。
3.1 單片機(jī)數(shù)據(jù)處理
作為下位機(jī)數(shù)據(jù)處理的核心,由STM32芯片構(gòu)成的最小系統(tǒng)承擔(dān)心電信號A/D轉(zhuǎn)換,數(shù)字濾波以及藍(lán)牙發(fā)送的任務(wù)。程序流圖如圖5所示。
3.1.1 心電信號A/D轉(zhuǎn)換程序設(shè)計(jì)
STM32內(nèi)部具有12位A/D轉(zhuǎn)換器,最高采樣頻率可達(dá)1 MHz[6]。心電信號的頻率主要分布在0.05~100 Hz間,根據(jù)Nyquist采樣定理,采樣頻率至少應(yīng)設(shè)置為200 Hz,此處可將采樣頻率設(shè)置為500 Hz。同時(shí)將ADC配置為獨(dú)立模式、連續(xù)轉(zhuǎn)換、外部觸發(fā),并禁止掃描模式。
經(jīng)調(diào)理電路處理后的心電信號傳送至單片機(jī)ADC的1通道接口PA1上,使用DMA方式進(jìn)行外設(shè)到內(nèi)存的數(shù)據(jù)傳輸,DMA配置的關(guān)鍵代碼如下:endprint
DMA_InitStructure.DMA_DIR=DMA_DIR_PeripheralSRC;//外設(shè)作為源
DMA_InitStructure.DMA_PeripheralBaseAddr=ADC1_DR_Address;//ADC基地址
DMA_InitStructure.DMA_BufferSize=100;//DMA通道的DMA緩存大小
DMA_InitStructure.DMA_Mode=DMA_Mode_Circular;//循環(huán)傳輸模式
此外,由于心電數(shù)據(jù)是一個(gè)連續(xù)傳輸?shù)倪^程,故在進(jìn)行DMA傳輸時(shí)可采用乒乓緩沖的原理,在內(nèi)存中開辟兩個(gè)緩沖區(qū)BUF1和BUF2,根據(jù)空閑標(biāo)志交替進(jìn)行數(shù)據(jù)存儲和處理,可提高CPU處理數(shù)據(jù)的效率并有效避免數(shù)據(jù)丟失[7]。
3.1.2 數(shù)字濾波器程序設(shè)計(jì)
在實(shí)際應(yīng)用中,50 Hz工頻噪聲是一種常見干擾,需設(shè)計(jì)陷波器濾除工頻干擾;對于呼吸或肢體活動引起的基線漂移則可通過設(shè)計(jì)一個(gè)下限截止頻率為0.5 Hz的高通濾波器消除。
在數(shù)字信號處理中,有IIR和FIR兩種設(shè)計(jì)固定頻率濾波器的方式,對于同樣的濾波器幅頻特性指標(biāo),F(xiàn)IR濾波器要求的階數(shù)一般比IIR高5~10倍[8],導(dǎo)致運(yùn)算量及信號延遲增大。故設(shè)計(jì)的數(shù)字濾波均使用IIR濾波器實(shí)現(xiàn)。
通過Matlab中的濾波器分析設(shè)計(jì)工具FDATool可直接生成濾波器參數(shù),使用C語言導(dǎo)出在STM32芯片中使用。此處設(shè)計(jì)的工頻陷波器的系統(tǒng)函數(shù)為:
高通濾波器設(shè)計(jì)方式與陷波器類似,此處設(shè)計(jì)的0.5 Hz高通濾波器的系統(tǒng)函數(shù)為:
3.2 面向用戶的Android客戶端設(shè)計(jì)
Android客戶端程序基于Java的可擴(kuò)展開發(fā)平臺Eclipse開發(fā),其功能包括遠(yuǎn)程數(shù)據(jù)中繼、心電波形繪制、接收遠(yuǎn)程PC分析結(jié)果、異常報(bào)警等。Android客戶端的主要組件如下:
(1)藍(lán)牙接收:該部分負(fù)責(zé)與下位機(jī)的藍(lán)牙發(fā)送端建立無線通信鏈路,進(jìn)行數(shù)據(jù)傳輸;程序啟動后,調(diào)用設(shè)備藍(lán)牙,打開BTAccept線程,偵聽藍(lán)牙所接收的數(shù)據(jù);根據(jù)預(yù)設(shè)的數(shù)據(jù)幀協(xié)議,檢測到標(biāo)志位后將數(shù)據(jù)幀解封裝并存入緩沖區(qū),供SurfaceView控件及Socket Thread線程使用。
(2)網(wǎng)絡(luò)服務(wù):Android客戶端程序在整個(gè)系統(tǒng)中最核心的作用即將數(shù)據(jù)中繼至遠(yuǎn)程PC,故網(wǎng)絡(luò)服務(wù)組件負(fù)責(zé)根據(jù)用戶輸入的IP地址與端口,初始化后與遠(yuǎn)程PC建立網(wǎng)絡(luò)連接,通過Socket Thread網(wǎng)絡(luò)收發(fā)線程與遠(yuǎn)程PC機(jī)進(jìn)行數(shù)據(jù)交互,遞送心電信息的同時(shí)接收分析結(jié)果。在此過程中建立TCP連接來提供可靠的數(shù)據(jù)傳輸服務(wù),可有效避免數(shù)據(jù)丟失[9]。
(3)繪圖模塊:設(shè)備從下位機(jī)接收到可以識別的數(shù)據(jù)后,使用SurfaceView控件繪制心電波形,供用戶查看。
(4)短信發(fā)送:根據(jù)傳回的分析結(jié)果進(jìn)行判斷,若有異常則可通過該組件給用戶事先保存的聯(lián)系人發(fā)送提示信息。
Android上位機(jī)程序流圖如圖6所示。
3.3 遠(yuǎn)程PC上位機(jī)程序設(shè)計(jì)
PC機(jī)程序采用C++編寫,與Android客戶端通過WiFi或3G/4G網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)傳輸,其主要功能如下:
(1)實(shí)時(shí)顯示用戶的心電波形,供專業(yè)人員查看。
(2)允許多用戶接入,可根據(jù)需要進(jìn)行選擇,拓寬系統(tǒng)的應(yīng)用場景。
(3)分析QRS波,采用動態(tài)閾值R波檢測,獲得并顯示心率信息,同時(shí)傳送至Android客戶端。
(4)運(yùn)用FFT蝶形算法計(jì)算心電信號的頻譜,獲得頻譜心電圖(French Catheter Gauge,F(xiàn)CG)。
(5)可保存ECG數(shù)據(jù)到計(jì)算機(jī)中隨時(shí)查看。
遠(yuǎn)程PC端程序流圖如圖7所示。
4 實(shí)驗(yàn)結(jié)果
使用本文設(shè)計(jì)的系統(tǒng)進(jìn)行實(shí)驗(yàn),測試現(xiàn)場如圖8所示。使用標(biāo)準(zhǔn)三導(dǎo)聯(lián)線與下位機(jī)(腕帶裝置)連接,導(dǎo)聯(lián)電位點(diǎn)如圖9所示。下位機(jī)與Android客戶端應(yīng)用建立藍(lán)牙連接后,Android端所繪制波形及接收參數(shù)如圖10所示。Android與遠(yuǎn)程PC上位機(jī)建立TCP連接,PC機(jī)繪制的波形及FFT頻譜分析分別如圖11、圖12所示。
從實(shí)驗(yàn)結(jié)果中可以看出,應(yīng)用該系統(tǒng)所采集的心電信息較為完整,波形清晰,噪聲干擾小,無明顯的基線漂移現(xiàn)象;經(jīng)24小時(shí)連續(xù)使用測試,系統(tǒng)仍可正常工作,具備全天候持續(xù)監(jiān)測及實(shí)時(shí)數(shù)據(jù)交互的能力。
5 結(jié) 語
本系統(tǒng)通過AD8232集成前端采集并初步處理信號,通過STM32微處理器進(jìn)行A/D轉(zhuǎn)換、數(shù)字濾波并發(fā)送信息,借助常用的Android通訊設(shè)備實(shí)現(xiàn)數(shù)據(jù)中繼、信息顯示、異常提醒等功能,通過PC上位機(jī)實(shí)現(xiàn)遠(yuǎn)程監(jiān)測、波形保存、信息分析、結(jié)果回傳。同以往的便攜式心電監(jiān)測設(shè)備相比,本系統(tǒng)使用AD8232模擬集成前端進(jìn)行放大濾波,并將遠(yuǎn)程網(wǎng)絡(luò)傳輸通過Android設(shè)備實(shí)現(xiàn),從而極大地節(jié)省空間與成本,降低系統(tǒng)總體功耗,并使之具備遠(yuǎn)程監(jiān)測和易于攜帶的特點(diǎn)。經(jīng)實(shí)測,該系統(tǒng)可實(shí)現(xiàn)多種環(huán)境下長期穩(wěn)定的心電信息監(jiān)測與分析,在移動健康及智慧醫(yī)療等物聯(lián)網(wǎng)領(lǐng)域具有一定的實(shí)用性和廣泛的應(yīng)用前景。
參考文獻(xiàn)
[1]陳偉偉,高潤霖,劉力生,等.《中國心血管病報(bào)告2014》概要[J].中國循環(huán)雜志,2015,31(7):617-622.
[2]張鶴,夏利,孫丹.基于ARM11的便攜式心電監(jiān)護(hù)系統(tǒng)[J].微型機(jī)與應(yīng)用,2015,34(7):86-89.
[3]盧潭城,劉鵬,高翔,等.基于AD8232芯片的便攜式心電監(jiān)護(hù)儀設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2015,32(3):113-117.
[4]佚名.低成本、低功耗、小尺寸心率監(jiān)護(hù)儀功能模塊[J].電子產(chǎn)品世界,2012(10):23.
[5] Analog Devices ,Inc.Single-Lead Heart Rate Monitor Front End[Z]. Norwood ,Massachusetts ,United States of America: Analog Devices,Inc.2012.
[6] STMicroelectronics. Mainstream Performance line, ARM Cortex-M3 MCU with 64 Kbytes Flash, 72 MHz CPU, motor control, USB and CAN[Z].Geneva, Swiss Confederation: STMicroelectronics.2015.8
[7]趙圣飛.基于STM32的數(shù)據(jù)采集存儲系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].太原:中北大學(xué),2014.
[8]高西全,丁玉美.數(shù)字信號處理(第三版)[M].西安:西安電子科技大學(xué)出版社,2008.
[9] JF Kurose,KW Ross. Computer Networking: A Top-Down Approach(Sixth Edition)[M].Upper Saddle River ,State of New Jersey ,United States of America: Addison Wesley Longman,2013.endprint