Sunteți pe pagina 1din 75

TEMA 4

Tratamiento digital de seales mediante procesadores embebidos.


4.1.- Caracterizacin de seales analgicas y digitales. 4.2.- Discretizacin de seales analgicas. Conversin A/D y D/A. 4.3.- Introduccin al procesado digital de seales

(c) Benito beda Miarro Universidad de Murcia


1

4.1.- Caracterizacin de seales analgicas y digitales.


Definicin de Seal
Las seales son patrones de variacin que representan informacin codificada. Una seal se define como una magnitud fsica que vara con el tiempo el espacio o cualquier otra variable independiente y permite transmitir informacin. En adelante suponemos seales elctricas, donde la magnitud que se representa es la tensin o la corriente elctricas.

Ejemplos:
El sonido es una funcin de una variable, el tiempo. Para cada instante de tiempo (variable independiente) existe un valor nico de la funcin (variable dependiente). Una imagen es un funcin de dos variables (x,y), o si est en movimiento de tres variables (x,y,t) que toma un valor que codifica el color RGB del punto en cada instante.
Benito beda (Univ. Murcia)

Tipos de seales
Seales continuas y discretas. Analgicas, x(t) :
Amplitud y Tiempo continuos.

Cuantizada, xQ(t) :

Tiempo Continuo, Amplitud discreta.

Muestreadas, xs[n] :
Benito beda (Univ. Murcia)

Tiempo Discreto, Amplitud continua.

Digital, xQ[n] :

Tiempo y Amplitud discretos.

Por su periodicidad

Clasificacin de seales

Aperiodicas: No existe ningn patrn de repeticin.

Peridicas: Aquellas que verifican xp(t) = xp(tnT), donde T es el periodo de repeticin y n es un entero.

4
Benito beda (Univ. Murcia)

Clasificacin de seales
Por su simetra

Basadas en simetras
Simetra Par: x(t) = x(-t) Simetra Impar: x(t) = -x(-t)

5
Benito beda (Univ. Murcia)

Clasificacin de seales
Por su potencia o energa

Energa de una seal x(t) :

Potencia de una seal x(t) :


Una seal est definida en trminos de energa si Ex es finita, lo que implica que Px es 0.

Ej. Pulsos limitados en el tiempo.


Una seal est definida en trminos de potencia si Px es finita, lo que implica que Ex es infinita.

Ej. Una seal peridica.


6
Benito beda (Univ. Murcia)

Seales elementales

7
Benito beda (Univ. Murcia)

Expresin matemtica
Analgicas Discretas

8
Benito beda (Univ. Murcia)

Procesamiento bsico (Transformaciones)


Desplazamiento en el tiempo:
Seal adelantada y retrasada en el tiempo
x(t-t0), desplazamiento a la derecha. (Retrasada) x(t+t0), desplazamiento a la izquierda. (Adelantada)

Reflexin:
Inversin en el tiempo de x(t) = x(-t)

Cambios lineales de escala en la variable independiente:


Compresin en el tiempo de x(t) = x(2t) Dilatacin en el tiempo de x(t) = x(t/2)

9
Benito beda (Univ. Murcia)

Ejemplo 1
DESPLAZAMIENTO x(t) 1
1/2

x(t) 1
1/2

x(t-2)

10
Benito beda (Univ. Murcia)

Expresin matemtica a partir de seales bsicas


Rampa

Pulso

Triangular

Sinc
11
Benito beda (Univ. Murcia)

Propiedades
Seales continuas Seales discretas

12
Benito beda (Univ. Murcia)

4.2.- Discretizacin o digitalizacin de seales analgicas. Conversin A/D y D/A.


La digitalizacin de una seal analgica trae consigo una discretizacin tanto en el dominio temporal como en el de la amplitud. El resultado es una secuencia de N nmeros x(n) que indican la amplitud que tena la seal analgica en el instante de muestreo. El ndice n nos indica el numero de la muestra que ir desde el instante inicial, n=0, hasta el instante final, N-1. Las muestras se toman cada periodo de muestreo, Ts segundos. Es el denominado muestreo uniforme. Cada muestra se codifica con un valor entero o fraccional de B bits.
13
Benito beda (Univ. Murcia)

