Documente Academic
Documente Profesional
Documente Cultură
FACULTAD DE CIENCIAS DE LA
ELECTRNICA
Materia:
Procesamiento Digital de Seales
Instructor
Hctor Santiago Ramrez
Prctica 1
Diseo de filtros FIR e IIR
Equipo:
1 | Pgina
Introduccin:
En el transcurso de las ltimas dcadas se han presentado grandes avances en el diseo
computacional, dando prioridad a factores como la velocidad y la eficiencia. Estos factores
han beneficiado diferentes reas como: el tratamiento, el almacenamiento, el estudio y la
transmisin de informacin en forma digital. Por esta razn, el tratamiento digital de
seales se ha convertido, hoy por hoy, en una de las herramientas ms utilizadas para dar
solucin a un porcentaje considerable de problemas en la ingeniera.
El procesamiento digital de seales es una herramienta muy til en casos como la
estimacin de parmetros y las caractersticas de sistemas y seales, eliminacin o
reduccin de ruido e interferencias y la transformacin de la respuesta espectral de seales,
entre otros. Su utilidad repercute en aplicaciones como el estudio de seales biomdicas
para el diagnstico de enfermedades, la compresin de informacin para la transmisin de
datos y el procesamiento de audio y video; ejemplos de algunas de las aplicaciones ms
comunes que se encuentran hoy en da.
De lo anteriormente expuesto se logra vislumbrar parte de la importancia de los filtros
digitales, al ser stos una de las herramientas ms utilizadas en el tratamiento digital de
seales.
Por tal motivo, en esta prctica se disearn filtros FIR (Respuesta finita al impulso) e IIR
(Respuesta infinita al impulso) con la ayuda de MATLAB, se har uso de las instrucciones
y herramientas que este software proporciona, las cuales permiten obtener el valor de los
coeficientes de los polinomios que integran la funcin de trasferencia del filtro y que
satisfacen los requerimientos de diseo, tambin se realizaran las grficas correspondiente a
la respuesta en magnitud y fase de cada filtro FIR e IIR con el propsito de verificar el
cumplimiento de las caractersticas requeridas.
Marco Terico:
Filtros Digitales
Un filtro digital es un algoritmo matemtico que realiza ciertas operaciones en la seal de
entrada, para obtener una seal deseada a la salida. Hay dos motivos para implementar un
filtro digital:
1. Mejorar la calidad de la seal de entrada
2. Procesar u obtener cierta informacin de tal seal
2 | Pgina
En el primer caso, el filtro digital es un sistema que transforma las entradas de una manera
especfica eliminando ciertas componentes no deseadas. Cuando esas componentes no
deseadas se describen en funcin de sus contenidos de frecuencia, los filtros, se denominan
filtros selectivos en frecuencia. El segundo caso es una caracterstica nica de los filtros
digitales. Debido a que el filtro procesa matemticamente la informacin de entrada, es
posible extraer datos que de otra manera permaneceran ocultos o disimulados, en la
misma.
En los ltimos aos, los filtros digitales han sustituido a los filtros analgicos en muchas
aplicaciones debido a su mayor fiabilidad, mayor flexibilidad y superiores prestaciones.
Por estas razones, ciertas aplicaciones en las que se desea filtrar una seal en tiempo
continuo, un filtro analgico se emplea en su versin digital.
Dado un conjunto de especificaciones, el diseo de un filtro digital consiste en obtener una
expresin analtica a las caractersticas del filtro deseadas, en forma de una funcin de
transferencia H(z).
Las ventajas de los filtros digitales son:
Limitacin de velocidad
Efectos de longitud finita de las palabra
Tiempos de diseo y desarrollo
Los filtros digitales puede clasificarse en FIR e IIR, a continuacin se describen sus
caractersticas y mtodos de diseo.
Diseo de filtros FIR
Los filtros FIR reciben este nombre ya que su salida depende nicamente de la entrada, de
forma que el efecto de un impulso en la entrada se extingue en un tiempo finito. Un filtro
FIR de longitud M con entrada x(n) y salida y(n) se describe mediante la ecuacin de
diferencias:
3 | Pgina
Donde bk son los coeficientes del filtro, y su funcin de transferencia discreta es:
Por otra parte se puede expresar la salida del filtro y(n) como una convolucin de la
entrada x(n) con la respuesta impulso del filtro h(n):
Las ecuaciones anteriores son idnticas, por lo tanto, los coeficientes bk =h(k) .
Los filtros FIR son siempre estables y son capaces de tener una respuesta de fase que es
lineal, lo que equivale a decir que su respuesta tiene un retraso constante. Se puede
demostrar que la respuesta de un filtro FIR es de fase lineal si los coeficientes h(n)
cumplen:
Es decir, los coeficientes tienen algn tipo de simetra. El mayor problema de los filtros
FIR es que para cumplir con las mismas especificaciones de diseo que los filtros IIR,
requieren un filtro de orden mucho mayor. Hay dos mtodos de diseo de filtros FIR:
Mtodo de diseo usando ventanas (windowing)
Este mtodo consiste en la convolucin H D( )*W( ) indicada en la siguiente figura
Pasa bajo
Pasa alto
Pasa banda
Rechaza banda
Rectangular
Hanning
Hamming
Blackman
Kaiser
Es importante mencionar que no todo sistema es IIR, adems un filtro IIR requiere un orden
mucho menor para cumplir las especificaciones de diseo, sin embargo estos ltimos no
pueden disearse para tener fase lineal. Existen tcnicas de compensacin de fase mediante
la utilizacin de filtros pasa todo, sin embargo esto aumenta la longitud total del filtro. Si
no es necesario que el sistema sea causal (no funcionar en tiempo real) se puede conseguir
un filtro IIR de fase lineal realizando un filtrado bidireccional este consiste en filtrar la
seal, invertir el orden de las muestran obtenidas y volver a filtrar de nuevo. (MATLAB
Instruccin filt())
Existen dos filosofas de diseo de filtros IIR.
Este tipo de filtros puede ser inestables aunque cuando se diseen para ser estables.
Objetivo General:
Al finalizar la prctica, el alumno adquirir el conocimiento sobre el uso de las
herramientas disponibles en el software matemtico MATLAB, para el diseo y
caracterizacin de filtros FIR e IIR.
Objetivo Particulares:
Parmetro
Fs
Ap
As
Rp
Fp1
Fp2
Fs1
Fs2
Nombre
Frecuencia de muestreo
Ganancia en la banda de paso
Rechazo mnimo en la banda de rechazo
Rizo mximo en la banda de paso
Frecuencia de paso
Frecuencia de paso 2
Frecuencia de rechazo 1
Frecuencia de rechazo
Valor
8000 muestras/s
0dB
60dB
1dB
1.5kHz
2.5kHz
1.2kHz
2.8kHz
Los filtros FIR sern diseados empleando las herramientas disponibles en MATLAB para
el diseo de filtros FIR e IIR, mediante los siguientes mtodos:
Adems del diseo, los filtros sern caracterizados en frecuencia y comparados entre si.
Desarrollo:
Para el desarrollo de esta prctica realice los siguientes pasos:
Diseo Filtros FIR con MATLAB
8 | Pgina
Anlisis de resultados:
Normalizacin en frecuencia
Las instrucciones proporcionadas por MATLAB requieren que los valores de las
frecuencias de paso y rechazo normalizadas, por tal motivo se realizo una normalizacin
en frecuencia obteniendo los siguientes valores:
Frecuencia (KHz)
1.5
2.5
1.2
2.8
Frecuencia Normalizada
0.375
0.625
0.3
0.7
ventana, sin embargo se tuvo que realizar modificaciones al orden del filtro y a las
frecuencias de corte, debido a que, con los valores de las frecuencias calculadas no se
cumpla con las especificaciones del filtro.
b=fir1(50,[0.37 0.63],'bandpass');
freqz(b
[N,fo,ao,W]=firpmord([1200,1500,2500,2800],[0,1,0],[0.001,0.1,0.001],8000);
B=firpm(N,fo,ao,W);
freqz(B)
En la siguiente grfica se muestran las respuestas de magnitud y fase del filtro pasa-banda
FIR, obtenidas a partir de los diferentes mtodos de diseo (mtodo de la ventana, muestreo
en frecuencia y diseo ptimo) con la finalidad de realizar una comparacin entre los
resultados generados.
Figura 6.- Comparacin de las respuesta en magnitud y fase de los filtros FIR diseados
El algoritmo anterior calcula el filtro Butterworth con las caractersticas solicitadas, donde
la primera lnea calcula el orden del filtro que se pretende disear, la segunda lnea
determina el valor de los coeficientes de los polinomios de la funcin de transferencia del
filtro IIR y finalmente la tercera lnea sirve para realizar la grafica de la respuesta en
magnitud y fase del filtro diseado de acuerdo a los resultados obtenidos.
El algoritmo anterior se utiliza para disear filtros Chebyshev, la primera lnea calcula el
orden del filtro, la segunda lnea determina los coeficientes de los polinomios de la funcin
de transferencia del filtro Chebyshev y finalmente la tercera lnea sirve para graficar la
respuesta en magnitud y fase del filtro Chebyshev diseado.
12 | P g i n a
El algoritmo anterior se utiliza para disear filtros Chebyshev inversos, la primera lnea
calcula el orden del filtro, la segunda lnea determina los coeficientes de los polinomios de
la funcin de transferencia del filtro Chebyshev inverso y finalmente la tercera lnea sirve
para graficar la respuesta en magnitud y fase del filtro Chebyshev inverso diseado.
13 | P g i n a
El algoritmo anterior se utiliza para disear filtros Elpticos, la primera lnea calcula el
orden del filtro, la segunda lnea determina los coeficientes de los polinomios de la funcin
de transferencia del filtro elptico y finalmente la tercera lnea sirve para graficar la
respuesta en magnitud y fase del filtro elptico diseado.
En la siguiente grfica se muestran las respuestas de magnitud y fase del filtro pasa-banda
IIR, obtenidas a partir del diseo de diferentes filtros analgicos (filtro Butterworth,
Chevyshev, Chevyshev inverso y elptico) con la finalidad de realizar una comparacin
entre los resultados generados.
14 | P g i n a
Figura 11.- Comparacin de las respuesta en magnitud y fase de los filtros FIR diseados
Filtro
Orden
Cumple las
especificaciones?
FIR
fir1()
50
Si las cumple
Posee
fase
lineal?
Si
FIR
fir2()
60
Si las cumple
Si
FIR
firpm ()
48
Si las cumple
Si
Comentarios
IIR
butter()
14
No
IIR
Cheby1()
No
IIR
Cheby2()
No
IIR
ellip()
No
Para cumplir con las especificaciones de los filtros FIR se tuvo que ajustar el valor del
orden del filtro y moverse en la frecuencia hasta cumplir con lo que se solicitaba en la
prctica.
Las funciones que proporciona MATLAB para el diseo de Filtros IIR satisfacen los
requisitos de diseo, siempre y cuando se introduzcan adecuadamente los valores de las
frecuencias de corte y ganancia para cada banda. No se requiere de un proceso de reajuste
como en los filtros FIR.
El orden de los filtros FIR es mucho mayor en comparacin con el orden de los filtros IIR,
esto implica un mayor consumo en recursos computacionales para su implementacin sin
16 | P g i n a
embargo ofrecen la ventaja de ser estables y poseer una fase lineal, caracterstica que los
filtros IIR carecen.
Conclusiones:
Erika Yazmin Tern Bahena
Los filtros FIR tiene la caracterstica especial de ser estables y poseer una fase lineal,
situacin que nos permite procesar una seal sin distorsionar su fase (estos filtros son
ideales para aplicaciones de audio, debido a que todas las componentes frecuenciales de la
seal de audio atraviesan el filtro con un retraso constante no vindose modificada su fase),
sin embargo, para poder llevar a cabo la implementacin de un filtro FIR se requiere de una
mayor cantidad de recursos debido a que son filtros de un orden mucho mayor en
comparacin de los filtros IIR, los cuales tienen la desventaja de poseer una fase no lineal
pero cuya implementacin es mas sencilla al requerir menor cantidad de recursos. El
desarrollo de esta prctica nos permiti conocer los mtodos de diseo de filtros digitales
FIR e IIR as como las herramientas que nos proporciona MATLAB para facilitar el
calculo de los coeficientes de los polinomios que conforman la funcin de transferencia del
filtro a disear as como para el anlisis de las repuestas de magnitud y fase.
Francisco Lira Ramos
Durante el diseo de los filtros FIR es notable que para cumplir las caractersticas deseadas
se necesita de un orden mayor, podemos decir que la fase de un filtro FIR es lineal y que
para cumplir las caractersticas deseadas es necesario moverse en frecuencia y orden y as
obtener un ajuste optimo, otro detalle muy importante es que manejamos los mtodos de
ventaneo, muestreo en la frecuencia y de mnimos cuadrados, con la finalidad de ver sus
ventajas y desventajas existentes de cada uno.
Mientras que en el Diseo de filtros IIR a diferencia de los FIR, para cumplir las
caractersticas deseadas el filtro IIR el orden es menor y la fase no es lineal, esto hace que
el sistema se vuelva inestable debido a su fase, para volverlo lineal en fase se puede
arreglar con un pasa todo y de esa forma de vuelve lineal; o en otro caso utilizar algunas de
las tcnicas de compensacin ya conocidas.
17 | P g i n a
Bibliografa:
Apndice
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%FILTROS FIR%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Filtro pasa-banda FIR (Mtodo de la ventana fir1)
b = fir1(50,[0.37 0.63],'bandpass');
freqz(b)
%Filtro pasa-banda FIR (Muestreo en frecuencia fir2)
b = fir2(60,[0 0.37 0.37 0.445 0.555 0.63 0.63 1],[0 0 1 1 1 1 0 0]);
hold on
freqz(b)
%Filtro pasa-banda FIR (Diseo ptimo firpmod,firpm)
[N,fo,ao,W]=firpmord([1200,1500,2500,2800],[0,1,0],[0.001,0.1,0.001],8000);
B=firpm(N,fo,ao,W);
hold on
freqz(B)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%FILTROS IIR%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Filtro Butterworth pasa-banda
[N1,WP1]=buttord([0.375 0.625],[0.3 0.7],1,60);
[A1,B1]=butter(N1,WP1);
freqz(A1,B1)
%Filtro Chevyshev pasa-bansa
[N2,WP2]=cheb1ord([0.375 0.625],[0.3 0.7],1,60);
[A2,B2]=cheby1(N2,1,WP2);
hold on
freqz(A2,B2)
18 | P g i n a
19 | P g i n a