Sie sind auf Seite 1von 9

Practica N 01: Analisis de Seales y

Sistemas
Ing. Armando Alberto Cajahuaringa Camaco
Facultad de Ingeniera Elctrica y Electrnica, Universidad Nacional de Ingeniera
Lima, Per 2017-I

Alumno: Einstein Vladimir Segundo Jimenez

1. Funciones Complejas de Tiempo


Considere la funcin compleja de
tiempo () = (1 + )2 para
< < .
a) Usan Usando Matlab hallar las
partes real e imaginaria de x(t) y
grafquelos. Trate de graficar
directamente x(t) en Matlab;
Qu obtienes? Te advierte
Matlab? Tiene sentido?

Al intentar graficar la funcin


directa mente Matlab avierte
Grafica de la Funcin () = (1 + )2
Warning: Imaginary parts of
complex X and/or Y arguments ()
b) Calcule la derivada () =
ignored,Matlab ignora las
partes real e imaginarias. y grafique sus partes real e
imaginaria; cmo se relacionan
CODIGO EN MATLAB estas con las partes real e
%% Grafica de la Funcion DE t= imaginaria de x(t)?
(-10,10)
t = -10:0.01:10; () = 2(1 + )
x = (1+j*t).^2;
%creando matrices de ceros para
%parte Real e Imaginaria CODIGO EN MATLAB
Rx=zeros(length(x)); %% Grafica de la y(t)=2(1+jt)j
Ix=zeros(length(x)); t=-10:0.01:10;
for k=1:length(x) y=2*(1+j*t)*j;
Rx(k)=real(x(k)); %creando matrices de ceros para
Ix(k)=imag(x(k)); %parte Real e Imaginaria
end Ry=zeros(length(y));
plot(Rx,Ix); Iy=zeros(length(y));
grid on; for k=1:length(y)
title('Grafica de x=(1+jt)^2'); Ry(k)=real(y(k));
xlabel('Parte Real'); Iy(k)=imag(y(k));
ylabel('Parte Imaginaria'); end
plot(Ry,Iy,'r');
grid on;
title('Grafica de
y(t)=2j(1+jt)');
xlabel('Parte Real');
ylabel('Parte Imaginaria');
axis ([-20 20 0 3]) 1 1 1 1
( + ) =
0 0 0 0
1 1 1
=
0 0 0
1 1
2
= () =
0 0 3

2. Las operaciones de reflexin y de


desplazamiento del tiempo se pueden
conmutar? Es decir, los dos
diagramas de bloques de la figura P2
proporcionan seales idnticas, es
Grafica de la Funcin () = 2(1 + )
decir, es y(t) = z(t)? Para
c) Calcule la integral proporcionar una respuesta a esto,
1 considere que la seal x(t) mostrada
() en la Figura P2 es la entrada a los dos
0
diagramas de bloques. Encuentre y(t)
y z(t), trace y compare estas grficas.
CODIGO EN MATLAB Cul es su conclusin? Explique.
%% integral x(t)
syms t
%separando la parte real e de x(t) a y(t):
imaginaria de la integral
R1=1-t^2;
I1=2*t;
%int(funcion,parametro,limite
Inferior,limite Superior)
RX=int(R1,t,0,1);
IX=int(I1,t,0,1);
F=RX+j*IX;

CODIGO EN MATLAB
%% Graficas
d) Seria verdadera la siguiente t=0:0.001:1;
afirmacin? (recuerde que * x=t;
x1=-t;
indica la conjugada compleja). x2=2-t;
figure(1);
plot(t,x)
1 1 axis ([-0.5 1.5 -0.5 1.5])
( ()) = () grid on;
0 0 figure(2);
1
2 plot(-t,x,'r')
( ()) = axis ([-1.5 0.5 -0.5 1.5])
0 3 grid on;
Sea x(t): figure(3);
= + plot(2-t,x,'g')
axis ([0.5 2.5 -0.5 1.5])
= grid on;
1 1
( ()) = ( + )
0 0
axis ([-3.5 -1.5 -0.5 1.5])
grid on;

Grafica de x(t)

Grafica de x(t)

Grafica de v(t)

Grafica de w(t)

Grafica de y(t)

de x(t) a z(t): Grafica de z(t)

