10614 - 200620703027梁璨 - 2003(10)

2019-08-29 22:27

电子科技大学硕士学位论文

信号的全部频率分量组成了所谓的频谱。人们主要通过在频域范围内测量频谱的各个分量,以此来获取信号的多种参数。在频谱测量中,一般将随频率变化的幅度谱称为频谱,而傅立叶变换是频谱测量的基础。对于任意一个时域信号来说,它都可以被分解为一系列不同频率、不同相位、不同幅度的正弦波组合。

傅里叶变换是一种将信号从时域转换到频域的方法,是信号处理等领域的重要分析工具,傅里叶变换对于分析线性系统以及平稳信号都非常的适用。离散傅里叶变换(DFT)作为连续傅里叶变换的离散表达形式,用于在计算机上做数字运算,但由于DFT的计算量相当大,其应用就受到了一定程度的限制。而快速傅里叶变换(FFT)是快速计算DFT的一种高效方法,它使DFT的运算大大简化,因此将其应用于我们的信号处理当中。

FFT是DFT的快速计算方法,在此分别介绍一下DFT与FFT。

4.2.1傅立叶变换

通常要进行数字处理的往往是连续时间信号。而对连续时间信号进行模/数转换的第一个问题是将其离散化(采样),其次是对采样信号进行量化和编码,将其数字化。在这个过程中需要满足采样定理。下面介绍傅立叶变换的数学方法。

如果模拟信号为x(t),它的傅立叶变换(或称频谱)可以表示为:

?X(?)??x(t)e?j?tdt (4-1)

??其反变换是:

x(t)?12?????X(?)ej?tdt (4-2)

在正变换中x(t)经过采样后变为x(nT),T为采样周期。那么对于离散信号

x(nT)的傅立叶变换对(正反变换)可以表示为:

nk X(k)??x(n)WN (4-3)

