彭曉珊 王 娟 舒澤芳
(1.貴陽學(xué)院電子與通信工程學(xué)院,貴州貴陽550003;2.貴陽學(xué)院機(jī)械工程學(xué)院,貴州貴陽550003)
心電監(jiān)測(cè)儀能對(duì)患者心臟功能進(jìn)行監(jiān)測(cè),顯示P波、QRS波群、T波和U波等主要ECG波形。心電監(jiān)測(cè)儀能否有效監(jiān)測(cè)各種心律失常波形是保護(hù)患者生命安全的前提,同時(shí)也是檢驗(yàn)其自身質(zhì)量的關(guān)鍵因素。對(duì)心電監(jiān)測(cè)儀進(jìn)行出廠前的功能測(cè)試是心電監(jiān)測(cè)儀生產(chǎn)中必不可少的環(huán)節(jié),本文針對(duì)測(cè)試工裝中模擬信號(hào)源的設(shè)計(jì)問題,提出了相應(yīng)解決方案,首先將MIT-BIH提供的48組心律失常信號(hào)通過ATM工具轉(zhuǎn)換成相應(yīng)的TXT格式,然后將TXT文件轉(zhuǎn)換為CSV后寫入STM32F103嵌入式處理器的SRAM中,通過STM32F103內(nèi)置DAC進(jìn)行數(shù)模轉(zhuǎn)換,最終形成測(cè)試模擬信號(hào)源。
ECG模擬信號(hào)源由MIT-BIH數(shù)據(jù)庫、ATM配置工具、數(shù)據(jù)格式轉(zhuǎn)換和STM32F103最小系統(tǒng)四部分構(gòu)成,其原理圖如圖1所示。
圖1 ECG模擬信號(hào)源原理圖
目前國際上公認(rèn)的心律失常數(shù)據(jù)庫有三個(gè),分別為美國心臟協(xié)會(huì)AHA數(shù)據(jù)庫、美國麻省理工學(xué)院MIT-BIH數(shù)據(jù)庫、歐洲的ST-T數(shù)據(jù)庫,其中MIT-BIH數(shù)據(jù)以其數(shù)據(jù)齊全、開放以及轉(zhuǎn)換形式方便而被廣泛使用。MIT-BIH數(shù)據(jù)庫來自4 000個(gè)住院病人的心律失常案例,均為動(dòng)態(tài)心電圖數(shù)據(jù),MIT-BIH從中選擇了48組數(shù)據(jù)對(duì)外公布。心律失常數(shù)據(jù)庫中每一組記錄包括三個(gè)文件——頭文件(.hea)、數(shù)據(jù)文件(.dat)、注釋文件(.atr),頭文件主要對(duì)數(shù)據(jù)文件進(jìn)行格式說明,注釋文件為心電專家的診斷信息,數(shù)據(jù)文件為具體的心電信號(hào)的ADC轉(zhuǎn)換值[1]。
MIT-BIH數(shù)據(jù)記錄中的數(shù)據(jù)文件采用了特殊的ASCⅡ存儲(chǔ)格式,不易被相關(guān)軟件(例如MATLAB、MDK等)讀取分析。ATM為MIT提供的網(wǎng)頁轉(zhuǎn)換配置工具,能方便地將特殊格式轉(zhuǎn)換成TXT格式[2]。
如圖2所示,配置界面上Input為數(shù)據(jù)庫來源選擇,選擇MIT-BIH后在Record部分可以選擇48組記錄中的任意一組數(shù)據(jù)加以轉(zhuǎn)換,ToolBox配置數(shù)據(jù)轉(zhuǎn)換的形式,可選項(xiàng)包括TXT、MAT等等。
圖2 ATM工具配置界面
部分TXT數(shù)據(jù)形式如下:
Elapsed time V5 V2
hh:mm:ss.mmm (mV) (mV)
0:00.000-0.200 0.005
0:00.003-0.200 0.005
……
TXT文本中第一列代表采樣時(shí)間,第二列為V5胸導(dǎo)聯(lián)信號(hào)電壓值,第三列為V2胸導(dǎo)聯(lián)信號(hào)電壓值。利用MATLAB軟件讀取TXT文件,然后將其利用&“,”語句轉(zhuǎn)換成帶逗號(hào)的CSV文件,供后續(xù)的STM32源程序使用。
STM32F103最小系統(tǒng)硬件設(shè)計(jì)如圖3所示,包括晶振部分、電源復(fù)位部分、BOOT啟動(dòng)部分等。選用的STM32芯片為F103VCT6型號(hào),包含64K SRAM、512K FLASH[3]。
圖3 STM32F103最小系統(tǒng)硬件原理圖
MIT-BIH中48組數(shù)據(jù)轉(zhuǎn)換成CSV文件后,將其轉(zhuǎn)存為96個(gè)二維整型數(shù)組,每個(gè)二維數(shù)組第一列為采樣時(shí)間,第二列為相應(yīng)導(dǎo)聯(lián)的電壓數(shù)據(jù)。STM32F103的軟件部分主要圍繞DAC轉(zhuǎn)換部分設(shè)計(jì),包括DAC通道1輸出初始化部分和DAC轉(zhuǎn)換部分,代碼如下:
#include”dac.h”//DAC通道1輸出初始化[4]
void Dac1_Init(void)
{RCC->APB2ENR|=1<<2;//使能PORTA時(shí)鐘
RCC->APB1ENR|=1<<29;//使能DAC時(shí)鐘
GPIOA->CRL&=0XFFF0FFFF;
GPIOA->CRL|=0X00000000;}//PA4模擬輸出;
//DAC轉(zhuǎn)換部分,data:0~3300,代表0~3.3 V
void Dac1_Set_data(u16 vol)
{float temp=vol;temp/=1000;temp=temp*4096/3.3;
DAC->DHR12R1=temp;}
利用MIT-BIH中的源數(shù)據(jù)進(jìn)行信號(hào)源測(cè)試,以207組數(shù)據(jù)為例,MIT-BIH的207組數(shù)據(jù)包括有ECG標(biāo)準(zhǔn)導(dǎo)聯(lián)Ⅱ,其ATM顯示的波形如圖4所示。
圖4 標(biāo)準(zhǔn)導(dǎo)聯(lián)Ⅱ的ATM波形
固緯GOS-2204A示波器對(duì)信號(hào)源進(jìn)行207組數(shù)據(jù)測(cè)試,標(biāo)準(zhǔn)導(dǎo)聯(lián)Ⅱ示波器顯示如圖5所示,示波器測(cè)試和ATM波形相一致。
圖5 標(biāo)準(zhǔn)導(dǎo)聯(lián)Ⅱ示波器顯示
測(cè)試結(jié)果表明,STM32F103豐富的硬軟件功能為MIT-BIH的心律異常數(shù)據(jù)模擬復(fù)現(xiàn)提供了條件,通過設(shè)計(jì)相應(yīng)的硬軟件模塊,可模擬復(fù)現(xiàn)MIT-BIH中48組數(shù)據(jù),產(chǎn)生心律異常數(shù)據(jù)模擬信號(hào)源,為相關(guān)廠家設(shè)計(jì)心電監(jiān)測(cè)儀的測(cè)試工裝提供重要部件,因而具有重要的應(yīng)用價(jià)值。
[1]宋春麗.怎樣識(shí)讀MIT-BIH中的心電信號(hào)[J].科技資訊,2010(9):27.
[2]宋喜國,鄧親愷.MIT-BIH心率失常數(shù)據(jù)庫的識(shí)讀及應(yīng)用[J].中國醫(yī)學(xué)物理學(xué)雜志,2004,21(4):230-232.
[3]勾慧蘭,劉光超.基于STM32的最小系統(tǒng)及串口通信的實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2012,25(9):26-28.
[4]劉軍,張洋,嚴(yán)漢宇.例說STM32[M].2版.北京:北京航空航天大學(xué)出版社,2014.