You are on page 1of 43

UNIVERSIDAD POLITCNICA DE MADRID

DEPARTAMENTO DE FSICA APLICADA E


INGENIERA DE SISTEMAS
Unidad docente de Electrnica y Automtica

Captulo 12:
Introduccin al Procesamiento digital de Seales

1
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

 INTRODUCCIN AL PROCESAMIENTO DIGITAL DE SEALES ...............................3

12.1 CONCEPTOS BSICOS SOBRE SISTEMAS DISCRETOS ...........................................................4


12.1.1 ESTABILIDAD DE UN SISTEMA DISCRETO .......................................................................7
12.1.2 RESPUESTA EN FRECUENCIA DE UN SISTEMA DISCRETO ................................................7
12.1.3 TRANSFORMADA DE FOURIER DE UNA SECUENCIA........................................................9
12.1.4 TRANSFORMADAS Z .....................................................................................................10
12.1.5 MUESTREO DE SEALES ...............................................................................................13

12.2 FILTROS DIGITALES ............................................................................................................17


12.2.1 FILTROS DE FASE LINEAL O NO DISPERSIVOS ...............................................................19

12.3 DISEO DE FILTROS NO RECURSIVOS (FIR) ......................................................................21


12.3.1 DISEO DE LOS FILTROS MEDIANTE SU RESPUESTA EN FRECUENCIA...........................21

12.4 DISEO DE FILTROS RECURSIVOS (IIR).............................................................................31

12.5 IMPLEMENTACIN DE LOS FILTROS DIGITALES ...............................................................35

12.6 EFECTO DE LA CUANTIFICACIN EN LOS FILTROS ...........................................................37


12.6.1 EFECTOS DE TRUNCAMIENTO Y REDONDEO .................................................................37
12.6.2 CUANTIFICACIN DE SEALES .....................................................................................39
12.6.3 CUANTIFICACIN DE LOS COEFICIENTES......................................................................41
12.6.4 CUANTIFICACIN DE RESULTADOS DE OPERACIONES ..................................................42

12.7 BIBLIOGRAFA .....................................................................................................................43

2 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

 Introduccin al Procesamiento
digital de Seales
Este es un captulo de sntesis donde se unen las disciplinas de la Ingeniera
electrnica con las Ciencias de la Computacin. Sin duda alguna es un buen referente para
cerrar de alguna forma el bucle de conocimientos dados tanto en la Electrnica industrial
junto con los Servosistemas para agregar los impartidos en Clculo automtico. Sin
embargo, no est en la idea de este captulo, introductorio al Procesamiento digital de
Seal, integrarlo con los problemas de codificacin en algn lenguaje de programacin, ya
sea de bajo o de alto nivel; por lo que no se van a ver referencias a la implementacin de la
algoritmia y a los problemas circundantes de programacin en tiempo real. No obstante, se
van a emplear algunos ficheros en Matlab, esto es, en lenguaje de alto nivel, depositados
stos en www.fais.upm.es, para mejorar el entendimiento del significado del tratamiento de
seales digitales.

Cada vez tiene mayor importancia en la ingeniera el procesado de seales digitales,


en ella, sobre todo, se ha catalizado por el aumento de potencia de los ordenadores con una
bajada drstica de los precios. Tanto es as que hay en el mercado desde hace algunos aos
procesadores especficos para el procesamiento digital, denominados por las siglas DSP
(Digital Signal Processor). Pero hasta hoy en da, los diseos de procesadores genricos
son ampliados en registros e instrucciones para poderlas destinarlas a tareas de
procesamiento de seales, sea el caso ms llamativo del conjunto de instrucciones MMX
insertadas en la familia INTEL a partir del mtico PENTIUM.

FAIS-UPM-DOC002-99 3
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Por slo hablar de las aplicaciones industriales que se sustentan en procesamiento


digital de seales se podran citar algunas tales como:

Instrumentacin electrnica:
a) Filtrado de seales
b) Osciloscopios digitales
c) Analizadores de espectro
Electrnica de Potencia:
a) Seales de disparo sobre SCRs, IGBTs, MOSFET,
Control:
a) Reguladores discretos
b) Controladores de robots
Procesamiento de imgenes:
a) Filtrado de imgenes
b) Reconocimiento de Formas
c) Compresin y descompresin de imgenes
Procesamiento de sonido
a) Identificacin de fonemas
b) Voz sinttica

Por la importancia de esta materia y por la estructura del propio temario es


necesario al menos dedicar algunas clases a la introduccin al Procesamiento digital. Sin
embargo y debido a la acotacin temporal, de todos los posibles aspectos concernientes al
procesado digital de la seal, este tema se centra slo en el diseo de filtros digitales, ya
que se encuentra ntimamente ligado con el anterior captulo dedicado al procesado
analgico de seales, as como por ser ste, captulo final del segundo trimestre y culmine
de esta manera la introduccin a la Instrumentacin electrnica.

Por ltimo, hay que recordar que se van a utilizar los conceptos bsicos sobre
sistemas discretos, los cules estn incluidos en la asignatura de Servosistemas. Y si bien
es cierto que el tercer trimestre de esta asignatura se dedica al estudio de los sistemas
discretos, esta unidad desea ser autocontenida, bien por que el alumno no lo haya cursado
todava bien por que le pueda servir de repaso, de ello se desprende que en un principio se
van a ver los conceptos bsicos sobre sistemas discretos para luego entrar de lleno en lo
que respecta al diseo de filtros digitales.

12.1 Conceptos bsicos sobre sistemas discretos

Posiblemente lo primero en preguntarse sera qu es un filtro digital ?, pues bien,


segn se estudi en el anterior captulo sobre Tratamiento analgico de la Seal, los filtros
analgicos tratan de extraer alguna caracterstica de la seal de entrada; en trminos
frecuenciales, se hablaba del paso de una determinada banda del espectro de la seal de
entrada. Por tanto, los filtros digitales son sistemas discretos que tratan de extraer alguna
caracterstica de una seal muestreada.

4 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

Pero ante esta definicin, aparecen los vocablos tpicos del Control digital, tales
como seal muestreada o sistema discreto. Por lo que se va a proceder a describir los
conceptos bsicos sobre sistemas discretos.

En primer lugar, se puede decir que los sistemas discretos se caracterizan por que
sus entradas y salidas son secuencias de valores; y una secuencia se puede definir como
cualquier conjunto numerado de elementos, es decir, haciendo corresponder a cada nmero
entero un elemento de un conjunto se obtiene una secuencia en dicho conjunto.

La forma general de representar una secuencia es {xk} en donde k, entero asociado


al elemento, es el ndice del mismo. Este ndice podr ser positivo o negativo.

{..., x2 , x1 , x0 , x1 , x2 ,...} {xk } (12. 1 )

El ndice 0 es el origen de la secuencia.

Habiendo definido el concepto de secuencia, al que en breve se asociar con el


resultado del muestreo, el trmino de sistema discreto ya queda ms claro. Un sistema
discreto es un algoritmo que permite transformar una secuencia en otra.

{ y k } = f {x k } (12. 2)

Figura 12. 1 Sistema discreto

Como ejemplo de sistema discreto se podra considerar cualquier programa de


computador que transforme una tabla de valores en otra. Los sistemas discretos pueden
clasificarse en estticos o dinmicos. Un sistema discreto es esttico cuando el elemento de
la secuencia de salida de un cierto ndice depende nicamente del elemento de la secuencia
de entrada del mismo ndice. En caso contrario, el sistema se denomina dinmico, esto es,
la secuencia de salida de un cierto ndice depende de las secuencias de entrada y salida de
rdenes distintos al suyo.

Un sistema discreto es causal si el valor de un elemento de la secuencia de salida


depende nicamente de la secuencia de entrada y salida de menor o igual ndice.

FAIS-UPM-DOC002-99 5
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

