Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Primera Practica Ciii 2021
Primera Practica Ciii 2021
Fecha: 2021.08.20
FUNDAMENTOS DEL MANEJO DE SEÑALES
I. OBJETIVOS
1. Señales discretas
Una señal discreta viene representada matemáticamente a través de una función cuya variable
independiente es de tipo discreto (solo toma valores enteros). De esta manera, podemos decir que
una señal discreta es una secuencia de números. Si estos números o amplitudes son también de
tipo discreto, estaremos hablando de señales digitales. Las señales discretas pueden obtenerse
bien, a partir de un muestreo de una señal continua o bien, a partir de un procesado discreto.
Las secuencias discretas son aquellas generadas a partir de un muestreo de señales cuya variable
independiente es continua. Por ejemplo, para el procesado discreto de una señal de voz se necesita
una secuencia discreta en donde estén almacenados los valores que toma la voz continua en
instantes temporales equiespaciados. El interés creciente del procesado discreto o digital de
señales estriba en su versatilidad y eficiencia para tratar señales diferentes y procesos complejos
de gran carga computacional.
Analíticamente, las señales discretas, x[n], se consideran de longitud infinita, abarcando un eje de
tiempos: −∞≤n≤∞ . Sin embargo, los elementos numéricos empleados por Matlab son de tipo
matricial M × N donde M y N son valores enteros finitos. Por tanto, un vector, x, de tipo columna
N × 1, o de tipo fila 1 × N nos servirá para representar un intervalo de longitud finita N de la
secuencia que deseamos generar, conteniendo N valores de la misma. Además, es importante
recordar que la indexación de un vector en Matlab comienza en el elemento 1. Por tanto, si nuestro
vector x está representando los valores de la secuencia x[n] desde n = 0 hasta n = N −1, el valor
del vector x en el índice 1, x(1) corresponderá con el valor de la secuencia x[n] en el instante
temporal 0. Por esta razón es más conveniente representar una secuencia x[n] a partir de un par de
vectores x que almacena los valores de la secuencia y el vector n (de números enteros) que
almacena los índices de cada elemento de la secuencia tal cuál se representa en una tabulación.
n 0 1 2 3 4 5 6 7
x[n] 0.5 1.2 5 -3 0 -2 1.2 9
3. Secuencias Básicas
Las secuencias básicas para el procesado discreto de señales son la secuencia impulso, la
secuencia escalón y las exponenciales reales y complejas.
donde los x[k] es la amplitud de la secuencia en n=k. Este aspecto es de interés al considerar
sistemas lineales discretos.
>> d = zeros(40,1);
>> d(1) = 1;
>> stem(d)
Observe, que de esta manera, el valor de amplitud unitario en lugar de situarse en el instante 0
se sitúa en el instante 1. Para etiquetar correctamente el eje horizontal, deberá crearse un
vector que contenga el intervalo de tiempos:
>> n = 0:39;
>> d = zeros(40,1);
>> d(1) = 1;
>> stem(n,d)
ii. Secuencia escalón unidad: la secuencia escalón unidad viene definida como:
Las relaciones mías interesantes entre la secuencia impulso y la secuencia escalón vienen
dadas a través de:
Si deseamos visualizar mediante Matlab un intervalo de la secuencia escalón unitario entre los
instantes −50 ¿ n ¿ 49, una posible secuencia de comandos seria:
>> n = -50:49;
>> x = zeros(100,1);
>> x(51:100) = ones(50,1);
>> stem(n,x)
>> title(’u(n)’), xlabel(’n’)
iii. Secuencias Exponenciales Reales: dadas las constantes reales A y α definimos una secuencia
exponencial como:
La exponencial será decreciente en amplitud a lo largo del tiempo siempre que | α | < 1,
mientras que será creciente cuando | α | > 1. Para el caso en que | α | = 1 tenemos una
secuencia constante
>> n = -9:40;
>> e = 2*(-0.9).^n;
>> stem(n,e)
>> title(´e(n)´), xlabel(´n´)
iv. Secuencias Sinusoidales: la expresión de una secuencia sinusoidal viene dada por:
No siempre son secuencias periódicas. La condición de periodicidad para una secuencia x[n]
es x[n] = x[n + N] (siendo N una constante entera). Aplicada a nuestro caso, se traduce en:
siendo k una constante entera. Sólo en el caso en que la frecuencia wo cumpla la anterior
condición, nos encontraremos ante una secuencia sinusoidal periódica, de período N. Nótese
que una secuencia sinusoidal discreta puede proceder del muestreo de una señal continua.
Dependiendo de como se efectué este muestreo, los valores de las muestras seleccionadas en
un período podrán coincidir (secuencia periódica) o no (secuencia no periódica) con los
valores elegidos en el resto de los períodos de la sinusoide continua.
El conjunto de valores (wo+2 π r), con r constante entera, generan todos la misma secuencia
sinusoidal:
v. Secuencias Exponenciales Complejas: una secuencia exponencial compleja viene dada por la
expresión x[n] = A α n
, siendo A = |A|ej ϕ y α = | α |ejwo .
Si | α | <> 1, las partes real e imaginaria de x[n] serán secuencias sinusoidales que se van
según la expresión anterior, para visualizar una exponencial compleja, x, tendremos la opción
de visualizar su parte real e imaginaria:
>> subplot(2,1,1), stem(n,real(x))
>> subplot(2,1,2), stem(n,imag(x))
a) Suma y Producto entre dos Secuencias: la suma y producto entre dos secuencias x[n] e y[n] se
define como la suma y producto muestra a muestra para −1 ¿ n ¿ +1:
Operando con secuencias truncadas, aparece un problema cuando están definidas en distintos
intervalos de tiempo. Una primera solución consiste en añadir ceros, convenientemente, a las
secuencias truncadas tal como se muestra en el siguiente ejemplo. Si deseamos sumar dos
secuencias u1[n] y u2[n], definidas en diferentes intervalos de tiempo, podemos proceder de la
siguiente manera:
>> n = -10:50;
>> x1 = [u1 ; zeros(20,1)];
>> x2 = [zeros(10,1) ; u2];
>> x3 = x1 + x2;
>> x4 = x1 .* x2;
>> stem(n,x3)
>> title(’Suma’), xlabel(’n’), (replot)
>> stem(n,x4)
>> title(’Producto’), xlabel(’n’), (replot)
La otra solución, consiste en un nuevo truncamiento de las dos secuencias a operar, de tal
manera que el nuevo intervalo de tiempos sea el común de las dos secuencias.
>> n = 0:30;
>> x5 = u1(11:41);
>> x6 = u2(1:31);
>> x7 = x5 + x6;
>> x8 = x5 .* x6;
>> stem(n,x7)
>> title(’Suma ’), xlabel(’ n ’), replot
>> stem(n,x8)
>> title(’Producto ’), xlabel(’ n ’), replot
b) Cambio de Amplitud: dada x[n] y la constante real A, obtenemos una nueva secuencia y[n] =
Ax[n], donde cada muestra de x[n] queda multiplicada por la constante A. Cuando |A| > 1, la
secuencia resultante y[n] es una versión amplificada de la original, mientras que si |A| < 1, y[n]
es una versión atenuada. Además, si A < 0 también se produce un cambio de polaridad.
>> n = -40:9;
>> er = e(length(e):-1:1);
>> stem(n,er)
>> title(’Reflexion’), xlabel(’ n ’), (replot)
Computadora
Software Matlab
V. ACTIVIDADES
a) Definir la variable de tiempo ’n’ según los límites temporales impuestos para la
secuencia truncada, así como un par de variables que indiquen el inicio y fin del eje de
tiempos truncado, es decir: ’ni’=n(1) y ’nf’=n(length(n)).
b) Rellenar la secuencia que se va a definir, ’s[n]’, con ceros mediante el comando
s=zeros(n).
c) Colocar los valores de la secuencia deseada en las posiciones del eje adecuadas, para
lo cual tendremos en cuenta los límites temporales donde la secuencia deseada está
definida, ’li’ y ’lf’:
>> si=max(li-ni+1,1);
>> sf=min(length(n),lf-ni+1);
>> s(si:sf)=secuencia deseada;
Con esta regla general se tiene en cuenta los posibles truncamientos de señales tanto
por la izquierda como por la derecha.
1. Genere y visualice en Matlab las siguientes secuencias impulso unitario en los intervalos
temporales que se especifican:
X 1 [ n ] =−30 δ [ n ]−10≤ n ≤ 10
X 2 [ n ] =−4 δ [ n−50 ] + 6 δ [n−55] 45 ≤ n ≤65
X 3 [ n ] =−4 δ [ n+15 ] −20 ≤n ≤ 0
2. Genere (usando la función zeros y el operador “:”) y visualice el tren periódico de impulsos:
∞
X [ n ] = ∑ 2 δ [ n−3 k ] −15 ≤ n ≤15
k→ ∞
% s [ n ] = Asen(ω o n+fi)
7. Empleando el editor, programe una función para Matlab, genexp.m que genere exponenciales
complejas. La cabecera de la función será:
function [x,n] = genexp(absA,fasA,absa,fasa,n0,n1);
% Entradas:
% absA : valor absoluto de amplitud
% fasA: fase de amplitud
% absa: valor absoluto del exponente
% fasa: fase del exponente
% n0: índice temporal de comienzo de la secuencia
% n1: índice temporal de finalización de la secuencia
% Salidas:
% x : la secuencia exponencial compleja
% n : vector con los índices temporales
% x [ n ] =| A||a|n e j(ω n+ φ)
o
En las funciones de desplazamiento, tenga en cuenta que el valor m puede ser mayor que la
longitud de la secuencia de entrada.
12. Para comprobar las funciones que acaba de programar, considere la secuencia:
x[n] 0.2n 0 n 20
a) efectué un desplazamiento lineal de 8 unidades a la derecha de dicha secuencia.
b) efectué un desplazamiento circular de 8 unidades a la izquierda de dicha secuencia.
c) Represente la secuencia reflejada.
VI. CONCLUSIONES
Emita al menos cinco conclusiones alrededor de las operaciones sobre señales discretas.
VII. CUESTIONARIO/EJERCICIOS
2. Construya un formulario con las principales series trigonométricas (al menos 5 indicando y
graficando las condiciones de convergencia)