CODIGO EN MATLAB
%% Graficas
Podemos observar la las grafiacas para y(t) y
t=0:0.001:1; z(y) son diferentes
x=t;
figure(1);
plot(t,x)
axis ([-0.5 1.5 -0.5 1.5])
grid on;
figure(2);
plot(t+2,x,'r')
axis ([1.5 3.5 -0.5 1.5])
grid on;
figure(3);
plot(-2-t,x,'g')
3. Completar la tabla
a) Considere las seales:
a(t)=34cos(200t),
b(t)=99sin(150t) y
c(t)=rect(t); complete la
tabla siguiente usando
Matlab.

CODIGO EN MATLAB
%% Grafiacos a(t) y b(t)
t=-0.04:0.00001:0.04; Grafica de a(t)=34cos(200t)
t1=-2:0.01:2;
a=34*cos(200*pi*t);
b=99*sin(150*pi*t);
d=a+b;
f=a.*b;
%Grafico de C mediante funciones
singulares
c=heaviside(t1+0.5)-
heaviside(t1-0.5);
figure(1);
plot(t,a);
grid on;
title('Grafica de
a=34cos(200*pi*t)'); Grafica de b(t)=99*sin(150t)
xlabel('tiempo(t)');
ylabel('Amplitud');
figure(2);
plot(t,b);
grid on;
title('Grafica de
b=99*sin(150*pi*t');
xlabel('tiempo(t)');
ylabel('Amplitud');
figure(3)
plot(t1,c);
grid on;
title('Grafica de c=rect(t)');
xlabel('tiempo(t)');
ylabel('Amplitud');
Grafica de c(t)=rect(t)
axis([-2 2 -0.5 1.5])
figure(4)
plot(t,d);
grid on;
title('Grafica de a(t)+b(t)');
xlabel('tiempo(t)');
ylabel('Amplitud');
figure(5)
plot(t,f);
grid on;
title('Grafica de a(t)xb(t)');
xlabel('tiempo(t)');
ylabel('Amplitud');

Grafica de a(t)+b(t)
Grafica de a(t)xb(t)

CODIGO EN MATLAB

%% Calculo de la Potencia o
Energia
%%Periodo de las funciones
a,b,a+b y a*b
T1=0.01;
T2=1/75;
T3=0.04;
syms t
a=34*cos(200*pi*t);
Impar o par o Seal de energa o de Periodo
b=99*sin(150*pi*t); ninguno
Valor en t=0
potencia o ninguna? (seg)
d=a+b; a(t) Par 34 Pa=0.578 0.01
f=a.*b; b(t) Impar 0 Pb=0.8712 0.0133
c=heaviside(t+0.5)-heaviside(t- c(t) Par 1 E=1
a(t)+b(t) Ninguna 34 Psuma=8.7556 0.04
0.5); a(t)xb(t) Impar 0 Pmultiplicacion=4531.9824 0.04
%%para las funciones de a,b,a+b
y a*b se calcula la potencia
Pa=(1/2*T1)*int((a)^2,t,-T1,T1) b) Usando de Matlab,
Pb=(1/2*T2)*int((b)^2,t,-T2,T2) dibuje las siguientes seales
Psuma=(1/2*T3)*int((d)^2,t,- usando funciones para a(t) y
T3,T3)
Pmultiplicacion=(1/2*T3)*int((f) c(t):
^2,-T3,T3) () = 5( 10) 5( + 10),
%%para la funcion rec se calcula
la energia
Ec=int(c,t,-1,1) () = 2 ( )
10

() = 2 ().

CODIGO EN MATLAB
%% Graficas parte b
t=-10:0.01:10;
t1=-0.01:0.00001:0.01;
a=34*cos(200*pi*t1);
c=heaviside(t+0.5)-heaviside(t-
0.5);
f=5*c;
g=-2*c;
h=a.^2;
subplot(3,1,1);
plot(t+10,f,'r',t-10,-f,'r');
title('F(t)=5c(t-10)5c(t+10)');
xlabel('tiempo (s)');
axis([-15 15 -6 6])
grid on;
subplot(3,1,2); () + +
plot(t/10,g,'r'); | |
axis([-0.5 0.5 -6 6]) () + () + +
title('G(t)=-2c(t/10)');
xlabel('tiempo (s)'); + +
grid on; | |
subplot(3,1,3); + +
plot(t1,h ,'r');
title('H(t)=a^2(t)'); ( ) +
xlabel('tiempo (s)'); | |
grid on; ( ) + ( )

|( ) + |

|( ) + ( )|

( ) +

( ) + ( )
( ) +

( ) + ( )


( ) +

Graficos de f(t),g(t) y h(t) ( ) + ( )
4. Sea la funcin de transferencia H(s) :
|()|
+ +
() = +
+ + + =
a) H(s) en variable compleja s de + +
Para la fase:
un sistema lineal e invariante
( ) +
en el tiempo. Para [0.01 () =
( ) + ( )
, 100 ] y = , () =
()|=, determinar las
expresiones analticas y ( ) + =
valores de
= ( )
|()| = |()|
{()} ( ) + ( ) =
Y () = ({()} ).

Los valores de () deben = ( )

mostrarse en grados
sexagesimales. () =

() =
|()| = |()| b) Dibujar, con eje horizontal de
frecuencias angular
+ + logartmico, las grficas de
| |
+ + + |()| y () superpuestas
en una misma grafica y con un
Sea s=jw eje vertical izquierdo para
|()| y un eje vertical
derecho para (). Para cada
grfica se debe aadir la CODIGO EN MATLAB
leyenda, las etiquetas de cada %% bode H(s)
N=[1 6 2];
eje y el ttulo de la grfica. Use D=[1 6 4 8];
funciones de Matlab para f=logspace(-2,7,200);
hallar los valores mximos y bode(N,D,f);
grid on;
mnimos de |()| y ().
Las grficas obtenidas se
denominan diagramas de
Bode, magnitud y fase, de la
respuesta en frecuencia de la
funcin de transferencia ().

CODIGO EN MATLAB
%% BODE GG
w=logspace(-2,7);
h=zeros(length(w));
o=zeros(length(w));
for k=1:length(w)
h(k)=(4- Diagrama de Bode Mediante la funcin bode(N,D,f)
4*w(k).^2+37*w(k).^4)/(64-
80*w(k).^2+28*w(k).^4+w(k).^6);
o(k)=atan((6*w(k))/(2- 5. Diodo Zener. Un diodo Zener es tal
w(k).^2 ))-atan((4*w(k)- que la salida correspondiente a una
w(k).^3)/(8-6*w(k).^2)); entrada vs(t) = cos(t) es una
end
H=10*log(h);
sinusoide recortada, como se
O=180*o/(2*pi); muestra en la figura P5 para unos
subplot(2,1,1); cuantos periodos.
%%grafica con x logaritmico
0.5 vs (t) > 0.5
semilogx(w,H);
title('H(s)'); () = { 0.5 vs (t) < 0.5
ylabel('Magnitud (dB)'); vs(t) de otra maner
xlabel('Frecuencia (Hz)') a) Use Matlab para generar las
grid on;
%%grafica con x logaritmico seales de entrada y salida en
subplot(2,1,2); una misma ventana grfica,
semilogx(w,O(:,1)); para 0 t 4, en pasos de
ylabel('Fase ()'); 0.001.
xlabel('Frecuencia (Hz)')
grid on;
CODIGO EN MATLAB

%% Grafica con el Diodo Zender


