Diseño de Filtros Discretos

Embed Size (px)

Citation preview

5

PAGE 2UNIVERSIDAD NACIONAL DE INGENIERA

FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA

PROCESAMIENTO DIGITAL DE SEALES

7

DISEO DE FILTROS DISCRETOS7.0 INTRODUCCIN

Los filtros, son una clase particularmente importantes, de los sistemas lineales invariantes en el tiempo. Estrictamente hablando, el trmino de filtro de frecuencia selectiva, sugiere un sistema que pasan ciertas componentes de frecuencias y rechaza totalmente las otras; pero en un contexto amplio, algn sistema que modifica ciertas frecuencias, es llamado, tambin un filtro.

En general, el diseo de los filtros involucra las siguientes etapas: a) La especificacin, de las propiedades deseadas del sistema; b) La aproximacin, de las especificaciones usando un sistema causal en tiempo discreto; c) La realizacin del sistema. En un sentido prctico, el filtro deseado, es a menudo implementado con computacin digital y usado el filtro, en una seal que es derivada de una seal en tiempo continuo, por un muestreo peridico, seguido por una conversin analgica a digital. Por esta razn, se tiene a menudo referido el diseo de los filtros en tiempo discreto como filtros digitales.

7.1 CARACTERSTICAS DE UN FILTRO

Un filtro (lineal) esta caracterizado, por su funcin de transferencia iscrona o respuesta en frecuencia:

Donde se descompone a menudo en respuesta en amplitud y respuesta en fase :

Se define igualmente la atenuacin , medida en decibelios, y el retardo de grupo , medido en segundos:

Ejemplo 1Veamos sobre Matlab la respuesta en amplitud, la respuesta en fase, la atenuacin, y el retardo de grupo de un filtro donde se conoce la funcin de transferencia : H(s)=1/s+1 :

freqs([1],[1 1],logspace(-2,+2));

se muestra la respuesta de 1/(s+1) entre 10e-2 y 10e2 rad/s. Para obtener la atenuacin y el retardo de grupo, es necesario solicitarlo explicitamente :

[H,w]=freqs([1],[1 1],logspace(-2,+2));

subplot(2,1,1)

semilogx(w,-20*log10(abs(H)));

xlabel(Frequency (radians)); ylabel(Attenuation (dB)); grid;

subplot(2,1,2);

semilogx (w(1:length(w)-1), -diff(unwrap(angle(H)))./diff(w));

xlabel(Frequency (radians)); ylabel(Group delay (s)); grid;

EMBED Word.Picture.8 Fig. 7.1 a. (a la izquierda) Respuesta en frecuencia del filtro; b. (a la derecha) Atenuacin y retardo de grupo

7.1.1 ESPECIFICACIONES IDEALES

Una transformacin no contribuye a la distorsin de la seal a travs de la cul es aplicada si ella es reconstruida en la salida una seal de la misma forma que la seal de entrada . La seal de entrada puede sin embargo haber sufrido una amplificacin o un retardo :

Esto corresponde, en transformada de Fourier, a una amplificacin del espectro de amplitud y a un desfasaje lineal :

luego a una funcin de transferencia del tipo :

Si se considera ahora un filtro, cuyo rol es de producir una seal de salida correspondiente a un rango de frecuencias de la seal de entrada, es claro que en este filtro, se debe evitar toda distorsin. Debe pues, presentar una respuesta en amplitud constante y una respuesta en fase lineal y pasar por 0, al menos en el rango de frecuencias til, llamada banda pasante (Figura 7.2).

Fig. 7.2 Condiciones de non-distorsin de una seal por un filtro: respuesta en amplitud y en fase