y k = f ( y k 1 , y k 2 ,..., x k , x k 1 , x k 2 ,...) (12. 3)

Los sistemas discretos que no verifiquen esta propiedad se denominan no causales.


Si la funcin que relaciona cada elemento de la secuencia de salida es lineal, el sistema se
denomina asimismo lineal. Centrados en los sistemas dinmicos causales, un sistema ser
lineal, si la funcin expresada en (12. 3) es lineal, es decir, de la forma:

y k = a1 y k 1 + a 2 y k 2 + ... + a n y k n + b0 x k + b1 x k 1 + ... + bm x k m (12. 4)

Cuando ai y bi son constantes se dice que el sistema lineal es invariante. Un sistema


lineal invariante verifica el principio de linealidad.

Figura 12. 2 Linealidad de los sistemas discretos dinmicos lineales e


invariantes

En el presente tema slo van a ser considerados los filtros digitales que sean
sistemas discretos dinmicos lineales e invariantes por lo que normalmente se omitirn los
adjetivos para su definicin. Las ecuaciones usadas para definir estos sistemas se
denominan ecuaciones en diferencias y juegan un papel similar al de las ecuaciones
diferenciales lineales en los sistemas continuos.

Se denomina secuencia de ponderacin a la que se obtiene en la salida del sistema


cuando se aplica a la entrada una secuencia tipo impulso.

{g k } = {..., g 2 , g 1 , g 0 , g1 , g 2 ,...} (12. 5)

Si el sistema es causal gk es igual a cero para k < 0.

6 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

Para obtener la secuencia de salida sobre un sistema lineal ante una secuencia de
entrada dada habr de aplicar el operador convolucin discreta, definindose ste como:

{y k } = {g k }* {xk } = {xk }* {g k } (12. 6)

donde {gk} representa la secuencia de ponderacin. En ellas cada elemento de la


secuencia de salida es calculada por la expresin:


yk = g
n =
k n xn = xk n g n
n = (12. 7)

12.1.1 Estabilidad de un sistema discreto

Se dice que un sistema discreto es estable si, ante cualquier secuencia de entrada
acotada la secuencia de salida es tambin acotada.

Para sistemas lineales, la condicin de suficiencia de estabilidad debe cumplir que


la secuencia de ponderacin sea absolutamente sumable:

g
n =
n <
(12. 8 )

12.1.2 Respuesta en frecuencia de un sistema discreto

Tal como se estudi en el captulo 2, al excitar un sistema continuo con seales


sinusoidales, permite desarrollar el anlisis en el dominio de la frecuencia de dichos
sistemas. De manera paralela en los sistemas discretos se va a ver como se puede obtener
una representacin de los mismos que sirvan para caracterizarlos.

Sea un sistema de secuencia de ponderacin {gk} y considrese que su entrada es


excitada por una secuencia del tipo:

{x k } = {e jk } (12. 9)

Cuyos elementos son funcin de un parmetro de . La salida del mismo ser,


segn (12. 7), la secuencia:


yn = g
k =
k e j (n k ) =e jn g
k =
k e j k
(12. 10)

El ndice de la secuencia es n, con lo que el sumatorio es un factor independiente de


este ndice, por tanto:

FAIS-UPM-DOC002-99 7
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

{y n } = g k e jk {e jn }

(12. 11)

Si se define la funcin


G ( ) = g k e jk
(12. 12)

La expresin queda:

{y n } = G( ){e jn } (12. 13)

Esta expresin permite ver como, cuando el sistema es excitado ante una secuencia
tal como la (12. 9), cualquiera que sea , los elementos de la secuencia de salida son
calculados multiplicando las correspondientes de la entrada por el operador G().

Este operador G(), definido por (12. 12), se denomina respuesta en frecuencia del
sistema discreto considerado. Es una funcin del parmetro real y peridica respecto a
l, como puede apreciarse observando (12. 12). Su periodo es 2. La respuesta en
frecuencia es as mismo una funcin compleja requiriendo cualquier representacin grfica
de la misma en dos curvas, por ejemplo, haciendo uso del diagrama de Bode.

Imponiendo las condiciones adecuadas a la funcin de peridica G(), continuidad


a trazos con derivadas de variacin acotada en los intervalos de continuidad, entonces la
expresin (12. 12) es el desarrollo en series de Fourier de G(), siendo los elementos de la
secuencia de ponderacin, {gk}, los coeficientes de dicho desarrollo. Este hecho permite
utilizar la expresin del clculo de los coeficientes del desarrollo para obtener el valor de la
secuencia de ponderacin a partir de la respuesta frecuencial. Se tiene as que:

G ( )e
1 jk
gk = d
2 (12. 14)

Esta expresin (12. 14) permite realizar la operacin inversa a la efectuada en (12.
12). Antes, de la secuencia de ponderacin, {gk}, se obtena la respuesta en frecuencia
G(), mientras que ahora, con (12. 14), de esta funcin G() se obtiene la secuencia de
ponderacin.

De igual forma que se vio en el diseo de filtros analgicos, se puede establecer una
estrategia de definicin del filtro digital mediante su funcin de transferencia a partir de la
respuesta frecuencial deseada. De manera que se puede plantear la determinacin de su
secuencia de ponderacin a partir del conocimiento de su respuesta frecuencial y mediante
el uso de (12. 14). Por ejemplo, en la figura 12.3 se observa la respuesta en frecuencia de

8 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

un filtro paso bajo, contemplndose que sta estar definida entre , por el carcter
peridico de la respuesta en frecuencia de sistemas discretos.

Figura 12. 3 Respuesta frecuencia de un filtro paso bajo discreto

12.1.3 Transformada de Fourier de una secuencia

La forma de asociar a la secuencia de ponderacin {gk} de un sistema la funcin


G(), puede ser extendida a cualquier secuencia que cumpla determinadas propiedades.
As se construye lo que se denomina transformada discreta de Fourier de una secuencia.

De este modo, dada una secuencia {xk}, se define su transformada de Fourier como
la funcin:


X ( ) = x k e jk
(12. 15)

Esta funcin es igualmente peridica, de periodo 2, y en las condiciones antes


indicadas es un desarrollo en serie de Fourier, lo que permite definir la transformada
inversa:

X ( )e
1
xk = j k
d
2 (12. 16)

La transformada de Fourier de una secuencia es una funcin compleja, siendo


usualmente representada grficamente por sus curvas de mdulo y argumento.

FAIS-UPM-DOC002-99 9
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Y al igual que ya se vio en los sistemas continuos, la utilidad ms importante que se


va a hacer de la transformacin de Fourier es la que se deriva de la relacin existente entre
las transformadas de Fourier de las secuencias de entrada y salida de un sistema discreto y
lineal y su respuesta en frecuencia, de manera que:

Y ( ) = G ( )X ( ) (12. 17)

Esta relacin permite tratar los sistemas discretos de una manera semejante a los
continuos, calculando el valor de la secuencia de salida segn el procedimiento indicado en
la figura 12.4, esto es, a partir de la respuesta en frecuencia del sistema y de la
transformada discreta de la secuencia de entrada, se determina la transformada de la
secuencia de salida, segn (12. 17), y se aplica la transformada inversa, obteniendo la
secuencia de salida.

Figura 12. 4 Relacin fundamental de los sistemas discretos

12.1.4 Transformadas z

La variable compleja z es una transformacin no lineal de la variable de Fourier,


con el objeto de que la funcin de transferencia del sistema discreto obtenida de esta
transformacin sea racional.

Dada una secuencia real {xk} se define su transformada en z como una funcin
compleja:


X (z ) = Z {x k } = x k z k z C
k = (12. 18)

10 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

En estas expresiones se pueden observar las ventajas de, por una parte, no ser
funciones peridicas, y por otra, de ser racionales. Adems, es fcil ver que la definicin
de transformada de Fourier a z, se consigue haciendo

z = e j (12. 19)

