找回密码
 注册
关于网站域名变更的通知
查看: 327|回复: 1
打印 上一主题 下一主题

基于matlab的各类滤波器设计

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-3 13:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
一. 采用fir1
$ w6 t5 t% l3 k" u5 t) O* T& ^2 H

          采用了窗函数设计方法


. A: w3 C$ i8 z; W# k

          语法如下:

各项参数意义:

& t" h) W$ d1 j( w. F* F

          b:返回的FIR滤波器单位脉冲响应,脉冲响应为偶对称,长度为n+1

) t4 S! I' a( O6 W* m

          n:滤波器的阶数,需要注意的是,设计出的滤波器长度为n+1

; _4 P8 y9 b, z# N( k6 A/ B

          Wn:滤波器的截止频率(归一化)。需要注意的是,wn的取值范围为0《wn《1,1对应为信号采样频率的1/2;

4 J& ?" j1 c9 H9 d( \

          如果wn是单个数值,且ftype参数为low,则表示设计截止频率为wn的低通滤波器,如ftype参数为high,则表示设计截止频率为wn的高通滤波器;


. d) K5 F, w3 d$ W$ w9 t# u

          如果wn是由两个数组成的向量[wn1,wn2],ftype为stop,则表示设计带阻滤波器,ftype为bandpass,则表示设计带通滤波器;


6 V) }3 {6 V$ A. ], K0 y

          如果wn是由多个数组成的向量,则表示根据ftype的值设计多个通带或阻带范围的滤波器,ftype为DC-1,表示设计的第一个频带为通带,ftype为DC-0,表示设计的第一个频带为阻带。

" E: U  _2 M8 Y) j- K0 R# x; M

          4.window:指定使用的窗函数向量,默认为海明窗(Hamming),最常用的窗函数有汉宁窗(Hanning),海明窗(Hamming),布拉克曼窗(Blackman)和凯塞窗(Kaiser),可通过输入help window查找(当凯塞窗函数的贝塔值取7.856时,凯塞窗具有最好的性能)


5 M+ o4 A3 F  O6 h4 E- s) G. X$ E

          5.noscale:指定是否归一化滤波器的幅度


/ d; M% O/ {. a, v1 m5 d

          注意:fir1函数智能选择滤波器的截止频率和阶数,不能选择滤波器通带,阻带衰减,过渡带宽等参数。

二. 采用kaiserord函数设计' z" o4 W8 K, G" n! r: a

          语法如下:[n,wn,beta,filtype]=kaiserord(f,a,dev,fs)


( |2 {& M* m3 k: @- p# H

          参数意义:


6 b( r4 @# ]3 Q" c/ i8 R1 f6 F; ]

          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]


: D. ^" p' n/ ?0 ^1 j3 m" p' c+ t" l

          a:指定这些频率段的理想幅度值。通带为1,阻带为0.a与f相对应。以上例子,应该设置为a=[1 0 1],则表示设计带阻滤波器。


; l4 o( J8 q" a% q7 Q

          dev:指定通带或阻带内的容许误差。同样是上面的例子,要求通带容许误差为0.01,阻带容许误差为0.02,则dev=[0.01 0.02 0.01]


. l( ]$ u: n( f$ n/ d

          n:n为滤波器的最小阶数


' m  n8 V( b9 B% w, m$ |

          wn:得到滤波器的截止频率点

" C$ g8 }% [; h6 t0 A( f

          beta:计算得到的beta值


& D5 F1 V; G  r! e1 _0 X& m  ]- v

          ftype:获得滤波器的类型参数

三. 采用fir2函数设计4 l# g- w9 s, ^! [; I! s& Q

          使用fir2函数,可以完成任意响应滤波器的设计,即滤波器的幅度频率响应在指定的频段范围内有不同的幅值。,如在0~0.1的理想幅值为1,0.2~0.4的幅值为0.5等。


- x0 C& n& O+ U0 J! u* i

          语法如下:


/ s8 H% O; W% ^& ~* Y

          参数意义:


, \3 C% j  G  l+ I' p* [) N

          n及b:滤波器的阶数。注意,根据FIR滤波器的结构特点,当设计的滤波器在归一化频率为1处的幅度值部位0时,n不能为奇数。


' C9 P! F+ s5 p' S6 g0 z- B

          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]

( ?8 ~& z3 g6 `- d# B

          windom:指定窗函数的种类,其长度为滤波器长度n+1,默认为海明窗。


5 n, T/ ?! d+ h- Q/ @: P1 \% s

          npt:指定在对幅度响应进行插值的插值点个数,其默认为512


/ H- i& Y$ R* H* ^

          lap:指定对幅度响应进行插值时,对于不连续点转变成连续时的点数,其默认值是25


; x" c. B, H: a5 v; w# q

          区别:

; J% Y! v; @+ Q: I

          1.stem和plot


+ s/ m' D/ E% ~4 j4 z

          stem是离散函数,plot是连续函数

# L8 p/ L. O2 k5 V3 ^4 p

          常用的信号处理函数:


( @" j8 C: j3 O+ o9 @

          1. 随机信号函数

! J4 S+ w; k+ i$ G

          随机信号函数:Rand(1,N)和randn(1,N)

0 g+ f& Q- J$ Y) t

          2. 方波信号函数


* d- _5 d$ J2 W, m% h' M

          Square(T)和Square(T,DUTY),其实DUTY为正值区域在一个周期的比例,如DUTY=50时,产生方波。


; C; u" K* h8 O& D6 _6 [. h! n

          3. 锯齿波信号函数


" K4 c: z7 ?' C+ f- N% {8 r

          Sawtooth(T)和sawtooth(T,WIDTH)


" X+ @2 ^+ y( y& O- p

          4. 正弦波信号函数

% `/ u4 t9 g- d8 i; `1 M9 L/ q

          Sin(2*pi*f*t)


8 l) N6 v2 i/ |7 ?- @         常用信号分析级处理函数# \: \* ~- K+ ]* V

          1. 滤波函数

, X% G7 Q, \! Q8 M' |, G7 Q: G5 o8 @5 Z" Y

          Filter(b,a,x):分子项系数依次从大到小排列成一个行矩阵b,分母项系数依次从大到小排列成一个行矩阵a,x为输入信号序列。


7 D5 W9 N7 n: x) \/ R6 o

          2. 单位抽样响应函数


. A1 Q& `  }  F

          Impz(b,a,p),其中a,b同上,p为计算的数据点数

  V/ `: r! J5 h8 W2 n' Q! e

          3. 频率抽样响应函数

# I) U! F$ a. _  N

          Freqz(b,a,n,Fs): 其中a,b同上,n为在[0 Fs/2]范围内计算的频率点数量,Fs为采样频率。

, w; X9 y0 a. k0 M. x; K

          4. 零极点增益函数

3 ^" e$ A3 D/ O+ [

          Root函数计算系统的零极点,zplane函数画出系统的零极点。

3 p# o- u# r) r4 e, V
5 L) S) B  n9 e) V2 F

该用户从未签到

2#
发表于 2020-3-3 16:14 | 只看该作者
matlab还能做滤波器设计啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-20 15:44 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表