Vous êtes sur la page 1sur 21

Alumno: Luis Brian Alvarez Ponce Curso: Procesamiento Digital de Seales Practicas 01 A

III. ACTIVIDADES

Para los ejercicios siguientes: Indicar los comandos de MatLab a utilizar Consignar las tabulaciones y las grficas obtenidas para las funciones construidas Grficos Bsicos 2D 1. Construir la grfica siguiente
x = [1 3 0.5 2.5 2]; y = [0 1 2 3 4]; plot(x,y)

4 3.5 3 2.5 2 1.5 1 0.5 0 0.5

1.5

2.5

2. Cambiar el comando plot por el comando stem, que sucedi con la grafica? Cuando usamos plot (x,y) la figura es:

4 3.5 3 2.5 2 1.5 1 0.5 0 0.5

1.5

2.5

Al usar plot es porque estamos indicando una seal continua.


4 3.5 3 2.5 2 1.5 1 0.5 0 0.5 1 1.5 2 2.5 3

Al usar stem estamos indicado un muestreo es por esto que la figura cambia el resultado es este:

3.

Colquele ttulo y nombre a los ejes de la grfica, usando title, ylabel, xlabel

En Plot: title('Usando Plot') xlabel('t imagen 1') ylabel('f(t)')

Usando Plot 4 3.5 3 2.5


f(t)

2 1.5 1 0.5 0 0.5

1.5 t Imagen 1

2.5

En Stem: title('Usando Stem') xlabel('t imagen 2') ylabel('f(n)')

Usando Stem 4 3.5 3 2.5

f(n)

2 1.5 1 0.5 0 0.5

1.5 t imagen 2

2.5

Impulso unitario 4. Usando el editor de MatLab crear la funcin, comente cada lnea
function[x,n]=impseq(n0,n1,n2) %Generacion x(n) = delta(n-n0); n1<=n<=n2 %[x,n]=impseq(n0,n1,n2) n=[n1:n2]; x=[(n-n0)==0]; stem(n,x);

function[x,n]=impseq(n0,n1,n2) % tipo de funcin y cantidad de parametros %Generacion x(n) = delta(n-n0); n1<=n<=n2 %condiciones %[x,n]=impseq(n0,n1,n2) n=[n1:n2]; % limites x=[(n-n0)==0]; %si es uno n=0 en caso contrario n no es igual a 0 stem(n,x); %graficar en muestreo

5. Utiliza la funcin para genera un impulso en n=6 visualizando entre 0 y 8 el nmero de muestras >> n=[0:8]; >> x=[(n-6)==0]; stem(n,x);
impseq 1 0.9 0.8 0.7 0.6

f(n)

0.5 0.4 0.3 0.2 0.1 0

4 t imagen 3

6. Agregar el comando grid on. >> n=[0:8]; >> x=[(n-6)==0];stem(n,x); >> grid on

impseq 1 0.9 0.8 0.7 0.6

f(n)

0.5 0.4 0.3 0.2 0.1 0

4 t imagen 4

7. Modifique la funcin para darle al pulso una amplitud A, donde A sera el cuarto parmetro de entrada
function[x,n]=impseq(n0,n1,n2,A) % tipo de funcin y cantidad de parametros %Generacion x(n) = delta(n-n0); n1<=n<=n2 %condiciones %[x,n]=impseq(n0,n1,n2) n=[n1:n2]; % limites x=[(n-n0)==0]; %si es uno n=0 en caso contrario n no es igual a 0 x=(x*A); %agregando un cuarto parametro stem(n,x); %graficar en muestreo

8. Repita 5 considerando un pulso de amplitud -4 en n=5 visto de -5 a 15 >> n=[-5:15]; >> x=[(n-5)==0]; >> x=(x*-4); >> stem(n,x)

Agregando A 0 -0.5 -1 -1.5

f(n)

-2 -2.5 -3 -3.5 -4 -5

5 t imagen 5

10

15