t=-2*pi:0.001:2*pi;
v=cos(pi*t);
subplot(2,1,1);
plot(t,v);
title('Seal V(t)');
ylabel('Magnutid de la
Entrada');
xlabel('Tiempo (s)');
grid on;
Diagrama de Bode Analticamente axis([-4 4 -1 1]);
%Comparamos los valores del
Para una mejor grafica usamos la funcion bode vector con un for
de matlab: for k=1:length(v);
%Fijamos el valor de v %Comparamos los valores del
maximo como 0.5 vector mediante for
if(v(k)>=0.5); %seal v1
v(k)=0.5; for k=1:length(v);
end %Fijamos el valor de v1
%Fijamos el valor de v maximo como 0.5
minimo como -0.5 if(v1(k)>=0.5);
if(v(k)<=-0.5); v1(k)=0.5;
v(k)=-0.5; end
end %Fijamos el valor de v1
end minimo como -0.5
subplot(2,1,2); if(v1(k)<=-0.5);
plot(t,v); v1(k)=-0.5;
title('Seal X(t)'); end
ylabel('Magnutid de la Salida'); end
xlabel('Tiempo (s)'); %seal v2
grid on; for k=1:length(v);
axis([-4 4 -1 1]); %Fijamos el valor de v2
maximo como 0.5
if(v2(k)>=0.5);
v2(k)=0.5;
end
%Fijamos el valor de v2
minimo como -0.5
if(v2(k)<=-0.5);
v2(k)=-0.5;
end
end
%seal v1+v2
for k=1:length(v);
%Fijamos el valor de v3
maximo como 0.5
Respuesta del sistema ante una entrada v=cos() if(v3(k)>=0.5);
v3(k)=0.5;
end
b) Es este sistema linear? %Fijamos el valor de v3
minimo como -0.5
Hacemos un cdigo que permita observar la if(v3(k)<=-0.5);
respuesta para 2 seales, su respuesta suma v3(k)=-0.5;
y la seal esperada. end
end
CODIGO EN MATLAB %Sumamos las respuestas por
%% Sistema Lineal separado
t=-2*pi:0.001:2*pi; v4=v2+v1;
v1=cos(pi*t); %Graficamos las respuestas
v2=sin(pi*t); subplot(2,3,2);
v3=v1+v2; plot(t,v1);
subplot(2,3,1); title('Respuesta ante v1');
plot(t,v1); ylabel('Magnutid');
title('Seal V1(t)'); xlabel('Tiempo (s)');
ylabel('Magnutid de V1'); grid on;
xlabel('Tiempo (s)'); axis([-4 4 -1 1]);
grid on; subplot(2,3,5);
axis([-4 4 -1 1]); plot(t,v2);
subplot(2,3,4); title('Respuesta ante v2 ');
plot(t,v2); ylabel('Magnutid');
title('Seal V2(t)'); xlabel('Tiempo (s)');
ylabel('Magnutid de v2'); grid on;
xlabel('Tiempo (s)'); axis([-4 4 -1 1]);
grid on; subplot(2,3,3);
axis([-4 4 -1 1]); plot(t,v3);
title('Respuesta suma'); v1(k)=0.5;
ylabel('Magnutid de la end
Respuesta'); %Fijamos el valor de v
xlabel('Tiempo (s)'); minimo como -0.5
grid on; if(v1(k)<=-0.5);
axis([-4 4 -2 2]); v1(k)=-0.5;
subplot(2,3,6); end
plot(t,v4); end
title('Respuesta suma for k=1:length(v2);
esperada'); %Fijamos el valor de v
ylabel('Magnutid Salida maximo como 0.5
esperada'); if(v2(k)>=0.5);
xlabel('Tiempo (s)'); v2(k)=0.5;
grid on; end
axis([-4 4 -2 2]); %Fijamos el valor de v
minimo como -0.5
if(v2(k)<=-0.5);
v2(k)=-0.5;
end
end
subplot(2,1,1)
plot(t,v1);
title('Respusta de Y1(t)');
ylabel('Magnutid');
xlabel('Tiempo (s)');
grid on;
axis([-4 4 -1 1]);
subplot(2,1,2)
%tiempo pi*(t+1)en la grafica 2
plot(t+1,v2,'r');
Grafica de del sistema ante una suma title('Respusta de Y2(t)');
ylabel('Magnutid');
Podemos observar que el sistema no es xlabel('Tiempo (s)');
grid on;
linea. axis([-4 4 -1 1]);
c) Es el sistema invariante en el
tiempo? Explique.

Para esto usaremos una seal cos(t).


Primero haremos un retardo de luego
pasara por el sistema y asi obtendremos una
seal Y1,luego haremos pasar la seal por
el sistema y luego daremos el retardo de
asi obtendremos una seal Y2.
Comparando Y1 y Y2 y resultan ser iguales
el sistema ser invariante en el tiempo.

CODIGO EN MATLAB
%% Invariante en el timepo Grafica de las Respuestas Y1 y Y2
t=-2*pi:0.001:2*pi;
v1=cos(pi*t+pi); Podemos observar que las respuestas Y1 y
v2=cos(pi*t);
Y2 son iguales por lo tanto el sistema es
%Comparamos los valores del
vector con un for invariante en el tiempo.
for k=1:length(v1);
%Fijamos el valor de v
maximo como 0.5
if(v1(k)>=0.5);

Das könnte Ihnen auch gefallen