SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto...

53
SE ˜ NALES Y SISTEMAS Filtros Digitales Sebasti´ an Pazos 28 de junio de 2018

Transcript of SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto...

Page 1: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

SENALES YSISTEMAS

Filtros Digitales

Sebastian Pazos

28 de junio de 2018

Page 2: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros

“Filtrar: Cambiar las caracterısticas en frecuencia de una senal”

Aplicaciones:

� Supresion de ruido (radio, ECG, EEG, radar)

� Realce de rangos de frecuencia especıficos (Ecualizacion,Deteccion de bordes)

� Limitacion de ancho de banda (Anti-Aliasing, separacion decanales)

� Atenuacion de frecuencias particulares (DC, 50Hz)

� Diferenciacion, integracion, Transf. de Hilbert, etc

Pueden ser LIT, LVT, NLEstudiaremos filtros LIT

Senales y sistemas 2018 2 / 61

Page 3: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros analogicos

� Operan con senales de tiempo continuo

� Se implementan con Amplificadores, R, C e L. Circuitos demicrotiras, SAWs o cavidades en altas frec’s

� Max Frec.: infinita (limitada por la tecnologıa)

� Los dispositivos suman ruido a la senal (termico, shot, 1/f)

� Linealidad: No linealidad de amplificadores y saturacion

� Repetibilidad: limitada por variacion de los componentes

� Poco flexibles

Senales y sistemas 2018 3 / 61

Page 4: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros digitales

� Operan con senales de tiempo discreto (secuencias)

� Se implementan en microprocesadores (computadoras, DSPs,FPGAs) o hardware digital (+ A/D y a veces D/A)

� Max Frec.: Mitad Frec. de muestreo (cada dıa mayor)

� Ruido de cuantizacion (despreciable en pto. flotante)

� Linealidad: Cuantizacion en punto fijo, desborde

� Repetitivos (limita la estabilidad de frec. de muestreo)

� Son flexibles

Senales y sistemas 2018 4 / 61

Page 5: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Funciones de transferencia

Filtros analogicos

HL(s) =b0s

q + b1sq−1 + . . .+ bq

sp + a1sp−1 + . . .+ ap=

a(s)

b(s)

� Los filtros analogicos implementables son propios: p ≥ q

Filtros digitales

Hz(z) =b0 + b1z

−1 + . . .+ bqz−q

1 + a1z−1 + . . .+ apz−p=

a(z)

b(z)

� Se pueden implementar filtros digitales impropios: p < q

� Si p = 0 ⇒ respuesta impulsional de duracion finita (FIR)

� Si p > 0 ⇒ respuesta impulsional de duracion infinita (IIR)

Senales y sistemas 2018 5 / 61

Page 6: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Clases basicas de filtros

� Pasa-Bajos (a) o Pasa-Altos (b)

� Pasab-Banda (c) o Rechaza-Banda (d)

Senales y sistemas 2018 7 / 61

Page 7: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros

Especificaciones sobre |H(·)| en filtros practicos:

� Frecuencia: Lımites de bandas de paso (θp o ωp), de rechazo(θs o ωs) y de transicion entre ellas

� Magnitud: Tolerancia respecto a los valores ideales en labanda de paso (δ+ y δ−) y de rechazo (δs)

� En general:

Filtros FIR: δ+ = δ− = δpFiltros IIR y Analogicos: δ+ = 0, δ− = δp

� Tolerancias en dB:

Atenuacion en banda de rechazo: As = −20 log10 δsRipple en banda de paso:Ap = Max{20 log10(1 + δ+),−20 log10(1− δ−)}(buena aproximacion: Ap ≈ 8,6859δ)

Senales y sistemas 2018 8 / 61

Page 8: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros digitales: Pasa-Bajos

� Banda de paso: 1− δ− ≤ |H f (θ)| ≤ 1 + δ+, 0 ≤ θ ≤ θp� Banda de rechazo: |H f (θ)| ≤ δs , θs ≤ θ ≤ π

Senales y sistemas 2018 9 / 61

Page 9: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros digitales: Pasa-Altos

� Banda de rechazo: |H f (θ)| ≤ δs , 0 ≤ θ ≤ θs� Banda de paso: 1− δ− ≤ |H f (θ)| ≤ 1 + δ+, θp ≤ θ ≤ π

