Apuntes PDS - Unidad 1

26
UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA MEXICALI Apuntes de la unidad de aprendizaje PROCESAMIENTO DIGITAL DE SEÑALES ENRIQUE RENÉ BASTIDAS PUGA. Febrero de 2012.

description

Apuntes de procesamiento digital de señales

Transcript of Apuntes PDS - Unidad 1

Page 1: Apuntes PDS - Unidad 1

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA

FACULTAD DE INGENIERÍA MEXICALI

Apuntes de la unidad de aprendizaje

PROCESAMIENTO DIGITAL DE SEÑALES

ENRIQUE RENÉ BASTIDAS PUGA.

Febrero de 2012.

Page 2: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 2 de 26.

UNIDAD 1: SEÑALES Y SISTEMAS EN TIEMPO DISCRETO Introducción. El procesamiento digital de señales (PDS) es un área de la ingeniería que se ha desarrollado de manera muy rápida desde el surgimiento de la era de las computadoras y como resultado de los grandes avances en materia de informática y la fabricación de circuitos integrados. Las computadoras y el hardware asociado en sus inicios eran muy grandes y costosos, lo cual limitaba su uso sobre todo a aplicaciones militares y científicas. Posteriormente el desarrollo de la industria de la fabricación de circuitos digitales, con su evolución desde la integración a mediana escala (MSI) hasta la actual integración a muy grande escala (VLSI) de circuitos integrados, permite el desarrollo de equipo de cómputo y hardware digital más pequeño, más rápido y a menor costo. La computadora ENIAC (Electronic Numeric Integrator and Calculator) fue una de las computadoras de primera generación, que se utilizaba para fines militares, costó millones de dólares, pesaba más de 30 toneladas, y tenía miles de bulbos. La disminución en el costo de los circuitos digitales integrados ha permitido el desarrollo de sistemas digitales para llevar a cabo diversas tareas y funciones de procesamiento digital de señales, con el consecuente impulso en el desarrollo de las técnicas para el PDS. Ejemplos de sistemas que utilizan PDS se pueden ver en prácticamente todas las aplicaciones de tecnología moderna. Áreas del PDS:

• Procesamiento de audio. • Reconocimiento de voz. • Procesamiento de imágenes. • Comunicaciones digitales. • Sistemas de control. • Estimación espectral. • Sistemas de radar. • Sistemas de sonar. • Etc.

Los algoritmos de PDS si bien es cierto pueden ser ejecutados por procesadores de uso común, resulta más adecuado utilizarlos en hardware especializado conocido como procesadores de señales digitales (DSP por sus siglas en inglés). Algunos ejemplos son: microprocesadores, arreglos de compuertas programables por campos (FPGA), microcontroladores, entre otros. También es conveniente aclarar que los algoritmos de PDS no sólo son aplicados con hardware, ya que existe software especializado en distintas áreas cuya programación está basada en el PDS.

Page 3: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 3 de 26.

1.1 Señales discretas en el tiempo. Una señal se define como cualquier magnitud física que varía con respecto al tiempo, al espacio o cualquier otra u otras variables independientes. Una señal discreta x(n) es una función de una variable independiente que es siempre entero. Cuando la variable independiente es el tiempo, entonces se le llama señal discreta en el tiempo. Ejemplo 1. Función discreta en el tiempo que se utiliza para definir los nombres de los días de la semana cuando la variable independiente representa el número del día:

n 1 2 3 4 5 6 7 x(n) Domingo Lunes Martes Miércoles Jueves Viernes Sábado

x(1) = domingo. x(6) = viernes. Representaciones de una señal discreta en el tiempo: 1. Funcional. Se utiliza una expresión matemática para definir los valores de la función en base a la

variable independiente.

𝑥𝑥(𝑛𝑛) = �1, 𝑛𝑛 = −1, 0, 1.0, 𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜 𝑐𝑐𝑐𝑐𝑐𝑐𝑜𝑜.

� 2. Tabular. Se utiliza una tabla de datos que permite ubicar los valores de la función correspondientes a

cada valor de la variable independiente.

n … -2 -1 0 1 2 … x(n) … 0 1 1 1 0 …

3. Gráfica. Se utiliza un sistema de coordenadas cartesianas o rectangulares para plasmar los valores de

la función en el eje vertical con respecto a los valores de la variable independiente en el eje horizontal.

4. Secuencia. Se indican los valores de la función con una serie de números en orden progresivo

correspondientes a los valores de la variable. El valor correspondiente a x(0) se marca con una flecha.

NOTA: Para graficar funciones discretas en MATLAB se utiliza la función stem. >> N = [-2, -1, 0, 1, 2] >> X = [0, 1, 1, 1, 0] >> stem(N, X)

Page 4: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 4 de 26.

𝑥𝑥(𝑛𝑛) = {… 0,1,1,1,0, … }↑

1.1.1 Señales discretas elementales. Existen algunas señales discretas que son utilizadas de manera regular en el procesamiento digital de señales, las cuales se definen a continuación: 1. Señal muestra unitaria. Es la señal que tiene un valor de 1

para n = 0 y para cualquier otro n es 0. Se utiliza la letra griega δ para representarla.

𝛿𝛿(𝑛𝑛) = �1, 𝑝𝑝𝑐𝑐𝑜𝑜𝑐𝑐 𝑛𝑛 = 0,0, 𝑝𝑝𝑐𝑐𝑜𝑜𝑐𝑐 𝑛𝑛 ≠ 0.

� (Ec. 1.1.1)

2. Señal escalón unitario. La función tiene un valor de 1 para

valores de n ≥ 0 y de 0 para n < 0.

𝑢𝑢(𝑛𝑛) = �1, 𝑝𝑝𝑐𝑐𝑜𝑜𝑐𝑐 𝑛𝑛 ≥ 0,0, 𝑝𝑝𝑐𝑐𝑜𝑜𝑐𝑐 𝑛𝑛 < 0.

� (Ec. 1.1.2)

3. Señal rampa unitario. La función discreta de una recta con

pendiente 1 para n ≥ 0 y cuyo valor es 0 para n < 0.

𝑢𝑢𝑜𝑜(𝑛𝑛) = �𝑛𝑛, 𝑝𝑝𝑐𝑐𝑜𝑜𝑐𝑐 𝑛𝑛 ≥ 0,0, 𝑝𝑝𝑐𝑐𝑜𝑜𝑐𝑐 𝑛𝑛 < 0.

� (Ec. 1.1.3)

4. Señal exponencial. Si la base es positiva la función es

creciente, y si la base es negativa la función es decreciente. 𝑥𝑥(𝑛𝑛) = 𝑐𝑐𝑛𝑛 (Ec. 1.1.4)

Page 5: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 5 de 26.

5. Señal senoidal. 𝑥𝑥(𝑛𝑛) = 𝐴𝐴 sen(𝜔𝜔 𝑛𝑛 + 𝜃𝜃) 𝑥𝑥(𝑛𝑛) = 𝐴𝐴 sen(2 𝜋𝜋 𝑓𝑓 𝑛𝑛 + 𝜃𝜃) (Ec. 1.1.5) A : amplitud. f : frecuencia discreta en cantidad de ciclos / muestra. ω : frecuencia angular discreta en rad / muestra. N : Período fundamental, que es la cantidad de muestras por ciclo (N = 1 / f ). 1.1.2 Clasificación de señales discretas. Un aspecto clave cuando se utiliza el PDS es identificar las características de las señales que se trabajan, ya que de ello depende en gran medida la conveniencia del método a utilizar. A continuación se presentan algunas de las clasificaciones más comunes que se aplican a señales discretas de acuerdo con sus características. 1. Señales de energía y de potencia.

