实验五 用FFT对信号做频谱分析(数字信号实验)

合集下载

数字信号实验报告材料 (全)

数字信号实验报告材料 (全)

数字信号处理实验报告实验一:用 FFT 做谱分析 一、 实验目的1、进一步加深 DFT 算法原理和基本性质的理解。

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

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

二、实验原理用FFT 对信号作频谱分析是学习数字信号处理的重要内容。

经常需要进行谱分析的信号是模拟信号和时域离散信号。

对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。

频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是2π/N ≤D 。

可以根据此时选择FFT 的变换区间N 。

误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时离散谱的包络才能逼近于连续谱,因此N 要适当选择大一些。

周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。

如果不知道信号周期,可以尽量选择信号的观察时间长一些。

对模拟信号的频谱时,首先要按照采样定理将其变成时域离散信号。

如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。

三、实验内容和步骤对以下典型信号进行谱分析:⎪⎩⎪⎨⎧≤≤-≤≤-=⎪⎩⎪⎨⎧≤≤-≤≤+==其它nn n n n n x 其它nn n n n n x n R n x ,074,330,4)(,074,830,1)()()(32414()cos4x n n π=5()cos(/4)cos(/8)x n n n ππ=+6()cos8cos16cos20x t t t t πππ=++对于以上信号,x1(n)~x5(n) 选择FFT 的变换区间N 为8和16 两种情况进行频谱分析。

分别打印其幅频特性曲线。

并进行对比、分析和讨论;;x6(t)为模拟周期信号,选择 采样频率Hz F s 64=,变换区间N=16,32,64 三种情况进行谱分析。

数字信号处理学习指导与课后答案第8章

数字信号处理学习指导与课后答案第8章

xˆa (t) xa (t) δ(t nT ) n
第8章 上机实验
对上式进行傅里叶变换, 得到
Xˆ a ( j )

[xa (t)

δ(t nT )]e j tdt
n



xa
(t
)δ(t

nT
)e

j
t
dt
n
在上式的积分号内只有当t=nT时, 才有非零值, 因此
第8章 上机实验
2. 实验原理与方法
1)
时域采样定理的要点是:
(1) 对模拟信号xa(t)以T进行时域等间隔理想采样, 形成 的采样信号的频谱 Xˆ ( j ) 会以采样角频率Ωs(Ωs=2π/T)为 周期进行周期延拓。 公式为
Xˆ a ( j ) FT[xˆa (t)]
ห้องสมุดไป่ตู้

1 T

X a ( j
第8章 上机实验
8.1 实验一:
8.1.1
1. (1) 掌握求系统响应的方法。 (2) 掌握时域离散系统的时域特性。 (3) 分析、 观察及检验系统的稳定性。
第8章 上机实验
2. 在时域中, 描写系统特性的方法是差分方程和单位脉 冲响应, 在频域可以用系统函数描述系统特性。 已知输入 信号可以由差分方程、 单位脉冲响应或系统函数求出系统对 于该输入信号的响应。 本实验仅在时域求解。 在计算机上 适合用递推法求差分方程的解, 最简单的方法是采用 MATLAB语言的工具箱函数filter函数。 也可以用MATLAB 语言的工具箱函数conv函数计算输入信号和系统的单位脉冲 响应的线性卷积, 求出系统的响应。
第8章 上机实验
8.1.2

fft频谱分析实验报告

fft频谱分析实验报告

FFT频谱分析实验报告引言频谱分析是一种用于分析信号频率特征的方法,可应用于多个领域,如音频处理、图像处理、通信系统等。

本文将介绍FFT(快速傅里叶变换)频谱分析方法,并通过实验验证其有效性。

实验目的本实验旨在探索FFT频谱分析方法,了解其原理,并通过实验验证其在信号处理中的应用。

实验步骤1.准备实验材料–一台装有MATLAB软件的电脑–需要进行频谱分析的信号数据2.导入信号数据在MATLAB环境中,导入需要进行频谱分析的信号数据。

可以通过以下命令完成数据导入:data = importdata('signal.txt');这里假设信号数据保存在名为signal.txt的文件中。

3.对信号数据进行FFT变换利用MATLAB中的fft函数对信号数据进行FFT变换。

具体命令如下:fft_data = fft(data);这将得到信号数据的FFT变换结果。

4.计算频率谱通过对FFT变换结果的分析,可以计算信号的频率谱。

根据FFT变换的性质,频率谱可以通过计算FFT变换结果的模值得到:spectrum = abs(fft_data);这将得到信号的频率谱。

5.绘制频谱图利用MATLAB的plot函数,可以将频率谱绘制成图形。

命令如下:plot(spectrum);xlabel('频率');ylabel('幅值');title('频谱图');这将绘制出信号的频谱图。

6.分析频谱图通过观察频谱图,可以分析信号的频率特征,如频率成分的强度、主要频率等。

实验结果与讨论在完成以上步骤后,我们得到了信号的频谱图。

通过观察频谱图,我们可以分析信号的频率特征。

例如,我们可以确定信号中主要的频率成分,并通过频率成分的强度判断信号的特性。

在实验中,我们可以尝试使用不同的信号数据进行频谱分析,并观察结果的差异。

通过比较不同信号的频谱图,我们可以进一步了解信号的特性,并探索不同应用场景下的频谱分析方法。

数字信号处理学习指导与课后答案第8章

数字信号处理学习指导与课后答案第8章
n

jns )
第8章 上机实验
(2) 采样频率Ωs必须大于等于模拟信号最高频率的两倍 以上, 才能使采样信号的频谱不产生频谱混叠。
利用计算机计算 Xˆ ( j ) 并不方便, 下面我们导出另
外一个公式, 以便在计算机上进行实验。
理想采样信号 xˆa (t)和模拟信号xa(t)之间的关系为
x1(n)=R8(n) x2(n)=u(n)
第8章 上机实验
① 分别求出x1(n)=R8(n)和x2(n)=u(n)的系统响应y1(n)和 y2(n), 并画出其波形。
② 求出系统的单位脉冲响应, 画出其波形。 (3) 给定系统的单位脉冲响应为 h1(n)=R10(n) h2(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3) 用线性卷积法求x1(n)=R8(n)分别对系统h1(n)和h2(n)的输 出响应y21(n)和y22(n), 并画出波形。
%调用函数tstem
title(′(f) 系统单位脉冲响应h2(n)′)
subplot(2, 2, 4); y=′y22(n)′; tstem(y22n, y);
title(′(g) h2(n)与R8(n)的卷积y22(n)′)
%=====================================
第8章 上机实验
(4) 给定一谐振器的差分方程为 y(n)=1.8237y(n-1)-0.9801y(n-2)+b0x(n)-b0x(n-2) 令b0=1/100.49, 谐振器的谐振频率为0.4 rad。 ① 用实验方法检查系统是否稳定。 输入信号为u(n) 时, 画出系统输出波形y31(n)。 ② 给定输入信号为
第8章 上机实验

FFT算法分析实验实验报告

FFT算法分析实验实验报告

FFT算法分析实验实验报告一、实验目的快速傅里叶变换(Fast Fourier Transform,FFT)是数字信号处理中一种非常重要的算法。

本次实验的目的在于深入理解 FFT 算法的基本原理、性能特点,并通过实际编程实现和实验数据分析,掌握 FFT 算法在频谱分析中的应用。

二、实验原理FFT 算法是离散傅里叶变换(Discrete Fourier Transform,DFT)的快速计算方法。

DFT 的定义为:对于长度为 N 的序列 x(n),其 DFT 为X(k) =∑n=0 到 N-1 x(n) e^(j 2π k n / N) ,其中 j 为虚数单位。

