Vous êtes sur la page 1sur 5

1

UNIVERSIDAD PEDAGOGICA Y TECNNOLOGICA DE COLOMBIA


TEORIA DE SEALES, LAB. 5 JUIlO 2012

FILTROS DIGITALES
Fabin Higuera Sacristn 200921151, Edward Romero Serna 200921158
RESUMEN: En este laboratorio se disea un filtro rechaza-banda, eliminando las frecuencias entre 50kHz y 80kHz. Se utilizan las herramientas de MatLab para elaborar el filtro analgico para su posterior discretizacin, observando la respuesta de los dos sistemas. Adems se elabora en MatLab el modelo DARMA para solucionar ecuaciones de diferencia.
PALABRAS CLAVE: Filtro Rechaza-Banda, diagrama de Bode, Sistema discreto, Sistema continuo, Periodo de muestreo, ecuacin de diferencia, modelo DARMA.

III.

MATERIALES Y EQUIPOS
Computador con Software MatLab

IV. MARCO TEORICO


Un filtro es un sistema que, dependiendo de algunos parmetros, realiza un proceso de discriminacin de una seal de entrada obteniendo variaciones en su salida. Los filtros digitales tienen como entrada una seal analgica o digital y a su salida tienen otra seal analgica o digital, pudiendo haber cambiado en amplitud, frecuencia o fase dependiendo de las caractersticas del filtro. El filtrado digital consiste en la realizacin interna de un procesado de datos de entrada. El valor de la muestra de la entrada actual y algunas muestras anteriores (que previamente haban sido almacenadas) son multiplicadas por unos coeficientes definidos. Tambin podra tomar valores de la salida en instantes pasados y multiplicarlos por otros coeficientes. Finalmente todos los resultados de todas estas multiplicaciones son sumados, dando una salida para el instante actual. Esto implica que internamente tanto la salida como la entrada del filtro serian digitales, por lo que puede ser necesario una conversin anaggicodigital o digital-analgica para uso de filtros digitales en seales analgicas. Filtros FIR (Finite Impulse Response) Un filtro FIR de orden M se describe por la siguiente ecuacin en diferencias lineal de coeficientes constantes: [ ] [ ] [ ] [ ]

I.

INTRODUCCION

Un filtro digital es un sistema que, dependiendo de las variaciones de las seales de entrada en el tiempo y amplitud, se realiza un procesamiento matemtico sobre dicha seal; generalmente mediante el uso de la Transformada rpida de Fourier; obtenindose en la salida el resultado del procesamiento matemtico o la seal de salida. Los filtros digitales tienen como entrada una seal analgica o digital y en su salida tienen otra seal analgica o digital, pudiendo haber cambiado en amplitud, frecuencia o fase dependiendo de las caractersticas del filtro digital. El filtrado digital es parte del procesado de seal digital. Se le da la denominacin de digital ms por su funcionamiento interno que por su dependencia del tipo de seal a filtrar, as podramos llamar filtro digital tanto a un filtro que realiza el procesado de seales digitales como a otro que lo haga de seales analgicas. Comunmente se usa para atenuar o amplificar algunas frecuencias, por ejemplo se puede implementar un sistema para controlar los tonos graves y agudos del audio del estreo del auto. El procesamiento interno y la entrada del filtro sern digitales, por lo que puede ser necesario una conversin analgica-digital o digital-analgica para uso de filtros digitales con seales analgicas. .

No hay recursin, es decir, la salida depende solo de la entrada y no de valores pasados de la salida. La respuesta es por tanto una suma ponderada de valores pasados y presentes de la entrada. De ah que se denomine Media en Movimiento (Moving Average) Filtros IIR (Infinite Impulse Response) Este tipo de filtros se presenta de dos formas: el filtro AR(autoregresivo) y el filtro ARMA(autoregresivo y media en movimiento): La ecuacin en diferencias que describe un filtro AR es: [ ] [ ] [ ] [ ]

II.

OBJETIVOS

Conocer las clases de filtros digitales y sus caracter Conocer las herramientas de diseo de filtros digitales de Matlab..

El filtro es recursivo ya que la salida depende no solo de la entrada actual sino adems de valores pasados de la salida (Filtros con realimentacin). La ecuacin en diferencias que describe un filtro ARMA de orden N es: [ ] [ ] [ ] [ ]

2
UNIVERSIDAD PEDAGOGICA Y TECNNOLOGICA DE COLOMBIA

V.

ANALISIS DE RESULTADOS
Observando la anterior grfica, vemos que el comportamiento en frecuencia corresponde a un filtro rechaza banda. Ahora procedemos a discretizar nuestro filtro, para ello establecemos un periodo de muestreo siguiendo el teorema de muestreo.

Disear y Discretizar un filtro anlogo rechaza-banda, para rango de frecuencias entre 50kHz y 80 kHz. Implementar el filtro discretizado en Simulink. Para iniciar con el diseo del filtro rechaza-banda, definimos en primera instancia, las frecuencias de corte y atenuacin.

Tomamos como referencia la componente en frecuencia ms alta de una seal que reconstruiramos. Para este filtro la frecuencia de corte superior es 80kHz, tomamos una frecuencia por encima a sta (100kHz) Para la elaboracin de este filtro optamos por utilizar un filtro butterworth, ya que ofrece ms estabilidad. Con el siguiente programa en MatLab calculamos el orden y la funcin de transferencia de nuestro filtro.

fc=[5000 80000]; fs=[25000 105000]; wc=(2*pi).*fc; ws=(2*pi).*fs; [n,Wn]=buttord(wc,ws,3,40,'s') [num,den]=butter(n,Wn,'stop','s') H=tf(num,den)


Los resultados que arrojo el programa son los siguientes: n= 6 Wn = 1.0e+005 * 3.1162 5.0675 Transfer function: s^12 + 9.475e011 s^10 + 3.741e023 s^8 + 7.876e034 s^6 + 9.328e045 s^4 + 5.892e056 s^2 + 1.551e067 -------------------------------------------------------------------------------------s^12 + 7.539e005 s^11 + 1.232e012 s^10 + 6.632e017 s^9 + 5.644e023 s^8 + 2.213e029 s^7 + 1.247e035 s^6 + 3.494e040 s^5 + 1.407e046 s^4 + 2.611e051 s^3 + 7.659e056 s^2 + 7.403e061 s + 1.551e067 La respuesta en frecuencia de nuestro filtro se hall con el comando BODE, el resultado fue el siguiente.

Entonces el periodo de muestreo ser,

Ahora, utilizando la herramienta c2dm con la aproximacin Tustin hallamos la funcin de transferencia discreta con el comando tf.

Tm=5e-6; [Numd,Dend]=c2dm(num,den,Tm,'tustin') Hd=tf(Numd,Dend,Tm)


Transfer function:

0.3899 z^12 - 0.03071 z^11 + 2.341 z^10 - 0.1536 z^9 + 5.853 z^8 - 0.3071 z^7 + 7.805 z^6 - 0.3071 z^5 + 5.853 z^4 - 0.1536 z^3 + 2.341 z^2 - 0.03071 z + 0.3899 ------------------------------------------------------------------------z^12 - 0.06656 z^11 + 4.145 z^10 - 0.2326 z^9 + 7.368 z^8 - 0.3338 z^7 + 7.143 z^6 - 0.2447 z^5 + 3.969 z^4 0.09127 z^3 + 1.195 z^2 - 0.01383 z + 0.1521 Sampling time (seconds): 5e-006 Para analizar la estabilidad del sistema hallamos los polos de la funcin de transferencia, encontramos las races del denominador con la herramienta roots. roots(Dend) ans = -0.2122 + 0.9173i -0.2122 - 0.9173i 0.2239 + 0.9146i 0.2239 - 0.9146i -0.1430 + 0.8313i -0.1430 - 0.8313i 0.1540 + 0.8297i 0.1540 - 0.8297i -0.0475 + 0.7846i -0.0475 - 0.7846i 0.0581 + 0.7840i 0.0581 - 0.7840i

Fig. 1 RESPUESTA EN FRECUENCIA FILTRO RECHAZABANDA DISEADO

3
UNIVERSIDAD PEDAGOGICA Y TECNNOLOGICA DE COLOMBIA

Ahora miramos la magnitud de cada uno de los polos >> abs(ans) ans = 0.9415 0.9415 0.9416 0.9416 0.8435 0.8435 0.8438 0.8438 0.7860 0.7860 0.7862 0.7862 Como podemos ver, el sistema es estable, ya que la magnitud de los polos es menor a 1 (regin de convergencia). La respuesta en frecuencia de nuestro sistema discreto se encuentra en la siguiente figura.

SISTEMAS CONTINUO (VERDE) Y DISCRETO (AZUL) En la anterior grfica se puede observar el comportamiento al escaln de un filtro rechaza-banda, vemos que las muestras del sistema discreto siguen a la respuesta del sistema continuo pero con un retardo mayor, esto se debe a que para el sistema discreto, el proceso de muestreo introduce un retardo mayor a la respuesta. Para la solucin de ecuaciones de diferencia se utiliza el modelo DARMA que es de la siguiente manera: ( ( Donde, ( ( ) ) ) ) ( ( ) )

Podemos expresar la funcin de transferencia de nuestro filtro de la siguiente manera para determinar el valor de los coeficientes: Hz=tf(Numd,Dend,Tm,'variable','z^-1')
Transfer function: 0.2456 - 0.02901 z^-1 + 2.212 z^-2 -0.2321 z^-3 + 8.851 z^-4 - 0.8125 z^-5 + 20.66 z^-6 - 1.625 z^-7 + 31 z^-8 - 2.032 z^-9 + 31 z^-10 - 1.625 z^-11 + 20.66 z^-12 0.8125 z^-13 + 8.851 z^-14 - 0.2321 z^-15 + 2.212 z^-16 - 0.02901 z^-17 + 0.2456 z^18

Fig. 2 RESPUESTA EN FRECUENCIA PARA FILTRO RECHAZA-BANDA DISCRETIZADO. La respuesta al escaln tanto del sistema continuo como del discreto, se obtuvo con el comando step y se encuentra en la siguiente grfica. step(Hd,H) grid on

-----------------------------------------1 - 0.09994 z^-1 + 6.234 z^-2 - 0.5577 z^-3 + 17.59 z^-4 - 1.385 z^-5 + 29.39 z^6 - 1.995 z^-7 + 32.01 z^-8 - 1.82 z^-9 + 23.53 z^-10 - 1.075 z^-11+ 11.66 z^-12 0.4014 z^-13 + 3.75 z^-14 - 0.08645 z^-15 + 0.7104 z^-16 - 0.00822 z^-17 + 0.06031 z^-18 Sampling time (seconds): 5e-006

Implementamos en SIMULINK los de bloques que simulan nuestro filtro, aplicamos una seal senoidal a la entrada de una frecuencia de 20kHz.

Fig. 4 DIAGRAMA DE BLOQUES IMPLEMENTADO EN SIMULINK Fig. 3 RESPUESTA AL ESCALON DE LOS

4
UNIVERSIDAD PEDAGOGICA Y TECNNOLOGICA DE COLOMBIA

Aplicamos un periodo de muestreo en el retenedor de orden cero igual al estipulado anteriormente (5e-6 s), las grficas que se obtuvieron fueron:

Filtro FIR: para un filtro de este tipo sabemos que la salida solo depende de valores instantneos y valores antiguos de la seal de entrada. La siguiente funcin (filq) fue realizada en MatLab y modela un filtro de tipo FIR de la forma, donde se calcula la salida del filtro de manera recursiva (numrica) mediante un algoritmo: ( ) ( ) ( )

d = hace referencia al retardo del filtro, P = coeficientes de la funcin ( ), Vo = condicin inicial, u = seal de entrada. function V= filq(d,k,P,Vo,u) [i,j]=size(P); n=j-1; V=Vo; k1=k+1; if k >= n, for i=d:n, V=V+P(i+1)*u(k1-i); end else if k>=d, for i=d+k, V=V+P(i+1)*u(k1-i); end end end

