Señales de tiempo continuo y discreto MATLAB

elagus123 47,047 views 21 slides Dec 02, 2015
Slide 1
Slide 1 of 21
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21

About This Presentation

Simulaciones de las señales Continuas y discretas en el tiempo. Mediante una función o código


Slide Content

1
TESE




Graficas en Matlab Sobre Manejo De
Señales:
 Tiempo continuo
 Tiempo discreto
NOMBRE DEL ALUMNO : Estrada Jose Agustin
Grupo: 1801
Asignatura: Procesamiento digital de señales
Profesor: Miguel Ángel Alvarado Cruz

2
TESE

Desarrollo:
De acuerdo a la teoría vista en clase se muestran las
siguientes formas de señales ocupando el programa Matlab.
Señales De Tiempo Continuo Y Tiempo Discreto
1. Señal en tiempo continuo
Función a graficar
x(t)=e
-0.1t
sin
�
�
??????
Datos insertados en Matlab
código
>> t=0:0.1:30;
>> x=exp(-0.1*t).*sin(2/3*t);
>> plot(t,x)
>> axis([0 30 -1 1]);
>> xlabel('time(sec)');
>> ylabel('x(t)');
Grafica de respuesta

3
TESE


2. Señales discretas
Datos insertados en Matlab
Código
>> n=-2:6;
>> x=[0 0 1 2 1 0 -1 0 0 ];
>> stem(n,x,'filled');
>>xlabel('n')
>>xlabel('x(n)')
Grafica de respuesta

4
TESE


3. Convolucion en tiempo discreto
Datos insertados en Matlab
Código
>> P=[0 ones(1,10) zeros(1,5)]
>> x=P;
>> v=P;
>> y=conv(x,v);
>> n=-2:25;
>> stem(n,y(1:length(n)),'filled')
Grafica en respuesta

5
TESE


4. Convolucion En Tiempo Discreto
Calculo De La Respuesta De Salida
Datos insertados en Matlab
Código
>> n=0:40;
>> x=sin(0.2*n);
>> h=sin(0.5*n);
>> y=conv(x,h);
>>stem(h,y(1:length(n)),'filled');
Grafica en respuesta

6
TESE


5. Dado:
x1=[2 6 9 -3 4 8]
x2=[7 8 4 3 2 1]
Calcular la Convolucion
Datos insertados en Matlab
Código
x1=[2 6 9 -3 4 8]
x2=[7 8 4 3 2 1]
x3=conv(x1,x2);
long_x3=length(x1)+length(x2)-1
stem(x3)
grid
Grafica en respuesta

7
TESE


6. Dado
f1(t)=6x
2

f2(t)=8 cos 2π x

con 0 < x <100
Calcular la Convolucion
Datos insertados en Matlab
Código
>> x=0:100;
>> y=(6*x.^2);
>> z=8*cos(2*pi*x);
>> c=conv(y,z);
>> stem(x,c(1:length(x)),'filled');
Grafica en respuesta

8
TESE


7. Serie De Fouirer

Teóricamente tenemos la expresión de:
Xn(t)=
&#3627409359;
&#3627409360;
+
&#3627409360;
??????

&#3627409359;
&#3627408420;
&#3627408423;
&#3627408423;=&#3627409359;&#3627408428;??????&#3627408423;(
&#3627408420;??????
&#3627409360;
)??????&#3627408424;&#3627408428;(&#3627408420;??????&#3627408429;), ∞<+<∞
Utilizando un numero de armónicos = 3, 20,50
Datos insertados en Matlab
Código
t=-3: 6/1000:3;
n=input('numero de armonicos=' );
a0=5;
wo=pi;
xn=a0*ones(1,length(t));
for k=1:2:n
xn=xn+2/k/pi*sin(k*pi/2)*cos(k*wo*t);
plot(t,xn);
end

Grafica en respuesta con 3 armónicos

9
TESE


Grafica en respuesta con 20 armónicos

Grafica en respuesta con 50 armónicos

10
TESE


8. Serie compleja de Fourier
Teóricamente tenemos la expresión de:
Xn(t)=∑ &#3627408420;∗??????
&#3627408419;&#3627408420;??????&#3627408424;&#3627408429;&#3627408423;
&#3627408420;=−&#3627408423;
Utilizando un numero de armónicos = 3, 20,50
Datos insertados en Matlab
Código
t=-3: 6/1000:3;
n=input('numero de armonicos=');
c0=0.5;
wo=pi;
xn=c0*ones(1,length(t));
for k=1:n
ck=1/k/pi*sin(k*pi/2);
c_k=ck;
xn=xn+ck*exp(j*k*wo*t)+c_k*exp( -j*k*wo*t);
stem(t,xn);
end

Grafica en respuesta con 3 armónicos

11
TESE


Grafica en respuesta con 20 armónicos

Grafica en respuesta con 50 armónicos