FFT 算法基于分治法的思想,将 N 点 DFT 分解为多个较小规模的DFT,从而大大减少了计算量。

常见的 FFT 算法有基 2 算法、基 4 算法等。

三、实验环境本次实验使用的编程语言为 Python,主要依赖 numpy 库来实现 FFT 计算和相关的数据处理。

四、实验步骤1、生成测试信号首先,生成一个包含不同频率成分的正弦波叠加信号,例如100Hz、200Hz 和 300Hz 的正弦波。

设定采样频率为 1000Hz,采样时间为 1 秒,以获取足够的采样点进行分析。

2、进行 FFT 计算使用 numpy 库中的 fft 函数对生成的测试信号进行 FFT 变换。

3、频谱分析计算 FFT 结果的幅度谱和相位谱。

通过幅度谱确定信号中各个频率成分的强度。

4、误差分析与理论上的频率成分进行对比,计算误差。

五、实验结果与分析1、幅度谱分析观察到在 100Hz、200Hz 和 300Hz 附近出现明显的峰值,对应于生成信号中的频率成分。

峰值的大小反映了相应频率成分的强度。

2、相位谱分析相位谱显示了各个频率成分的相位信息。

3、误差分析计算得到的频率与理论值相比,存在一定的误差,但在可接受范围内。

误差主要来源于采样过程中的量化误差以及 FFT 算法本身的近似处理。

fft谱分析实验报告

fft谱分析实验报告

fft谱分析实验报告实验名称:FFT谱分析实验报告实验目的:1. 学习和掌握FFT(快速傅里叶变换)算法的原理和相关知识。

2. 掌握使用FFT算法进行信号频谱分析的方法和步骤。

3. 通过实验探究不同信号的频谱特征。

实验器材:1. 个人电脑或计算机设备。

2. 谱分析软件(如MATLAB、Python中的numpy.fft模块等)。

实验步骤:1. 准备待分析的信号。

可以是一个模拟信号(如音频或振动信号),也可以是一个数字信号(如从传感器获取的数据)。

2. 打开谱分析软件,并将信号导入到软件中。

3. 使用FFT算法对信号进行频谱分析。

根据软件的具体操作方法,选择合适的参数和设置,如采样率、频率范围等。

4. 确认参数设置无误后,运行软件执行FFT算法,获得信号的频谱图。

5. 分析并解读频谱图。

观察频谱图中的峰值、幅值等信息,进一步了解信号的频谱特征。

实验结果:1. 频谱图:根据实际数据和运行软件获得的结果,绘制信号的频谱图。

2. 频谱特征分析:根据观察和分析频谱图,记录和分析信号的频谱特征(如频率分布、幅值变化等)。

实验讨论和结论:1. 对不同信号的频谱图进行比较和分析,探究信号的不同频谱特征。

2. 讨论和分析不同参数设置对频谱图的影响,如采样率、频率范围等。

3. 总结实验中遇到的问题和解决方案,提出改进和优化的建议。

实验总结:通过本次实验,我们学习和掌握了FFT谱分析的原理和方法。

通过对不同信号的频谱分析,我们了解了信号的频谱特征,并探讨了不同参数设置对频谱图的影响。

实验过程中,遇到了一些问题,并通过分析和解决,不断提高了实验的准确性和可靠性。

通过本次实验,我们对FFT谱分析有了更深入的理解,为以后的信号处理和频谱分析工作奠定了基础。

利用FFT对信号进行频谱分析

利用FFT对信号进行频谱分析

