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

MATLAB之ellip 函数介绍(椭圆滤波器设计)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-9-23 15:01 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
1 s, S% }; _$ T( Q
ellip
& W% `: @  G$ k8 h& Q! ]; QElliptic filter design
% ?; P0 ^, {6 j9 o1 d2 q2 d& h1 k+ M# J& w" v( }$ J% K/ ^+ n

- G0 [' R& p( f  M- X, e5 [; KSyntax' D% b: z4 U, X. X9 H( x
" m! V) o0 T* z" S$ u6 g
[b,a] = ellip(n,Rp,Rs,Wp)
) X% v5 b3 Q7 R8 p' L; I4 r2 U( a, F9 z5 {, t5 m& i& @
[b,a] = ellip(n,Rp,Rs,Wp,ftype)4 F' |% b) Y/ `- i$ `6 N( a

; W. h' G. m* `. `" H[z,p,k] = ellip(___)
4 u8 A  A! Q6 C; W
3 i; z, g& n3 n3 C[A,B,C,D] = ellip(___)
0 A1 S$ `6 t% r3 z5 _; E0 x6 o- q# d  c9 I+ N% @9 [+ U
[___] = ellip(___,'s')0 m% e: @% y& ?5 w

1 V- T! k* g0 I% }; H4 k8 b9 ^
4 o) _% Z3 J" `5 L& ?' X0 uDescription
3 U/ a1 [6 i8 E% ~% d7 @4 Y2 Y, P: [4 Q
[b,a] = ellip(n,Rp,Rs,Wp) 返回具有归一化通带边缘频率Wp的n阶低通数字椭圆滤波器的传递函数系数。& h/ E$ G* ?7 S4 N
6 S3 h0 U: v' ^/ z
得到的滤波器具有峰峰值通带纹波的 Rp 分贝和从峰值通带值向下衰减的阻带衰减的 Rs 分贝。+ v: ]( U& k% [  h/ R* G$ Y8 p
9 z& ?; H4 Y0 D# a. e! {

  z) b' Q- g1 G. |% X& I- jLowpass Elliptic Transfer Function
( ^* l9 s$ y$ S6 T0 V2 C: I4 W
8 [% i- T1 n  z2 e% D7 w/ L2 o' l$ L$ }* ]/ p* P: `; e
设计一个6阶低通椭圆滤波器,具有5 dB的通带纹波,40 dB的阻带衰减和300 Hz的通带边缘频率,对于以1000 Hz采样的数据,它对应于0.6 \pi rad / sample。 绘制其幅度和相位响应。 用它来过滤1000个样本的随机信号。
" k3 f% a1 A4 K( L( |, {, U
2 Q- R# {6 ]7 L5 q4 c[b,a] = ellip(6,5,40,0.6);. K8 e: @9 N' e& c9 O. i- L
freqz(b,a)' \; q, x' h& j6 N. Y$ E- a) p

$ A, i# l6 A9 c0 t  ^0 w5 D, l2 L( I
) j* p2 }$ f# k; `) ?3 P
! Y% o) R# X  r3 Y. Y, T' @dataIn = randn(1000,1);7 [- F% ^0 ^8 e' o4 S9 g
dataOut = filter(b,a,dataIn);+ G. B2 z- A& @. E/ z6 `

( `- g! J# h1 ]5 k- R) Y5 H
% a# k6 G7 Z+ y! y# U  e# K4 K$ F! f6 z8 X( E
[b,a] = ellip(n,Rp,Rs,Wp,ftype) 设计低通,高通,带通或带阻椭圆滤波器,具体取决于ftype的值和Wp的元素数量。 将所得的带通和带阻设计是2n阶。* j0 W6 n& J& @& i+ R5 m
; u) R/ S3 a; U% u* w7 ]) G

1 o0 e5 {, ~$ _) V0 J9 h6 t0 C0 B% dBandstop Elliptic Filter
+ m9 [; ^9 b  p6 ]$ t) J% n3 d& `. q0 \# y" ~, o# u6 o8 q& v+ K

" ~: J  v4 j( i: cDesign a 6th-order elliptic bandstop filter with normalized edge frequencies of  and  rad/sample, 5 dB of passband ripple, and 50 dB of stopband attenuation. Plot its magnitude and phase responses. Use it to filter random data.' e9 V4 V0 X1 x9 c9 A9 g6 y0 |6 _

  F5 _- X, H8 d4 E6 [% I, s# g1 U! P[b,a] = ellip(3,5,50,[0.2 0.6],'stop');1 B& ^9 t6 t6 I' q3 i
freqz(b,a)  n! A, I" K5 B. E4 w1 R  g
# u" |$ U3 t; T6 Y4 J8 W) d
dataIn = randn(1000,1);
; |! ?) t! D2 g! SdataOut = filter(b,a,dataIn);$ s* q' N1 e* I: R: u, A! [
- Y+ X% b  x; L2 k$ X7 o8 v  X$ b! N

' t5 o& l' W) b7 b6 y
* a/ X! g4 m  l4 ?# E: B( B[z,p,k] = ellip(___)设计低通,高通,带通或带阻数字椭圆滤波器,并返回其零点,极点和增益。 此语法可包括先前语法中的任何输入参数。
$ f* |7 L& L( `* ^4 c5 H+ v$ `% g% U9 ]" A: P! a" m5 i
设计一个6阶高通椭圆滤波器,其通带边缘频率为300 Hz,对于以1000 Hz采样的数据,对应于0.6\pirad / sample。 指定3 dB的通带纹波和50 dB的阻带衰减。 绘制幅度和相位响应。 将零,极点和增益转换为二阶段以供fvtool使用。; S. k8 B' ^, g

( ]2 A! ?( {+ U, ^[z,p,k] = ellip(6,3,50,300/500,'high');0 R; J5 P( s7 M7 L( G2 a. y
sos = zp2sos(z,p,k);
" D* R8 R& ]- Z8 m+ |2 c" y* Mfvtool(sos,'Analysis','freq')8 U6 R( a' b: r+ m$ L/ O

/ l: N! [; X# M2 z+ V2 [8 J  y
) f5 J- T7 G# N. u" A: A5 p: `, @' I( U
当然也可以通过原来的方法:9 `  j+ I- W2 T4 g1 l
1 U$ Z: ~6 c: O8 N9 Q8 H5 u2 r
clc
$ x2 @& ]" P: ?- c' j) pclear
$ P% ]0 D* I3 bclose all7 D# w9 O4 p+ b; b! u8 ]
+ _* |2 u7 U, z5 q8 J
[b,a] = ellip(6,3,50,300/500,'high');% J1 y# J$ }/ y" W! n6 ]
freqz(b,a)
- R" I: A* x2 ?$ V" d% B" n" q0 U4 R+ u6 \/ t- Q1 R2 ^
  a* Y+ U( K* J  g- `- q