12
TESE


9. Generación De Una Señal Muestreada A 8khz
Teóricamente tenemos la expresión de:
X(t)= 2sin(&#3627409360;?????? &#3627409362;&#3627409358;&#3627409358;??????+
??????
&#3627409362;
)
Con frecuencia de muestreo de 8000
Datos insertados en Matlab
Código
>> fo=400;
>> a=2;
>> phi=pi/4;
>> fs=8000;
>> ts=1/fs;
>> t=-0.002:ts:0.002;
>> xt=a*sin(2*pi*fo*t+phi);
>> stem(t,xt);
Grafica en respuesta

13
TESE


Con Frecuencia De Muestreo De 20,000
Datos insertados en Matlab
Código
>> fo=400;
>> a=2;
>> phi=pi/4;
>> fs=20000;
>> ts=1/fs;
>> t=-0.002:ts:0.002;
>> xt=a*sin(2*pi*fo*t+phi);
>> stem(t,xt);
Grafica en respuesta

14
TESE


10. Señal De Diente De Sierra
Datos insertados en Matlab
Código
>> fo=400;
>> a=2;
>> fs=8000;
>> ts=1/fs;
>> t=-0.002:ts:0.002;
>> xt=sawtooth(2*pi*fo*t);
>> stem(t,xt)
>> hold on
>> plot(t,xt)
>> xlabel('tiempo(s)');
>> xlabel('x(t)');
Grafica en respuesta

15
TESE


11. Funcion sampling
Utilizando una frecuencia de 8000=fs
Datos insertados en Matlab
Código
>> fo=400;
>> a=2;
>> fs=8000;
>> ts=1/fs;
>> t=-0.003:ts:0.003;
>> xt=a*sinc(2*fo*t);
>> stem(t,xt)
Grafica en respuesta

16
TESE


Utilizando una frecuencia de 20,000= fs
Datos insertados en Matlab
Código
>> fo=400;
>> a=2;
>> fs=20000;
>> ts=1/fs;
>> t=-0.003:ts:0.003;
>> xt=a*sinc(2*fo*t);
>> stem(t,xt)
Grafica en respuesta

17
TESE


12. Graficar el muestreo de las siguientes señales:

F(t)=
4
3
????????????&#3627408480;2??????&#3627408481;
Datos insertados en Matlab
Código
>> fo=400;
a=4/3;
fs=200;
ts=1/fs;
t=-10:ts:10;
xt=a*cos(2*pi*t);
stem(t,xt)
>> grid
Grafica en respuesta

18
TESE


13. Graficar El Muestreo De La Siguiente Ecuación
F(t)= 9π??????
4????????????

Datos insertados en Matlab
Código
>> fo=400;
a=9;
fs=200;
ts=1/fs;
t=-10:ts:10;
xt=9*exp(4*pi*t);
stem(t,xt)
grid
Grafica en respuesta

19
TESE


14. Graficar El Muestreo De La Siguiente Ecuación

F (t)=9sin 4π t+3 cos 4π t
Datos insertados en Matlab
Código
>> fo=400;
a1=9;
a2=3;
fs=200;
ts=1/fs;
t=-1:ts:1;
xt=9*sin(4*pi*t)+(a2*cos(4*pi*t));
stem(t,xt)
grid
Grafica en respuesta

20
TESE


15. Mostrar Parte real y la parte imaginaria de la TDF de una señal
% TDF parte real e imaginaria
Datos insertados en Matlab
Código
n=0:15;
Xn=exp(j*n/3);
Xk=fft(Xn)
k=n;
subplot(221)
stem(k,real(Xk));
title('parte imaginaria de x(K)');
subplot(223)
stem(k,imag(Xk));
title('parte imaginaria de x(K)');
%RECUPERAR LA SEÑAL X(n)
Xn=ifft(Xk);
subplot(222)
stem(n,real(Xn));
title('parte real de Xn');
subplot(224)
stem(n,imag(Xn));
title('parte imaginaria de Xcn)')

Grafica en respuesta

21
TESE

16. Obtener la magnitud de fase de la TDF de la señal :
X(n)=sen (2πf1 t)+sen(2πf2 t)
Con f1= 15Hz y f2= 40Hz
Datos insertados en Matlab
Código
% Magnitud y Fase
t=0:0.1:9.99;
f1=15;f2=40;
xn=sin(2*pi*f1*t)+sin(2*pi*f2*t);
xk=fft(xn);
mag=abs(xk);
f=0:0.1:9.99;
subplot(121)
plot(f,mag)
title('magnitud de x(k)');
set(gca,'xtick',[15 40 60 85])
%magnitud y fase
%clear all
subplot(122)

fase=unwrap(angle(xk));
plot(f,fase*180/pi)
title('fase de x(k)');
set(gca,'xtick',[15 40 60 85])

Grafica en respuesta
Tags