DIGITALIZACION
x(nTs) x(t) Q[n] N bits t
Ts

x(n)

p(t)

Conversor analgico digital (A/D) Muestreo y retencin Cuantificacin


14
Benito beda (Univ. Murcia)

x(t) x(n)

Conversin A/D
t

Ts=1/fs PARMETROS x(n) d b a c e Secuencia Periodo de muestreo Ts, Frecuencia de muestreo, fs Bits de cuantificacin, N

x(n)=[a b c d e f g h i j k]
15
Benito beda (Univ. Murcia)

Cuantificacin: Formatos integer y fraccional (usados en dsPIC)

16
Benito beda (Univ. Murcia)

Modelado matemtico del proceso de muestreo ideal


Seal analgica de entrada.

Tren de deltas. Indica que cada Ts segundos se produce un muestreo

Fs=1/Ts
Seal muestreada. Una vez cuantificada se genera una secuecia

17
Benito beda (Univ. Murcia)

Anlisis del proceso de muestreo (I)


Como cualquier proceso, debemos estudiarlo para proceder a caracterizarlo y extraer conclusiones pertinentes. En primer lugar se necesita conocer el contenido en frecuencias de la seal muestreada. Para ello hay que calcular la Transformada de Fourier a xs(t)
X(f)=TF [x(t)]

f -B B

La seal original tiene un espectro limitado a B Hz, denominado banda base.

-B
-2fs -fs 0

B
fs 2fs

Conclusiones obtenidas: - El espectro es peridico, de periodo fs. - Se traslada la banda base en torno a todos los mltiplos enteros de la frecuencia de muestreo.

Esto implica que el muestreo es un proceso NO LINEAL


Benito beda (Univ. Murcia)

18

Anlisis del proceso de muestreo (II)


Se trata de un proceso NO LINEAL porque aparecen frecuencias a la salida (color naranja) que no estaban a la entrada (Banda Base, color azul). Para poder RECONSTRUIR de nuevo la seal original, con toda su informacin, debemos ser capaces de eliminar, mediante un filtro paso bajo, las frecuencias que no pertenecen a la banda base (color naranja).

-B
-2fs -fs 0

B
fs 2fs

X(f)=TF [x(t)] f -B
Benito beda (Univ. Murcia)

B 19

Anlisis del proceso de muestreo (III)


Frecuencia de Nyquist
Para poder RECONSTRUIR la relacin entre la frecuencia de muestreo y el ancho De la banda base debe ser tal que:

-B
-2fs -fs 0

B
fs 2fs

f
-2fs

-B
-fs 0

B
fs 2fs

ALIASING
X(f)=TF [x(t)] f -B
Benito beda (Univ. Murcia)

X(f)=TF [x(t)] f -B B 20

POSIBLE la reconstruccin

IMPOSIBLE la reconstruccin

Anlisis del proceso de muestreo (IV)


Teorema del muestreo
Una seal x (t) con un espectro limitado a la frecuencia B ( |f| < B ) puede ser muestreada sin prdida de informacin si la frecuencia de muestreo fS supera la cantidad 2B, es decir fS 2B. Si se muestrea a una frecuencia menor tiene lugar el

fenmeno denominado aliasing o solapamiento de espectros. Si se muestrea de acuerdo al teorema existe un proceso de reconstruccin que garantiza la reproduccin exacta de la seal continua x(t) a partir de sus muestras x[n].

21
Benito beda (Univ. Murcia)

Reconstruccin. Conversin D/A


Muestras, x[n]

D/A Seal reconstruida x(t)

22
Benito beda (Univ. Murcia)

Diagrama de bloques del conversor A/D de 12 bits de la familia dsPIC

23
Benito beda (Univ. Murcia)