As, por ejemplo, la transformada en z de una secuencia impulso ser:


{ k } = {1,0,0,...} (z ) = k z k = z 0 = 1
k = (12. 20)

La transformada de la secuencia en escaln resultar:


{X k } = {1,1,1,...} X (z ) = xk z k = z k =
1
=
z
k = k =0 1 z 1
z 1 (12. 21)

Otro ejemplo tpico, generalizacin del anterior, es la secuencia exponencial:

{xk } = {1, a, a 2 , a 3 ,...} ( )



X (z ) = a k z k = az 1
k

k =0 k =0 (12. 22 )

que, por ser una serie geomtrica, ser convergente para az 1 < 1 , es decir |z|>|a|, y
su suma valdr:

X (z ) =
1 z
1
=
1 az za (12. 23)

Por ltimo, la transformada del desplazamiento ser:


Z (x k n ) = x k n z k = x k n z ( k n ) z n = z n X (z )
k = k = (12. 24)

12.1.4.1 Funcin de transferencia en z

Dado un sistema discreto definido por su secuencia de ponderacin {gk}, cabe


considerar, si existe, su transformacin z, G(z). Teniendo en cuenta la relacin de
convolucin entre entrada, ponderacin y salida y la relacin entre la convolucin de dos
secuencias y sus transformadas, un sistema como el de la figura 12.5, verifica que:

FAIS-UPM-DOC002-99 11
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Y (z ) = G (z )X (z ) (12. 25)

El operador G(z), transformada z de la secuencia de ponderacin del sistema se


denomina funcin de transferencia en z del sistema considerado.

Figura 12. 5 Condicin de relacin de transformadas

Esta funcin de transferencia del sistema puede ser calculada a partir de la ecuacin
en diferencias que lo define. Partiendo de la ecuacin que define el comportamiento de un
sistema dinmico lineal:

y k + a1 y k 1 + a 2 y k 2 + ... + a n y k n = b0 x k + b1 x k 1 + ... + bm x k m (12. 26)

Y calculando ahora la transformada z de las partes de la igualdad y teniendo en


cuenta las propiedades de linealidad y desplazamiento, se obtiene:

Y (z ) + a1 z 1Y (z ) + a 2 z 2Y (z ) + ... + a n z n Y (z ) = b0 X (z ) + b1 z 1 X (z ) + ... + bm z m X (z )

(12. 27)
Entonces la relacin entrada/salida del sistema ser:

b0 + b1 z 1 + ... + bm z m
Y (z ) = X (z )
1 + a1 z 1 + a 2 z 2 + ... + a n z n (12. 28)

Y por tanto la funcin de transferencia del sistema ser:

b0 + b1 z 1 + ... + bm z m
G (z ) =
1 + a1 z 1 + a 2 z 2 + ... + a n z n (12. 29)

12 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

12.1.4.2 Transformada inversa

Se plantea el problema inverso, obtener la secuencia {xk} a partir de su


transformada en z, X(z). Para el caso de tener X(z) en forma de funcin racional, se puede
calcular de forma sencilla a partir del teorema de los residuos, estableciendo que:

xn =
1
2j c
[ ]
X (z )z n 1 dz = residuos de X(z)z n1 para los polos interiores de C
(12. 30)

siendo C una curva cerrada que envuelve el origen.

En el caso de secuencias con trminos nicamente de ndice positivo, o nicamente


negativo, se puede utilizar el clculo de los coeficientes mediante el mtodo de la divisin
larga.

Una posibilidad ms de clculo de la transformada inversa es por descomposicin


en fracciones simples. Si X(z) es racional, con todos sus polos simples y el grado del
numerador inferior al del denominador, entonces:

N
Ai
X (z ) = i
i =1 1 a i z (12. 31)

y la transformada inversa ser la suma de las transformaciones inversas, que, en el


caso de secuencias de ndice positivo, ser transformada en una suma de secuencias
exponenciales y por tanto en este caso:

n
x k = Ai a ik para k 0
i =1
xk = 0 para k < 0 (12. 32)

12.1.5 Muestreo de seales

La idea de muestras referidas a un sistema basado en un computador digital, se


concreta en la toma de valores de una seal continua en sucesivos instantes de tiempo. El
muestreo de seales consiste en la construccin de secuencias a partir de seales continuas.
Un problema que salta a la vista es la prdida de informacin.

En este punto se analizar fundamentalmente este problema, dndose las


condiciones en las que el proceso de muestreo/reconstruccin, (CAD/CDA), no signifique
perdida de informacin.

FAIS-UPM-DOC002-99 13
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

El caso ms interesante de muestreo es el peridico, que se caracteriza por que los


instantes de toma de muestras estn regularmente espaciados en el tiempo y a ste se le
llama periodo de muestreo, T, y a su inversa, frecuencia de muestreo, fs.

El elemento que realiza este proceso se denomina muestreador, siendo la forma


usual de representarlo en los diagrama de bloques la indicada en la figura 12.6

En este bloque la salida est relacionada con la entrada por la expresin:

x k = x(kT ) (12. 33)

Figura 12. 6 Smbolo del


muestreador

Intuitivamente se puede apreciar que el periodo de muestreo va a jugar un papel


fundamental en este proceso. La eleccin de la frecuencia de muestro es un problema
fundamental en el sistema de datos muestrados. Conviene muestrear los datos con la menor
frecuencia posible, pero que sea lo suficientemente grande como para poder evitar la
prdida de informacin y sea posible reconstruir la funcin continua a travs de las
muestras. Justamente, el teorema del muestreo es el que puede ayudar a determinar la
frecuencia ptima del convertidor analgico/digital.

Para poder establecer las conclusiones del teorema del muestreo, se va a recurrir al
estudio frecuencial. Si una seal continua, x(t), con transformada de Fourier continua,
Xc(). Entonces las relaciones seal/transformada sern del tipo:


X c ( ) = x(t )e jt dt
1
2

x(t ) = X C ( )e jt d
1

2 (12. 34)

La relacin existente entre la secuencia procedente del muestreo de esta seal y ella
misma ser (12. 33) con lo que:

14 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

X ( )e
1 jkT
x k = x(kT ) = d
2
c
(12. 35)

Si la secuencia {xk} tiene asimismo transformada discreta de Fourier Xd(),


entonces estar relacionada con su transformada por medio de:

X ( )e
1 j k
xk = d
2
d
(12. 36)

El problema es estudiar si existe alguna relacin entre estas dos transformadas, la


de la seal continua Xc() y la de la secuencia Xd(). Se puede demostrar que la relacin
existente es:


2r
X d ( ) = X c + r = 0,1,2,3,...
r = T (12. 37)

Por tanto, si la seal continua tiene una transformada de Fourier, cuya curva de
mdulos, por ejemplo, se representa en la figura 12.7.

Figura 12. 7 Transformada de Fourier de una seal


continua determinada

Entonces la curva de mdulos de la transformada de la secuencia obtenida por


muestreo, ser peridica 2/T tal como queda reflejado en la figura 12.8

FAIS-UPM-DOC002-99 15
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Figura 12. 8 Transformada discreta de Fourier de la seal continua con un muestreador


de periodo T

Llegando as a las condiciones que se deben cumplir en el proceso de muestreo para


que se pueda realizar sin prdida de informacin. Suponiendo que la seal continua x(t)
con transformada de Fourier Xc() sea nula a partir de una determinada frecuencia 0.

X c ( ) = 0 > 0 (12. 38)

Las seales que cumplen esta condicin se denominan de banda limitada. Si una
seal de este tipo se muestrea con un periodo que verifique:

2
> 2 0
T (12. 39)

Es decir:


T<
0 (12. 40)

La transformada de Fourier ser, siguiendo el ejemplo, de la forma indicada en la


figura 12.8. A /T se la llama frecuencia angular de Nyquist.