Antes de aclarar la diferencia entre una señal de energía o una señal de potencia, definamos tanto la energía como la potencia promedio de una señal discreta. Sea x(n) una señal discreta, para la cual su energía (E) y su potencia promedio (P) se definen como:

𝐸𝐸 = � |𝑥𝑥(𝑛𝑛)|2 (Ec. 1.1.5)∞

𝑛𝑛=−∞

𝑃𝑃 = lim𝑁𝑁→∞

12𝑁𝑁 + 1

� |𝑥𝑥(𝑛𝑛)|2𝑁𝑁

𝑛𝑛=−𝑁𝑁

(Ec. 1.1.6)

Si la energía E de una señal discreta es finita, entonces se clasifica como señal de energía, pero si la potencia promedio P es finita y diferente de cero, entonces se clasifica como señal de potencia. Ejemplo 1.1.1 Determina la energía y la potencia promedio de la función escalón unitario y determina si se trata de una señal de energía o de potencia.

𝐸𝐸 = � |𝑢𝑢(𝑛𝑛)|2∞

𝑛𝑛=−∞

= �|𝑢𝑢(𝑛𝑛)|2∞

𝑛𝑛=0

= ∞

𝑃𝑃 = lim𝑁𝑁→∞

12𝑁𝑁 + 1

� |𝑢𝑢(𝑛𝑛)|2𝑁𝑁

𝑛𝑛=−𝑁𝑁

= lim𝑁𝑁→∞

12𝑁𝑁 + 1

�|𝑢𝑢(𝑛𝑛)|2𝑁𝑁

𝑛𝑛=0

= lim𝑁𝑁→∞

12𝑁𝑁 + 1

�(1)2𝑁𝑁

𝑛𝑛=0

𝑃𝑃 = lim𝑁𝑁→∞

12𝑁𝑁 + 1

(𝑁𝑁 + 1) = lim𝑁𝑁→∞

𝑁𝑁𝑁𝑁 + 1

𝑁𝑁2𝑁𝑁𝑁𝑁 + 1

𝑁𝑁=

12

Page 6: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 6 de 26.

2. Señales de periódicas y aperiódicas.

Una señal discreta x(n) es periódica con período N, si los valores de la señal se repiten cada N muestras, es decir:

𝑥𝑥(𝑛𝑛 + 𝑁𝑁) = 𝑥𝑥(𝑛𝑛) para todo 𝑛𝑛. (Ec. 1.1.7) Al valor más pequeño de N que hace que la Ec. 1.1.7 se cumpla se le llama período fundamental. Si no existe un valor N para que se cumpla la Ec. 1.1.7, entonces la señal es aperiódica. Para una señal discreta periódica, su potencia promedio se reduce a calcular:

𝑃𝑃 =1𝑁𝑁� |𝑥𝑥(𝑛𝑛)|2𝑁𝑁−1

𝑛𝑛=0

(Ec. 1.1.8)

3. Señales de simétricas (pares) y asimétricas (impares).

Una señal discreta x(n) es par si tiene simetría con respecto al eje vertical, lo cual también se expresa como:

𝑥𝑥(−𝑛𝑛) = 𝑥𝑥(𝑛𝑛) para todo 𝑛𝑛. (Ec. 1.1.9) Por otro lado, una señal discreta x(n) es impar si es asimétrica con respecto al eje vertical, lo cual también se expresa como:

𝑥𝑥(−𝑛𝑛) = −𝑥𝑥(𝑛𝑛) para todo 𝑛𝑛. (Ec. 1.1.10) Ejemplo 1.1.2 Las funciones coseno y seno con período fundamental N = 8 son ejemplos de funciones asimétricas y simétricas respectivamente:

Una propiedad muy importante para las señales, es que cualquier señal se puede representar como la suma de una componente par xp(n) y una componente impar xi(n), lo cual se logra con las siguientes ecuaciones

𝑥𝑥𝑝𝑝(𝑛𝑛) =12

[𝑥𝑥(𝑛𝑛) + 𝑥𝑥(−𝑛𝑛)] (Ec. 1.1.11)

NOTA: Para graficar la función coseno con N = 8 muestras por período en MATLAB se utiliza el siguiente código: >> N = [-8 : 8]; >> X = cos(pi/4*N); >> stem(N, X)

Page 7: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 7 de 26.

𝑥𝑥𝑖𝑖(𝑛𝑛) =12

[𝑥𝑥(𝑛𝑛)− 𝑥𝑥(−𝑛𝑛)] (Ec. 1.1.12)

𝑥𝑥(𝑛𝑛) = 𝑥𝑥𝑝𝑝(𝑛𝑛) + 𝑥𝑥𝑖𝑖(𝑛𝑛) (Ec. 1.1.13) 1.1.3 Manipulación de señales discretas en el tiempo. Los algoritmos utilizados en el PDS se basan en la manipulación de las señales, para lo cual es importante definir en qué consisten las manipulaciones más comunes. 1. Desplazamiento en el tiempo. Ocurre cuando en una señal x(n), su variable independiente se reemplaza por n - k, produciendo un retardo de la señal si k es positivo, o un adelanto de la señal si k es negativo. Ejemplo 1.1.3 Considera la señal x(n) mostrada a continuación. Realiza la representación gráfica de x(n), x(n-2) y x(n+3).

𝑥𝑥(𝑛𝑛) = �𝑛𝑛, −2 ≤ 𝑛𝑛 ≤ 2,0, cualquier otro 𝑛𝑛.

2. Inversión o reflexión en el tiempo. Consiste en sustituir la variable n de la señal x(n) por –n, lo cual produce una rotación de 180° con respecto al eje vertical en la gráfica.

NOTA: Para graficar las señales se utiliza el siguiente código: >> N = [-8 : 8]; % Se define el vector de la variable independiente. >> Nw=(N>=-2)&(N<=2)%Se obtiene un vector con una ventana para los valores -2≤n≤2. >> X = (N).*(Nw); % Se calcula la señal x(n). >> stem(N, X); % Se grafica x(n) >> Nw=(N>=0)&(N<=4)%Se obtiene un vector con una ventana para los valores 0≤n≤4. >> X = (N-2).*(Nw); % Se calcula la señal x(n - 2). >> stem(N, X); % Se grafica x(n – 2) >> Nw=(N>=-5)&(N<=-1)%Se obtiene un vector con una ventana para los valores -5≤n≤-1. >> X = (N+3).*(Nw); % Se calcula la señal x(n + 3). >> stem(N, X); % Se grafica x(n + 2)

Page 8: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 8 de 26.

Ejemplo 1.1.4 Nuevamente considera la señal x(n) del ejemplo 1.1.3 y representa gráficamente la función invertida en el tiempo: x(-n).