4.3.- Introduccin al procesado digital de seales


Consiste en realizar procesamiento matemtico mediante secuencias de nmeros, x[n]. Se emplean para ello microprocesadores digitales. Se requiere modelar y caracterizar matemticamente diferentes sistemas. TEORIA DE SISTEMAS LINEALES E INVARIANTES EN EL TIEMPO (LTI)
Es la base del procesamiento digital de seales. Se aplica el principio de superposicin. Vienen caracterizados por su respuesta al impulso. Operaciones como la convolucin son de gran utilidad. Modelos vlidos tanto para seales analgicas como digitales.

24
Benito beda (Univ. Murcia)

Definiciones en procesado de seales


La seal o seales a ser procesadas forman la excitacin o entrada x del sistema. La seal procesada y es la respuesta o salida y del sistema.
x T[.] y

Dominios de inters: El anlisis de sistemas implica el estudio de la respuesta del sistema a entradas conocidas. La sntesis de sistemas se realiza especificando las salidas que deseamos para una entradas dadas y estudiando que sistema es el ms adecuado (Identificacin de sistemas).
Benito beda (Univ. Murcia)

25

Modelado y definicin de sistemas


Un sistema lo definimos como: Un conjunto de dispositivos conectados entre si, cuyo funcionamiento est sujeto a ciertas leyes fsicas. Todo aquello que realiza un procesamiento sobre una seal, es decir, un procesador de seal La representacin de un sistema continuo se realiza mediante ecuaciones diferenciales.
Se relaciona la salida, y(t), con la entrada, x(t), mediante constantes, parmetros y variables independientes (tiempo).

x(t)

h(t)

y(t)

Analgico

La representacin de un sistema discreto se realiza por su ecuacin en diferencias

x[n]

h[n]

y[n]

Digital

26
Benito beda (Univ. Murcia)

Propiedades de los sistemas


Los sistemas pueden ser:
ontinuos o Discretos C ineales o No lineales L nvariantes en el tiempo o variantes con el tiempo I on memoria o sin memoria C nvertibles o no invertibles I ausales o no causales C stables o inestables E

27
Benito beda (Univ. Murcia)

Sistemas lineales
x Sistema Lineal y

Un sistema, se dice lineal, si a la salida no aparecen componentes de frecuencia que no estaban a la entrada. Formalmente, debe cumplir con las propiedades de aditividad y escalonamiento: Sea y1 la respuesta a x1 e y2 la respuesta a x2 ADITIVIDAD: si x=x1+x2 entonces la salida ser y=y1+y2

ESCALONAMIENTO: si la entrada vale x=kx1 entoces y=ky1

28
Benito beda (Univ. Murcia)

Sistemas lineales e invariantes con el tiempo (Linel Time Invariant, LTI)


El sistema es invariante en el tiempo si su respuesta no depende del Instante en que se aplica la entrada. x(t) x Sistema Lineal Invariante y y(t)

x(t-t0)

y(t-t0)

t0

t0

29
Benito beda (Univ. Murcia)

Sistemas LTI

(t) x Sistema Lineal Invariante y

y(t)h(t)

Si conocemos la respuesta al impulso, seremos capaces de conocer la respuesta a cualquier entrada.

30
Benito beda (Univ. Murcia)

Sistemas LTI
x(t) x(n) LTI h(t) y(t)=x(t)*h(t) y(n)=x(n)*h(n)

En un sistema LTI, la respuesta y(t) ante cualquier entrada se puede calcular mediante la denominada integral de convolucin: Sistema analgico

Sistema discreto

31
Benito beda (Univ. Murcia)

Convolucin discreta
Mediante el empleo de microprocesadores solo podemos implementar la Convolucin discreta. Su expresin es conocida como SUMA de convolucin:

Mediante la convolucin, somos capaces de conocer la respuesta de un sistema LTI, conocida la respuestaal impulso, h(n). Cumple la propiedad conmutativa, y por tanto la expersin siguiente tambin es valida