n?0N?11N?1?nk)N x(n)??Xk(W (4-4)

Nk?0式中WN?exp(?j2?)。DFT对应在时域、频域都是有限长,且又都是离散的一类变N~~换,x(n),X(k)分别是x(nTs)和X(k?0)的一个周期,此处把Ts和?0都归一化为1。在

36

第四章 虚拟数字频谱仪软件设计

我的设计当中,采样点数为N=4096,那么在计算所有的X(k)时,总共需要计算N2次乘法和N(N?1)加法,这样可以看到计算DFT所花费的时间都比较长。 而下面所提供的快速傅立叶变换(FFT)算法依靠蝶形因子WN内在的对称性和周期性,使得运算速度得到加快,最终使N=4096点的DFT计算量下降为Nlog2N=2048*12=24576,这种方法比DFT的2*N(N?1)=33546240快了1365倍。2因此,运用FFT算法来求频谱信号要比DFT方便快捷很多。下面就介绍一下FFT算法。

4.2.2 FFT理论 由DFT的性质可知并令

?W0W0W0?012WWW?nkWN?[W]??W0W2W4??………………?W0WN?1W2(N?1)?…………………………??N?1W?W2(N?1)?? (4-5)

……?W(N?1)(N?1)??W0由(4-5)的W矩阵可知,虽然其中含有N2个元素,但由于蝶形因子WN的对称性和周期性,其中只有N个独立的值,即W0,W1,……,WN?1,且在N个值中有一部分取值极其简单。简而言之,WN因子的取值有特点如下特点:

01W(1)W=,N2=1; (4-6)

r?N2W(2)

N?rN=W,WNrN=-Wr (4-7)

将蝶形因子的周期性和对称性与矩阵相结合,这样就减少了计算量,大大简化了变换过程,并且提高了效率。FFT主要是通过将长序列的DFT分解为短序列的DFT来实现变换的过程。首先,将N点的DFT先分解为2个N/2点的DFT,然后对每个N/2点的DFT又分解为N/4点的DFT,以此类推。最小变换的点数即所谓的“基数(radix)”。因此,基2的FFT算法的最小变换(蝶形)是2点DFT。一般的,对N点FFT,对应于N个输入值,有N个频域值与之对应。

在这种分解方法中,主要分为了两类:第一类是基于时间序列x(n)进行分解,由此得到的FFT算法为按时间抽取算法;第二类是将x(n)进行了傅里叶变换后的

37

电子科技大学硕士学位论文

X(k)进行抽取分解,这类叫做频率抽取算法。对每一类算法,按照蝶形运算的周期性和对称性,又将其为基2、基4、基8等任意因子的FFT算法。因此,对于一个x(n)的序列来说,N是2的整次幂,才能进行FFT的运算。

结合本设计中取N=212=4096,那么将改序列分解为偶数点和奇数点的两个N/2=2048点的序列,即

偶数序列:a(n)=x(2n)

奇数序列:b(n)=x(2n+1) 在这里n=0,1,2??2047 因此,x(n)的4096点FFT就可以表示为:

X(k)=?x(2n)Wn?020472nk4096(2n?1)k??x(2n?1)W4096 (4-8) n?02047因为,蝶形因子的特性可知,W?[e20472N?j(2?4096)2]?W2048,因此

(4-9)

X(k)??x(2n)Wn?0nk2048?Wk40962047n?0?x(2n?1)Wnk2048令A(k)和B(k)分别表示上式中右边第一个和式和第二个和式,则有 X(k)?A(k)?W4096B(k) (4-10)

由于A(k)和B(k)的周期为N/2=2048,X(k)式4096点的DFT,因此计算

kk的范围为0到(N/2-1=2047),计算k=N/2=2048至(N-1)=4095的X(k)时利用k?N2kWN??WN的特性,得:

k X(k?N2)?X(k?2048)?A(k)?W4096B(k) (4-11)

上面两式分别用来计算0?k?(N2?1)?2047和N2?2048?k?(N?1)?4095的X(k)。以同样的方式进行抽取,就可以得到N/4=1024点的DFT,重复这个抽取的过程,就可以使得N点的DFT用一组2点DFT来计算。

X(a)kWNX(a)'X(b)-1X(b)'

图 4-1基数为2 的时间抽取FFT蝶形算法

基数为2的DFT中,设N?2M?212?4096,因此总共有12级的运算,每级总有

NN/2=2048个2点FFT蝶形运算。因此,4096点FFT总共有log2N=24576次蝶形

2 38

第四章 虚拟数字频谱仪软件设计

运算。基数为2的时间抽取FFT蝶形运算如图4-1所示,设蝶形运算的输入分别为X(a)和X(b),输出分别为X(a)'和X(b)',则有

'X(a?)X(Nb ) W X(a)? (4-12)

k'X(a?)X(Nb )W X(b)? (4-13)

k在FFT运算中,数据的分组和重新排序是一个关键问题。对于基2的FFT来说,就是将数据采样的序号高低位颠倒正好就是结果的新序号。因此,对于采样的结果只需倒位后就可以送入到存储器里。

上面讨论的FFT算法都是在输入和输出均为复数序列的条件下所得。而在实际工程中,输入序列通常都是实数。计算实数序列的FFT时当然可以采用复数FFT算法,只需将虚部置0。但是,如果能够考虑实数序列FFT的对称特性,则实数序列FFT的运算量可以降低一半,同时存储量可以减少一半。

FFT主要具有以下的基本特性:

1.输出频谱的复数值X(k),同时包含幅度、相位信息。若X(k)?Re(k)?jIm(k),则幅度谱为X(k)?Re2(k)?Im2(k),相位谱为?(k)?arctanIm(k)。计算出的频谱为峰值Re(k)频谱,对周期信号而言,谱线的高度仅为付氏频谱谱线高度的一半。当用有效值(RMS)表示幅值频谱时,X(k)?RMSX(k)2。

2.各节点之间的频率间隔由时间长度N和采样频率fs决定:?f?fs。 N3.第k个节点对应的频率值为f(k)?k?fs,FFT形成的频谱相对于折叠频

N率fS /2对称,FFT的输出频率范围为0~fS/2。实际只有一半数据有意义。

用DFT进行测试信号频域特性分析存在主要误差有混叠误差、量化误差、频谱泄漏和栅栏效应等,减少计算误差的办法有,增加A/D的有效位数,提高采样频率,增加采样时间和采样点数,整周期采样或加窗处理等。

4.2.3 窗函数

在信号处理中不可避免地要遇到数据截短问题,这是因为实际工作中所能处理的离散序列总是有限长,把一个长序列变成有限长的短序列不可避免地要用到窗函数,而加窗是改善DFT的一种重要手段,选择合适的窗能够有效抑制频谱泄漏,提高精度。加窗的实质就是对被分析信号在不同时刻加不同的权值,以使信

39

电子科技大学硕士学位论文

号截断的影响尽可能的小。为了改善分析信号的频谱特性,许多从事数字信号处理的学者设计了各种不同特性的窗函数。窗的形状和宽度决定了窗函数的特征,不同的窗函数的频谱的主瓣和旁瓣是不同的,主瓣宽度决定了被截短以后所得序列的频域分辨率,而旁瓣峰值有可能湮灭没信号频谱分量中较小的成分。因此我们不难想到,对窗函数的要求是,希望它频谱的主瓣尽量的窄,旁瓣峰值尽量的小,使频率的能量能主要集中窄主瓣内,而这两个标准是相互矛盾的,因为增加主瓣的宽度才能降低旁瓣,反之,只有主瓣变高变窄,旁瓣才会变高[11]。

下面给出三个频域指标以定量地比较各种窗函数的性能。

(1)3dB带宽B,它是主瓣归一化的幅度下降到-3dB时的带宽。当数据长度为N时,矩形窗主瓣两个过零点之间的宽度为4?N。主瓣宽度B0?4?N

(2)最大旁瓣峰值A(dB)

(3)旁瓣谱峰值渐进衰减速度D(dB/oct)

一个理想的窗函数,应该具有最小的B和A以及最大的D。 在本虚拟频谱分析系统中提供了五种常用窗函数: (1) 矩形窗(Rectangular window)

n?0,1……,N,?1?1 ?R(n)??0 (4-14)

n为其它值?N?sin2WR(?)?窗谱宽度: ? (4-15)

sin2 B?0.89??, B0?4?N, A??13dB, D??6dB/oct

由于信号的输入是无现长,因此我们用这个窗函数是来截断它,实现对有限长的信号进行频谱分析,这里我们选用的点数N=4096。在频谱仪的设计中,矩形窗是最基本的窗函数。

(2)三角窗(Bartlett Window)

?2n??(n)??N

???(N?n)Nn?0,1……,,2n?N2 (4-16)

,……,N-1 40


10614 - 200620703027梁璨 - 2003(10).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:130吨煤粉炉炉热力计算例题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: