摘 要: 介紹了一種人體脈搏信號(hào)的采集系統(tǒng),通過(guò)專用的脈搏傳感器采集信號(hào),將得到的信號(hào)經(jīng)過(guò)預(yù)處理后送到FPGA,暫存到RAM中,同時(shí)用FPGA驅(qū)動(dòng)VGA接口實(shí)時(shí)顯示脈搏波形。利用FPGA的片內(nèi)資源RAM實(shí)現(xiàn)了脈搏波形圖像的動(dòng)態(tài)顯示,實(shí)時(shí)性好、畫(huà)面清晰,為后續(xù)的生理病理信息提取提供了有效支持。
關(guān)鍵詞: 脈搏信號(hào);FPGA;VGA;RAM
脈搏信號(hào)中包含人體重要的生理病理信息,常作為心血管疾病診斷和治療的依據(jù)。隨著信息采集技術(shù)以及生物醫(yī)學(xué)的迅速發(fā)展,脈搏信號(hào)的獲取也有了新的方法。本文提出將脈搏信號(hào)實(shí)時(shí)顯示出來(lái),為診治醫(yī)師提供足夠的病理信息,提高傳統(tǒng)脈診的效率。
本系統(tǒng)的脈搏信號(hào)顯示借助VGA接口來(lái)實(shí)現(xiàn)。以往對(duì)于VGA顯示的研究側(cè)重于VGA接口驅(qū)動(dòng)技術(shù),主要實(shí)現(xiàn)VGA靜態(tài)顯示[1-2]。基于此種現(xiàn)象,本文提出了利用雙口RAM來(lái)實(shí)現(xiàn)脈搏采集數(shù)據(jù)的存儲(chǔ)與讀取,從而可以實(shí)現(xiàn)實(shí)時(shí)顯示,結(jié)果證明此方案可以很好地滿足要求。同時(shí),本系統(tǒng)充分利用了FPGA的硬件資源,取代了VGA的專用顯示芯片,降低了系統(tǒng)的開(kāi)發(fā)成本,提高了系統(tǒng)的集成度。
1 總體設(shè)計(jì)
采集到的脈搏信號(hào)往往比較微弱,而且伴隨著很多噪聲。因此需要濾波、放大等處理電路進(jìn)行預(yù)處理。脈搏信號(hào)屬于模擬信號(hào),要想送到FPGA處理,需進(jìn)行模/數(shù)轉(zhuǎn)換。FPGA將數(shù)字信號(hào)存儲(chǔ)在內(nèi)部RAM中,并利用Verilog HDL語(yǔ)言編寫(xiě)VGA顯示控制模塊,驅(qū)動(dòng)顯示器顯示脈搏波形。整個(gè)系統(tǒng)的原理框圖如圖1所示。
2 系統(tǒng)實(shí)現(xiàn)
2.1 信號(hào)處理電路
脈搏信號(hào)存在頻率低、信號(hào)弱、噪聲嚴(yán)重等問(wèn)題。脈象頻譜分析表明,脈象能譜中99%的能量集中在10 Hz以下[3],而且正常成人的脈搏跳動(dòng)次數(shù)為60~100次/min,脈率是1~1.67 Hz。為了濾除噪聲,又不影響脈搏信號(hào)的能量,選擇0.8~20 Hz作為信號(hào)的頻帶寬度。因此,本設(shè)計(jì)的信號(hào)處理電路主要由前置放大器、高通濾波器、低通濾波器、主放大器組成。信號(hào)處理電路圖如圖2所示。
經(jīng)分析,信號(hào)處理電路的頻率帶寬為0.72 Hz~20 Hz,放大倍數(shù)為300多倍,可以完成功能要求。另外,實(shí)際中將R7用10 k?贅的電位器代替,從而實(shí)現(xiàn)放大倍數(shù)可調(diào)的目的,適用更多的場(chǎng)合。
2.2 A/D轉(zhuǎn)換
A/D轉(zhuǎn)換芯片主要完成模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換。ADC0804是逐次比較型集成A/D轉(zhuǎn)換器,分辨率為8位,轉(zhuǎn)換時(shí)間為100 μs,輸入電壓范圍為0~5 V,而且價(jià)格便宜、操作簡(jiǎn)便?;谝陨咸攸c(diǎn),本設(shè)計(jì)選用ADC0804作為A/D轉(zhuǎn)換芯片。對(duì)經(jīng)過(guò)處理電路處理的脈搏信號(hào)進(jìn)行采樣,并將得到的數(shù)字信號(hào)送到FPGA中。
2.3 FPGA控制
本系統(tǒng)的FPGA控制部分主要由分頻模塊、RAM、VGA控制模塊三部分組成。
根據(jù)電視原理有關(guān)VGA顯示的內(nèi)容可知,VGA顯示采用逐行掃描方式。掃描是從屏幕的左上方開(kāi)始,從左到右、從上到下。本系統(tǒng)采用640×480@60 Hz顯示模式,其中60 Hz為場(chǎng)掃描頻率。對(duì)于一個(gè)場(chǎng)掃描頻率為60 Hz、分辨率為640×480的顯示模式,其典型的VGA時(shí)序表如表1所示。
由表1可以計(jì)算出VGA驅(qū)動(dòng)所需的時(shí)鐘頻率為800×552×60 Hz=25.2 MHz。而FPGA的時(shí)鐘頻率為50 MHz,因此需要一個(gè)分頻模塊,實(shí)現(xiàn)二分頻的功能。
VGA控制部分主要是產(chǎn)生行同步信號(hào)(Hsync)和場(chǎng)同步信號(hào)(Vsync),模擬VGA的顯示時(shí)序表。此模塊的設(shè)計(jì)思想是模擬逐行掃描的過(guò)程,每行800個(gè)像素點(diǎn),掃完一行,接著掃第二行,一共有525行。因此,可以設(shè)計(jì)兩個(gè)計(jì)數(shù)器,行計(jì)數(shù)器(h_cnt)和列計(jì)數(shù)器(v_cnt)。h_cnt從0開(kāi)始計(jì)數(shù),計(jì)到799后歸零;v_cnt也從0開(kāi)始計(jì)數(shù),計(jì)到524后歸零,并且在h_cnt計(jì)到799后,v_cnt加1,clk_25m作為兩個(gè)計(jì)數(shù)器的觸發(fā)脈沖。當(dāng)h_cnt=96時(shí),Hsync=1;當(dāng)h_cnt=0時(shí),Hsync=0。類似的,當(dāng)v_cnt=2時(shí),Vsync=1;當(dāng)v_cnt=0時(shí),Vsync=0。從而實(shí)現(xiàn)了行同步信號(hào)和列同步信號(hào)的產(chǎn)生,并模擬了VGA顯示時(shí)序表。行計(jì)數(shù)器的程序流程圖如圖3所示。
顯示器是由一個(gè)個(gè)像素點(diǎn)組成的,如果是640×480的顯示模式,就意味著每行有640個(gè)像素點(diǎn),每列有480個(gè)像素點(diǎn),一共是307 200個(gè)像素點(diǎn)。圖像在顯示器上顯示,其實(shí)就是點(diǎn)亮相應(yīng)的像素點(diǎn)。因此,基于這種理解,可以將脈搏波形當(dāng)作一幅圖像,波形走過(guò)的地方就是相應(yīng)的像素點(diǎn)被點(diǎn)亮了。因此對(duì)脈搏信號(hào)采樣,得到的就是相應(yīng)的像素點(diǎn)。如果將采樣值作為列坐標(biāo),第幾次采樣作為行坐標(biāo),就可以確定一個(gè)像素點(diǎn),繼而可以描繪出一幅脈搏波形圖。
通過(guò)上面的分析過(guò)程,提出一個(gè)解決方案,就是尋找一個(gè)存儲(chǔ)介質(zhì),既可以讀,又可以寫(xiě)。而FPGA正好有這樣的資源,于是采用RAM來(lái)充當(dāng)這個(gè)存儲(chǔ)介質(zhì)。從VGA顯示原理已經(jīng)知道,VGA顯示采用的是逐行掃描的方式。如果將采樣值作為RAM的地址,也是列坐標(biāo),而將第幾次采樣作為相應(yīng)的存儲(chǔ)單元存儲(chǔ)的內(nèi)容,同時(shí)也是行坐標(biāo)。這樣既有了行坐標(biāo),又有了列坐標(biāo)。當(dāng)VGA掃描時(shí),掃描到某一行,就到相應(yīng)的RAM存儲(chǔ)單元取出其中的內(nèi)容,并判斷是否與當(dāng)前掃描到的行坐標(biāo)相同,如果相同則點(diǎn)亮此像素點(diǎn),否則就不點(diǎn)亮。這就是RAM部分的設(shè)計(jì)思想。
3 系統(tǒng)調(diào)試
3.1 脈搏采集部分
將處理電路測(cè)試完畢,并連接上脈搏傳感器,對(duì)人體脈搏信號(hào)進(jìn)行采集,利用示波器顯示脈搏波形,如圖4所示。可見(jiàn)該部分電路工作正常,并且能滿足設(shè)計(jì)要求。
圖中clk_50m為系統(tǒng)時(shí)鐘輸入,頻率為50 MHz;rst_n為復(fù)位信號(hào),低電平有效;clk_25m為分頻器的輸出,頻率為25 MHz,用于VGA驅(qū)動(dòng)部分;hsync為行同步信號(hào),vsync為場(chǎng)同步信號(hào);h_cnt為行計(jì)數(shù)器,v_cnt為列計(jì)數(shù)器。可以發(fā)現(xiàn)VGA驅(qū)動(dòng)模塊完全可以正常工作。
3.3 系統(tǒng)結(jié)果
將各模塊調(diào)試完畢,組成整個(gè)系統(tǒng),測(cè)試結(jié)果如圖6所示。
從圖6看出脈搏波形可以基本實(shí)現(xiàn)在VGA顯示器實(shí)時(shí)顯示的設(shè)計(jì)要求。通過(guò)分析脈搏波形在一定時(shí)間內(nèi)的變化趨勢(shì)以及脈搏的跳動(dòng)次數(shù),為評(píng)價(jià)測(cè)試者的心血管系統(tǒng)的健康狀況提供參考信息。
本系統(tǒng)利用了微壓脈搏傳感器對(duì)脈搏信號(hào)進(jìn)行采集,通過(guò)處理電路進(jìn)行濾波、放大以及A/D采樣,并利用FPGA驅(qū)動(dòng)VGA顯示器顯示。實(shí)驗(yàn)表明,此系統(tǒng)能夠?qū)崟r(shí)采集人體脈搏信號(hào),并且能正常、穩(wěn)定地顯示。
本系統(tǒng)利用RAM實(shí)現(xiàn)了采集波形的實(shí)時(shí)動(dòng)態(tài)顯示,對(duì)實(shí)時(shí)性要求高的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)具有很高的參考價(jià)值。同時(shí),對(duì)本系統(tǒng)可以進(jìn)行二次開(kāi)發(fā),將脈搏波形數(shù)據(jù)通過(guò)無(wú)線網(wǎng)絡(luò)發(fā)送到醫(yī)療中心,以便為就診專家提供足夠的病理信息,在一定程度上提高了醫(yī)療救助的效率。
參考文獻(xiàn)
[1] 姜世杰,余紅英,洪永學(xué),等.基于FPGA的VGA接口驅(qū)動(dòng)技術(shù)[J].電子測(cè)試,2012(12):29-32.
[2] 劉峰.基于FPGA的VGA控制器實(shí)現(xiàn)[J].電子元器件應(yīng)用,2010,12(11):33-35.
[3] 王國(guó)力,趙子?jì)?,白金?PVdF壓電薄膜脈搏傳感器的研制[J].傳感技術(shù)學(xué)報(bào),2004(4):688-692.
[4] 吳友宇.模擬電子技術(shù)基礎(chǔ)[M].北京:清華大學(xué)出版社,2010.