薛艷博,尤一鳴,熊 慧
(天津工業(yè)大學(xué) 電氣工程與自動(dòng)化學(xué)院,天津300160)
隨著具有高速運(yùn)算能力及靈活的界面顯示特性的虛擬儀器的迅速發(fā)展,數(shù)字濾波技術(shù)成為采集系統(tǒng)中一種簡(jiǎn)化電路及降低成本的重要手段[1]。
采集系統(tǒng)中,工頻干擾是影響信號(hào)檢測(cè)質(zhì)量的主要因素之一。在數(shù)字濾波技術(shù)領(lǐng)域,常用的工頻干擾濾除算法有陷波濾波法、工頻干擾回歸相減消除法(Regress-Subtraction)、自適應(yīng)濾波法等[2]。參考文獻(xiàn)[3]提出的自適應(yīng)相干模板法是一種有效濾除工頻干擾的算法,該算法以加法和減法為主,運(yùn)算效率較高,可通過合理選擇采樣頻率來確定帶阻濾波器的中心頻率,通過改變模板長(zhǎng)度,實(shí)現(xiàn)濾波器帶寬的調(diào)整[3]。但是在多數(shù)采集系統(tǒng)中,由于工頻干擾的頻率是不斷變化的,導(dǎo)致該算法在有效濾除工頻干擾的同時(shí),不能保證濾波器較好的低頻特性。為此參考文獻(xiàn)[4]提出了一種改進(jìn)算法——簡(jiǎn)化FFT可跟蹤工頻干擾的自適應(yīng)相干模板法,該算法通過跟蹤工頻干擾頻率的變化,不斷微調(diào)濾波器帶阻中心頻率,從而使濾波器同時(shí)具備了良好的低頻特性和工頻抑制特性。但是該算法能否達(dá)到良好的濾波效果,關(guān)鍵在于能否準(zhǔn)確實(shí)時(shí)跟蹤工頻干擾頻率的變化,例如在有些工頻干擾頻率變化較快的采集系統(tǒng)中,該算法濾波效果會(huì)明顯變差。本文提出了一種基于LabVIEW的雙線程模式跟蹤工頻干擾的自適應(yīng)相干模板法,即工頻干擾的跟蹤和濾除分別采用獨(dú)立線程,線程之間采用通知器進(jìn)行協(xié)調(diào)。從而保證即使在工頻干擾變化較快的采集系統(tǒng)中,也能同時(shí)完成對(duì)工頻干擾的實(shí)時(shí)跟蹤和高速有效的濾除。
自適應(yīng)相干模板法根據(jù)原始信號(hào)的相干特點(diǎn),從原始信號(hào)中得到工頻干擾的模板,再減去該模板,從而實(shí)現(xiàn)工頻干擾的濾除。
設(shè)X(n)為原始信號(hào),S(n)為有用信號(hào),N(n)為工頻干擾信號(hào),則X(n)=S(n)+N(n),定義模板信號(hào)為:
式中,fS為采樣頻率;fg為周期性干擾頻率。對(duì)于自適應(yīng)模板法,要求fS為fg的整數(shù)倍,即若工頻干擾fg為50 Hz,則要求 fS=L×fg,L為整數(shù)。 由于 N(n)為周期信號(hào),若S(n)為零均值信號(hào),當(dāng)M足夠大時(shí):
將式(2)代人式(1)中,可得:
由 X(n)=S(n)+N(n)可知,從 X(n)中減去模板信號(hào)M(n)可得到S(n),達(dá)到濾除工頻干擾的目的。即:
對(duì)式(4)作Z變換,可得到對(duì)應(yīng)的系統(tǒng)傳遞函數(shù)為:
令z=ejω,得到其對(duì)應(yīng)的頻域表達(dá)式為:
式(6)可以看作是一全通濾波器減去帶通濾波器的形式,帶通濾波器幅頻響應(yīng)由 sin(LMω)/(sin(Lω))決定,其分子項(xiàng)周期較短,隨ω變化而迅速變化,形成了高速抖動(dòng)的波紋,并決定了濾波器的陷波帶寬,與之相比分母周期較長(zhǎng),變化緩慢,決定了通帶的位置。圖1為在不同M值時(shí)系統(tǒng)的幅頻響應(yīng)特性。
由圖1可知,M值較大時(shí),通頻帶的紋波系數(shù)較小,阻帶寬度也較窄,即系統(tǒng)幅頻特性較好。但在實(shí)際設(shè)計(jì)濾波器過程中,當(dāng)M值大到超過某一值時(shí),工頻干擾的濾波效果反而會(huì)變差,原因在于工頻干擾并非為理想的50 Hz,而是具有一定頻率變化范圍(49.5 Hz~50.5 Hz)[3]。 所以在有效濾除工頻干擾的同時(shí),要保證濾波器具有足夠低的低端截止頻率,就必須對(duì)原算法進(jìn)行改進(jìn)。
由式(6)可知:濾波器帶阻中心頻率只跟L有關(guān),所以可通過FFT跟蹤工頻干擾頻率的變化來實(shí)時(shí)調(diào)整濾波器陷波中心頻率,以達(dá)到同時(shí)濾除工頻干擾和基線漂移的效果。圖2為在微調(diào)采樣頻率時(shí)系統(tǒng)的幅頻特性。
根據(jù)上述算法原理,改進(jìn)后的算法實(shí)現(xiàn)主要包括濾波器帶阻中心頻率的微調(diào)和工頻干擾濾除兩部分內(nèi)容,在LabVIEW上實(shí)現(xiàn)可采用雙線程同時(shí)運(yùn)行兩部分程序,線程之間通過事件通知控件進(jìn)行協(xié)調(diào)和同步。這樣可以在提高程序運(yùn)行效率的同時(shí),實(shí)現(xiàn)快速實(shí)時(shí)跟蹤和濾除工頻干擾的目的。
濾波器帶阻中心頻率主要根據(jù)FFT提取工頻干擾頻率的變化來微調(diào),程序流程如圖3所示。首先預(yù)設(shè)一個(gè)采樣頻率fS,采集N個(gè)信號(hào)數(shù)據(jù),通過FFT提取信號(hào)數(shù)據(jù)中工頻干擾頻率分量對(duì)應(yīng)的頻譜位置。然后假設(shè)預(yù)估計(jì)工頻干擾頻率為 f,則由式 N×f/fS求得頻率 f對(duì)應(yīng)頻譜線的位置。最后將當(dāng)前工頻頻譜位置和預(yù)估計(jì)工頻頻譜位置做差,并以此來調(diào)節(jié)采樣頻率。
FFT提取工頻干擾分量在LabVIEW上的實(shí)現(xiàn)主要有兩種方法,一種是直接使用FFT功率譜測(cè)量控件,該方法運(yùn)算時(shí)間較長(zhǎng)、效率較低;另一種方法是通過調(diào)用Mathscriot節(jié)點(diǎn)編程實(shí)現(xiàn),該方法在實(shí)現(xiàn)過程中,可采用簡(jiǎn)化FFT算法實(shí)現(xiàn)工頻分量的提取[3],大大降低了程序運(yùn)算量。所以,本文選取后者來實(shí)現(xiàn)對(duì)工頻分量的實(shí)時(shí)提取。
工頻干擾濾除程序包括建立工頻模板、濾除工頻干擾、修改工頻干擾模板三步。為了達(dá)到快速、連續(xù)濾波的目的,需實(shí)時(shí)修改工頻干擾模板,在LabVIEW實(shí)現(xiàn)過程中可采用逐點(diǎn)隊(duì)列控件,通過合理設(shè)置隊(duì)列長(zhǎng)度,利用隊(duì)列進(jìn)棧和出棧進(jìn)行模板快速修改。
假設(shè)采樣頻率fS為200 Hz,則 L值為4,即在一個(gè)工頻干擾周期內(nèi)有4個(gè)采樣值。圖4為工頻干擾濾除的程序。
其中長(zhǎng)度為3的逐點(diǎn)隊(duì)列用于工頻模板存放,反饋節(jié)點(diǎn)用于出棧數(shù)據(jù)的存放和累加。長(zhǎng)度為1 024的逐點(diǎn)隊(duì)列用于原始采集數(shù)據(jù)的存放。程序運(yùn)行過程如下:
(1)工頻模板建立:當(dāng)采樣點(diǎn)數(shù)達(dá)到1 024個(gè)時(shí),工頻模板隊(duì)列及反饋節(jié)點(diǎn)中的存儲(chǔ)正好為根據(jù)mod(n/4)(n=0,l,2,…,l 023)取值經(jīng)過 256 次疊加的數(shù)據(jù),即為初始工頻模板。
(4)實(shí)現(xiàn)整個(gè)信號(hào)工頻干擾濾除:重復(fù)(2)~(3)即可完成對(duì)整個(gè)信號(hào)的工頻干擾濾除。
采集系統(tǒng)主要包括前置放大及濾波電路模塊、A/D模塊、MCU模塊、上位機(jī)模塊。系統(tǒng)框圖如圖5所示。
其中A/D模塊采用高性能Σ-Δ模數(shù)轉(zhuǎn)換器AD7760,其為綜合增量調(diào)制編碼 Σ-Δ型轉(zhuǎn)換器,不僅具有很高的精度(可高達(dá)24 bit),而且還具有很高的速度(高達(dá)2.5 MS/s)和寬的輸入帶寬,廣泛地應(yīng)用于高精度高速率的數(shù)據(jù)采集系統(tǒng)。
MCU采用飛思卡爾32位單片機(jī)MCF51QE128。為了進(jìn)一步提高A/D精度,采用了過采樣技術(shù),提高了4 bit精度,算法原理在參考文獻(xiàn)已有詳細(xì)說明,在此不再贅述[5]。另外由于串口傳輸速率有限,在下位機(jī)進(jìn)行下抽樣,然后通過串口傳輸?shù)缴衔粰C(jī)。
為了測(cè)試算法對(duì)工頻干擾的濾除效果,對(duì)頻率為20 Hz、幅值為200 μV的正弦信號(hào)進(jìn)行采集試驗(yàn)。結(jié)果如圖6所示。圖6(a)為未采用自適應(yīng)相干模板法的波形圖及幅頻圖,圖6(b)為經(jīng)過自適應(yīng)相干模板法處理后的波形圖和幅頻圖。
跟蹤工頻干擾的自適應(yīng)相干模板法能夠在有效濾除工頻干擾的同時(shí),保證濾波器具有良好的低頻特性,但是在工頻干擾頻率變化較快時(shí),工頻跟蹤實(shí)時(shí)性變差,從而導(dǎo)致濾波效果變差。為此,本文通過在LabVIEW上采用雙線程模式,同時(shí)實(shí)現(xiàn)了工頻干擾的快速實(shí)時(shí)跟蹤和濾除。通過對(duì)采集頻率20 Hz、幅值 200 μV的正弦信號(hào)進(jìn)行試驗(yàn),結(jié)果證明,即使在工頻干擾頻率變化較快時(shí),也能快速、實(shí)時(shí)地實(shí)現(xiàn)濾波且濾除效果很明顯。
[1]Wang Sanxiu,Jiang Shengtao.Removal of power line interference of ECG signal based on independent component analysis[C].2009 First International Workshop on Education Technology and Computer Science,2009:328-330.
[2]王兵,王魁,梁曉霖,等.腦電信號(hào)中工頻干擾去除的綜合研究[J].傳感技術(shù)學(xué)報(bào),2010,23(1):87-92.
[3]LI G,LI L,YU Q.A new algorithm of adaptive coherent modelfor removal of power-line interference[J].Chinese Journal of Biomedical Engineering,l997,16(3):281.
[4]于超,李剛,林凌.基于簡(jiǎn)化 FFT可跟蹤工頻干擾的自適應(yīng)相干模板法的實(shí)現(xiàn)[J].生物醫(yī)學(xué)工程學(xué)雜志,2007,24(4):780-784.
[5]李剛,張麗君,林凌,等.利用過采樣技術(shù)提高 ADC測(cè)量微弱信號(hào)時(shí)的分辨率[J].納米技術(shù)與精密工程,2009,7(1):71-76.