∑-=--==101,....,0,)(1)(N k nk N N n W k X N n x (3.2) 离散傅立叶反变换与正变换的区别在于N W 变为1-N W ,并多了一个N 1的运算。

因为N W 和1-N W 对于推导按时间抽取的快速傅立叶变换算法并无实质性区别,因此可将FFT 和快速傅立叶反变换(IFFT )算法合并在同一个程序中。

2.利用FFT 进行频谱分析若信号本身是有限长的序列,计算序列的频谱就是直接对序列进行FFT 运算求得)(k X ,)(k X 就代表了序列在[]π2,0之间的频谱值。

幅度谱 )()()(22k X k X k X I R +=相位谱 )()(arctan )(k X k X k R I =ϕ 若信号是模拟信号,用FFT 进行谱分析时,首先必须对信号进行采样,使之变成离散信号,然后就可按照前面的方法用FFT 来对连续信号进行谱分析。

按采样定理,采样频率s f 应大于2倍信号的最高频率,为了满足采样定理,一般在采样之前要设置一个抗混叠低通滤波器。

用FFT 对模拟信号进行谱分析的方框图如下所示。

3.在运用DFT 进行频谱分析的过程中可能产生三种误差:(1)混叠序列的频谱是被采样信号频谱的周期延拓,当采样速率不满足Nyquist 定理时,就会发生频谱混叠,使得采样后的信号序列频谱不能真实的反映原信号的频谱。

避免混叠现象的唯一方法是保证采样速率足够高,使频谱混叠现象不致出现,即在确定采样频率之前,必须对频谱的性质有所了解。

在一般情况下,为了保证不出现频谱混叠,在采样前,先进行抗混叠滤波。

(2)泄漏实际中我们往往用截短的序列来近似很长的甚至是无限长的序列,这样可以使用较短的DFT 来对信号进行频谱分析,这种截短等价于给原信号序列乘以一个矩形窗函数,也相当于在频域将信号的频谱和矩形窗函数的频谱卷积,所得的频谱是原序列频谱的扩展。

抗混叠低通滤波器 采样T=1/f s N 点FFT泄漏不能与混叠完全分开,因为泄漏导致频谱的扩展,从而造成混叠。

实验五 用FFT对信号做频谱分析(数字信号实验)

实验五  用FFT对信号做频谱分析(数字信号实验)

备注:(1)、按照要求独立完成实验内容。

(2)、实验结束后,把电子版实验报告按要求格式改名,由实验教师批阅记录后;实验室统一刻盘留档。

实验五 用FFT 对信号做频谱分析一、实验目的学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便正确应用FFT 。

二、实验原理用FFT 对信号作频谱分析是学习数字信号处理的重要内容。

经常需要进行谱分析的信号是模拟信号和时域离散信号。

对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。

频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是 ,因此要求 。

可以根据此式选择FFT 的变换区间N 。

误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时离散谱的包络才能逼近于连续谱,因此N 要适当选择大一些。

周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。

如果不知道信号周期,可以尽量选择信号的观察时间长一些。

对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。

如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。

三、实验内容(包括代码与产生的图形及分析讨论)1. 对以下序列进行谱分析:1423()()1,03()8,470, 4,03()3,470, x n R n n n x n n n n n n x n n n n=+≤≤⎧⎪=-≤≤⎨⎪⎩-≤≤⎧⎪=-≤≤⎨⎪⎩选择FFT 的变换区间N 为8和16 两种情况进行频谱分析。

分别打印其幅频特性曲线, 并进行对比、分析和讨论。

解:(1))(1n x 代码如下:x1n=[ones(1,4)]; X1k8=fft(x1n,8); X1k16=fft(x1n,16); subplot(2,1,1);mstem(X1k8);title('(1a) 8µãDFT[x_1(n)]');xlabel('¦Ø/¦Ð');ylabel('·ù¶È'); axis([0,2,0,1.2*max(abs(X1k8))]) subplot(2,1,2);mstem(X1k16);title('(1b)16µãDFT[x_1(n)]');xlabel('¦Ø/¦Ð');ylabel('·ù¶È'); axis([0,2,0,1.2*max(abs(X1k16))])图形如下:ω/π幅度(1a) 8点DFT[x 1(n)]ω/π幅度(1b)16点DFT[x 1(n)](2))(2n x 代码如下:M=8;xa=1:(M/2); xb=(M/2):-1:1; x2n=[xa,xb];X2k8=fft(x2n,8); X2k16=fft(x2n,16); subplot(2,1,1);mstem(X2k8);title('(2a) 8点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X2k8))]) subplot(2,1,2);mstem(X2k16);title('(2b)16点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X2k16))])图形如下:ω/π幅度(2a) 8点DFT[x 2(n)]ω/π幅度(2b)16点DFT[x 2(n)](3))(3n x 代码如下:x3n=[xb,xa];X3k8=fft(x3n,8); X3k16=fft(x3n,16); subplot(2,1,1);mstem(X3k8);title('(3a) 8点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X3k8))]) subplot(2,1,2);mstem(X3k16);title('(3b)16点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X3k16))])图形如下:ω/π幅度(3a) 8点DFT[x 3(n)]ω/π幅度(3b)16点DFT[x 3(n)]2.对以下周期序列进行谱分析:选择FFT 的变换区间N 为8和16 两种情况分别对以上序列进行频谱分析。

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

