一種基于希爾伯特變換的科氏流量計(jì)信號(hào)處理算
針對(duì)科氏流量計(jì)傳感器輸出信號(hào)的緩變特性,提出了基于希爾伯特(Hilbert)變換的信號(hào)處理方法。采用自適應(yīng)濾波噪聲抵消的方法濾除信號(hào)噪聲,然后利用 Hilbert 變換的相移特性對(duì)濾波后的兩路增強(qiáng)信號(hào)做 Hilbert 變換處理,并與兩路 Hil? bert 變換信號(hào)做三角組合運(yùn)算求得相位差,同時(shí)構(gòu)造解析信號(hào)解算瞬時(shí)頻率。結(jié)果表明,采用基于希爾伯特方法的信號(hào)處理方法實(shí)時(shí)性高,相位差測(cè)量精度在 0.5%以下,頻率跟蹤速度較基于自適應(yīng)陷波方法節(jié)約近 2 倍的時(shí)間,滿足計(jì)量要求。
科里奧利質(zhì)量流量計(jì)(簡(jiǎn)稱科氏流量計(jì))具有高精度,寬量程以及可測(cè)多相流體的優(yōu)勢(shì),是現(xiàn)行流量計(jì)中發(fā)展***為迅速的流量計(jì)之一。當(dāng)過(guò)程流體流過(guò)以其固有振動(dòng)頻率(也稱作驅(qū)動(dòng)頻率)振動(dòng)的流量管時(shí),由于科里奧利力的作用使得流管兩側(cè)產(chǎn)生了與過(guò)程流量成正比的相位差。測(cè)量傳感器捕捉到的相位差以及振動(dòng)管的固有振動(dòng)頻率,是計(jì)算流體質(zhì)量流量的關(guān)鍵內(nèi)容。隨著數(shù)字信號(hào)處理技術(shù)以及數(shù)字信號(hào)處理器的發(fā)展,研究人員提出一些頻率跟蹤以及相位差測(cè)量的數(shù)字處理方法,并逐漸取代了模擬處理科氏流量計(jì)信號(hào)的方法。
目前科氏流量計(jì)信號(hào)處理方法主要有:過(guò)零檢測(cè)法 、數(shù)字相關(guān)法 、離散傅里葉變換 以及希爾伯特變換等相位差測(cè)量方法和相位差分法、鎖相環(huán)方法、小波分析以及自適應(yīng)陷波濾波 等頻率解算方法。國(guó)內(nèi)學(xué)者常采用自適應(yīng)陷波濾波的方法估計(jì)信號(hào)頻率,再用計(jì)及負(fù)頻率的離散時(shí)間傅里葉變換 DTFT(Discrete Time Fourier Transform)的方法或者是計(jì)及負(fù)頻率的加滑動(dòng)窗的 DTFT 方法(簡(jiǎn)稱 SDTFT)來(lái)計(jì)算相位差。這種方法需要用較長(zhǎng)的時(shí)間跟蹤信號(hào)頻率,再依據(jù)頻率進(jìn)行頻譜分析以求相位差,也因此在相位差計(jì)算時(shí)引入二次誤差影響了測(cè)量精度。針對(duì)該問(wèn)題,本文提出均采用基于希爾伯特變換的方法處理科氏流量計(jì)信號(hào),即同步解算信號(hào)的相位差與信號(hào)的瞬時(shí)頻率以避免引入二次誤差,提高信號(hào)處理實(shí)時(shí)性。
1.科氏流量計(jì)信號(hào)模型
科氏流量計(jì)左右傳感器輸出的信號(hào),在理想狀態(tài)下均為頻率、幅值恒定的正弦信號(hào)。在測(cè)量過(guò)程中,由于受到溫度、環(huán)境噪聲、流速和流體密度等的影響,振動(dòng)管的幅值、頻率也會(huì)隨時(shí)間變化,為此徐科軍等學(xué)者提出了時(shí)變信號(hào)模型。但在實(shí)際應(yīng)用中,振動(dòng)管的振動(dòng)頻率更多的是受溫度影響,但該影響可以通過(guò)相應(yīng)算法進(jìn)行補(bǔ)償,其他情況對(duì)頻率的影響可忽略不計(jì)。因此,本文采用時(shí)不變信號(hào)模型。在實(shí)際測(cè)量國(guó)內(nèi)某一型號(hào)的科氏流量計(jì)時(shí)發(fā)現(xiàn),在不同流速情況下,左右傳感器輸出信號(hào)的頻率、幅值沒(méi)有明顯變化,但均混有幅值較大的隨機(jī)噪聲。為此,本文采用正弦信號(hào)和高斯白噪聲的混合信號(hào)作為科氏流量計(jì)的信號(hào)模型,即:
[x(n)=Asin(ω0 n + φ0) + σe(n)] n=1,2,…,N (1)
其中 N 為科氏流量計(jì)信號(hào)采樣點(diǎn)數(shù),A 為信號(hào)幅值,ω0 為信號(hào)角頻率,φ0 為初始相位,e(n) 為信號(hào)噪聲,σ 為噪聲的幅值范圍。
2.希爾伯特信號(hào)處理算法與實(shí)現(xiàn)
2.1 方法概述及算法原理
傳統(tǒng)的基于希爾伯特變換的科氏流量計(jì)信號(hào)處理方法,均是采用不同結(jié)構(gòu)形式的自適應(yīng)陷波濾波器,先求解信號(hào)的頻率,然后對(duì)濾波后信號(hào)做希爾伯特變換以求取相位差。自適應(yīng)陷波濾波的方法通過(guò)多次的迭代收斂才能估計(jì)到信號(hào)的頻率,給科氏信號(hào)的處理增加了較大的計(jì)算量,因此本文提出采用基于希爾伯特變換的方法同時(shí)計(jì)算信號(hào)的相位差和頻率。
希爾伯特變換器是幅頻特性為 1 的全通濾波器,信號(hào)通過(guò)希爾伯特變換后,其負(fù)頻率成分作+ 90°相移而正頻率成分作-90°相移。因此,當(dāng)兩路正弦信號(hào)經(jīng)過(guò)希爾伯特變換后,分別變成幅值相反的余弦信號(hào),再將兩組原始信號(hào)與希爾伯特變換信號(hào)進(jìn)行三角組合運(yùn)算可得相位差,同時(shí)構(gòu)造解析信號(hào)即可求解信號(hào)的瞬時(shí)頻率,算法原理框圖如圖 1所示。
2.2頻率解算原理
在實(shí)際的信號(hào)處理中,直接采集到信號(hào)都是實(shí)信號(hào)的形式,并且大部分屬于復(fù)分量信號(hào)。因此,瞬時(shí)頻率的解算涉及到復(fù)分量信號(hào)向單分量信號(hào)轉(zhuǎn)換以及實(shí)信號(hào)向復(fù)信號(hào)轉(zhuǎn)化兩方面的問(wèn)題。Ville等提出了現(xiàn)在普遍接受的一種瞬時(shí)頻率的定義,即該信號(hào)所對(duì)應(yīng)的解析信號(hào)相位函數(shù)對(duì)時(shí)間的導(dǎo)數(shù)。利用希爾伯特變換的方法構(gòu)造解析信號(hào),即實(shí)現(xiàn)了實(shí)信號(hào)向復(fù)信號(hào)的轉(zhuǎn)化。
給定一實(shí)信號(hào) x(t) ,其希爾伯特變換信號(hào)為 x?(t) ,以此來(lái)構(gòu)造解析信號(hào) z(t) :
2.3 實(shí)現(xiàn)過(guò)程
科氏流量計(jì)傳感器理想輸出信號(hào)為幅值、頻率相等以及相位差在 4°以內(nèi)的兩路正弦信號(hào)。但在實(shí)際采集流量計(jì)信號(hào)時(shí)觀察到,信號(hào)中會(huì)有大量的諧波以及信號(hào)噪聲干擾。假定濾波后的信號(hào)只含信號(hào)噪聲,設(shè)離散后的原兩路信號(hào)形式如式(1)所示,根據(jù)上述算法原理和算法實(shí)現(xiàn)框圖,其具體的實(shí)現(xiàn)過(guò)程如下:
第1步:采用基于***小均方算法 LMS(LeastMean Square) 的自適應(yīng)濾波器對(duì)僅混有信號(hào)噪聲的離散信號(hào)進(jìn)行自適應(yīng)數(shù)字濾波。
基于 LMS 算法 FIR 自適應(yīng)濾波器具有結(jié)構(gòu)簡(jiǎn)單,計(jì)算量小以及性能穩(wěn)定的特點(diǎn),廣泛應(yīng)用在系統(tǒng)辨識(shí)、噪聲消除和信道均衡等方面。本文主要是對(duì)科氏信號(hào)做噪聲消除,其濾波結(jié)構(gòu)如圖 2 所示。
該濾波器利用有源信號(hào)間的相關(guān)性、噪聲的非相關(guān)性,使得***小均方誤差 e(n) 達(dá)到***小值。選擇輸入信號(hào)的延時(shí)信號(hào)作為期望信號(hào) d(n)以提高與輸入信號(hào)的相關(guān)性,這樣更易于提取噪聲得到增強(qiáng)信號(hào)。通過(guò) LMS 算法不斷調(diào)整自適應(yīng)濾波器系數(shù),直到 H(z)收斂到***優(yōu)解時(shí),y(n)逼近信號(hào)噪聲,而誤差序列 e(n) 逼近信號(hào) x(n) ,達(dá)到自適應(yīng)噪聲抵消的目的。
第 2 步 對(duì)濾波后的兩路信號(hào)做希爾伯特變換分別產(chǎn)生 90°相移的希爾伯特變換信號(hào),然后利用兩路濾波信號(hào)和兩路相移信號(hào)構(gòu)造解析信號(hào)。產(chǎn)生的兩路希爾伯特變換信號(hào)為:
對(duì)式(7)做反正切運(yùn)算即可求得相位差 φ 。在介紹瞬時(shí)頻率解算的的時(shí)候,需要對(duì)相位函數(shù)求導(dǎo)得到信號(hào)的瞬時(shí)頻率,但在做算法處理時(shí),信號(hào)均是離散信號(hào),因此在這里采用相鄰時(shí)間點(diǎn)對(duì)應(yīng)相位的差分作為信號(hào)的頻率。由計(jì)量原理及實(shí)現(xiàn)過(guò)程可知,基于希伯特變換原理的相位差測(cè)量方法無(wú)需預(yù)知信號(hào)的頻率,且不受非整周期采樣的影響,計(jì)算簡(jiǎn)單并且具有瞬態(tài)性。而對(duì)于瞬時(shí)頻率的計(jì)算不需要再獨(dú)立采用過(guò)零檢測(cè)、自適應(yīng)陷波等傳統(tǒng)的頻率估計(jì)算法,給整個(gè)科氏信號(hào)處理算法節(jié)省了一定的計(jì)算量,對(duì)于實(shí)際測(cè)量信號(hào)具有廣泛的適用性。
3.仿真驗(yàn)證與分析
為驗(yàn)證本文算法的有效性分別做了以下仿真實(shí)驗(yàn):LMS 自適應(yīng)噪聲抵消,噪聲對(duì)相位差的影響,相位差的動(dòng)態(tài)測(cè)量實(shí)驗(yàn),瞬時(shí)頻率估計(jì)的驗(yàn)證實(shí)驗(yàn)。本文通過(guò)多次測(cè)試國(guó)內(nèi)某一型號(hào)的科氏流量計(jì)得到,此流量計(jì)穩(wěn)定工作時(shí),振動(dòng)頻率大約在 79.5 Hz,參考實(shí)驗(yàn)結(jié)果模擬出仿真實(shí)驗(yàn)信號(hào)模型如式(8)所示。
其中,采樣頻率 fs 為 2 kHz,信號(hào)基頻 f0 為 80 Hz,信號(hào)幅值設(shè)為 1,采樣數(shù)據(jù) N 為 500。
3.1 噪聲影響分析
采樣信號(hào)經(jīng)過(guò)前期的低通濾波處理后,濾波后的信號(hào)中依然存在隨機(jī)噪聲,分析了希爾伯特變換方法在不同程度噪聲干擾下的相位差測(cè)量情況。
信噪比 SNR 設(shè)為 0 到 70 dB 的變量值,相位差的理論值設(shè)為 0.05°。
通過(guò)多次的獨(dú)立實(shí)驗(yàn)發(fā)現(xiàn),相位差測(cè)量值與理論值的偏離程度隨著信噪比的增加呈現(xiàn)逐漸減小的一個(gè)趨勢(shì)如圖 3 所示。仿真實(shí)驗(yàn)表明,信噪比在大于 30 dB 的程度時(shí),相位差測(cè)量精度才會(huì)較少的受到影響。
3.2相位差動(dòng)態(tài)測(cè)量分析
希爾伯特變換可以用于分析瞬時(shí)相位差,但從圖 3 中也可以看出當(dāng)信號(hào)中有一定的干擾時(shí)對(duì)于相位差的瞬時(shí)分析就會(huì)有很大的影響。對(duì)于真實(shí)的科氏流量計(jì)傳感器的信號(hào)也是會(huì)有高頻干擾以及系統(tǒng)信號(hào)噪聲的,因此本文取混有高斯白噪聲的信號(hào)作為該文算法處理的信號(hào)模型。而從圖 4 中我們可以觀察到,本文相位差測(cè)量方法從仿真開(kāi)始時(shí)間點(diǎn)就能很好的跟蹤到信號(hào)并計(jì)算出每一時(shí)刻的相位差,表現(xiàn)出了良好的實(shí)時(shí)性。
表1 中列出了在不同的初始相位差下,基于文獻(xiàn)中 SDTFT 的相位差測(cè)量方法與本文提出方法的均方誤差 MSE(Mean Square Error)。鑒于兩種方法跟蹤到信號(hào)頻率都需要一定的時(shí)間,本文求取 5 000 點(diǎn)以后的相位差測(cè)量結(jié)果與理論值之間的 MSE。從表二可以看出該文方法測(cè)得的相位差的 MSE 比基于 SDTFT 方法測(cè)得結(jié)果降低了近一個(gè)數(shù)量級(jí)。
3.3 瞬時(shí)頻率估計(jì)仿真
信號(hào)本身的噪聲以及相位的波動(dòng)對(duì)頻率的計(jì)算影響較大,采用式(8)所示信號(hào)模型,對(duì)本文給出的頻率估計(jì)算法和自適應(yīng)陷波濾波 ANF(Adaptive Notch Filter)方法進(jìn)行了計(jì)算機(jī)仿真對(duì)比實(shí)驗(yàn)。由于科氏流量計(jì)傳感器信號(hào)會(huì)有倍頻噪聲以及白噪聲,這樣的條件下使用希爾伯特變換解析信號(hào)法求解的瞬時(shí)頻率是負(fù)的,即不正確的。本文提出的頻率估計(jì)算法是有加入 LMS 濾波算法,進(jìn)行信號(hào)噪聲的消除。在信號(hào)頻率為 80 Hz,采樣頻率為 2 kHz的條件下,采用 Hilbert 算法進(jìn)行頻率估計(jì),從圖 5可以觀察到,希爾伯特解析信號(hào)法的頻率估計(jì)方法能夠快速并準(zhǔn)確地解算出信號(hào)頻率。與 ANF 頻率估計(jì)方法相比,計(jì)算簡(jiǎn)單,需要較少的時(shí)間就可以檢測(cè)到信號(hào)在每一時(shí)間點(diǎn)的頻率如圖 6 所示。
4.結(jié)論
本文提出采用基于希爾伯特變換的解析信號(hào)法來(lái)處理科氏流量計(jì)信號(hào)。通過(guò)對(duì)濾波后的信號(hào)進(jìn)行希爾伯特變換,利用希爾伯特變換的相移特性求得的相位差,具有較高的精度以及良好的動(dòng)態(tài)測(cè)量特性,同時(shí)構(gòu)造解析信號(hào)計(jì)算瞬時(shí)頻率。結(jié)果表明,與傳統(tǒng)上采用不同算法結(jié)合使用處理科氏信號(hào)的方法相比,本文的算法收斂快,計(jì)算簡(jiǎn)單,避免了算法結(jié)合使用時(shí)的二次誤差,提高了算法計(jì)算的精度,改善了信號(hào)處理的實(shí)時(shí)性。