En la prctica, se admite a veces que el desfasaje de un filtro no se anula para ( =0:

Esto puede implicar una distorsin de la forma de la seal recibida.

7.1.2 ESPECIFICACIONES EN AMPLITUD

Los filtros realizando las modificaciones del espectro de amplitud son clasificados en filtros pasa-bajo, paso-banda, paso-alto, o supresor-banda. La forma general de la funcin de transferencia de un filtro es:

El orden del filtro es n, que debe satisfacer a n>=m. Los cros de N(s) son los ceros del filtro; los ceros de D(s) son los polos del filtro. Los polos del filtro, deben estar situados a la izquierda del eje imaginario para que el filtro sea estable.

Las especificaciones de un filtro paso-bajo tpico son mostrados en la figura 7.3. Su banda pasante se sita entre 0 y y su banda atenuada se extiende de al infinito.

Fig. 7.3 Especificaciones en amplitud de un filtro paso-bajoUn filtro paso-alto se muestra en la figura 7.4. Su banda atenuada va de 0 a , y su banda pasante de al infinito.

Fig. 7.4 Especificaciones en amplitud de un filtro paso-altoUn filtro paso-banda, se muestra en la figura 7.5, y tiene dos bandas atenuadas, de 0 a y de al infinito. Deja pasar las frecuencias entre y .

Fig. 7.5 Especificaciones en amplitud de un filtro paso-bandaLas especificaciones de un filtro supresor-banda se muestra en la figura 7.6.

Fig. 7.6 Especificaciones en amplitud de un filtro supresor-bandaPuede tenerse casos en el que se tiene que realizar filtros con especificaciones ms complejas, tal como se muestra en la figura 7.7.

Fig. 7.7 Especificaciones en amplitud de un filtro paso-bajo complejo7.1.3 ESPECIFICACIONES EN FASE O EN RETARDO

La condicin de no distorsin de la fase, no es requerido solo por las seales de audio. Esta condicin, es tambin muy importante cuando se transmiten otro tipo de seales, como por ejemplo video. Una distorsin de fase implica en efecto una modificacin de la forma de las seales que puede falsear la percepcin (seales de video).

Cuando se sitan los ceros de H(s) sobre el eje imaginario, el filtro as obtenido es a mnima fase. Un sistema a fase mnima, es un sistema donde los ceros y polos estn a la izquierda (o sobre) del eje imaginario. Consideremos en efecto dos sistemas, donde el primero es a fase mnima, y el segundo difiere del primero por la posicin de los ceros. Es claro que estos dos sistemas poseen la misma respuesta en amplitud.

EMBED MSDraw.Drawing.8 Fig. 7.8 Dos sistemas con la misma respuesta en amplitud. El de la izquierda esta a una fase mnima

La respuesta en amplitud y la respuesta en fase de un sistema a mnima fase no son independientes. Ambas satisfacen las relaciones complejas llamadas de Bayard-Bode, que permiten encontrar la respuesta en fase del sistema, conociendo su respuesta en amplitud. Esta respuesta en fase no satisface en general las condiciones de no distorsin. Se busca corregir la curva de fase, multiplicando H(s) por una funcin paso-todo. Un paso-todo es un filtro donde los ceros se encuentran en el semiplano derecho, en simetra horizontal con su polos. Esto implica que:

donde P(s) es un polinomio cualquiera.

La respuesta de tal sistema en amplitud, es igual a la unidad. Su respuesta en fase es igual a la suma de las contribuciones de los ceros menos la suma de las contribuciones de los polos.

El filtro paso-todo, que permite verificar a posteriori las condiciones de no distorsin, es llamado, compensador de retardo.

7.2 VENTANAS UTILIZADAS

En la tabla 7.1, se muestran las ventanas comnmente utilizadas

Tabla 7.1 Ventana Kaiser

Tabla 7.1 Ventanas comnmente usadas

7.3 DISEO DE FILTROS DISCRETOS IIR A PARTIR DE

FILTROS CONTINUOS

7.3.1 DISEO DE UN FILTRO POR INVARIANZA AL IMPULSO

En el procedimiento de diseo, por invarianza al impulso, para transformar filtros de tiempo continuo en tiempo discreto, la respuesta impulsional del filtro a tiempo discreto, es seleccionado, tomando muestras igualmente espaciadas de la respuesta impulsional del filtro en tiempo continuo; es decir,

Sea el filtro pasivo conformado por una resistencia R y un condensador C y que se muestra en la figura 7.9

R

C

Figura 7.9 Filtro conformado por una resistencia R y un condensador C

La funcin de transferencia del sistema esta dada por

y la respuesta impulsional h(t) esta dada por

Si la respuesta impulsional, es muestreada cada T segundos. T: periodo de muestreo

entonces la transformada z del filtro discreto es

siendo los valores de a y b

7.3.2 DISEO DE UN FILTRO POR LA TRANSFORMACIN BILINEAL

Esta basada en la integral de Riemann. La integral de Riemann de una serie de tiempo x[n], esta dada por

tomando la transformada de z

entonces la relacin entre la entrada y salida

como el integrador en el plano continuo esta dado por

igualando los integradores en el plano s y z

la relacin entre s y z se denomina transformacin Bilineal

esto es,

: Es la funcin del sistema a tiempo continuo

H(z) : Es la funcin del sistema a tiempo discretotambin podemos expresar z en funcin de s

Si sustituimos, y y si consideramos , se tendrn las siguientes relaciones

o

Estas propiedades de la transformacin Bilineal, as como, una relacin entre el plano s y el plano z, se muestran resumidas en las figuras 7.10 y 7.11. En la figura 7.11, se observa que el rango de frecuencias se relaciona con , mientras que el rango se relaciona con .

Fig. 7.10 Relacin entre el plano s y plano z utilizando la transformacin Bilineal

Fig. 7.10 Relacin entre la frecuencia continua dentro del circulo unitario por la transformacin Bilineal

7.3.3 EJEMPLO DE DISEO DE FILTROS

Ejemplo : Paso-Bajo simple

1. BUTTERWORTH

help butter

BUTTERButterworth digital and analog filter design.

[B,A] = BUTTER(N,Wn) designs an N'th order lowpass digital

Butterworth filter and returns the filter coefficients in length

N+1 vectors B and A. The cut-off frequency Wn must be

0.0 < Wn < 1.0, with 1.0 corresponding to half the sample rate.

BUTTER(N,Wn,'s') design analog Butterworth filters.

help buttord

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs) returns the order N of the