Si por el contrario, el periodo de muestreo es superior a este valor, T > /0 , la


transformada de la secuencia del ejemplo ser de la forma indicada en la figura 12.9, donde
se puede apreciar que Xc() y Xc() no coinciden, y por lo tanto el conocimiento de la

16 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

transformada de la secuencia no permite obtener la transformada de la seal continua. A


este fenmeno se llama solapamiento en frecuencias o aliasing.

Figura 12. 9 Efecto de solapamiento en frecuencia o aliasing

Recurdese cmo en el captulo anterior se mencionaba el diseo de filtros


antialiasing en la propagacin de la seal continua al convertidor A/D, con el objeto de
tener seales de banda limitada y que cumplan con (12. 38) y (12. 39).

Por acabar con este resumen, hay que citar que adems del problema del muestreo,
habra de estudiar el efecto tanto de la cuantificacin como el de reconstruccin. El
primero analiza cmo afecta el problema del convertidor A/D en la transformacin de una
seal analgica de infinitos valores a otra de valores finitos; mientras el segundo estudia
los problemas de la reconstruccin debido a los convertidores D/A. stos sern analizados
en el ltimo punto del captulo.

12.2 Filtros digitales

Un filtro digital es un sistema discreto utilizado para extraer caractersticas desde el


dominio de la frecuencia sobre seales muestreadas. La operacin de filtrado se realiza por
medio de clculos directos con las seales muestreadas. Las ventajas que presentan los
filtros digitales frente a los analgicos son las siguientes:

FAIS-UPM-DOC002-99 17
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Respuesta dinmica: El ancho de banda del filtro digital est limitado por la
frecuencia de muestreo, mientras que en los filtros analgicos con componentes
activos suelen estar restringidos por los amplificadores operacionales.

Intervalo dinmico: En filtros analgicos aparecen derivas que limitan por


abajo el rango y se saturan con la alimentacin. En cambio en los filtros
digitales es fijado por el nmero de bits que representa la secuencia, y el lmite
inferior por el ruido de cuantificacin y los errores de redondeo

Conmutabilidad: Si los parmetros de un filtro se conservan en registros, los


contenidos de dichos registros pueden ser modificados a voluntad. Adems,
estos filtros se pueden conmutar, pudindose multiplexar en el tiempo para
procesar varias entradas a la vez.

Adaptabilidad: Un filtro digital puede ser implementado en soporte fsico


(hardware) o mediante un programa de ordenador (software).

Ausencia de problemas de componentes: Los parmetros de los filtros se


representan por medio de nmeros binarios y no derivan con el tiempo. Al no
haber componentes, no hay problemas de tolerancia o deriva de componentes, y
ningn otro problema asociado con un comportamiento no ideal de resistencias,
condensadores, bobinas o amplificadores. Tampoco existen problemas de
impedancia de entrada ni salida, ni efectos de adaptacin de impedancias entre
etapas.

Una distincin fundamental en los sistemas discretos dinmicos lineales e


invariantes, y en particular en los filtros digitales, es la duracin de la respuesta ante el
impulso. Se habla de sistemas de respuesta de pulso finito o no recursivo (FIR, finite
impulse response) y de sistemas de respuesta infinita o recursivo (IIR, infinite impulse
response).

Partiendo de la ecuacin en diferencias que modela el comportamiento dinmico de


estos sistemas:

y k = a1 y k 1 + a 2 y k 2 + ... + a n y k n + b0 x k + b1 x k 1 + ... + bm x k m (12. 41)

en el caso de tener todos los coeficientes ai iguales a cero se tendr un filtro FIR,
con lo que quedar la ecuacin reducida a:

y k = b0 x k + b2 x k 1 + ... + bm x k m (12. 42)

siendo m el orden del filtro y tendr una funcin de transferencia en z del tipo:

18 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

G (z ) = b0 + b1 z 1 + ... + bm z m (12. 43)

Obsrvese que en estos tipos de filtros cada valor de la secuencia de salida slo
depende de un nmero finito de valores de la secuencia de entrada. Adems tambin se
desprende la carencia de polos en la funcin de transferencia. En cambio, las expresiones
de los filtros recursivos corresponden a:

y k = a1 y k 1 + a 2 y k 2 + ... + a n y k n + b0 x k + b2 x k 1 + ... + bm x k m (12. 44)

Y su funcin de transferencia en z a:

b0 + b1 z 1 + ... + bm z m
G (z ) =
1 + a1 z 1 + a 2 z 2 + ... + a n z n (12. 45)

Figura 12. 10 a) Respuesta ante el impulso de un FIR b) Respuesta ante el impulso de un IIR

En estos casos, la secuencia de salida depende tanto de la entrada como de la salida.


De estas ecuaciones se deducen las siguientes propiedades, primero la secuencia de
ponderacin es infinita para los filtros IIR, aun teniendo un nmero finito de coeficientes.
Mientras la respuesta al impulso de un filtro no recursivo es siempre finita e igual al orden
del filtro. En segundo lugar, los filtros FIR son siempre estables, esto es, la secuencia de
salida tiene todos sus valores acotados. No es el caso de filtros recursivos, su estabilidad
depende de la funcin de transferencia, por lo que habr de utilizar alguno de los
procedimientos algebraicos, como el de Jury[Aracil91], para analizar su estabilidad.
Tercera, cualquier filtro recursivo puede ser reemplazado por otro no recursivo con
infinitos coeficientes, sus valores vendrn dados por la secuencia de ponderacin del IIR.
La conclusin inversa no se cumple.

12.2.1 Filtros de fase lineal o no dispersivos

Existen muchas aplicaciones del procesamiento de seales en las cuales las


relaciones de fase son importantes, y no deben ser perturbadas por el filtrado. Por ello se

FAIS-UPM-DOC002-99 19
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

deben disear filtros con desfase nulo, pero como se ver ms adelantes, en la prctica no
es posible aunque si se pueden implementar filtros cuyo desfase sea proporcional a la
frecuencia. A estos filtros se les llaman de fase lineal o no dispersivos.

Para justificar la importancia de los filtros de fase lineal, se propone realizar el


siguiente experimento. Se toma una imagen digital, por ejemplo el prtico de entrada de la
Escuela, recurdese que sta es una secuencia bidimensional, y se calcula su transformada
de Fourier discreta 2D. Del resultado se hace separar el mdulo y el argumento de la
transformacin, para proceder por separado a la aplicacin de la transformada inversa.

Figura 12. 11 Imagen de la EUITIM 256x256 pxeles b) Transformada inversa del argumento de la
transformada c) b) Transformada inversa del mdulo de la transformada

Resultan obvias las conclusiones del experimento, el argumento lleva casi toda la
informacin de la secuencia. Por tanto, si se desea realzar las propiedades de la secuencia
habr de disear filtros que no distorsionen la fase de la seal muestreada. Justificando de
esta manera el nfasis puesto en filtros de desfase nulo o lineal.

20 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

12.3 Diseo de filtros no recursivos (FIR)

Los filtros no recursivos tienen ventajas muy interesantes que les hacen ser
ampliamente utilizados en mltiples aplicaciones. La caracterstica ms destacable es su
facilidad de diseo para conseguir una respuesta en frecuencias de fase lineal, esto es, la
seal que pase a travs de l no ser distorsionada. Los FIR son por su propia constitucin
estables, no habiendo problemas en su diseo o fase de implementacin.

Aunque el diseo de los FIR requiera de una gran cantidad de operaciones de sumas
y multiplicaciones, tanto su estructura de programacin como su implementacin en
soporte fsico resulta fcil y escalable.

Su mayor desventaja est en que para iguales requisitos de especificaciones del


filtro resulta con menor orden los IIR que los FIR, implicando programas ms largos o
circuitos mayores.

Bsicamente hay dos mtodos para el diseo de filtros no recursivos. El primero


