Está en la página 1de 8

Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación

POLOS REALES
1
H ( s) = n
⎛ s ⎞
⎜⎜1 + ⎟⎟
⎝ w0 ⎠

La frecuencia de corte de -3dB (wc) coincide con w0 (wc=w0) sólo cuando n=1. Para valores de n>1, la
frecuencia de corte wc de -3dB estará dada por la solución de la ecuación siguiente:
1 1
= n
2
⎛ ⎛ w ⎞2 ⎞ 2
⎜1 + ⎜ c ⎟ ⎟
⎜ ⎜⎝ w0 ⎟⎠ ⎟
⎝ ⎠

Que despejando wc resulta:

1
wc = w0 2 − 1 n

Con lo cual cuando n>1, wc será significativamente menor a w0.


Por ejemplo para n=4: wc = 0.435w0

En matlab podemos ver las transferencias de los sistemas de orden 1, 2, 3 y 4:


>> H1=zpk([],[-1],1)
>> H2=zpk([],[-1; -1],1)
>> H3=zpk([],[-1; -1; -1],1)
>> H4=zpk([],[-1; -1; -1; -1],1)
>> figure(1); bode (H1, 'b-', H2, 'g:', H3, 'r-.', H4, 'k--'); legend('n=1','n=2','n=3','n=4'); grid on;
0 Bode Diagram

-50
Magnitude (dB)

-100

-150
0

-45

-90

-135
Phase (deg)

-180

-225
n=1
-270 n=2
-315 n=3
n=4
-360
-2 -1 0 1 2
10 10 10 10 10
Frequency (rad/sec)

Ing. Pablo L. Joaquim – Ing. Raul Panetta 1/8


Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación
FILTRO DE BUTTERWORTH
1
H ( s) =
B( s)
B(s) es una función polinómica que dependerá del orden del filtro. Este polinomio posee polos complejos
conjugados igualmente espaciados a lo largo del semiplano izquierdo del plano complejo, ubicados sobre un
círculo de radio wc.

n B(s)
1 ⎛ s ⎞
⎜⎜1 + ⎟⎟
⎝ wc ⎠
2 ⎛ 2

⎜1 + 2 s + ⎛⎜ s ⎞⎟ ⎟
⎜ wc ⎜⎝ wc ⎟⎠ ⎟
⎝ ⎠
s ⎞⎛⎜ s ⎛ s ⎞ ⎞⎟
3 2 2 3
⎛ s ⎛ s ⎞ ⎛ s ⎞
⎜⎜1 + ⎟⎟ 1 + + ⎜⎜ ⎟⎟ = 1 + 2 + 2⎜⎜ ⎟⎟ + ⎜⎜ ⎟⎟
⎝ wc ⎠⎜⎝ wc ⎝ wc ⎠ ⎟⎠ wc ⎝ wc ⎠ ⎝ wc ⎠
4 ⎛ 2
⎞⎛ 2
⎞ 2 3
⎜1 + 0.7654 s + ⎛⎜ s ⎞⎟ ⎟⎜1 + 1.848 s + ⎛⎜ s ⎞⎟ ⎟ = 1 + 2.6131 s + 3.4142⎛⎜ s ⎞⎟ + 2.6131⎛⎜ s ⎞⎟ + ⎛⎜ s ⎞⎟
⎜ wc ⎜⎝ wc ⎟⎠ ⎟⎜ wc ⎜⎝ wc ⎟⎠ ⎟ wc ⎜w ⎟
⎝ c⎠
⎜w ⎟ ⎜w ⎟
⎝ c⎠ ⎝ c⎠
⎝ ⎠⎝ ⎠

En matlab podemos ver las transferencias de los sistemas de orden 1, 2, 3 y 4:


>> [B,A]=butter(1,1,'s');
>> H_Butterworth_n1=tf(B,A);
>> [B,A]=butter(2,1,'s');
>> H_Butterworth_n2=tf(B,A);
>> [B,A]=butter(3,1,'s');
>> H_Butterworth_n3=tf(B,A);
>> [B,A]=butter(4,1,'s');
>> H_Butterworth_n4=tf(B,A);
>> figure(2);
>> bode(H_Butterworth_n1, 'b-', H_Butterworth_n2, 'g:', H_Butterworth_n3, 'r-.', H_Butterworth_n4, 'k--');
>> grid on;
>> legend('Butterworth n=1', 'Butterworth n=2', 'Butterworth n=3', 'Butterworth n=4');
0 Bode Diagram

-50
Magnitude (dB)

-100

-150
0

-45

-90

-135
Phase (deg)

-180

-225
Butterw orth n=1
-270 Butterw orth n=2
Butterw orth n=3
-315
Butterw orth n=4
-360
-2 -1 0 1 2
10 10 10 10 10
Frequency (rad/sec)

Ing. Pablo L. Joaquim – Ing. Raul Panetta 2/8


Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación
Para ver la configuración de polos y ceros de los filtros Butterworth previamente diseñados:

>> figure(3);
>> [z,p]=tfdata(H_Butterworth_n1,'v'); %Obtenemos los polos y ceros de la función
>> eje=subplot(2,2,1); %Cortamos el gráfico en 4 (2x2) y seleccionamos el 1er sector
>> zplane(z,p,eje); legend('Butterworth n=1'); %gráfico de polos y ceros de la función
>> [z,p]=tfdata(H_Butterworth_n2,'v');
>> eje=subplot(2,2,2);
>> zplane(z,p,eje); legend('Butterworth n=2');
>> [z,p]=tfdata(H_Butterworth_n3,'v');
>> eje=subplot(2,2,3);
>> zplane(z,p,eje); legend('Butterworth n=3');
>> [z,p]=tfdata(H_Butterworth_n4,'v');
>> eje=subplot(2,2,4);
>> zplane(z,p,eje); legend('Butterworth n=4');

Butterworth n=1 Butterworth n=2

1 1

0.8 0.8

0.6 0.6

0.4 0.4
Imaginary Part

Imaginary Part
0.2 0.2

0 0

-0.2 -0.2

-0.4 -0.4

-0.6 -0.6

-0.8 -0.8

-1 -1

-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1


Real Part Real Part

Butterworth n=3 Butterworth n=4

1 1

0.8 0.8

0.6 0.6

0.4 0.4
Imaginary Part

Imaginary Part

0.2 0.2

0 0

-0.2 -0.2

-0.4 -0.4

-0.6 -0.6

-0.8 -0.8

-1 -1
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
Real Part Real Part

Ing. Pablo L. Joaquim – Ing. Raul Panetta 3/8


Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación
FILTRO DE CHEBYSHEV
1
T ( s)
T(s) es una función polinómica que dependerá del orden del filtro. Este polinomio posee polos complejos
conjugados ubicados sobre el semiplano izquierdo del plano complejo, sobre una elipse inscripta dentro de una
circunferencia de radio wc. Los polos se ubican a distintas frecuencias (no están sobre la misma circunferencia
de radio wc como ocurría en un Butterworth).

n T(s)
1 ⎛ s ⎞
⎜⎜1 + ⎟⎟
⎝ wc ⎠
2 1 1
.
2 ⎛ ⎞ ⎞⎟
2
⎜1 + 0.7654⎛⎜ s ⎞ ⎛ s
⎜ ⎜ 0.8409 w ⎟⎟ + ⎜⎜ 0.8409 w ⎟⎟ ⎟
⎝ ⎝ c ⎠ ⎝ c ⎠

3 1
⎛ ⎛ ⎞ ⎞⎛⎜ ⎞ ⎞⎟
2
s ⎛ s ⎞ ⎛ s
⎜1 + ⎜ ⎟⎟ ⎜ ⎟ ⎜ ⎟
⎜ ⎜ 0.2980 w ⎟ ⎟⎜1 + 0.3254⎜ 0.9159 w ⎟ + ⎜ 0.9159 w ⎟ ⎟
⎝ ⎝ c ⎠⎠
⎝ ⎝ c ⎠ ⎝ c ⎠

4 1 1
.
2 ⎛ ⎞ ⎞⎟⎛⎜
2
⎞ ⎞⎟
2
⎜1 + 0.1789⎛⎜ s ⎞ ⎛ s ⎛ s ⎞ ⎛ s
⎜ ⎜ 0.9502 w ⎟⎟ + ⎜⎜ 0.9502 w ⎟⎟ ⎟⎜1 + 0.9276⎜⎜ 0.4425w ⎟⎟ + ⎜⎜ 0.4425w ⎟⎟ ⎟
⎝ ⎝ c ⎠ ⎝ c ⎠
⎠⎝ ⎝ c ⎠ ⎝ c ⎠

En matlab podemos ver las transferencias de los sistemas de orden 1, 2, 3 y 4:


>> [B,A]=cheby1(1,10,1,'s');
>> H_Chebyshev_n1=tf(B,A);
>> [B,A]= cheby1(2,10,1,'s');
>> H_Chebyshev_n2=tf(B,A);
>> [B,A]= cheby1(3,10,1,'s');
>> H_Chebyshev_n3=tf(B,A);
>> [B,A]= cheby1(4,10,1,'s');
>> H_Chebyshev_n4=tf(B,A);
>> figure(4);
>> bode(H_Chebyshev_n1, 'b-', H_Chebyshev_n2, 'g:', H_Chebyshev_n3, 'r-.', H_Chebyshev_n4, 'k--');
>> grid on;
>> legend('Chebyshev n=1', 'Chebyshev n=2', 'Chebyshev n=3', 'Chebyshev n=4');
20 Bode Diagram

-20
Magnitude (dB)

-40

-60

-80

-100

-120
0

-45

-90

-135
Phase (deg)

-180

-225
Chebyshev n=1
-270 Chebyshev n=2
-315 Chebyshev n=3
Chebyshev n=4
-360
-3 -2 -1 0 1
10 10 10 10 10
Frequency (rad/sec)

Ing. Pablo L. Joaquim – Ing. Raul Panetta 4/8


Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación
Para ver la configuración de polos y ceros de los filtros Chebyshev previamente diseñados:

>> figure(5);
>> [z,p]=tfdata(H_Chebyshev_n1,'v'); %Obtenemos los polos y ceros de la función
>> eje=subplot(2,2,1); %Cortamos el gráfico en 4 (2x2) y seleccionamos el 1er sector
>> zplane(z,p,eje); legend('Chebyshev n=1'); %gráfico de polos y ceros de la función
>> [z,p]=tfdata(H_Chebyshev_n2,'v');
>> eje=subplot(2,2,2);
>> zplane(z,p,eje); legend('Chebyshev n=2');
>> [z,p]=tfdata(H_Chebyshev_n3,'v');
>> eje=subplot(2,2,3);
>> zplane(z,p,eje); legend('Chebyshev n=3');
>> [z,p]=tfdata(H_Chebyshev_n4,'v');
>> eje=subplot(2,2,4);
>> zplane(z,p,eje); legend('Chebyshev n=4');

Chebyshev n=1 Chebyshev n=2

1 1

0.8 0.8

0.6 0.6

0.4 0.4
Imaginary Part

Imaginary Part
0.2 0.2

0 0

-0.2 -0.2

-0.4 -0.4

-0.6 -0.6

-0.8 -0.8

-1 -1

-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1


Real Part Real Part

Chebyshev n=3 Chebyshev n=4

1 1

0.8 0.8

0.6 0.6

0.4 0.4
Imaginary Part

Imaginary Part

0.2 0.2

0 0

-0.2 -0.2

-0.4 -0.4

-0.6 -0.6

-0.8 -0.8

-1 -1
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
Real Part Real Part

Los polos se ubican sobre una elipse de radio menor a.wp y radio mayor b.wp, siendo:

1⎛ − ⎞
1 1
jw
a = ⎜⎜α N − α N ⎟⎟
2⎝ ⎠
b.wp
1⎛ ⎞
1 1

σ b = ⎜⎜ α N + α N ⎟

2⎝ ⎠
1
a.wp α= + 1− ξ 2
ξ
Ing. Pablo L. Joaquim – Ing. Raul Panetta 5/8
Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación
FILTRO DE BESSEL
K0
H ( s) =
s
Ben ( )
w0
Ben(s) es una función polinómica que dependerá del orden del filtro.
K0 se elige de forma tal que la ganancia en dc sea 1
w0 se adopta para lograr la wc deseada.
Ben(s) es un polinomio que se genera de la siguiente forma:
Be0(s)=1
Be1(s)=1+s
Ben(s)=(2n-1). Ben-1(s)+s2. Ben-2(s)