Si las secuencias tienen una longitud M y N, la salida tiene una longitud M+N
32
Benito beda (Univ. Murcia)

Propiedades de la convolucin analgica


La convolucin analgica cumple con una serie de propiedades, expresadas matemticamente mediante las siguiente ecuaciones:

33
Benito beda (Univ. Murcia)

Propiedades de la convolucin discreta


Igualmente, en el mundo digital, las propiedades son las mismas, solo que Cambiando las integrales por sumatorios.

34
Benito beda (Univ. Murcia)

Convolucin grafica

35
Benito beda (Univ. Murcia)

Mtodos para calculo de la convolucin discreta


todo de la tira deslizante. M todo de la suma por columnas M todo de la malla. M Ejemplo: x([n]=[3 1 2 -1] h[n]=[1 2 3] y[n]=x[n]*h[n]=[3 7 13 6 4 -3]

MatLab: y=conv(x,h)
36
Benito beda (Univ. Murcia)

Convolucin discreta grfica

37
Benito beda (Univ. Murcia)

Correlacin de dos seales


Operacin parecida a la convolucin, que mide el parecido entre dos seales.

No cumple la propiedad conmutativa, por lo que se defien dos expresiones. Su valor solo coincide en el origen, k=0.

38
Benito beda (Univ. Murcia)

Autocorrelacin
Es la correlacin de una seal consigo misma. Nos mide el parecido de una seal con una versin desplazada de ella misma.

Presenta un mximo en el origen, es decir, cuando n=0. Es simtrica, es decir Rxx(-k)=Rxx(k)

39
Benito beda (Univ. Murcia)

Implementacin de sistemas Discretos


La mayor parte de los sistemas de inters se pueden considerar Como Lineales e Invariantes en el tiempo (LTI) Las seales son secuencias de nmeros (muestras) x(n), h(n), y(n), Empleamos ecuaciones en diferencias para representar las transformaciones que sufre la seal de entrada:

Donde es fcil comprobar que se cumplen las condiciones de linealidad e Invariancia temporal. x(n) T
Benito beda (Univ. Murcia)

y(n)
40

Implementacin de sistemas discretos


Se pueden clasificar segn como sea la respuesta al impulso h(n), que sabemos representa a estos sistemas:
Sistemas FIR: Finite Impulse Response Sistemas IIR: Infinite Impulse Response

En cuanto a su realizacin, podemos hablar de sistemas:


No recursivos Recursivos
F[x(n), x(n-1),..,x(n-M)] F[y(n-1),..,y(n-N), x(n), x(n-1),..,x(n-M)] z-1
Benito beda (Univ. Murcia)

Descripcin de los sistemas LTI discretos: grafos

+
Sumador

b1 x(n) b1x(n) x(n)

z-1
Retardo

x(n-1)

multiplicador

42
Benito beda (Univ. Murcia)

Ejemplos: Filtro FIR, 3 etapas

x(n)

Z-1 b0

x(n-1)

Z-1

x(n-2)

Z-1

x(n-3)

b1

b2

b3 y(n)

43
Benito beda (Univ. Murcia)

Ejemplos: Filtro IIR

FORMA DIRECTA I x(n) Z-1 x(n-1) Z-1 x(n-2) Z-1 x(n-M)


Benito beda (Univ. Murcia)

b0

v(n)

y(n)

b1

a1

Z-1 y(n-1) Z-1

bM-1

aN-1 Z-1 aN

y(n-2)

bM

44

Ejemplos: Filtro IIR, orden N


FORMA DIRECTA II x(n) w(n) Z-1 a1 Z-1 aN-1 Z-1 b0 y(n)

b1

bN-1

aN

bN

45
Benito beda (Univ. Murcia)

Funcin de transferencia.
TRANSFORMADA Z x[n] X(z) h[n] H(z) y[n] Y(z) Transformada z de.. h[n] H(z)

Almacenar un dato significa retrasarlo un periodo de muestreo. Al realizar la transformada z se muestra por z-1

Sntesis Encontrar los coeficientes [a1,a2,] [b0, b1, b2, ]


Benito beda (Univ. Murcia)

46

Agrupacin de sistemas
Conexin en cascada (serie):
La funcin de transferencia global es el producto HT=H1H2HN

Conexin en paralelo:
La funcin de transferencia global es la suma de las individuales

47
Benito beda (Univ. Murcia)

Analisis espectral
Discrete Fourier Transform, DFT La Tranformada de Fourier se puede aplicar a secuencias x(n) para conocer el espectro de la seal de la que provienen: Se trata de una funcin periodica y continua en , dado que : Para poder realizar su calculo mediante un ordenador se necesita:
Trabajar con secuencias de un conjunto finito de muestras, N. Volver a muestrear a X() para poder trabajar digitalmente. Se llega as a la DFT
48
Benito beda (Univ. Murcia)

Algoritmo de la DFT
Se trata de seleccionar un periodo de X() y tomar N muestras equiespaciadas en el intervalo << La expresin de la DFT viene dada por:

-2 -fs
Solo aportan informacin Las primeras N/2 muestras Benito beda (Univ. Murcia)

- -fs/2

fs/2

2 fs

Ventana de N muestras X(k)=[0 1 2 3 N/2 ... N-1]

49

Interpretacin de la DFT
El conjunto de N valores que forman la DFT son los coeficientes espectrales. Los coeficientes espectrales son numeros complejos. La densidad espectral de potencia ser el modulo al cuadrado.

Solo los primeros N/2 coeficientes son de inters, pues el resto son un mirror de los primeros. La resolucin espectral conseguida depende de la frecuencia de muestreo y del valor de N. Esta vendr dada por:

Se necesitan del orden de N2 operaciones complejas.


50
Benito beda (Univ. Murcia)

Propiedades de la DFT

51
Benito beda (Univ. Murcia)

52
Benito beda (Univ. Murcia)

53
Benito beda (Univ. Murcia)

DFT de una seal de 800 Hz sinusoidal


256 muestras sin(2pi800t)

DFT, 256 puntos Fs=8000 Hz

54
Benito beda (Univ. Murcia)

Algoritmo de la Transformada Rpida de Fourier o Fast Fourier Transform, FFT


Expresin de la DFT

El algoritmo de la FFT realiza el calculo de la DFT de forma muy eficiente, al reducir enormemente la cantidad de operaciones a realizar. Aprovecha las propiedades siguientes

55
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en el tiempo


Se reordena la secuencia de entrada x(n) como suma de dos secuencias. La primera en base a los indices pares y la segunda con los impares. Con cada una de estas subsecuencias se realiza la DFT de N/2 puntos y su resultado se combina para formar la DFT de N puntos:

Vemos que la DFT de N puntos es la suma de dos DFTs de N/2 puntos, que hemos denominado Y)k) y Z(k). Adems, cada trmino Z(k) se multiplica por un factor WNk, denominado Twidle factor. Aplicando la periodicidad de Y(k) y Z(k) y teniendo en cuenta que WNk+N/2 =-WNk Podemos poner:

