超聲波液位計基于DSP的探討 二十五
5.1.2互相關算法的實現
在本課題中,為了增強系統的實時性,要盡最大的可能減少運算量,采用高性能的DSP處理器來滿足對液位的實時性測量。然而,以量程15m為例,500K的AD采樣率,DSP需要處理的數據有88.2K,基準信號持續時間為800uS,計算得出基準信號數據量為0.8K,而本文選用的DSP(TMS320C6745)其內核最高工作頻率為300MHz,相比較而言可以看出,直接進行互相關算法的運算量太過龐大,DSP的實時性無法得到保證。為了減少系統的運算量采用如下措施:
(I)互相關算法通過多個FFT和iFFT來實現,利用快速傅立葉變換對離散信號傅立葉變換的運算量簡化來實現互相關運算的高速實現.FFT的功能是實現信號的時間域和頻率域的轉換,是一種快速實現互相關運算的方法。
離散信號的傅立葉變換在計算過程中有大量的重復運算或者是無效運算,Cooley和Tukey提出的快速傅立葉變換(FFT)可以將DFT的乘法計算量由N2次減少為要l092N,而FFT運算在數字信號處理過程中是一種標準運算,TI提供了經過優化以后的代碼,以本課題中的數據量為例,原先的計算量為7779.2M次,采用FFT后其運算量變為724.5K,運算量大幅度減少.
在本課題中涉及到的超聲波回波信號是時間域上的一維信號,而在一般的FFT運算中,普遍將實數看成為虛部為零的復數,這樣一來,在實際的運算過程中就做了一半的無關運算。在本課題中進行FFT運算的時候,選擇將ADC變換以后的超聲波回波數據分為兩部分,一部分作為FFT運算中的實部,另一部分作為FFT運算中虛部,DSP處理器將這一部分的數據處理完成以后,再重新分開為原始信號的FFT運算。
這種以復序列的方式來計算實數序列的方法可以減少原先運算量的一半.從而實現DSP算法的高效運行。
詳情請瀏覽公司網站的產品中心 http://www.m.jxper05.cn/ 超聲波液位計 超聲波流量計