Senales y sistemas 2018 10 / 61

Page 10: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros digitales: Pasa-Banda

� Banda de paso: 1− δ− ≤ |H f (θ)| ≤ 1 + δ+, θp1 ≤ θ ≤ θp2

� Bandas de rechazo:|H f (θ)| ≤ δs1, 0 ≤ θ ≤ θs1|H f (θ)| ≤ δs2, θs2 ≤ θ ≤ π

Senales y sistemas 2018 11 / 61

Page 11: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros digitales: Rechaza-Banda

� Bandas de paso:1− δ−1 ≤ |H f (θ)| ≤ 1 + δ+1 , 0 ≤ θ ≤ θp11− δ−2 ≤ |H f (θ)| ≤ 1 + δ+2 , θp2 ≤ θ ≤ π

� Banda de rechazo: |H f (θ)| ≤ δs , θs1 ≤ θ ≤ θs2

Senales y sistemas 2018 12 / 61

Page 12: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros digitales: Multi-Banda

Filtro Multi-Banda constante a trozos

Senales y sistemas 2018 13 / 61

Page 13: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros analogicos: Pasa-Bajos

� Banda de paso: 1− δp ≤ |HF (ω)| ≤ 1, 0 ≤ ω ≤ ωp

� Banda de rechazo: |H f (ω)| ≤ δs , ω ≥ ωs

Senales y sistemas 2018 14 / 61

Page 14: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Especificaciones de filtros analogicos

Otras especificaciones usadas en filtros analogicos son:

� Frecuencia de corte de −3dB: ω0 ⇔ |HF (ω0)|2 = 0,5

� Factor de discriminacion: d =

[(1− δp)−2 − 1

δ2s − 1

]1/2� Selectividad: K =

ωp

ωs

� Atenuacion asintotica: 20(p − q)dB/dec

Frecuencia no limitada a π ⇒ Se suele utilizar graficos asintoticoscon escala logarıtmica en frecuencia

Senales y sistemas 2018 15 / 61

Page 15: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Fase lineal (LP)

Un filtro con fase lineal H f (θ) = A(θ)e−jτpθ

� Retarda por igual todas las frecuencias

� No modifica la forma de las senales en la banda de paso

� τp es el retardo de fase y se mide en muestras

� Si x [n] tiene su espectro en la banda de paso y τp es entero⇒ y [n] = x [n − τp]

� Para filtros de fase no lineal se define τp(θ) , −φ(θ)/θ

Senales y sistemas 2018 17 / 61

Page 16: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Fase lineal generalizada (GLP)

Un filtro con fase lineal generalizada H f (θ) = A(θ)e j(φ0−τgθ)

� No retarda por igual todas las frecuencias

� Modifica la forma de las senales en la banda de paso

� τg es el retardo de grupo y se mide en muestras

� Si x [n] = e[n] cos(θcn + θ0) esta en la banda de paso y τg esentero⇒ y [n] = e[n − τg ] cos(θcn + θ0 + φ0 − τgθc)

� Para filtros de fase no lineal se define τg (θ) , −dφ(θ)/dθ

Senales y sistemas 2018 18 / 61

Page 17: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros de fase mınima

Libertad en la eleccion de la localizacion de los ceros del filtro ⇒Permite mantener la respuesta en magnitud y cambiar la respuestade fase.

� Si β es un cero de Hz(z) ⇒ Hz(z) = (1− βz−1)Hz0 (z)

� Si β−1 es un cero de Hz1 (z) ⇒ Hz

1 (z) = β(1− β−1z−1)Hz0 (z)

Como β − e−jθ = −e−jθ(1− βe jθ) = −e−jθ(1− βe−jθ),Hz(z) y Hz

1 (z) tienen la misma magnitud y distinta fase

Teorema

Si |β| < 1, el retardo de grupo de Hz1 (z) es mayor que el de Hz(z).

Minima fase ⇔ todos los ceros dentro del circulo unitario.

Senales y sistemas 2018 19 / 61

Page 18: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros de fase mınima

Senales y sistemas 2018 20 / 61

Page 19: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros pasatodoPara corregir la fase

H(z) =a∗ − z−1

1− az−1

con |a| < 1

