EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一. 采用fir1( o/ u4 | z+ F. r2 c* m! @; m
采用了窗函数设计方法 $ V- a3 T3 z+ e# x9 T4 ]
语法如下: 各项参数意义:
! J$ ] f" D2 i4 k4 d- ?' W5 C3 T b:返回的FIR滤波器单位脉冲响应,脉冲响应为偶对称,长度为n+1
: c5 |+ M$ ?( a1 s" X7 U/ x n:滤波器的阶数,需要注意的是,设计出的滤波器长度为n+1 6 [) h1 A2 A8 l% q3 E! S# s
Wn:滤波器的截止频率(归一化)。需要注意的是,wn的取值范围为0《wn《1,1对应为信号采样频率的1/2;
0 [& i3 [( K5 _ c5 K# R k' Y9 L: A0 k 如果wn是单个数值,且ftype参数为low,则表示设计截止频率为wn的低通滤波器,如ftype参数为high,则表示设计截止频率为wn的高通滤波器; 1 R: U9 x6 S4 _6 W
如果wn是由两个数组成的向量[wn1,wn2],ftype为stop,则表示设计带阻滤波器,ftype为bandpass,则表示设计带通滤波器; / q' v' ]5 D0 A# G; @
如果wn是由多个数组成的向量,则表示根据ftype的值设计多个通带或阻带范围的滤波器,ftype为DC-1,表示设计的第一个频带为通带,ftype为DC-0,表示设计的第一个频带为阻带。 5 X2 V2 l% S; F
4.window:指定使用的窗函数向量,默认为海明窗(Hamming),最常用的窗函数有汉宁窗(Hanning),海明窗(Hamming),布拉克曼窗(Blackman)和凯塞窗(Kaiser),可通过输入help window查找(当凯塞窗函数的贝塔值取7.856时,凯塞窗具有最好的性能) ; B! H! _ c. k+ o7 Q$ P6 L7 q
5.noscale:指定是否归一化滤波器的幅度 * x" Z) G; [; |6 z' s7 |2 a" l
注意:fir1函数智能选择滤波器的截止频率和阶数,不能选择滤波器通带,阻带衰减,过渡带宽等参数。 二. 采用kaiserord函数设计+ z0 n8 e3 W8 j6 l
语法如下:[n,wn,beta,filtype]=kaiserord(f,a,dev,fs)
2 r: N0 K/ ?7 a8 E2 K 参数意义: % D" `2 @- i- p/ o/ P0 ?4 G
f及fs:f是一个向量,其中的元素为待设计滤波器的过渡带的起始点和结束点。如果没有fs参数,f中元素的取值范围为0~1,即相对于采样频率一半的归一化频率;如果有fs参数,则fs为信号采样频率,f中元素即为实际的截止频率。如,设计滤波器的过渡带宽为1000~1200hz,2000~2100hz,信号采样频率为8000hz;如没有设置fs参数,则f=[0.25 0.3 0.5 0.525];如设置fs为8000,则f=[1000 1200 2000 2100] 4 P- v: j, r6 u$ h% R
a:指定这些频率段的理想幅度值。通带为1,阻带为0.a与f相对应。以上例子,应该设置为a=[1 0 1],则表示设计带阻滤波器。
- T4 J, n# J6 z* B+ w! j dev:指定通带或阻带内的容许误差。同样是上面的例子,要求通带容许误差为0.01,阻带容许误差为0.02,则dev=[0.01 0.02 0.01] ( s1 k# X+ t* ^) G0 X, w$ I6 ]
n:n为滤波器的最小阶数 # V6 e* D- K8 G' b4 e+ R
wn:得到滤波器的截止频率点
, w) b! \" ?! @$ ~; y beta:计算得到的beta值 4 @/ k( \; F' M: s' M( ?
ftype:获得滤波器的类型参数 三. 采用fir2函数设计$ w- K; i$ Y+ ~4 V3 g6 x* [
使用fir2函数,可以完成任意响应滤波器的设计,即滤波器的幅度频率响应在指定的频段范围内有不同的幅值。,如在0~0.1的理想幅值为1,0.2~0.4的幅值为0.5等。
: V% W* b! R$ x 语法如下: o: f7 y) Q; t) N0 A/ @ D8 y. K
参数意义:
( y3 |. L* F! m1 `, m n及b:滤波器的阶数。注意,根据FIR滤波器的结构特点,当设计的滤波器在归一化频率为1处的幅度值部位0时,n不能为奇数。 ' E& I. f1 D8 X5 v/ M
f及m:f的取值为0~1,对应于滤波器的归一化频率,m用于设置对应频段范围内的理想幅值。如要求的滤波器在0~0.125内幅值为1,0.125~0.25为0.5,0.25~0.5为0.25,0.5~1为0.125,则f=[0 0.125 0.125 0.25 0.25 0.5 0.5 1],m=[1 1 0.5 0.5 0.25 0.25 0.125 0.125] & E( A$ i+ B* v& ?$ ]( k+ E: I0 d
windom:指定窗函数的种类,其长度为滤波器长度n+1,默认为海明窗。 " F, x. B( D5 y! u6 r0 k% n
npt:指定在对幅度响应进行插值的插值点个数,其默认为512 " t, ~& ]$ R' F+ k
lap:指定对幅度响应进行插值时,对于不连续点转变成连续时的点数,其默认值是25
U% l5 X1 ]1 A+ d 区别: 2 |3 R8 M5 k( |# p* R+ X
1.stem和plot
+ }: h. e V* i/ q4 l stem是离散函数,plot是连续函数 4 G% G. G9 e* a% d! k
常用的信号处理函数:
6 T: j9 l9 y' Z3 [: n3 V9 o! g 1. 随机信号函数 4 Q2 t0 x$ c- R! Y. |7 e; N
随机信号函数:Rand(1,N)和randn(1,N)
4 I# q5 @ c) t1 l; ` 2. 方波信号函数 * z8 m4 i7 L8 ]! W3 K v$ s: L# [
Square(T)和Square(T,DUTY),其实DUTY为正值区域在一个周期的比例,如DUTY=50时,产生方波。 e4 ?6 q% A% a0 I
3. 锯齿波信号函数
. X1 K7 h- v Y7 E" o1 J! D: r Sawtooth(T)和sawtooth(T,WIDTH) 0 P: ~3 n$ H: e9 `3 q5 P0 M
4. 正弦波信号函数
5 [6 I: [+ U3 U' B Sin(2*pi*f*t) . g9 y0 ?2 d. M7 _
常用信号分析级处理函数8 g& `2 k$ _* @0 M# f1 }
1. 滤波函数 + z9 p) L2 U o0 e+ N! d( W
Filter(b,a,x):分子项系数依次从大到小排列成一个行矩阵b,分母项系数依次从大到小排列成一个行矩阵a,x为输入信号序列。
0 }& {9 O5 t* g" S" K) @ 2. 单位抽样响应函数 % {- {# B \* L. S7 r
Impz(b,a,p),其中a,b同上,p为计算的数据点数 : @2 h/ ~. g" J. d
3. 频率抽样响应函数
8 p! o2 t, A( o+ H+ u: T3 { Freqz(b,a,n,Fs): 其中a,b同上,n为在[0 Fs/2]范围内计算的频率点数量,Fs为采样频率。
& e4 t# W J/ d) d+ W7 { 4. 零极点增益函数 r; T% E$ c, ~$ `9 g& g
Root函数计算系统的零极点,zplane函数画出系统的零极点。 3 i/ [( E. E- @0 i: p# s
, g1 P# @; v, z( T ~( D& k |