数字信号处理实验报告-FIR滤波器的设计与实现

上传人:QQ15****706 文档编号:107039222 上传时间:2019-10-17 格式:DOC 页数:10 大小:250.50KB
返回 下载 相关 举报
数字信号处理实验报告-FIR滤波器的设计与实现_第1页
第1页 / 共10页
数字信号处理实验报告-FIR滤波器的设计与实现_第2页
第2页 / 共10页
数字信号处理实验报告-FIR滤波器的设计与实现_第3页
第3页 / 共10页
数字信号处理实验报告-FIR滤波器的设计与实现_第4页
第4页 / 共10页
数字信号处理实验报告-FIR滤波器的设计与实现_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《数字信号处理实验报告-FIR滤波器的设计与实现》由会员分享,可在线阅读,更多相关《数字信号处理实验报告-FIR滤波器的设计与实现(10页珍藏版)》请在金锄头文库上搜索。

1、FIR滤波器的设计与实现10信息工程 一、实验目的(1) 通过实验巩固FIR滤波器的认识和理解。(2) 熟练掌握FIR低通滤波器的窗函数设计方法。(3) 理解FIR的具体应用。二、实验内容在通信、信息处理以及信号检测等应用领域广泛使用滤波器进行去噪和信号的增强。FIR滤波器由于可实现线性相位特性以及固有的稳定特征而等到广泛应用,其典型的设计方法是窗函数设计法。设计流程如下:(1)设定指标:截止频率fc,过渡带宽度f,阻带衰减A。(2)求理想低通滤波器(LPF)的时域响应hd(n)。(3)选择窗函数w(n),确定窗长N。(4)将hd(n)右移(N-1)/2点并加窗获取线性相位FIR滤波器的单位脉

2、冲响应h(n)。(5)求FIR的频域响应H(e),分析是否满足指标。如不满足,转(3)重新选择,否则继续。(6)求FIR的系统函数H(z)。(7)依据差分方程由软件实现FIR滤波器或依据系统函数由硬件实现。实验要求采用哈明窗设计一个FIR低通滤波器并由软件实现。哈明窗函数如下:w(n)=0.54-0.46cos(), 0nN-1 (式1)设采样频率为fs=10kHz。实验中,窗长度N和截止频率fc应该都能调节。具体实验内容如下:(1)设计FIR低通滤波器(FIR_LPF)(书面进行)。(2)依据差分方程编程实现FIR低通滤波器。(3)输入信号x(n)=3.0sin(0.16)+cos(0.8)

3、到fc=2000Hz,N=65的FIR_LPF,求输出信号y(n),理论计算并画出0ffs范围输入信号x(n)和输出信号y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(4)输入信号x(n)=1.5sin(0.2)-cos(0.4)+1.2sin(0.9)到fc=1100Hz,N=65的FIR_LPF,求输出信号y(n),理论计算并画出0ffs范围输入信号x(n)和输出信号y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(5)输入信号x(n)=1.5sin(0.2)-cos(0.4)+1.2sin(0.9)到fc=2100Hz,N=65的FIR_

4、LPF,求输出信号y(n),理论计算并画出0ffs范围输入信号x(n)和输出信号y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(6)输入信号x(n)=1.5sin(0.2)-cos(0.4)+5.0sin(0.9)到fc=1100Hz,N=65的FIR_LPF,求输出信号y(n),理论计算并画出0ffs范围输入信号x(n)和输出信号y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。(7)输入信号x(n)=1.5sin(0.2)-cos(0.4)+1.2sin(0.9)到fc=1990Hz,N=65的FIR_LPF,求输出信号y(n),理论计算并画

5、出0ffs范围输入信号x(n)和输出信号y(n)的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。三、实验分析如果采用哈明窗函数设计因果线性相位低通滤波器FIR,所设计的FIR低通滤波器单位脉冲响应h(n)如下式:h(n)=hd(n)w(n)=, 0nN-1 (式2)如果输入函数为x(n),则:y(n)=x(n)*h(n) (式3)分析(式2)我们可以看到,当N的值是为奇数时,随着(N-1)/2为整数,则当n=(N-1)/2时,分母等于0。这个显然是不正确的,所以当N的值为奇数时,为了避免分母等于0,频谱分析出现错误,取N+1。因为2f=fs,则有:f=fs/2 (式4)根据(式

6、4),我们可以求得输入信号x(n)的频率分量,并且进行理论分析:1. 输入信号x(n)=3.0sin(0.16n)+cos(0.8n)到fc=2000Hz,N=65的FIR_LPF时,该信号的幅度值峰值频率由正弦分量决定,输入信号x(n)的频率分量有:f1=800Hz,f2=4000Hz,经过低通滤波器后,输出信号y(n)峰值频率应该为fm=800Hz;2. 输入信号x(n)=1.5sin(0.2n)-cos(0.4n)+ 1.2sin(0.9n)到fc=1100Hz,N=65的FIR_LPF时,该信号的幅度值峰值频率由正弦分量f1=fs/2=1000Hz决定,输入信号x(n) 的频率分量有:

7、f1=1000Hz,f2=2000Hz,f3=4500Hz,经过低通滤波器后,输出信号y(n)峰值频率应该为fm=1000Hz;3. 输入信号x(n)=1.5sin(0.2n)-cos(0.4n)+ 1.2sin(0.9n)到fc=2100Hz,N=65的FIR_LPF时,该信号的幅度值峰值频率由正弦分量f1=fs/2=1000Hz决定,输入信号x(n) 的频率分量有:f1=1000Hz,f2=2000Hz,f3=4500Hz,经过低通滤波器后,输出信号y(n)峰值频率应该为fm=1000Hz;4. 输入信号x(n)=1.5sin(0.2n)-cos(0.4n)+ 5.0sin(0.9n)到f

