蘇滿紅 吳志敏 葉瑋淵
摘 要:針對時差法超聲波流量計時間測量精度高、運(yùn)算量大的特點,設(shè)計了一種結(jié)合可編程邏輯器件(FPGA)、數(shù)字信號處理器(DSP)和單片機(jī)的超聲波流量計系統(tǒng)。系統(tǒng)的硬件時序由FPGA控制,確保時序準(zhǔn)確,軟件利用滑動窗口接收技術(shù),提取有用測量信號,減少了需要處理的數(shù)據(jù)并增強(qiáng)了抗干擾能力,最后對相關(guān)算法進(jìn)行簡化,大大加快了測量速度。通過Matlab仿真比較及實驗測試,證明該方案可行。
關(guān)鍵詞:時差法超聲波流量;滑動窗口;算法簡化;抗干擾能力
中圖分類號:TP274 文獻(xiàn)標(biāo)識碼:B 文章編號:1004-373X(2009)04-053-03
Time Difference Ultrasonic Flowmeter and Its Simple Arithmetic
SU Manhong,WU Zhimin,YE Weiyuan
(Shenzhen Polytechnic College,Shenzhen,518055,China)
Abstract:Aiming at the high precision time measurement and large amount computing of time difference ultrasonic flowmeter,an ultrasonic flowmeter system based on FPGA,DSP and MCU is designed.The hardware controlled by the FPGA to ensure accurate timing.The auto delay-window of signal receive technique is adopted,by extracting useful measurement signal,猼he needed data is reduced and anti-jamming capabilit is enhanced,and the measuring speed has been greatly accelerated by simplified algorithms.It is proved by simulator with Matlab and experiment that the system is feasible.
Keywords:time difference ultrasonic flowmeter;delay window;arithmetic simplify;anti-jamming capability
流體流量計的用途十分廣泛,在工業(yè)上,如石油、化工、水電等部門,流量計已經(jīng)成為對液體流量檢測必不可少的設(shè)備。超聲波流量測量技術(shù)是一種利用超聲波信號在流體中傳播時所載流體的流速信息來測量流體流量的測量技術(shù),作為一種新型的非接觸式流量計,它具有安裝簡單、使用方便、測量范圍寬等特點,時差法超聲波流量計測量流量是目前廣泛應(yīng)用的一種方法。近幾年來,隨著FPGA和DSP的發(fā)展和廣泛應(yīng)用,數(shù)字信號處理技術(shù)的改進(jìn)使產(chǎn)品的測量精度得到了不斷提高。
時差式超聲波流量計需要采用兩個超聲波探頭來進(jìn)行信號的發(fā)送和接收,通過測量超聲波自傳感器沿順、逆流方向傳播時的時間差計算流體流動速度[1],由于該時間差很小,往往達(dá)到納秒量級甚至更低,測量超聲波傳播時間的精度是流量計測量精度的關(guān)鍵,也是設(shè)計人員重點研究的問題[2]。針對上面的要求,在此設(shè)計了一種基于FPGA和DSP的高精度超聲波流量計系統(tǒng),利用FPGA和DSP分別實現(xiàn)精確的時序控制和快速的數(shù)字信號處理[3,4],從而提高系統(tǒng)的響應(yīng)速度、準(zhǔn)確度和穩(wěn)定性。為提高測量精度,該系統(tǒng)在信號處理上主要采用插值和相關(guān)法,由于檢測和處理超聲波信號的運(yùn)算量大,對系統(tǒng)硬件要求很高,該系統(tǒng)結(jié)合滑動窗口對相關(guān)算法進(jìn)行了簡化,提高了系統(tǒng)的性能。
1 系統(tǒng)結(jié)構(gòu)和工作原理
系統(tǒng)的硬件組成結(jié)構(gòu)如圖1所示,其是由FPGA,DSP,MCU、切換電路、A/D轉(zhuǎn)換、自動增益控制、外部RAM和LCD顯示等幾部分構(gòu)成的。DSP為數(shù)字處理核心,用于FIR濾波、相關(guān)運(yùn)算等大量數(shù)據(jù)處理[5],整個系統(tǒng)的時序由FPGA控制,確保了時序的準(zhǔn)確性[6]。
圖1 系統(tǒng)的硬件結(jié)構(gòu)框圖
超聲波換能器A,B在FPGA的控制下,輪流工作在發(fā)射和接收狀態(tài),用以測量順流、逆流時超聲波傳播的時間差,其諧振頻率為1 MHz。接收信號經(jīng)過選頻放大濾除了部分干擾信號,再由自動增益控制AGC放大后送往A/D轉(zhuǎn)換器,以每次25 ns的轉(zhuǎn)換速度實現(xiàn)A/D轉(zhuǎn)換,并存儲到外部RAM中,整個過程都在FPGA的控制下進(jìn)行,確保了時序的準(zhǔn)確性。為了進(jìn)一步提高運(yùn)行的速度,DSP首先將外部RAM中的數(shù)據(jù)轉(zhuǎn)存到內(nèi)部RAM中,再進(jìn)行55階FIR濾波,經(jīng)過FIR濾波后的信號,其采樣速率較低,測量精度不夠高,為了提高精度,這里進(jìn)行了插值運(yùn)算,插值后的兩組信號再經(jīng)過相關(guān)運(yùn)算處理[7],便得出流體順流和逆流的時間差,從而求出流體的流速[8,9]。
2 滑動窗口接收技術(shù)
滑動窗口是在接收信號到達(dá)的前后才有效的一個時間窗口,窗口之外的信號一概不予處理,這樣可以減小噪聲的干擾并降低運(yùn)算量。為保證檢測信號的有效性,必須先去掉接收端的干擾, 采用窗口和脈寬檢測是兩個行之有效的方法。測量窗口的初始位置是根據(jù)人機(jī)對話輸入的參數(shù)設(shè)置的,并通過有效信號的檢測位置不斷調(diào)整窗口到合適的位置。窗口的設(shè)置限定了信號的接收范圍, 在一定程度上消除了噪聲的干擾,同時也減少了要處理的信號樣本數(shù),降低了運(yùn)算量。
滑動窗口的設(shè)置方法為:單片機(jī)根據(jù)人機(jī)對話輸入的參數(shù)(管徑、壁厚及流體),計算出信號自發(fā)射探頭到接收探頭所需傳播時間的近似值,根據(jù)該近似值控制數(shù)據(jù)采樣的開始時間,每組數(shù)據(jù)采集15 000個點,由于采集的數(shù)據(jù)足夠多,完全可以保證有用數(shù)據(jù)能夠被采集到。經(jīng)過AGC電路的調(diào)整,當(dāng)采集到的信號幅度滿足要求時便對它們分別進(jìn)行FIR濾波,再根據(jù)幅值找出有用信號的最大值點并進(jìn)行信號有效性判斷,信號確定為有效后再進(jìn)行滑動窗口調(diào)整,將有用信號移動到有效窗口。由于換能器探頭的諧振頻率為1 MHz,采樣頻率為40 MHz,探頭發(fā)射信號為5個周期,考慮到探頭的余波,為了更好地采集接收信號,窗口寬度設(shè)定為800個信號點,即20個信號周期。圖2所示為窗口調(diào)整前部分內(nèi)存中的數(shù)據(jù),從上面可以看到兩組信號,前者幅度小,是超聲波沿管壁直接傳遞而形成的,其傳播速度快,傳播時間短,后者是超聲波沿正常路徑傳輸?shù)慕Y(jié)果,幅度較大,也是需要的有用數(shù)據(jù)。圖3是窗口調(diào)整后內(nèi)存中的數(shù)據(jù),可以看到,有效數(shù)據(jù)已被移動到最左側(cè)的有效窗口中,后面的插值及相關(guān)運(yùn)算都是只對該段數(shù)據(jù)進(jìn)行。
3 插值及相關(guān)算法的簡化
在超聲波發(fā)生電路中,由同一觸發(fā)脈沖觸發(fā)2個相同的換能器產(chǎn)生超聲波,測量中2路采集信號具有很大的相似性,因此能對信號進(jìn)行相關(guān)處理。在超聲波流量計中,對時間測量精度的要求很高,為了提高分辨率,可以采取一般的采樣方法,然后通過數(shù)字信號處理中常用的插值算法,由軟件提高系統(tǒng)的采樣頻率,從而提高時間的分辨率。
圖2 窗口調(diào)整前部分內(nèi)存中的數(shù)據(jù)
圖3 有效數(shù)據(jù)被移動到左側(cè)
換能器的諧振頻率為1 MHz,采樣頻率為40 MHz,采樣的時間分辨率為25 ns,對于超聲波流量計,這樣的分辨率是不夠的,還必須提高信號的采樣頻率,即進(jìn)行插值處理。如果采取先補(bǔ)“0”再濾波的方法,必須增加濾波器的階數(shù),同時由于插值后樣本增加,濾波運(yùn)算所需要的時間會大大增加。因此該系統(tǒng)采用線性插值的方法,在相鄰2個數(shù)據(jù)點之間插入19個點,這些點與插入前的相鄰點在同一直線上,這樣時間分辨率可以達(dá)到1.25 ns。
該系統(tǒng)時間差的測量是通過比較兩組超聲波信號的皮爾遜積差相關(guān)系數(shù)的值來確定的,相關(guān)系數(shù)的計算方法如下[10]:
設(shè)xi和yi分別代表兩組信號的采樣值,i=1,2,…,n。n為采樣數(shù)量,設(shè)x,yХ直鷂兩組采樣信號的平均值有,
x=∑xi/n,y=∑yi/n
Е襵,σyХ直鷂2組采樣信號的均方差有:
σx=∑(xi-x)2/(n-1),
σy=∑(yi-y)2/(n-1)
rС莆相關(guān)系數(shù),其公式為:
r=∑(xi-x)(yi-y)∑(xi-x)2∑(yi-y)2
上式經(jīng)過簡化后得到公式:
r=n∑xiyi-(∑xi)(∑yi)n∑x2i-(∑xi)2n∑y2i-(∑yi)2
相關(guān)系數(shù)r的重要特征為:0<|r|<1,r為正值即正相關(guān),r為負(fù)值即負(fù)相關(guān)。系統(tǒng)通過不斷改變兩組采樣信號的相位關(guān)系,同時計算出相關(guān)系數(shù),當(dāng)相關(guān)系數(shù)最大時兩組采樣信號之間的相位差即為兩組信號的時間差值。
因有效窗口兩端數(shù)據(jù)的變化很?。ㄈ鐖D3所示),在小范圍內(nèi)改變兩組數(shù)據(jù)的相位關(guān)系后,可以認(rèn)為相關(guān)系數(shù)公式中的分母項的值是不變的,其不隨兩組采樣信號的移相變化而變化。因此,在判斷相關(guān)系數(shù)最大值時,只需計算相關(guān)系數(shù)公式中的分子式項n∑xiyi-(∑xi)(∑yi)У鬧擔(dān)然后判斷它的最大值即可,這樣可以大大地減少系統(tǒng)的運(yùn)算量,提高系統(tǒng)的反應(yīng)的速度。
4 相關(guān)算法及其簡化算法的仿真與比較
為了檢驗相關(guān)算法簡化后對結(jié)果帶來的影響,把采集到窗口中的兩組數(shù)據(jù)經(jīng)濾波與插值后,通過Matlab分別對完整的相關(guān)算法及簡化算法進(jìn)行仿真分析[11],仿真波形如圖4所示。
圖4 相關(guān)算法及其簡化算法在Matlab中的仿真
其中上部為簡化算法的仿真結(jié)果,下部為完整相關(guān)算法的仿真結(jié)果。圖5為一部分仿真數(shù)據(jù)。從圖中可以看出,完整相關(guān)算法的相關(guān)系數(shù)據(jù)介于+1~-1之間,最大值(接近于1)出現(xiàn)在5 001的位置。相比之下,簡化算法的值大若干數(shù)量級,這是簡化算法略去分母的結(jié)果,但這對計算沒有影響,只要得到最大值出現(xiàn)的時間,重要的是簡化算法的最大值也出現(xiàn)在5 001的位置,并且其波形與完整的相關(guān)算法幾乎一樣。由此可見,相關(guān)算法的簡化并沒有對這里的計算帶來誤差。
為進(jìn)一步證實系統(tǒng)的可用性,將該系統(tǒng)與寶麗聲DCT7088超聲波流量計進(jìn)行了對比測量,被測管道為外徑為45 mm的鋼管,壁厚3.5 mm,管道中的水由循環(huán)泵驅(qū)動,通過變頻器控制循環(huán)泵的轉(zhuǎn)速來得到不同的流速,測量結(jié)果如圖6所示,二者測量結(jié)果已經(jīng)十分逼近。
圖5 相關(guān)算法及其簡化算法的部分仿真數(shù)據(jù)
圖6 實測流量對比曲線
5 結(jié) 語
這里以FPGA,DSP和MCU作為核心器件設(shè)計了一種時差式超聲波流量計,結(jié)合自動延遲窗口技術(shù),大大簡化了用于計算時間差的相關(guān)算法,提高了系統(tǒng)的性能。通過對系統(tǒng)實驗測試及計算機(jī)仿真,表明該系統(tǒng)方案切實可行。
參 考 文 獻(xiàn)
[1]周利華,修吉平.時差式超聲波氣體流量計的研制[J].儀表技術(shù)與傳感器,2007(6):21-22.
[2]同濟(jì)大學(xué)聲學(xué)教研室.超聲工業(yè)測量技術(shù)[M].上海:上海人民出版,1977.
[3]王冠.面向CPLD/FPGA的Verilog設(shè)計[M].北京:機(jī)械工業(yè)出版社,2007.
[4]張雄偉,陳亮,徐光輝.DSP芯片的原理與開發(fā)應(yīng)用[M].3版.北京:電子工業(yè)出版社,2003.
[5]Texas Instruments Inc.,Dsp Selection Guide 4Q 2003(Rev.狹).2003.
[6]劉存,黃建軍.時差法超聲波流量計的幾點改進(jìn)[J].沈陽工業(yè)大學(xué)學(xué)報,2002,24(2):113-115.
[7]鄭方,徐明星.信號處理原理[M].北京:清華大學(xué)出版社,2003.
[8]章瑞平,李國鋒.超聲波流量計在液體測量中的應(yīng)用[J].廊坊師范學(xué)院學(xué)報,2003,19(4):27-30.
[9]李廣峰,劉昉,高勇.時差法超聲波流量計的研究[J].電測與儀表,2000(9):13-19.
[10]Vinay K Ingle,John G Proakis.數(shù)字信號處理[M].西安:西安交通大學(xué)出版社,2002.
[11]薛年喜.Matlab在數(shù)字信號處理中的應(yīng)用[M].北京:清華大學(xué)出版社,2003.
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。