【数字信号处理实验】实验六 利用DFT计算数字信号频谱 本文代码已上传至github:MyShare/DSP Experiment/ex6 at master · TyroGzl/MyShare (github.com)如无法访问,也可以【G的科研生活】,sigusoft【DSPEX】 一、实验目的 掌握数字信号频谱分析方法掌握DFT与DTFT的频谱关系掌握DFT原理及软件编程实现方法掌握补零运算对DFT结果的影响 二、实验过程与结果 1. 数字信号的DFT计算 (1)DFT函数的编写 按照DFT定义式编写计算
点DFT的基本函数。注意:本人利用function语句编写DFT函数,不得使用MATLAB信号处理工具箱中的函数。 (2)DFT离散频谱的计算 假定原始数字序列为
,选取变换点数
,调用本人编写的DFT函数,计算序列
不同点数的离散傅里叶变换
和
;利用MATLAB中的函数,计算序列
不同点数的离散傅里叶变换
和
;按照要求分别绘制原序列及其不同点数的离散幅度特性与相位特性。对比两种方法的计算结果。 2. 数字信号的DTFT模拟 (1)DTFT连续频谱的模拟 假定原始数字序列
。选取变换点数
,调用MATLAB中的函数计算序列
的离散傅里叶变换
,用函数绘制连续频谱的幅度特性和相位特性,即可得到
近似的DTFT频谱
。注意:函数可以根据变换点数
对序列自动补零,横、纵坐标要标注明确。 (2)DFT与DTFT的频谱关系 选取变换点数
,调用MATLAB中函数计算序列
不同点数的离散傅里叶变换
和
,分别绘制相应的离散、连续频谱特性曲线,对DFT和DTFT的频谱关系进行讨论。注意:函数可以根据变换点数
对序列自动补零,横、纵坐标要标注明确,注意区分离散谱与连续谱的频率标注,连续谱的频率规范化到
。 3. 信号补零对频谱特性的影响 对序列
进行补零,使其长度达到
。对补零后的序列进行
点离散傅里叶变换。绘制不同长度的补零后的序列及其对应点数DFT变换的幅度特性。对比分析补零对截断非周期信号频谱特性的影响。 三、结果分析与实验结论 数字信号的DFT计算 (1)编写DFT函数如下: (2)分别利用自己编写的DFT函数及MATLAB中fft函数计算序列的DFT,源代码如下所示: 绘制结果如下所示:
图1 原始序列的时域图形
图2 自己编写DFT函数计算结果
图3 MATLAB自带fft函数计算结果 从图中可以看出,自己编写的DFT函数和MATLAB自带的函数计算结果中幅频特性一致,相频特性有差异,但是对应的点的幅度为0,此时相位无意义,因此不影响DFT计算结果的准确性。 2. 数字信号的DTFT模拟 实验内容2MATLAB源代码如下: (1)取变换点数为,对近似计算连续频谱结果如下:
图4 原始序列的时域图形
图5 模拟DTFT连续幅度及相位特性 (2)利用MATLAB中函数对序列
分别计算16点、64点DFT,其离散频谱特性和连续频谱特性如下图所示:
图6 离散频谱特性
图7 连续频谱特性 从图6和图7对比可以看出,DFT离散图谱是对DTFT连续图谱主值区间
进行等间隔采样得到的,采样频率为
。DFT计算的点数越多,对DTFT进行采样的采样频率就越高,所以DFT离散频谱就越接近DTFT连续频谱。因此,为了更好地使用DFT离散频谱模拟DTFT连续频谱,进行DFT变换的点数越多越好。 3. 信号补零对频谱特性的影响 MATLAB源代码如下: 绘制不同点数补零后的序列及其幅度响应如下图所示:
图8 16点补零序列及其幅度响应
图9 32点补零序列及其幅度响应
图10 128点补零序列及其幅度响应 对比三幅图结果可以看出,进行补零操作后并不影响DFT变换后的幅度响应,但是不同的补零操作后所得DFT变换序列长度不同。进行DFT变换的点数越多,相当于对DTFT连续频谱的采样频率越高,幅度响应曲线越光滑。 四、收获、体会及建议 通过本次实验,自己成功实现了DFT函数,对于DFT变换的过程有了更深的了解。通过对于不同点数的DFT结果的计算,直观的认识了DFT计算点数对结果的影响,以及与DTFT连续频谱的关系。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/79895.html