fpass=3000;fstop=3050;Fs=8000;%单位hz Rs=0.1; %阻带波纹 Rp=0.1; %通带波纹
omg_pass=2*pi*fpass/Fs %通带截止频率数字频率 omg_stop=2*pi*fstop/Fs %阻带截止频率数字频率,单位rad wpass=2*Fs*tan(omg_pass/2)
wstop=2*Fs*tan(omg_stop/2) %预扭曲模拟频率,单位rad/s n=ceil((log10(1/(Rs)^2-1))/(2*log10(wstop/wpass))) %所需滤波器阶数,ceil向上取整 omg=0:pi/100:pi;
H=1./sqrt((2*Fs*tan(omg./2)./wpass).^(2*n)+1); plot(omg,abs(H));grid on; title('所设计的滤波器形状'); axis([0 pi 0 1.1]);
xlabel('数字频率/(rad)');ylabel('幅度');
计算结果:
omg_pass =2.3562 omg_stop =2.3955 wpass =3.8627e+04 wstop =4.0880e+04 n =41
图形显示:
滤波特性较好,通带内没有波纹,边缘较陡峭 分析比较
1. 对比实验一和实验二:Fdatool直接设计滤波器方便快捷图形也准确;函数法设计滤波器能够表现出滤波器设计的原理,但是操作比较复杂,比较耗时且易出错。
2.对比频率采样法和窗函数法设计滤波器:频率采样法是从频域出发直接设计滤波器的,而窗函数法是从时域出发设计滤波器的,两种设计方法各有优缺点。窗函数法设计FIR数字滤波器是傅里叶变换的典型运用,而频率采样法设计的指导思想是频域采样定理及内插公式,其阻带衰减的改善是通过增加过采样点实现的,同时为保证过渡带宽的不变,滤波器的采样点数也要相应增加,计算复杂度也随之成倍增加,这就要求在用频率采样法设计FIR滤波器时,要综合考虑阻带衰减和滤波器长度的要求,从而达到设计的最优化。
3.对比脉冲响应不变法和双线性变换法设计滤波器:两者均需要以某种模拟滤波器为基础(此实验中选择了巴特沃斯),两者虽然都有较为明确的计算公式,但是高阶的巴特沃斯模拟滤波器的H(s)函数表达式较为复杂,所以一般借助matlab函数解决;双线性变换法的计算较
简单,流程较清晰,且最后得到的滤波器的效果较好。
4.对比所得到的滤波器的性能:窗函数法设计的滤波器选择性较好,但是通带和阻带内有波纹;频率响应采样法设计的滤波器通带内有波纹,阻带较平滑;脉冲响应不变法设计的滤波器带内没有波纹,衰减较快,阻带较为平滑;双线性变换法设计的滤波器有较好的选择性通带内没有波纹,衰减较快,阻带较为平滑(巴特沃斯特性)。
5.将所得滤波器与要求的参量对比:所有设计的滤波器大致都能够达到要求。 四、思考学习
通过此次实验学会了如何利用fdatool设计滤波器,方法简单操作也很便捷,但是在IIR滤波器系数的计算上花了一点时间理解,而且在导出滤波器的系数时要注意其取名,否则在运行时若取同名的变量其数据会被覆盖。利用脉冲响应不变法设计滤波器的过程中遇到了一些困难,将所要求的滤波器参数带入程序中不能显示滤波器波形,且B(传输函数分母系数)显示为NaN,经百度得nan是“非数”的意思,“0/0”、“∞/∞”、“0*∞”都会产生这种结果,后来为了出图,把参数做了一定的改变。要比较不同的方法所设计出的滤波器性能,应当将其横纵坐标格式统一。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库滤波器设计—fdatool工具及代码设计(4)在线全文阅读。
相关推荐: