王 潔,嚴(yán)榮國,王佳暉,邵泓燃,方旭晨
(1.上海理工大學(xué) 健康科學(xué)與工程學(xué)院,上海 200093;2.上海市楊浦區(qū)市東醫(yī)院 重癥醫(yī)學(xué)科,上海 200438)
近幾年在《中國心血管健康與疾病報(bào)告》數(shù)據(jù)中顯示,中國心力衰竭的患者正在逐漸增多,根據(jù)數(shù)據(jù)推算中國目前大約有890萬心力衰竭患者;而根據(jù)美國疾控及預(yù)防中心的數(shù)據(jù)顯示,目前美國有超過600萬人受到心力衰竭的影響,并且每8個死亡患者中就有1個和心力衰竭有關(guān)[1]。心血管疾病已經(jīng)成為威脅人類最嚴(yán)重的疾病之一[2],是全球唯一處于持續(xù)增長趨勢的心血管疾病[3]。
心電信號波形識別的步驟往往是從QRS波形識別開始,其它特征波形的位置都是以R波位置為基準(zhǔn)進(jìn)行提取的[4]。在體表采集過程中,外部測量設(shè)備,人體的肢體活動、呼吸等因素很容易影響本身比較微弱的心電信號,導(dǎo)致心電信號常伴隨較強(qiáng)的噪聲,為了能提供給臨床準(zhǔn)確而不失真的心電信號,有利于分析其特征信息,必須先對心電信號進(jìn)行快速準(zhǔn)確地去噪以及特征波形的檢測。所以,對R波的檢測成為了近年來研究的關(guān)鍵,其中絕大多數(shù)的心力衰竭都是以左心衰竭開始的。因此,左心室輔助也成為了治療心血管疾病研究的焦點(diǎn)。
心室輔助裝置能夠正常使用的前提是有準(zhǔn)確、實(shí)時的心電信號進(jìn)行控制,機(jī)械裝置輔助作為心臟移植前的過渡支持治療使用[5],因此,能夠?qū)π碾娦盘栠M(jìn)行實(shí)時采集、識別、處理、分析是關(guān)鍵,人們在對臨床上心電信號診斷技術(shù)的理論深入研究之后,提出了實(shí)現(xiàn)心電信號實(shí)時檢測和分析,并給出診斷結(jié)果的想法,將其應(yīng)用于實(shí)踐之中,大大提高了醫(yī)生的診斷效率,使檢測結(jié)果更加精確。就此對現(xiàn)場可編程門陣列(FPGA,field programmable gate array)提取R波檢測及其在左心室輔助裝置的應(yīng)用展開了設(shè)計(jì)。
首先利用Matlab軟件,對美國麻省理工MIT-BIH心律失常數(shù)據(jù)庫[6]中的心電信號進(jìn)行分析及處理。然后,在驗(yàn)證算法的過程中,發(fā)現(xiàn)有限長單位沖擊響應(yīng)(FIR,finite impulse response)濾波及香農(nóng)能量、無限長脈沖響應(yīng)(IIR,indinite impulse response)濾波算法及計(jì)算R-R時間周期可以對信號進(jìn)行很好的處理,對有代表性的幾組心電信號,例如:心電波形漂移,波形雜亂,R波倒置,波形特征不明顯等信號,該算法都可以很好的提取出R波,找到峰值。最后,測試四十八組數(shù)據(jù),模擬實(shí)時動態(tài)的波形,實(shí)時檢測出R波,得出較高的正確率。因?yàn)樵贛atlab上無法做到真正實(shí)時檢測的效果,為了得到采集心電數(shù)據(jù)的實(shí)時性,在硬件上可以實(shí)現(xiàn)預(yù)期的效果,所以設(shè)計(jì)了在FPGA上進(jìn)行采集及數(shù)據(jù)的處理?;贔PGA的左心室輔助控制系統(tǒng)的硬件平臺有多個模塊組成,包括體外膜肺氧合(ECMO,extracorporeal membrane oxygenation)電磁搏動式血泵[7]、顯示屏模塊、FPGA板、繼電器、心電采集模塊、上位機(jī)、生理信號模擬器等。左心室輔助裝置與自然心臟的工作原理相同,作用也相同,都是為了輔助血液循環(huán)運(yùn)動,因此輔助系統(tǒng)在進(jìn)行血液灌注的同時也分為收縮期和舒張期,但大多數(shù)研究人員采用固定頻率來驅(qū)動輔助裝置,只是設(shè)置了一個近似與心電信號同步的頻率,與人體實(shí)時心電信號無關(guān),在這種固定方式驅(qū)動下輔助裝置的收縮期很容易與自體心臟收縮期重疊,當(dāng)兩者收縮動作重疊,會對心臟產(chǎn)生一系列不可預(yù)估的損傷,這有悖了心衰患者使用左心室輔助裝置的初心,因此采用心電同步輔助左心室輔助裝置很好地解決了這個關(guān)鍵問題。
所有的模塊測試完成,軟件與硬件整合后,集成為一整個系統(tǒng)裝置,對此裝置設(shè)計(jì)進(jìn)行了集成驗(yàn)證。通過采集模塊采集多組心電數(shù)據(jù),觀察波形,連接電磁搏動式血泵,測試完成檢測R波并且延時控制血泵泵血的功能。延時的作用不僅可以校正漏檢等的問題,還可以在一定的時間范圍內(nèi)供給足夠的血液,讓患者的體內(nèi)的血液達(dá)到穩(wěn)定循環(huán)的一個過程。
設(shè)計(jì)的驅(qū)動是通過算法得到理想狀態(tài)下的R波提取后,將處理后的心電(ECG,electrocardiogram)信號中的R波峰值進(jìn)行高低電平觸發(fā)脈沖信號,通過多路繼電器模塊,達(dá)到開啟或者閉合高流量搏動式血泵的觸發(fā),從而得到一個循環(huán)且信號同步的效果。設(shè)計(jì)采用的是四路貼片光耦隔離繼電器,驅(qū)動電路連線原理如圖1(a)所示,支持高低電平的觸發(fā),驅(qū)動能力強(qiáng),性能穩(wěn)定。它的輸出端有12線接口,NO是常開接口,繼電器吸合前懸空,吸合后與COM短接;COM為公用接口,NC是常閉接口,吸合前與COM短接,吸合后懸空。
根據(jù)梯度線圈結(jié)構(gòu),設(shè)計(jì)如圖1(b)所示的線圈組驅(qū)動結(jié)構(gòu),線圈組是由繞組a、繞組b 與繞組c 組成。當(dāng)兩個繼電器都處于NO接口時,觸發(fā)線圈a、b通電,永磁體將會受到增強(qiáng)的磁場作用力,從而逐漸向b端方向移動;當(dāng)繼電器處于NC接口時,觸發(fā)線圈a、c通電,永磁體將會受到與b端增強(qiáng)的磁場反向作用力,永磁體便會逐漸向c端方向移動,通過輪流通電,永磁活塞做往復(fù)運(yùn)動,從而實(shí)現(xiàn)永磁體搏動功能。
圖1 驅(qū)動裝置結(jié)構(gòu)圖
這套血泵的核心部分是驅(qū)動裝置如圖1(c)所示,主要包括新型梯度線圈、永磁活塞、血泵泵頭以及杠桿平衡等設(shè)計(jì)。泵頭裝置連接體外管路循環(huán)系統(tǒng)。永磁體向繞組b方向運(yùn)動時,杠桿向上運(yùn)動;向繞組c方向運(yùn)動時,杠桿向下運(yùn)動。以此往復(fù)驅(qū)動杠桿的上下擺動,實(shí)現(xiàn)泵血功能。因?yàn)樵撾姶挪珓邮窖醚b置[8]使用杠桿原理,所以裝置采用了兩組線圈,一組線圈使用兩個繼電器控制驅(qū)動部分,在工作時,兩組線圈通電方向相反,因此永磁體受相反方向的力。血囊受永磁活塞作用舒張或者收縮,結(jié)合血泵腔完成血泵的收縮期灌注血液,舒張期補(bǔ)充血液的功能,最終實(shí)現(xiàn)搏動式灌注的目的。
該電磁式搏動血泵裝置的總體機(jī)械結(jié)構(gòu)如圖1(d)所示,主要由上支架、下支架、驅(qū)動裝置組件等組成。上支架的作用是固定驅(qū)動裝置并且作為平衡杠桿的固定底座;下支架采用拼接式結(jié)構(gòu)組成并具有一定高度,作用是固定上支架以及留足空間給平衡杠桿運(yùn)動;驅(qū)動裝置的作用是驅(qū)動永磁體運(yùn)動??傮w設(shè)計(jì)方案如圖2所示。從患者的體表通過心電采集模塊采集數(shù)據(jù),算法仿真驗(yàn)證后,使用硬件處理數(shù)據(jù)提取R波,采集過程中心電信號較微弱,采取信號放大的一個過程,把采集到的信號傳入FPGA,有顯示屏可以更加直觀地觀察采集的波形和提取到的波形,然后從FPGA給驅(qū)動電路控制左心室輔助裝置的泵血,給患者提供所需要的泵血狀態(tài)。
圖2 總體設(shè)計(jì)方案
若FIR數(shù)字濾波器[9]的單位樣值響應(yīng)為h(n),長度為N,則其系統(tǒng)函數(shù)為:
(1)
上式表明該濾波器在Z平面上有N-1個零點(diǎn),在原點(diǎn)處有N-1個極點(diǎn),系統(tǒng)是絕對穩(wěn)定的,當(dāng)其為偶對稱時,h(n)滿足:
h(n)=h(N-n-1)
(2)
此時稱h(n)關(guān)于(N-1)/2偶對稱,將式(2)代入式(1)可得:
(3)
令m=N-n-1,則有:
(4)
將式(3)和式(4)兩端同時相加,得到:
(5)
故此,F(xiàn)IR濾波器的頻率響應(yīng)為:
H(ejω)=H(z)|z=ejω=
(6)
通過以上處理,就可以利用FIR數(shù)字濾波器減少噪聲的干擾。
在上述處理過程中,是從異常數(shù)據(jù)庫中處理的模擬動態(tài),但實(shí)際上還是已經(jīng)寄存好的數(shù)據(jù)直接使用,調(diào)用固定的樣本量,如果需要實(shí)時檢測,就需要實(shí)時處理信號,伴隨而來的是更多的噪聲,更快處理信號的方法,所以設(shè)計(jì)提出了利用香農(nóng)能量的方法和上述方法結(jié)合,使中等強(qiáng)度信號具有更高的權(quán)重,低強(qiáng)度信號比高強(qiáng)度信號衰減得更多,這樣就增強(qiáng)了中等偏高強(qiáng)度的信號。利用文獻(xiàn)[10]提出的公式:
shannon_energy(i)=
-(noisy_data(i))n×lg(noisy_data(i))n
(7)
其中:shannon_energy是處理后的香農(nóng)能量數(shù)據(jù)組,noisy_data為加入噪聲后的數(shù)據(jù),n是冪次方,n越大,得到的波形越平滑。
將數(shù)據(jù)加入噪聲,以數(shù)據(jù)庫中幾個典型的數(shù)據(jù)為代表,波形數(shù)據(jù)處理測試如圖3所示。
圖3 波形處理前后對比
由數(shù)據(jù)處理前后對比可以得出此算法的有效性,在不同的異常數(shù)據(jù)加入噪聲后,很難提取波形,經(jīng)過香農(nóng)能量處理后得到了較為明顯的降噪波形,對后續(xù)R波檢測有很大的便利性和準(zhǔn)確性。
為了驗(yàn)證其有效性,采用Matlab軟件進(jìn)行了算法的仿真,從MIT-BIH數(shù)據(jù)庫中采集四十八組異常心電信號,使用FIR濾波與IIR濾波的混合算法,一般正常的心電信號頻率范圍為0.05~100 Hz,而90%的心電信號頻譜能量集中在0.25~35 Hz之間[11]。在上述2.1提到函數(shù)的基礎(chǔ)上再利用以下公式:
C1=data(i)-M(2)×C2-M(3)×C3-M(4)×C4
(8)
Y(i)=N(1)×C1-N(2)×C2-N(3)×C3-N(4)×C4
(9)
其中:data是傳輸?shù)臄?shù)據(jù),i代表第一個數(shù)據(jù)開始,到第i個數(shù)據(jù),M是FIR濾波后的四階系數(shù),N是經(jīng)過IIR濾波后的四階系數(shù),C1~C4分別為初始值為0的常數(shù),循環(huán)此流程,循環(huán)一次的過程中,Cn賦值給Cn-1,以此來得到處理后的每個樣本的數(shù)據(jù)值Y(i)。利用處理好的數(shù)據(jù)值繪制波形圖,得到的就是新的心電數(shù)據(jù),對此數(shù)據(jù)進(jìn)一步處理。
對每一組的數(shù)據(jù)進(jìn)行處理,并且利用R-R間期和閾值法同時處理以得到準(zhǔn)確率更高的R波數(shù)量,以MIT-BIH隨機(jī)測試的第111組數(shù)據(jù)檢測樣本,波形倒置,得到的仿真如圖4(a)所示;第113組波形漂移的數(shù)據(jù)處理后得到如圖4(b)所示;第121組只有R波倒置,其它波形不明顯,處理后得到如圖4(c)所示。為了驗(yàn)證算法的普適性,后續(xù)經(jīng)過多組的實(shí)驗(yàn)和典型的異常波形的數(shù)據(jù)處理,都可以很準(zhǔn)確的提取出R波,驗(yàn)證了該算法的可行性,為了呈現(xiàn)實(shí)時性,利用波形的流動性來實(shí)現(xiàn)其實(shí)時檢測的目的。
圖4 測試組數(shù)據(jù)處理
在2.2中的上述幾組測試驗(yàn)證了該方法的可行性,得到了較為理想的處理結(jié)果。結(jié)合2.1中的算法并且通過雙向閾值法可以更好地處理帶有噪聲的異常心電波形。以第121組數(shù)據(jù)作為測試對象,結(jié)果如圖5(a)所示,為了更清晰地觀察數(shù)據(jù)處理后的對比,所以對數(shù)據(jù)對比圖進(jìn)行了局部放大,得到圖5(b)所示,可以看出經(jīng)過香農(nóng)能量處理后的波形降噪效果明顯,并且波形平滑,但是波形倒置,結(jié)合2.1的算法處理后,解決了波形倒置的問題,信號范圍都在基線上下浮動,提取R波也更加容易,減少了檢測R波的時間,更好地達(dá)到了實(shí)時性的檢測效果。
圖5 香農(nóng)能量結(jié)合2.1算法對比檢測R波圖
由此以上算法得到了驗(yàn)證,該算法可以更好地處理數(shù)據(jù)并且準(zhǔn)確地提取出R波,為實(shí)現(xiàn)硬件部分的工作提供了基礎(chǔ)。
ModelSim不僅能做仿真,還能對程序進(jìn)行調(diào)試,對波形進(jìn)行對比等功能。為了驗(yàn)證上述算法,所以用ModelSim進(jìn)行了邏輯仿真驗(yàn)證。
通過Matlab的fdatool濾波器設(shè)計(jì)分析工具可以得到FIR濾波器的系數(shù)[12]。因?yàn)槿梭w的心電信號的輸出信號有正有負(fù),是一種弱電信號,信噪比低,所以得到的數(shù)據(jù)是有很多帶符號小數(shù)的,但是對設(shè)計(jì)使用到的FPGA是不便處理太多小數(shù),因此對小數(shù)部分通過圓整使數(shù)據(jù)整數(shù)化,得到的整數(shù)通過移位寄存數(shù)據(jù)后,將數(shù)據(jù)經(jīng)過與濾波器系數(shù)相乘,然后再將乘積結(jié)果相加完成整個卷積濾波。
為了驗(yàn)證以上所提算法的正確性,并可以在FPGA硬件上實(shí)現(xiàn),所以對算法進(jìn)行了邏輯仿真,測試其中一組心電波形,并且對這組處理后的波形進(jìn)行閾值二值化[13],公式如下:
(10)
其中:E和S分別是心電一個周期內(nèi)的均值與樣本數(shù),若data(i)>Eavg則第二個同步通道為高電平數(shù)字1代替,反之,為低電平數(shù)字0代替。仿真后的如圖6所示。
圖6 邏輯仿真結(jié)果圖
由圖6可以看出該算法仿真后的波形是達(dá)到一定的預(yù)期,波形可以很好地展現(xiàn)出來,也準(zhǔn)確找到了R波的位置,并且檢測提取。
在對FPGA芯片選型的過程中,主要是要考慮到系統(tǒng)所需要的資源量,若選擇的芯片內(nèi)部資源很小,就不能實(shí)現(xiàn)設(shè)計(jì)的要求。相反的,若選取的芯片內(nèi)部資源很大,就會造成不必要的浪費(fèi),帶來不必要的損失[14]。因此,綜合考慮以上等問題,設(shè)計(jì)在實(shí)現(xiàn)過程中,選用的FPGA芯片是Altera公司的Cyclone Ⅳ系列,型號為EP4CE10F17C8。這樣就很好地解決了浪費(fèi)資源的問題。
因?yàn)閺娜梭w采集到的為模擬信號,所以設(shè)計(jì)中需要一個模擬信號轉(zhuǎn)換為數(shù)字信號的ADC128S022芯片[15]進(jìn)行模數(shù)轉(zhuǎn)換,該芯片為8通道12位輸出的ADC。該芯片可以很好地將實(shí)時采集到的模擬信號轉(zhuǎn)換為所要用到的數(shù)字信號。但是采集到的信號會有很多噪聲干擾,所以采用了上述仿真驗(yàn)證的FIR濾波算法。為了提高R波的檢測率,所以在FIR濾波后,再次經(jīng)過中值濾波算法,中值濾波對脈沖噪聲有良好的濾除作用[16],特別是在濾除噪聲的同時,能夠保護(hù)信號的邊緣,還可以減少離散數(shù)據(jù)的波形漂移,主要公式[17]為:
y(i)=Med[x(i-R),…,x(i),…,x(i+R)]
(11)
其中:R為正整數(shù),信號的樣本為中括號里的值,最中間的x(i)是信號中心的樣本值,所有的信號樣本值按照由小到大的順序排列,得到每一輪的中間值即在i處的樣本值,就是最終經(jīng)過中值濾波的輸出值,每一次的輸出值都是經(jīng)過所有信號的樣本值不斷更新之后得到的新的值,不斷循環(huán)得到大量的輸出值,從而構(gòu)成平滑的波形。它的原理流程如圖7所示。
圖7 中值濾波原理流程圖
為便于觀察,設(shè)計(jì)增加了一個計(jì)時模塊,功能燒寫到開發(fā)板上之后就可以開始從零計(jì)時,只有關(guān)閉FPGA開發(fā)板才停止計(jì)時,有計(jì)時功能更加具有直觀性,實(shí)現(xiàn)低成本計(jì)時功能,觀察波形及心率也有一定的時間對比性。并且有狀態(tài)提示,檢測到的心率在固定的范圍內(nèi)會顯示正常,如果超出范圍值就會顯示異常,對于測試者更方便知道自身狀態(tài)。
設(shè)計(jì)過程中,發(fā)現(xiàn)信號采集的同步性也是很重要的一方面,所以采用了鎖相環(huán)(PLL,phase locked loop)的原理,因?yàn)椴蓸訒r鐘同步,所以能在同一時刻進(jìn)行數(shù)據(jù)采集。時鐘模塊通過調(diào)用邏輯器件內(nèi)部的鎖相環(huán)來實(shí)現(xiàn)時鐘的分頻和倍頻從而得到需要的時鐘。如圖8所示,鎖相環(huán)的組成主要有鑒相器(PD,phase detector)、環(huán)路低通濾波器(LF,loop filter)和壓控振蕩器(VCO,voltage control oscillator)[18]。
圖8 鎖相環(huán)路的閉環(huán)控制系統(tǒng)
其中:Ui為輸入信號,Uo為輸出信號,輸出信號作為反饋信號與輸入信號進(jìn)行瞬時相位比較,得到二者的相位差信號Ud(t)。經(jīng)過低通濾波得到平滑的控制信號Uc(t),Uc(t)控制壓控振蕩器輸出信號Uo,最后使Ui、Uo兩個信號同頻同相,從而維持發(fā)射回路的諧振狀態(tài)。PLL還可以修改所需要的頻率,利于調(diào)整參數(shù),及時在編程中更新,大大降低了在時間上的耗費(fèi)。
在FPGA上實(shí)現(xiàn)的程序如圖9所示。
圖9 FPGA程序框圖
從硬件外部進(jìn)行信號采集,輸入FPGA利用模數(shù)轉(zhuǎn)換實(shí)時對數(shù)據(jù)進(jìn)行處理,通過以上算法后設(shè)置閾值及R-R間期,準(zhǔn)確提取出R波,從而進(jìn)行后續(xù)的心率及R波檢測,為呈現(xiàn)可觀性的即同步處理后的波形,利用了TFT屏幕,更加直觀地看到實(shí)時采集及處理后的波形。提取R波時,通過高階中值濾波的算法,可以讓信號大的集中在中間,還可以有效地處理波形漂移的問題,對于R波明顯,其它波形不明顯,或者心律較快較慢等都可以進(jìn)行很好的處理。
通過兩個方式分別采集正常心電信號和異常心電信號。
1)AD8232心電傳感器。以正常人體作為信號輸入部分,考慮低成本、低功耗的需求,選用具有導(dǎo)聯(lián)脫落檢測的AD8232芯片[19]對心電信號進(jìn)行放大。該芯片可以在有運(yùn)動或遠(yuǎn)程電極放置產(chǎn)生噪聲的情況下提取、放大及過濾微弱的生物電信號,使得模數(shù)轉(zhuǎn)換器或嵌入式微控制器能夠便捷的采集輸出信號。AD8232采集到的ECG信號為基準(zhǔn),識別心電信號R波特征點(diǎn),根據(jù)特征點(diǎn)進(jìn)行與患者自體心臟同步時序的輔助。電路采用左臂(LA,left arm)、右臂(RA,right arm)、右腿(RL,right leg)3個電極,分別貼于人體的左胸、右胸及右下腹,或者貼于左右手腕及右腿腕處,使用差分輸入方式降低共模干擾信號對心電信號的影響,就可將心臟產(chǎn)生的微弱電流記錄下來,得到的曲線就為心電圖。采集到的心電信號從人體輸出到FPGA中,經(jīng)過FPGA的處理呈現(xiàn)在顯示屏上面并且設(shè)置了上下兩個通道,上通道是采集處理后的正常人體心電波形圖,下通道是提取R波的波形圖。
2)生理信號模擬器。在采集過程中,對正常心電信號可以利用上述心電采集模塊,但是由于在試驗(yàn)中,所以不便對真正的患者進(jìn)行采集異常的心電信號,用到了生理信號模擬器,這個設(shè)備可以模擬各類異常的心電信號,并且可以實(shí)時輸出,以此作為測試者,選取其中一組異常心電信號,但是其輸出的信號十分微弱,最大是mV,最小的為μV級別[20],不便于采集到FPGA板上進(jìn)行數(shù)據(jù)處理,若要得到理想的信號輸出,需要信號放大器,該放大器是經(jīng)過百倍或者千倍的放大后輸出為伏級別的信號,傳輸?shù)紽PGA上經(jīng)過數(shù)據(jù)處理后可以很好地呈現(xiàn)在開發(fā)板的屏幕上,以進(jìn)行后續(xù)的信號處理。
首先,以人體為被測試對象,接入采集模塊,通過上述驗(yàn)證的FPGA算法處理,連接血泵裝置,測試其是否可以達(dá)到理論上的準(zhǔn)確率及效果。在測試中,被測試對象通過電極片的傳輸采集心電信號,處理結(jié)果呈現(xiàn)在顯示屏上,在顯示屏上有心率統(tǒng)計(jì),每一次的心跳都會觸發(fā)電磁式搏動血泵的驅(qū)動部分,從而控制杠桿上下擺動,達(dá)到供血的目的,通過不同的樣本量和同一時間周期測量,測試二十組正常的人體心電信號,可以得到是否達(dá)到期望的準(zhǔn)確率。
其次,以生理信號模擬器為被測試對象,模擬患者的異常心電信號,同樣通過信號采集到FPGA中,因?yàn)槭菍?shí)時采集信號,所以模擬器需要通過導(dǎo)聯(lián)線直接接入硬件部分,在硬件中進(jìn)行實(shí)時信號處理,連接血泵裝置,控制驅(qū)動電路,觀察杠桿的上下擺動次數(shù)及供血次數(shù),測試每一次提取R波后驅(qū)動血泵的狀態(tài),從而觀察和統(tǒng)計(jì)提取R波的數(shù)量與觸發(fā)電磁式搏動血泵的次數(shù)是否一致,測試生理信號模擬器中的異常心電信號共47組,最后觀察并計(jì)算提取率是否達(dá)到較高的準(zhǔn)確率。
最后,要進(jìn)行同步輔助測試,測試AD8232傳感器是否能準(zhǔn)確采集心電信號,輸入到FPGA中采集到的心電信號是否與實(shí)際信號同步,處理后的信號是否降低了噪聲的干擾,波形平滑程度及清晰度,觀察算法是否可以準(zhǔn)確并迅速地識別R波。在一系列測試后,對血泵裝置進(jìn)行同步測試,驅(qū)動裝置是否帶動杠桿運(yùn)動,運(yùn)動的頻率與識別到的R波是否同步,供血程度是否可以達(dá)到所需要求,對以上一一進(jìn)行驗(yàn)證。
為了展示對異常心電的R波檢測效果,所以選取了一組具有代表性的異常心電,得到噪聲較大的波形圖,如圖10(a)所示,經(jīng)過FIR結(jié)合香農(nóng)能量算法與自適應(yīng)中值濾波后得到一個較為平滑且噪聲減小的波形圖,波形也更加清晰可辨認(rèn),如圖10(b)所示。
圖10 去除噪聲波形對比圖
處理之后的波形更易提取R波信號,例如像上述降噪之后的波形,是一個典型的R波倒置異常波形圖,對此采用下限閾值及R-R間期可以提取出較為準(zhǔn)確的R波;R波明顯,其它波不明顯,可以采用上限閾值及R-R間期提取R波。以異常數(shù)據(jù)庫中的第102組實(shí)時模擬信號為例,在經(jīng)過FPGA處理之后的波形,直線為分割區(qū)域,上面的通道為采集到的異常波形,下面的通道是提取到的R波范圍,使用高低電平表示如圖11所示。這個界面為實(shí)時更新的狀態(tài),可以更直觀且有效地反應(yīng)出心電波形的一個變化趨勢,實(shí)時檢測可以隨時反映被測試者的心電信號變化,及時發(fā)現(xiàn)問題,可以更好且更快地處理問題。經(jīng)過實(shí)驗(yàn)測試后,每測到一次R波時,如圖界面會有一次高電平控制血泵裝置的活塞驅(qū)動杠桿向下運(yùn)動一次,高低電平交替往復(fù)控制杠桿上下擺動從而血液會經(jīng)過管道泵一次血液流入腔體,測得的R波的數(shù)量與觸發(fā)電磁式搏動血泵的次數(shù)一致,觸發(fā)后供血達(dá)到需求量,所以該設(shè)計(jì)具有可行性。
圖11 硬件提取R波圖
為了驗(yàn)證算法的寬泛性,用MIT-BIH數(shù)據(jù)庫的數(shù)據(jù)用該算法對每一組的心電信號進(jìn)行測試,見表1所示,共47組心電信號。其中100號、101號等34組準(zhǔn)確率為100%,剩余13組異常心電信號準(zhǔn)確率沒有達(dá)到100%,異常信號較為廣泛,甚至沒有規(guī)律,并且需要實(shí)時處理,所以不能對所有異常信號都適用,雖然有漏檢或者誤檢,但總體準(zhǔn)確率為99.73%,是一個較為理想的檢出準(zhǔn)確率。因?yàn)樵趯?shí)驗(yàn)階段,所以電磁搏動式血泵僅測試了多組正常心電,都識別出了R波并給血,均達(dá)到了非常理想的結(jié)果。
表1 MIT-BIH數(shù)據(jù)庫數(shù)據(jù)R波檢測結(jié)果
近些年來,心臟病發(fā)病頻率直線上升,當(dāng)人體心臟病變而導(dǎo)致心臟衰竭時,心臟的收縮能力和舒張能力就受到影響,無法為人體灌注足夠的血液。
就此設(shè)計(jì)提出了一種能夠在FPGA上實(shí)現(xiàn)心電信號自動采集檢測的方案,采集模塊可以實(shí)時采集到人體心電信號,實(shí)現(xiàn)了FPGA控制血泵進(jìn)行輔助治療,采集后的心電信號經(jīng)過FPGA處理后,通過觸發(fā)繼電器控制線圈及其內(nèi)部永磁體進(jìn)行泵血,針對血泵的驅(qū)動特性,確定患者心跳周期和心率,從而進(jìn)行同步心室輔助。采用MIT-BIH心電數(shù)據(jù)庫中的心電信號作為信號源,利用ModelSim軟件和Verilog語言進(jìn)行編譯仿真,通過Matlab和ModelSim的仿真測試,從仿真結(jié)果可以看出,本設(shè)計(jì)的檢測結(jié)果準(zhǔn)確。使用FPGA硬件實(shí)時采集心電信號,并且通過FIR濾波結(jié)合香農(nóng)能量算法和高階中值濾波等算法實(shí)現(xiàn)實(shí)時處理提取R波,提高檢測的準(zhǔn)確率,最后控制設(shè)計(jì)的電磁搏動式血泵裝置,達(dá)到輔助患者收縮及舒張血液的作用,這一創(chuàng)新設(shè)計(jì)為臨床的左心室衰竭患者提供了幫助。