Fig. 5 SEALES DE ENTRADA (AZUL) ALA SALIDA DEL RETENEDOR (VERDE) Y A LA SALIDA DEL FILTRO DISCRETIZADO (ROJO) PARA SEAL SENO DE 20KHz A LA ENTRADA Al ser un filtro rechaza-banda entre frecuencias de 50kHz y 80kHz, eliminar todos los componentes de frecuencias de la seal de entrada dentro de este rango. Cuando aplicamos una seal seno de 20kHz a la entrada, tendremos que observar la misma seal, pero discretizada, a la salida del filtro. En la figura 5 vemos que la seal a la salida del filtro corresponde a la misma que en el retenedor de orden cero, pero desplazada hacia la derecha, esto se debe a que todos los filtros siempre introducen un retardo a la salida. Para comprobar el correcto funcionamiento de nuestro filtro, introducimos una seal senoidal de frecuencia 60kHz a la entrada del filtro.

En el siguiente programa elaborado en MatLab filtramos la seal de un escaln unitario, en el cual, ( )

Por lo que los coeficientes del filtro son 1 y -1 respectivamente, adems definimos una condicin inicial Vo=0. Para escaln unitario >> k=0:10; >> u=ones(size(k)); >> stem(u)

Fig. 5 SEALES DE ENTRADA (AZUL) SALIDA DEL RETENEDOR (VERDE) Y A LA SALIDA DEL FILTRO DISCRETIZADO (ROJO) PARA SEAL SENO DE 60KHz A LA ENTRADA Para esta seal vemos que la seal a la salida del filtro discretizado est atenuada, esto se debe a que la frecuencia de la seal se encuentra dentro del rango del filtro. Fig 6. SEAL A LA ENTRADA DEL FILTRO, ESCALON MUESTREADO CON Tm=1

Implemente filtros FIR e IIR en MatLab para diferentes seales.

5
UNIVERSIDAD PEDAGOGICA Y TECNNOLOGICA DE COLOMBIA

>> P=[1 -1] >> d=0; >> Vo=0; >> y=filq(d,0,P,Vo,u) >> j=4; >> y(j)=filq(d,j-1,P,Vo,u) y= 1 0 0 0

Aplicando la seal del escaln al filtro anterior vemos que la salida filtra esta seal en el segundo instante de tiempo, luego los valores son cero para todo instante de tiempo. Para filtrar una seal senoidal utilizamos el mismo algoritmo tomando en cuenta que, ( )

condiciones ambientales (temperatura, presion etc), su versatilidad para efectuar diversos tipos de filtrado sin tener que modificar el hardware. Cuando aplicamos un filtrado a cualquier seal, debemos tener en cuenta que todo proceso de filtrado introduce un retardo a la seal de salida, es necesario tener presente esto para posteriores clculos. Los filtros FIR solo dependen de la seal de entrada, a comparacin de los filtros IIR donde intervienen anteriores valores a la salida. Es posible solucionar ecuaciones de diferencia mediante algoritmos matemticos (solucin recursiva numrica), pero es necesario conocer las condiciones iniciales del sistema.

VII.

REFERENCIAS

El clculo de los coeficientes se encuentra en los anexos, los valores encontrados son: P1=1 P2=0.618 >> k=0:100; >> Ao=1; >> u=Ao*sin(0.1*pi.*k); >> d=0; >> P=[1 0.618]; >> Vo=0; >> j=2; >> y(j)=filq(d,j,P,Vo,u) y= 0 0 1.5878 >> stem(u)

[1] C. Savant, Diseo Electrnico: Circuitos y sistemas (Capitulo 12), 3rd ed. Mxico: Pearson Education, 2000. [2] MathWorks, help MATLAB, 1984-2009. [3] S. Haykin, Seales y Sistemas. Mexico: Limusa Wiley, 2003. [4]http://www.eveliux.com/mx/teoria-del-muestreo-denyquist.php [5]http://www.tecnun.es/asignaturas/tratamiento%20dig ital/tema8.pdf

Fig. 7 Fig 6. SEAL SENOIDAL A LA ENTRADA DEL FILTRO, MUESTREADA CON Tm=1 VI.

CONCLUSIONES

Los filtros digitales, presentan ventajas tecnolgicas respecto a los analgicos. Algunas de estas ventajas son su mayor insensibilidad a

Vous aimerez peut-être aussi