数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx

上传人:b****1 文档编号:5860303 上传时间:2023-05-05 格式:DOCX 页数:21 大小:469.02KB
下载 相关 举报
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第1页
第1页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第2页
第2页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第3页
第3页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第4页
第4页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第5页
第5页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第6页
第6页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第7页
第7页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第8页
第8页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第9页
第9页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第10页
第10页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第11页
第11页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第12页
第12页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第13页
第13页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第14页
第14页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第15页
第15页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第16页
第16页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第17页
第17页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第18页
第18页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第19页
第19页 / 共21页
数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx

《数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx》由会员分享,可在线阅读,更多相关《数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx(21页珍藏版)》请在冰点文库上搜索。

数字信号处理 用FFT作谱分析 第二次实验Word文件下载.docx

四、思考题·

11

一、实验目的:

(1)进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FFT的运算结果必然满足DFT的基本性质)。

(2)熟悉FFT算法原理和FFT子程序的应用。

(3)学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT。

二、实验步骤:

(1)复习DFT的定义、性质和用DFT作谱分析的有关内容。

(2)复习FFT算法原理与编程思想,并对照DIT—FFT运算流图和程序框图,读懂本实验提供的FFT子程序。

(3)编制信号产生子程序,产生以下典型信号供谱分析用:

=R4(n)

=cos(pi/4*n)

=sin(pi/8*n)

=cos(pi*8*t)+sin(pi*16*t)+cos(20*pi*t)

应当注意,如果给出的是连续信号xa(t),则首先要根据其最高频率确定采样速率fs以及由频率选择采样点数N,然后对其进行软件采样(即计算x(n)=xa(nT),0<

=n<

=N-1),产生对应序列x(n)。

对信号x6(t),频率分辨率的选择要以能分辨开其中的三个频率对应的谱线为准则。

对周期序列,最好截取周期的整数倍进行分析,否则有可能产生较大的分析误差。

请实验者根据DFT的隐含周期性思考这个问题。

(4)编写主程序。

下图给出了主程序框图,供参考。

本实验提供FFT子程序和通用绘图子程序。

三、上机实验内容

(1)对2中所给出的信号逐个进行谱分析。

下面给出针对各信号的FFT变换区间N以及对连续信号

的采样频率fs。

N=8,16

fs=64(hz),N=16,32,64

实验结果:

1.

=R4(n)

原程序:

n=[0:

7];

x=[11110000]

f1=fft(x,8)

f2=fft(x,16)

subplot(2,2,1)

stem(n,x);

axis([0802])