𝑥𝑥(𝑛𝑛) = �𝑛𝑛, −2 ≤ 𝑛𝑛 ≤ 2,0, cualquier otro 𝑛𝑛.

� 3. Escalalamiento en el tiempo o submuestreo. Consiste en sustituir la variable n de la señal x(n) por un término múltiplo de n: mn. El efecto que se produce es que del total de muestras originales, sólo se selecciona 1 de cada m, por eso también se le llama submuestreo.

𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑚𝑚𝑛𝑛) Ejemplo 1.1.5 Considera la señal x(n) definida al final del párrafo y representa gráficamente tanto x(n) como x(2n).

𝑥𝑥(𝑛𝑛) = �1, −6 ≤ 𝑛𝑛 ≤ 6,0, cualquier otro 𝑛𝑛.

4. Suma, multiplicación y escalamiento de amplitud. La suma y la multiplicación de dos señales se realizan sumando o multiplicando, según sea el caso, los valores correspondientes a cada instante de tiempo. El escalamiento de amplitud consiste en multiplicar cada valor de la señal por una constante dada. Ejemplo 1.1.6 Considera las señales x1(n) y x2(n) que se muestran a continuación y realiza las operaciones indicadas.

𝑥𝑥1(𝑛𝑛) = {−2, 3, 0,−1, 1}

NOTA: Para graficar las señales se utiliza el siguiente código: >> N = [-8 : 8];%Se define el vector de la variable independiente. >> Nw=(N>=-2)&(N<=2)%Se obtiene un vector con una ventana para los valores -2≤n≤2. >> X = (-N).*(Nw); % Se calcula la señal x(-n). >> stem(N, X); % Se grafica x(n)

Page 9: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 9 de 26.

𝑥𝑥2(𝑛𝑛) = {2, 1, 3,−2, 4} a) 𝑥𝑥1(𝑛𝑛) + 𝑥𝑥2(𝑛𝑛) = {0, 3, 3,−3, 5} b) 𝑥𝑥1(𝑛𝑛) 𝑥𝑥2(𝑛𝑛) = {−4, 3, 0, 2, 4} c) 3 𝑥𝑥1(𝑛𝑛) = {−6, 9, 0,−3, 3} Taller 1.1: Señales discretas en el tiempo. Ejercicio 1.1.1 Considera la señal x(n) definida a continuación y realiza lo que se indica.

𝑥𝑥(𝑛𝑛) = 𝑢𝑢(𝑛𝑛) − 𝑢𝑢(𝑛𝑛 − 3) a) Representa gráficamente la señal x(n) para -8≤ n ≤ 8. b) Grafica la señal y1(n) = x(-n). c) Grafica la señal y2(n) = x(n + 4). d) Grafica la señal y3(n) = x(n -2). e) Grafica la señal y4(n) = x(-n + 4). f) Grafica la señal y5(n) = x(-n - 4). Capítulo 2: 2.2a, 2.2e, 2.2g, 2.3b. Tarea 1.1: Señales discretas en el tiempo. Capítulo 2: 2.1, 2.2b, 2.2c, 2.2d, 2.2f, 2.3a, 2.4, 2.5.

Page 10: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 10 de 26.

1.2 Sistemas discretos. El PDS involucra en muchas aplicaciones la utilización de algoritmos o dispositivos que realicen algunas operaciones sobre una señal discreta en el tiempo. Esos algoritmos o dispositivos reciben el nombre de sistemas discretos en el tiempo. A manera de concepto, podemos decir que un sistema discreto en el tiempo es un conjunto de operaciones que actúan sobre una señal de entrada o excitación x(n), para generar una señal de salida o respuesta del sistema y(n). 1.2.1 Descripción y representación. Otra manera de ver a un sistema discreto en el tiempo, es como un efecto de transformación que le ocurre a la entrada del sistema para convertirla en la salida, lo cual se expresa en las siguientes notaciones:

𝑦𝑦(𝑛𝑛) = 𝒯𝒯[𝑥𝑥(𝑛𝑛)]

𝑥𝑥(𝑛𝑛) 𝒯𝒯 ��𝑦𝑦(𝑛𝑛)

De la misma manera, un sistema discreto en el tiempo se puede expresar por el diagrama a bloques mostrado a continuación: Ejemplo 1.2.1 Considera la señal x(n) que se indica y encuentra la respuesta de los sistemas mostrados.

𝑥𝑥(𝑛𝑛) = �|𝑛𝑛|, −3 ≤ 𝑛𝑛 ≤ 3,0, otro caso.

� a) Encuentra la secuencia de la señal x(n).

𝑥𝑥(𝑛𝑛) = {… , 0, 0, 3, 2, 1, 0, 1, 2, 3, 0, 0, … } b) y(n) = x(n - 1).

𝑦𝑦(𝑛𝑛) = {… , 0, 0, 3, 2, 1, 0, 1, 2, 3, 0, 0, … } c) y(n) = x(n + 1).

𝑦𝑦(𝑛𝑛) = {… , 0, 0, 3, 2, 1, 0, 1, 2, 3, 0, 0, … } d) 𝑦𝑦(𝑛𝑛) = 1

3[𝑥𝑥(𝑛𝑛 + 1) + 𝑥𝑥(𝑛𝑛) + 𝑥𝑥(𝑛𝑛 − 1)].

𝑦𝑦(𝑛𝑛) = �… , 0, 1,53

, 2, 1,23

, 1, 2,53

, 1, 0, … �

Sistema discreto en el tiempo. x(n) y(n)

Page 11: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 11 de 26.

e) 𝑦𝑦(𝑛𝑛) = ∑ 𝑥𝑥(𝑘𝑘)𝑛𝑛𝑘𝑘=−∞

𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛) + 𝑥𝑥(𝑛𝑛 − 1) + 𝑥𝑥(𝑛𝑛 − 2) + ⋯

𝑦𝑦(𝑛𝑛) = {… , 0, 0, 3, 5, 6, 6, 7, 9, 3, 12, 12, … } Ejemplo 1.2.2 El sistema del ejemplo 1.2.1 inciso e) también recibe el nombre de acumulador porque la salida actual depende de la entrada actual y la salida anterior:

𝑦𝑦(𝑛𝑛) = � 𝑥𝑥(𝑘𝑘)𝑛𝑛

𝑘𝑘=−∞

= � 𝑥𝑥(𝑘𝑘)𝑛𝑛−1

𝑘𝑘=−∞

+ 𝑥𝑥(𝑛𝑛) = 𝑦𝑦(𝑛𝑛 − 1) + 𝑥𝑥(𝑛𝑛)

Considera que la entrada del sistema es x(n) = n u(n) para calcular su salida bajo las siguientes condiciones: a) El sistema inicialmente está en reposo, es decir, y(-1) = 0. 𝑦𝑦(𝑛𝑛) = 𝑦𝑦(𝑛𝑛 − 1) + 𝑥𝑥(𝑛𝑛) = 𝑦𝑦(−1) + 𝑥𝑥(0) + 𝑥𝑥(1) +⋯+ 𝑥𝑥(𝑛𝑛)

𝑦𝑦(𝑛𝑛) = 𝑦𝑦(−1) + �𝑥𝑥(𝑘𝑘) = 𝑦𝑦(−1) + 𝑛𝑛(𝑛𝑛 + 1)

