Você está na página 1de 6

ESCUELA POLITCNICA DEL EJRCITO

PROYECTO 6

PROCESAMIENTO DIGITAL DE SEALES


MAYRA SANGUCHO 2012-2013

DISEO DE FILTROS IIR EN MATLAB


MAYRA ELIZABETH SANGUCHO VELASCO d_mryis20@hotmail.com analgicos como digitales para afianzar los conocimientos vistos en clase. RESUMEN 2.- Familiarizar al estudiante con el diseo de filtros FIR utilizando Matlab. Un filtro FIR puede ser diseado utilizando 1.- INTRODUCCION distintas tcnicas tanto en el dominio del tiempo como de la frecuencia. Existe un mtodo ptimo Matlab es tanto un entorno poderoso para llamado algoritmo de Parks McClellan que clculo computacional como un lenguaje de produce coeficientes ptimos y fase lineal. Este programacin que maneja de forma sencilla mtodo es muy popular dado su facilidad de usar, matrices y aritmtica compleja. Es un gran flexibilidad y excelentes resultados. paquete de software que tiene muchas utilidades avanzadas desarrolladas y ha llegado a ser una Las tcnicas de ventaneo (en ingls windowing), herramienta estndar para muchos trabajos en bsicamente toman la respuesta al impulso de un las disciplinas de la ciencia y la ingeniera, donde filtro ideal con duracin infinita y aplican una el clculo asistido por ordenador siempre ha ventana para truncar y limitar los coeficientes a tenido vital importancia. un nmero especfico, para luego desplazar la Entre otras muchas cosas, permite la realizacin secuencia de manera de garantizar causalidad. de grficos de forma sencilla tanto en Esta tcnica es simple y produce resultados tres como en dos dimensiones. razonables, pero con distorsin respecto a la respuesta ideal 2.- FUNDAMENTO TERICO PALABRAS CLAVES INDIRECTA: Se basa en aplicar a filtros analgicos diseados previamente, transformaciones que los conviertan en digitales con las mismas caractersticas. Hay tres mtodos fundamentales: Diseo por impulso invariante Diseo por analoga o aproximacin de derivadas Diseo por transformacin bilineal DIRECTA: Se propone el diseo de filtros digitales imponiendo una serie de condiciones a la respuesta para determinar los coeficientes. Nos centraremos en dos mtodos simples como son: Diseo por la aproximacin de Pad Diseo por aproximacin de mnimos cuadrados. OBJETIVO 1- Se pretende conocer las herramientas que este software posee para el diseo de filtros tanto IIR es una sigla en ingls para Infinite Impulse Response o Respuesta infinita al impulso. Se trata de un tipo de filtros digitales en el que, como su nombre indica, si la entrada es una seal impulso, la salida tendr un nmero infinito de trminos no nulos, es decir, nunca vuelve al reposo. La salida de los filtros IIR depende de las entradas actuales y pasadas, y adems de las salidas en instantes anteriores. Esto se consigue mediante el uso de realimentacin de la salida.

Donde los a y b son los coeficientes del filtro. El orden es el mximo entre los valores de M y N, donde M y N son los terminos que determinan la cantidad de polos y ceros en la funcin de transferencia.

Aplicando la transformada Z a la expresin anterior:

El filtro de supresin de banda elptica especificado en el Ejemplo 6,3 pueden disearse fcilmente en Matlab como sigue:
Ap = 0.5; Ar = 65; wr1 = 850/5000; wr2 = 1150/5000; wp1 = 980/5000; wp2 = 1020/5000; wp = [wp1 wp2]; wr = [wr1 wr2]; [n,wn] = ellipord(wp,wr,Ap,Ar); [b,a] = ellip(n,Ap,Ar,wp);

La diferencia de los filtros IIR y FIR es que los filtros FIR son de respuesta impulsiva finita y los IIR de respuesta impulsiva infinita. Podemos agregar que los filtros FIR no son recurrentes y los IIR si lo son. Las formas habituales de disear este tipo de filtros son:

Indirecta (a partir de prototipos analgicos)


Impulso invariante Aproximacin de derivadas

Transformacin bilineal Directa Aproximacin de Pad Aproximacin de mnimos cuadrados

ellipord calcula el pedido mnimo de un filtro elptico digitales o analgicas necesarias para cumplir con una serie de especificaciones de diseo de filtros. Digital Domain [N, Wp] = ellipord (Wp, Ws, Rp, Rs) Devuelve el menor orden n del filtro elptico que pierde no ms de Rp dB en la banda de paso y tiene al menos Rs dB de atenuacin en la banda de detencin. El escalar (o vector) de las frecuencias de corte correspondiente Wp , tambin se devuelve. Utilice la salida de argumentos n y Wp en ellip .
Fs = 10000/(2*pi); Ts = 1/Fs; time = 0:Ts:(1-Ts); f1 = 980; f2 = 990; x1 = cos(f1.*time); y1 = filter(b,a,x1); x2 = cos(f2.*time); y2 = filter(b,a,x2); Fs = 10000/(2*pi); Ts = 1/Fs; time = 0:Ts:(1-Ts); f1 = 980; f2 = 990; x1 = cos(f1.*time); y1 = filter(b,a,x1); x2 = cos(f2.*time); y2 = filter(b,a,x2);

