楊子立
(常州工學(xué)院電氣與光電工程學(xué)院,江蘇常州213002)
一種便攜式心電分析系統(tǒng)的硬件開(kāi)發(fā)
楊子立
(常州工學(xué)院電氣與光電工程學(xué)院,江蘇常州213002)
在動(dòng)態(tài)心電圖機(jī)的基礎(chǔ)上,開(kāi)發(fā)了一個(gè)與之配套使用的FPGA實(shí)驗(yàn)電路板,可以實(shí)時(shí)提取心電信號(hào)的波形,對(duì)心臟性猝死發(fā)出預(yù)警,彌補(bǔ)了現(xiàn)有的便攜式心電圖機(jī)(如Holter)難以實(shí)時(shí)分析診斷的不足。該系統(tǒng)可以結(jié)合VHDL與SOPC,在FPGA電路板上實(shí)現(xiàn)對(duì)心電數(shù)據(jù)的讀取、解碼、運(yùn)算,并用串口將結(jié)果發(fā)送到PC端,用Matlab的GUI界面顯示出來(lái)。經(jīng)測(cè)試,該系統(tǒng)性能優(yōu)良、功耗小、方便攜帶。
FPGA;ECG;實(shí)時(shí)診斷;疾病預(yù)測(cè)
Abstract:A FPGA-based portable ECG monitoring system is designed.The FPGA PCB is developed based on the ECG amplifier.The FPGA PCB can accomplish ECG waveform feature extraction and predict sudden cardiac death in real time,which overcomes the shortcoming of present portable ECG monitoring system(e.g.Holter),that is lack of real-time analysis & diagnosis.This monitoring system combines VHDL and SOPC,receiving ECG waveform,decoding the waveform,extracting waveform feature and predicting abnormal ECG by outputting through the FPGA PCB.It sends the result to PC through serial port.The final result can be displayed on GUI interface by Matlab.The test shows that the system has a good performance with low power consumption and easy portability.
Key words:field-programmable gate array;electrocardiogram;real-time diagnosis;disease prediction
隨著人們生活水平的不斷提高,膳食結(jié)構(gòu)的不盡合理,體力活動(dòng)的減少,生活節(jié)奏的加快,社會(huì)心理壓力的增加,心血管疾病發(fā)病人數(shù)不斷增加。心血管疾病是當(dāng)今人類(lèi)死亡率最高的疾病之一。一旦發(fā)生心臟驟停, 搶救每延遲1 min, 搶救成功的機(jī)率就降低7%~10%[1]。 醫(yī)院外心臟性猝死的存活率不及15%,即使患者能及時(shí)到達(dá)醫(yī)院, 出院時(shí)存活率也不及20%[2]。因此,對(duì)心血管疾病的監(jiān)護(hù)和及時(shí)診斷至關(guān)重要。心血管疾病的診斷手段主要是心電圖,心電圖在預(yù)防心臟性猝死方面具有重要意義[3]。動(dòng)態(tài)心電圖機(jī)(如Holter)可以實(shí)現(xiàn)24 h便攜式的心電記錄,但缺點(diǎn)在于不能實(shí)時(shí)對(duì)數(shù)據(jù)進(jìn)行處理,必須將存儲(chǔ)的信息帶回醫(yī)院終端進(jìn)行分析。目前,具有即時(shí)診斷功能的心電監(jiān)護(hù)技術(shù)正成為研究熱點(diǎn)[4]。筆者設(shè)想在Holter的基礎(chǔ)上加以改進(jìn),使用FPGA對(duì)采集的心電信號(hào)進(jìn)行實(shí)時(shí)處理,增加即時(shí)診斷功能,一旦發(fā)現(xiàn)有急性心臟猝死等相關(guān)癥狀,即進(jìn)行報(bào)警。
在嵌入式系統(tǒng)中,F(xiàn)PGA可以根據(jù)用戶(hù)需要進(jìn)行靈活設(shè)計(jì),其內(nèi)部集成有許多硬件單元電路,如PLL、硬件乘法器、選擇器和除法器等。芯片廠商往往還會(huì)提供一定數(shù)量的IP核,這使整個(gè)嵌入式系統(tǒng)的開(kāi)發(fā)變得輕松容易,而且穩(wěn)定可靠。許多廠商還在FPGA內(nèi)部集成了不同類(lèi)型的處理器以更好地發(fā)揮FPGA的高度靈活性,使其同樣易于運(yùn)用在控制領(lǐng)域。配合SOPC技術(shù),系統(tǒng)的整體靈活性得到了極大的提高和改善。因此,本系統(tǒng)選擇FPGA作為MCU[5]。
以動(dòng)態(tài)心電圖機(jī)為基礎(chǔ),設(shè)計(jì)并實(shí)現(xiàn)了與之配套使用的FPGA實(shí)驗(yàn)電路板,包括電源設(shè)計(jì)、外設(shè)設(shè)計(jì)、FPGA芯片的連接和配置等。該硬件開(kāi)發(fā)板,可結(jié)合VHDL與SOPC,實(shí)現(xiàn)對(duì)心電數(shù)據(jù)的讀取、解碼、運(yùn)算,并用串口將結(jié)果發(fā)送到PC端,用Matlab的GUI界面顯示出來(lái)。
筆者設(shè)計(jì)了一獨(dú)立的、便攜式的小型FPGA系統(tǒng):該系統(tǒng)可以使用手機(jī)電池(3.7 V)供電,使用串口接收從心電放大器串口傳輸過(guò)來(lái)的數(shù)據(jù),在FPGA片內(nèi)對(duì)數(shù)據(jù)進(jìn)行計(jì)算,并用串口將數(shù)據(jù)發(fā)送出去。FPGA可以支持2種配置模式,一是JTAG在線配置,配置速度快,但斷電后數(shù)據(jù)丟失;二是主動(dòng)串行配置(AS)模式,該模式將程序燒寫(xiě)到片外的Flash中,掉電后還存在,可擦除。為方便調(diào)試,電路板上設(shè)有按鍵和LED燈。該開(kāi)發(fā)板支持?jǐn)U展功能,有AD轉(zhuǎn)換芯片、顯示屏以及12個(gè)I/O擴(kuò)展口。
總體架構(gòu)如圖1所示。
圖1 FPGA總體框圖
根據(jù)低功耗、低成本的需求,使用Altera公司的Cyclone III系列中的EP3C40Q240C8作為FPGA芯片。
本系統(tǒng)總共需要3個(gè)電源:一是外設(shè)(如串口、AD等)的供電電壓,為+5 V;二是FPGA芯片I/O的供電電壓,給芯片的4個(gè)Bnak供電,電壓都為3.3 V;三是FPGA內(nèi)核電壓,為1.2 V??紤]便于攜帶,系統(tǒng)使用手機(jī)電池(3.7 V)作為供電電源。電源的設(shè)計(jì)分成兩部分:一是將電壓從3.7 V升到5 V,二是將電壓從5 V轉(zhuǎn)換為3.3 V和1.2 V。
2.1 從3.7 V到5 V變壓電源
根據(jù)Cyclone III系列的功率與時(shí)鐘頻率的關(guān)系,可以計(jì)算出在使用27 MHz晶振時(shí)FPGA芯片的功率約為0.2 W,加上各種外設(shè),功耗在0.3 W左右。按平均功率的4倍來(lái)設(shè)計(jì)電源,電源的最大輸出功率應(yīng)為1.2 W。這里3.7 V到5 V變壓芯片選擇Maxim公司的Max1709DC-DC轉(zhuǎn)換芯片,該芯片最大輸出功率可達(dá)20 W,輸出紋波小,可以完成轉(zhuǎn)換任務(wù)。
2.2 從5 V到3.3、1.2 V變壓電源
本方案采用Ti公司的帶有集成高端 MOSFET 的3 A 非同步降壓轉(zhuǎn)換器TPS54386,將一路信號(hào)從5 V降為3.3 V,另一路信號(hào)由5 V降為1.2 V。TPS54386支持4.5 V到28 V的輸入電壓,輸出電壓可以在0.8 V到輸入電壓的90%之間連續(xù)調(diào)節(jié),支持2路輸出信號(hào)。
圖3 FPGA芯片I/O口分配
心電放大器的數(shù)據(jù)使用串口接收,并用串口將數(shù)據(jù)發(fā)送到電腦上,在PCB板上需要2個(gè)RS232接口。這里的串口電平轉(zhuǎn)換芯片使用普通的MAX232芯片。
在此PCB板上還設(shè)有4個(gè)按鍵與4個(gè)LED燈,以方便調(diào)試和控制。
為擴(kuò)展PCB功能,使之具有AD采集能力,為以后自行設(shè)計(jì)心電放大器提供接口,在PCB上擴(kuò)展了1塊AD芯片。選取的AD芯片為ADC0809FN,其采樣分辨率為8位,以逐次逼近原理進(jìn)行?!獢?shù)轉(zhuǎn)換。其內(nèi)部有1個(gè)8通道多路開(kāi)關(guān),可以根據(jù)地址碼鎖存譯碼后的信號(hào),只選通8路模擬輸入信號(hào)中的1個(gè)進(jìn)行A/D轉(zhuǎn)換。雖然逐次逼近式的芯片轉(zhuǎn)換速率較慢,但心電信號(hào)為低頻信號(hào),足以滿(mǎn)足采集的要求,原理圖如圖2。
為顯示圖像,擴(kuò)展一LCD模塊,型號(hào)為T(mén)S8007K。另外,還有一些I/O口作為備用。
圖2 外接AD轉(zhuǎn)換器原理圖
FPGA芯片的BANK1~BANK4的I/O口的供電電壓都選取為3.3 V,晶振選取27 MHz。
FPGA芯片的I/O口連接方式如圖3。
這里設(shè)計(jì)了FPGA器件的2種配置方式,即JTAG和AS方式。選取EPCS16作為配置器件,最大可容納的程序量為16 MB。
將數(shù)據(jù)使用串口發(fā)送到PC后,為直觀顯示心電波形和運(yùn)算、判斷結(jié)果,在PC上使用Matlab設(shè)計(jì)1個(gè)GUI界面,用來(lái)接收數(shù)據(jù)和實(shí)時(shí)顯示結(jié)果。界面可以顯示的結(jié)果有心電波形、PR間期長(zhǎng)度、QRS間期長(zhǎng)度、QT間期長(zhǎng)度、ST間期長(zhǎng)度、心率數(shù)據(jù)、J波檢測(cè)結(jié)果、ST段檢測(cè)結(jié)果、心電總體檢測(cè)結(jié)果。GUI界面運(yùn)行結(jié)果如圖4所示。
圖4 GUI界面運(yùn)行結(jié)果
本文設(shè)計(jì)了一小型FPGA硬件系統(tǒng),可結(jié)合VHDL與SOPC,實(shí)現(xiàn)心電實(shí)時(shí)分析技術(shù),提取心電的各波形特征,并進(jìn)行心電是否異常的判斷,將數(shù)據(jù)通過(guò)串口發(fā)送到電腦上,在電腦上用GUI界面顯示出來(lái)。經(jīng)測(cè)試,該系統(tǒng)性能優(yōu)良、功耗小,攜帶方便。
[1]王方正.心臟性猝死高?;颊叩淖R(shí)別[J].臨床心電學(xué)雜志,2007(5):341-343.
[2]JIN Zhanpeng,SUN Yuwen,CHENG A C.Predicting cardiovascular disease from real-time electrocardiographic monitoring:an adaptive machine learning approach on a cell phone[J].Engineering in Medicine and Biology Society,2009:6889-6892.
[3]王紅宇.臨床監(jiān)護(hù)心電圖學(xué)[M].北京:中國(guó)醫(yī)藥科技出版社,2011.
[4]萇飛霸,尹軍,張和華,等.一種基于智能終端的人體心電信號(hào)監(jiān)護(hù)系統(tǒng)設(shè)計(jì)[J].傳感技術(shù)學(xué)報(bào),2014(3):89-92.
[5]張德學(xué).FPGA現(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì)及應(yīng)用[M].北京:清華大學(xué)出版社,2015.
責(zé)任編輯:陳 亮
Development and Circuit Design of a Portable ECG Analysis System
YANG Zili
(School of Electrical and Photoelectric Engineering,Changzhou Institute of Technology,Changzhou 213002)
10.3969/j.issn.1671- 0436.2015.06.005
2015-10-10
楊子立(1965— ),女,碩士,教授。
TP391
A
1671- 0436(2015)06- 0021- 04