巴特沃斯二阶数字带通滤波器设计
理论来源:本例设计理论来自于《数字信号处理教程第五版-程佩青著》
设计注意:带通滤波器的阶次必须为偶次
设计验证:
滤波对象input = (15sin(2×pi×5×t)+8)+(2×sin(2×pi×70×t))+random(-4,4)
该函数的特征是在幅频曲线在5HZ和70HZ处有两个极值点
采样频率:1000HZ
滤波要求:将表达式第一部分的波形过滤出来,即将以中心频率为5HZ的波形输出,通带近似认为(1HZ,20HZ)
滤波器模型:采用matlab_function中编写代码的方式,利用直接型双线性变换法设计此滤波器
滤波结果:滤波前后的曲线如下,为了验证自创滤波器的优劣,将matlab自带的FDT工具(下图蓝线Ftool_Butt_BPF_2order)与自创巴特沃斯二阶带通数字滤波器(下图红线LOT_Butt_BPF_2order)进行比较,结果表明,在有限的公差带内,两次滤波结果近似相等(波形的差异应该是计算方法的差异,自创滤波器采用直接型+双线性变换法)
结论:近似认为巴特沃斯二阶带通数字滤波器设计合格,从滤波后平滑度来看,甚至自创的滤波器的滤波效果更好
例2
设计验证:
滤波对象 input = (15sin(2×pi×20×t)+8)+(2×sin(2×pi×70×t))+random(-4,4)
该函数的特征是在幅频曲线在20HZ和70HZ处有两个极值点
采样频率:1000HZ
滤波要求:将表达式第一部分的波形过滤出来,即将以中心频率为20HZ的波形输出,通带近似认为(10HZ,30HZ)
滤波结果:如图,在有限的公差带内,两次滤波结果近似相等
结论:近似认为巴特沃斯二阶带通数字滤波器设计合格
附simulink模型框架如下: