Está en la página 1de 4

Aproximación de Filtros IIR

Andres Andino, Joel Gallo


Departamento de Eléctrica y electrónica
Universidad de las Fuerzas Armadas ESPE
Sangolqui, Ecuador
adandino@espe.edu.ec, @espe.edu.ec

Resumen: En el presente informe se presenta la realización


laboratorio práctico número seis, en el cual se pretende
mejorar la habilidad en la aplicación de los filtros IIR en
herramientas matemáticas, como Matlab. Mediante la
realización de experimentos y ejercicios del libro base.
donde el orden es igual al máximo de M y N. La función
de transferencia en Z del filtro es:
Palabras clave: Filtros IIR

I. OBJETIVO
Familiarizar al estudiante con el diseño de filtros IIR
usando Matlab.
Transformación Bilineal:
II. ACTIVIDADES Existen varias maneras para el mapeo del plano s al plano
 Realizar los experimentos de la sección Do- it- z; tales como; las aproximaciones en diferencias hacia
yourself del libro texto. adelante o hacia atrás.
 Resolver los ejercicios del libro texto usando Matlab.
La transformación bilineal es otro método que mapea todo
el semiplano izquierdo del plano s en el círculo unitario en
III. INTRODUCCIÓN
el plano z. La transformación bilineal mapea del plano s al
En las actividades a continuación el estudiante tiene como plano z mediante la siguiente relación:
principal objetivo familiarizarse con la herramienta
matemática Matlab, explorando de una forma práctica el
filtrado de señales usando Matlab.

Mediante este laboratorio se realizarán los experimentos


planteados en el libro de texto, para posteriormente
donde Ts es el tiempo de muestreo del sistema de tiempo
analizar los resultados obtenidos tanto de forma manual,
discreto.
como utilizando las funciones de Matlab que se
mencionarán en el fundamento teórico. Este método describe una forma de posicionar números
complejos jw con Res[s]=0 y pertenecientes al plano S, en
IV. MARCO TEÓRICO la circunferencia con |z|=1 pertenecientes al plano z.
Antes de comenzar el presente trabajo en preciso tener el
debido conocimiento acerca del funcionamiento de varios
de los comandos que utilizaremos en Matlab, como son el
de filtros IIR.

Filtros IIR:
Son sistemas cuya salida depende además de salidas
anteriores y que, estando en reposo, al ser estimulados
con una entrada impulsiones su salida no vuelve al
reposo, de ahí el calificativo de filtros de respuesta
impulsional infinita (IIR). La ecuación en
diferencias general es de la forma:
V. PROCEDIMIENTO

 Experimento 1:
En este experimento se buscará diseñar un filtro
basándose en la aproximación elíptica. Para lo cual, Ahora, si se introduce una función x1, a una determinada
se comenzará por plantear los parámetros de un filtro frecuencia, se obtiene un y1.
pasa-banda:
Fs = 10000/(2*pi); Ts = 1/Fs; time = 0:Ts:(1-Ts);
Ap = 0.5; Ar = 65;
f1 = 980;
wr1 = 850/5000; wr2 = 1150/5000; x1 = cos(f1.*time); y1 =
wp1 = 980/5000; wp2 = 1020/5000; filter(b,a,x1);
plot(time, x1, 'k')
plot(time, y1, 'g')
Luego, con las funciones: axis([0.82 0.85 -1 1])
[n,wn] = ellipord(wp,wr,Ap,Ar);
[b,a] = ellip(n,Ap,Ar,wp);

Enviando como vector:


wp = [wp1 wp2];
wr = [wr1 wr2];

Dan como resultado en a,b los coeficientes de la función


de transferencia del filtro. Y en n, wn, el mínimo orden del
filtro análogo, y la frecuencia de corte de forma respectiva.
En este punto, se puede observar el comportamiento del
filtro respecto al retardo de grupo que lo caracteriza de la
siguiente manera:
grpdelay(b,a,5000,10000)
axis([950 1050 0 350])

Obteniendo el grafico a continuación:


Luego, para comparar a una frecuencia diferente:
f2 = 990;
x2 = cos(f2.*time); y2 =
filter(b,a,x2);
0.4913
𝐻(𝑠) =
𝑠3 + 0.9883𝑠 2 + 1.2384𝑠 + 0.4913

Introduciendo en vectores los coeficientes de la


función de transferencia. Y dado Fs=2Hz.

[bd, ad]=bilinear(b,a,Fs);
fvtool(bd, ad) ; permite graficar.

Magnitude Response (dB)


0

-10

-20

Magnitude (dB)
-30

-40
Se obtienen resultados distintos si la frecuencia que se
plantea esta dentro de las frecuencias rechazadas por el -50

filtro así:
-60

f1 = 600; -70
0 1 2 3 4 5 6 7 8 9 10
x1 = cos(f1.*time); y1 = Frequency (Hz)
filter(b,a,x1);

plot(time, x1, 'k') hold on;


plot(time, y1, 'g') De esta forma se salta del mundo análogo a un mundo
axis([0.82 0.85 -1 1]) digital, este método no es el único, también existe la
invarianza al impulso, sin embargo el mismo será
desarrollado más adelante.

 Ejercicio A:
Crear una señal de entrada compuesta de tres
componentes sinusoidales de frecuencias 770Hz,
852Hz y 941Hz en Matlab con Ωs= 8 kHz. Utilice los
tres filtros diseñados en el ejercicio 6,7 para aislar
cada componente de una señal diferente.

Para el primer filtro, los bordes de la banda de rechazo


son menos frecuencias de 697 Hz y 852. En el
segundo filtro, los bordes de la banda de rechazo son
770 y 941 Hz.

Se observa que para una frecuencia rechazada la


amplitud de la salida tiende a cero.

 Experimento 2:
El siguiente experimento, se desea obtener una
función de transferencia dada en el domino S, al
dominio de Z. Uno de los métodos para realizar esta
transformación es la Aproximación Bilineal.
Teniendo:
 Ejercicio B:  Muchas veces la función podría estar graficada, no
Para este experimento se ha planteado una función de obstante la delimitación de los ejes podría perjudicar
transferencia análoga, la cual se desea obtener en dicha apreciación. La función Axis(); permite enviar
forma digital. Existen dos métodos: Invarianza al por parámetros los valores máximos y mínimos de
impulso y aproximación Bilineal. Matlab posee los ejes para un mejor punto de vista.
funciones sencillas que son: “Impinvar” y “Bilinear”. VII. RECOMENDACIONES
Dada la función de transferencia:  Es de suma importancia seguir el proceso
1 indicado al momento de ingresar o escribir el
𝐻(𝑠) = 2 código correspondiente, ya que por mala
(𝑠 + 0.7622𝑠 + 1.33863)(𝑠 + 0.76722)
colocación de algún dato el programa no
funcionara como se tiene previsto.
Gráfica obtenida:  Es importante que antes de usar las funciones
propias de matlab desconocidas, el estudiante se
informe de su funcionamiento y los parámetros
que deben ser ingresados en esta, para que al
momento de su implementación no haya una
demora extendida por no saber que se necesita
ingresar.

VIII. BIBLIOGRAFÍA
[1] Paulo S. R. Diniz, Eduardo A. B. da Silva, Sergio
L. Netto. Digital Signal Processing, System Analysis
and Design. 2nd ed. Cambridge University Press 2002,
2010.
Como podemos visualizar en la distintas imágenes el ruido [2] T. A. Davis, MATLAB primer, 8th ed. Chapman
afecta a la señal de una forma muy grave si el ruido no es & Hall/CRC, 2011.
muy notorio se puede identificar claramente la
[3] A. V. Oppenheim, A. S. Willsky, and S. H.
componente principal de la señal que se desea, caso
Nawab, Signals & Systems, 2nd ed. Upper Saddle
contrario es casi imposible identificar cual es la River, NJ, USA: Prentice-Hall, Inc., 1996.
componente fundamental de la señal deseada

VI. CONCLUSIONES

 Para el diseño de filtros de mayor nivel de alcance de


filtrado como por ejemplo el de la disminución de
armónicos en sistemas eléctricos de potencia.
 Como se notó en las gráficas de resultados la
realización de este programa nos facilita en gran
medida el diseño de los filtros digitales IIR.
 A más del diseño de filtros, es posible catalogar un
filtro por el retardo que presenta, la función
grpDelay(); permite visualizar este
comportamiento del filtro.
 Matlab posee funciones para el diseño de filtros,
sin embargo el programador debe considerar el
ingreso de los parámetros de los filtros de tal
forma que exista simetría entre ellos para un
mejor diseño.

También podría gustarte