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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
8 L( {) ~* j, W9 i3 i, N
ellip* C# H' `9 D7 e3 S; i& b7 {3 I
Elliptic filter design5 L# i: {6 d3 x
) w! _+ }3 l0 V- v# h& ]% n, S

+ ~: g# b  q3 Z' |$ |* t/ D4 ]Syntax
% S, ^/ r. ^% i$ v& \
  ]3 r; B0 l" ^6 Z. }8 v1 a2 P! M, @[b,a] = ellip(n,Rp,Rs,Wp)
0 y8 x& e) U$ }# N* L. w0 ~, G4 K% D9 r/ S1 S1 D2 C) l& q8 q+ ?! d
[b,a] = ellip(n,Rp,Rs,Wp,ftype)$ S8 H+ ~! I) a+ G/ J$ R8 ~; c7 e

" X) ?% ]% d& q+ X8 o% H[z,p,k] = ellip(___)1 {5 z, s  b; H" R

* ?% c, e7 ^: A; D+ D1 i[A,B,C,D] = ellip(___)
' X1 o8 F! M# {& o: N% w8 C' y; W: Q- ^6 ~9 d
[___] = ellip(___,'s')" @2 n6 }3 U5 y9 V

4 E7 R$ O8 ]* J- J, L
, n9 c3 c' p- C. E' EDescription
8 f( v  [. Z2 y6 @& Q. n2 @) }0 A6 Z; v3 A
[b,a] = ellip(n,Rp,Rs,Wp) 返回具有归一化通带边缘频率Wp的n阶低通数字椭圆滤波器的传递函数系数。5 F3 \9 @9 c: \) {9 B
5 ~# @9 r% t- a" |
得到的滤波器具有峰峰值通带纹波的 Rp 分贝和从峰值通带值向下衰减的阻带衰减的 Rs 分贝。0 @* M# q% j  f) b7 J" V( e& ^

, t8 E) G0 t4 `  M0 N# r  I* S. ], @# F5 O! R7 O
Lowpass Elliptic Transfer Function8 W+ L/ V) d% P

* Z  @9 s: c) @8 `& G5 q4 g4 T! {8 x$ P8 _& d9 E9 i
设计一个6阶低通椭圆滤波器,具有5 dB的通带纹波,40 dB的阻带衰减和300 Hz的通带边缘频率,对于以1000 Hz采样的数据,它对应于0.6 \pi rad / sample。 绘制其幅度和相位响应。 用它来过滤1000个样本的随机信号。" Y0 X: B& y# L
+ B" y4 a. l4 x) b" |& y
[b,a] = ellip(6,5,40,0.6);
4 W5 G4 B; Y+ O( pfreqz(b,a)
3 }5 Z' l6 t% f* B3 K7 H( Z
: u8 Z& R6 Q. L" m 3 r1 V# k, ^! W

8 P- ~- T( X0 e# ddataIn = randn(1000,1);
; l) i* i' z, Y* S$ S- X6 GdataOut = filter(b,a,dataIn);
% {0 ]$ U4 [/ ]; Z1 i# b4 E. N4 h. ~  W9 t( H8 J2 B1 p

9 O) Z, O. t# P) D8 U* x4 I( ^- m+ ~, r! f
[b,a] = ellip(n,Rp,Rs,Wp,ftype) 设计低通,高通,带通或带阻椭圆滤波器,具体取决于ftype的值和Wp的元素数量。 将所得的带通和带阻设计是2n阶。7 u) U6 [' j# y1 q! w' U) q! D

" J  N: A( _$ r  H  \, }8 B- T" v
/ Q  L* [+ t+ v, uBandstop Elliptic Filter
5 ?7 @5 C0 b: Q! A7 y  Z2 W2 d7 P6 I3 q1 ]' r  ~* x% T: b9 S

