数字信号处理实验三 FIR数字滤波器设计与软件实现

简介: 数字信号处理实验三 FIR数字滤波器设计与软件实现

一、实验目的

1.掌握用窗函数法设计FIR 数字滤波器的原理和方法。

2.掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。

3.掌握FIR滤波器的快速卷积实现原理。

4.学会调用MATLAB函数设计与实现FIR滤波器。


二、实验内容及步骤

1.认真复习用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理。


2.调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱,如图(1)所示。


ad20e8daa20e42e6be732bb4d33be055.png


3.请设计低通滤波器,从高频噪声中提取xt中的单频抑制载波调幅信号,要求信号幅频失真小于0.l dB,将噪声频谱衰减60 dB。观察xt的频谱,确定滤波器指标参数。


4.根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB函数firl设计一个FIR低通滤波器。并编写程序,调用MATLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。


5.重复实验内容3,滤波器指标不变,但改用等波纹最佳逼近法设计FIR滤波器,调用MATIAB函数 remezord和remez设计FIR数字滤波器。比较两种设计方法设计的滤波器阶数。

提示:

(1)MATIAB函数firl和 fftfilt的功能及其调用格式请查阅本书;

(2)采样频率fc2834943f2c4baab9bc1dafeefb1169.png,采样周期8cd4c2fe1c0f4daa980ba488c0ec3eac.png

(3)根据实验要求,可选择滤波器指标参数:通带截止频率b53342fed3ec46d2989da8c02416d50b.png,阻带截止频率beb75269f16f424ea883323f8f998eea.png,换算成数字频率,通带截止频率71ddcf977c544772a0d670742756145b.png,通带最大衰减为0.1dB,阻带截至频率90d87a08f5d243768bec99f8cde0df1e.png,阻带最小衰减为60dB。


三、程序代码及运行结果

1.程序代码(详见报告)

2.实验结果:如图(2)与图(3)所示


bff3892feaff439d82435bc388d37778.png4dda75bb25ba41c499657fd81991e8d5.png



3.分析与讨论(详见报告)


四、思考题(答案详见报告)

1.如果给定通带截止频率和阻带截止频率以及阻带最小衰减,如何用窗函数法设计线性相位低通滤波器?请写出设计步骤。

2.如果要求用窗函数法设计带通滤波器,且给定通带上、下截止频率为和,阻带上、下截止频率为和,试求理想带通滤波器的截止频率和。

3.解释为什么对同样的技术指标,用等波纹最佳逼近法设计的滤波器阶数低。


五、上机体会

通过这次上机实验,我掌握了用窗函数法和等波纹最佳逼近法设计FIR 数字滤波器的原理和方法,掌握了FIR滤波器的快速卷积实现原理,学会了调用MATLAB函数设计与实现FIR滤波器,学习掌握了remezord、remez、firl和 fftfilt函数的功能及其调用格式。


相关文章
|
2月前
|
机器学习/深度学习 算法 5G
基于MIMO系统的SDR-AltMin混合预编码算法matlab性能仿真
基于MIMO系统的SDR-AltMin混合预编码算法通过结合半定松弛和交替最小化技术,优化大规模MIMO系统的预编码矩阵,提高信号质量。Matlab 2022a仿真结果显示,该算法能有效提升系统性能并降低计算复杂度。核心程序包括预编码和接收矩阵的设计,以及不同信噪比下的性能评估。
67 3
|
8月前
|
数据采集
LabVIEW电信号傅里叶分解合成实验
LabVIEW电信号傅里叶分解合成实验
63 2
|
8月前
基于DSP的数字滤波器设计
基于DSP的数字滤波器设计
169 4
|
6月前
|
存储 算法 数据处理
LabVIEW FPGA开发NI sbRIO-9607高精度数字滤波器
LabVIEW FPGA开发NI sbRIO-9607高精度数字滤波器
66 5
|
7月前
|
存储 算法 计算机视觉
m基于FPGA的FIR低通滤波器实现和FPGA频谱分析,包含testbench和滤波器系数MATLAB计算程序
在Vivado 2019.2平台上开发的系统,展示了数字低通滤波器和频谱分析的FPGA实现。仿真结果显示滤波效果良好,与MATLAB仿真结果一致。设计基于FPGA的FIR滤波器,利用并行处理和流水线技术提高效率。频谱分析通过离散傅里叶变换实现。提供了Verilog核心程序以示例模块工作原理。
66 4
|
7月前
|
存储 传感器 算法
技术心得记录:手把手教系列之FIR滤波器设计
技术心得记录:手把手教系列之FIR滤波器设计
50 0
|
8月前
|
数据可视化
matlab使用经验模式分解emd 对信号进行去噪
matlab使用经验模式分解emd 对信号进行去噪
|
机器学习/深度学习 传感器 算法
【滤波器设计】基于matlab实现数字滤波器和均衡器设计
【滤波器设计】基于matlab实现数字滤波器和均衡器设计
|
算法
【Vuvuzela 声音去噪算法】基于流行的频谱减法技术的声音去噪算法研究(Matlab代码实现)
【Vuvuzela 声音去噪算法】基于流行的频谱减法技术的声音去噪算法研究(Matlab代码实现)
119 0
数字信号处理实验二 IIR数字滤波器设计及软件实现
数字信号处理实验二 IIR数字滤波器设计及软件实现
1006 1
数字信号处理实验二 IIR数字滤波器设计及软件实现