超聲波液位計基于DSP的探討 二十六
5.1.4使用FFT來計算iFFT
為了簡化算法函數的實現過程,考慮到iFFT與FFT運算之問的差別僅有兩點:(1) 將旋轉因子e二產改變為e簪;(2)多除以N的運算。在實際運算過程中,這兩點之間并沒有本質上的區別,將其設計在同一個程序中,使用函數的形參來區分二者的運算類型.
5.2分步相關法的實現
經過以上的改進措施以后,互相關函數的運算量已經降低了很多。為了更大程度的增加系統的實時性,如下圖所示為多次測量過程中超聲波回波在時間軸上的位置,可以看出,超聲波回波信號在時間軸上只是很短的一段。
以15m量程、10脈沖激發為例,超聲波回波信號持續的時間大概為lmS,而整個信號的時間大約為0.088S,也就是說有用信息只占上述處理算法的1.1 3%。而上述研究的算法,無一例外,都是對整個時間軸進行處理,這樣一來,就意味著DSP進行了98.87*/0的無效運算。能否降低這一部分的運算量?這一點成為能否改進整體算法以及增進系統實時性的關鍵。
為了解決上述存在的問題,本課題中采用做兩次互相關函數的方法。使用該方法的理論依據是超聲波回波的包絡線之間存在一定的互相關性,但是包絡線之間的互相關函數與超聲波回波原始波形的互相關函數相比較,其分辨率要小得多,換言之,超聲波原始回波的波形得出的互相關函數其峰值更加尖銳。以實驗中的超聲波回波信號為例,截除激發部分以后,包絡線以后與包絡線基準的互相關函數與原始信號與原始回波信號基準的互相關函數的比較可以看出,后者的互相關函數其峰值更加尖銳,相比較而言,測量結果將更加準確。
所以在本課題中信號處理的具體措施分兩部實現(1)把采集到的超聲波回波信號按照5:1進行二次采樣,也就相當于按照100KHz的頻率對信號進行采樣,經過初步的處理以后,求出該信號的包絡線,將該包絡線與基準信號的包絡線進行上面提到的互相關運算,求出超聲波回波出現在時間軸上的大致位置;(2)截取上一步中確定的有效信號波形所在區間內的原始數據波形,將其與原始的基準信號進行互相關運算,確定精確的液位信患。
詳情請瀏覽公司網站的產品中心 http://www.m.jxper05.cn/ 超聲波液位計
超聲波流量計