SETI-03-04 J.L.Huertas TEMA4: Implementación de Filtros Discretos Contenidos del tema: q El muestreo y sus consecuencias q Relaciones entre señales y sus transformadas: q Especificaciones de filtros continuos y discretos wAproximaciones usuales wEjemplos q Técnicas de implementación de filtros IIR: wRespuesta impulsiva invariante wTransformación bilineal q Implementación de filtros FIR Tr. 1 SETI-03-04 J.L.Huertas Algunas Consideraciones al Procesado Discreto q La frecuencia de muestreo (en relación con el contenido en frecuencia de la señal de entrada) condiciona la información disponible y la “convertibilidad” entre el dominio continuo y el discreto. q La frecuencia de muestreo (en relación con el contenido en frecuencia de la señal de entrada) condiciona la forma del espectro discreto. q La precisión de la transformación discreta-continua depende de la calidad del algoritmo de interpolación y de la frecuencia de muestreo. Tr. 2 SETI-03-04 J.L.Huertas q La frecuencia de muestreo (en relación con el contenido en frecuencia de la señal de entrada) condiciona la forma del espectro discreto. Tr. 3 J.L.Huertas SETI-03-04 Tr. 4 J.L.Huertas SETI-03-04 Tr. 5 SETI-03-04 J.L.Huertas Restricciones al Procesado Discreto q Teorema de Nyquist: Para poder recuperar una señal muestrada debemos usar una frecuencia de muestreo por lo menos doble que la frecuencia significativa más alta de la señal de entrada. Sea la banda de interés de la señal de entrada: ω < ωmax Sea la frecuencia de muestreo: ωs Teorema de Nyquist: ωs > 2ωmax q Interesa limitar la banda de la señal de entrada usando un filtro de paso de baja q Es imprescindible colocar un filtro de paso de baja al reconvertir la información como señal continua q Ambos filtros son CONTINUOS! Tr. 6 SETI-03-04 J.L.Huertas Maneras de Filtrar Salida Continua Entrada Continua Filtro Continuo Filtro Filtro SC Continuo Ck Filtro Ck A/D Continuo Filtro Digital D/A Filtro Continuo Ck Objetivo: Poder hacer un procesado “Similar” en todos los casos Tr. 7 SETI-03-04 J.L.Huertas Síntesis de Filtros Discretos Tareas q q q q Encontrar funciones en z que sean “equivalentes” a filtros continuos Determinar procedimientos para construir esas funciones en z Elegir una estructura de sistema y determinar sus coeficientes Seleccionar las características necesarias para “soportar” la información (nº de bits, frecuencia de muestreo, código binario, tipo de representación, grado de paralelismo...) q Escoger los componentes y diseñarlos q Verificar los resultados Necesidades q Criterios para comparar entre opciones q Estimación de la “calidad” de una solución Tr. 8 SETI-03-04 J.L.Huertas Síntesis de Filtros Discretos Diseñar Filtro Analógico s ---> s Diseñar Filtro Analógico s ---> s Aplicar Transformación de Frecuencia s ---> s Aplicar Transformación de Variable s ---> z Aplicar Transformación de Variable s ---> z Aplicar Transformación de Frecuencia z ---> z Filtro IIR Filtro IIR Tr. 9 SETI-03-04 J.L.Huertas Relaciones entre Señales y sus Transformadas Expresión Alternativa: ∞ jω 1 ω + jn 2π X ( jω ) = XD e = ----- ∑ X j ---------- Ts Ts Ts n = –∞ * X c(jΩ) Α −Ω 0 ESCALADO DIGITAL −ω0 −2π −π Ω Ω0 X(ejω) Α/Ts 0 π ω0 ω0 = Ω0Ts 2π ω Tr. 10 SETI-03-04 J.L.Huertas Relaciones entre Señales y sus Transformadas ESCALADO DIGITAL Ts = 3 µs −Ωs −Ω0 Ts = 2 µs −Ωs q q −Ω0 X(ejω) Α/Ts 0 0 Ω0 ω0 = Ω0Ts Ω0 ω Ωs Ωs ω Importa NO el valor absoluto de Ω0 sino su valor relativo respecto a Ts (o a Ωs) Es necesario hacer una normalización, por ejemplo: ωs = ΩsTs = 2π Tr. 11 SETI-03-04 J.L.Huertas Relaciones entre Señales y sus Transformadas ESCALADO DIGITAL Ts = 3 µs −Ωs −Ω0 Ts = 2 µs −Ωs q q −Ω0 X(ejω) Α/Ts 0 0 Ω0 ω0 = Ω0Ts Ω0 ω Ωs Ωs ω Importa NO el valor absoluto de Ω0 sino su valor relativo respecto a Ts (o a Ωs) Es necesario hacer una normalización, por ejemplo: ωs = ΩsTs = 2π Tr. 12 SETI-03-04 J.L.Huertas Relaciones entre Señales y sus Transformadas Xc(jΩ) Α −Ω 0 ESCALADO DIGITAL Ts = 3 µs Ts = 2 µs −2π −ω0 Ω Ω0 X(ejω) Α/T s ω0 −2π −π −ω0 0 π 2π ω0 −π 0 π ω0 = Ω0Ts ω 2π ω Tr. 13 SETI-03-04 J.L.Huertas Relaciones entre Señales y sus Transformadas ∞ jω * jω 1 ω + jn 2π X e = X ( jω ) = XD e = ----- ∑ X j ---------- Ts Ts Ts n = –∞ F (CTFT) xc(t) = señal continua F (CTFT) x*(t) = xs(t) = señal muestreada x(n) = xc(t)|t=nTs = secuencia numérica z DTFT Xc(jΩ) Xs(jΩ) X(z) X(ejω) = X(z)|z=e jω ω = ΩTs X s(jΩ) = X(e jΩΤs) X(ejω) = X s(jω/Ts) Tr. 14 SETI-03-04 J.L.Huertas Relaciones entre Señales y sus Transformadas xc(nTs) = señal discreta x(n) = xc(t)|t=nTs = secuencia numérica xc(t) = señal continua xc(nTs ) = xc(t)|t=nTs x(n) = xc(nT s) x*(t) = xs (t) = señal muestreada x s( t ) = ∞ ∑ k = –∞ xc ( nT s )δ ( t – nT s ) = ∞ ∑ k = –∞ x ( n )δ ( t – nTs) Secuencia Transformada Z DTFT X(z)|z=e jω Señal Transf. Laplace CTFT X(s)|s=jΩ ω -----> “frecuencia” digital Ω -----> “frecuencia” analógica Tr. 15 SETI-03-04 J.L.Huertas CTFT: Continuous-time Fourier Transform – jΩt X S( jΩ ) = ∫∞ X S ( t )e dt = –∞ ∞ ∑ X ( n )e jΩnTs n = –∞ DTFT: Discrete-time Fourier Transform jω jω X e = X D e = X ( z ) sii --------------> ω = Ω Ts ∞ z=e jω = ∑ x ( n )e –jωn n = –∞ jΩTs X S( jΩ ) = X e X e jω j --ω ------ = X S Ts Tr. 16 SETI-03-04 J.L.Huertas Espectro original: xc(t) X c(jΩ) CTFT: x s(t) (otra visión): ∞ 1 1 X S( jΩ ) = ------ [ X c ( jΩ ) ⊕ P ( jΩ) ] = ------ ∑ Xc [ j ( Ω – nΩ s) ] 2π Ts n = –∞ Ωs = 2π -----Ts ∞ jΩTs 1 X e = -T----- ∑ X c [ j ( Ω – nΩs ) ] s n = –∞ ∞ 1 ω – 2πn jω X e = ------ ∑ X c j -------------------- Ts Ts n = –∞ Tr. 17 SETI-03-04 J.L.Huertas Especificaciones de Filtros Discretos 1 – δ1 R p = – 20 log --------------1 + δ1 δ2 A s = –20 log --------------1 + δ1 Rizado en la BP jω1+δ1 1 1- δ1 δ2 Banda de Transición ωp ωs Rizado en la BS π ω ω Rp As Rizado en la BP (dB) Atenuación en la BS jω Tr. 18 SETI-03-04 J.L.Huertas Filtros de Paso de Baja Discretos Definición del Problema: Obtener una función de sistema, H(z), (o su expresión en diferencias finitas) que tenga una banda pasante [0, ωp] con una tolerancia δ1 (ó R p en dB), y una banda de rechazo [ωs, π] con tolerancia δ2 (ó As en dB) Tr. 19 SETI-03-04 J.L.Huertas Especificación de Filtros Continuos Escala Lineal Relativa: 1 2 --------------≤ H a ( jΩ ) ≤ 1 , 2 1+ε Ω = frecuencia “analógica” ( Ω ≤ Ωp ) H a ( jΩ ) 0 ≤ H a ( jΩ ) 2 1 ≤ ------- , 2 A 2 (Ω s ≤ Ω ) 1 1 --------------2 1+ε ---1---2 A Ω p Ωs Ω Tr. 20 SETI-03-04 J.L.Huertas Filtros de Butterworth: Prototipo P. Baja N es el orden del Filtro N=4 N=100 N=1 Módulo al cuadrado: Ha ( jΩ ) 2 1 = -----------------------------2N Ω 1 + ------- Ωc Función de transferencia: 2N 2 ( jΩ ) H a ( s ) ( H a ( – s) ) = Ha ( jΩ ) = -------------------------------------2N 2N Ω = s⁄j s + ( jΩ c ) p k= Ω cejπ(2k+N+1)/2N N ( Ωc ) H a ( s ) = ------------------------------∏ ( s – pk ) LHP Tr. 21 SETI-03-04 J.L.Huertas Filtros de Butterworth: Prototipo P. Baja N es el orden del Filtro N=4 N=100 N=1 Módulo al cuadrado: Ha ( jω ) 2 1 = -----------------------------2N ω 1 + ------- ωc Función de transferencia: H a ( s) ( H a ( – s) ) = Ha ( jω ) 2 2N ( jω ) = -------------------------------------2N 2N ω = s⁄j s + ( jω c ) N ( ωc ) H a ( s ) = ------------------------------∏ ( s – pk ) LHP Tr. 22 SETI-03-04 J.L.Huertas Filtros de Butterworth: Ecuaciones de Diseño Problema: w Dados Ωp, Rp, Ωs y As w Obtener N y Ωc En Ω = Ωp: -10log|Ha(jΩ) |2 = R p -10log[1 + (Ωp/Ωc)2Ν] En Ω = Ωs: -1 = Rp -10log|Ha(jΩ) |2 = A s -1 -10log[1 + (Ωs/Ωc)2Ν] = As Tr. 23 SETI-03-04 J.L.Huertas Filtros de Butterworth: Ecuaciones de Diseño N = R p ⁄ 10 A s ⁄ 10 log 10 – 1 ⁄ 10 – 1 --------------------------------------------------------------------------------------------2 log ( Ωp ⁄ Ω s) Ωp Ωc = ----------------------------------------------– 2N R p ⁄ 10 – 1 10 Ωs Ωc = ----------------------------------------------–2N As ⁄ 10 – 1 10 Tr. 24 SETI-03-04 J.L.Huertas Filtros de Butterworth: Ejemplo w Dados Ωp = 0.2π, Rp = 7 dB, Ωs = 0.3π , As = 16 dB N = 0,7 1,6 log 10 – 1 ⁄ 10 – 1 -------------------------------------------------------------------------2 log ( ( 0,2π ) ⁄ ( 0,3π ) ) = 2,79 = 3 0,3 π Ω c = ---------------------------------- = 0,5122 –6 10 1,6 – 1 0,2π Ωc = ---------------------------------- = 0,4985 –6 10 0,7 – 1 Ωc = 0.5 0,125 H a ( s ) = -----------------------------------------------------------------2 ( s + 0,5 ) s + 0,5s + 0,25 Tr. 25 SETI-03-04 J.L.Huertas Filtros de Butterworth: Ejemplo A= 1.0000 0.5000 0.2500 0 1.0000 0.5000 A= 1.0000 0.4985 0.2485 0 1.0000 0.4985 B= 0 0 0.1238 Tr. 26 SETI-03-04 J.L.Huertas Filtros de Chebyshev-I: Ejemplo A= 1.0000 1.0000 0.4233 0.1753 0.1103 0.3895 B= 0 0 0.0383 Tr. 27 SETI-03-04 J.L.Huertas Filtros de Chebyshev-II: Ejemplo A= 1.0000 1.9521 1.4747 1.0000 0.3719 0.6784 B= 0 0 0.1585 1.0000 0 6.0654 1.0000 0 1.0407 Tr. 28 SETI-03-04 J.L.Huertas Filtros Elípticos: Ejemplo A= 1.0000 0.1696 0.4102 0 1.0000 0.4435 B= 0 0 0.274 1.0000 0.1696 0.4102 0 1.0000 0.4435 Tr. 29 SETI-03-04 J.L.Huertas Técnicas de Aproximación para Filtros Discretos Filtros IIR ó Recursivos q q q q Método de la respuesta impulsiva invariante Modificación del método de la respuesta impulsiva invariante Transformación z apareada Transformación bilineal Filtros FIR ó No-recursivos q Series de Fourier q Fórmulas de análisis numérico Tr. 30 SETI-03-04 J.L.Huertas Filtros IIR: Respuesta Impulsiva Invariante HA(s) H*A(jω) Filtro Filtro Continuo Continuo Ck T, ωs Idea: Imitar HA(s) a través de la función continua del bloque filtro + muestreador h A ( 0+ ) * jωT = ------------------ + 1-H A ( jω ) = HD e 2 T ∞ ∑ n = –∞ HA ( jω + jnωs ) Procedimiento: 1.- Seleccionar un filtro analógico, HA(s) 2.- Determinar hA(t) 3.- Discretizar la función temporal, hA(nT) 4.- Calcular la transformada z, Z[hA(nT)] Tr. 31 SETI-03-04 J.L.Huertas Filtros IIR: Respuesta Impulsiva Invariante Aplicación del Procedimiento (suposiciones): q Para señales limitadas en banda, HA(jω) ≈ 0, para |ω| ≥ ωs/2 Se cumplirá: ∑ HA(jω + jkωs) ≈ 0, para |ω| ≤ ωs/2 q Si además hA(0+) = 0 * e jωT ≈ 1-- H ( jω ) H ( jω ) = H Se cumplirá: ; para |ω| ≤ ωs/2 A D T A Si grado [N(s)] < grado [D(s)] - 1----------> Se cumplen las hipótesis Para polos simples: N Ai H ( s ) = ∑ ------------A s– p i i=1 Para polos simples: h (t ) = A N ∑ Ae i pi t h ( nT ) = A i=1 H (z) = D N ∑ Ae i pi nT i=1 N ∑ Aiz ------------------- i = 1z – e piT Tr. 32 SETI-03-04 J.L.Huertas Filtros IIR: Respuesta Impulsiva Invariante Utilidad para funciones “sólo-polos” Si el filtro analógico es estable, lo es el digital Ejemplo: 1 H ( s ) = --------------------------A 2 s + 5s + 4 1 –t 1 – 4t h A ( t ) = -- e – -- e 3 3 Descomposición: 1 1 1 1 H ( s ) = - ----------- – -- ----------A 3s + 1 3s + 4 1 –nT 1 – 4nT h A ( nT ) = - e – -- e 3 3 Filtro Digital 1-- z 1- z – T – 4T 3 3 e –e z H ( z ) = ----------------- – --------------------- = ---------------------------- -------------------------------------------------D –T – 4T 3 z–e z– e z – e – T z – e –4T Tr. 33 SETI-03-04 J.L.Huertas Filtros IIR: Respuesta Impulsiva Invariante s+1 2 1 HA ( s ) = --------------------------- = ----------- – ----------2 s+3 s+2 s + 5s + 6 2 1 HD ( z ) = ------------------------------ – -----------------------------– 3T – 1 – 2T – 1 1–e z z–e z –1 1 – 0,8966z HD ( z ) = -----------------------------------------------------------------–1 –2 1 – 1,5595z + 0,6065z Tr. 34 SETI-03-04 J.L.Huertas Filtros IIR: Respuesta Impulsiva Invariante Ejemplo: 1 H A ( s ) = --------------------------2 s + 5s + 4 1-- z 1-- z –T –4T 3 3 e – e z H ( z ) = ----------------- – --------------------- = ---------------------------- -------------------------------------------------D –T –4T 3 z– e z –e z – e– T z – e – 4T z H D( z ) = K --------------------------------------(z – p1 )(z – p2 ) x(n) –1 Kz H ( z ) = ---------------------------------------------------------------------D –1 –2 1 – ( p + p )z + p p z 1 1 2 2 z-1 p 1+ p 2 K y(n) z-1 -p 1p 2 Tr. 35 SETI-03-04 J.L.Huertas Filtros IIR: Diseño Especificaciones del filtro digital: ωp, Rp, ωs y As Procedimiento (Filtro): 1.- Elegir T y determinar las frecuencias analógicas de interés: Ωp = ωp/T , Ωs= ωs/T 2.- Diseñar un filtro analógico, Ha(s), usando 1.3.- Desarrollar Ha(s) en fracciones simples 4.- Transformar los polos analógicos, p k, en digitales, epkT Tr. 36 SETI-03-04 J.L.Huertas Filtros IIR: Butterworth, Ejemplo ωp = 0.2π, Rp= 1dB, ωs= 0.3π As= 15dB A= 1.0000 -0.9973 0.2570 1.0000 -1.0691 0.3699 1.0000 -1.2972 0.6949 B= 1.8557 -0.6304 -2.1428 1.1454 0.2871 -0.4466 Tr. 37 SETI-03-04 J.L.Huertas Filtros IIR: Butterworth, Ejemplo γ0 z -1 A= γ01 1.0000 -0.9973 0.2570 1.0000 -1.0691 0.3699 1.0000 -1.2972 0.6949 -α 11 x(n) - α21 z-1 z -1 γ 11 y(n) γ 0L B= 1.8557 -0.6304 -2.1428 1.1454 0.2871 -0.4466 -α 1L -α 2L z-1 γ1L Tr. 38 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Técnicas anteriores: Emular la respuesta al impulso del filtro analógico Transformación bilineal: Emular la respuesta temporal del filtro analógico para cualquier excitación Alternativa: 1-H ( s ) = Sea: I s ; h I ( t ) = 1, t ≥ 0+ 0, t ≤ 0y ( t ) = ∫t x ( τ )h I ( t – τ ) dτ 0 q Respuesta a una señal arbitraria: q Para 0+ < t1 < t2 y ( t 2) – y ( t1 ) = t2 ∫t 1 x ( τ )hI ( t – τ) dτ = t2 ∫0 x ( τ )h I ( t2 – τ ) dτ – t1 ∫0 x ( τ )h I ( t 1 – τ ) dτ = t2 ∫t 1 x ( τ) dτ Aproximando cuando t1 -> t2 t2 – t 1 y ( t2 ) – y ( t1 ) ≈ --------------- [ x ( t 1 ) + x ( t2 ) ] 2 Tr. 39 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Si t1 = nT - T, t2 = nT: t 2 – t1 y ( t2 ) – y ( t1 ) ≈ --------------- [ x ( t1 ) + x ( t 2 ) ] 2 y ( nT ) – y ( nT – T ) ≈ T -- [ x ( nT – T) + x (nT ) ] 2 Y (z ) – z –1 –1 Y (z ) = T --- z X ( z ) + X ( z ) 2 +1 La Función de Transferencia del integrador digital será: HI ( z ) = T -- z----------2z – 1 Esto equivale a sustituir s por: z – 1) s = -2- (---------------T z+1 Tr. 40 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Significado de la transformación en el dominio s: t 2 – t1 y ( t2 ) – y ( t1 ) ≈ --------------- [ x ( t1 ) + x ( t 2 ) ] 2 y ( nT ) – y ( nT – T ) ≈ T -- [ x ( nT – T) + x (nT ) ] 2 Y (z ) – z –1 –1 Y (z ) = T --- z X ( z ) + X ( z ) 2 +1 La Función de Transferencia del integrador digital será: HI ( z ) = T -- z----------2z – 1 Esto equivale a sustituir s por: z – 1) s = -2- (---------------T z+1 Tr. 41 SETI-03-04 J.L.Huertas Comparando Transformaciones jΩ Im(z) 3π/Τ π/Τ −π/Τ σ esT = z Re(z) −3π/Τ jΩ Im(z) σ 1+sT/2 =z 1-sT/2 Re(z) Tr. 42 SETI-03-04 J.L.Huertas Comparando Transformaciones jΩ Im(z) 3π/Τ π/Τ −π/Τ σ esT = z Re(z) −3π/Τ Re(s) = σ < 0 -----------------> |z| < 1 [interior del círculo unidad] Re(s) = σ = 0 -----------------> |z| = 1 [circunferencia unidad] Re(s) = σ > 0 -----------------> |z| > 1 [exterior del círculo unidad] Todas las “tiras” semi-infinitas de anchura 2π/T se transforman en el círculo unidad Todo filtro analógico causal y estable se transforma en uno digital causal y estable Si H a(jΩ) = Ha(jω/T) = 0 para |Ω| > π/T -----------------> H(ejω) = (1/T)H a(jω/T) para |ω|<π Tr. 43 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Procedimiento: 1.- Seleccionar un filtro analógico, HA(s) z – 1) s = -2- (---------------T z+1 3.- La función resultante, HD(z), es el filtro digital buscado 2.- Sustituir s en HA(s), según: z – 1) En resumen: HD(z) = HA(s)| para s = -2- (---------------T z+1 Ejemplo: s H A ( s ) = --------------------------2 s + 5s + 4 z – 1) -2-- (---------------T z+1 -----------------------------------------------------------------H ( z ) = -----> D 2 4 ( z – 1 ) z – 1) + 4 ------ ------------------- + 10 ------ (---------------2 2 T z+1 T (z + 1 ) ; Tr. 44 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Ejemplo: s H A ( s ) = --------------------------2 s + 5s + 4 Ejemplo: Filtro Digital: z – 1) -2-- (---------------T z+1 -----------------------------------------------------------------H ( z ) = -----> D 2 4 ( z – 1 ) z – 1) + 4 ------ ------------------- + 10 ------ (---------------2 2 T z+1 T (z + 1 ) –2 α 1 – z H D( z ) = ------------------------------------------------–1 –2 a1 + a2 z + a3 z α = 4 10 -----+ ------ + 4 2 T T x(n) ; zp1 + p2 K y(n) K z-p 1p 2 -K a1 = ( α + 4) ( α + 1 ) ; a2 = ( 2 – α )( 2 + α) ; a1 = ( α – 4) ( α – 1) Tr. 45 SETI-03-04 J.L.Huertas Filtros IIR: Diseño usando la trans. bilineal Especificaciones del filtro digital: ωp, Rp, ωs y As Procedimiento (Filtro): 1.- Elegir T y determinar las frecuencias analógicas de interés: Ωp = F1(ωp, 1/T), Ωs= F 2(ω s, 1/T) 2.- Diseñar un filtro analógico, Ha(s), usando 1.3.- Sustituir s en Ha(s) usando la transformación bi-lineal Tr. 46 SETI-03-04 J.L.Huertas Filtros IIR: Butterworth, Ejemplo ωp = 0.2π, Rp= 1dB, ωs= 0.3π As= 15dB B= 1.0000 1.0000 1.0000 2.0327 1.9996 1.9676 1.0331 1.0000 0.9680 1.0000 -0.9459 1.0000 -1.0541 1.0000 -1.3143 0.2342 0.3753 0.7149 A= Tr. 47 SETI-03-04 J.L.Huertas Filtros IIR: Butterworth, Comparación A= A= 1.0000 -0.9973 0.2570 1.0000 -1.0691 0.3699 1.0000 -1.2972 0.6949 1.0000 -0.9459 1.0000 -1.0541 1.0000 -1.3143 C= 0.2342 0.3753 0.7149 B= 5.7969e-004 B = 1.8557 -0.6304 -2.1428 1.1454 0.2871 -0.4466 1.0000 1.0000 1.0000 B= 1.0000 1.0000 1.0000 2.0327 1.9996 1.9676 1.0331 1.0000 0.9680 B= 2.0000 2.0000 2.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 2.0183 1.9814 2.0004 1.0186 0.9817 1.0000 Tr. 48 SETI-03-04 J.L.Huertas Filtros IIR: Butterworth, Comparación Tr. 49 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Relaciones: ; z – 1 ) = σ + jω s = 2-- (---------------T z+1 2 r = s= οο 2 2 -- + σ + ω T ---------------------------------------2 2 2 --- – σ + ω T 1⁄2 -2- + s T z = ------------ = r exp ( jω ) -2-- – s T jω σ s=0 s=−οο Tr. 50 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal WARPING: z – 1 ) -----> H (z) = H (ejω) =H (es´) HD(z) = HA(s)| para s = 2-- (---------------D D D T z+1 s' s' -– -sinh s' --s' 2 2 2 e – 1 2 e – e 2 2 s = -- --------------- = -- ---------------------- = --- --------------T s' T s' s' T cosh s' ------e +1 2 2 2 e +e ω Ω jπ s s´ σ σ -jπ Tr. 51 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal WARPING: 2.- Sustituir s en HA(s), según: z – 1 ) -----> H (ejω) = H (jΩ) HD(z) = HA(s)| para s = -2- (---------------D A T z+1 ω ω -----j – j -----ω jω 2 2 ----sin 2 e – 1 2 e – e 2 2 Ω = -- ------------------ = -- -------------------------- = -- ------------T jω T jω ω T cos ω -----– j ---------e +1 2 2 2 e +e Ω = -2-- tan ω ---T 2 ----------> Ω < 0.3/Τ −−−−> ω≈Ω Hay una evidente falta de linealidad!!! Tr. 52 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal WARPING: No-linealidad: Ω = -2-- tan ω ---- ---------> Ω < 0.3/Τ −−−−> T 2 ω≈Ω ω π Ω π 2π 3π Tr. 53 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal WARPING: No-linealidad: Ω = -2-- tan ω ---- ----------> Ω < 0.3/Τ −−−−> T 2 ω≈Ω ω π Ω π 2π 3π Tr. 54 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal WARPING: No-linealidad de Fase: ω π Ω π 2π 3π Tr. 55 SETI-03-04 J.L.Huertas Filtros IIR: Transformación bilineal Pre-warping: Seleccionar las frecuencias de interés: ej. Paso-baja: límite de la banda pasante, (Ωp) y límite de la de corte, (Ωc) Transformar esas frecuencias de interés según: Ωp T ωp = 2 atan ---------2 Ωc T ω c = 2 atan ---------2 ó Corregir la posición de los polos y ceros: -2-- + σ m T -----------------zm = -2- – σ m T 2--+ sk T p k = --------------2-–s T k Tr. 56 SETI-03-04 J.L.Huertas Ejemplo: (T=1) s+1 HA ( s ) = --------------------------- -----> 2 s + 5s + 6 z – 1 ) + 1 2 (---------------z+1 HD ( z ) = ------------------------------------------------------------2 ( z – 1 ) z – 1) + 6 4 ------------------- + 10 (---------------2 z+1 (z + 1 ) ; 0,15 + 0,1z – 1 – 0,05z– 2 HD ( z ) = ---------------------------------------------------------------–1 1 + 0,2z -2-- + σ m T -----------------zm = -2- – σ m T σ1= -2, σ2= -3; s3= -1 z1= 0, z2= -0.02; p3= 0.333; p4= 1 Tr. 57 SETI-03-04 J.L.Huertas Filtros FIR: Propiedades Filtro no recursivo: N–1 –n – (N – 1 ) N – 1 N – 1 –n H( z) = ∑ h ( nT )z = z h ( nT )z ∑ n=0 n=0 Respuesta en frecuencia: N–1 jωT jθ ( ω ) – jωnT = M ( ω )e H e = h ( nT )e ∑ n=0 N-1 polos en el origen jωT M ( ω ) = H e jωT θ ( ω ) = arg H e Fase: θ( ω) τ p = – -----------ω ; Retraso de grupo: τg = – d θ ( ω ) dω Tr. 58 SETI-03-04 J.L.Huertas Filtros FIR: Propiedades Filtros de Retraso Constante: Para que tp y tg sean constantes: θ ( ω ) = – τω N–1 ∑ h ( nT ) sin ωnT n=0 θ ( ω ) = –τω = atan ------------------------------------------------N–1 ∑ h ( nT ) cos ω nT n=0 N–1 ∑ h ( nT ) sin ( τω – ωnT ) = 0 n=0 ( N – 1 )T 0≤n ≤N–1 τ = --------------------- ; h ( nT ) = h [ ( N – 1 – n )T ] ; para 2 Es posible mantener la fase y el retraso de grupo constantes en toda la banda pasante!! Soluciones: Tr. 59 SETI-03-04 J.L.Huertas Filtros FIR: Propiedades Filtros de Retraso Constante: Para que tp y tg sean constantes: 1 h(nT) 1 h(nT) N=10 N=11 nT nT -1 n=10 -1 Si sólo el retraso de grupo debe ser constante: ( N – 1 )T θ ( ω ) = θ0 – τω ----->> τ = --------------------2 1 h(nT) N=10 1 h(nT) n=10 y h ( nT ) = – h [ (N – 1 – n )T ] N=11 nT nT -1 n=10 -1 n=10 Tr. 60 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo Sea la respuesta al impulso: h(n) = {1, 1, 1} jωT H e = 2 ∑ h ( n )e – jωn = 1+e –jω +e n=0 –j 2ω jω –j ω –jω – jω = e + 1 + e = { 1 + 2 cos ω }e e En este caso: |H(ejω)| = |1 + 2cosω|, 0 < ω < π - ω, si 0 < ω < 2π/3 φ[H(ejω)] = π - ω, si 2π/3 < ω < π Podemos definir: H(e jω) = Hr(ω)ej(β−αω) , con |β| = π/2, α = (N-1)/2 En este caso: Hr(ω) = 1 + 2cosω, -π < ω < π φr[H(ejω)] = - ω Tr. 61 SETI-03-04 J.L.Huertas |H(ejω)| φ[H(ejω)] Hr(ω) φ r[H(ejω)] Tr. 62 SETI-03-04 J.L.Huertas Filtros FIR: Propiedades Respuesta en Frecuencia (caso simétrico con N impar): jωT H e = N –3 ------------2 ∑ h ( nT )e –jωnT n=0 N – 1 )T e + h (--------------------2 ( N – 1 )T 2 –jω --------------------- N–1 + ∑ h ( nT )e – jωnT N+1 n = ------------2 Pero: N–1 ∑ N+1 n = ------------2 h ( nT )e – jωnT N –3 ------------2 = ∑ n=0 h ( nT )e – jω ( N – 1 – n )T N–1 = ∑ h [ ( N – 1 – n )T ]e – jωnT N+1 n = ------------2 Tr. 63 SETI-03-04 J.L.Huertas Filtros FIR: Respuesta en Frecuencia h(nT) H(ejωT) N Impar e (----------------N – 1) ( N – 1 )T – jω --------------------2 2 ∑ Coeficientes a k cos ωkT k=0 Simétrica Par e N – 1 )T – j ω (--------------------2 N -2 ∑ – 1 T a0 = h N ------------ 2 1 b cos ω k – -- T k 2 k=1 Impar e ( N – 1) (--------------------N – 1 ) T π-- ----------------2 – jω – 2 2 ∑ N–1 a k = 2h ------------- – k T 2 a k sin [ ωk T ] k=0 Antisimétrica Par e ( N – 1 )T π – j ω --------------------- – -2 2 N -2 ∑ N b k = 2h -- – k T 2 1 b k sin ω k – -- T 2 k=1 Tr. 64 SETI-03-04 J.L.Huertas Filtros FIR: Posición de los ceros Las restricciones exigen: H( z) = N –3 ------------2 N – 1) (N – 1 ) (----------------–n – ----------------- – n 2 2 1 --------------------h ( nT ) z ±z + (----------------N – 1) 2 n=0 ∑ N – 1 ) ( z0 ± z0 ) 1-- h (-----------------T 2 2 z Haciendo k = (N-1)/2 -n: H(z) = N–1 ------------2 a (z ) k k ± z – k = N ---------- D( z) ------------------------- z (----------------N – 1) 2 k = 0 2 1 ∑ z Los ceros de N(z) son los de H(z). Para esta expresión (sea N par o impar): N z – 1 = ±N( z ) Se trata de polinomios de imagen especular Tr. 65 SETI-03-04 J.L.Huertas Filtros FIR: Posición de los ceros Polinomios de imagen especular: Si zi = r iejφi es un cero, zk = zi-1 = e-jφi/ri también es un cero. Implicaciones: q Puede haber un número arbitrario de ceros en zi = 1 ó -1. q Puede haber un número arbitrario de pares de ceros complejos conjugados sobre dicha circunferencia. q Los ceros fuera de esa circunferencia aparecen en pares recíprocos. q Los ceros complejos fuera de la circunferencia unidad aparecerán en grupos de 4. N-1 polos Tr. 66 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo 2 Sea: h(n) = {-4, 1, -1, -2, 5, 6, 5, -2, -1, 1, -4} ----> N = 11, α = (N-1)/2 = 5 a(0) = h(α) = h(5) = 6; a(1) = 2h(5-1) = 10; a(2) = 2h(5-2) = -4; a(3) = 2h(5-3) = -2; a(4) = 2h(5-4) = 2; a(5) = 2h(5-5) = -8; Ahora: Hr(ω) = a(0) + a(1)cosω + a(2)cos2ω + a(3)cos3ω + ... = = 6 + 10cosω - 4cos2ω - 2cos3ω + 2cos4ω - 8cos5ω Tr. 67 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo 2 Tr. 68 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo 3 Sea: h(n) = {-4, 1, -1, -2, 5, 6, 6, 5, -2, -1, 1, -4} ----> N = 12, α = (N-1)/2 = 5.5 b(1) = 2h(6-1) = 12; b(2) = 2h(6-2) = 10; b(3) = 2h(6-3) = -4; b(4) = 2h(6-4) = -2; b(5) = 2h(6-5) = 2; b(6) = 2h(6-6) = -8; Ahora: Hr(ω) = b(1)cosω(1−1/2) + b(2)cosω(2−1/2) + b(3)cosω(3−1/2) + ... = = 12cos(ω/2) + 10cos(3ω/2) - 4cos(5ω/2) - 2cos(7ω/2) + 2cos(9ω/2) - 8cos(11ω/2) Tr. 69 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo 3 Tr. 70 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo 4 Sea: h(n) = {-4, 1, -1, -2, 5, 0, -5, 2, 1, -1, 4} ----> N = 11, α = (N-1)/2 = 5 Tr. 71 SETI-03-04 J.L.Huertas Filtros FIR: Ejemplo 5 Sea: h(n) = {-4, 1, -1, -2, 5, 6, -6, -5, 2, 1, -1, 4} ----> N = 12, α = (N-1)/2 = 5.5 Tr. 72