
在文獻(xiàn)中我們提出了一種信號(hào)處理方法,從含有各種噪聲干擾的信號(hào)中,準(zhǔn)確測(cè)得質(zhì)量流量。首先采用兩級(jí)多抽一濾波器,對(duì)科氏流量計(jì)中的兩個(gè)磁電式傳感器的輸出信號(hào)進(jìn)行濾波,以減少隨機(jī)噪聲的影響;再用自適應(yīng)陷波濾波方法,抑制確定性噪聲的干擾,提取流量管振動(dòng)基頻的信號(hào)并測(cè)得其頻率。然后采用加漢寧窗的DFT頻譜分析方法,得到振動(dòng)管基頻處的相位差和時(shí)間差,從而測(cè)得質(zhì)量流量。但是這種方法存在一些問(wèn)題,首先兩級(jí)多抽一濾波器的計(jì)算量比較大,其次所采用的譜分析方法不能做到實(shí)時(shí)輸出相位差,只能實(shí)現(xiàn)每64個(gè)點(diǎn)(即一個(gè)窗的寬度)計(jì)算一次時(shí)間差。本文在原有方法的基礎(chǔ)上進(jìn)行了改進(jìn),去除了兩級(jí)多抽一濾波器,并采用滑動(dòng)Goertzel算法[10]。進(jìn)行譜分析,從而可以在每個(gè)采樣點(diǎn)都測(cè)得兩路信號(hào)之間的相位差及時(shí)間差。
2 自適應(yīng)ⅡR陷波器和譜線增強(qiáng)
本文中我們采用的仍然是零極點(diǎn)約束的ⅡR陷波濾波器[7]。零極點(diǎn)約束是指陷波器的零極點(diǎn)滿足如下條件:對(duì)于每對(duì)零極點(diǎn),零點(diǎn)在單位圓上,并且位于陷波頻率處。極點(diǎn)則在單位圓內(nèi),且與零點(diǎn)同一角度,并盡可能地靠近零點(diǎn),極點(diǎn)與原點(diǎn)的距離為ρ。對(duì)于科氏流量計(jì)信號(hào)可得陷波器的傳遞函數(shù)為
假設(shè)信號(hào)為y(n)=Asin(ωn+φ)+e(n),當(dāng)α=-2cosω時(shí),
(1+αz-1+z-2)e(n)=(1+αz-1+z-2)y(n) (2)
成立,其中z-1為單位延遲因子,即y(n)z-1=y(n-1)。式(2)表明當(dāng)陷波頻率等于信號(hào)頻率且ρ=1時(shí),陷波器的輸出中只含有白噪聲e(n),正弦信號(hào)被*濾掉,陷波器相當(dāng)于y(n)的一個(gè)白化濾波器。對(duì)于0<ρ<1,陷波器的輸出為
當(dāng)ρ→1時(shí),流量計(jì)信息網(wǎng)內(nèi)容圖片。通常信號(hào)的頻率是未知的,因此需要對(duì)α進(jìn)行估計(jì)。陷波器的輸出誤差為流量計(jì)信息網(wǎng)內(nèi)容圖片,根據(jù)遞推預(yù)測(cè)誤差理論[8],取代價(jià)函數(shù)
α的估計(jì)可表示為
由于ρ趨近于1,因此可由下式遞推計(jì)算:
其中
P(n)可由下式遞推計(jì)算:
λ(n)為遺忘因子:
λ(n)=λ0λ(n-1)+(1-λ0)λ∞ (10)
在以上討論中,我們一直假設(shè)ρ為定值。但在實(shí)際算法中,由于ρ決定每個(gè)陷井的帶寬,在輸入信號(hào)的先驗(yàn)知識(shí)未知的情況下,如果ρ非常趨近于1,即極點(diǎn)靠近零點(diǎn),則陷井可能因?yàn)檫^(guò)窄而無(wú)法落在信號(hào)頻率處,也就無(wú)法感知信號(hào)的存在。因此在陷波的開(kāi)始階段ρ應(yīng)取得稍小一點(diǎn),使算法收斂到期望的傳遞函數(shù)上,然后再增大ρ。為此ρ可改寫(xiě)為ρ(n),
ρ(n)=ρ0ρ(n-1)+(1-ρ0)ρ∞ (11)
*后將原先的信號(hào)減去陷波器的輸出信號(hào)就是我們所希望得到的振動(dòng)管的信號(hào),同時(shí)通過(guò)可以計(jì)算出信號(hào)的頻率。在將計(jì)算出的頻率用于相位差的計(jì)算之前我們先采用下面的方法對(duì)其進(jìn)行平滑處理,以減少陷波器計(jì)算相位差時(shí)所引入隨機(jī)誤差。
3 相位差及時(shí)間差的計(jì)算
常規(guī)Goertzel算法的傳遞函數(shù)如下[9]:
其頻率為等間隔分布,當(dāng)信號(hào)的頻率恰好對(duì)應(yīng)于某個(gè)k值時(shí),可以獲得**的結(jié)果。而當(dāng)信號(hào)頻率落在頻率間隔內(nèi)時(shí),就會(huì)由于泄漏問(wèn)題而產(chǎn)生較大誤差。泄漏問(wèn)題對(duì)于計(jì)算相位的影響要遠(yuǎn)遠(yuǎn)大于對(duì)功率譜的計(jì)算[5]。
滑動(dòng)Goertzel算法[10]克服了常規(guī)Goertzel算法的這一缺點(diǎn),它用實(shí)際的信號(hào)頻率替換傳遞函數(shù)中的2πk/N,因此在信號(hào)頻率不變的情況下,經(jīng)過(guò)一定時(shí)間的收斂,可以**地計(jì)算出信號(hào)的傅立葉系數(shù),并且可以在每個(gè)采樣點(diǎn)計(jì)算一次傅立葉系數(shù)?;瑒?dòng)Goertzel算法如圖1所示:
設(shè)固定頻率信號(hào)y(n)的傅立葉展開(kāi)為yn=αsin(nω)+bcos(nω),其z變換為
V(z-1)是中間變量v(n)的z變換,對(duì)其進(jìn)行z反變換[10],得
從式(16)-(19)可以看出在n的值比較大時(shí)Δ1和Δ2可以忽略。經(jīng)過(guò)計(jì)算我們得到
則信號(hào)的相位為:
其中分別為兩路信號(hào)的相位估計(jì)。
由于滑動(dòng)Goertzel算法的相位差計(jì)算結(jié)果是振蕩收斂,所以對(duì)于每一點(diǎn)的計(jì)算結(jié)果我們也采用了與頻率計(jì)算相同的平滑處理方法。
時(shí)間差的計(jì)算公式為
其中為信號(hào)頻率的估計(jì),fs為采樣頻率。
4 仿真結(jié)果
4.1 自適應(yīng)陷波器的仿真
由于陷波器的仿真結(jié)果在文獻(xiàn)[1]中已給出,為節(jié)約篇幅,我們?cè)谶@里不再重復(fù),但給出陷波器的一些變量的初始值。
4.2 整體系統(tǒng)的仿真
為與原方法對(duì)比,我們?nèi)允褂梦墨I(xiàn)[1]中的信號(hào),即信號(hào)幅值為10V,諧波頻率為80Hz,幅值為3V,初始相位為零,隨機(jī)噪聲的幅值為0.9984V,服從正態(tài)分布且去均值,采樣點(diǎn)數(shù)為20000。仿真結(jié)果如表1所示,表中的數(shù)據(jù)為Δt的計(jì)算相對(duì)誤差,單位為%。
需要說(shuō)明的是,由于本文所采用的時(shí)間差計(jì)算方法可以做到實(shí)時(shí)計(jì)算,所以不能與原方法做到真正意義上的一一對(duì)比。因此表1所列出的新方法相對(duì)誤差是第6001-20000點(diǎn)誤差的均值。圖2給出了頻率為103Hz,相位差為0.1時(shí)相位差和時(shí)間差的相對(duì)計(jì)算誤差變化趨勢(shì)。
由表1和圖2可以看出雖然在某些時(shí)刻新方法的計(jì)算誤差要大于原方法,但整體上改進(jìn)后的方法比原方法精度更高。重要的是改進(jìn)后的方法充分利用了采集來(lái)的數(shù)據(jù),真正實(shí)現(xiàn)了在線計(jì)算,這是該方法的一大優(yōu)勢(shì)。
5 結(jié)語(yǔ)
本文對(duì)原有的科里奧利質(zhì)量流量計(jì)信號(hào)處理方法進(jìn)行了改進(jìn),用滑動(dòng)Goertzel算法替代了原先較為經(jīng)典的DFF方法以實(shí)現(xiàn)實(shí)時(shí)譜分析和兩信號(hào)之間相位差的計(jì)算。從仿真結(jié)果中可以看出改進(jìn)后的方法在整體上計(jì)算精度要高于原方法。