Universidad Técnica Particular de Loja

Post on 19-Jan-2016

36 views 0 download

description

Universidad Técnica Particular de Loja. PROCESAMIENTO DE SEÑALES. Carlos Carrión Betancourth EQBYTE.INC cecarrion1@gmail.com dsputpl@gmail.com. Escuela de Electrónica y Telecomunicaciones. Presentación. Objetivo general - PowerPoint PPT Presentation

Transcript of Universidad Técnica Particular de Loja

Universidad Técnica Particular de Loja

PROCESAMIENTO DE SEÑALES

Escuela de Electrónica

y Telecomunicaciones

Carlos Carrión Betancourth

EQBYTE.INC

cecarrion1@gmail.com

dsputpl@gmail.com

Presentación

• Objetivo generalPresentar una introducción a los conceptos básicos de DSP, como las perspectivas de desarrollo de aplicaciones relacionadas.

• Temática Introducción al procesamiento digital de señales. Convolución y correlación. Ecuaciones en diferencia y transformada Z. DFT y FFT. Osciladores digitales.

• MetodologíaSe realizará presentaciones, se hará discusión sobre el tema de presentación, se realizará prácticas con Matlab/Simulink y elementos relacionados.

Contenido de la presentación

• Introducción al procesamiento digital de señales.

• Convolución y correlación.

• Ecuaciones en diferencias y transformada Z.

• Transformada discreta de Fourier.

• Osciladores digitales.

• Introducción a filtros digitales.

• Diseño e implementación de filtros digitales.

Aplicaciones de DSP

(1960-1970s) DSP limitado a: radar y sonar, medicina y exploración del espacio. 

(1980-1990s) La revolución de la microelectrónica causó un gran crecimiento en las aplicaciones de los DSPs.

Aplicaciones de DSP

(2000s-actualidad) La tendencia actual de esta tecnología es hacia aplicaciones de comunicaciones inalámbricas, así como para multimedia. La producción a gran escala de chips tiende a una reducción de costos. Además de los nuevos dispositivos cuánticos.

Aplicaciones de DSP

Procesamiento de Imágenes• Reconocimiento de Patrones• Visión Robótica http://cavr.korea.ac.kr/Aplicaciones Militares• Comunicaciones seguras• Procesamiento de radar• Guía de misilesInstrumentación y control• Reducción de ruido• Análisis espectralProcesamiento de Audio• Reconocimiento de voz• Síntesis de vozMedicina• Monitoreo de pacientes• Procesamiento de señales ECG, EEG, imágenes

Procesamiento digital de señales

Diagrama de bloques de un Sistema de Procesamiento digital de señales:

Acondicionamiento de señal A/D

Procesamiento Digital D/A Adecuación

Procesamiento: convolución, correlación, DFT

Dispositivos para el procesamiento digital: PC, microprocesadores, microcontroladores, DSPs (Digital Signal Processors), ASICs (Application Specific Integrated Circuit)

Dispositivos Procesamiento - Generalidades

• GPP, General Purpose Processor

• DSP, Digital Signal Processor

• FPGA, Field Programmable Gate Array

• ASIC, Application Specific Integrated Circuit

Cada uno con unas características propias para determinadas aplicaciones.

El mejor dispositivo depende de la aplicación.

Dispositivos Programables - GPP

Características principales• Flexibilidad• Tecnología conocida• Gran desempeño en aplicaciones de control

de flujo

Desarrollo• Extensiones para manejo vectorial• Capacidades de procesamiento digital de

señales• Tecnología superescalares: varias

instrucciones por ciclo de reloj.

Dispositivos Programables - DSP

Evolución

• En 1982 TI introduce el primer DSP comercial (TMS32010) para aplicaciones en Telecomunicaciones

• En 1996 TI introduce el primer DSP con tecnología VLIW (Very Large Instruction Word), Familia TMS320C62XX, con 8 unidades de ejecución independientes.

y[n] = x[n]a0 + x[n-1]a1 + x[n-2]a3

Berkeley Design Technology, Inc.

Dispositivos Programables - GPP Vs VLIW

• GPP • VLIW

Memoria