Senales y sistemas 2018 21 / 61

Page 20: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Diseno de filtros digitales

Pasos para el diseno de filtros digitales:

1 Determinar las especificaciones a partir del problema aresolver (!)

2 Obtener la transferencia del filtro de mınima complejidad quecumpla las especificaciones

3 Verificar por medios analıticos, simulaciones y pruebas ensituaciones reales

4 Implementar en hardware o software

Senales y sistemas 2018 22 / 61

Page 21: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros FIR

� Propios del procesamiento digital

� Respuesta en fase lineal

� Incondicionalmente estables

� Gran flexibilidad en las posibles respuestas en amplitud

� Tecnicas de diseno convenientes

� Suelen necesitar orden elevado para cumplir lasespecificaciones practicas

Senales y sistemas 2018 23 / 61

Page 22: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros IIR

� Disenos en el dominio digital de filtros IIR son muy complejoso de resultados pocos satisfactorios

� Se disenan en el dominio analogico y luego se transforman

� No tienen gran flexibilidad en cuanto a la respuesta enfrecuencia

� No tienen fase lineal

� Son de menor orden que filtros FIR con igualesespecificaciones

Senales y sistemas 2018 24 / 61

Page 23: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros de respuesta impulsional finita

Filtro FIR causal:

Hz(z) = h[0] + h[1]z−1 + . . .+ h[N]z−N

� Tienen todos sus polos (N) en cero

� Orden del filtro: N

� Respuesta en fase lineal posible

� Incondicionalmente estables

� Propios del procesamiento digital

Senales y sistemas 2018 26 / 61

Page 24: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Ubicacion de los ceros

� Filtro real ⇒ Ceros complejos conjugados

� Cualquier numero de ceros en z = 1

� Cualquier numero de ceros en z = −1

� Pares complejos conjugados sobre z = e±jα

� Si z = r (r 6= 1) es cero ⇒ z = r−1 tambien

� Si z = re jα es cero ⇒ z = re−jα, z = r−1e jα y z = r−1e−jα

Senales y sistemas 2018 27 / 61

Page 25: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Diseno por truncado de la respuesta impulsional

� Determinar la respuesta de amplitud deseada Ad(θ)

� Elegir el tipo de filtro FIR

� Elegir el orden del filtro N ⇒ La respuesta en frecuenciadeseada es H f (θ) = Ad(θ)e j(µπ/2−θN/2) (µ = 0 o µ = 1)

� Calcular la respuesta impulsional ideal (F−1)

hd [n] =1

∫ π

−πAd(θ)e j(µπ/2−θN/2)e jθndθ

� Truncar la respuesta ideal:

h[n] =