trata de definir la respuesta en frecuencia del filtro para luego determinar los coeficientes
del filtro mediante la transformada inversa de Fourier; mientras que la segunda estrategia
utiliza mtodos de optimizacin capaz de ir modificando los coeficientes del filtro para
aproximarlo a la respuesta en frecuencia deseada. Slo se va a tratar el primer mtodo.

12.3.1 Diseo de los filtros mediante su respuesta en frecuencia

Los filtros digitales suelen ser caracterizados en trminos de rangos de frecuencia,


tanto de la banda pasante como de la supresora. Los cuatro tipos bsicos son ilustrados en
la figura 12.12. Al ser stos sistemas discretos, sus respuestas frecuenciales son peridicas
con la frecuencia de Nyquist, N, por lo que slo se considerar el intervalo [-N, N].

FAIS-UPM-DOC002-99 21
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Figura 12. 12 Especificaciones de los filtros digitales a) Paso bajo b) Paso


alto c) Pasa banda d) Rechazo de banda

En las figuras slo se muestran la respuestas en frecuencias del mdulo sin que
aparezca el argumento. Sin embargo, como ya ha sido comentado (ver 12.2.1), es deseable
que en la banda pasante no se introduzcan desfases, esto es, de argumento cero en todo el
rango de la frecuencia pasante, pero como se va a ver, esta suposicin de diseo resultar
imposible.

Con tal propsito se parte de una suposicin ms general, y adems factible,


consistente en la realizacin de un filtro con variacin lineal del argumento respecto a la
frecuencia, esto es, se tendr que el desfase introducido ser del tipo = -, donde es
una constante. El caso particular de desfase nulo ser igual a cero. Luego si ante una
seal de entrada cualquiera, sta se separa en forma de sumas de sinusoides del tipo
sen(nT), cada una de ellas producir una respuesta del tipo:

G ( ) sen[ (nT )] (12. 46)

Por tanto cada armnico de la seal de entrada estar desfasada veces, de forma
que se obtendr en salida una versin no distorsionada de la seal de entrada en el rango de
frecuencias dependientes de la banda pasante. A estos filtros se les llaman no dispersivos.

Partiendo de la respuesta en frecuencia de un filtro no recursivo de manera que ste


tenga un orden m, y que m sea igual a 2N, m=2N, se podr poner que:

22 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

2N
G ( ) = g k e jkT
k =0

{
= e jNT g 0 e jNT + g 1e j (N 1)T + ... + g N + ... + g 2 N e jNT } (12. 47)

Si se impone las siguientes condiciones:

g0 = g2N
g1 = g 2 N 1

g N 1 = g N +1 (12. 48)

La respuesta en frecuencia del filtro quedar como:

N 1

G ( ) = e jNT g N + 2 g i cos[(N i )T ]
i =0 (12. 49)

observndose que el contenido de entre las llaves es real y que el desfase


introducido por el filtro es -NT, siendo por tanto el argumento lineal con la frecuencia.
Desprendindose que esta caracterstica nace de la condicin de simetra par de los
coeficientes gi alrededor de N.

Las especificaciones completas de diseo de un filtro paso bajo ideal son mostradas
en la figura 12.13. Ahora son incluidas tanto las respuestas de mdulo como del
argumento.

Figura 12. 13 Respuesta en frecuencia de un filtro paso bajo

FAIS-UPM-DOC002-99 23
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

El modelo matemtico que caracteriza la respuesta frecuencial de la figura ser:

e j c
G ( ) =
0 En caso contrario (12. 50)

de manera que si se aplica la transformada inversa de Fourier quedar:

N C

G( )e d =
1 1 j (n )T
e
jnT
gn = d
2 N
2 C

1 sen[(n ) C T ] 2 c sen[(n ) C T ]
= = n = 0,1,2,...
(n )T s (n ) C T (12. 51)

Volviendo a los filtros de desfase cero, esto es, sea nulo y por ejemplo sea la
banda pasante un octavo de la frecuencia de muestreo, C = S / 8 , resultar que aplicando
(12. 51) se obtendr la secuencia de ponderacin del filtro digital:

gn =
1 sen
n
4
( )
4 n
4
( ) (12. 52)

La respuesta al impulso de la secuencia est representada en la figura 12.14 El filtro


con esta respuesta representa un filtro paso bajo ideal con desfase cero. Sin embargo, hay
dos aspectos a destacar. Primero, el filtro
no es causal, ya que para n<0 los valores
de {gn} no son nulos, por lo que no pueden
ser implementados en tiempo real. En
segundo lugar, la respuesta al impulso no
es finita, esto significa que la respuesta del
filtro tardara infinito tiempo en calcularlo,
incluso asumiendo que pudiera tener
infinitos coeficientes. De estos aspectos, se
concluye que la realizacin de un filtro con
desfase nulo es imposible de realizar
fsicamente; habiendo de aceptar criterios
de compromiso para el diseo.

Por ejemplo, si se trunca la Figura 12. 14 Respuesta impulsional con


desfase nulo
respuesta al impulso y se da un valor a se

24 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

tendr un filtro digital realizable fsicamente, pero ste slo ser una aproximacin al
comportamiento ideal.

Ejemplo Disear un filtro paso bajo FIR con una frecuencia de muestreo de 1.6
kHz, frecuencia de corte de 200 Hz, un retardo de 0.02 s, sabiendo que el orden del filtro es
11.

De aplicar (12. 51) con las condiciones dadas en el ejercicio da los siguientes
coeficientes:

{gn} = {-0.045 -0.001 0.073 0.157 0.224 0.250 0.224 0.157 0.073 0.001 0.045}

y segn (12. 47) su respuesta en frecuencia ser:

9

G ( ) = e j10T g10 + 2 g i cos[(0.02 i )T ]
i=0 (12. 53 )

Cuya respuesta en frecuencia y al impulso se encuentran representado en la figura


12.15

Figura 12. 15 a) Respuesta en frecuencia b) Respuesta impulsional

FAIS-UPM-DOC002-99 25
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Del ejemplo se muestra cmo el truncamiento del orden del filtro hace dejar de
comportarse como filtro ideal, apareciendo tanto rizado en la banda pasante como en la
supresora. Tambin se desprende de la figura el carcter lineal del desfase.

12.3.1.1 Transformaciones sobre los filtros

Aunque el mtodo expuesto se ha centrado sobre los filtros paso bajo, tambin es
posible disear los otros tipos de filtros, esto es, paso alto, pasa banda y rechazo de banda.
Para ello se podra utilizar el mismo procedimiento que se vio anteriormente, pero en vez
de aplicar la banda pasante a la frecuencia baja se puede realizar para cualquier otra forma
de banda pasante. Sin embargo, y de igual manera que ya se vio en el anterior captulo
sobre filtros analgicos, aqu tambin existen transformaciones de paso bajo a cualquiera
de los otros tipos.

As por ejemplo, si gn(PB) son los coeficientes de la respuesta al impulso de un filtro


paso bajo con una frecuencia de corte (C)PB y una frecuencia de muestreo s, entonces:

g n ( PA ) = ( 1) g n ( PB )
n
(12. 54 )

siendo estos los coeficientes de la respuesta al impulso del filtro paso alto con una
frecuencia de corte de:

( c )PA = ( N ) ( c )PB (12. 55 )

La demostracin de la validez de esta transformacin es bastante sencilla y es como


sigue:

N ( C )PA
1 1
e d + e
jnT jnT
g n ( PA ) = d
2 ( C )PA 2 N (12. 56 )

Haciendo el cambio de variables en la primera integral de = + N y en la


segunda de = N

0 N ( C )PA
1 jn ( + N )T 1 jn ( N )T
g n ( PA ) =
2 ( C )
e d +
2 e d
PA N 0
( C )PB
=
1
(cos[n ]) e jn T d = ( 1)n g n (PB )
2 ( C ) PB
(12. 57)

26 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

