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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

8 I( D" ?" V7 a3 nellip4 B4 B! y9 _4 V
Elliptic filter design. S4 C0 c' ^, z% K1 M0 S$ Z( g

4 ~. y! y6 M4 d1 ]0 b% j% \
/ X, L6 K* v9 L2 L0 J. RSyntax7 p5 Z9 n" q5 v. k- l, s
; |. J. B( o4 L/ F8 l9 o3 _) I; ]
[b,a] = ellip(n,Rp,Rs,Wp)
' C8 V0 l! \) l+ @/ f- r2 W; [7 a1 d3 Z, }5 R+ W" R7 f
[b,a] = ellip(n,Rp,Rs,Wp,ftype)
/ n1 F/ Q9 d  e6 Q1 n1 X
7 {6 I- T5 `2 Z8 b: g& ~" g[z,p,k] = ellip(___)- b+ R' B2 K- ]# b  L3 q  N

$ @1 C; `& S/ H1 j[A,B,C,D] = ellip(___)
+ s! X: t% i# _  [7 {1 X2 Y7 M. P* s+ |. `" n
[___] = ellip(___,'s'): P- N" E& Z$ Q/ B! ~8 ~( h% P9 ?

. w# O2 q8 Y1 p9 |+ Z; O  d0 _& V: F  m" N
Description6 {5 \0 l0 I' p( g9 ~5 ^
; i! M+ p. K; E0 S. i
[b,a] = ellip(n,Rp,Rs,Wp) 返回具有归一化通带边缘频率Wp的n阶低通数字椭圆滤波器的传递函数系数。- K: f% E# K- T! M4 m2 m
' `6 `+ `# \4 V1 d# R, T. F' ]
得到的滤波器具有峰峰值通带纹波的 Rp 分贝和从峰值通带值向下衰减的阻带衰减的 Rs 分贝。! I: W# A& o) C" q( B0 F
" N7 C) s# o* `6 n: a
9 S& R/ n' M( \! F; T$ S
Lowpass Elliptic Transfer Function
  Q( C0 _* W. S
( p  P4 I, v& v! u
( Y5 ?) ]8 t4 Q" z2 b/ _6 E设计一个6阶低通椭圆滤波器,具有5 dB的通带纹波,40 dB的阻带衰减和300 Hz的通带边缘频率,对于以1000 Hz采样的数据,它对应于0.6 \pi rad / sample。 绘制其幅度和相位响应。 用它来过滤1000个样本的随机信号。
+ @- {- g" X( U5 W0 H
- t" s+ I* U" u2 N" {" F[b,a] = ellip(6,5,40,0.6);! S9 w: G$ C$ h8 N) A
freqz(b,a)
) I2 r) y+ M; K: V5 U1 y/ W' M1 o  U8 m1 M* h, u6 ^0 d6 z

8 _/ ^9 v6 m& K+ [: E) R; t9 Y3 E, _- ^3 U/ P$ K
dataIn = randn(1000,1);& v3 y) \' ]9 g6 q" c+ Y5 y& f, m
dataOut = filter(b,a,dataIn);
7 Y6 c! n& ?2 S9 j  a" y6 O2 G: W8 R3 F, E

1 W. |, V0 v1 e) B" l# N  g1 T* K# w, O1 d6 _
[b,a] = ellip(n,Rp,Rs,Wp,ftype) 设计低通,高通,带通或带阻椭圆滤波器,具体取决于ftype的值和Wp的元素数量。 将所得的带通和带阻设计是2n阶。$ {  ^) R0 F/ A7 e/ _' j2 v" c

