超声波液位计基于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.dlysys.com/ 超声波液位计 超声波流量计