Por tanto, el diseo del filtro paso alto con frecuencia de corte (C)PA pasa por un
diseo inicial de filtro paso bajo con frecuencia de corte ( N ) ( c )PA y multiplicando el
resultado por (-1)n.

Figura 12. 16 Cambio de variables de a

Las relaciones entre paso bajo con pasa banda y rechazo de banda quedan
notificadas en el cuadro resumen 12.1

Conversin Transformacin Parmetros

A paso alto g n (PA ) = ( 1) g n (PB )


n
( c )PA = ( N ) ( c )PB

A paso banda g n (PBANDA ) = (2 cos(n 0T ))g n (PB ) 0 = frecuencia central


1 = 0 ( C )PB
2 = ( C )PB 0

A rechazo de banda g n (RB ) = 1 g 0 (PBANDA )


g n (RB ) = g n (PBANDA )

Cuadro 12. 1 Transformaciones de paso bajo a otro tipo de filtro

FAIS-UPM-DOC002-99 27
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

12.3.1.2 Ventanas

En la seccin 12.3.1 se han obtenido los criterios de diseo de los filtros FIR por
truncamiento de la exacta respuesta al impulso e introduciendo un retardo. Pero aunque el
orden del filtro sea elevado los rizados tanto en la banda pasante como en la supresora se
mantienen, hacindose mayores las
oscilaciones en las zonas de transicin entre las
bandas. Adems la atenuacin en la banda no
pasante no es cero y la transicin entre las
bandas no es abrupta. A este fenmeno se
llama efecto de Gibbs. As, por ejemplo, en la
figura 12.17 se muestra un filtro paso bajo de
orden 51 con una frecuencia de corte
normalizada de 0.4, evidenciando que aun
siendo elevado el orden del filtro el efecto
Gibbs se mantiene. Este fenmeno no
desaparece con la longitud del filtro.
Figura 12. 17 Filtro paso bajo de
orden 51
Sin embargo, la aplicacin de ciertas
funciones ventanas permiten aliviar este efecto
no deseado. Si se quiere disminuir las oscilaciones, la respuesta del pulso infinito original
debe ser multiplicado por una funcin ventana que no sea un pulso rectangular puro, de
manera que la nueva secuencia de ponderacin gn quedar como:

g n = g n wn (12. 58)

siendo gn definida como (12. 51) y wn una funcin ventana definida por:

1 nN
wn =
0 n >N (12. 59)

tal que N marca el nmero de la secuencia de transicin entre la banda pasante y la


supresora. Pero este tipo de ventana, obsrvese que es la aplicada en el caso del
truncamiento, deriva en el efecto de Gibbs. Para evitarlo existen varios tipos de funciones
ventanas, as por ejemplo se tiene:

+ (1 )cos(n / N ) n N
wn =
0 n >N (12. 60)

Donde para = 0.5 es llamada la ventana de von Hann y cuando = 0.54 es la


denominada ventana de Hamming.

La ventana de Blackman est definida por:

28 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

0.42 + 0.5 cos(n / N ) + 0.08 cos(2n / N ) n N


wn =
0 n >N (12. 61)

Esta ventana reduce el rizado comparado con las dos anteriores, pero la transicin
entre bandas es muy suave. Un compromiso entre el rizado y la ruptura abrupta es
particularmente fcil con las ventana de Kaiser definidas por:

I ( ) / I 0 ( ) n N
wn = 0
0 n >N (12. 62)

donde es un parmetro y

{
= 1 (n / N ) }
2 1/ 2
(12. 63)

Aqu I0(x) es una funcin de Bessel de orden cero definida por la serie:

2
1 x k
I 0 (x ) = 1 +

k =1 k! 2 (12. 64)

A medida de tener mayor se disminuye el rizado pero tambin disminuye la


pendiente de transicin entre la banda pasante y la supresora. En la siguiente figura se
representa la respuesta frecuencial de un filtro FIR paso bajo con c / s = 1 / 8 y con
orden de filtro de 23.

FAIS-UPM-DOC002-99 29
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Figura 12. 18 a) Respuesta con ventana rectangular b) con ventana von Hann c)
ventana de Hamming d) ventana de Blackman e) Kaiser =2 f) Kaiser =4

La comparativa demuestra que excepto la ventana de von Hann y de Kaiser para


igual a 2, todas las dems carecen de rizado tanto en la banda pasante como en la
supresora, aunque se ve cmo la de Kaiser con igual a 2 resulta la ms abrupta en la
transicin.

30 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

Desprendindose que aunque en todas ellas aparece un menor rizado respecto a la


ventana rectangular, existe un compromiso entre rizado y pendiente de transicin. Por ello
ningn filtro FIR con transformacin de Fourier y aplicacin de ventana es ptimo, pero
resulta sencillo y econmico.

El procedimiento de diseo con filtros FIR sigue los siguientes pasos:

Se establece la respuesta de frecuencia deseada como filtro paso bajo

Determinar la secuencia de ponderacin por medio de:

2 c sen[(n ) C T ]
gn = n = 0,1,2,...
s (n ) C T (12. 65)

Se elige una funcin ventana y un ancho de ventana para satisfacer las


especificaciones de rizado y amplitud de transicin requeridas. Se asigna la
ventana de acuerdo con la respuesta impulsional.

Se desplaza la repuesta de pulso para hacerla causal

Por ultimo se realiza la transformacin al tipo de filtro deseado, haciendo uso


de las indicaciones del cuadro 12.1

12.4 Diseo de filtros recursivos (IIR)

La ventaja de los filtros IIR respecto a los FIR es la de tener un menor orden del
filtro para iguales especificaciones de diseo. Aunque la desventaja es la falta de desfase
lineal introducido por el filtro, as como la necesidad de realizar estudios de estabilidad,
pues sta no est garantizada en el diseo.

Los filtros no recursivos pueden ser diseados por varios mtodos, siendo el ms
comn el basado en las transformaciones bilineales. Este procedimiento requiere del
conocimiento de la funcin de transferencia en el dominio s del filtro a disear. Los
coeficientes del filtro en el dominio s son transformados a uno equivalente en el dominio z,
los coeficientes de la discretizacin formarn el filtro IIR.

El origen de este proceder viene dado por la cantidad de experiencia acumulada en


el diseo de filtros analgicos. Por tanto, todos los polinomios, tablas, mtodos analticos y
grficos para definir el filtro analgico, empleados en el anterior captulo, sern usados en
el diseo de los filtros recursivos.

FAIS-UPM-DOC002-99 31
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Si bien hay varios mtodos de discretizacin, la mayora de ellos tienen problemas


de solapamiento en frecuencias, por realizar una relacin entre el plano s a z de varias
regiones del dominio s a una sola z. Sin embargo, la transformacin bilineal realiza una
transformacin unvoca entre el dominio s a z. Esta transformacin se define como:

2 1 z 1 2 z 1
s= =
T 1 + z 1 T z + 1 (12. 66 )

Y su relacin inversa es del tipo:

2/T + s
z=
2/T s (12. 67)

Al observar (12. 66 ) se desprende que esta transformacin es no lineal. De hecho,


si se sustituye s por ja y z por e j d T queda:

2 T
a = tan d
T 2 (12. 68)

siendo a la frecuencia angular analgica y d la frecuencia angular discreta. Por


tanto si se requiere un filtro digital cuyas caractersticas en frecuencia estn definidas por
d1, d2,, dk , deber usarse un filtro analgico cuyas frecuencias sean:

2 T
ai = tan di 1 i k
T 2 (12. 69)

Siendo conocido como el prewarping del filtro analgico. El mtodo de diseo de


filtros IIR basados en transformaciones bilineales tiene el siguiente procedimiento:

1. Definir las caractersticas del filtro digital d1, d2,, dk.

2. Realizar la operacin de prewarping de acuerdo con (12. 69) obteniendo las