Progama + Datos

ALU, Registros

Memoria Programa

L1 S1 M1 A1 L2 S2 M2 A2

Registros Registros

Memoria Datos

L:ALU S:Shift M:Multiply A:Address

Berkeley Design Technology, Inc.

Dispositivos Programables - FPGAs

Características principales• Flexibilidad• Bajo tiempo de desarrollo de aplicaciones• Bajos volúmenes• Aplicaciones de alto nivel de paralelismo

Características DSP• Herramientas para el diseño de sistemas DSP

(Altera: DSP Builder, Xilinx: System Generator).• Memoria Embebida• Multiplicadores embebidos 18x18 (Altera: hasta

150 a 250MHz, Xilinx: hasta 512 a 500 MHz).

http://www.altera.com/technology/dsp/devices/dsp-devices_features.htmlhttp://www.xilinx.com/products/virtex4/capabilities/xtremedsp.htm

Dispositivos Programables - ASICs

Características• Alto desempeño• Bajo consumo de potencia• Alta velocidad de procesamiento• Alto tiempo de desarrollo de aplicaciones• Altos volúmenes• No son flexibles

Desarrollo• HardCopy de Altera: desarrollo del diseño y

depuramiento empleando herramientas de FPGAs, emplea el mismo proceso de fabricación de FPGAs.

http://www.altera.com/products/software/flows/asic/qts-structured_asic.html

Dispositivos Programables - Comparación

Desempeño Costo Potencia Flexibilidad Esfuerzo de diseño

ASIC Alto Alto Baja Baja Alta

DPS Medio Medio Media Media Media

GPP Bajo Bajo Medio Alta Baja

HR Medio Medio Alta Alta Media

Reconfigurable Computing for DSP: a survey. INAOE.

Contenido de la presentación

• Introducción al procesamiento digital de señales.

• Convolución y correlación.

• Ecuaciones en diferencias y transformada Z.

• Transformada Discreta de Fourier.

• Osciladores.

• Introducción a Filtros Digitales.

• Diseño e implementación de filtros digitales.

Convolución discreta

kk