8、c=1100Hz,N=65的FIR_LPF时,该信号的幅度值峰值频率由正弦分量f3=fs/2=4500Hz决定,输入信号x(n) 的频率分量有:f1=1000Hz,f2=2000Hz,f3=4500Hz,但是经过低通滤波器后,输出信号y(n)的峰值频率还是应该在1000Hz;5. 输入信号x(n)=1.5sin(0.2n)-cos(0.4n)+ 1.2sin(0.9n)到fc=1990Hz,N=65的FIR_LPF时,该信号的幅度值峰值频率由正弦分量f1=fs/2=1000Hz决定,输入信号x(n) 的频率分量有:f1=1000Hz,f2=2000Hz,f3=4500Hz,经过过低通滤波器后,

9、输出信号y(n)峰值频率应该在1000Hz;四、实验过程及结果(1)MATLAB的设计的程序:function fir(A,a,B,b,C,c,fc,N)wc=fc*2*pi/10000;for i=1:Nx(i)=A*sin(a*3.14*i)+B*cos(b*3.14*i)+C*sin(c*3.14*i);%输入函数h(i)=sin(wc*(i-(N-1)/2)/(3.14*(i-(N-1)/2)*(0.54-0.46*cos(2*3.14*i/(N-1); %窗函数单位脉冲响应 y =conv(x,h); %x(n)与h(n)卷积endsubplot(4,1,1);plot(abs(ff

10、t(x);xlabel(n);ylabel(|X(ejw)|);subplot(4,1,2);plot(abs(fft(h);xlabel(n);ylabel(|H(ejw)|);subplot(4,1,3);plot(abs(fft(y);xlabel(n);ylabel(|Y(ejw)|);disp(max(abs(fft(x);disp(max(abs(fft(y);Y=(abs(fft(y);X=(abs(fft(x);maxim=0;maxi=0;maxk=0;maxl=0;for l=1:Nif X(l)maxi maxi=X(l); maxl=l; endfor k=1:N if

11、 Y(k)maxim maxim=Y(k); maxk=k;end endenddisp(maxl-1)/N*10000) disp(maxl)disp(maxk-1)/N/2*10000)disp(maxk)subplot(4,1,4);plot(y);xlabel(n);ylabel(y(n); (2)不同x(n)通过设计的该滤波器(对应实验(3)-实验(7) 实验(3):x(n)=3.0sin(0.16n )+cos(0.8n ), fc=2000Hz, N=65 (图1-A) 该实验结果为f=757.6Hz,滤波后峰值为90.9; 该程序中采用快速傅里叶变换,而N=65,所以分辨率较低

12、,实验结果和理论值存在误差,与理论值800Hz接近,在误差允许范围内,所以实验结果正确。实验(4):x(n)=1.5sin(0.2n )-cos(0.4n )+1.2sin(0.9 n),fc=1100Hz,N=65(图1-B) 该实验结果为f=984.85Hz,滤波后峰值为42.45; 与理论值1000Hz相接近,在误差允许范围内,实验结果正确。实验(5):x(n)=1.5sin(0.2n )-cos(0.4 n)+1.2sin(0.9 n),fc=2100Hz,N=65(图1-C) 该实验结果为f=984.85Hz,滤波后峰值为50.94; 与理论值1000Hz相接近,在误差允许范围内,实

13、验结果正确。 实验(6): x(n)=1.5sin(0.2 n)-cos(0.4 n)+5.0sin(0.9n ),fc=1100Hz,N=65(图1-D) 该实验结果为f=984.85Hz,滤波后峰值为43.59; 与理论值1000Hz相接近,在误差允许范围内,实验结果正确。实验(7):x(n)=1.5sin(0.2)-cos(0.4)+1.2sin(0.9),fc=1990Hz,N=65(图1-E) 该实验结果为f=984.85Hz,滤波后峰值为50.94; 与理论值1000Hz相接近,在误差允许范围内,实验结果正确。五、思考题1、当哈明窗长度N比65小(32)或大(129)的话,实验结果

14、如何变化?以x(n)=3.0sin(0.16)+cos(0.8),fc=2000Hz为例:A.当N=32时的输出如下:(图2-A) 输出结果如下:f=781.25,过滤后峰值为47.13 B当N=129时的输出如下:(图2-B) 输出结果如下:f=807.69Hz,过滤后峰值为189C当N=512时的输出如下:(图2-C)输出结果如下:f=800.78Hz,过滤后峰值为755.8结果分析:对比图1-A,图2-A,图2-B,图2-C,我们可以得知,随着N的增大,频率分辨率也就越高,因此得出的频谱图也就越准确,过滤后峰值的频率也就更加准确,更加接近于理论值;通过上述几幅图的对比,我们可以得知,随着N的增大,滤波器的过渡带变窄,峰值均变大且其对应峰的宽度变窄。2、当采用矩形窗的话,实验(3)(4)的结果是怎样的?答:矩形窗设计的FIR低通滤波器的单位脉冲响应为:h(n)=hd(n)w(n)= ,0nN-1(式5)实现矩形窗,我们只需将MATLAB程序中哈明窗的单位脉冲响应换成(式5)对应的函数即可

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号