基于matlab的IIR数字滤波器设计
IIR数字滤波器介绍
所谓数字滤波器,是指输入,输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的硬件。实质上就是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统的特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用的频率分量通过,抑制无用的信号分量输出,因此数字滤波与模拟滤波的概念相同,根据其频率特性同样可以分为低通,高通,带通,带阻,只是信号的形式和实现滤波方式有所不同。如果要处理的信号是模拟信号,就可以通过A/D或者D/A转换,在信号形式上进行匹配转换,同样可以使用数字滤波器对模拟信号进行滤波。
数字滤波器滤波的数学表达式:y(n)=x(n)*h(n); 如果滤波器的输入输出信号都是离散信号,那么该滤波器的脉冲响应也一定是离散信号,这样的滤波器就成为了数字滤波器。
上面的系统为时域离散系统时,其频域特性为:
其中分别是数字滤波器的输出序列和输入序列的频域响应,是数字滤波器的频域响应。可以看见按照输入信号的频谱特点和处理信号的目的适当选择滤波器的频域响应,使得滤波后的输出信号满足设计性能要求,就是滤波器的滤波原理。
IIR数字滤波器的系统函数可以表示为:H(Z)=,式中H(Z)称为N阶IIR滤波器函数。
3..数字滤波器的技术要求.
我们通常设计的数字滤波器一般属于选频滤波器,。
我们的目的是要设计一个因果可实现的滤波器,另外买也要考虑到成本和复杂性问题,因此实用中通带和阻带都允许一定的误差容限,即通带不一定是完全水平的,阻带也不可能完全衰减到零。而且,通带和阻带之间还要设置一定带宽的过渡带。如下图表示低通滤波器的技术要求:
图中, 分别表示通带截止频率和阻带截止频率,通带频率范围为0≤w≤,通带中要求(1-δ1)≤|H≤1,阻带截止频率范围≤w≤Π,再阻带中要求≤δ2,从到称为过渡带,在这个频带内,幅度响应从通带平滑的下落到阻带。
IIR数字滤波器的设计方法
(1). 以模拟滤波器函数为基础的变换法;即先设计一满足指定条件的模拟滤波器H(s),再将该模拟滤波器转化为数字滤波器H(z)。
(2). 直接设计法:在z平面内,根据零、极点对系统特性的影响,调整零极点位置得H(z)。
(3). 最优化设计法(计算机辅助设计),在某种最小化误差准则下,建立差分方程系数 a k、b i 对理想特性的逼近方程,使用迭代方法解方程组得到最佳逼近系统。由于此方法计算量大,需要借助于计算机进行设计。
下面分别介绍函数设计法和信号处理图形界面来设计IIR数字滤波器,得出最优化的设计方法。
IIR数字滤波器设计的一般方法是先设计低通模拟滤波器,进行频率变换,将其转换为相应的(高通,带通等)模拟滤波器,在转换为高通,带通或带阻数字滤波器,由模拟滤波器设计数字滤波器的方法。这是因为模拟滤波器设计方法已经很成熟,它不仅有完整的设计公式,还有完善的图表供查阅,另外,还有一些典型的滤波器类型可供我们使用。对设计的全过程的各个步骤,MATLAB都提供了了相应的工具箱函数,使IIR数字滤波器设计变得非常简单。
. 基于matlab函数的IIR滤波器设计
:
程序设计法是基于MATLAB中相应的工具箱函数来实现的,。
这个图也清晰的表示了5类20个信号处理工具箱函数的作用,
在MATLAB中,模拟滤波器的系统函数
H(S)=
数字滤波器的系统函数
H(Z)=
在实际工程中,需要的设计结果是系数向量B和A,用B和A来综合滤波器的硬件实现结构或软件运算结构,为了直观的看出设计结果,本文的实例均以滤波器幅频响应曲线作为设计结果输出。如果需要滤波器系数,在运行程序后,只要在MATLAB命令窗口键入系数向量名,则相应的系数就显示出来了。
(a)设计高通和带通Butterworth数字滤波器
我们给出四阶归一化 Butterworth模拟滤波器的系统函数
用双线性变换法从Ha(s)设计四阶带通butterworth数字滤波器,并图示||,
设计采样周期T=1s,指标如下
现在我们分步进行:■建模
由于本例主要涉及三个问题:
由数字滤波器指标求相应的模拟滤波器指标;
模拟滤波器频率变换(因为已给定阶数和模拟滤波器的归一化低通原型);
由相应的模拟滤波器到数字滤波器(双线性变换法)。
由于调用bi
基于matlab的IIR数字滤波器设计 来自淘豆网m.daumloan.com转载请标明出处.