8 ^# U. K0 E& B) RDesign 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.# J% n. o3 r# E
8 x% S8 z1 @4 N9 @6 C0 f
[b,a] = ellip(3,5,50,[0.2 0.6],'stop');
( e% r3 w1 D7 C4 tfreqz(b,a)
" [' F# K5 @. e& T; r9 p- [1 \1 \! S
dataIn = randn(1000,1);0 Y( Z" V$ y2 E( L- U3 }; `
dataOut = filter(b,a,dataIn);
! Z; h- S( e% _3 w4 @- T
. P# u0 o7 |7 ?" y- B2 k
3 G2 `) b2 I2 j7 g" K2 V6 t  t, T( f$ X
[z,p,k] = ellip(___)设计低通,高通,带通或带阻数字椭圆滤波器,并返回其零点,极点和增益。 此语法可包括先前语法中的任何输入参数。
) h) y$ [  t8 T& o) x1 b
8 z! J! A" S1 W5 i- z" `设计一个6阶高通椭圆滤波器,其通带边缘频率为300 Hz,对于以1000 Hz采样的数据,对应于0.6\pirad / sample。 指定3 dB的通带纹波和50 dB的阻带衰减。 绘制幅度和相位响应。 将零,极点和增益转换为二阶段以供fvtool使用。8 F! t5 t4 C5 l
* g+ K# r: f4 D/ K( Y& ]
[z,p,k] = ellip(6,3,50,300/500,'high');
$ X! v, u& Q9 D7 Csos = zp2sos(z,p,k);
3 t3 @* o; v, gfvtool(sos,'Analysis','freq')3 A+ m8 o, ^) ~/ A
5 s( Q% [% Z  }6 l

- z; w4 S7 v0 ]
  ]% \+ \- A1 Q6 B" p# p- G当然也可以通过原来的方法:
* Q2 O7 R: u) e5 D' O, ~* E7 J% O0 z' B6 I' b
clc
6 t9 ]2 t9 Y' u3 a6 j$ gclear5 e  v  W' p$ R: T" k- D
close all  {) A/ Z2 r) M; f

* K+ n8 T' d: ^[b,a] = ellip(6,3,50,300/500,'high');
' O; t7 R6 G& @0 T4 t4 Qfreqz(b,a)
- ]9 ~( r7 K& v2 C$ g5 S+ g, t
$ S6 ^0 O4 c5 Z/ C  X 1 a& `+ @4 A& e1 e0 F  U
: F7 e) v. S+ \3 N, Z
[A,B,C,D] = ellip(___) 设计低通,高通,带通或带阻数字椭圆滤波器,并返回指定其状态空间表示的矩阵。2 w" V( a0 b! O; g) `6 @
9 s  H1 X/ t5 V* C

/ Z, c- n' n2 M6 C  x" I5 ]; wBandpass Elliptic Filter1 k: F9 ?$ m. b' r7 ^: `5 O$ w

( A0 n% z6 `% e4 |0 F9 `" e- `  }0 X5 ?8 L# q
Design 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.
0 L" ]9 Y8 j0 x$ H9 x: F) S( e' g9 D' n" G
设计一个20阶椭圆带通滤波器与500Hz的低通频带频率和560赫兹的高通频带频率。 指定3 dB的通带纹波,40 dB的阻带衰减和1500 Hz的采样率。 使用状态空间表示。 使用designfilt设计相同的过滤器。
( P. G+ n& i- P& s- b/ H5 V9 H; }- y( C
[A,B,C,D] = ellip(10,3,40,[500 560]/750);2 _, N4 |" _; P/ @
d = designfilt('bandpassiir','FilterOrder',20, ..." D/ h1 L7 E5 B
    'PassbandFrequency1',500,'PassbandFrequency2',560, ...
4 `" I. V) j  I" h    'PassbandRipple',3, ...( U; @, d9 I# k9 c, M: ^
    'StopbandAttenuation1',40,'StopbandAttenuation2',40, ...
  @% X, c2 w% {' h* f    'SampleRate',1500);
/ k8 T7 |. J5 d+ B0 w7 M& m0 ?, L! W/ _+ S  O( A7 g

0 ]& y& s; c; k7 ^8 `. q
( O7 H8 S/ s" S2 t; ]! v; l3 cConvert the state-space representation to second-order sections. Visualize the frequency responses using fvtool.) y5 z& y" [8 J* \, }3 t
8 r& ~2 F4 N  }4 v5 Y1 N
将状态空间表示转换为二阶段。 使用fvtool可视化频率响应。8 C4 Z5 d% H# m! S: x+ l

! k; V' E6 o! ^% msos = ss2sos(A,B,C,D);
# r: e$ ~4 a# d9 s0 l2 wfvt = fvtool(sos,d,'Fs',1500);' x& d& f! ?2 D1 _) K) `
legend(fvt,'ellip','designfilt')
& f2 i- V5 g9 s* m7 X: O3 q
5 q& V$ D$ p0 S( L% U9 g0 S! M+ `! L 5 t' I6 S& o2 W2 ?$ N9 r- [
( s+ P3 z) V( p& K  }
[___] = ellip(___,'s') 设计了低通,高通,带通或带阻模拟椭圆滤波器,其通带边缘角频率Wp,通带纹波的Rp分贝和阻带衰减的Rs分贝。
  M) E# |+ N% ?3 l: d
  W; Q2 X, I0 _+ u* B8 y! P5 i最后一个就不介绍了,具体参考MATLAB数据手册,在命令窗口输入:& `6 ]7 C' ]6 V# I1 q6 ]

3 O0 Y# A! U. J( vdoc ellip, v$ N$ h; ~/ e
+ |' r" P4 ?" z1 F, n) l; Y
获得相关帮助。
6 L% o2 I' m0 q- j8 t

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 13:20 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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