备注:(1)、按照要求独立完成实验内容。

(2)、实验结束后,把电子版实验报告按要求格式改名,由实验教师批阅记录后;实验室统一刻盘留档。

实验五 用FFT 对信号做频谱分析一、实验目的学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便正确应用FFT 。

二、实验原理用FFT 对信号作频谱分析是学习数字信号处理的重要内容。

经常需要进行谱分析的信号是模拟信号和时域离散信号。

对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。

频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是 ,因此要求 。

可以根据此式选择FFT 的变换区间N 。

误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时离散谱的包络才能逼近于连续谱,因此N 要适当选择大一些。

周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。

如果不知道信号周期,可以尽量选择信号的观察时间长一些。

对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。

如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。

三、实验内容(包括代码与产生的图形及分析讨论)1. 对以下序列进行谱分析:1423()()1,03()8,470, 4,03()3,470, x n R n n n x n n n n n n x n n n n=+≤≤⎧⎪=-≤≤⎨⎪⎩-≤≤⎧⎪=-≤≤⎨⎪⎩选择FFT 的变换区间N 为8和16 两种情况进行频谱分析。

分别打印其幅频特性曲线, 并进行对比、分析和讨论。

解:(1))(1n x 代码如下:x1n=[ones(1,4)]; X1k8=fft(x1n,8); X1k16=fft(x1n,16); subplot(2,1,1);mstem(X1k8);title('(1a) 8µãDFT[x_1(n)]');xlabel('¦Ø/¦Ð');ylabel('·ù¶È'); axis([0,2,0,1.2*max(abs(X1k8))]) subplot(2,1,2);mstem(X1k16);title('(1b)16µãDFT[x_1(n)]');xlabel('¦Ø/¦Ð');ylabel('·ù¶È'); axis([0,2,0,1.2*max(abs(X1k16))])图形如下:ω/π幅度(1a) 8点DFT[x 1(n)]ω/π幅度(1b)16点DFT[x 1(n)](2))(2n x 代码如下:M=8;xa=1:(M/2); xb=(M/2):-1:1; x2n=[xa,xb];X2k8=fft(x2n,8); X2k16=fft(x2n,16); subplot(2,1,1);mstem(X2k8);title('(2a) 8点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X2k8))]) subplot(2,1,2);mstem(X2k16);title('(2b)16点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X2k16))])图形如下:ω/π幅度(2a) 8点DFT[x 2(n)]ω/π幅度(2b)16点DFT[x 2(n)](3))(3n x 代码如下:x3n=[xb,xa];X3k8=fft(x3n,8); X3k16=fft(x3n,16); subplot(2,1,1);mstem(X3k8);title('(3a) 8点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X3k8))]) subplot(2,1,2);mstem(X3k16);title('(3b)16点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X3k16))])图形如下:ω/π幅度(3a) 8点DFT[x 3(n)]ω/π幅度(3b)16点DFT[x 3(n)]2.对以下周期序列进行谱分析:选择FFT 的变换区间N 为8和16 两种情况分别对以上序列进行频谱分析。

