一種時差式超聲波流量計及其簡化算法
1 系統結構和工作原理
系統的硬件組成結構如圖1所示,其是由FPGA,DSP,MCU、切換電路、A/D轉換、自動增益控制、外部RAM和LCD顯示等幾部分構成的。DSP為數字處理核心,用于FIR濾波、相關運算等大量數據處理,整個系統的時序由FPGA控制,確保了時序的準確性。
超聲波換能器A,B在FPGA的控制下,輪流工作在發射和接收狀態.用以測量順流、逆流時超聲波傳播的時間差,其諧振頻率為1 MHz。接收信號經過選頻放大濾除了部分干擾信號,再由自動增益控制AGC放大后送往A/D轉換器,以每次25 ns的轉換速度實現A/D轉換,并存儲到外部RAM中,整個過程都在FPGA的控制下進行,確保了時序的準確性。為了進一步提高運行的速度,DSP首先將外部RAM中的數據轉存到內部RAM中,再進行55階FIR濾波,經過FIR濾波后的信號,其采樣速率較低,測量精度不夠高,為了提高精度,這里進行了插值運算,插值后的兩組信號再經過相關運算處理,便得出流體順流和逆流的時間差,從而求出流體的流速。
2 滑動窗口接收技術
滑動窗口是在接收信號到達的前后才有效的一個時間窗口,窗口之外的信號一概不予處理,這樣可以減小噪聲的干擾并降低運算量。為保證檢測信號的有效性,必須先去掉接收端的干擾,采用窗口和脈寬檢測是兩個行之有效的方法。測量窗口的初始位置是根據人機對話輸入的參數設置的,并通過有效信號的檢測位置不斷調整窗口到合適的位置。窗口的設置限定了信號的接收范圍,在一定程度上消除了噪聲的干擾,同時也減少了要處理的信號樣本數,降低了運算量。
滑動窗口的設置方法為:單片機根據人機對話輸入的參數(管徑、壁厚及流體),計算出信號自發射探頭到接收探頭所需傳播時間的近似值,根據該近似值控制數據采樣的開始時間,每組數據采集15000個點,由于采集的數據足夠多,完全可以保證有用數據能夠被采集到。經過AGC電路的調整,當采集到的信號幅度滿足要求時便對它們分別進行FIR濾波,再根據幅值找出有用信號的最大值點并進行信號有效性判斷,信號確定為有效后再進行滑動窗口調整,將有用信號移動到有效窗口。由于換能器探頭的諧振頻率為1 MHz,采樣頻率為40 MHz,探頭發射信號為5個周期,考慮到探頭的余波,為了更好地采集接收信號,窗口寬度設定為800個信號點,即20個信號周期。圖2所示為窗口調整前部分內存中的數據,從上面可以看到兩組信號,前者幅度小,是超聲波沿管壁直接傳遞而形成的,其傳播速度快,傳播時間短,后者是超聲波沿正常路徑傳輸的結果,幅度較大,也是需要的有用數據。圖3是窗口調整后內存中的數據,可以看到,有效數據已被移動到最左側的有效窗口中,后面的插值及相關運算都是只對該段數據進行。
3 插值及相關算法的簡化
在超聲波發生電路中,由同一觸發脈沖觸發2個相同的換能器產生超聲波,測量中2路采集信號具有很大的相似性,因此能對信號進行相關處理。在超聲波流量計中,對時間測量精度的要求很高,為了提高分辨率,可以采取一般的采樣方法,然后通過數字信號處理中常用的插值算法,由軟件提高系統的采樣頻率,從而提高時間的分辨率。
評論