网站策划论坛,下载网站模板怎么使用教程,网站建设功能定位,中国城乡住房建设厅网站FIR数字滤波器设计#xff08;2学时#xff09; 要求#xff1a; 设计一个最小阶次的低通FIR数字滤波器#xff0c;性能指标为#xff1a;通带0Hz~1500Hz#xff0c;阻带截止频率2000Hz#xff0c;通带波动不大于1%#xff0c;阻带波动不大于1%#xff0c;采样频率为8… FIR数字滤波器设计2学时 要求 设计一个最小阶次的低通FIR数字滤波器性能指标为通带0Hz~1500Hz阻带截止频率2000Hz通带波动不大于1%阻带波动不大于1%采样频率为8000Hz用一个仿真信号来验证滤波器的正确性注意要满足幅度要求和线性相位特性。目的 利用学习到的数字信号处理知识解决实际问题了解线性相位滤波器的特殊结构
实验报告
一、实验内容
i.设计一个最小阶次的低通FIR数字滤波器性能指标为通带0Hz~1500Hz阻带截止频率2000Hz通带波动不大于1%阻带波动不大于1%采样频率为8000Hz
ii.用一个仿真信号来验证滤波器的正确性注意要满足幅度要求和线性相位特性。 二、实验目的
i.利用学习到的数字信号处理知识解决实际问题
ii.了解线性相位滤波器的特殊结构
三、涉及实验的相关情况介绍包含使用软件或实验设备等情况
Windows系统 Matlab 2022b 四、实验记录
1.原理基础
FIR有限脉冲响应滤波器是一种数字滤波器其脉冲响应在有限的时间内衰减为零。FIR滤波器通过一系列加权系数的线性组合对输入信号进行卷积以产生输出信号。对于低通FIR滤波器它允许低频信号通过并抑制高频信号。
线性相位FIR滤波器具有对称或反对称的系数这保证了滤波器在所有频率上具有相同的相位延迟这对于避免信号失真非常重要。
设计FIR滤波器时常用的方法有窗函数法、最小二乘法如firls函数和等波纹
法如remez函数。这些方法通过最小化通带和阻带内的误差来优化滤波器的性能。
2 实验流程
①确定滤波器参数
包括采样频率、通带和阻带截止频率、通带和阻带波动等。
②设计FIR滤波器
使用MATLAB的firls或remez函数设计满足性能要求的FIR滤波器。
③生成仿真信号
创建一个包含通带和阻带频率分量的仿真信号。
④应用滤波器
使用MATLAB的filter函数将设计的FIR滤波器应用于仿真信号。
⑤分析滤波结果
绘制原始信号和滤波后信号的频谱图检查通带和阻带的波动是否满足要求并验证滤波器的线性相位特性。
3 源程序代码
%FIR 低通滤波器1.设计低通滤波器并绘制图像 2.生成复合信号并绘制时域和频域 3.应用滤波器并绘制时域频域
%编辑人贾雯爽
%目的掌握模拟低通滤波器设计流程及影响参数
%最后更新时间2024/06/05 %%1.设计低通滤波器并绘制图像
%%参数设置fs 8000; %设置采样频率 8k
Fp 1500; %通带截止频率
Fs 2000; %阻带截止频率
Rs 0.01; %阻带衰减
Rp 0.01; %通带波纹figure
[n, fo, mo, w] remezord([1500 2000], [1 0], [0.01 0.01], 8000);
b remez(n, fo, mo, w);%[h w] freqz(b, 1, 128);%plot(w/pi, abs(h));freqz(b, 1, 128);N1024; %采样点数
n0:N-1;
t0:1/fs:1-1/fs; %时间序列
fn*fs/N; %频率序列%%2.生成复合信号并绘制时域和频域
Signal_Originalsin(2*pi*25*t); %信号25Hz正弦波
Signal_Noise1sin(2*pi*2000*t); %噪声50Hz正弦波
Signal_Noise2sin(2*pi*3000*t); %噪声100Hz正弦波
Signal_Noise3sin(2*pi*4500*t); %噪声150Hz正弦波Mix_SignalSignal_OriginalSignal_Noise1Signal_Noise2Signal_Noise3; %将信号Signal_Original和Signal_Original合成一个信号进行采样 figure
subplot(211);
plot(t, Mix_Signal); %绘制信号Mix_Signal的波形
xlabel(时间);
ylabel(幅值);
title(原始信号);
grid on;f1 Fs/N*(0:(N/2));
subplot(212);
yfft(Mix_Signal, N); %对信号 Mix_Signal做FFT
P2 abs(y/N);%取模值 根FFT公式
P1 P2(1:N/21);%自变量只取前半部分
P1(2:end-1) 2*P1(2:end-1);%单边频谱值为双边频谱值的两倍除原点外原点值不变
plot(f1,P1);
xlabel(频率/Hz);
ylabel(振幅);
title(原始信号FFT);
grid on;%%3.应用滤波器并绘制时域频域% 绘制原始信号时域图
figure;
subplot(3,1,1);
plot(t, Mix_Signal);
title(原始信号);
xlabel(时间 (s));
ylabel(幅度);
grid on; %绘制滤波后时域图
Y filter(b, 1, Mix_Signal);
subplot(3,1,2);
plot(t, Y);
title(滤波后的信号);
xlabel(时间 (s));
ylabel(幅度);
grid on;%绘制滤波后频域分布图
f1 Fs/N*(0:(N/2));
subplot(313);
yfft(Y, N);
P2_2 abs(y/N);%取模值 根FFT公式
P1_2 P2_2(1:N/21);%自变量只取前半部分
P1_2(2:end-1) 2*P1_2(2:end-1);%单边频谱值为双边频谱值的两倍除原点外原点值不变
plot(f1,P1_2,LineWidth,1)
title(滤波后的频域分布图)
xlabel(f (Hz))
ylabel(|P1_1(f)|)
4 实验结果 5实验结果分析
在分析实验结果时滤波器的频率响应满足设计要求特别是通带波动和阻带波动是否在给定的阈值内。同时我们也验证了滤波后信号的波形或频谱如预期那样通带内的信号得以保留而阻带内的信号被抑制。此外我们还验证了滤波器的线性相位特性确保在所有频率上相位响应保持一致。 五、实验总结
通过本次实验我们成功设计了一个满足性能指标的低通FIR数字滤波器并通过仿真信号验证了其性能。实验结果表明我们设计的滤波器能够有效地保留通带内的信号并抑制阻带内的信号同时保持线性相位特性。这对于处理实际信号中的噪声和干扰具有重要意义。 然而在实验过程中我们也发现了一些可以改进的地方。例如滤波器的阶数对滤波性能有很大影响我们需要通过尝试不同的阶数来找到最优解。此外我们还可以尝试使用不同的设计方法或优化算法来进一步提高滤波器的性能。这些改进措施将为我们未来的实验和研究提供有价值的参考。 原创文章内容学术不精恐有错漏之处恳请各位批评指正。如有Matlab代码源文件或其他沟通需要,可通过邮箱2642610289qq.com联系我特情注意学业繁忙难以及时回复敬请理解。