frecuencias analgicas a1, a2,, ak.

3. Disear el filtro analgico con las frecuencias definidas en el punto 2.

4. Reemplazar s en el filtro analgico por la expresin dada en (12. 66 ).

Para facilitar las transformaciones de s a z se expone en el cuadro 12.2, las


relaciones existentes de filtros comunes de primer y segundo orden mediante la
transformada bilineal.

32 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

Tipo de bloque G(s) G(z) (Transformacin bilineal)

k + kz 1
G (z ) =
a 0 + a1 z 1
G (s ) =
Paso bajo de k
primer orden 1 + s 2 2
a0 = 1 + ; a1 = 1
T T

b0 b0 z 1
G (z ) =
s a 0 + a1 z 1
G (s ) = k
Paso alto de primer
orden 1 + s 2 2 2
b0 = k ; a 0 = 1 + ; a1 = 1
T T T

b0 + b1 z 1
G (z ) =
a 0 + a1 z 1
Red de 1 + s 1
adelanto/retraso de G (s ) = k 2 2
b0 = k 1 + 1 ; b1 = k 1 1
fase 1 + s 2 T T
2 2
a 0 = 1 + 2 ; a1 = 1 2
T T

1 + 2 z 1 + z 2
G (z ) =
a 0 + a1 z 1 + a 2 z 2
G (s ) =
Paso bajo de 1
segundo orden as + bs + 1
2
4a 2b 8a 4a 2b
a0 = 1 + 2
+ ; a1 = 2 2 ; a 0 = 1 + 2
T T T T T

b0 2b0 z 1 + b0 z 2
G (z ) =
as 2 a0 + a1 z 1 + a 2 z 2
G (s ) =
Paso alto de
segundo orden as 2 + bs + 1 4a
b0 = ; a 0 , a1 , a 2 Ver PASO BAJO 2
T2

b0 b0 z 2
G (z ) =
a0 + a1 z 1 + a 2 z 2
G (s ) =
Paso banda de bs
segundo orden as + bs + 1
2
2a
b0 = ; a 0 , a1 , a 2 Ver PASO BAJO 2
T

b0 2b1 z 1 + b0 z 2
G (z ) =
as 2 + 1 a0 + a1 z 1 + a 2 z 2
G (s ) =
Rechazo de banda
de segundo orden as 2 + bs + 1 4a 4a
b0 = 1 + 2
; b1 = 1 2 ; a 0 , a1 , a 2 Ver PASO BAJO 2
T T

Cuadro 12. 2 Transformaciones de G(s) a G(z)

FAIS-UPM-DOC002-99 33
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Ejemplo:

Disear un filtro digital paso bajo de Butterworth con una frecuencia de muestreo
de 10 kHz, con un a frecuencia de corte de 1 kHz y al menos una atenuacin de 10 dB a la
frecuencia de 2 kHz.

En primer lugar se realizara la operacin de prewarping a las frecuencias de 1kHz


y 2kHz, quedando a:

f ca = 1.034 Hz f ca = 2.312 Hz (12. 70)

Aplicando la expresin matemtica del orden de un filtro de Butterworth, visto en


el anterior capitulo, queda n = 1.368 por lo que se debe de tomar el valor entero superior,
esto es, orden del filtro 2. La funcin de transferencia en el dominio s ser:

1
G (s) = 2
s s
+ 1.41 +1
2 1034 2 1034 (12. 71)

Utilizando las expresiones del cuadro de transformaciones de G(s) a G(z) para


filtros paso bajo de segundo orden quedar:

a 0 = 14.81; a 2 = 16.95; a3 = 6.13


1 + 2 z 1 + z 2
G (z ) =
14.81 16.95 z 1 + 6.13 z 2 (12. 72)

34 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

La respuesta en frecuencia de G(z) es indicada en la figura 12.19

Figura 12. 19 Respuesta en frecuencia de G(z)

Es de destacar la aproximacin de fase lineal en la zona de banda pasante.

12.5 Implementacin de los filtros digitales

Hay dos formas de implementarlos, mediante un programa, a bajo o alto nivel, o


bien utilizando un diseo en soporte fsico mediante electrnica digital.

Para la implementacin en software se partir de la ecuacin en diferencias. Segn


sta, la salida ser suma de las salidas anteriores y de la entrada actual y anteriores
multiplicadas por sus coeficientes. El algoritmo necesitar almacenar los valores anteriores
de la salida y la entrada y realizar los productos y las sumas correspondientes. En el caso
de utilizar lenguajes de alto nivel, se suele usar aritmtica de punto flotante, con el objeto
de evitar los efectos asociados de cuantificacin con aritmtica de punto fijo, ya que se
puede llevar a la inestabilidad y a cambios significativos en la funcin de transferencia, tal
como se ver ms adelante (ver prrafo 12.6).

La realizacin sistemtica en cualquiera de estos dos medios, se ve


considerablemente facilitada representando el filtro de una forma grfica. De esta manera,
partiendo de las ecuaciones en diferencias:

y k = a1 y k 1 + a 2 y k 2 + ... + a n y k n + b0 x k + b1 x k 1 + ... + bm x k m (12. 73 )

Se representa por el diagrama de la figura 12.20

FAIS-UPM-DOC002-99 35
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Figura 12. 20 Representacin genrica de los filtros a partir de la ecuacin en diferencias

Pero no se suele utilizar esta forma de implementar en soporte fsico, ya que no


utiliza los principios de escalabilidad y ahorro de componentes. La forma ms
caracterstica es la basada en la estructura en serie (figura 12.21) obtenida a partir de:

k
xk yk
+ + --- + +

11 z -1 11 1n z -1 1n

21 z -1 2n z -1
21 2n

Figura 12. 21 Filtro IIR en cascada

36 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

1 + 1k z 1 + 2 k z 2
G (z ) = k
1 1k z 1 2 k z 2 (12. 74)

La figura 12.21 muestra un diagrama a bloques de un filtro IIR implementado con


cascadas de segundo orden. Esta realizacin tiene cuatro sumas, cuatro multiplicaciones y
dos retardos por cada seccin de segundo orden. Esta forma de implementacin resulta la
ms efectiva para una rango variado de procesadores de propsito general as como de
procesadores especficos DSP[Embree90].

12.6 Efecto de la cuantificacin en los filtros

Hasta el momento, en el estudio de los filtros digitales, se ha supuesto que tanto las
variables como los coeficientes del filtros pueden tomar cualquier valor; ahora bien, la
implementacin de estos sistemas se realiza con dispositivos digitales de clculo, es decir
con computadores, en los que tanto el almacenamiento como la medida de seales se
realiza con nmeros finitos de dgitos. La operacin de transformacin de los valores de
variables y constantes, con un nmero infinitos de cifras, a un nmero concreto de bits se
denomina cuantificacin. Este proceso, imprescindible en el tratamiento de informacin
con computador, produce errores que en este ltimo punto se van a analizar y acotar.

En la implantacin de los filtros digitales aparecen tres procesos de cuantificacin:

1. Cuantificacin de la seal de entrada

2. Cuantificacin de los coeficientes de los filtros

3. Errores en el redondeo en las operaciones

12.6.1 Efectos de truncamiento y redondeo

En el anlisis de error de cuantificacin, hay que tener en cuenta la forma de


representacin de los valores en el computador, segn se haga en coma fija o en coma
flotante, y, asimismo, tambin tendr influencia la forma de realizar el paso de un nmero
cualquiera, equivalente a infinitos dgitos, segn sea por truncamiento o por redondeo.

En general la representacin de los nmeros en computadores se realiza en base 2,


es decir en representacin binaria, por dos mtodos distintos: en coma fija si se utiliza un
nmero determinado de dgitos para la parte entera y otra para la parte decimal, por
ejemplo 4 y 6:

FAIS-UPM-DOC002-99 37
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

1001.011010 (12. 75 )