56
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en el tiempo

Las dos DFT de N/2 puntos se pueden dividir para formar 4 DFTs de N/ 4 puntos y as sucesivamente

57
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en el tiempo


El proceso puede repetirse sucesivamente hasta llegar a calcular la DFT de dos valores x(n). Es decir, x(k) y x(k+N/2) para k=0,1,..N/2-1 Para una FFT de N=8 puntos, el esquema ser el mostrado

58
Benito beda (Univ. Murcia)

Algoritmo FFT de N puntos, diezmado en el tiempo.


Tabla resumen de caracteristicas:

Por cada butterfly tenemos una multiplicacin y dos sumas complejas. Hay N/2 butterflies por etapa y log2N etapas. Numero total de multiplicaciones: N log2 N Numero total de sumas: N log2N
59
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en frecuencia


Se reordena la DFT como suma de dos secuencias. La primera en base a la primera mitad de los datos y la segunda con la segunda mitad:

Propiedad

60
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en frecuencia


Se obtiene dividiendo la secuencia de salida, X(k) en dos ecuaciones. Una para los indices pares

Y otra para los indices impares:

Vemos que X(2k) y X(2k+1) son los resultados de la DFT de N/2 puntos realizada con la suma y la diferencia. De la primera y segunda mitades de la secuencia de entrada, x(n)