2

𝑛𝑛

𝑘𝑘=0

𝑦𝑦(𝑛𝑛) = 𝑛𝑛(𝑛𝑛 + 1)

2

𝑦𝑦(𝑛𝑛) = {… , 0, 1, 3, 6, 10, 15, 21, … } b) Inicialmente y(-1) = 1.

𝑦𝑦(𝑛𝑛) = 1 + 𝑛𝑛(𝑛𝑛 + 1)

2=

2 + 𝑛𝑛2 + 𝑛𝑛2

𝑦𝑦(𝑛𝑛) = {… ,−1, 1, 2, 4, 7, 11, 16, … } Bloques para la representación gráfica de los sistemas discretos en el tiempo. A continuación se enlistan los bloques más comúnmente utilizados para representar la interconexión de sistemas discretos en el tiempo:

Operación Representación gráfica Interpretación

Suma

𝑦𝑦(𝑛𝑛) = 𝑥𝑥1(𝑛𝑛) + 𝑥𝑥2(𝑛𝑛) +

x1(n)

x2(n)

y(n)

Page 12: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 12 de 26.

Multiplicación por

una constante

𝑦𝑦(𝑛𝑛) = 𝑐𝑐 𝑥𝑥(𝑛𝑛)

Multiplicación de señales

𝑦𝑦(𝑛𝑛) = 𝑥𝑥1(𝑛𝑛) 𝑥𝑥2(𝑛𝑛)

Elemento de

retardo unitario

𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛 − 1)

Elemento de

adelanto unitario

𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛 + 1)

Ejemplo 1.2.3 Realiza un diagrama a bloques que represente al sistema discreto en el tiempo dado por la siguiente relación de entrada-salida:

𝑦𝑦(𝑛𝑛) =14𝑦𝑦(𝑛𝑛 − 1) +

12𝑥𝑥(𝑛𝑛) +

12𝑥𝑥(𝑛𝑛 − 1)

Para efectos de simplificar el diagrama, será conveniente factorizar ½ de los dos últimos términos: 𝑦𝑦(𝑛𝑛) = 1

4𝑦𝑦(𝑛𝑛 − 1) + 1

2[𝑥𝑥(𝑛𝑛) + 𝑥𝑥(𝑛𝑛 − 1)]

1.2.2 Clasificación de los sistemas discretos en el tiempo. Cuando se realizan análisis o diseños de sistemas discretos es conveniente clasificarlos de acuerdo a sus propiedades, ya que las técnicas que pueden ser utilizadas dependen de las características de los sistemas. A continuación se presentan las clasificaciones más comunes para los sistemas discretos en el tiempo. 1. Sistemas estáticos y dinámicos. Los sistemas estáticos son aquellos que sólo dependen de la muestra actual de la entrada, también se les conoce como sistemas sin memoria.

x(n) y(n) a

x

x1(n)

x2(n)

y(n)

z-1 x(n) y(n)

z x(n) y(n)

z-1 x(n)

+ +

z-1

0.5

0.25

y(n)

Page 13: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 13 de 26.

Por su parte los sistemas dinámicos, son aquellos que además de depender de la muestra actual de la entrada, también requiere de alguna o algunas muestras ya sean pasadas o futuras. Los sistemas descritos por las ecuaciones de entrada-salida para y1(n) y y2(n) son ejemplos de sistemas estáticos, mientras que los sistemas para y3(n) y y4(n) son dinámicos: 𝑦𝑦1(𝑛𝑛) = 𝑐𝑐 𝑥𝑥(𝑛𝑛) 𝑦𝑦2(𝑛𝑛) = 𝑛𝑛 𝑥𝑥(𝑛𝑛) + 𝑏𝑏 𝑥𝑥3(𝑛𝑛) 𝑦𝑦3(𝑛𝑛) = 𝑥𝑥(𝑛𝑛) + 2 𝑥𝑥(𝑛𝑛 − 1) 𝑦𝑦4(𝑛𝑛) = ∑ 𝑥𝑥(𝑛𝑛 − 𝑘𝑘)𝑛𝑛

𝑘𝑘=0 2. Sistemas invariantes y variantes en el tiempo. Los sistemas invariantes en el tiempo son aquellos para los cuales su característica de entrada-salida permanece constante con el tiempo. Consideremos un sistema que para una señal de entrada x(n) tiene una señal de salida y(n):

𝑥𝑥(𝑛𝑛) 𝒯𝒯 ��𝑦𝑦(𝑛𝑛)

Para determinar si el sistema es invariante en el tiempo, se debe cumplir que la salida del sistema y(n, k), correspondiente a la señal de entrada con un desplazamiento de k unidades x(n – k), sea precisamente la señal de salida también desplazada k unidades y(n – k).

𝑥𝑥(𝑛𝑛 − 𝑘𝑘) 𝒯𝒯 ��𝑦𝑦(𝑛𝑛 − 𝑘𝑘)

Para que el sistema sea invariable en el tiempo, la regla se debe cumplir para cualquier señal de entrada, de lo contrario el sistema se clasifica como variable en el tiempo. Ejemplo 1.2.4 Determina si los sistemas mostrados a continuación son invariantes o variantes en el tiempo. a) Diferenciador: b) Multiplicador por tiempo:

z-1

x(n) + y(n)

x x(n)

n

y(n) = n x(n)

Page 14: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 14 de 26.

c) Espejo: d) Modulador: 3. Sistemas lineales y no lineales. Un sistema discreto es lineal si satisface el principio de superposición, es decir, que la salida del sistema correspondiente a una combinación lineal de distintas señales de entrada sea igual a la combinación lineal de las salidas individuales de cada una de las señales utilizadas:

𝒯𝒯[𝑐𝑐1 𝑥𝑥1(𝑛𝑛) + 𝑐𝑐2 𝑥𝑥2(𝑛𝑛)] = 𝑐𝑐1 𝒯𝒯[ 𝑥𝑥1(𝑛𝑛)] + 𝑐𝑐2 𝒯𝒯[ 𝑥𝑥2(𝑛𝑛)] Otra manera de verlo es que si: 𝑦𝑦1(𝑛𝑛) = 𝒯𝒯[ 𝑥𝑥1(𝑛𝑛)] y 𝑦𝑦2(𝑛𝑛) = 𝒯𝒯[ 𝑥𝑥2(𝑛𝑛)], entonces:

𝒯𝒯[𝑐𝑐1 𝑥𝑥1(𝑛𝑛) + 𝑐𝑐2 𝑥𝑥2(𝑛𝑛)] = 𝑐𝑐1 𝑦𝑦1(𝑛𝑛) + 𝑐𝑐2 𝑦𝑦2(𝑛𝑛) Ejemplo 1.2.5 Determina si los sistemas mostrados a continuación son lineales o no lineales. a) 𝑦𝑦(𝑛𝑛) = 𝑛𝑛 𝑥𝑥(𝑛𝑛) b) 𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛2) c) 𝑦𝑦(𝑛𝑛) = 𝑥𝑥2(𝑛𝑛) d) 𝑦𝑦(𝑛𝑛) = 𝐴𝐴 𝑥𝑥(𝑛𝑛) + 𝐵𝐵 e) 𝑦𝑦(𝑛𝑛) = 𝑒𝑒𝑥𝑥(𝑛𝑛) 4. Sistemas causales y no causales. Un sistema es causal si la salida en cualquier instante n sólo depende de las entradas actuales y pasadas: x(n), x(n - 1), x(n - 2), … Por el contrario, un sistema será no causal si su salida en un instante n depende de entradas futuras al sistema.

