13-5-2015
Capítulo 1 Señales y sistemas en tiempo discreto
Mauricio Navarrete QUINTO ELECTRÓNICA E INTRUMENTACIÓN
CAPITULO 1 SORIA DESARROLLAR LOS EJERCICIOS PROPUESTOS DEL CAPITULO 1 DE SORIA
Dadas las frecuencias siguientes: X(n)= {-3,-2,-1, ,2,4,6};
y(n)={1,3, ,0,2};
w(n)={-5,3,2, }
Calcule y represente las siguientes secuencias: a(n)=x(n)+y(n)
a(n)={-3,-1,2,5,1.8,4,6} b(n)=x(n)y(n)
b(n)={0,-2,-3,0,-0.4,0}
c(n)=x(n)+y(n)-w(n)
c(n)={0,2,0,0,4,2,4,6} d(n)=0.72x(n)
d(n)={ -2.16 , 1.44,-0.72, 0, 1.44 , 2.88, 4.32} e(n)=w(n)*y(n)
e(n)={ -5,-12,-14, 23 12.4,4.6,-0.2}
θ
Determine para que los valores de , la señal x(n)= ejθn es periódica. ¿Cuál es el periodo para = /6?
θ π
θ = π /6
2 2 2 12 6 Calcule la correlación rxy de las secuencias x(n)=u(n) , y(n)=2n u(-n)
+
∑ [] [+] =− [] [] [] 2− −
[] [] desde -∞, hasta +∞, +
∑ 2− −
=− + ∑2− =
−
∑ 2− =− +
1 11⁄ ∑2 2 = 2 1 2 2 0 No existe intersección.
Evaluando directamente la suma de convolución, determine la respuesta al escalón de un − − con sistema LIT cuya respuesta al impulso es
ℎ [] ℎ[] ∗ []
|| < 1
[] ∑ ℎ[] [−] =−
[] ∑ −−
=− 1 [] ∑ − =− 1 [] ∑ =
1 [] 1 . 1 calcule la expresión general de la auto correlación de l a señal x(n)= 2-nu(n). A partir de ellas determine el valor de la energía de dicha señal.
[] 2−.[] ∗
0 ∑ . =−
0 ∑ 14 =− 0 ∑14 = 1 1 4 1 1 1 4 4 43
PRACTICAS CON MATLAB Esta sección contiene varios ejemplos prácticos sobre conceptos esenciales al tratar con señales y sistemas discretos como son el muestreo, cuantificación, las propiedades de estabilidad, linealidad e invarianza temporal de los sistemas y la correlación entre señales. En esta práctica se estudiaran las consecuencias del teorema de muestreo, haciendo especial hincapié en los efectos que se pueden producir si se muestrea una señal con la frecuencia incorrecta.
queda definida por la siguiente expresión: acos2
Sabemos que una sinusoide continua de frecuencia
Donde y son, respectivamente, la amplitud y la fase del sistema. Si muestreamos a una frecuencia obtenemos:
[] ≡ 2 2 Sustituyendo, en nuestro caso tendríamos:
200 )cos0.4 [] cos(2 1000 De forma inmediata se comprueba que si el periodo de la señal discreta es de 5 muestras, como nos piden dos períodos el número de muestras a generar es de 10. Las instrucciones de MATLAB para generar y dibujar la señal son: Con estas instrucciones se obtiene la figura 1.34:
n=0:9; Fm=1000; Fa=200; x=cos(2*pi*Fa*n/Fm); stem(n,x) xlabel('n') ylabel('x(n)')
Diez primeras muestras de una sinusoide analógica de frecuencia 200 Hz muestreada a 1KHz
Con el siguiente código podemos superponer ambas gráficas, donde, en lugar de emplear la instrucción hold on hemos utilizado la opción de plot para superponer múltiples gráficas (Figura 1.36): plot(n,x,'o',n,xx,'+') legend('Fa=200Hz','Fa=1200Hz') xlabel('n') ylabel('x(n)')
Figura 1.36. Superposición de las muestras de las figuras 1.34 y 1.35.
Se observa que los puntos de las dos s eñales coinciden. La razón que la segunda señal (la componente de 1.2kHz) no cumple el teorema de muestreo. Mediante la relación siguiente podemos determinar la frecuencia obtenida tras en muestreo.
±
[/2,/2] 200 1200
Siendo una frecuencia en el intervalo , y la frecuencia original. Si consideramos nuestros valores con frecuencia de muestren igual a 1 kHz, la primera señal no produce solapamiento y la segunda se apreciará como una frecuencia de 200 Hz (considerando k = 1).
Podemos ver el efecto del solapamiento en el dominio temporal si superponemos las dos señales continuas. Lo manera de simular estas señales es considerar un período de muestren "muy pequeño" 3. Es una aproximación pero, a nivel gráfico, es bastante ilustrativa.
El siguiente programa muestra este proceso:
n=0:9; t=0:0.01:9; Fa1=200; Fa2=1200; Fs=1000; xt1=cos(2*pi*Fa1*t/Fs);
%Señal continua Fa1=200Hz
xt2=cos(2*pi*Fa2*t/Fs);
%Señal continua Fa2=1200Hz
x1=cos(2*pi*Fa1*n/Fs);
%Señal discreta Fa1=200Hz
x2=cos(2*pi*Fa2*n/Fs);
%Señal discreta Fa2=1200Hz
plot(t,xt1,’k-‘,t,xt2,’k:’,n,x1,’ko’,n,x2,’k+’) xlabel(‘n’)
La gráfica obtenida se muestra en la Figura 1.37, en la que se aprecia claramente que para la señal de 1200 Hz no llegamos a tener al menos dos puntos por periodo produciéndose aliasing .
Superposición de las señales continuas de 200 Hz y 1200 Hz, y los 10 primeros valores obtenidos cuando se muestrean a 1 kHz.
Sabemos que una señal continua periódica puede escribirse como una suma ponderada de exponenciales complejas, esto es fácil de ver si consideramos señales sinusoidales, ya que la fórmula de Euler nos permite escribir seno y coseno como suma de exponenciales complejas, cada una de ellas con una amplitud mitad de la que tiene la señal original. La representación de la contribución de cada sinusoide constituye el espectro de la señal. Se puede hacer un razonamiento similar para señales discretas. Si bien, en temas posteriores se analizará con todo detalle el espectro de una señal discreta y cómo calcularlo, vamos a considerar que la instrucción fft de MATLAB nos permite representar el espectro de una señal discreta.
cosΩ Ω
La instrucción fft es una de las más utilizadas al estudiar procesamiento digital de señales con MATLAB. Esta operación descompone la señal como una serie ponderada de exponenciales complejas.
,0,1,…, Donde N es el número de muestras consideradas. Tenemos que muestrear durante un segundo con un periodo de muestreo de 1ms lo que supone que tenemos que tomar 1000 muestras. El programa en MATLAB que implementa lo que nos pide es:
N=1000; n=0:N-1; fa=100; fm=1000; x=cos(2*pi*fa*n/fm); plot(-N/2:N/2-1,abs(fftshift(fft(x)))); xlabel('Frecuencia (Hz)')
Dado que el número de puntos utilizado para la fft es de 1000 y la frecuencia de muestreo también es 1000, cada punto de la fft obtenido se corresponderá con un armónico de 1 Hz. Sabemos que cuando muestreamos con una frecuencia de 1000Hz, las frecuencias analógicas que verifican el teorema del muestreo se encuentran en el intervalo
– , . Para desplazar el resultado
de la FFT, de manera que la frecuencia de continua se encuentre en el centro, hemos empleado la función fftshift. El resultado son dos picos, a las frecuencias de 100 Hz (suma de 2 exponenciales complejas). La grafica obtenida se muestra en la figura 1.38.
espectro de la señal obtenido al muestrear con una frecuencia de 1000Hz
El siguiente código me permite calcular las secuencias y representar el espectro de la suma. En lugar de utilizar un bucle para calcular cada una de las secuencias hemos utilizado las propiedades de
MATLAB para trabajar con matrices de datos y la función sum que al ser aplicada sobre una matriz suma sus elementos por columnas. N=1000; n=0:N-1; fa=[100,200,600,2100];%tenemos un vector de frecuencias fm=1000; x=cos(2*pi*fa*n/fm); %calculamos todas las sinusoides x=sum(x); %sumamos las sinusoides plot(-N/2:N/2-1,abs(fftshift(fft(x)))); xlabel('frecuencia')
La grafica obtenida se muestra en la figura. Interpretemos esta grafica. Las frecuencias analógicas de 600hz y 2100hz no verifican el teorema de muestreo por lo que aplicando la ecuación obtenemos que las frecuencias aparentes correspondientes son:
600ℎ → 400ℎ 2100ℎ → 100ℎ Independientemente de que se trate de frecuencias positivas o negativas, cada una de estas señales esta representada en el espectro por dos picos. Por lo que observamos picos en frecuencias 100,200 y 400, sin embargo la amplitud para frecuencia 100 es el doble. Esto es debido a que para esta frecuencia contribuyen las frecuencias analógicas de 100 hz y 2100hz, que por efecto del aliasing se corresponden con la misma frecuencia aparente.
Espectro de la señal suma de cuatro sinusoides
Sabemos que una señal cuadrada analógica está formada por una suma infinita de armónicos impares de la frecuencia fundamental. La amplitud de dichos armónicos decrece a medida que aumenta la frecuencia del mismo.
Nuestra señal contendrá armónicos a las frecuencias: 150, 450, 750, 1050, 1350, 1650, 1950 Hz,… Como la frecuencia de muestreo es de 1 KHz para que no se produzca aliasing, las frecuencias analógicas deberán estar comprendidas en el intervalo [- 500,…,500Hz]. En nuestra señal cuadrada esto no se verifica a partir de la frecuencia de 750 Hz. Veamos cuales serán las frecuencias aparentes obtenidas por cada uno de estos armónicos. Frecuencia original
Frecuencia aparente
150 Hz
150 Hz, No produce aliasing
450 Hz
450 Hz, No produce aliasing
750 Hz
-250 Hz
1050 Hz
50 Hz
1350 Hz
350 Hz
1650 Hz
-450 Hz
1950 Hz
-50 Hz Representación de las frecuencias original y aparente
El siguiente código nos permite ilustrar gráficamente este resultado: N=1000; n=0:N-1; f=150; fm=1000; x=square(2*pi*f*n/fm); subplot (211) stem(n(1:50),x(1:50)) xlabel('n') ylabel('x(n)') title('(a)') subplot(212) plot(-N/2:N/2-1,abs(fftshift(fft(x)))); xlabel('Frecuencia')
title('(b)')
En la figura 1.41 se aprecian componentes que, en principio, no deberían aparecer. Entre ellas destacan, por su valor, las componentes de 50 y 250 Hz resultantes del aliasing como hemos comentado anteriormente:
(a) Primeras muestras de la señal cuadrada. (b) Espectro de la señal cuadrada de este apartado.