1 引言
HHCE(Home Health Care Engineering)這門學科正隨著人類對健康的重視和遠程醫(yī)療的發(fā)展而逐漸走進人們的生活,,它提倡的是一種“在家就醫(yī),,自我保健,遠程診斷”的理念,,把高科技與醫(yī)療結(jié)合起來,。HHCE的出現(xiàn)符合21世紀社會老齡化、醫(yī)療費用日益高漲以及人們生活健康質(zhì)量高要求的趨勢,,同時可實現(xiàn)醫(yī)療資源共享,,提高邊遠地區(qū)的醫(yī)療水平,因此具有特別旺盛的生命力,。
HHCE系統(tǒng)提供一種對于家庭,、社區(qū)醫(yī)療、出診醫(yī)生有效便捷的醫(yī)療監(jiān)測解決方案,,具有心電信號監(jiān)測功能的監(jiān)測器是HHCE系統(tǒng)的重要組成部分,。就國內(nèi)而言,該類產(chǎn)品的研究也屬于剛起步階段,,遠程網(wǎng)絡(luò)也只是簡單的完成數(shù)據(jù)庫醫(yī)療數(shù)據(jù)的存儲和傳輸,,還沒有真正完成將網(wǎng)絡(luò)與醫(yī)療器械相結(jié)合。在國際方面,,世界各國在此的研究均投入大量資金,,但依然主要是使用價格昂貴的儀器完成醫(yī)療數(shù)據(jù)采集,然后依托PC/internet網(wǎng)絡(luò)完成數(shù)據(jù)采集以及網(wǎng)絡(luò)診斷,。
本設(shè)計采用了Altera公司的NiosⅡ軟核處理器作為CPU,,并移植了當今主流的μClinux操作系統(tǒng),。該系統(tǒng)具有系統(tǒng)穩(wěn)定,、便攜式、功能可升級擴展,、面向用戶,、遠程控制等特點。一方面,,它將家庭保健和遠程醫(yī)療結(jié)合起來,,主要面向用戶終端設(shè)計,使個人能夠方便的對自身心電信號的進行自我檢測與分析,,實時了解自己的身體健康狀況,;另一方面,采集到的數(shù)據(jù)還可以通過存儲卡存儲,,以便對數(shù)據(jù)進行長期分析處理和診斷,;除此之外,系統(tǒng)還可以通過網(wǎng)絡(luò)等遠端通訊設(shè)施與醫(yī)療保健服務(wù)端(如醫(yī)院,、私人醫(yī)師,、監(jiān)護中心,、保健中心等)快速建立連接,將測量數(shù)據(jù)傳遞給遠程數(shù)據(jù)庫或醫(yī)生,。有利于醫(yī)療信息的數(shù)據(jù)庫管理和遠程實時監(jiān)護,、診斷,使用戶不用出門就能得到最及時有效的診斷,。
2 系統(tǒng)介紹
遠程心電醫(yī)療信號監(jiān)測系統(tǒng)主要由心電信號的前端采集與調(diào)理模塊,、心電信號處理與存儲模塊、數(shù)據(jù)顯示模塊和遠程傳輸控制模塊等4個關(guān)鍵模塊組成,,系統(tǒng)功能結(jié)構(gòu)如圖1所示,。
該監(jiān)測系統(tǒng)的硬件平臺采用Altera公司CycloneⅡ2C35 FPGA芯片,采用SOPC(片上可編程系統(tǒng))技術(shù)將NiosⅡ軟核處理器,、存儲器,、功能接口和擴展I/O口等集成在一塊FPGA芯片上,外圍擴展心電數(shù)據(jù)采集板,、網(wǎng)絡(luò),、LCD屏、觸摸屏/鍵盤,、SD存儲卡等硬件來實現(xiàn)系統(tǒng)的硬件架構(gòu),,且?guī)в锌蓴U展的I/O接口,便于以后系統(tǒng)功能升級與擴展,。
3 系統(tǒng)關(guān)鍵模塊的設(shè)計
3.1 NiosⅡ嵌入式軟核處理器簡介
NiosⅡ系列嵌入式處理器是Altera公司推出的軟核處理器,。用戶可以獲得超過200 DMIPS的性能,而只需花費不到35美分的FPGA邏輯資源,。NiosⅡ支持MicroC/OS-Ⅱ,、μClinux等多種實時操作系統(tǒng),支持輕量級TCP/IP協(xié)議棧,,允許用戶增加自定義指令和自定義硬件加速單元,,無縫移植自定義外設(shè)和接口邏輯,在性能提升的同時,,方便了用戶的設(shè)計,。
NiosⅡ處理器采用Avalon交換式總線,該總線是Altera開發(fā)的一種專用的內(nèi)部連線技術(shù),。Avalon交換式總線由SOPC Builder自動生成,,是一種用于系統(tǒng)處理器、內(nèi)部模塊以及外設(shè)之間的內(nèi)聯(lián)總線,。Avalon交換式總線使用最少的邏輯資源來支持數(shù)據(jù)總線的復(fù)用,、地址譯碼、等待周期的產(chǎn)生、外設(shè)的地址對齊,、中斷優(yōu)先級的指定以及高級的交換式總線傳輸,。
3.2 心電信號采集調(diào)理模塊設(shè)計
對ECG信號采集采用模塊化的設(shè)計方式,主要由前端的導聯(lián)傳感器,、信號濾波放大調(diào)理電路和A/D采樣電路組成,。人體心電信號的主要頻率范圍為0.05~100 Hz,幅度約為0~4 mV,,信號十分微弱,。同時心電信號中通常混雜有其他生物電信號,,加之體外以50 Hz工頻干擾為主的電磁場干擾,,使得心電噪聲背景較強,測量條件比較復(fù)雜,。為了不失真地檢測出有臨床價值的心電信號,,信號濾波與放大調(diào)理部分主要由一下幾個電路組成:前置放大電路、高低通濾波電路,、陷波電路與A/D轉(zhuǎn)換電路,,電路原理圖如圖2所示。
首先心電導聯(lián)采集過來的微弱心電信號通過前置放大電路進行放大,,此部分包括右腿驅(qū)動以抑制共模干擾,、屏蔽線驅(qū)動以消除引線干擾,增益設(shè)成10倍左右,。設(shè)計前置放大采用美國模擬器件公司生產(chǎn)的醫(yī)用放大器AD620,。AD620由傳統(tǒng)的三運算放大器發(fā)展而成,為同相并聯(lián)差動放大器的集成,。其具有電源范圍寬(±2.3~±18 V),,設(shè)計體積小,功耗低(最大供電電流僅1.3 mA)的特點,,因而適用于低電壓,、低功耗的應(yīng)用場合,。此外還具有有較高的共模抑制比,,溫度穩(wěn)定性好,放大頻帶寬,,噪聲系數(shù)小等優(yōu)點,。放大后的信號經(jīng)濾波、50 Hz陷波處理后再進行二次放大,,后級增益設(shè)成100倍左右,。由于ECG信號幅度最大就幾mV,而A/D轉(zhuǎn)換中輸入信號的幅度要求在1 V以上,,所以總增益設(shè)成1 000倍左右,。其中,,濾波采用壓控電壓源二階高(低)通濾波電路,用于消除0.05~100 Hz頻帶以外的肌電等干擾信號,,工頻中的其余高次諧波也可被濾除掉,。同時,采用有源雙T帶阻濾波電路進一步抑制50 Hz工頻干擾,。
A/D采樣芯片采用TI公司的8位串行芯片TLC549,,該芯片采用SPI接口,僅用三條線即可實現(xiàn)采集控制和數(shù)據(jù)傳輸,;具有4 MHz的片內(nèi)系統(tǒng)時鐘和軟,、硬件控制電路,轉(zhuǎn)換時間小于17μs,,采樣速率達40
kS/s,;采用差分基準電壓技術(shù)這個特性,TLC549可能測量到的最小量值達1 000 mV/256,,也就是說0~1 V信號不經(jīng)放大也可以得到8位的分辨率,。
3.3 數(shù)據(jù)采集控制器設(shè)計
為了得到經(jīng)過前端TLC549芯片轉(zhuǎn)換的心電信號,必須設(shè)計一個數(shù)據(jù)采集控制器,,實現(xiàn)對AD芯片的控制與數(shù)字化心電數(shù)據(jù)的獲取,。該控制器根據(jù)TLC549芯片的工作時序與后端數(shù)據(jù)處理的需要,采用VerilogHDL自行設(shè)計,。該控制器具有多路采集的特點,。
在自TLC549的I/O CLOCK端輸入8個外部時鐘信號期間需要完成以下工作:讀入前次A/D轉(zhuǎn)換結(jié)果;對本次轉(zhuǎn)換的輸入模擬信號采樣并保持,;啟動本次A/D轉(zhuǎn)換,。則一路采集時間為:0.5μs×(3+8×2+1)=10μs,而芯片轉(zhuǎn)換時間小于17μs,,則整個過程時間花費為27μs,。為了有效的利用該控制器,在一路A/D轉(zhuǎn)換期間,,同時進行另外一路A/D采樣,,這樣就可以在40μs時間內(nèi)完成對四路信號的采集,大大提高了工作效率,。同時,,設(shè)計中還加入了一個FSM信號來控制采樣時間,從而適應(yīng)不同頻率信號的采樣頻率,。AD芯片的時序仿真圖如圖3所示,。
Din為采集數(shù)據(jù)的串行輸入,時鐘由系統(tǒng)時鐘通過分頻系數(shù)得到。設(shè)計中,,設(shè)置了fsm作為采樣控制時鐘,,這樣可以根據(jù)需要來調(diào)整采樣速率。由于進行一次AD采樣的時間很短,,無論采用查詢還是中斷直接讀取都是不現(xiàn)實的,,這就需要利用緩沖設(shè)計,通過把N次轉(zhuǎn)換的數(shù)據(jù)暫存在緩沖存儲器中來降低中斷次數(shù),。為了取得連續(xù)和正確的采集數(shù)據(jù),,實現(xiàn)無縫緩沖,鑒于FPGA設(shè)計的靈活性,,本設(shè)計采用了雙緩沖存儲的乒乓操作結(jié)構(gòu),。本設(shè)計通過將AD采樣時序控制器交替存儲在兩個512 B的雙口RAM(DPRAM)中實現(xiàn)數(shù)據(jù)的緩存,當其中一個DPRAM1存儲滿后即轉(zhuǎn)為存儲到另一個DPRAM2中并產(chǎn)生一次中斷,,這樣在控制器寫數(shù)據(jù)到DPRAM2中時系統(tǒng)將有非常充足的時間將DPRAM1中的數(shù)據(jù)取出,。
3.4 顯示模塊設(shè)計
為了能夠直觀地顯示出采集的心電波形,需要顯示設(shè)備的支持,。本設(shè)計采用的LCD面板是TFT 320*240 LCD,。該LCD模塊沒有顯示控制器,因此需要設(shè)計顯示控制器IP核來驅(qū)動LCD面板,。本設(shè)計實現(xiàn)的顯示控制器IP核采用Verilog HDL設(shè)計,,支持多種顏色模式,包括18bpp,,16bpp,,8bpp和自定義模式。圖像存儲器lcd_fifo是采用片內(nèi)FIFO,,可以根據(jù)需要進行詞整,。256色的顏色查找表采用片內(nèi)RAM來存儲。圖像信息能夠通過AvaIon總線主端口寫入的突發(fā)塊傳輸方式進行傳輸,,利用DMA從內(nèi)存中自動讀取,,在SDRAM圖像存儲器image_ram與片上圖像數(shù)據(jù)緩存器lcd_fifo之間建立了一條專用DMA通道,該控制器結(jié)構(gòu)如圖4所示,。
該LCD控制器IP核主要由4個模塊組成:接口模塊,、內(nèi)存模塊、顏色轉(zhuǎn)換模塊和時序模塊,。
接口模塊主要是NiosⅡ處理器對LCD控制器進行控制及狀態(tài)讀取,。接口模塊主要是以寄存器方式存在的,其中寄存器有:控制寄存器,、狀態(tài)寄存器、DMA地址寄存器和中斷寄存器。
內(nèi)存模塊是Avalon總線的主接口部分,,在系統(tǒng)啟動之后,,利用DMA傳輸模式,通過Avalon總線主端口寫入的突發(fā)塊傳輸方式,,完成圖像數(shù)據(jù)存儲器image_ram中的圖像數(shù)據(jù)到片上圖像數(shù)據(jù)緩存器lcd_fifo的獨立讀取,。采用DAM傳輸方式是為了把NiosⅡ軟核處理器從頻繁地進行數(shù)據(jù)讀取操作的工作中解脫出來,這樣可以大大提高系統(tǒng)的工作效率,。
顏色轉(zhuǎn)換模塊將讀取后的數(shù)據(jù)根據(jù)4種顏色模式不同進行數(shù)據(jù)讀取的轉(zhuǎn)換,,其中8bpp和自定義模式由于顏色不足,需要接入顏色查詢表處理,。自定義模式可以手動對調(diào)色板的地址進行預(yù)設(shè)來定義輸出的顏色,。
時序模塊嚴格按照LCD的時序編寫,其中LCD時鐘為5 MHz,。通過控制數(shù)據(jù)使能信號啟動lcd_fifo數(shù)據(jù)輸出,,逐行掃描顯示。同時,,設(shè)計該模塊時,,在數(shù)據(jù)有效信號(DE)有效前,須檢查lcd_fifo中是否存有數(shù)據(jù),,以確定是否進行數(shù)據(jù)讀取和傳輸,;須進行調(diào)色板模式設(shè)置,在幀傳輸過程中需要進行模式鎖定,,以免出現(xiàn)傳輸錯誤,;須根據(jù)不同bpp模式,確定不同的讀取時間段,,18bpp每次都讀取,,16bpp間隔1次讀取,8bpp間隔4次讀取,。
3.5數(shù)據(jù)存儲模塊設(shè)計
本設(shè)計選用SD卡作為外接存儲硬盤,。SD存儲卡具有大容量、高性能,、安全性好等特點的多功能存儲卡,,被廣泛用于數(shù)碼相機、掌上電腦和手機等便攜式設(shè)備中,。SD卡上所有單元由內(nèi)部時鐘發(fā)生器提供時鐘,,接口驅(qū)動單元同步外部時鐘的DAT和CMD信號到內(nèi)部所用時鐘。SD卡有兩種通信協(xié)議,,即SD通信協(xié)議和SPI通信協(xié)議,,與SPI通信協(xié)議相比,,SD通信協(xié)議的最大優(yōu)點是讀寫速度快,單根數(shù)據(jù)線理論上可以達到25 MB/s,,四線傳輸可以達到100 MB/s,,本設(shè)計采用的是四線SD通信協(xié)議。
本設(shè)計中對SD卡的協(xié)議采用軟件編寫:首先在SoPC Builder里定義了6個I/O口:SD_CMD,,SD_DAT0-DAT3,,SD_CLK,分別對應(yīng)SD卡的命令,、數(shù)據(jù),、時鐘端口,然后在NiosⅡIDE上按照SD卡的傳輸協(xié)議編寫C程序來對6個I/O口進行操作,,以此來實現(xiàn)SD卡的傳輸協(xié)議,。在完成SD卡數(shù)據(jù)塊的讀寫基礎(chǔ)上移植了文件系統(tǒng)。FAT16,,這樣在不影響讀寫速度的條件下節(jié)省FPGA的資源,。
3.6 數(shù)據(jù)傳輸模塊設(shè)計
為了實現(xiàn)遠程的數(shù)據(jù)交換,本系統(tǒng)采用以太網(wǎng)絡(luò)進行數(shù)據(jù)傳輸,。設(shè)計采用DM9000A作為以太網(wǎng)控制芯片,。DM9000A是DAVICOM公司的一款高速網(wǎng)絡(luò)控制器,具有通用處理器接口,、一個10/100M PHY和4
kB的SRAM,。為了實現(xiàn)數(shù)據(jù)的網(wǎng)絡(luò)傳輸,設(shè)計需要完成的任務(wù)有:在NiosⅡ上移植了μClinux操作系統(tǒng),、完成網(wǎng)絡(luò)底層驅(qū)動程序的設(shè)計,、基于網(wǎng)絡(luò)協(xié)議的應(yīng)用程序開發(fā)。其中在NiosⅡ上移植了μClinux操作系統(tǒng)的工作已經(jīng)完成,,因此本設(shè)計的關(guān)鍵任務(wù)是完成網(wǎng)絡(luò)驅(qū)動程序設(shè)計與應(yīng)用程序開發(fā),。
基于DM9000A的HAL設(shè)備驅(qū)動設(shè)計主要分為兩步:首先是DM9000A的Avalon總線接口邏輯設(shè)計;其次DM9000A的讀寫驅(qū)動程序設(shè)計,;最后按照HAL的驅(qū)動模式將DM9000A的驅(qū)動程序移植進HAL,。DM9000A是作為Avalon總線的從外設(shè)與NiosⅡ進行通信。DM9000A的Avalon總線接口邏輯主要完成芯片信號與Avalon總線接口信號的對接,。
DM9000A不允許直接訪問芯片內(nèi)部的寄存器,,需要通過數(shù)據(jù)端口和索引端口來讀寫。而這兩個端口由CMD管腳控制:當CMD接高電平時為數(shù)據(jù)端口,,CMD接低電平為控制端口,。
創(chuàng)建HAL設(shè)備驅(qū)動包括:創(chuàng)建設(shè)備實例和登記設(shè)備。設(shè)計中針對LWIP的結(jié)構(gòu),,定義一個結(jié)構(gòu)體作為DM9000A設(shè)備的alt_dev結(jié)構(gòu):
在NiosⅡ啟動時,,將在aIt_sys_init()中對設(shè)備初始化,,初始化程序如下:
應(yīng)用程序設(shè)計采用TCP/IP、HTTP協(xié)議,,把監(jiān)測器作為Web服務(wù)器端,,遠程PC端作為客戶端通過網(wǎng)頁顯示采集到的心電波形,。
4 實驗結(jié)果
系統(tǒng)對人體心電信號進行了采集,,通過LCD面板進行實時顯示。通過SD卡存儲數(shù)據(jù),,同時采用以太網(wǎng)網(wǎng)絡(luò)將數(shù)據(jù)發(fā)送到遠程的PC端上,,以下是對系統(tǒng)功能的驗證與測試結(jié)果。
4.1 信號采集調(diào)理模塊
心電信號采集調(diào)理模塊是自行設(shè)計的采集板,,主要測量參數(shù)為前置放大器的通道帶寬,、放大能力和陷波特性。經(jīng)測試,,測試信號在1~1 kHz的頻帶帶寬內(nèi)放大增益基本穩(wěn)定在12.1 dB,,即其通道帶寬能≥1 kHz;在頻率為20 Hz和50 Hz時,,放大器對40~800 mV信號的放大能力增益并無明顯變化,,基本穩(wěn)定在11.7~13.1 dB;同時,,陷波器在對50 Hz信號濾波時能將放大增益控制到0.5 dB以下,。因此,基于心電信號的特點所設(shè)計的采集調(diào)理模塊能穩(wěn)定地獲得人體的心電信號,。
4.2 信號顯示模塊
圖5是采集后的心電信號通過本地的LCD面板實時顯示,。從顯示結(jié)果看,心電信號的PQRST五個特征點明顯,,波形平滑,,并且在實際測量中穩(wěn)定無干擾,能真實反映出采集后的心電信號,。
4.3 網(wǎng)絡(luò)傳輸模塊
在設(shè)計中,,網(wǎng)絡(luò)接口功能的實現(xiàn)使采集到的心電信號通過以太網(wǎng)發(fā)送到遠程PC端,實現(xiàn)數(shù)據(jù)的遠程傳輸,。根據(jù)TCP/IP協(xié)議與HTTP協(xié)議,,信號經(jīng)過打包處理后發(fā)送到網(wǎng)絡(luò)上。在遠程PC端,,通過網(wǎng)頁瀏覽器就可以觀看到服務(wù)器端采集到的心電波形,。圖6是心電信號在遠程PC端的網(wǎng)頁瀏覽器上顯示結(jié)果。該測試結(jié)果顯示其與本地的LCD面板顯示波形基本一致,,實現(xiàn)了遠程傳輸功能,。
實驗表明,,該心電監(jiān)護系統(tǒng)能實時準確的實現(xiàn)數(shù)據(jù)的采集、顯示,、存儲和傳輸功能,。
5 結(jié) 語
本文描述了一種基于NiosⅡ軟核處理器的遠程心電醫(yī)療信號監(jiān)測系統(tǒng)的設(shè)計,該設(shè)計已完成了系統(tǒng)平臺的搭建,,并通過了EDA軟件仿真驗證和在DE2開發(fā)板上板級驗證,,能夠?qū)崿F(xiàn)對心電信號的采集調(diào)理、信號波形和數(shù)據(jù)的LCD顯示,、數(shù)據(jù)的存儲,、網(wǎng)絡(luò)傳輸。
設(shè)計中采用了SOPC技術(shù)與IP核復(fù)用技術(shù),,縮短了系統(tǒng)開發(fā)周期,,同時使系統(tǒng)具有便攜式、靈活性,、功能可擴展等功能,。通過移植μClinux操作系統(tǒng),使系統(tǒng)具有了強大的網(wǎng)絡(luò)功能與更加強健的系統(tǒng)穩(wěn)定性,。