𝒯𝒯 x(n) y(n) = x(-n)

X x(n)

cos(ω0 n)

y(n) = x(n) cos(ω0 n)

Page 15: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 15 de 26.

Ejemplo 1.2.6 Determina si los sistemas mostrados a continuación son causales o no causales. a) 𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛) − 𝑥𝑥(𝑛𝑛 − 1) b) 𝑦𝑦(𝑛𝑛) = ∑ 𝑥𝑥(𝑘𝑘)𝑛𝑛

𝑘𝑘=−∞ c) 𝑦𝑦(𝑛𝑛) = 𝑐𝑐 𝑥𝑥(𝑛𝑛) d) 𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛2) e) 𝑦𝑦(𝑛𝑛) = 𝑥𝑥(−𝑛𝑛) 5. Sistemas estables e inestables. Un sistema es estable si para toda entrada acotada produce una salida acotada, lo cual se expresa matemáticamente de la siguiente manera:

|𝑥𝑥(𝑛𝑛)| ≤ 𝑀𝑀𝑥𝑥 < ∞ |𝑦𝑦(𝑛𝑛)| ≤ 𝑀𝑀𝑦𝑦 < ∞ En base a la definición anterior, podemos decir que un sistema inestable es aquel cuya salida crece indiscriminadamente aún para entradas acotadas. Ejemplo 1.2.7 Determina si el siguiente sistema es estable o inestable. Considera que y(-1) = 0.

𝑦𝑦(𝑛𝑛) = 𝑦𝑦2(𝑛𝑛 − 1) + 𝑥𝑥(𝑛𝑛) Taller 1.2: Sistemas discretos. Capítulo 2: 2.6a, 2.6b, 2.7a, 2.7d, 2.7e, 2.7g, 2.7j, 2.7l, 2.7m. Tarea 1.2: Sistemas discretos. Capítulo 2: 2.6c, 2.6d, 2.7b, 2.7c, 2.7f, 2.7h, 2.7i, 2.7k, 2.7n.

Page 16: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 16 de 26.

1.3 Conversión analógica digital. La mayoría de las señales para las que puede haber un interés en procesarlas digitalmente son de naturaleza analógica: señales de voz, biológicas, sísmicas, de radar, de audio, etc. Por ello se requiere convertirlas a un formato digital con un procedimiento que consta de tres pasos: 1. Muestreo: En este paso se convierte una señal continua en el tiempo xa(t) a una señal discreta en el

tiempo x(n), mediante la toma de “muestras” de la señal en instantes discretos de tiempo.

2. Cuantificación: En este se paso se convierte una señal de valores continuos correspondientes a tiempos discretos x(n), en una señal de valores discretos correspondientes a tiempos discretos xq(n).

3. Codificación: En este paso, cada valor discreto xq(n) se convierte en una secuencia binaria. Diagrama a bloques de la conversión analógica-digital: 1.3.1 Muestreo. Cuando de una señal analógica se toman muestras a intervalos iguales de tiempo, se le conoce como muestreo uniforme o periódico:

𝑥𝑥(𝑛𝑛) = 𝑥𝑥𝑐𝑐(𝑛𝑛 𝑇𝑇), Donde:

• xa(t) es la señal analógica. • x(n) es la señal discreta en el tiempo obtenida a partir de muestras de la señal analógica. • T es el tiempo entre muestras o tiempo de muestreo. • Fs es la cantidad de muestras tomadas por unidad de tiempo, también conocida como frecuencia

de muestreo: 𝐹𝐹𝑐𝑐 = 1𝑇𝑇.

La variable t para la señal analógica se relaciona con la variable n de la señal discreta de la siguiente manera:

𝑜𝑜 = 𝑛𝑛 𝑇𝑇 =𝑛𝑛𝐹𝐹𝑐𝑐

Muestreo

Cuantificador

Codificador

xa(t) x(n) xq(n) Señal digital

t

xa(t)

T n

x(n)

Page 17: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 17 de 26.

Consideremos que la señal analógica a muestrear xa(t) es una señal senoidal: 𝑥𝑥𝑐𝑐(𝑜𝑜) = 𝐴𝐴 𝑐𝑐𝑜𝑜𝑐𝑐(2 𝜋𝜋 𝐹𝐹 𝑜𝑜 + 𝜃𝜃) (Ec. 1.3.1)

donde F es la frecuencia de la senoidal que expresa cantidad de ciclos por unidad de tiempo, cuya unidad más comúnmente utilizada es el Hertz. Si la señal senoidal es muestreada a una tasa Fs, entonces tenemos:

𝑥𝑥(𝑛𝑛) = 𝐴𝐴 𝑐𝑐𝑜𝑜𝑐𝑐(2𝜋𝜋 𝐹𝐹 𝑛𝑛𝑇𝑇 + 𝜃𝜃) = 𝐴𝐴 𝑐𝑐𝑜𝑜𝑐𝑐 �2𝜋𝜋 𝐹𝐹 𝑛𝑛𝐹𝐹𝑐𝑐

+ 𝜃𝜃�

De la expresión anterior definamos a la frecuencia normalizada de una señal senoidal discreta como:

𝑓𝑓 = 𝐹𝐹𝐹𝐹𝑐𝑐

, Las unidades de la frecuencia normalizada f son ciclos/muestra y la señal senoidal discreta se puede reescribir de la siguiente manera:

𝑥𝑥(𝑛𝑛) = 𝐴𝐴 𝑐𝑐𝑜𝑜𝑐𝑐(2𝜋𝜋 𝑓𝑓 𝑛𝑛 + 𝜃𝜃) (Ec. 1.3.2) El muestreo de una señal senoidal dada por la Ec. 1.3.1 produce una señal discreta dada por la Ec. 1.3.2, donde la frecuencia normalizada f, la frecuencia de la senoidal F y la frecuencia de muestreo Fs guardan las siguientes relaciones:

−12≤ 𝑓𝑓 ≤

12

−𝐹𝐹𝑐𝑐2≤ 𝐹𝐹 ≤

𝐹𝐹𝑐𝑐2

De no cumplirse las relaciones anteriores al muestrear una señal senoidal, se produce un efecto conocido como “alias”, el cual provoca que la señal muestreada aparente ser una señal de una frecuencia correspondiente al rango de frecuencias especificado anteriormente. Ejemplo 1.3.1 Considera las señales analógicas senoidales x1(t) y x2(t), para convertirlas a señales discretas con una Fs = 40 Hz. Grafica x1(n) y x2(n).

𝑥𝑥1(𝑜𝑜) = cos �2𝜋𝜋(10)𝑜𝑜 + 𝜋𝜋8�

𝑥𝑥2(𝑜𝑜) = cos �2𝜋𝜋(50)𝑜𝑜 + 𝜋𝜋8�

Page 18: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 18 de 26.

