EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一. 采用fir1; I; Q- ]8 I8 V. W
采用了窗函数设计方法
1 I" n- A. ^; _/ X 语法如下: 各项参数意义:
, t7 @' g a# @. h b:返回的FIR滤波器单位脉冲响应,脉冲响应为偶对称,长度为n+1 ! j4 T) [- c; a8 c. T6 K
n:滤波器的阶数,需要注意的是,设计出的滤波器长度为n+1 . L+ H6 ~6 d8 I+ v; v
Wn:滤波器的截止频率(归一化)。需要注意的是,wn的取值范围为0《wn《1,1对应为信号采样频率的1/2;
9 b) O3 h5 Z# q/ Q/ f* v p. U9 s4 H 如果wn是单个数值,且ftype参数为low,则表示设计截止频率为wn的低通滤波器,如ftype参数为high,则表示设计截止频率为wn的高通滤波器;
, m9 Q; n+ O$ _' I6 j) D 如果wn是由两个数组成的向量[wn1,wn2],ftype为stop,则表示设计带阻滤波器,ftype为bandpass,则表示设计带通滤波器; ' s: t: M' d1 _
如果wn是由多个数组成的向量,则表示根据ftype的值设计多个通带或阻带范围的滤波器,ftype为DC-1,表示设计的第一个频带为通带,ftype为DC-0,表示设计的第一个频带为阻带。
I- A+ Z: Z4 l: ]* n% D' E 4.window:指定使用的窗函数向量,默认为海明窗(Hamming),最常用的窗函数有汉宁窗(Hanning),海明窗(Hamming),布拉克曼窗(Blackman)和凯塞窗(Kaiser),可通过输入help window查找(当凯塞窗函数的贝塔值取7.856时,凯塞窗具有最好的性能)
2 S! W, h* `' a. t1 S8 P: S& `7 T* f1 u 5.noscale:指定是否归一化滤波器的幅度 a3 D9 u, ^8 B' N$ p4 `2 D) p+ L
注意:fir1函数智能选择滤波器的截止频率和阶数,不能选择滤波器通带,阻带衰减,过渡带宽等参数。 二. 采用kaiserord函数设计
1 o/ j* o8 q/ O! z& w/ I3 w 语法如下:[n,wn,beta,filtype]=kaiserord(f,a,dev,fs) 5 }$ I/ A: v% u
参数意义: 4 w8 J/ D6 g/ a7 {
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] 8 H& ^7 } T! c `
a:指定这些频率段的理想幅度值。通带为1,阻带为0.a与f相对应。以上例子,应该设置为a=[1 0 1],则表示设计带阻滤波器。
$ r0 U+ y8 ]7 f# p( U& N) S dev:指定通带或阻带内的容许误差。同样是上面的例子,要求通带容许误差为0.01,阻带容许误差为0.02,则dev=[0.01 0.02 0.01] $ u* Q$ O9 M, Q7 t. U* C
n:n为滤波器的最小阶数 - Y0 ^# g* n9 N9 u1 |( }) {
wn:得到滤波器的截止频率点 4 |9 O* R# ^7 I+ V) I' J
beta:计算得到的beta值 6 C+ |) U, n3 c' G5 u( F) a
ftype:获得滤波器的类型参数 三. 采用fir2函数设计" u# \- u2 W: ^
使用fir2函数,可以完成任意响应滤波器的设计,即滤波器的幅度频率响应在指定的频段范围内有不同的幅值。,如在0~0.1的理想幅值为1,0.2~0.4的幅值为0.5等。 ) R7 R( _2 {% X: u: `" ?& t
语法如下: ) _5 c, j/ T( z$ u7 c
参数意义: ( U" n |8 o! w ?' N
n及b:滤波器的阶数。注意,根据FIR滤波器的结构特点,当设计的滤波器在归一化频率为1处的幅度值部位0时,n不能为奇数。
& ~5 l4 o2 P) g& ?8 z. v1 |. R1 ^+ v 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]
% [5 F9 F7 ^* C) m windom:指定窗函数的种类,其长度为滤波器长度n+1,默认为海明窗。 x/ I/ i1 T) c% \' b9 }' V
npt:指定在对幅度响应进行插值的插值点个数,其默认为512 8 ^6 S2 {+ ^$ K' }
lap:指定对幅度响应进行插值时,对于不连续点转变成连续时的点数,其默认值是25 8 f: R Q% {: I- N* \/ R3 r
区别: - j8 ?% v; G+ _
1.stem和plot
* E# [$ G# `+ r0 G, a stem是离散函数,plot是连续函数 6 j! f& R% Q5 W) e. l
常用的信号处理函数:
. R9 y7 Z& F# M1 [2 I* V 1. 随机信号函数 / s) P3 H' M* C V1 W* Q
随机信号函数:Rand(1,N)和randn(1,N)
. F4 i- s; @" x4 J& }0 {' r 2. 方波信号函数
5 Y# q0 z. m; ?7 \" u7 a( w- l Square(T)和Square(T,DUTY),其实DUTY为正值区域在一个周期的比例,如DUTY=50时,产生方波。 2 |4 f( W- C* a2 H
3. 锯齿波信号函数
( |7 L$ ~; W8 c' x. [" D Sawtooth(T)和sawtooth(T,WIDTH) ; b2 |0 ]8 d+ b
4. 正弦波信号函数 3 L7 D' m. s# T3 y( C/ @3 C- l
Sin(2*pi*f*t)
6 _" D) h% z* e% S 常用信号分析级处理函数
! a6 _! `0 L' k' j 1. 滤波函数 . f( M7 k- Z; m* M. d7 v
Filter(b,a,x):分子项系数依次从大到小排列成一个行矩阵b,分母项系数依次从大到小排列成一个行矩阵a,x为输入信号序列。
8 g( @( K$ H1 f" q$ c) o 2. 单位抽样响应函数
8 K4 T* H4 N, I; H# f Impz(b,a,p),其中a,b同上,p为计算的数据点数 ; }8 u* D& f [7 ~
3. 频率抽样响应函数 + D% F; F6 k% G5 _" d/ t+ v5 _
Freqz(b,a,n,Fs): 其中a,b同上,n为在[0 Fs/2]范围内计算的频率点数量,Fs为采样频率。
# U4 `7 r: h% ~! ^- v* G- ]& w 4. 零极点增益函数
+ w; b, g0 w! j, a! O& f' T Root函数计算系统的零极点,zplane函数画出系统的零极点。 & o/ X; q; M# V
# x% s! [1 l" R4 m3 S3 ^" W5 Z |