lowest order digital Butterworth filter that loses no more than

Rp dB in the passband and has at least Rs dB of attenuation

in the stopband. The passband runs from 0 to Wp and the

stopband extends from Ws to 1.0, the Nyquist frequency.

BUTTORD also returns Wn, the Butterworth natural frequency

(or, the "3 dB frequency") to use with BUTTER to achieve the specifications.

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs, 's') does the

computation for an analog filter.

[n,wn]=buttord(1,1.2,3,40,'s')

n =

26

wn =

1.0052 [N,D]=butter(n,wn,s);

zplane(N,D)

format long

N

N=N(length(N));

freqs(N,D);

2. TCHEBYCHEFF

help cheby1

CHEBY1Chebyshev type I digital and analog filter design.

[B,A] = CHEBY1(N,R,Wn) designs an N'th order lowpass digital

Chebyshev filter with R decibels of ripple in the passband.

CHEBY1 returns the filter coefficients in length N+1 vectors B

and A. The cut-off frequency Wn must be 0.0 < Wn < 1.0,

with 1.0 corresponding to half the sample rate. Use R=0.5 as

a starting point, if you are unsure about choosing R.

CHEBY1(N,R,Wn,'s') design analog Chebysev Type I filters.

In this case, Wn can be bigger than 1.0.

help cheb1ord

CHEB1ORD Chebyshev type I filter order selection.

[N, Wn] = CHEB1ORD(Wp, Ws, Rp, Rs) returns the order N of the

lowest order digital Chebyshev type I filter that loses no

more than Rp dB in the passband and has at least Rs dB of

attenuation in the stopband. The passband runs from 0 to

Wp and the stopband extends from Ws to 1.0, the Nyquist

frequency. CHEB1ORD also returns Wn, the Chebyshev

natural frequency to use with CHEBY1 to achieve the

specifications.

[N, Wn] = CHEB1ORD(Wp, Ws, Rp, Rs, 's') does the computation

for an analog filter.

[n,wn]=cheb1ord(1,1.2,3,40,'s')

n =

9

wn =

1

[N,D]=cheby1(n,3,wn,'s');

N=N(length(N));

zplane(N,D) freqs(N,D,logspace(-1,1,500));

3. CAUER

[n,wn]=ellipord(1,1.2,3,40,'s')

n =

5

wn =

1

help ellip

ELLIPElliptic or Cauer digital and analog filter design.

[B,A] = ELLIP(N,Rp,Rs,Wn) designs an N'th order lowpass digital

elliptic filter with Rp decibels of ripple in the passband and

a stopband Rs decibels down. ELLIP returns the filter

coefficients in length N+1 vectors B and A. The cut-off

frequency Wn must be 0.0 < Wn < 1.0, with 1.0 corresponding to

half the sample rate. Use Rp = 0.5 and Rs = 20 as starting

points, if you are unsure about choosing them.

ELLIP(N,Rp,Rs,Wn,'s') design analog elliptic filters.

In this case, Wn can be bigger than 1.0.

[N,D]=ellip(n,3,40,wn,'s');

zplane(N,D)

freqs(N,D,logspace(-1,1,500));