En este caso la frecuencia F = 50 Hz es un “alias” de la frecuencia F = 10 Hz para una frecuencia de muestreo Fs = 40 Hz, por lo que las dos señales muestreadas resultan indistinguibles una de otra. Ejemplo 1.3.2 Considera la señal analógica 𝑥𝑥𝑐𝑐(𝑜𝑜) = 3 cos(100 𝜋𝜋 𝑜𝑜). a) Determina la frecuencia de muestreo mínima necesaria para evitar el “aliasing”. b) Supón que la señal se muestrea a la frecuencia Fs = 200 Hz. ¿Qué señal discreta en el tiempo se obtiene después de la operación de muestreo? c) Supón que la señal se muestrea a la frecuencia Fs =75 Hz. ¿Qué señal discreta en el tiempo se obtiene después del muestreo. d) ¿Cuál es la frecuencia 0 < F < Fs /2 de una senoidal que produce muestras idénticas a las obtenidas en el inciso c)? Teorema de muestreo: Una señal analógica xa(t) que tiene una frecuencia máxima Fmax puede ser recuperada en forma exacta si se muestrea a una frecuencia Fs > 2 Fmax. Cuando la frecuencia de muestreo es el doble de la frecuencia máxima Fs = 2 Fmax, se le denomina frecuencia de Nyquist (FN). Ejemplo 1.3.3 Considera la señal analógica

𝑥𝑥𝑐𝑐(𝑜𝑜) = 3 cos(2000 𝜋𝜋 𝑜𝑜) + 5 sen(6000 𝜋𝜋 𝑜𝑜) + 10 cos(12000 𝜋𝜋 𝑜𝑜) a) ¿Cuál es la frecuencia de Nyquist para esta señal? b) Si la señal se muestrea a la frecuencia Fs = 5000 muestras/seg. ¿Qué señal discreta en el tiempo se obtiene después de la operación de muestreo? c) ¿Cómo es la señal analógica ya(t) que se puede reconstruir a partir de las muestras obtenidas en el inciso b)? suponiendo que la recuperación es ideal. 1.3.2 Cuantificación. Como ya se estableció anteriormente, la cuantificación es el proceso mediante el cual una señal discreta en el tiempo con amplitud continua (señal muestreada) se convierte a una señal cuyas amplitudes pertenecen a un conjunto finito.

NOTA: Para graficar las señales se utiliza el siguiente código: >> N = [0 : 10];%Se define el vector de la variable independiente. >> X1 = cos(2*pi*10/40*N + pi/8);%Señal muestreada x1 >> X2 = cos(2*pi*50/40*N + pi/8);%Señal muestreada x2 >> figure(1) >> stem(N, X1); % Se grafica x1(n) >> figure(2) >> stem(N, X2); % Se grafica x2(n)

Page 19: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 19 de 26.

La siguiente figura ejemplifica el proceso de cuantificación, para el cual el rango de amplitudes posibles de la señal muestreada se divide en L niveles, de tal manera que un valor de amplitud continuo se asigna al nivel más cercano, convirtiendo las amplitudes en un conjunto discreto.

La resolución de cuantificación ∆ es la longitud de cada nivel de cuantificación:

∆=𝑥𝑥max − 𝑥𝑥min

𝐿𝐿 − 1

Donde xmax y xmin son los valores máximos y mínimos de la señal muestreada. 1.3.3 Codificación. Es el paso final de la conversión analógica digital, en el cual se asigna un número binario a cada nivel de cuantificación. Por cada uno de los L niveles de cuantificación se requiere un número binario distinto. Si la secuencia binara es de longitud b bits, entonces se tienen 2b números binarios distintos, por lo tanto se debe cumplir que 2b ≥ L. Taller 1.3: Conversión analógica digital. Capítulo 1: 1.7, 1.10, 1.13. Tarea 1.3: Conversión analógica digital. Capítulo 1: 1.5, 1.8, 1.9.

Page 20: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 20 de 26.

1.4 Sistemas lineales invariables en el tiempo (LTI) discretos. 1.4.1 Análisis de sistemas LTI. Un método para analizar el comportamiento de un sistema LTI ante una señal de entrada x(n) consiste en descomponer la señal de entrada en una suma de señales elementales, de tal manera que la salida del sistema a cada una de las señales elementales se obtenga fácilmente. Una forma general para descomponer una señal arbitraria es hacerlo en sumas de impulsos unitarios, lo cual se logra de la siguiente manera:

