產(chǎn)品類(lèi)別
新聞分類(lèi)導航
聯(lián)系我們
廠(chǎng)家傳真:022-83719059
企業(yè)郵箱:hjzhu0518@21cn.com 工廠(chǎng)所在地址: 天津市南開(kāi)區華苑產(chǎn)業(yè)區鑫茂科技園D2座一層A單元
新聞詳情
基于函數插值的柯氏質(zhì)量流量計信號處理方法
0 引言
柯氏質(zhì)量流量計(CMF— Coriolis mass flowmeter),它是利用流體流過(guò)振動(dòng)管道時(shí)產(chǎn)生的柯里奧利(Cociolis)效應,對管道的兩端振動(dòng)的相位的影響來(lái)實(shí)現流體質(zhì)量流量的測量[1]。
目前,大多數的柯氏質(zhì)量流量計相位差的求取,都采用基于離散傅利葉變換(DFT)數字信號處理方式。對于這種方式來(lái)說(shuō),如何保證信號的整周期采樣是影響其精度的關(guān)鍵所在。很多研究的重點(diǎn)都放在了如何確定當前信號的頻率這個(gè)問(wèn)題上,而沒(méi)有有效地解決整周期采樣的問(wèn)題。文獻[2]提出頻率粗測和細測的方法,并且用這個(gè)頻率去修改A/D轉換器下一次的采樣頻率,以實(shí)現整周期采樣;文獻[3-4]的方法,采用一段時(shí)間內頻率變化的平均值作為改變下一次采樣頻率的依據。不管這些方式對確定當前信號頻率的精度有多高,它們的實(shí)質(zhì)是一樣的,都是用當前信號的頻率,預測地修改下一次的采樣頻率。我們知道這對頻率變化的信號來(lái)說(shuō),不可能實(shí)現信號的整周期采樣,尤其是對于頻率突變的信號(振動(dòng)管中有氣泡)來(lái)說(shuō),這樣會(huì )引起較大的固有測量誤差。
本文給出了一種全新的方法,是在雙通道同步A/D轉換器(兩路信號同時(shí)進(jìn)行采樣)采樣頻率固定不變的情況下,不需要改變A/D轉換器的采樣頻率,利用軟件的方法實(shí)時(shí)獲得信號的頻率,并且根據這個(gè)頻率通過(guò)函數插值方式,對輸入信號序列進(jìn)行整周期采樣轉換。該方法在實(shí)驗中給出了極高的頻率及相位差的求取精度。
1 函數插值
在科學(xué)與工程計算中,常會(huì )碰到函數表達式未知的情況,僅知道該表達式的一些采樣點(diǎn)處的函數值,而又需要計算非采樣點(diǎn)的數據這類(lèi)問(wèn)題,此時(shí)希望建立該未知函數的一個(gè)便于計算的近似表達式。這就稱(chēng)為函數插值問(wèn)題。插值函數的種類(lèi)有很多,最簡(jiǎn)單的是線(xiàn)性插值,即用過(guò)相鄰兩個(gè)采樣點(diǎn)的直線(xiàn)來(lái)代替原函數f(x)。如圖1中a,b是兩個(gè)采樣點(diǎn),坐標分別為(x1,y1),(x2,y2),過(guò)a,b的曲線(xiàn)是原函數F(x),線(xiàn)性插值就是用過(guò)該兩點(diǎn)的直線(xiàn)L(x)來(lái)近似表示F(x)。
過(guò)a,b兩點(diǎn)的直線(xiàn)方程可由兩點(diǎn)式寫(xiě)出:
其中 x1≤x≤x2 (1)
對于這個(gè)方程只要每給出一個(gè)x值,就可以求出一個(gè)y值。我們可以看出,用直線(xiàn)代替曲線(xiàn)會(huì )帶來(lái)誤差,但是只要采樣頻率足夠高,就可以使誤差忽略不計。關(guān)于其它類(lèi)型的插值方式可以具體見(jiàn)文獻[6]。
2 信號頻率的確定
雙通道同步A/D轉換器每次輸出的32位數據,包含該采樣時(shí)刻兩路信號的數字量(各占16位),對于每一路信號來(lái)說(shuō),如果我們知道了在固定采樣頻率(Fs)下一個(gè)信號周期的采樣點(diǎn)數N,那么信號的周期為:N×Ts=N/Fs。我們知道如果采樣頻率不是信號頻率的整數倍的話(huà),那么采樣點(diǎn)數N 也不可能包含整個(gè)信號周期。
由圖2中可以看出,采樣點(diǎn)a,b,c,d分別跨在信號過(guò)零點(diǎn)e,f的兩端,這就使得我們在用上述方法求解信號頻率時(shí),會(huì )帶來(lái)較大的誤差。
因此,對于任意的輸入信號序列,我們作如下的搜索:
(2)
獲得符合條件的距離最近的i,j值,即它們表示信號一個(gè)周期兩端距離過(guò)零點(diǎn)最近的點(diǎn)(如圖2中a,c點(diǎn)),(括號內表示輸入信號反相的情況)。用N 表示:
N=j- i (3)
因此,只要我們能確定出信號一個(gè)周期的兩個(gè)過(guò)零點(diǎn),那么,就可以準確地求解出信號的周期。根據數學(xué)知識我們知道,信號Asin(2πft+φ)在過(guò)零點(diǎn)附近近似一條直線(xiàn),因此,可以用幾何方法確定出信號的過(guò)零點(diǎn)。對于圖2的信號,
假定a,b點(diǎn)的采樣值分別為ya,yb,那么就可以由下式
(4)
求解出 ,它表示過(guò)零點(diǎn)e相對采樣點(diǎn)a 的延遲時(shí)間。同理,可以求出過(guò)零點(diǎn)f 相對采樣點(diǎn)k的延遲時(shí)間
。
那么信號周期就可以表示為:
T=N×Ts+ -
(5)
3 采樣頻率的整周期轉換
根據文獻[6]對正弦波采樣時(shí),每個(gè)周期至少采樣3個(gè)點(diǎn),采樣頻率應是信號頻率的整數倍數 ,否則會(huì )產(chǎn)生較大的頻譜泄漏。又因為要采用快速傅里葉算法,則必須保證采樣點(diǎn)數是2的整數次冪(本文每周期采樣128次)。
本文使用一個(gè)較高的固定采樣頻率(本文用10kHz)對兩路信號進(jìn)行采樣,由于不是信號的整數倍采樣,所以先要通過(guò)函數插值的方法,重新得到信號的整數倍采樣數據。
具體的做法是,首先根據式(2)~(5)計算出信號的周期,接著(zhù)相信號的這個(gè)周期128等分,這128個(gè)等分點(diǎn)便是整周期采樣需要得到數據的采樣時(shí)刻;然后使用線(xiàn)性插值的方法,得到這些整數倍采樣時(shí)刻的數據。
假設我們確定出了圖2中的信號周期為T(mén),那么整周期采樣時(shí)的采樣周期為:
t's=T/128
為了不引入初始相位,整周期重新采樣時(shí)刻必須從過(guò)零點(diǎn)開(kāi)始(如圖2中e點(diǎn)),以t's為步長(cháng)。因此:
t's= +i×t's,i=0,1,…,127 (6)
其中 表示如圖2中的過(guò)零點(diǎn)相對于a點(diǎn)的時(shí)間延遲,這由上面已經(jīng)求出。
我們知道,進(jìn)行相位差求取時(shí),必須從同一時(shí)刻對兩路信號分別進(jìn)行相位求。ㄈ鐖D3中a,c點(diǎn)),因此,在采樣頻率的整周期轉換時(shí),也必須從同一時(shí)刻開(kāi)始對兩路信號采樣頻率進(jìn)行整周期的轉換。為此,采用如下的方法:
對于采樣得到的信號序列使用式(2)~(5),先確定出信號的準確周期。
接著(zhù),必須從同一時(shí)刻開(kāi)始,分別取出兩路信號在這個(gè)周期內的采樣數據。(如圖3中,signal1從點(diǎn)c~d,signal2從點(diǎn)a~b)。
最后,分別對這兩組采樣數據序列根據式(6)、(1)求出各自的整周期重新采樣數據(插值數據)。
圖4是經(jīng)過(guò)上述過(guò)程后得到的整周期采樣數據(線(xiàn)性插值),圖中截取了一個(gè)周期。
在實(shí)際應用中兩路信號的相位差很小,為了能夠清楚的在圖中畫(huà)出兩路信號的示例,圖3,圖4中取了較大的相位差;兩圖中的信噪比SNR=40db。
4 相位差求取
對兩路不同頻率信號的每個(gè)周期都進(jìn)行128點(diǎn)的快速離散傅里葉變換(DFT),由數學(xué)知識我們知道,假定兩路信號DFT后,基波分量分別為:x1+y1i,x2+y2i,
則:θ1=arctan(y1/x1),θ2=arctan(y2/x2),
那么,Δθ=θ1- θ2。
5 仿真結果
表1給出了在采樣頻率Fs=10kHz下,當信號的頻率變化時(shí),系統仿真得出的仿真結果。f,Δf分別表示實(shí)際給定頻率、算出的頻率與實(shí)際頻率的差值(表中單位:赫茲)。
表1 仿真結果 Hz