7.4 DISEO DE FILTROS FIR POR VENTANAS

Anteriormente, se ha indicado de que es conveniente que los filtros tengan fase lineal. Aunque los filtros IIR, no tienen en general fase lineal, sta se puede conseguir con un filtro digital FIR.

Dada una respuesta en frecuencia deseada, , como la de un filtro paso bajo ideal, simtrico con respecto al origen, la correspondiente respuesta al impulso, , es simtrica con respecto al punto n=0, pero en general es de duracin infinita. La forma ms directa, de obtener un filtro FIR equivalente de longitud N, es truncar simplemente esta secuencia infinita. La operacin de truncamiento, se puede considerar, como el resultado de multiplicar, la secuencia de duracin infinita por una ventana w[n].

El filtrado digital, H(z), es obtenida siguiendo los siguientes pasos:

A partir de la respuesta en frecuencia deseada, , obtener la correspondiente respuesta al impulso, .

Multiplicar, , por la funcin de ventana, w[n].

Calcular la respuesta al impulso del filtro digital

y determinar la funcin H(z).

Profesor Jorge Alberto Del Carpio Salinas, Dr. Ing. E-Mail : [email protected].

_1029247284.doc

(s- (c- (c+ (S+

EMBED Equation.2 (dB)

-As

-Ap

0

(

_1026475770.unknown

_1027287985.unknown

_1026328264.unknown

_1053356629.bin

_1058322523.unknown

_1058325089.unknown

_1058335266.unknown

_1058335810.unknown

_1058336050.unknown

_1092256241.unknown

_1058335847.unknown

_1058335363.unknown

_1058325119.unknown

_1058324966.unknown

_1058324990.unknown

_1058322558.unknown

_1058321817.unknown

_1058322251.unknown

_1058322372.unknown

_1058322233.unknown

_1058316577.unknown

_1058321787.unknown

_1053356697.bin

_1053353547.unknown

_1053355027.unknown

_1053355153.unknown

_1053355375.unknown

_1053355474.unknown

_1053355541.unknown

_1053355240.unknown

_1053355061.unknown

_1053353890.unknown

_1053354970.unknown

_1053353788.unknown

_1053352574.unknown

_1053353056.unknown

_1053353198.unknown

_1053352618.unknown

_1052290165.unknown

_1052295998.unknown

_1029247941.doc

(

0

EMBED Equation.2 (dB)

_1026328300.unknown

_1027288282.unknown

_1026328264.unknown

_1052290038.unknown

_1026321107.unknown

_1028449768.doc

10

-2

10

-1

10

0

10

1

10

2

-100

-80

-60

-40

-20

0

Frequency (radians)

Phase (degrees)

10

-2

10

-1

10

0

10

1

10

2

10

-2

10

-1

10

0

Frequency (radians)

Magnitude

_1029242982.doc

EMBED Equation.3

EMBED Equation.3

EMBED Equation.3

EMBED Equation.3

EMBED Equation.3

_1029242459.unknown

_1029242465.unknown

_1029242507.unknown

_1029242925.unknown

_1029242461.unknown

_1029242415.unknown

_1029246830.doc

(s (c

(

0

EMBED Equation.2 (dB)

-As

-Ap

_1026328300.unknown

_1027288282.unknown

_1026328264.unknown

_1029247230.doc

(c- (s- (S+ (c+

EMBED Equation.2 (dB)

-As

-Ap

0

(

_1026475770.unknown

_1027287985.unknown

_1026328264.unknown

_1028449835.doc

10

-2

10

-1

10

0

10

1

10

2

0

10

20

30

40

50

Frequency (radians)

Attenuation (dB)

10

-2

10

-1

10

0

10

1

10

2

0

0.2

0.4

0.6

0.8

1

Frequency (radians)

Group delay (s)

_1026321191.unknown

_1026321228.unknown

_1027288318.doc

(c (s

(

0

INCORPORER Equation.2 (dB)

-As

-Ap

_1026328300.unknown

_1027288282.unknown

_1026328264.unknown

_1026321124.unknown

_995196238.unknown

_995266918.unknown

_995267783.unknown

_995267820.unknown

_995288148.unknown

_995288124.unknown

_995267809.unknown

_995267766.unknown

_995202618.unknown

_995266828.unknown

_995196336.unknown

_995195379.unknown

_995196208.unknown

_995196137.unknown

_995194095.unknown

_995194650.unknown

_995194742.unknown

_995194018.unknown

_981966588.unknown