diseño de filtros discretos
TRANSCRIPT
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