𝑥𝑥(𝑛𝑛) = � 𝑥𝑥(𝑘𝑘) 𝛿𝛿(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=−∞

(Ec. 1.4.1)

La siguientes figuras ayudan a ejemplificar lo que sucede con cada término de la sumatoria anterior, el cual corresponde a cada valor de la señal original x(n) antes de descomponerse, y que por lo tanto al sumarse todos ellos dan como resultado la señal original nuevamente.

Ejemplo 1.4.1 Considera la señal que se muestra y exprésala como una suma de impulsos ponderados:

𝑥𝑥1(𝑛𝑛) = {3, 2, 0,−1} Consideremos que se tiene un sistema LTI cuya entrada es x(n) y su salida y(n): En el sistema anterior consideremos que la entrada será la señal impulso unitario x(n) = δ(n) y su correspondiente salida será h(n):

ℎ(𝑛𝑛) = 𝒯𝒯[𝛿𝛿(𝑛𝑛)] Como el sistema es invariable en el tiempo, entonces la salida del sistema correspondiente a un impulso desplazado en el tiempo será a su vez la salida desplazada en el tiempo:

ℎ(𝑛𝑛,𝑘𝑘) = ℎ(𝑛𝑛 − 𝑘𝑘) = 𝒯𝒯[𝛿𝛿(𝑛𝑛 − 𝑘𝑘)] Con los elementos anteriores establecidos, ahora consideremos que la entrada es de manera general x(n), la cual puede ser expresada como una suma ponderada de impulsos unitarios (Ec. 1.4.1).

Sistema discreto LTI. x(n) y(n)

Page 21: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 21 de 26.

En tal caso, la salida del sistema LTI cuya entrada es x(n) está dada por: 𝑦𝑦(𝑛𝑛) = 𝒯𝒯[𝑥𝑥(𝑛𝑛)]

𝑦𝑦(𝑛𝑛) = 𝒯𝒯 � � 𝑥𝑥(𝑘𝑘) 𝛿𝛿(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=−∞

� = � 𝑥𝑥(𝑘𝑘)𝒯𝒯[𝛿𝛿(𝑛𝑛 − 𝑘𝑘)] ∞

𝑘𝑘=−∞

= � 𝑥𝑥(𝑘𝑘)ℎ(𝑛𝑛 − 𝑘𝑘) ∞

𝑘𝑘=−∞

𝑦𝑦(𝑛𝑛) = � 𝑥𝑥(𝑘𝑘)ℎ(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=−∞

(Ec. 1.4.2)

Para llegar a la ecuación anterior se utilizó el hecho de que el sistema es lineal e invariable en el tiempo. La Ec. 1.4.2 recibe el nombre de sumatoria de convolución y se utiliza para encontrar la respuesta y(n) de un sistema LTI cuya entrada es x(n) y su respuesta al impulso unitario es h(n). Según podemos observar en la Ec. 1.4.2, el cálculo de la convolución involucra cuatro pasos: 1. Rotación: La función h(k) se rota 180° alrededor del eje vertical para obtener h(-k).

2. Desplazamiento: La función h(k) se desplaza para obtener h(n0 - k). Si n0 es positivo

desplazamiento es hacia la derecha, pero si n0 es negativo el desplazamiento es hacia la izquierda. 3. Multiplicación: Se multiplican las secuencias x(k) y h(n0 - k).

4. Suma: Finalmente se suman todos los valores de la secuencia del paso anterior parea obtener el valor

de la convolución en el instante n = n0 : y(n0). Ejemplo 1.4.2 Determina la respuesta de un sistema y(n), cuya respuesta al impulso h(n) y señal de entrada x(n) se muestran a continuación:

ℎ(𝑛𝑛) = {1, 2, 1,−1}

𝑥𝑥(𝑛𝑛) = {1, 2, 3, 1}

𝑦𝑦(𝑛𝑛) = {⋯ , 0, 1, 4, 8, 8, 3,−2,−1, 0,⋯ }

NOTA: Para calcular una convolución discreta en MATLAB se utiliza la función conv. >> H = [1, 2, 1, -1] >> X = [1, 2, 3, 1] >> conv(X, H)

Page 22: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 22 de 26.

Ejemplo 1.4.3 Determina la salida y(n) de un sistema cuya respuesta al impulso h(n) y señal de entrada x(n) se muestran a continuación:

ℎ(𝑛𝑛) = 𝑐𝑐𝑛𝑛 𝑢𝑢(𝑛𝑛), |𝑐𝑐| < 1.

𝑥𝑥(𝑛𝑛) = 𝑢𝑢(𝑛𝑛). 1.4.2 Convolución y propiedades. La notación que se utiliza para representar la operación de convolución entre dos funciones x(n) y h(n) es:

𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛) ∗ ℎ(𝑛𝑛) = � 𝑥𝑥(𝑘𝑘)ℎ(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=−∞

A continuación se describen las propiedades de la convolución: 1. Propiedad conmutativa:

𝑥𝑥(𝑛𝑛) ∗ ℎ(𝑛𝑛) = ℎ(𝑛𝑛) ∗ 𝑥𝑥(𝑛𝑛) 2. Propiedad asociativa:

[𝑥𝑥(𝑛𝑛) ∗ ℎ1(𝑛𝑛)] ∗ ℎ2(𝑛𝑛) = 𝑥𝑥(𝑛𝑛) ∗ [ℎ1(𝑛𝑛) ∗ ℎ2(𝑛𝑛)] 3. Propiedad distributiva:

𝑥𝑥(𝑛𝑛) ∗ [ℎ1(𝑛𝑛) + ℎ2(𝑛𝑛)] = 𝑥𝑥(𝑛𝑛) ∗ ℎ1(𝑛𝑛) + 𝑥𝑥(𝑛𝑛) ∗ ℎ2(𝑛𝑛) Ejemplo 1.4.4 Determina la respuesta al impulso total h(n) de dos sistemas LTI conectados en cascada con respuestas al impulso dadas por h1(n) y h2(n). ℎ1(𝑛𝑛) = �1

2�𝑛𝑛

𝑢𝑢(𝑛𝑛).

ℎ2(𝑛𝑛) = �14�𝑛𝑛

𝑢𝑢(𝑛𝑛). Recordemos que un sistema causal es aquel cuya salida depende únicamente del valor actual y los valores anteriores de la señal de entrada, pero no de los valores futuros. En ese sentido, consideremos la convolución y reorganicemos la sumatoria:

𝑦𝑦(𝑛𝑛) = ℎ(𝑛𝑛) ∗ 𝑥𝑥(𝑛𝑛) = � ℎ(𝑘𝑘)𝑥𝑥(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=−∞

= � ℎ(𝑘𝑘)𝑥𝑥(𝑛𝑛 − 𝑘𝑘)−1

𝑘𝑘=−∞

+ �ℎ(𝑘𝑘)𝑥𝑥(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=0

𝑦𝑦(𝑛𝑛) = [⋯+ ℎ(−2)𝑥𝑥(𝑛𝑛 + 2) + ℎ(−1)𝑥𝑥(𝑛𝑛 + 1)] + [ℎ(0)𝑥𝑥(𝑛𝑛) + ℎ(1)𝑥𝑥(𝑛𝑛 − 1) +⋯ ] De la expresión anterior podemos concluir que una condición para que un sistema discreto sea causal es que su respuesta al impulso h(n) = 0 para valores de n < 0.

h1(n)

h1(n)

x(n) y(n)

h(n)

Page 23: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 23 de 26.

Cuando una señal x(n) = 0 para valores de n < 0, se dice que es causal. 1.4.3 Sistemas de duración finita (FIR) y sistemas de duración infinita (IIR). Los sistemas discretos LTI se pueden subdividir a su vez en dos distintos tipos, uno de ellos para el cual su respuesta al impulso h(n), sea cero fuera de algún intervalo en el tiempo, es decir, h(n) = 0 para valores de n < 0 y n ≥ M. Un sistema de este tipo recibe el nombre de sistema con repuesta al impulso finita (FIR por sus siglas en inglés). En tal caso, la respuesta del sistema se simplifica a:

𝑦𝑦(𝑛𝑛) = ℎ(𝑛𝑛) ∗ 𝑥𝑥(𝑛𝑛) = � ℎ(𝑘𝑘)𝑥𝑥(𝑛𝑛 − 𝑘𝑘)𝑀𝑀−1

𝑘𝑘=0

Por el contrario, si la respuesta al impulso de un sistema discreto LTI es causal, pero no alcanza nuevamente el valor de cero, entonces se le conoce como sistema con respuesta al impulso infinita (IIR por sus siglas en inglés). Para un sistema IIR causal, la respuesta del sistema se simplifica a:

𝑦𝑦(𝑛𝑛) = ℎ(𝑛𝑛) ∗ 𝑥𝑥(𝑛𝑛) = �ℎ(𝑘𝑘)𝑥𝑥(𝑛𝑛 − 𝑘𝑘)∞

𝑘𝑘=0

Taller 1.4: Sistemas lineales invariables en el tiempo (LTI) discretos. Capítulo 2: 2.17, 2.19, 2.22. Tarea 1.4: Sistemas lineales invariables en el tiempo (LTI) discretos. Capítulo 2: 2.16, 2.18, 2.20, 2.21.

- Realiza un programa que calcule y grafique la convolución entre dos señales. El programa debe aceptar como parámetros de entrada:

o Un vector con la señal x(n). o Un vector con la señal h(n). o Un vector con la ubicación de las muestras de x(n). o Un vector con la ubicación de las muestras de h(n).

Entregar el código del programa y la ejecución para resolver el ejemplo 1.4.2.

Page 24: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 24 de 26.

1.5 Autocorrelación y Correlación cruzada. 1.5.1 Concepto. La correlación cruzada es una operación entre funciones muy parecida a la convolución, con la diferencia de que al calcularla se busca una medida de que tan parecidas son las funciones. Es una operación ampliamente utilizada en aplicaciones de comunicaciones digitales, radar, sonar, geología, entre otras. Cuando se están comparando dos señales distintas, la operación recibe el nombre de correlación cruzada, pero si la operación se realiza con la misma señal, se le llama autocorrelación. Si x(n) y y(n) son dos señales de energía, entonces su correlación cruzada se define como:

𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙) = � 𝑥𝑥(𝑛𝑛)𝑦𝑦(𝑛𝑛 − 𝑙𝑙)∞

𝑛𝑛=−∞

(Ec. 1.5.1)

La Ec. 1.5.1 tiene una representación equivalente, si en lugar de fijar la señal x(n) y desplazar y(n), se hace lo contrario: desplazar x(n) y fijar y(n):

𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙) = � 𝑥𝑥(𝑛𝑛 + 𝑙𝑙)𝑦𝑦(𝑛𝑛)∞

𝑛𝑛=−∞

(Ec. 1.5.2)

Ejemplo 1.5.1 Calcula la correlación cruzada rxy(l) de las señales mostradas a continuación:

𝑥𝑥(𝑛𝑛) = {… , 0, 0, 2,−1, 3, 7, 1, 2,−3, 0, 0, … }

𝑦𝑦(𝑛𝑛) = {… , 0, 0, 1,−1, 2,−2, 4, 1,−2, 5, 0, 0, … }

De las Ec. 1.5.1 y 1.5.2 obtenemos las expresiones para el cálculo de la autocorrelación:

𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙) = � 𝑥𝑥(𝑛𝑛)𝑥𝑥(𝑛𝑛 − 𝑙𝑙)∞

𝑛𝑛=−∞

(Ec. 1.5.3)

NOTA: Para calcular correlación cruzada en MATLAB se utiliza la función xcorr. >> xcorr(X, Y)

Page 25: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 25 de 26.

𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙) = � 𝑥𝑥(𝑛𝑛 + 𝑙𝑙)𝑥𝑥(𝑛𝑛)∞

𝑛𝑛=−∞

(Ec. 1.5.4)

1.5.2 Propiedades. 1. Para una señal x(n), su energía Ex es igual a su autocorrelación en el tiempo l = 0:

𝑜𝑜𝑥𝑥𝑥𝑥 (0) = 𝐸𝐸𝑥𝑥 2. El valor máximo de una autocorrelación ocurre en el tiempo l = 0.

𝑜𝑜𝑥𝑥𝑥𝑥 (0) ≥ 𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙) 3. La correlación cruzada de dos señales es igual a la correlación cruzada rotada 180°, con respecto al eje

