华南理工大学信号与系统实验,电信学院

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三 利用DFT 分析连续信号频谱

一、实验目的

应用离散傅里叶变换(DFT),分析模拟信号x (t )的频谱。深刻理解利用DFT 分析模拟信号频谱的原理,分析过程中出现的现象及解决方法。

二、 实验原理

连续周期信号相对于离散周期信号,连续非周期信号相对于离散非周期信号,都可以通过时域抽样定理建立相互关系。因此,在离散信号的DFT 分析方法基础上,增加时域抽样的步骤,就可以实现连续信号的DFT 分析。

三、实验内容

1. 利用FFT 分析信号)(e )(2t u t x t -=的频谱。

(1) 确定DFT 计算的各参数(抽样间隔,截短长度,频谱分辨率等);

答:选取fm=25Hz 为近似的最高频率,则抽样间隔T=)2/(1m f =0.02s

选取6=p T s 进行分析,则截短点数为N==T T p /300

采用矩形窗,确定频域抽样点数为512点。

Matlab 函数如下:%对连续信号x=e(-2t)分析

fsam=50;Tp=6; N=512; T=1/fsam;

t=0:T:Tp;

x=exp(-2*t);

X=T*fft(x,N);

subplot(2,1,1);plot(t,x);

xlabel('t');title('时域波形 N=512');legend('理论值');

w=(-N/2:N/2-1)*(2*pi/N)*fsam;

y=1./(j*w+2);

subplot(2,1,2);plot(w,abs(fftshift(X)),w,abs(y),'r-.');

title('幅度谱 N=512');xlabel('w');

legend('理论值','计算值',0);

axis([-10,10,0,1.4])

结果:

(2) 比较理论值与计算值,分析误差原因,提出改善误差的措施。

答:理论值与DFT 的幅值相比,寻在一定误差。只要采样频率足够高,时窗长度足够长,FFT 点数足够大,得到的DFT 值越逼近实际频谱。

2. 分析周期信号的)π18sin(2)π10cos()(t t t x +=频谱时,如果分析长度不为整周期,利用 fft 函数计算并绘出其频谱,总结对周期信号进行频谱分析时,如何选取信号的分析长度。 答:

Matlab 程序如下:

T0=1; N=19; T=T0/N; % T0为整周期

t=0:T:T0;

x=cos(10*pi*t)+2*sin(18*pi*t);

Xm=fft(x,N)/N;

f=(-(N-1)/2:(N-1)/2)/N/T;

subplot(2,1,1);stem(f,abs(fftshift(Xm)));

xlabel('f (Hz)');ylabel('magnitude');title('·ù¶ÈÆ× T0=1');

T0=1.2; N=19; T=T0/N; % T0不为整周期

t=0:T:T0;

x=cos(10*pi*t)+2*sin(18*pi*t);

Xm=fft(x,N)/N;

f=(-(N-1)/2:(N-1)/2)/N/T;

subplot(2,1,2);stem(f,abs(fftshift(Xm)));

xlabel('f (Hz)');ylabel('magnitude');title('·ù¶ÈÆ× T0=1.2');

结果:

分析:对比T0为整周期和不为整周期的幅度频可发现,后者信号产生失真。当分析长度不为整周期时,经过Matlab的延拓,信号不为原来的信号。因此,在对周期信号进行频谱分析时,选取的分析长度必须为整周期才能保证信号不失真。

4. 产生一个淹没在噪声中的信号x(t),例如由50Hz和120Hz的正弦信号以及一个零均值的随机噪声叠加而成。确定抽样间隔和信号截短长度,分析信号的频谱,指出50Hz和120Hz 的正弦成分对应的谱峰位置,详细写出检测信号的步骤和原理。

答:Matlab函数如下:

T0=1; N=241; T=T0/N;

t=0:T:T0;

x=cos(2*pi*50*t)+2*sin(2*pi*120*t)+randn(size(t));

Xm=fft(x,N)/N;

f=(-(N-1)/2:(N-1)/2)/N/T;

stem(f,abs(fftshift(Xm)));

xlabel('f (Hz)');ylabel('magnitude');

title('·ù¶ÈÆ×');

结果:

分析:50Hz的正弦成分对应f=-50,50的频谱,120Hz的正弦成分对应f=-120,120的频谱。

四.实验思考题

1. 既然可直接由Fourier变换的定义计算连续信号的傅里叶变换,为何利用DFT分析连续信号的频谱?

答:根据定义是可以根据傅里叶变换的定义直接计算连续信号的福利叶变换,但是定义区间是无限长,这在计算上是不可实施的,无论是人工计算还是通过计算机进行计算。而DFT 是有限长的序列的傅里叶变换,在计算机上容易实现。再者,在数字信号处理中,希望能够利用数字方法直接计算常见的四种信号的频谱函数,这是需要的时域信号为有限长,其频谱也为有限项。因此常常利用DFT对序列进行频谱分析。

2. 若信号持续时间无限,且无解析表达式,如何利用DFT分析其频谱?

答:因为只要是有限长的离散序列都可以通过DFT对其进行频谱分析。故对于持续时间无限的信号,因首先得到能表征信号特征的离散序列,在对该离散序列进行DFT变换分析即可。这就涉及到模拟信号的数字化过程,具体方法是:(1)采样,根据信号的采样定理对该持续时间无限的序列进行采样。(2)量化,将采样得到的序列进行量化得到原模拟信号对应的离散序列,让后采用DFT对该序列进行频谱分析即可。

3. 在利用DFT分析连续信号频谱时,会出现哪些误差?如何克服或改善这些误差?

答:在利用DFT分析连续信号的频谱时,会出现的误差可以分为三类。分别是混叠现象,泄露现象,栅栏现象。

克服或改善的方法分别是:

(1)混叠现象:对于带限连续信号,只要提高抽样频率使之满足时域抽样定理;对于非带限信号,可以根据实际情况对其进行低通滤波,使之成为带限信号。工程中的信号一般都不是带限信号,连续信号在抽样前通常都进过一个低通滤波器(即抗混叠滤波器)进行低通滤波,以减少混叠误差,提高频谱分析精度。

(2)泄漏现象:在选择矩形窗口的长度时,适当增加窗的长度,可以提高频谱分辨率,但是不能减小旁瓣引起的频谱泄露,因此可以选择旁瓣幅度很小甚至为零的非矩形窗对信号进行加窗处理,就可以降低频谱泄露。

(3)栅栏现象:改善栅栏现象最常用的方法是在离散序列之后补零,得到一个比原有序

相关文档
最新文档