Desplazamiento en tiempo discreto

From glossaLAB

[gL.edu] Este artículo recoge contribuciones de Daniel Francisco Naranjo Dávila, Antonio Medina Ordoñez, elaboradas en el contexto de la Clarificación conceptual en "teoría de la señal y la comunicación", bajo la supervisión de J.M. Díaz Nafría.


Respecto al desplazamiento temporal tanto en tiempo continuo como discreto nos hemos referido en desplazamiento temporal, aquí nos referimos exclusivamente a tiempo discreto.

Definiciones

El desplazamiento temporal se trata de una manipulación de la señal discreta en el tiempo donde se desplaza la señal en el tiempo mediante la sustitución de la variable independiente n por n-k, siendo k un número entero.

Si k es entero positivo se produce un retardo de la señal en k unidades de tiempo. Si k es entero negativo se produce un adelanto de la señal en |k| unidades de tiempo (Proakis, Manolakis, 2007: p.45) (cf.Retardo de la señal, Adelanto de la señal).

Por ejemplo, tenemos la secuencia x(n) que queremos retrasar 4 unidades de tiempo, la señal retardada y(n) será y(n) = x(n – 4). Una propiedad destacada de la señal desplazada es la del efecto observado en los dominios transformados (z y frecuencia), que resulta fundamental para la determinación de la respuesta de los sistemas:

Código

Para realizar un desplazamiento temporal en Matlab se pueden realizar operaciones elementales con los modelos de la señal (combinando modificaciones de la base de tiempos y/o de la señal). También pueden usarse funciones de más alto nivel como el ofrecido en el paquete de sistemas de arrays de fase que permiten la simulación sobre Simulink de sistemas de comunicación inalámbrica, radiodeterminarción, sonares, etc. Este es el caso de la función delayseq, que permite retrasar o adelantar una secuencia el número de muestras que deseemos (The Mathworks, 2020). La sintaxis es:

y_n = delayseq(x_n, delay)

Retrasa o adelanta un número de muestras que introducimos con “delay”. Si es negativo adelanta y si es positivo retrasa el número de muestras que introduzcamos con ese parámetro. y_n es la secuencia desplazada y x_n es la secuencia que vamos a retrasar o a adelantar (ibidem).

y_n = delayseq(x_n, delay, fs)

En este caso el adelanto o retraso de la señal se puede introducir en segundos, añadiendo como parámetro la frecuencia de muestreo de la señal (fs).

Referencias