O en coma flotante, donde la representacin es de la forma:

M 2c (12. 76)

Donde M, mantisa, es un nmero que verifica:

1
M <1
2 (12. 77)

Y c, exponente, es un nmero entero, positivo o negativo; ambos, M y c, se


representan por un nmero fijo de bits.

La forma de representacin de los nmeros negativos tiene su importancia segn se


haga por signo y magnitud, por complemento a dos o por complemento por uno
[Miguel88].

Tanto en coma fija como flotante se va a considerar que la parte fraccionaria o la


mantisa tiene b bits, entonces los nmeros se representan en saltos de 2-b, es decir la
mnima diferencia entre dos representaciones distintas es de 2-b.

Dado un nmero de infinitos dgitos, se entiende por truncamiento del mismo la


operacin de tomar los b primeros bits ms significativos, despreciando el resto, mientras
que su redondeo es tomar la representacin del valor ms prximo al mismo.

En la figura 12.22 a) se representan los valores de la seal de cuantificada Q(x) en


funcin de los posibles valores de x en el caso de representacin por redondeo y coma fija.
Como se puede observar en la misma el error en dicha cuantificacin:

e = Q(x ) x (12. 78)

Figura 12. 22 Tcnicas de redondeo a) Cuantificacin b) Error

38 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

el error ser en valor absoluto, como mximo medio salto, es decir:

2 b < Q(x ) x < 2 b


1 1
2 2 (12. 79)

El caso de truncamiento y coma fija, utilizando el complemento a 2 para los


negativos, viene representado en la figura 12.23, donde el error est acotado entre los
valores:

2 b < Q(x ) x < 0 (12. 80)

Figura 12. 23 Tcnicas de truncamiento a) Cuantificacin b) Error

12.6.2 Cuantificacin de seales

En la conversin de una seal, para su tratamiento con computador, de analgica a


digital, adems del proceso de muestreo hay que tener en cuenta el de cuantificacin,
efecto ste debido a la limitacin del nmero de cifras de los registros en los que se
almacenan sus valores.

Para el estudio del efecto que esta cuantificacin de los elementos de la secuencia
de entrada produce sobre los de la secuencia de salida de un filtro digital, se va a suponer,
en primer lugar, como forma ms usual de trabajo de los convertidores A/D, la coma fija
con b+1 bits, b la parte fraccionaria y 1 de signo, utilizando tcnicas de redondeo. Se
considera igualmente la seal normalizada a 1, es decir:

1 b 1
1+ 2 < x k < 1 2 b
2 2 (12. 81)

FAIS-UPM-DOC002-99 39
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

Una representacin equivalente al proceso de cuantificacin es la derivada de


considerar, segn se indica en la figura 12.22b) su efecto como una secuencia de valores
aleatorias aadidas a la original.

x k = Q(x k ) = x k + ek (12. 82)

Donde {ek} es una secuencia denominada frecuentemente ruido cuyos elementos


verifican:

1 1
2 b < ek < 2 b
2 2 (12. 83)

El proceso de redondeo se caracteriza por una distribucin estadstica, tal que la


secuencia {ek} se define como una variable aleatoria con una funcin de densidad
uniforme, p(), entre (2-b/2) y (2-b/2), estando representada en la figura 12.24.

Figura 12. 24 Funcin de densidad del error por redondeo

Los parmetros estadsticos de media y varianza de la misma son:

e = 0
2 2b
=2
e
12 (12. 84)

El valor que da una idea de la magnitud del error es su varianza. sta se suele
referir a la amplitud de los valores de la secuencia a cuantificar xk. Con el fin de comparar
parmetros equivalentes se define sobre la secuencia {xk} su varianza:

40 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

x
1
x2 = 2
k
N k =0 (12. 85)

con N igual al nmero de elementos cuantificados en el proceso en curso de


estudio. La medida de error de cuantificacin, representada por SNR (Signal Noise Ratio),
se define como el cociente entre ambas desviaciones tpicas:

x2 x2
SNR = = = 12 2 2 b x2
e2 2 2b
12 (12. 86)

Como se ve en la expresin el ndice SNR aumenta por cada incremento de bits que
se considere de ms en la representacin de la seal.

12.6.3 Cuantificacin de los coeficientes

Igual que ocurre con los valores de las muestras de la seal, en el proceso de
implementacin de un filtro, los parmetros que lo definen sufren una cuantificacin que
puede afectar, en algunas ocasiones considerablemente, a las prestaciones del sistema.

Para abordar este problema es necesario es necesario centrarse en la ecuacin


caracterstica del filtro y estudiar como varan sus races ante variaciones en sus
coeficientes. Por ejemplo, si un sistema tiene una ecuacin en diferencias estimadas:

y k = (a + a )y k 1 + u k (12. 87)

donde a es el coeficiente que sufre un error de cuantificacin, a, sta tendr por


ecuacin caracterstica:

z (a + a ) = 0 (12. 88)

en la que, es claro que, si se quiere situar un polo en z = 0.995, ser necesario


almacenar el valor de a con tres cifras decimales ya que la variacin mxima de este
parmetro, a, admisible para garantizar la estabilidad es 0.005.

En general este problema se podr resolver con un anlisis de sensibilidad de las


races de la ecuacin caracterstica a los parmetros de la misma.

Las consecuencias prcticas de la cuantificacin de los coeficientes son:

Los filtros con poco ancho de banda son muy sensibles a la cuantificacin. Este
efecto se deriva por tener polos muy cerca de z = 1.

FAIS-UPM-DOC002-99 41
Captulo 12: Introduccin al Procesamiento digital de Seales Carlos Platero

El sobremuestreo (oversampling) incrementa la sensibilidad a la cuantificacin.

La estructura de implementacin del filtro influye mucho.

12.6.4 Cuantificacin de resultados de operaciones

A efectos de cuantificacin, la operacin de mayor inters es la multiplicacin ya


que el resultado de sta ocupa doble nmero de cifras que los factores por lo que para
almacenarlo o realizar otras operaciones habr que reducir el nmero de sus cifras.

Este error de cuantificacin aparece en cada iteracin de la ecuacin en diferencias


con lo que su efecto se puede estudiar como una secuencia de nmeros aleatorios
independientes sumados a la secuencia de salida de los bloques que se realizan
multiplicaciones. Con ello, la importancia de este error depender fuertemente de la
estructura elegida para la programacin del algoritmo.

Utilizando el esquema tpico de construccin del filtro, segn se indic en la figura


12.21. Y siguiendo las propiedades estadsticas enunciadas sobre el error de cuantificacin,
los ruidos son aditivos pudindose reemplazar por uno cuyos elementos representativos
valga:

m n
e = ebi + eai
i =0 i =0 (12. 89)

Si cada uno de los ruidos considerados tiene iguales propiedades estadsticas, dadas
en (12. 84), las del total, suma de los referidos, sern:

e = 0
2 2b
e2 = (n + m )
12 (12. 90)

indicando que a medida de que se aumente el orden del filtro mayor ser el
incremento del error cometido por redondeo de las multiplicaciones.

42 FAIS-UPM-DOC002-99
Carlos Platero Electrnica industrial

12.7 Bibliografa

[Aracil91] Aracil, R., Jimnez, A., Sistemas discretos de Control, Servicio de


Publicaciones de la ETS de Ingenieros industriales de Madrid, 1991.

[Banks90] Banks, S., Signal Processing, Image Processing and Pattern Recognition,
Prentice Hall, 1990.

[Miguel88] De Miguel, P., Fundamentos de computadores, Paranifo, 1988.

[Embree91] Embree, P.M., Bruce, K., C language algorithms for signal proccesing,
Prentice Hall, 1991.

[Krauss95] Krauss, T.P., Shure, L., Little, J.N., Signal Processing Toolbox (Users
Guide), The Math Works, Inc., 1995.

FAIS-UPM-DOC002-99 43