《2022年FIR滤波器设计与实现 .pdf》由会员分享,可在线阅读,更多相关《2022年FIR滤波器设计与实现 .pdf(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数字信号处理基于哈明窗的 FIR 数字滤波器的设计DSP实验报告刘宇杰 0928401107 信息工程2011/12/23 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 13 页 - - - - - - - - - FIR 滤波器设计与实现一、实验目的(1) 通过实验巩固 FIR 滤波器的认识和理解。(2) 熟练掌握 FIR 低通滤波器的窗函数设计方法。(3) 理解 FIR 的具体应用。二、实验内容在通信、信息处理以及信号检测等应用领域广泛使用滤波器进行去噪和信号的增强
2、。FIR 滤波器由于可实现线性相位特性以及固有的稳定特征而等到广泛应用,其典型的设计方法是窗函数设计法。设计流程如下:(1)设定指标:截止频率fc ,过渡带宽度 f ,阻带衰减 A。(2)求理想低通滤波器( LPF )的时域响应 hd(n) 。(3)选择窗函数 w(n) ,确定窗长 N 。(4)将 hd(n)右移(N-1)/2 点并加窗获取线性相位FIR 滤波器的单位脉冲响应 h(n) 。(5)求 FIR 的频域响应 H (ejw) ,分析是否满足指标。如不满足,转(3)重新选择,否则继续。(6)求 FIR 的系统函数 H(z) 。(7)依据差分方程由软件实现FIR 滤波器或依据系统函数由硬件
3、实现。实验要求采用哈明窗设计一个FIR 低通滤波器并由软件实现。哈明窗函数如下:w (n)=0.54-0.46cos (12Nn) ,0nN-1;设采样频率为 fs=10kHz。实验中,窗长度 N和截止频率 fc 应该都能调节。具体实验内容如下:(1)设计 FIR 低通滤波器( FIR_LPF ) (书面进行)。(2)依据差分方程编程实现FIR 低通滤波器。(3)输入信号x(n)=3.0sin (0.16n )+cos(0.8n )到 fc=2000Hz,N=65的 FIR_LPF ,求输出信号 y(n) ,理论计算并画出0f fs 范围输入信号 x(n)和输出信号y(n)的幅度谱,标出峰值频
4、率,观察滤波器的实际输出结果,分析其正确性。(4)输入信号x(n)=1.5sin (0.2n )-cos (0.4n )+1.2sin (0.9n )到fc=1100Hz,N=65的 FIR_LPF ,求输出信号 y(n) ,理论计算并画出0f fs 范围输入信号 x(n)和输出信号 y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(5)输入信号x(n)=1.5sin (0.2n )-cos (0.4n )+1.2sin (0.9n )到fc=2100Hz,N=65的 FIR_LPF ,求输出信号 y(n) ,理论计算并画出0f fs 范围输入信号 x(n)和输出信号
5、y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(6)输入信号x(n)=1.5sin (0.2n )-cos (0.4n )+5.0sin (0.9n )到fc=1100Hz,N=65的 FIR_LPF ,求输出信号 y(n) ,理论计算并画出0f fs 范围输入信号 x(n)和输出信号 y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(7)输入信号x(n)=1.5sin (0.2n )-cos (0.4n )+1.2sin (0.9n )到名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -
6、- - 名师精心整理 - - - - - - - 第 2 页,共 13 页 - - - - - - - - - fc=1990Hz,N=65的 FIR_LPF ,求输出信号 y(n) ,理论计算并画出0f fs 范围输入信号 x(n)和输出信号 y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。三、实验分析如果采用哈明窗函数设计因果线性相位低通滤波器FIR,所设计的 FIR 低通滤波器单位脉冲响应 h(n)如式。h(n)=hd(n)w (n)=)12cos(46.054. 0)21()21(sinNnNnNnwc,0nN-1 如果输入函数为 x(n) ,则 y(n)=x(
7、n)*h(n) 。四、实验结果(1)MATLAB 程序如下:function FIR = fir(fc,N,A,a,B,b,C,c) % 窗函数设计n = 0 : N-1; %窗函数、 LPF 的横坐标fs = 10000; %采样频率 10KHZ wc = 2 * pi * fc/fs; hd = n; for k = 1 : (N-1)/2 hd(k) = sin(wc * (k-1-(N-1)/2) ./ ( pi *(k-1-(N-1)/2); %LPF纵坐标end for k =(N-1)/2 + 2 : N hd(k) = sin(wc * (k-1-(N-1)/2) ./ ( p
8、i *(k-1-(N-1)/2); %LPF纵坐标end hd(N-1)/2+1) = wc/pi; wn = 0.54 - 0.46*cos(2*pi*n/(N-1); %哈明窗窗函数hn = hd .* wn; %FIR滤波器时域表达式% 窗函数频谱w = 0 : 0.001*pi :0.999* pi; W = 0:999; for k = 1 : 1000; W(k) = 0; n = 1; while(n N+1) W(k) = hd(n) * exp(-j*k*pi/1000*n)+ W(k); n = n + 1; end end % 输入频谱名师资料总结 - - -精品资料欢迎
9、下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 13 页 - - - - - - - - - n = 0 : 999; x = A * sin ( a * pi * n ) + B * cos ( b * pi * n) + C* sin ( c * pi * n ); X = x; s = 0; for k = 1 : 1000 X(k) = 0; n = 1; while( n 1001) X(k) = X(k) + x(n) * exp(-j * 2* pi *(k-1)*(n-1)/1000); n
10、 = n + 1; end if k 500 if s abs(X(k)& (s = abs(X(k) s = abs(X(k); m = k - 1; end end end Y = X .* W; t = 0 : N-1; %过渡变量k = 0 : 0.002 * pi : 1.998 *pi; subplot(4,1,1); %图1 plot(t,hn); %窗函数时域图subplot(4,1,2); %图2 plot(k/2,20*log10(abs(W); %窗函数频谱图subplot(4,1,3); %图3 plot(k,abs(X),.-); %输入函数频谱图subplot(4,
11、1,4); plot(k,abs(Y),.-); f = m /1000 * fs s end (3) x (n)=3.0sin (0.16n )+cos(0.8n )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 13 页 - - - - - - - - - 当 f=800Hz 时,峰值为 1500(4) x (n)=1.5sin(0.2n )-cos(0.4n)+1.2sin(0.9n ) 当 f=1000Hz 时,峰值为 750(5) x (n)=1.5sin(0.
12、2n )-cos(0.4n)+1.2sin(0.9n ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 13 页 - - - - - - - - - 当 f=1000Hz 时,峰值为 750 (6) x (n)=1.5sin(0.2n )-cos(0.4n)+5.0sin(0.9n ) 当 f=4500Hz 时,峰值为 2500 (7) x (n)=1.5sin(0.2n )-cos(0.4n)+1.2sin(0.9n ) 名师资料总结 - - -精品资料欢迎下载 -
13、- - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 13 页 - - - - - - - - - 当 f=1000Hz 时,峰值为 750 五、思考题1、当哈明窗长度 N比65小(32)或大( 129)的话,实验结果如何变化?(1)当N=32 时A:x(n)=3.0sin (0.16n )+cos(0.8n )B:x(n)=1.5sin(0.2n )-cos(0.4n)+1.2sin(0.9n ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整
14、理 - - - - - - - 第 7 页,共 13 页 - - - - - - - - - C:x(n)=1.5sin(0.2n )-cos(0.4n)+1.2sin(0.9n ) D:x(n)=1.5sin(0.2n )-cos(0.4n)+5.0sin(0.9n ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 13 页 - - - - - - - - - E x(n)=1.5sin(0.2n )-cos(0.4n )+1.2sin(0.9n ) (2)当N=12
15、9 时A:x(n)=3.0sin (0.16n )+cos(0.8n )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 13 页 - - - - - - - - - B:x(n)=1.5sin(0.2n )-cos(0.4n)+1.2sin(0.9n ) C:x(n)=1.5sin(0.2n )-cos(0.4n)+1.2sin(0.9n ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
16、 - - - - - - 第 10 页,共 13 页 - - - - - - - - - D:x(n)=1.5sin(0.2n )-cos(0.4n)+5.0sin(0.9n ) E x(n)=1.5sin(0.2n )-cos(0.4n )+1.2sin(0.9n ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 13 页 - - - - - - - - - 2、当采用矩形窗的话,实验(3) (4)的结果是怎样的?矩形窗设计的 FIR低通滤波器的单位脉冲响应为:h(
17、n)=hd(n)w (n)=)21()21(sinNnNnwc,0nN-1 (4) x(n)=3.0sin (0.16n )+cos(0.8n )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 13 页 - - - - - - - - - (5) x(n)=1.5sin(0.2n )-cos(0.4n )+1.2sin(0.9n ) 六、总结通过本次实验,我了解了FIR 滤波器的设计与实现,熟悉MATLAB 这一软件的应用。通过实践来巩固书本上的知识。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 13 页 - - - - - - - - -