. E3 W0 z& x( J7 x6 l3 Y
[A,B,C,D] = ellip(___) 设计低通,高通,带通或带阻数字椭圆滤波器,并返回指定其状态空间表示的矩阵。
' G0 R+ U$ A! L+ K' W4 X' ~0 |$ m0 ^6 E+ A. s4 h
% w* W3 J6 Y. p; L1 T( ?- O: U  j% {
Bandpass Elliptic Filter
- r3 d1 @3 d* N* X% W
3 q1 N1 w5 G7 G9 n3 s' p1 c1 S
" R$ A, F) y" x0 pDesign a 20th-order elliptic bandpass filter with a lower passband frequency of 500 Hz and a higher passband frequency of 560 Hz. Specify a passband ripple of 3 dB, a stopband attenuation of 40 dB, and a sample rate of 1500 Hz. Use the state-space representation. Design an identical filter using designfilt.
+ ]' D" {' |* }2 X1 X/ j. H& H4 k, ]$ t* L1 u% y/ |
设计一个20阶椭圆带通滤波器与500Hz的低通频带频率和560赫兹的高通频带频率。 指定3 dB的通带纹波,40 dB的阻带衰减和1500 Hz的采样率。 使用状态空间表示。 使用designfilt设计相同的过滤器。+ y. O; ?! e7 a( _4 k
/ `" _2 O  k4 y+ ~9 j
[A,B,C,D] = ellip(10,3,40,[500 560]/750);
7 _/ y) l8 q; f. L: Ed = designfilt('bandpassiir','FilterOrder',20, ...
9 K" ]3 Y* B, j( ?! s9 r: s    'PassbandFrequency1',500,'PassbandFrequency2',560, ...7 j# G8 X: F4 O. J8 S; a
    'PassbandRipple',3, ...1 e, a# F# S3 ^0 @, X1 v
    'StopbandAttenuation1',40,'StopbandAttenuation2',40, ...- e' {- F* R0 E  o1 Z
    'SampleRate',1500);
3 e. q- }: T% ^; r  b* e
& s# F$ K2 ^2 W; W4 i: C
) g2 ?2 {7 r: L& }0 N1 N) L& K7 ~5 E& C4 {# F* C1 [
Convert the state-space representation to second-order sections. Visualize the frequency responses using fvtool.
3 y6 f4 E3 t' ]/ @' ?, d0 z; P: X7 Z3 u
将状态空间表示转换为二阶段。 使用fvtool可视化频率响应。
' w. g3 [0 i( F& Z9 j) r) T9 G/ F# P
sos = ss2sos(A,B,C,D);6 d8 d3 Z9 c& M  k! _4 ], P  ^
fvt = fvtool(sos,d,'Fs',1500);) H7 u; ~. Q' w+ K: t
legend(fvt,'ellip','designfilt')2 l" _- a( D; a: H7 M: s( a7 ]
- z5 N) h- X) R; j# F: k3 j
3 V" }3 Y5 d: C4 c0 l; b# T& o

/ `% B0 ?% V. {: l8 Z[___] = ellip(___,'s') 设计了低通,高通,带通或带阻模拟椭圆滤波器,其通带边缘角频率Wp,通带纹波的Rp分贝和阻带衰减的Rs分贝。0 [4 l8 g3 q( i- b1 h0 `

/ W2 |; J, }0 W9 S: N! _最后一个就不介绍了,具体参考MATLAB数据手册,在命令窗口输入:
, W7 y7 k, V8 ]3 s
9 Q6 y1 w* S5 N8 j9 ldoc ellip$ j$ h4 V% w+ h8 s2 L% X
* a9 r8 C* e  b
获得相关帮助。, C7 D, R- g6 {7 ?' s; p4 O3 e' t9 O

该用户从未签到

2#
发表于 2020-9-23 15:29 | 只看该作者
MATLAB之ellip 函数介绍(椭圆滤波器设计)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-3 17:05 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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