FFT 及信号的谱分析.docx
- 文档编号:16038694
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:30
- 大小:154.87KB
FFT 及信号的谱分析.docx
《FFT 及信号的谱分析.docx》由会员分享,可在线阅读,更多相关《FFT 及信号的谱分析.docx(30页珍藏版)》请在冰点文库上搜索。
FFT及信号的谱分析
实验九FFT及信号的谱分析
一、实验目的
1.通过实验加深对FFT的理解,熟悉FFT程序、结构及编程方法。
2.熟练应用FFT对典型信号进行谱分析的方法。
3.了解应用FFT进行信号频域分析可能出现的问题以便在实际中正确应用FFT。
4.理解FFT与IFFT的关系。
5.熟悉应用FFT实现两个序列的线性卷积的方法。
二、实验原理及方法
在各种信号序列中,有限长序列信号处理占有很重要的位置,对有限长序列,我们可以使用离散Fourier变换(DFT)。
这一变换不但可以很好地反映序列的频谱特性,而且已永快速算法在计算机上实现,当序列x(n)的长度为N时,它的DFT定义为:
(一)、在利用DFT进行频谱分析时可能会出现三种误差。
(1)混叠
为了利用计算一个连续信号的频谱,首先需要对这个连续信号进行取样,如果取样率
太低,也即抽样周期太大,在频域内将产生混叠现象,这样就不可能无失真的恢复原连续信
号。
对带限信号,当所处理模拟信号最高频率fh与抽样频率fs满足
时就不会出现频谱混叠现象。
(2)泄漏
实际信号序列往往很长,甚至是无限长序列。
为了方便,我们往往用截短的序列来近似他们。
这样可以使用较短的DFT来对信号进行频谱分析。
对序列xn截短的过程就是将
原信号序列与矩形窗函数相乘的过程,在频域就是两者频谱的卷积。
一般情况下这样都会造
成由此得到的频谱不同于信号原来的频谱,这种现象叫做泄漏。
在实际应用中,可以选用频
谱主瓣小、旁瓣小、尽量接近于窗函数来减少泄漏。
泄漏不能与混叠完全分开,因为泄漏导致频谱的扩展,从而造成混叠。
为了减少泄漏影响,可以选择适当的窗函数是频谱的扩散减至最小。
(3)栅栏效应
DFT是对单位园上z变换的均匀取样,所以它不可能将频谱视为一个连续函数。
这样就产生了栅栏效应。
就一定的意义上看,用DFT来观看频谱就好像通过一个尖桩的栅栏来观看一个图景一样,只能在离散点上看到真实的频谱。
这样就有可能发生一些频谱的峰点或谷点被“尖桩的栅栏”所挡住,不能被我们观察到。
减小栅栏效应的一个方法是借助于原列
的末端增加一些零值,从而变动DFT的点数。
这一方法实际上是人为的改变了对真实频谱
采样的点数和位置,相当于搬动了每一根“尖桩栅栏”的位置,从而使得原来看不到的频谱的峰点或谷点就有可能看到了。
IFFT一般可以通过FFT程序来完成,只要对X[k]取共轭,进行FFT运算,然后再取共轭,并乘以因子1/N,就可以完成IFFT。
实验中用到的信号序列:
三、实验内容
1.用三种不同的DFT程序计算x(n)=Rn(8)的傅里叶变换exp(jw),并比较三种程序计算机运行时间。
(1)用forloop语句的M函数文件dft1.m,用循环变量逐点计算X(k);
(2)编写用MATLAB矩阵运算的M函数文件dft2.m,完成下列矩阵运算;
(3)调用FFT库函数,直接计算X(k);
(4)分别利用上述三种不同方式编写的DFT程序计算序列x(n)的傅立叶变换exp(jw),并画出相应的幅频和相频特性,再比较各个程序的计算机运行时间。
(1)代码:
dft1(x)
function[Am,pha]=dft1(x)
N=length(x);
w=exp(-j*2*pi/N);
fork=1:
N
sum=0;
forn=1:
N
sum=sum+x(n)*w^((k-1)*(n-1));
end
Am(k)=abs(sum);
pha(k)=angle(sum);
end
代码:
clc;
clf;
clear;
n=0:
9;
x=[ones(1,8),zeros(1,2)];
%x=stepseq(0,0,7);
subplot(311)
stem(n,x);
[Am,pha]=dft1(x);
subplot(312)
stem(Am);
subplot(313)
stem(pha);
图形:
(2)代码:
dft2(x)
function[Am,pha]=dft2(x)
N=length(x);
n=[0:
N-1];
k=[0:
N-1];
w=exp(-j*2*pi/N);
nk=n'*k;
wnk=w.^(nk);
Xk=x*wnk;
Am=abs(Xk);
pha=angle(Xk);
代码:
clc;
clf;
clear;
n=0:
9;
x=[ones(1,8),zeros(1,2)];
%x=stepseq(0,0,7);
subplot(311)
stem(n,x);
[Am,pha]=dft2(x);
subplot(312)
stem(Am);
subplot(313)
stem(pha);
图形:
(3)代码:
clc;
clf;
clear;
n=0:
9;
x=[ones(1,8),zeros(1,2)];
%x=stepseq(0,0,7);
subplot(311)
stem(n,x);
Y=fft(x);
subplot(312)
stem(abs(Y));
subplot(313)
stem(angle(Y));
图形;
(4)代码:
clc;
clf;
clear;
n=0:
1000;
x=[ones(1,8),zeros(1,993)];
%x=stepseq(0,0,7);
subplot(311)
stem(n,x);
c1=clock
[Am1,pha1]=dft1(x);
c2=clock
C1=etime(c1,c2)
subplot(312)
plot(Am1);
subplot(313)
plot(pha1);
c3=clock
[Am2,pha2]=dft2(x);
c4=clock
C2=etime(c3,c4)
figure
(2)
subplot(311)
stem(n,x);
subplot(312)
plot(Am1);
subplot(313)
plot(pha1);
c5=clock
Y=fft(x);
c6=clock
C3=etime(c5,c6)
figure(3)
subplot(311)
stem(n,x);
subplot(312)
plot(abs(Y));
subplot(313)
plot(angle(Y));
结果:
C1=
-2.7630
C2=
-0.8720
C3=
0
图形:
三幅图都是一样的;
2、编制信号频谱分析的主程序(见参考流程图)和产生信号的子程序。
(1)观察高斯序列的时域和频域特性,固定信号xa(n)中参数p=8,改变q的值,使q分别等于2,4,8,观察它们的时域和频域特性,了解当q取不同值时,对信号序列的时域幅频特性的影响;固定q=8,改变p,使p分别等于8,13,14,观察参数p变化对信号序列的时域及幅频特性的影响,观察p等于多少时,会发生明显的泄漏现象,混叠是否也随之出现?
记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。
(1)代码:
clear;
clc;
clf;
n=0:
15;
k=0:
15;
p=8;
q=2;
%q=4;
%q=8;
x=exp((n-p).^2/q);
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
q=4;
x=exp((n-p).^2/q);
figure
(2)
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
q=8;
x=exp((n-p).^2/q);
figure(3)
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
图形:
2.代码:
clear;
clc;
clf;
n=0:
15;
k=0:
15;
%p=8;
q=8;
p=13;
%p=14;
x=exp((n-p).^2/q);
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
p=8;
x=exp((n-p).^2/q);
figure
(2)
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
p=14;
x=exp((n-p).^2/q);
figure(3)
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
图形:
由上面的图形我们可以进行上面的比较;通过上面的比较我们知道我们的第三是没有出现泄漏和混叠得;
(2)观察衰减正弦序列xb(n)的时域和幅频特性,=0.1,f=0.0625,检查谱峰出现位置是否正确,注意频谱的形状,绘出幅频特性曲线,改变f,使f分别等于0.4375和0.5625,观察这两种情况下频谱的形状和谱峰出现为止,又无混叠和泄露现象?
说明产生现象的原因。
(2)代码:
clear;
clc;
clf;
n=0:
15;
k=0:
15;
a=0.1;
f=0.0625;
x=exp(-a)*sin(2*pi*f*n);
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
f=0.4375;
x=exp(-a)*sin(2*pi*f*n);
figure
(2)
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
f=0.5625;
x=exp(-a)*sin(2*pi*f*n);
figure(3)
subplot(311)
stem(n,x);
X=dfs(x,16);
subplot(312)
stem(k,abs(X));
subplot(313)
stem(k,angle(X));
图形:
(3)用FFT对如下信号进行谱分析:
选择抽样频率fs=64Hz,抽样点数分别取16,32,64。
(3)代码:
clear;
clc;
clf;
n=0:
1/64:
15/64;
x=cos(8*pi*n)+cos(16*pi*n)+cos(20*pi*n);
subplot(211)
stem(x);
Yn=fft(x);
subplot(212)
stem(n,abs(Yn));
figure
(2)
n=0:
1/64:
31/64;
x=cos(8*pi*n)+cos(16*pi*n)+cos(20*pi*n);
subplot(211)
stem(x);
Yn1=fft(x);
subplot(212)
stem(n,abs(Yn1));
figure(3)
n=0:
1/64:
63/64;
x=cos(8*pi*n)+cos(16*pi*n)+cos(20*pi*n);
subplot(211)
stem(x);
Yn2=fft(x);
subplot(212)
stem(n,abs(Yn2));
图形:
(4)、实现序列的内插和抽取所对应的傅里叶变换。
给定序列
Nfft=128点的傅里叶变换,并求
对应的傅里叶变换(N=128点)。
比较这三个计算结果得到的幅频特性图,分析其差别产生的原因。
代码:
clc;
clear;
clf;
n1=0:
127;
%n2=128:
1000;
%n=0:
1000;
x1=stepseq(0,0,127).*(cos(pi/36*n1)+cos(1.5*pi/36*n1));
%x2=zeros(1,873);
%[x,n]=sigadd(x1,n1,x2,n2);
subplot(211)
stem(n1,x1);
Y=fft(x1);
subplot(212)
plot(abs(Y));
x2=stepseq(0,0,127).*(cos(pi/36*n1*4)+cos(1.5*pi/36*n1*4));
figure
(2)
subplot(211)
stem(n1,x2);
Y1=fft(x2);
subplot(212)
plot(abs(Y));
n2=0:
4:
127;
x3=n2/4;
x5=x3
(2)
x4=[x3
(1)zeros(1,3)x3
(2)zeros(1,3)x3(3)zeros(1,3)x3(4)zeros(1,3)x3(5)zeros(1,3)x3(6)zeros(1,3)x3(7)zeros(1,3)x3(8)zeros(1,3)x3(9)zeros(1,3)x3(10)zeros(1,3)x3(11)zeros(1,3)x3(12)zeros(1,3)x3(13)zeros(1,3)x3(14)zeros(1,3)x3(15)zeros(1,3)x3(16)zeros(1,3)x3(17)zeros(1,3)x3(18)zeros(1,3)x3(19)zeros(1,3)x3(20)zeros(1,3)x3(21)zeros(1,3)x3(22)zeros(1,3)x3(23)zeros(1,3)x3(24)zeros(1,3)x3(25)zeros(1,3)x3(26)zeros(1,3)x3(27)zeros(1,3)x3(28)zeros(1,3)x3(29)zeros(1,3)x3(30)zeros(1,3)x3(31)zeros(1,3)x3(32)zeros(1,3)];
figure(3)
subplot(211)
stem(n1,x4);
Y2=fft(x4);
subplot(212)
plot(abs(Y2));
图形:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FFT 及信号的谱分析 信号 谱分析