knhkxnhknxny ][][][][][

La convolución discreta se aplica a secuencias causales LTI.

x(n) h(n) y(n)

x(n): secuencia de entrada

h(n): respuesta del sistema al impulso

y(n): secuencia de salida

Convolución discreta – Sistemas LTI

h(n) = {0, 1, 1, 0}

0 1 2 3

n

T

x(0) = 1

0 1 2 3 4

x(1) = 2

n

0 1 2 3 4 n

0 1 2 3 4

y(n) = {0, 1,3, 2, 0}

n

Suma 0 1 3 2 0

Para: x(n) = {1, 2}

Matlab conv()

Correlación cruzada

1

0

)(2)(112N

n

nxnxr

1

0

)(2)(11

12N

n

nxnxN

r

Para dos secuencias x1(n), x2(n):

Dependiente del número de datos y del desfase

Dependiente del desfase

1

0

)(2)(11

)(12N

n

jnxnxN

jr

2/11

0

1

0

22 )(2)(11

)(12)(12

N

n

N

n

nxnxN

jrj Normalizada

Matlab xcorr()

Autocorrelación

Es cuando x1[n] = x2[n]

Cuando j=0

r11(0) es la energía normalizada

1

01111 )()(

1)(

N

n

jnxnxN

jr

1

0

21

1

01111 )(

1)()(

1)0(

N

n

N

n

nxN

nxnxN

r

Autocorrelación normalizada

Ejercicios

• Realice la correlación de las siguientes señales:– Señales senoidales con frecuencia 10Hz,

frecuencia de muestreo 360Hz, desfase 60°.– Dos señales de distribución de probabilidad

gausiana.– La autocorrelación de una señal de distribución

de probabilidad gausiana.

Contenido de la presentación

• Introducción al procesamiento digital de señales

• Convolución y correlación

• Ecuaciones en diferencias y transformada Z

• Transformada Discreta de Fourier

• Osciladores

• Filtros Digitales

• Empleo de Simulink

Transformada Z

Ejemplos

1. x(n) = {1 2 -1 -8}

X(z) = 1 + 2z-1 - z-2 – 8z-3; ROC: todo valor de z excepto z=0

2. x(n) = 0.5n u(n)

ROC: |0.5/z| < 1 => |z| > 0.5

n

nznxzX )()(z: variable compleja

ROC

1

0

1

0 5.01

15.05.0

z

zzn

n

n

nn

Transformada Z de primer orden

h(n) = an u(n)

x x

x x

x x

1

0

1

0 1

1)(

az

azzazHn

n

n

nn

Propiedades de la Transformada Z

• Linealidad:

ax1(n) + bx2(n) - > aX1(z) + bX2(z)

• Desplazamiento

x(n-m) = z-mX(z)

• Convolución

Y(z) = X(z) H(z)

Ecuación en Diferencias

y(n) = b0x(n) + b1x(n-1) + b2x(n-1) - a1y(n-1)

Propiedades de Z• Linealidad: ax1(n)+bx2(n) -> aX1(z)+bX2(z)• Desplazamiento: x(n-m) = z-mX(z)

Y(z) = b0X(z) + b1X(z) z-1+b2X(z) z-2-a1Y(z) z-1

Y(z) (1 + a1z-1) = X(z) (b0 + b1z-1 + b2z-2)

11

22

110

1)(

)()(

za

zbzbb

zX

zYzH

Ecuación en Diferencias

Especifican la operación que debe realizar un sistema:

Para pasar a Z (propiedad del desplazamiento):

Un sistema descrito por E. D (coef constantes) es LTI

M

kk

N

kk knxbknya

00

)()(

M

kk

N

kk knxbknyany

01

)()()(

M

k

kk

N

k

kk zXzbzYzany

01

)()()(

Transformadas Z del seno y el coseno

1)cos(2

)(2 Tzz

Tzsen

1)cos(2

)cos(2

2

Tzz

Tzz

sin(nT)

cos(nT)

Contenido de la presentación

• Introducción al procesamiento digital de señales

• Convolución y correlación

• Ecuaciones en diferencias y transformada Z

• Transformada Discreta de Fourier

• Osciladores

• Filtros Digitales

• Empleo de Simulink

Series de Fourier

En 1822 Fourier descubrió las series de Fourier.

Las sen(not) y cos(not) conjunto ortogonal donde:

o: frecuencia fundamental o del primer armónico.

no: armónicos

Expansión en series de Fourier:

1n0n0n0 t)n(senbt)ncos(aa)t(f

Series de Fourier: señales periódicasTransformada de Fourier: señales de energía finita

Exponencial y sinusoidal en tiempo discreto

1. Una senoidal discreta es periódicas solo si la frecuencia es racional:

f0= k/N2. Dos sinusoides separadas en = 2son idénticas

Exponenciales relacionadas armónicamente con f0=1/N,El conjunto de exponenciales:

exp(j2k f0n) está conformado solo por N exponenciales discretas:

exp(j2kn/N), k=0,1,2...N-1son periódicas de periodo N.

DFT Transformada Discreta de Fourier

x(n) se asume de periodo N

X(k) es de periodo N.

1

0

/2

1

0

/2

)(1

)(

)()(

N

k

Nknj

N

n

Nknj

ekXN

nx

enxkX

DFT

IDFT

Ejemplo DTF

Ejemplo: x[n] = {1 0 0 1}:

01001)()2( 33

0

4/4

j

n

nj eenxX

3

0

3

0

0 21001)()()0(nn

j nxenxX

jeenxX j

n

nj

11001)()1( 2/33

0

4/2

jeenxX j

n

nj

11001)()3( 2/93

0

4/6

1

0

/2)()(N

n

NknjenxkX

Complejidad DFT

Para calcular cada punto: 4 multiplicaciones complejas y 3 sumas.

Para N puntos: N2 multiplicaciones y N(N-1) sumas. Alta complejidad.

Hay redundancias, por ejemplo:

Para k=1, n=2: WN2

Para k=2, n=1: WN2

3

0))/2(exp(][][

nknNjnxkX WN = e-j2/N

kN

kN

kNN WxWxWxWxkX 320 )3()2()1()0()(

Para x(n) con 3 valores:

FFT

Peden aprovecharse las redundancias.

El primer algoritmo fue el de Cooley y Tukey (1965).

N DFT FFT X (DFT/FFT)

+ (DFT/FFT)X + X +

2 4 2 1 2 4 1

128 16384 16256 448 896 36.6 18.1

2048 4194304 4192256 11264 22528 372.4 186.1

8192 67108864 67100672 53248 106496 1260.3 630

Relación entre Fourier y Z

La relación entre Fourier y Z:z = re j = e j

Que es la transformada z alrededor del círculo unitario.

n

n

n

nj

znxzX

enxX

)()(

)()( Transformada de Fourier

Transformada Z

Ejemplo

Un sistema con respuesta al impulso:

h(n) = 0.5nu(n)

Términos de la respuesta al impulso:

h(n) = {1, 0.5, 0.25, 0.125….}

Que tipo de filtro es (LPF, HPF, BPF)?

1

0

1

0 5.01

15.05.0

z

zzn

n

n

nn

xComo implementar el filtro

en un DSP?

Ejercicios

1

1

5.01

1)(

z

zzH

Hallar los primeros 5 términos de la respuesta al impulso de un sistema con la siguiente función de transferencia:

Hallar la ecuación en diferencias para un sistema que tiene los siguientes polos y ceros:

z=0z=0.5p=-1p=1

Contenido de la presentación

• Introducción al procesamiento digital de señales

• Convolución y correlación

• Ecuaciones en diferencias y transformada Z

• Transformada Discreta de Fourier

• Osciladores

• Filtros Digitales

• Empleo de Simulink

Relación señal a ruido

Resultado de la precisión finita: SNR (ideal) = 6.02n + 1.76 dB

Puede mitigarse el efecto de truncar la fase añadiendo a la fase una secuencia aleatoria removiendo la periodicidad en la fase reduciendo los espurios

Osciladores

Tipos de osciladores

• Look-up-table

• CORDIC

• Transformada z

• Series de Taylor

Look-up-table

Consiste en acumular incrementos de fase para emplearlos como dirección de una ROM.

• ROM completa: la ROM almacena los 360° de las señales seno y coseno. Emplea mucha memoria y pocos elementos lógicos.

• ROM pequeña: almacena solo una porción de los valores de las señales seno y coseno. Los demás valores son derivados.

Programa en Matlab - LUT

clear all;fs = 2000; %frecuencia de muestreofo = 20; %frecuencia de la señalN = 2048; %valores en la tablapaso = 2*pi/(N+1);tabl = sin(0:paso:2*pi-paso);

Nspcy = fs/fo;thpas = N/(Nspcy-1)

ang = 1;x = [];for k = 0:floor(Nspcy)-1, x = [x tabl(floor(ang))]; ang = ang + thpas;end

plot(x)res = paso*180/pi

Antes y después de añadir ruido - LUT

CORDIC

Empleado cuando no se dispone de suficiente memoria para implementar una tabla.

El algoritmo emplea multiplicaciones por 2, sumas, restas y una tabla de un tamaño pequeño.

Transformada Z

1)cos(2

)(2 Tzz

Tzsen

1)cos(2

)cos(2

2

Tzz

Tzz

sin(nT)

cos(nT)

Programa Matlab

fs = 100; f = 20; w = 2*pi*f/fs;%Sin:a1s = sin(w); b1s = 2*cos(w);%Cos:a1c = cos(w); b1c = 2*cos(w);

ys = []; y1s = 0; y2s = 0; x1s = 0; xs = 1;yc = []; y1c = 0; y2c = 0; x1c = 0; xc = 1;for k = 1:10, yy = b1s*y1s - y2s + a1s*x1s; xx = b1c*y1c - y2c + a1c*x1c + xc; ys = [ys yy]; y2s = y1s; y1s = yy; x1s = xs; xs = 0;

yc= [yc xx]; y2c = y1c; y1c = xx; x1c = xc; xc = 0;endsubplot(2,1,1); stem(ys)subplot(2,1,2); stem(yc)