CARACTERSTICAS: Las principales diferencias respecto a los filtros FIR es que los IIR pueden cumplir las mismas exigencias que los anteriores pero con menos orden de filtro. Esto es importante a la hora de implementar el filtro, pues presenta una menor carga computacional. Este tipo de filtros puede ser inestables, an cuando se diseen para ser estables. En principio no pueden disearse para tener fase lineal pero se pueden aplicar algunas tcnicas como el filtrado bidireccional para lograrlo.

3.- DESARROLLO DE CONTENIDOS 3.1.- REALIZAR EL EXPERIMENTO 6.1 Y 6.2 DE LA SECCIN DO-IT-YOURSELF DEL LIBRO TEXTO. EXPERIMENTO 6.1

Esta transformacin mapea el j eje (de =- a + ) varias veces alrededor del crculo unitario ( e jw, desde =- a ) por

bilineal puede aceptar un parmetro opcional Fp que especificaprewarping. fp , en hercios, indica una "coincidencia" frecuencia, es decir, una frecuencia para la que las respuestas de frecuencia antes y despus del partido del mapeo exactamente. En el modo de prewarped, las correlaciones de transformacin bilineal la s plano en el z -plano con

EJERCICIO 6.9
Crear una seal de entrada compuesta de tres componentes sinusoidales de 770 Hz, 852 Hz, y 941 Hz, las frecuencias de Matlab con? S = 8 kHz. Use los tres filtros diseados en el ejercicio 6,7 para aislar cada componente de una seal diferente. [N, Wn] = buttord(Wp, Ws, Rp, Rs)

EXPERIMENTO 6.2
[zd,pd,kd]=bilinear(z,p,k,fs) [zd,pd,kd]=bilinear(z,p,k,fs,fp) [numd,dend]=bilinear(num,den,fs) [numd,dend]=bilinear(num,den,fs,fp) [Ad,Bd,Cd,Dd]=bilinear(A,B,C,D,fs) [Ad,Bd,Cd,Dd]=bilinear(A,B,C,D,fs,fp)

La transformacin bilineal es un mapeo matemtica de variables. En el filtrado digital, es un mtodo estndar de mapeo de la s o analgica en el plano z plano o digital. Se transforma filtros analgicos, diseados utilizando las tcnicas clsicas de diseo del filtro, en sus equivalentes discretos. Las correlaciones de transformacin bilineal el s plano en el z -plano por

Calcula el orden de un filtro pasobajo digital de Butterworth, con Ws la frecuencia de pasabanda, Wp la parabanda, y Rp y Rs las ate-nuaciones respectivas de pasabanda y parabanda en decibelios. Wp y Ws deben ser entre (0,1), siendo 1 la frecuencia de Nyquist (fs/2). N es el orden del filtro y Wn la frecuencia de 3db. >> [N, Wn] = buttord(Wp, Ws, Rp, Rs,'s') Lo mismo que antes, pero para un filtro pasobajo analgico. Aqu los valores de Wp y Ws pueden tomar cualquier valor en radianes. Para calcular el orden de otros tipos de filtro (pasoalto, paraban-da o pasabanda) deberemos aplicar primero las transformaciones al prototipo de filtro pasobajos.

[Ad,Bd,Cd,Dd]=bilinear(A,B,C,D ,fs,fp)