{hd [n] 0 ≤ n ≤ N0 c.c .

Senales y sistemas 2018 29 / 61

Page 26: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Fenomeno de Gibbs

� Metodo TRI ≡ Ripple constante

� Ej: (a) N = 10 y (b) N = 40 (L , N + 1)

� No permite ajustar tolerancias (δ’s) ⇒ Ventanas

Senales y sistemas 2018 30 / 61

Page 27: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Diseno de filtros FIR con ventanas

� Coef. del filtro: h[n] =

{w [n]hd [n], 0 ≤ n ≤ N0, c .c .

� H f (θ) =1

2π{W f ~ H f

d} =1

∫ π

−πW f (λ)H f

d (θ − λ)dλ

Cada ventana impone cierto ancho de transicion y tolerancias:

Ventana Transicion δp = δs Ripple [dB] Aten. [dB]

rectangular 4π/L 0.09 0.75 21Bartlett 8π/L 0.05 0.45 26

Hann 8π/L 0.0063 0.055 44Hamming 8π/L 0.0022 0.019 53Blackman 12π/L 0.0002 0.0017 74

Kaiser (α = 10) 13π/L 0.00001 0.000087 100

� Sencillo y eficiente� Todas las bandas de transicion son de igual ancho y todas las

tolerancias son iguales� No es optimo

Senales y sistemas 2018 31 / 61

Page 28: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Diseno por cuadrados mınimos

� Se minimiza la energıa de la diferencia, pero pesando cadabanda de manera diferente:ε2 =

∫ π0 E 2(θ)dθ =

∫ π0 V 2(θ)[Ad(θ)− A(θ)]2dθ

donde V (θ) es la funcion de peso

Ventajas:

� Es sencillo y N en gral. es menor que con ventanas

� Complejidad de calculo moderada

Desventajas:

� Es un metodo de prueba y error

� Conviene fijar las bandas de transicion un poco mas angostasque lo necesario

Matlab: firls

Senales y sistemas 2018 33 / 61

Page 29: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Diseno de filtros equiripple

� Metodos previos → amplitud del ripple es mayor cerca de lasbandas de transicion y luego decrece

� Si se logra igual ripple en toda la banda el filtro podrıaresultar de menor orden

� Tecnica MinMax: Con E (θ) = V (θ)[Ad(θ)− A(θ)]

Ming [n]

Maxθ∈S|E (θ)|

con S es el conjunto de todas las bandas de paso y de rechazo

� Solucion: Teorema de alternancia (Remez, 1957)

� Se resuelve usualmente con el algoritmo de Parks-McClellan(firpm.m en Matlab)

Senales y sistemas 2018 34 / 61

Page 30: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros digitales IIR

� Tienen al menos un polo no ubicado en el origen

� Corresponden a ecuaciones recursivas

� Tienen fase no lineal (distorsionan la senal)

� Pueden ser inestables

� Poco flexibles en cuanto a la rta. en frecuencia

� Son de menor orden que FIR con iguales especificaiones

� Disenos en el dominio digital de filtros IIR son muy complejoso de resultados pocos satisfactorios

� Se disenan en el dominio analogico y luego se transforman

Senales y sistemas 2018 35 / 61

Page 31: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros analogicos

El diseno se basa en la respuesta en magnitud al cuadrado:

|HF (ω)|2 =1

1 + ∆(ω/ω0)= HL(s)HL(−s)

∣∣∣s=jω

con ∆(ω/ω0) la funcion de atenuacion (no negativa y racional)Los polos del filtro se eligen en el semiplano izquierdo (SPI)

Los filtros analogicos mas comunes son:

� Butterworth: ∆(ω/ω0) = (ω/ω0)2N

� Chebyshev I: ∆(ω/ω0) = ε2T 2N(ω/ω0)

� Chebyshev II: HF (ω) = 1− HFChI(ω0/ω)

� Elıptico: ∆(ω/ω0) = ε2R2N(ω/ω0)

Senales y sistemas 2018 37 / 61

Page 32: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros Butterworth

Butterworth Pasa-Bajos:|HF (ω)|2 =1

1 + (ω/ω0)2N

� Respuesta monotona decreciente (sin ripple)

� Es maximamente plano en ω = 0 (2N − 1 der. = 0)

� |HF (0)| = 1 y |HF (ω0)| =√

1/2

� Atenuacion asintotica: −20NdB/dec

Senales y sistemas 2018 38 / 61

Page 33: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros Butterworth

Filtro Butterworth pasabajos:

� Tiene los polos sobre el cırculo {|s| = ω0}� No tiene ceros

� Ej: (a) N = 3(b) N = 4

Diseno:

� N >loge(1/d)

loge(1/k)

� ωp[(1− δp)−2 − 1]−1/2N < ω0 < ωs [δ−2s − 1]−1/2N

Senales y sistemas 2018 39 / 61

Page 34: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros Chebyshev I

Chebyshev I Pasa-Bajos: |HF (ω)|2 =1

1 + ε2T 2N(ω/ω0)

� Ripple en la banda de paso ⇒ Menor banda de trans.

� Atenuacion asintotica:−20NdB/dec

� Ej: (a) N = 2(b) N = 3

Senales y sistemas 2018 40 / 61

Page 35: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros Chebyshev I

Chebyshev I Pasa-Bajos:

� Polos sobre elipse (ω0 sinh(sinh−1( 1

ε)

N ),ω0 cosh(sinh−1( 1

ε)

N ))

� No tiene ceros

� Ej: (a) N = 3(b) N = 4

Diseno:

� N >cosh−1(1/d)

cosh−1(1/k)y ω0 = ωp

� ε = [(1− δp)−2 − 1]1/2

Senales y sistemas 2018 41 / 61

Page 36: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros Chebyshev II

Chebyshev II Pasa-Bajos: |HF (ω)|2 =ε2T 2

N(ω0/ω)

1 + ε2T 2N(ω0/ω)

� Ripple en la banda de rechazo

� Polos inversos del Cheb. I (νk = ω0/sk) y ceros en eje jω

� Atenuacion asintotica:−20dB/dec o 0

� Ej: (a) N = 2(b) N = 3

Diseno:

� N >cosh−1(1/d)

cosh−1(1/k)� ω0 = ωs

� ε2 = [δ−2s − 1]−1/2

Senales y sistemas 2018 42 / 61

Page 37: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Filtros Elıpticos

Elıptico Pasa-Bajos: |HF (ω)|2 =1

1 + ε2R2N(ω/ω0)

� Tiene ripple en banda de paso y de rechazo

� Tiene la banda de transicion mas angosta ⇔ Mınimo orden

� Ceros en eje jω

� Ej: (a) N = 2(b) N = 3

Diseno:

� N >K(k2)K(1− d2)

K(1− k2)K(d2)� ω0 =

√ωsωp

� ε = [(1− δp)−2 − 1]1/2

Senales y sistemas 2018 43 / 61

Page 38: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Transformaciones de frecuencia

Dado HL(s) el filtro Pasa-Bajos disenado (en gral. ω0 = 1):

� Cambio de variables: s = f (s), con f (·) funcion racional

� Nuevo filtro: HL(s) = HL(s)|s=f (s)

� Para estabilidad: SPI → SPI

El nuevo filtro HL(s) puede ser:

� Pasa-Bajos

� Pasa-Altos

� Pasa-Banda

� Rechaza-Banda

Senales y sistemas 2018 45 / 61

Page 39: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Pasa-Bajos

Cambio de variables: s =s

ωc, ω =

ω

ωcDiseno del filtro:

� Disenar un filtro pasabajos con las tolerancias especificadas yω0 = 1

� Hacer el cambio de variable con:

ωc = ˜ω−3dB para filtro Butterworth

ωc = ωp para Chebyshev I

ωc = ωs para Chebyshev II

ωc =√ωpωs para filtro Elıptico

Senales y sistemas 2018 46 / 61

Page 40: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Pasa-Altos

Cambio de variables: s =ωc

s, ω =

ωc

ωDiseno del filtro:

� Elegir ωc positivo (por ejemplo ωc = 1)

� Transformar las especificaciones ωp = ωcωp

y ωs = ωcωs

� Disenar un filtro Pasa-Bajos con las tolerancias δp, δs ybandas delimitadas por ωp, ωs

� Obtener el filtro Pasa-Altos HL(s) con el cambio de variables(= orden y p = q)

Senales y sistemas 2018 47 / 61

Page 41: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Pasa-Altos

En forma grafica:

Senales y sistemas 2018 48 / 61

Page 42: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Pasa-Banda

Cambio var: s =s2 + ωlωh

s(ωh − ωl), ω =

ω2 + ωlωh

ω(ωh − ωl), con ωl < ωh

Diseno del filtro:

� Elegir ωl = ωp1, ωh = ωp2 y δs = Min{δs1, δs2}� Con esta eleccion ωp = 1, ωs = Min{|ωs1|, |ωs2|} (notar que

son las frecuencias transformadas)

� Disenar el filtro Pasa-Bajos y hacer el cambio de variables

� El orden de HL(s) es el doble que el de HL(s)

Senales y sistemas 2018 49 / 61

Page 43: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Pasa-Banda

En forma grafica:

Senales y sistemas 2018 50 / 61

Page 44: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Rechaza-Banda

Cambio var: s =s(ωh − ωl)

s2 + ωlωh, ω =

ω(ωh − ωl)

ω2 + ωlωh, con ωl < ωh

Diseno del filtro:

� Elegir ωl = ωp1, ωh = ωp2 y δp = Min{δp1, δp2}� Con esta eleccion ωp = 1, ωs = Min{|ωs1|, |ωs2|}� Disenar el filtro Pasa-Bajos y hacer el cambio de variables

� El orden de HL(s) es el doble que el de HL(s)� Puede hacerse en dos pasos:

1 Pasa-Bajos a Pasa-Altos con ωc = 12 Pasa-Bajos a Pasa-Banda

Senales y sistemas 2018 51 / 61

Page 45: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Pasa-Bajos – Rechaza-Banda

En forma grafica:

Senales y sistemas 2018 52 / 61

Page 46: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Discretizacion del filtro

El filtro analogico HL(s) debe ser discretizado ⇒ Hz(z)

El filtro digital resultante:

� Debe ser real, causal, racional y estable

� No debe ser de mayor orden

� Debe tener respuesta en frecuencia similar (θ = ωT )

Distintos metodos para lograrlo:

� Respuesta impulsional invariante

� Metodo de Euler

� Transformacion bilineal

Senales y sistemas 2018 54 / 61

Page 47: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Respuesta impulsional invariante

Idea:

1 Obtener la h(t) del filtro analogico con la TL inversa

2 Muestrear h(t) para obtener h[n] = Th(nT )

3 Obtener Hz(z) con la TZ de h[n]

Caracterısticas:

� Los polos sk se mapean a zk = eskT

� Hay aliasing: H f (θ) =∑∞

k=−∞HF ( θ−2kπT )

� No sirve para filtros Pasa-Altos y Rechaza-Banda (p = q)

� Puede usarse para Pasa-Bajos y Pasa-Banda, pero lastolerancias se deben cumplir a prueba y error

� El filtro resultante es real, causal, racional y estable (=orden)

Senales y sistemas 2018 55 / 61

Page 48: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Diferencias hacia atras

s ≈ 1− z−1

T⇒ Hz(z) = HL(s)|

s= 1−z−1

T

� Hz(z) es real, causal, estable, racional y del mismo orden

� H f (θ) solo se parece a HT (θ/T ) para θ � 1

� Util solo para filtros Pasa-Bajos con T � 1/ω0

� jθ = − log(1− jωT )

� SPI se mapea en {|z − 1/2| ≤ 1/2}

Senales y sistemas 2018 56 / 61

Page 49: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Transformacion Bilineal

Una mejor aproximacion se logra mediante

s ≈ 2

T

1− z−1

1 + z−1⇒ Hz(z) = HL(s)|

s= 2T

1−z−1

1+z−1

� Hz(z) es real, causal, estable, racional y del mismo orden

� Transformacion Bilineal que mapea el SPI a{|z | ≤ 1}

Senales y sistemas 2018 57 / 61

Page 50: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Predistorsion

Para s = jω ⇔ z =1 + jωT

2

1− jωT2

= e jθ ⇔ θ = 2arctg(ωT

2)

� Con la transformacion bilineal no ocurre aliasing

� Altas frecuencias se “amontonan” al acercarse a z = −1

� En el diseno debe realizarse una predistorsion para lograr unarespuesta en frecuencia deseada:

ωp =2

Ttg

(θp2

)y ωs =

2

Ttg

(θs2

)

� El valor de T es arbitrario (1 o 2) para el diseno

� Sirve para todos los tipos de filtros!

Senales y sistemas 2018 58 / 61

Page 51: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Predistorsion

En forma grafica:

Senales y sistemas 2018 59 / 61

Page 52: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Tecnica de diseno

1 Hacer la predistorsion de las especificaciones de frecuenciaoriginales

2 Convertir las tolerancias a las de un filtro Pasa-Bajos

3 Disenar el filtro Pasa-Bajos que cumpla las especificaciones

4 Hacer el cambio de variables necesario para transformarlo a laclase de filtro deseado

5 Realizar el cambio de variables correspondiente a latransformacion bilineal

Senales y sistemas 2018 60 / 61

Page 53: SENALES Y~ SISTEMAS Filtros Digitales · Filtros digitales Operan con senales~ de tiempo discreto (secuencias) Se implementan en microprocesadores (computadoras, DSPs, FPGAs) o hardware

Conclusiones filtros IIR

� Diseno basado en filtros analogicos

� Logran menor orden que los FIR

� El filtro elıptico da menor orden

� Fase no puede ser lineal (se busca filtro de mınima fase)

� Mas sensibles a largo de palabra finito y cuantizacion

Estrategia de Diseno:

1 Predistorsionar ω’s y convertir δ’s a Pasa-Bajos

2 Disenar un filtro analogico Pasa-Bajos

3 Transformar a la clase de filtro deseada

4 Discretizar el filtro con transf. Bilineal

Senales y sistemas 2018 61 / 61