9 j2 I+ g9 j0 p4 V& A# y+ S/ j# q# C6 q1 M
Bandstop Elliptic Filter
: ^, c/ }; ]! ]  R2 d! G& @$ S% g; R# d; F, w- y! Q: f
! c  D# ^% R7 H& q6 s
Design 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.7 J+ ~: F/ S& W; N1 Z- [
% e3 S' U# M$ n3 R' ]
[b,a] = ellip(3,5,50,[0.2 0.6],'stop');
: {, {1 e, k; S; P' `# ~- [freqz(b,a). g) q  t! G, q# P/ `9 v. [% o

. v8 s. d: i" o! p/ o3 ?dataIn = randn(1000,1);
! H, R; a: w* IdataOut = filter(b,a,dataIn);
% B& A4 w6 M1 Q8 T2 _9 W9 q3 u; U+ W  F" H
" P' |! ]0 s' j% }9 m4 V  V3 j

6 G6 a2 Y! K4 @: [9 X, e[z,p,k] = ellip(___)设计低通,高通,带通或带阻数字椭圆滤波器,并返回其零点,极点和增益。 此语法可包括先前语法中的任何输入参数。( C! h; t' f% x9 x0 _, h

* `3 W$ }# \. {- z! ]- Q设计一个6阶高通椭圆滤波器,其通带边缘频率为300 Hz,对于以1000 Hz采样的数据,对应于0.6\pirad / sample。 指定3 dB的通带纹波和50 dB的阻带衰减。 绘制幅度和相位响应。 将零,极点和增益转换为二阶段以供fvtool使用。
+ X/ E" w; r0 v' |8 [- T5 z3 Z0 E6 J6 g- N. v
[z,p,k] = ellip(6,3,50,300/500,'high');
: z( K6 ?2 g* y0 E6 `* L* bsos = zp2sos(z,p,k);9 f! \# H3 U# Z/ C* U+ Z# m
fvtool(sos,'Analysis','freq')6 l; d0 T. U, K7 n, {
# ~# e5 U3 s- q- c+ _6 E7 n

9 N3 _% d  |$ _! ^# K7 T% t. b' {3 h$ g5 z# L2 V1 m
当然也可以通过原来的方法:
8 A) @' K) x- a% b2 W* i8 t/ v, z0 X1 Y
clc  Z. x  \5 j2 X7 u$ g9 I
clear
# B( e7 F' R5 rclose all
# m3 M& D* e- h 5 \* w: }( p$ g' g1 b* e* U7 P
[b,a] = ellip(6,3,50,300/500,'high');0 B% N9 n: Q, s
freqz(b,a)
3 |  j" w. m" P7 |. Y3 i# A2 {( I

( n$ N+ S' H# j) z$ m2 Q* Q) M5 a& q& k+ P7 O4 D7 f, R# K- ^
[A,B,C,D] = ellip(___) 设计低通,高通,带通或带阻数字椭圆滤波器,并返回指定其状态空间表示的矩阵。1 I6 W- j5 Q! O; l# _+ t; n# g

0 F; ~9 v8 M! O0 g  g) H4 C
: X7 \2 z; T. ?, K; u( U5 i  z$ E" FBandpass Elliptic Filter6 z: n: f" m" a. F, L7 T0 s" }

- c/ t& a! b$ r$ u6 R4 d# }' k% @# w' `  G' c
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.
$ }: X  m/ X  V4 G1 r  l- e( {6 T  @9 k# u
设计一个20阶椭圆带通滤波器与500Hz的低通频带频率和560赫兹的高通频带频率。 指定3 dB的通带纹波,40 dB的阻带衰减和1500 Hz的采样率。 使用状态空间表示。 使用designfilt设计相同的过滤器。
8 A( Q# Y2 v5 H, A$ Y! y9 O# _. o  a( \# G( }. T$ Q
[A,B,C,D] = ellip(10,3,40,[500 560]/750);
, W  D4 H) Z9 [d = designfilt('bandpassiir','FilterOrder',20, ...; m; n4 Y1 }. E, A/ J# ]
    'PassbandFrequency1',500,'PassbandFrequency2',560, ...% h6 g: Y! m! \. m* U: j
    'PassbandRipple',3, ...
' q4 F2 }0 Z. M  Y: S$ k* A    'StopbandAttenuation1',40,'StopbandAttenuation2',40, ...  d4 X8 Z7 ]* [6 t; b3 M: D
    'SampleRate',1500);
6 n# l; [+ B  Q/ B) A$ t; t% q" b5 O2 ]1 W; U
# |& Z! G$ W* ~& L0 s" d5 T& a+ R

: }( }- }  c7 ?" t& hConvert the state-space representation to second-order sections. Visualize the frequency responses using fvtool.
& h7 H! {# q0 p: a5 ^& w# o+ o6 T" H0 U. t+ X
将状态空间表示转换为二阶段。 使用fvtool可视化频率响应。
2 @/ \# J: t" M; W$ d! a9 e
3 a+ Y% i; A& z+ o& F/ Psos = ss2sos(A,B,C,D);
- z  U; F0 a; p! B& z; gfvt = fvtool(sos,d,'Fs',1500);
, N$ b* E# Z' r4 G$ Glegend(fvt,'ellip','designfilt')7 v8 O+ ^+ G1 c+ V" U2 S
* @7 {- U# ?3 ?8 |0 Y' }

) S. }+ d7 I1 T- ]* i8 Q! U5 k7 g4 c' D
[___] = ellip(___,'s') 设计了低通,高通,带通或带阻模拟椭圆滤波器,其通带边缘角频率Wp,通带纹波的Rp分贝和阻带衰减的Rs分贝。
' e/ X: V0 f$ R% `- M. x$ L* G- X9 |0 K* \- F, [* _
最后一个就不介绍了,具体参考MATLAB数据手册,在命令窗口输入:
( j/ I; x2 `: Q# v7 \3 [4 h$ M- S, l* _  m# k* @
doc ellip
: e  h% B0 H$ @3 @6 x& `& [) [
" I2 t# U! N7 b9 G获得相关帮助。
; u1 ]7 p6 B: H' Z

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 15:01 , Processed in 0.250000 second(s), 27 queries , Gzip On.

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

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

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