vertical, de las mismas señales pero calculada con las señales conmutadas: 𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙) = 𝑜𝑜𝑦𝑦𝑥𝑥 (−𝑙𝑙)

4. La autocorrelación es una señal par:

𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙) = 𝑜𝑜𝑥𝑥𝑥𝑥 (−𝑙𝑙) 5. La correlación cruzada de las señales x(n) y y(n) es equivalente a la convolución de las señales x(n)

y y(-n): 𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙) = 𝑥𝑥(𝑙𝑙) ∗ 𝑦𝑦(−𝑙𝑙)

6. La forma de la correlación cruzada entre dos señales no se afecta si una o ambas señales se escalan en

amplitud. Como la forma de la autocorrelación y de la correlación cruzada no se ve afectada por distintas escalas de las señales, es conveniente definir la autocorrelación normalizada, o correlación cruzada normalizada, las cuales tienen un rango de valores de -1 a 1:

𝜌𝜌𝑥𝑥𝑥𝑥 (𝑙𝑙) =𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙)𝑜𝑜𝑥𝑥𝑥𝑥 (0) (Ec. 1.5.5)

𝜌𝜌𝑥𝑥𝑦𝑦 (𝑙𝑙) =𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙)

�𝑜𝑜𝑥𝑥𝑥𝑥 (0) 𝑜𝑜𝑥𝑥𝑦𝑦 (0) (Ec. 1.5.6)

Ejemplo 1.5.2 Calcula la autocorrelación de la señal

𝑥𝑥(𝑛𝑛) = 𝑐𝑐𝑛𝑛 𝑢𝑢(𝑛𝑛); 0 < 𝑐𝑐 < 1. NOTA: Será conveniente utilizar los siguientes resultados de series:

�𝑐𝑐 𝑜𝑜𝑛𝑛∞

𝑛𝑛=0

=𝑐𝑐

1 − 𝑜𝑜; −1 < 𝑜𝑜 < 1.

�𝑐𝑐 𝑜𝑜𝑛𝑛𝑁𝑁−1

𝑛𝑛=0

=𝑐𝑐(1 − 𝑜𝑜𝑁𝑁)

1 − 𝑜𝑜.

Page 26: Apuntes PDS - Unidad 1

Procesamiento Digital de Señales.

Enrique René Bastidas Puga Página 26 de 26.

1.5.3 Correlación de secuencias periódicas. Si x(n) y y(n) son dos señales periódicas, su correlación cruzada también será periódica, y se calcula de la siguiente manera:

𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙) = lim𝑀𝑀→∞

12𝑀𝑀 + 1

� 𝑥𝑥(𝑛𝑛)𝑦𝑦(𝑛𝑛 − 𝑙𝑙)𝑀𝑀

𝑛𝑛=−𝑀𝑀

(Ec. 1.5.7)

La autocorrelación de una señal periódica está dada por:

𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙) = lim𝑀𝑀→∞

12𝑀𝑀 + 1

� 𝑥𝑥(𝑛𝑛)𝑥𝑥(𝑛𝑛 − 𝑙𝑙)𝑀𝑀

𝑛𝑛=−𝑀𝑀

(Ec. 1.5.8)

Como tanto la correlación cruzada como la autocorrelación son periódicas, su cálculo se reduce a un solo período:

𝑜𝑜𝑥𝑥𝑦𝑦 (𝑙𝑙) =1𝑁𝑁� 𝑥𝑥(𝑛𝑛)𝑦𝑦(𝑛𝑛 − 𝑙𝑙)𝑁𝑁−1

𝑛𝑛=0

(Ec. 1.5.9)

𝑜𝑜𝑥𝑥𝑥𝑥 (𝑙𝑙) =1𝑁𝑁� 𝑥𝑥(𝑛𝑛)𝑦𝑦(𝑛𝑛 − 𝑙𝑙)𝑁𝑁−1

𝑛𝑛=0

(Ec. 1.5.10)

Ejemplo 1.5.3 Considera que una señal senoidal x(n) que fue muestreada a una frecuencia Fs = 10 Hz, se ve afectada por ruido aditivo w(n), generando la señal y(n):

𝑦𝑦(𝑛𝑛) = 𝑥𝑥(𝑛𝑛) + 𝑤𝑤(𝑛𝑛) La relación señal a ruido (SNR) de y(n) es: SNR = 0.5 dB. Encuentra la frecuencia F de la señal x(n). Taller 1.5: Autocorrelación y Correlación cruzada. Capítulo 2: 2.62, 2.63, 2.66a. Tarea 1.5: Autocorrelación y Correlación cruzada. Capítulo 2: 2.61, 2.64, 2.65 (incisos a-d), 2.67.

NOTA: La señal y(n) está grabada en el archivo .mat en la sección de documentos de Blackboard. Utiliza la función load de MATLAB para cargar las variables contenidas en el archivo y_n.mat: >> load y n.mat