Los filtros de Bessel tienen menor pendiente que un Butterworth; sin embargo su principal ventaja reside en
que poseen fase lineal en la banda de paso, lo que da como resultado un retardo de grupo constante.

n Ben(s) K0
1 1+ s 1
2 3 + 3s + s 2 3
3 15 + 15s + 6 s 2 + s 3 15
4 105 + 105s + 45s 2 + 10 s 3 + s 4 105

Matlab nos pide el valor de w0 que en este caso será la frecuencia a partir de la cual se considera que tenemos
un retardo de grupo constante.
Para que la frecuencia de corte (wc) sea de 1r/s es necesario utilizar los siguientes valores de w0:
n w0
1 1
2 1.361654129
3 1.755672389
4 2.113917675

Para obtener las expresiones de la tabla anterior el valor de w0 a utilizar debe ser:
n w0
1 1
2 1.732
3 2.466
4 3.201

En matlab podemos ver las transferencias de los sistemas de orden 1, 2, 3 y 4:


>> [B,A]=besself(1,1);
>> H_Bessel_n1=tf(B,A);
>> [B,A]= besself(2,1.732);
>> H_Bessel_n2=tf(B,A);
>> [B,A]= besself(3,2.466);
>> H_Bessel_n3=tf(B,A);
>> [B,A]= besself(4,3.201);
>> H_Bessel_n4=tf(B,A);
>> figure(6);
>> bode(H_Bessel_n1, 'b-', H_Bessel_n2, 'g:', H_Bessel_n3, 'r-.', H_Bessel_n4, 'k--');
>> grid on;
>> legend('Bessel n=1', 'Bessel n=2', 'Bessel n=3', 'Bessel n=4');

Ing. Pablo L. Joaquim – Ing. Raul Panetta 6/8


Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación

0 Bode Diagram

-20

-40
Magnitude (dB)

-60

-80

-100

-120
0

-90
Phase (deg)

-180

Bessel n=1
-270
Bessel n=2
Bessel n=3
Bessel n=4
-360
-2 -1 0 1 2
10 10 10 10 10
Frequency (rad/sec)

CURVAS COMPARATIVAS

>> H4=zpk([],[-2.298; -2.298; -2.298; -2.298],27.88)


>> [B,A]=butter(4,1,'s');
>> H_Butterworth_n4=tf(B,A);
>> [B,A]= cheby1(4,10,1,'s');
>> H_Chebyshev_n4=tf(B,A);
>> [B,A]= besself(4,2.113917675);
>> H_Bessel_n4=tf(B,A);
>> figure(7); bode(H4, 'b-', H_Butterworth_n4, 'g:', H_Chebyshev_n4, 'r-.', H_Bessel_n4, 'k--'); grid on;
>> legend('Polos reales n=4', 'Butterworth n=4', 'Chebyshev n=4', 'Bessel n=4');

0 Bode Diagram

-20 Todas las curvas se


-40 parametrizaron en
-60 función de wc=1r/s.
Magnitude (dB)

-80

-100
Para determinar H4
-120
debimos expresar la
-140 transferencia en función
-160 de w0, siendo:
n
-180
w0
H ( s) =
0
n
⎛ s ⎞
-45

-90 ⎜⎜1 + ⎟⎟
-135 ⎝ w0 ⎠
Phase (deg)

-180 wc
-225
w0 =
1
2 n −1
Polos reales n=4
-270
Butterw orth n=4
-315 Chebyshev n=4
Bessel n=4
-360
-2 -1 0 1 2
10 10 10 10 10
Frequency (rad/sec)

Ing. Pablo L. Joaquim – Ing. Raul Panetta 7/8


Teoría de circuitos II - UTN – FRBA Filtrado-Funciones de aproximación

Retardo de grupo de un filtro


Butterworth de 4º orden

Retardo de grupo de un filtro


Chebishev de 4º orden

Retardo de grupo de un filtro


Bessel de 4º orden

Ing. Pablo L. Joaquim – Ing. Raul Panetta 8/8

También podría gustarte