1、实验心得 参考文献 源代码 【内容概述】 FIR数字滤波器设计最简单的方法是窗函数法,通常也称之为傅里叶级数法。它是在属于进行的,因而必须由理想滤波器的频率响应推导出其单位冲击响应,再设计一个FIR数字滤波器的单位冲击响应去逼近。 窗函数设计法的基本原理是用一定宽度窗函数截取无限脉冲响应序列获得有限长的脉冲响应序列,先通过傅里叶逆变换获得理想滤波器的单位脉冲响应hd(n)。再由性能指标确定窗函数W(n)和窗口长度N。最后求得实际滤波器的单位脉冲响应h(n)。 窗函数在设计FIR数字滤波器中有很重要的作用,正确的选择窗函数可以提高所涉及的数字滤波器的性能,或者在满足设计要求的情况下,减小FIR数
2、字滤波器的阶数。【题目要求细则】基于窗函数设计法线性相位型FIR数字低通滤波器设计目的: 熟练掌握MATLAB工具软件在工程设计中的使用; 熟练掌握窗函数法设计线性相位型FIR滤波器的方法。要求: 根据给定ALPF幅频特性指标,生成与之相对应的模拟滤波器h(t); 根据h(t)取得与之相对应的数字滤波器冲击响应函数h(n); 选择适当的窗函数,构建线性相位型FIR的冲击响应函数hd(n); 设计与之相对应的DLPF,对比分析DLPF幅频特性是否符合要求; 产生一个有干扰频率的时域序列(借助FFT分析说明其有干扰),使之通过所设计的DLPF,对滤波输出结果作出分析,说明输出结果。步骤: 根据给定
3、设计指标(通带截止频率fb1 000 Hz,通带最大衰减p=1dB,阻带截止频率fc1 200 Hz,阻带最小衰减s=?dB,令T=2)生成与之相对应的模拟滤波器h(t); 设计与之相对应的DLPF,给出窗函数及所设计滤波器的幅度特性,并对比理想冲激响应和实际冲击响应,对比分析DLPF幅频特性是否符合要求; 试说明不同窗函数对所设计数字滤波器性能的影响; 产生一个有干扰频率的时域序列(借助FFT分析说明其有干扰),使之通过所设计的DLPF,【设计原理】 FIR数字滤波器设计最简单的方法是窗函数法,通常也称之为傅里叶级数法。 假设理想滤波器的频率响应的表示为:由于滤波器的频率响应与单位冲击响应序
4、列是傅里叶变换对,据此:求得理想滤波器的单位冲击响应后,可得到该离散滤波器的系统传递函数:注意,该为无限长序列,因此是物理不可实现的。为了使系统变为物理可实现的,且使实际的FIR滤波器频率响应尽可能逼急理想滤波器的频率响应,采用窗函数将无线脉冲响应截取一段好来近似表示,可得:,从而有式中N表示窗口长度,这样就是物理可实现的系统。【设计过程】先产生一个理想低通,分别用三种不同的窗函数与之时域内点乘后,得到可物理实现的低通滤波器h(n),观察它的幅度相频特性。产生一个正弦波,加上噪声后得到一个有毛刺的正弦波,通过三种加不同窗的滤波器,得出三个虑完波的时域序列和频谱。比较三个虑后的时域频域波形,比较
5、出三种不同滤波器的优劣。【实验结果及分析】Blackman窗、哈明窗、汉宁窗: 加blackman窗后的系统脉冲响应: 加哈明窗后的系统脉冲响应: 加汉宁窗后的系统脉冲响应:加blackman窗后的系统损耗函数曲线:加哈明窗后的系统损耗函数曲线: 加汉宁窗后的系统损耗函数曲线:产生的余弦信号和加噪后的幅度、频谱函数: 通过加blackman窗的FIR滤波器后的幅度、频谱函数:通过加哈明窗的FIR滤波器后的幅度、频谱函数: 通过加汉宁窗的FIR滤波器后的幅度、频谱函数:滤波器性能分析:(rp:通带最大衰减;as:阻带最小衰减)Blackman窗:rp1 =0.0027 as1 =73.4793海
6、明窗: rp2 = 0.0282 as2 = 51.1241汉宁窗: rp3 =0.0888 as3 =43.9969 通过分别对系统加海明窗,汉宁窗,blackman窗,得到以上结果。从加窗后系统的损耗函数曲线可以看出,blackman窗引起的过渡带加宽现象和阻带波动较小,即截断效应较小,而且通过比较可以看出,blackman窗还具有最小的通带最大衰减和阻带最小衰减,综合比较发现blackman窗的各项性能优于哈明窗和汉宁窗,所以,blackman窗设计出的FIR滤波器滤波性能最好。【实验心得】在这次数字信号处理课程设计中,我通过选择基于窗函数设计法线性相位型FIR 数字低通滤波器设计这个课
7、题,熟练掌握了窗函数法设计线性相位型FIR滤波器的方法,尤其对blackman窗、哈明窗、汉宁窗这三种窗函数法设计的滤波器有了深入的认识,对FIR滤波器的设计过程与方法有了更牢固的掌握。另外,通过上机使用MATLAB做此次课设,也使我学到了很多MATLAB方面的知识,特别是将MATLAB于数字信号处理结合起来的这部分内容有了更多的掌握,也对MATLAB的使用更为熟悉。参考文献 1、高西全,数字信号处理(第三版)西安电子科技大学出版社2、程佩青,数字信号处理教程(第三版),清华大学出版社3、MATLAB7.0在数字信号处理中的应用罗军辉机械工业出版社4、飞思科技产品研发中心编著.MATLAB7辅
8、助信号处理技术与应用M.北京:电子 工业出版社,2005.5、数字信号处理原理及其MATLAB实现从玉良电子工业出版社 【实验部分代码】function hd=ideal_lp(wc,M)alpha=(M-1)/2;n=0:(M-1);m=n-alpha+eps;hd=sin(wc*m)./(pi*m);%求线性低通滤波器的单位脉冲响应%blackman窗clc,clearfb=1000;fc=1200;fs=4000;%对信号的采样频率为4000ws=2*pi*fc/fs%t通带截至频率wp=2*pi*fb/fs%阻带截至频率tr_width=ws-wp;%求过渡带M=ceil(11*pi/
9、tr_width)+1 %利用blackman窗的过渡带=(11pi/M),求窗宽Mn=0:1:M-1;wc=(ws+wp)/2; %求通带截止频率wcm=n-alpha;h=sin(wc*m)./(pi*m);hd=ideal_lp(wc,M); %求系统单位脉冲响应hd(n)w_black=(blackman(M);%根据阶数M求blackman窗h=hd.*w_black; %对FIR滤波器低通冲激响应加窗,h为低通滤波器的冲击相应H,w=freqz(h,1,1000,whole);db=20*log10(abs(H)/max(abs(H); %求FIR滤波器频响的dB值delta_w=
10、2*pi/1000; %将2pi等分1000份rp1=-min(db(1:(wp/delta_w+1) %求通带最大衰减as1=-max(db(ws/delta_w+1:501) %求阻带最小衰减%海明窗ws=2*pi*fc/fs;%t通带截至频率M=ceil(6.6*pi/tr_width)+1 %利用Hamming窗的过渡带=(6.6pi/M),求窗宽M %求单位脉冲响应hd(n)w_ham=(hamming(M)h=hd.*w_ham; %求FIR滤波器低通冲激响应h(n)rp2=-min(db(1:as2=-max(db(ws/delta_w+1:%汉宁窗fs=5000;M=ceil(
11、6.2*pi/tr_width)+1 %利用Hanning窗的过渡带=(6.2pi/M),求窗宽Mw_han=(hanning(M)h=hd.*w_han;db=20*log10(abs(H)+eps)/max(abs(H);rp3=-min(db(1:as3=-max(db(ws/delta_w+1:%产生干扰序列figure(33);clf;%产生随机白噪声t=0:50;m=cos(0.05*pi*t);M=fft(m);y=wgn(1,51,1);% 产生一个m行n列的高斯白噪声的矩阵,p以dBW为单位指定输出噪声的强度。z=y+m;Z=fft(z);k=filter2(h,z);K1=fft(k);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1