9. Modifique las propiedades del grfico en trminos de colores y smbolo (genere al menos tres variantes.

>>stem(n,x,'+g')
colores y smbolos 0 -0.5 -1 -1.5

f(n)

-2 -2.5 -3 -3.5

-4 -5

5 t imagen 6

10

15

>> stem(n,x,'oy')
colores y simbolos 0

-0.5

-1

-1.5

f(n)

-2

-2.5

-3

-3.5

-4 -5

5 t imagen 7

10

15

>> stem(n,x,':r')

colores y simbolos 0

-0.5

-1

-1.5

f(n)

-2

-2.5

-3

-3.5

-4 -5

5 t imagen 8

10

15

10. Agregar leyenda al grfico usando el comnado legend

>> stem(n,x,'+g') >> legent


colores y simbolos 0 data1 -0.5 -1 -1.5

f (n)

-2 -2.5 -3 -3.5 -4 -5

5 t imagen 6

10

15

>> stem(n,x,'oy') >> legend

colores y simbolos 0 data1 -0.5 -1 -1.5

f (n)

-2 -2.5 -3 -3.5 -4 -5

5 t imagen 7

10

15

>> stem(n,x,':r') >> legend

colores y simbolos 0 data1 -0.5 -1 -1.5

f (n)

-2 -2.5 -3 -3.5 -4 -5

5 t imagen 8

10

15

Escaln unitario 11. Usando el editor de MatLab crear la funcin, comente cada lnea

function[x,n]=stepseq(n0,n1,n2) %Generacion x(n) = u(n-n0); n1<=n<=n2 %[x,n]=stepseq(n0,n1,n2) n=[n1:n2]; x=[(n-n0)>=0]; stem(n,x);

function[x,n]=stepseq(n0,n1,n2) % tipo de funcin y cantidad de parametros %Generacion x(n) = u(n-n0); n1<=n<=n2 %condiciones %[x,n]=stepseq(n0,n1,n2) n=[n1:n2]; x=[(n-n0)>=0]; %si es uno n>=0 en caso contrario n< 0 stem(n,x); %graficar en muestreo

12. Utilice la funcin para genera un escaln a partir de n=5 visualizando entre -2 y 10 el nmero de muestras, colocar los nombres y leyendas respectivas >> n=[-2:10]; >> x=[(n-5)>=0]; >> stem(n,x,':*r'); >> title('Escaln unitario'); >> xlabel('t imagen 9'); >> ylabel('f(n)') >> legend muestreo
Escaln unitario 1 muestreo 0.9 0.8 0.7 0.6

f(n)

0.5 0.4 0.3 0.2 0.1 0 -2

4 t imagen 9

10

13. Modifique la funcin para darle al escaln una amplitud A, donde A sera el cuarto parmetro de entrada
function[x,n]=stepseq(n0,n1,n2,A) % tipo de funcin y cantidad de parametros %Generacion x(n) = u(n-n0); n1<=n<=n2 %condiciones %[x,n]=stepseq(n0,n1,n2) n=[n1:n2]; x=[(n-n0)>=0]; %si es uno n>=0 en caso contrario n< 0 x=(x*A); %agregando un cuarto parametro stem(n,x); %graficar en muestreo

14. Repita 12 para generar un escaln de amplitud -2 a partir de n=4 visualizando muestras entre -2 y 15 >> n=[-2:15]; >> x=[(n-4)>=0]; >> x=(x*-2); >> stem(n,x,':*r') >> title('Escaln unitario add A'); >> xlabel('t imagen 9'); ylabel('f(n)') legend muestreo
Escaln unitario add A 0 muestreo -0.2 -0.4 -0.6 -0.8

f(n)

-1 -1.2 -1.4 -1.6 -1.8 -2 -2

6 8 t imagen 9

10

12

14

16

Exponencial Una secuencia exponencial responde a la expresin: x[n] = C z^n Donde C y z son, en general, nmeros complejos.

15. Construya las siguientes exponenciales


% Exponencial n1=0;n2=20; n=[n1:n2]; x=0.5.^n; stem(n,x);

>> n=[0:20]; >> x=0.5.^n; >> stem(n,x,':*r') title('Exponencial'); xlabel('t imagen 10'); ylabel('f(n)') legend muestreo
Exponencial 1 muestreo 0.9 0.8 0.7 0.6

f(n)

0.5 0.4 0.3 0.2 0.1 0

10 12 t imagen 10

14

16

18

20

% Exponencial n = 0:0.1:10; x=0.5.^n; stem(n,x);

>> n=[0:0.1:10]; >> x=0.5.^n; >> stem(n,x,':*r') >> title('Exponencial add A'); >> xlabel('t imagen 11'); ylabel('f(n)') legend muestreo

Exponencial add A 1 muestreo 0.9 0.8 0.7 0.6

f(n)

0.5 0.4 0.3 0.2 0.1 0

5 6 t imagen 11

10

El comando n = 0:0.1:10; define el vector con componentes de rango de 0 a 10 en pasos de 0.1; La funcin x = 0.9.^n; define un vector con componentes 0.9.^(0.1), 0.9.^(0.2), 0.9.^(0.3), etc. >> n=[0:0.1:10]; >> x = 0.9.^n; >> stem(n,x,':*r') title('Exponencial add A');xlabel('t imagen 12'); >> ylabel('f(n)') legend muestreo
Exponencial add A 1 muestreo 0.9 0.8 0.7 0.6

f(n)

0.5 0.4 0.3 0.2 0.1 0

5 6 t imagen 12

10

% Exponencial n = 0:20; x=5.^n; stem(n,x);

>> n = 0:20; >> x=5.^n >> stem(n,x,':*r') title('Exponencial');xlabel('t imagen 13'); >> ylabel('f(n)') legend muestreo >> grid on
x 10
13

Exponencial muestreo

10 9 8 7 6

f(n)

5 4 3 2 1 0

10 12 t imagen 13

14

16

18

20

%Exponencial Compleja n1=0;n2=10; n=[n1:n2]; x=exp((2+3j)*n); stem(n,x);

>> n=[0:10]; x=exp((2+3j)*n); stem(n,x); stem(n,x,':*r') title('Exponencial');xlabel('t imagen 14'); ylabel('f(n)') legend muestreo grid on

8 7 6 5 4

x 10

Exponencial muestreo

f(n)

3 2 1 0 -1 -2

5 6 t imagen 14

10

Uso del comando subplot El comando subplot nos permite desplegar en pantalla varias grficas. subplot(m,n,a) 'm' y 'n' son una matriz que representa las cantidades de grficas que se van desplegar; 'a' indicara el lugar que ocupara la grfica en el subplot. 16. Crear un programa en matlab donde grafique solo la parte real y la parte imaginaria por separado; usando subplot, de cualquier exponencial compleja
function[x,n]=expcompp(n0,n1,n2) n=[n1:n0:n2]; x=exp((2+(3*i))*n); [x,n]=expcompp(1,0,10) subplot(1,2,1) stem(n,real(x)); xlabel('Muestreo') ylabel('Amplitud') title('Parte real') subplot(1,2,2) stem(n,imag(x)); xlabel('Muestreo') ylabel('Amplitud') title('Parte imaginaria')

x 10

Parte real 1 0 -1

x 10

Parte imaginaria

Amplitud

Amplitud
0 2 4 6 Muestreo
Parte imaginaria

-2 -3

-4 -5

-2

10

4 6 Muestreo

1 0 -1

x 10

Amplitud
8 10

-2 -3 -4 -5

4 6 Muestreo

10

Seal senoidal 17. Graficar la siguiente seal senoidal


%Seal Senoidal n1=0;n2=60; n=[n1:n2]; x=2*sin(0.2*pi*n+pi/5); stem(n,x);

n=[0:60]; x=2*sin(0.2*pi*n+pi/5); stem(n,x); stem(n,x,':*r') title('Senoidal');xlabel('t imagen 17'); ylabel('f(n)') legend muestreo grid on
Senoidal 2 muestreo 1.5 1 0.5

f(n)

0 -0.5 -1 -1.5 -2

10

20

30 t imagen 17

40

50

60

18. Graficar la siguiente seal senoidal, observe que la suma tambin es peridica
%Seal Senoidal n1=0;n2=120; n=[n1:n2]; x=2*cos(0.2*pi*n+pi/5)+sin(0.5*pi*n); stem(n,x);

n=[0:120]; x=2*cos(0.2*pi*n+pi/5)+sin(0.5*pi*n); stem(n,x); stem(n,x,':*r') title('Senoidal');xlabel('t imagen 1'); ylabel('f(n)') legend muestreo grid on

Senoidal 3 muestreo 2

f(n)

-1

-2

-3

20

40

60 t imagen 1

80

100

120

CUESTIONARIO FINAL 1. Crear un programa en matlab donde se grafiquen las siguientes ondas: (use subplot)
cos(2n/16) cos(2n2/16) cos(2n4/16) cos(2n8/16) cos(2n12/16) n1=0;n2=60; n=[n1:n2]; x=cos(2*pi*n/16); subplot(5,1,1) stem(n,x,':*r') xlabel('Muestreo') ylabel('Amplitud') title('Funcion coseno') legend muestreo grid on x=cos(2*pi*2*n/16); subplot(5,1,2) stem(n,x,':*r') xlabel('Muestreo') ylabel('Amplitud') title('Funcion coseno') legend muestreo grid on x=cos(2*pi*4*n/16); subplot(5,1,3) stem(n,x,':*r') xlabel('Muestreo') ylabel('Amplitud') title('Funcion coseno') legend muestreo

grid on x=cos(2*pi*8*n/16); subplot(5,1,4) stem(n,x,':*r') xlabel('Muestreo') ylabel('Amplitud') title('Funcion coseno') legend muestreo grid on x=cos(2*pi*12*n/16); subplot(5,1,5) stem(n,x,':*r') xlabel('Muestreo') ylabel('Amplitud') title('Funcion coseno') legend muestreo grid on

Funcion coseno

Amplitud

1 0 -1 0 10 20 30 Muestreo Funcion coseno 40 50 muestreo 60

Amplitud

1 0 -1 0 10 20 30 Muestreo Funcion coseno 40 50 muestreo 60

Amplitud

1 0 -1 0 10 20 30 Muestreo Funcion coseno 40 50 muestreo 60

Amplitud

1 0 -1 0 10 20 30 Muestreo Funcion coseno 40 50 muestreo 60

Amplitud

1 0 -1 0 10 20 30 Muestreo 40 50

muestreo

60

2. Forme y grafique el muestreo de las siguientes seales usando una razn de muestreo de l0 Hz (10 muestras por segundo). Incluya las graficas en su reporte: a. y1 = cos(6t);

1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1

10

b. y2 = 3exp(-4t)*cos(5t);

c. sume un ruido escalado a 0.2 en y1. (use la funcin randn, y escriba help randn si no sabe cmo usarla).
t=[0:10]; r = cos(6*t)+ 0.2.*randn(size(t)); stem(t,r,'k');

CONCLUSIONES Emita al menos cinco conclusiones en torno al manejo de seales en MatLab