分别打印其幅频特性曲线, 并进行对比、分析和讨论。

解:(1))(4n x 代码如下:close all;clear all;clc; N=8;n=0:N-1; x4n=cos(pi*n/4); X4k8=fft(x4n); N=16;n=0:N-1; x4n=cos(pi*n/4);45()cos 4()cos cos 48x n nx n n nπππ==+X4k16=fft(x4n); subplot(2,1,1);mstem(X4k8);title('(4a) 8点DFT[x_4(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X4k8))]) subplot(2,1,2);mstem(X4k16);title('(4b)16点DFT[x_4(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X4k16))])图形如下:ω/π幅度(4a) 8点DFT[x 4(n)]ω/π幅度(4b)16点DFT[x 4(n)](2))(5n x 代码如下:close all;clear all;clc; N=8;n=0:N-1;x5n=cos(pi*n/4)+cos(pi*n/8); X5k8=fft(x5n); N=16;n=0:N-1; x5n=cos(pi*n/4)+cos(pi*n/8); X5k16=fft(x5n); subplot(1,2,1);mstem(X5k8);title('(5a) 8点DFT[x_5(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X5k8))]) subplot(1,2,2);mstem(X5k16);title('(5b)16点DFT[x_5(n)]');xlabel('ω/π');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X5k16))])图形如下:0.51 1.52ω/π幅度(5a) 8点DFT[x 5(n)]ω/π幅度(5b)16点DFT[x 5(n)]3. [选作] 对模拟周期信号进行谱分析:选择采样频率Fs=64 Hz ,对变换区间N=16, 32, 64 三种情况进行谱分析。

分别打印其幅频特性,并进行分析和讨论。

解:代码如下:Fs=64;T=1/Fs;N=16;n=0:N-1;x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); X6k16=fft(x6nT); X6k16=fftshift(X6k16);8()cos 8πcos16πcos 20πx t t t t=++Tp=N*T;F=1/Tp;k=-N/2:N/2-1;fk=k*F;subplot(3,1,1);stem(fk,abs(X6k16),'.');box ontitle('(6a) 16点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度');axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k16))])N=32;n=0:N-1;x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);X6k32=fft(x6nT);X6k32=fftshift(X6k32);Tp=N*T;F=1/Tp;k=-N/2:N/2-1;fk=k*F;subplot(3,1,2);stem(fk,abs(X6k32),'.');box ontitle('(6b) 32点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度');axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k32))])N=64;n=0:N-1;x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);X6k64=fft(x6nT);X6k64=fftshift(X6k64);Tp=N*T;F=1/Tp;k=-N/2:N/2-1;fk=k*F;subplot(3,1,3);stem(fk,abs(X6k64),'.'); box ontitle('(6a) 64点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度');axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k64))])图形如下:-30-20-100102030f(Hz)幅度(6b) 32点|DFT[x 6(nT)]|f(Hz)幅度(6a) 64点|DFT[x 6(nT)]|f(Hz)幅度五、总结1.简要回答以下思考题。

(1) 对于周期序列,如果周期不知道,如何用FFT 进行谱分析?答:周期信号的周期预先不知道时,可先截取M 点进行DFT,再将截取长度扩大1倍截取,比较结果,如果二者的差别满足分析误差要求,则可以近似表示该信号的频谱,如果不满足误差要求就继续将截取长度加倍,重复比较,直到结果满足要求(2) 如何选择FFT 的变换区间?(包括非周期信号和周期信号)答:一、对于非周期信号:有频谱分辨率F ,而频谱分辨率直接和FFT 的变换区间有关,因为FFT 能够实现的频率分辨率是2π/N...因此有最小的N>2π/F 。

相关文档
最新文档