61
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en frecuencia

62
Benito beda (Univ. Murcia)

FFT Radix-2: Diezmado en frecuencia

63
Benito beda (Univ. Murcia)

FFT Radix-2
Conclusiones
El el caso de diezmado en el tiempo, la secuencia de entrada debe ser reordenada y la salida aparece en el orden correcto. En el caso de diezmado en frecuencia, la secuencia de entrada se pone en su orden mientras que hay que reordenar la secuencia de salida. Bastar con invertir el ndice en binario, para conseguir la reordenacin:

64
Benito beda (Univ. Murcia)

Otros algoritmos:
Transformada Inversa de Fourier, IDFT

La IDFT (Inverse Discrete Fourier Transform) se emplea para obtener la seal en el dominio del tiempo a partir de los coeficientes en el dominio de la frecuencia. Aplicaciones tpicas son:
Implementar la convolucin en sistemas lineales Sintetizadores digitales de seales. Compresin de informacin

65
Benito beda (Univ. Murcia)

Otros algoritmos:
Transformada Coseno

La DCT (Discrete Cosine Transform) se emplea en compressin de video (ej. MPEG-2).

La DCT inversa (IDCT) se calcula como:

donde e(k) = 1/sqrt(2) si k = 0; otro caso e(k) = 1. Una DCT de N-Puntos, 1D-DCT, require N2 operaciones MAC.
Benito beda (Univ. Murcia)

66

Otros algoritmos:
Clculos de distancia

Se emplean tpicamente en algoritmos de reconocimiento de patrones, estimacin de movimiento, codificacin, Problema: Escoger el vector rk cuya distancia al vector x de entrada sea mnima. La distancia se define tpicamente por las siguientes normas:
La media del valor absoluto de la diferencia (MAD or L1 norm)

El error cuadrtico medio (MSE or L2 norm)


67
Benito beda (Univ. Murcia)

Empleo de procesadores digitales de seal DSPs


Instruction Memory

DSP Core

A/D Converter D/A Converter

Data Memory

Serial Ports

68
Benito beda (Univ. Murcia)

DSP: Caractersticas bsicas


Fast Multiply-Accumulate (MAC)
DSP filters and transforms are multiply intensive

Multiple Access Memory


1 Instruction, 2 data per cycle

Specialized Addressing
Fifo, Arrays, Permutations

Specialized Program Control


Efficient loops Fast Interrupt Handling
69
Benito beda (Univ. Murcia)

Tipos de DSPs

DSP

Fixed Point

Floating Point

16 bit

20 bit

24 bit

32 bit IEEE

Other

70
Benito beda (Univ. Murcia)

Familia dsPIC

71
Benito beda (Univ. Murcia)

Respuesta en frecuencia de un filtro FIR implementado con dsPIC

72
Benito beda (Univ. Murcia)

Empleando el dsPIC filter design

73
Benito beda (Univ. Murcia)

Fichero de salida del dsPIC Filter design. Definicin de las etapas

74
Benito beda (Univ. Murcia)

Referencias
Curso de tratamiento digital de seales. Andoni irizar.
http://www.tecnun.es/asignaturas/tratamiento%20digital/tds5.html

Introduction to digital filters. Julius O. Smith


http://www-ccrma.stanford.edu/~jos/filters/

Fundamentals of signals and systems using the web and Matlab. Kamen Edward; heck, Bonnie. Ed. Prentice Hall (2006)

75
Benito beda (Univ. Murcia)

S-ar putea să vă placă și