EJERCICIO 6.15
[bz,az] = impinvar(b,a,fs) [bz,az] = impinvar(b,a,fs,tol [Bz, az] = impinvar (b, a fs,) crea un filtro digital de numerador y denominador coeficientes bz y az , respectivamente, cuya respuesta al impulso es igual a la respuesta al impulso del filtro analgico con coeficientes b y una , escalado por 1/fs . Si se omite el argumento fs o especificar fs como el vector vaco [] , se toma el valor por defecto de 1 Hz. [Bz, az] = impinvar (b, a, fs, tol) utiliza la tolerancia especificada por tol para determinar si los polos se repiten. Una mayor tolerancia aumenta la probabilidad de que interpreta polos situados cerca como multiplicidades (las repetidas). El valor predeterminado es 0,001, o 0,1% de la magnitud de un poste. Tenga en cuenta que la exactitud de los valores polares an est limitada a la exactitud obtenible por el races funcin. Ejemplos Ejemplo 1 Convertir un paso bajo del filtro analgico a un filtro digital utilizando impinvar con una frecuencia de muestreo de 10 Hz:
[B, a] = mantequilla (4,0.3, 's'); [Bz, az] = impinvar (b, a, 10);

BILINEAR La transformacin bilineal es un mapeo matemtica de variables. En el filtrado digital, es un mtodo estndar de mapeo de la s o analgica en el plano z plano o digital. Se transforma filtros analgicos, diseados utilizando las tcnicas clsicas de diseo del filtro, en sus equivalentes discretos. Las correlaciones de transformacin bilineal el s plano en el z -plano por

Esta transformacin mapea el j eje (de =- a + ) varias veces alrededor del crculo unitario ( e jw, desde =- a ) por

bilineal puede aceptar un parmetro opcional Fp que especificaprewarping. fp , en hercios, indica una "coincidencia" frecuencia, es decir, una frecuencia para la que las respuestas de frecuencia antes y despus del partido del mapeo exactamente. En el modo de prewarped, las correlaciones de transformacin bilineal la s plano en el z -plano con

bilineal
Sintaxis [zd,pd,kd]=bilinear(z,p,k,fs) [zd,pd,kd]=bilinear(z,p,k,fs,f p) [numd,dend]=bilinear(num,den,f s) [numd,dend]=bilinear(num,den,f s,fp) [Ad,Bd,Cd,Dd]=bilinear(A,B,C,D ,fs)

Con, la opcin prewarping bilineal mapea la j eje (de = - a + ) varias veces alrededor del crculo unitario ( e jw , desde =- a ) por

En el modo prewarped, bilineales coincide con la frecuencia 2 f p (en radianes por segundo) en els -plano a la frecuencia normalizada

2 f p / f s (en radianes por segundo) en el z plano. El bilineal funcin trabaja con tres diferentes representaciones de sistemas lineales: la funcin cero-polos-ganancia, la transferencia, y forma de espacio de estado. Zero-Pole-Gain [Zd, pd, kd] = bilineal (z, p, k, fs) y [ZD, pd, kd] = bilineal (z, p, k, FS, FP) convertir el s -funcin de transferencia de dominio especificado por z , p , y k a un equivalente discreto. Entradas z y p son vectores columna que contienen los ceros y polos, k es una ganancia escalar, y fs es la frecuencia de muestreo en hertz. bilineal devuelve el equivalente discreto en vectores columna zd y pd y escalar kd . La frecuencia partido opcional, fp est en hertz y se utiliza para prewarping. Funcin de Transferencia [Numd, dend] = bilineal (num, den, fs) y [Numd, dend] = bilineal (num, den, fs, fp) convertir un s funcin de transferencia de dominio determinado por el nmero y den a un equivalente discreto. Fila vectores num y denespecificar los coeficientes del numerador y denominador, respectivamente, en potencias descendentes de s . Deje B (s) es el polinomio numerador y A (s) es el polinomio denominador. La funcin de transferencia es:

quede curiosidad de saber hasta dnde pueden llegar las aplicaciones que puede desarrollar. La ingeniera Electrnica es una de las ramas ms importantes de la ingeniera por el gran nmero de especializaciones que de ella emanan. MATLAB se ha convertido en el ambiente preferido para estudiantes, profesores e investigadores de las reas de ciencias, ingeniera y finanzas. MATLAB es un sistema interactivo nico que integra cmputo numrico, matemticas simblicas y visualizacin grfica en 2 y 3 dimensiones. Usuarios sin conocimientos de MATLAB, que requieran aprender los conceptos bsicos del paquete, as como los que deseen realizar desde operaciones sencillas hasta resolver sistemas de ecuaciones simultneas, ecuaciones de orden mayor,- ecuaciones matriciales, ecuaciones diferenciales, grficas de 2 y 3 dimensiones, etc. REFERENCIAS
[1] G. Obregn-Pulido, B. Castillo-Toledo and A. Loukianov, A globally convergent estimator for n frequencies, IEEE Trans. On Aut. Control. Vol. 47. No 5. pp 857-863. May 2002. [2] H. Khalil, Nonlinear Systems, 2nd. ed., Prentice Hall, NJ, pp. 50-56, 1996. [3] Francis. B. A. and W. M. Wonham, MatLab , Automatica. Vol. 12. pp. 457-465. 1976. [5] Control Toolbox (6.0), Users Guide, The Math Works, 2001, pp. 2-10-2-35.

fs es la frecuencia de muestreo en hertz. bilineal devuelve el equivalente discreto en vectores filanumd y deso en potencias descendentes de z (ascendente potencias de z 1 ). fp es la frecuencia de coincidencia opcional, en hercios, por prewarping. 4.- CONCLUSIONES GENERALES Es claro ahora que para el usuario que MatLab abarca un gran nmero de funciones que a su vez han sido diseadas para satisfacer las necesidades de la gran mayora de ciencias exactas conocidas. Sin embargo quizs an nos

Você também pode gostar