滤波器设计matlab相关函数
Download
Report
Transcript 滤波器设计matlab相关函数
滤波器设计matlab相
关函数
与IIRDF相关的matlab函数(一)
以设计一个高通的巴特沃斯滤波器H(z)为例,
其步骤包括从 到 的频率转换,模拟低通
原型G(s)的设计,G(s)到模拟高通H(s)的转换,
H(s)到数字高通滤波器H(z)的转换。
Buttord:用来确定数字低通或模拟低通滤波
器的阶数,其调用格式为:
[N,Wn]=buttord(Wp,Ws,Rp,Rs)
[N,Wn]=buttord(Wp,Ws,Rp,Rs,’s’)
与IIRDF相关的matlab函数(二)
Buttap:用来设计模拟低通原型滤波器G(s),
其调用格式是[z,p,k]=buttap(N),N是要求
设计的低通原型滤波器的阶次,z,p,k分别
是设计出的G(s)的极点、零点及增益。
与IIRDF相关的matlab函数(三)
lp2lp,lp2hp,lp2bp,lp2bp,lp2bs:具有实现频率转换的功能,
它们分别将模拟低通原型滤波器G(s)转换为实际的低通、
高通、带通和带阻滤波器,调用格式:
[B,A]= lp2lp(b,a,W0);W0为低通滤波器的截止频率
[B,A]= lp2hp(b,a,W0); W0为高通滤波器的截止频率
[B,A]= lp2bp(b,a,W0,Bw) ;W0是带通或带阻的中心频率
[B,A]= lp2bs(b,a,W0,Bw);Bw是带宽
b,a分别是模拟原型低通滤波器G(s)的分子和分母的系数
向量;B,A分别是转换后的H(s)的分子和分母多项式的系
数向量。
与IIRDF相关的matlab函数(四)
Bilinear:实现双线性变换,并由模拟滤波
器H(s)得到数字滤波器H(z)。调用格式:
[Bz,Az]=bilinear(B,A,Fs)
B和A分别是H(s)的分子和分母多项式的系
数向量;Bz和Az分别是H(z)的分子和分母
多项式系数向量;Fs是采样频率。
与IIRDF相关的matlab函数(五)
Butter:直接涉及巴特沃斯滤波器,实际上它包含buttap、
lp2lp和bilinear等函数,使设计过程更简捷,其调用格式
是:
[B,A]=butter(N,Wn)
[B,A]=butter(N,Wn,’hign’)
[B,A]=butter(N,Wn,’stop’)
[B,A]=butter(N,Wn,’s’)
前三个用来设计数字滤波器,B,A分别是H(z)的分子和分母
多项式的系数向量;Wn是通带截止频率,范围在0-1之间,
1对应采样频率的一半。第四个用来设计模拟滤波器。
IIRDF设计实例
设计一个LPDF,数字采样频率为1000Hz,给定技术指标
通带截止频率fp=100Hz,阻带截止频率fs=300Hz,通带最
大衰减为3db,阻带最小衰减为20db。
Wp=0.2*pi; Ws=0.4*pi;
fs=1000; rp=3;rs=20;
[n,Wn]=buttord(Wp/pi,Ws/pi,rp,rs);%确定滤波器阶数
[bz,az]=butter(n,Wp/pi);%利用butter函数设计滤波器
[h,w]=freqz(bz,az,128,fs);%计算幅频响应
Plot(w,abs(h));
grid
与FIRDF相关的matlab函数(一)
以窗口法设计FIRDF为例,相关的matlab函
数分为两类:一类用于产生窗函数,另一
类用于FIRDF设计。
常用产生窗函数的m函数:
boxcar、hamming、hanning、kaiser。
W=boxcar(N);%N为窗函数的长度
与FIRDF相关的matlab函数(二)
fir1,调用方式:
B=fir1(N,Wn);
B=fir1(N,Wn,’high’);
B=fir1(N,Wn,’stop’);
N为滤波器的阶数,因此滤波器的长度为N+1,
Wn为通带截止频率,其值在0-1之间,1对应采样
频率的一半;b是设计好的滤波器的系数h(n)。
与FIRDF相关的matlab函数(三)
B=fir2(N,F,M);F是频率向量,其值在0-1之
间;M是和F相对应的所希望的幅频响应,
默认时自动选择哈明窗。
FDATool的介绍
FDATool(Filter Design&Analysis Tool)是
MATLAB信号处理工具箱里专用的滤波器
设计分析工具 。
FDATool可以设计几乎所有的常规滤波器,
包括FIR和IIR的各种设计方法。它操作简单,
方便灵活。
FDATool界面
特性区 ,在界面的上半部分,用来显示滤
波器的各种特性。
Design Filter ,在界面的下半部,用来设置
滤波器的设计参数;
Design Filter部分
主要分为:Filter Type(滤波器类型)选项,包括
Lowpass(低通)、Highpass(高通)、Bandpass(带
通)、Bandstop(带阻)和特殊的FIR滤波器。
Design Method(设计方法)选项,包括IIR滤波器
的Butterwotth(巴特沃思)法、Chebyshev Type
I(切比雪夫I型)法、Chebyshev Type II(切比雪夫II
型)法、Elliptic(椭圆滤波器)法和FIR滤波器的
Equiripple法、Least-Squares(最小乘方)法、
Window(窗函数)法。
Design Filter部分
Filter Order(滤波器阶数)选项,定义滤波器
的阶数,包括Specify Order(指定阶数)和
Minimum Order(最小阶数)。在Specify
Order中填入所要设计的滤波器的阶数(N阶
滤波器,Specify Order=N-1)。如果选择
Minimum Order,则MATLAB根据所选择的
滤波器类型自动使用最小阶数。
Design Filter部分
Frequency Specifications选项,可以详细定义频
带的各参数,包括采样频率和频带的截止频率。
它的具体选项由Filter Type选项和Design Method
选项决定。例如Bandpass(带通)滤波器需要定义
Fstop1(下阻带截止频率)、Fpass1(通带下限截止
频率)、Fpass2(通带上限截止频率)、Fstop2(上
阻带截止频率),而Lowpass(低通)滤波器只需要
定义Fstop1、Fpass1。采用窗函数设计滤波器时,
由于过渡带是由窗函数的类型和阶数所决定,所
以只需定义通带截止频率,而不必定义阻带参数。
Design Filter部分
Magnitude Specifications选项,可以定义幅值衰
减的情况。例如设计带通滤波器时,可以定义
Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带
范围内的幅值衰减)、Wstop2(频率Fstop2处的幅
值衰减)。当采用窗函数设计时,通带截止频率处
的幅值衰减固定为6db,所以不必定义。
Window Specifications选项,当选取采用窗函数
设计,该选项可定义,它包含了各种窗函数。
SPTOOL对信号进行处理
1.
2.
3.
4.
5.
将信号导入SPTool
分析信号
设计滤波器
用设计好的滤波器处理信号
在谱分析视窗中分析信号的谱