xlabel('

n'

ylabel('

x1(n)'

title('

x1的波形'

subplot(2,2,4)

k=[0:

15]

stem(k,abs(f2));

axis([01605])

k'

|x1(k)|'

x1(n)的8点fft'

subplot(2,2,3)

7]

stem(k,abs(f1));

axis([01005])

得到的波形图如下:

分析:

对8点和16点FFT变换分析如下:

离散傅里叶变换的N点变换在频域范围内表现为对傅里叶变换即Z变换在单位圆上的抽样。

所以N取8点时,k=0,1,2,3,4,5,6,7与N取16点时,k=0,2,4,6,8,10,12,14的离散傅里叶变换值对应相等,即它们都等于原信号在w=0、π/8、π/4、3π/8、4π/8、5π/8、6π/8、7π/8的傅里叶变换,这在上面两图可以明显看出。

所以,离散傅里叶变换实际上是对该序列在频域范围内以2π/N的间隔进行抽样。

2.

x=[12344321]

axis([0804])

x2(n)'

x2的波形'

axis([016020])

|x2(k)|'

x2(n)的8点fft'

axis([010020])

波形图:

所以N取8点时,

k=0,1,2,3,4,5,6,7与N取16点时,k=0,2,4,6,8,10,12,14的离散傅里叶变换值对应相等,即它们都等于原信号在w=0、π/8、π/4、3π/8、4π/8、5π/8、6π/8、7π/8的傅里叶变换,这在上面两图可以明显看出。

3.

x=[43211234]

x3(n)'

x3的波形'

|x3(k)|'

x3(n)的8点fft'

axis([08020])

4.

=cos(pi/4*n)

x=cos(0.25*pi*n)

axis([08-44])

x4(n)'

x4的波形'

subplot(2,2,2)

axis([016-44])

|x4(k)|'

x4(n)的16点fft'

x4(n)的8点fft'

对这两组图的分析除了同x4(n)类似的内容外,还可以得出以下分析:

如上图所示,N取值越大,越接近余弦曲线,即越接近原输入连续信号,且时域周期频域离散。

该信号的周期为8,对其取8点进行离散傅里叶变换的结果实际上是对原输入的周期信号进行傅里叶级数变换所截取的主值序列,从上图可以看出周期函数的傅里叶变换在以2π/8为间隔的变换值即K=0,1,2,3,4,5,6,7的所对应的离散傅里叶变换值和其傅里叶级数是一样的。

5.

=sin(pi/8*n)

x=sin((pi*n)/8)

x5(n)'

x5的波形'

x=sin(0.125*pi*n)

|x5(k)|'

x5(n)的16点fft'

x5(n)的8点fft'

从以上两组图可以看出,若按X1(n)进行分析,则明显不对。

现分析如下:

原信号周期为16,所以当N=8时,未能取完一个周期的值,N=16则取完了一个周期的值,所以这是两个不同的序列,所以按照X1(n)的分析方式是不对的,因为本身它们的傅里叶变换就是不一样的。

由于离散傅里叶变换是该序列周期延拓后所对应的傅里叶级数变换的主值序列,所以,当N=16时,所得的DFT值与X5(n)的傅里叶级数变换的主值序列是一致的,而N=8时是X5(n)的部分序列的

周期延拓后的傅里叶级数变换的主值序列,因此两者的值是不同的。

6.

=cos(pi*8*t)+sin(pi*16*t)+cos(20*pi*t)

Ts=1/64;

n=0:

15;

Xa=cos(8*n*Ts*pi)+cos(16*n*Ts*pi)+cos(20*n*Ts*pi);

f1=fft(Xa,16);

subplot(3,2,1);

stem(n,Xa);

axis([015-23]);

);

X6(n)'

X6(n)N=16'

%显示x6(n)N=16

k=0:

15

subplot(3,2,2);

axis([016015]);

|X6(k)|'

X6(n)N=16的16点FFT'

%显示X6(n)的16点FFT

31;

Xb=cos(8*n*Ts*pi)+cos(16*n*Ts*pi)+cos(20*n*Ts*pi);

f2=fft(Xb,32);

subplot(3,2,3);

stem(n,Xb);

axis([032-23]);

X6(n)N=32'

%显示x6(n)N=32

subplot(3,2,4);

stem(abs(f2));

axis([032020]);

X6(n)N=32的32点FFT'

%显示X6(n)的32点FFT

63;

Xc=cos(8*n*Ts*pi)+cos(16*n*Ts*pi)+cos(20*n*Ts*pi);

f3=fft(Xc,64);

subplot(3,2,5);

stem(n,Xc);

axis([064-23]);

X6(n)N=64'

%显示x6(n)N=64

subplot(3,2,6);

stem(abs(f3));

axis([064040]);

X6(n)N=64的64点FFT'

%显示X6(n)的64点FFT

分析:

原连续信号的周期为0.5,当采样频率Fs=64Hz时,所形成的序列周期为0.5*64=32。

所以只有N>

32,才能取完一个周期的序列。

这一点,从上面三个图可以清晰看出。

其中N=32和N=16的图形分析,可以参考x4(n)的分析。

N=32和

N=64的图形分析,可以参考x5(n)的分析。

(2)令

,用FFT计算8点和16点离散傅立叶变换,

,并根据DFT的对称性,由

求出

并与

(1)中所得结果比较。

提示(取N=16时,

x=cos(0.25*pi*n)+sin(0.125*pi*n)

x7(n)'

x7的波形'

|x7(k)|'

x7(n)的16点fft'

x7(n)的8点fft'

15];

f1=fft(x,16)

Re=(f1+conj(f1))/2

Im=(f1-conj(f1))/2

stem(n,abs(Re));

|Re(x7(k))|'

恢复后的x4(k)'

stem(abs(Im));

|Im(x7(k))|'

恢复后的x5(k)'

(3)令

,重复

(2)

x=cos(0.25*pi*n)+j*sin(0.125*pi*n)

stem(n,abs(f1));

axis([016010])

|x8(k)|'

x8(n)的16点fft'

7

f2=fft(x,8)

axis([08010])

x8(n)的8点fft'

f=fft(x,16)

k

(1)=conj(f

(1))

m=2:

16

k(m)=conj(f(16-m+2))

fe=(f+k)/2

fo=(f-k)/2

xr=ifft(fe,16)

xo=ifft(fo,16)/j

stem(n,xr);

axis([016-11])

|x4(n)|'

x4(n)的波形'

stem(n,abs(fe));

|x8e(k)|'

stem(n,xo);

|x5(n)|'

x5(n)的波形'

stem(n,abs(fo));

|x8o(k)|'

4.思考题

(1)在N=8时,x2(n)和x3(n)的幅频特性会相同吗?

为什么?

N=16呢?

答:

N=8是x2(n)和x3(n)的幅频特性相同;

N=16是x2(n)和x3(n)的幅频特性不相同。

N=8时造成了栅栏效应漏掉大的频谱分量。

(2)如果周期信号的周期预先不知道,如何用FFT进行谱分析?

如果周期预先不知道,可先截取M点惊醒FFT,再将截取长度扩大一倍,比较两次变换,如果而至的主谱差别满足分析误差要求,则用其近似表示周期信号的频谱,否则继续将截取长度加倍,直至前后两次分析所得主谱频率差别满足误差要求。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2