Вы находитесь на странице: 1из 25

INFORME DE ANALISIS SISTEMAS Y

SEALES

a) Implementacin de las funciones en matlab:


Grafica X1:

Grafica X2:

Grafica X:

Cdigo :

function funcionx1(dx)
%funcion x1
%dx=input('variacion:
');
t=-5:dx:5;
y=t+exp(3*t);
y1=y.*(t>=0 & t<=2);
subplot(2,2,1)
plot(t,y1)
%funcion x2
%dx=input('variacion:
');
x=-5;
g1=-5:dx:5;
r=0;
while(x<5 )
x=x+dx;
r=r+1;

if (x<=-2)
g=x+2;
elseif ((x>-2) &&
(x<2))
g=0;
elseif x>=2
g=x-2;
end
g1(r)=g;
subplot(2,2,2)
plot(x,g)
hold on;
end
subplot(2,2,3)
z=y1+g1;
plot(t,z)
opfunc(t,z,-4,-1);

b) Mostrar el cdigo de la funcin que realiza la transformacin :

function opfunc(x,y,a,b)
v=(x-b)/a;
subplot(2,2,4)
plot(v,y);
La funcin mostrada permite transformar la funcin obtenida no solo a () = (4 1) sino
que a cualquier forma lineal del argumento + , esta funcin puede incluirse en el script
como se mostr en el script con solo llamar a la funcin e indicar sus argumentos.

c) Mostrar la grfica de la funcin :

Se observa que la funcin ha sido contrada, reflejada sobre el eje de ordenadas y desplazada
hacia la derecha, todo eso a los intervalos del domino mientras que el rango no ha sido
afectado ya que la funcin solo se ha sido afectada a la variable independiente

a. Usando Matlab determine parmetros de las funciones:


1 = (/3 ) + (2 /5 ) + (2 + /6) + (10 + /3)
Resultado en Matlab:

Grafica de la funcion periodica:

= ( ) + ( + ) ( ) + ( )
Resultado en Matlab:

Grafica de la parte real :

Grafica de la parte imaginaria :

= ( ) + (() )

Resultado en Matlab:

Grafica de la no periodica:

b. Analizaremos analticamente una a un ala seales:


1.
Periodicidad:
El anlisis resulta ms simple que trabajarlo con matlab, Ya que por teora de funciones
conocemos que:
Si la funcin est formada por combinacin de senos y cosenos, la funcin ser analtica si y
solo si la relacin de coeficientes de la variable independiente es una relacin racional caso
contrario la funcin no es peridica:
1 = (/3 ) + (2 /5 ) + (2 + /6) + (10 + /3)
2 = (2 ) + (10 + 2) (2 ) + ( )
3 = (2 ) + ((2) )
De las funciones se observa que:
La nica que cumple tal condicin es y1 el resto no son peridicas.
2.
Energa, potencias y Vrms de la seal peridica:
La nica seal peridica es la funcin y1:

= (1) 2

Pero de la teora conocemos que las funciones peridicas poseen energa infinita para eso se
define la potencia:

1 2
= lim (1) 2

2

(1) 2 = (

2
5

) + 2 (10 + ) + 2 (2 + ))
3
6
2

+ ( ) + ( ) (2 (10 + ) + 2 (2 + ))
3
3
3
6
2

2
+ (10 + ) + 2 (2 + ) (10 + ) + (2 + )
3
6
3
6
) + (

2
5

) (2 (

Integrando obtenemos que:

( 1) 2

2
2 2
2

) + (
)(2 ( ) + 2 (10 + ) + 2 (2 + ))
= ( (
5
5
3
3
6

2
+ ( ) + ( )(2 (10 + ) + 2 (2 + )) + (10 + )
3
3
3
6
3

2
+ 2 (2 + ) (10 + ) + (2 + ) )
6
3
6

1
(2 + ( ))

Siendo las funciones sinusoidales de la forma:


( )
Al aplicarle el lmite tendramos:
1

lim ( ( )

Aplicando teoremasde integral obtenemos que esta forma de limites es nula al final obtenemos
que:
=

(2 + ( ) )

1
(2 )

= 2
=

De la integral anterior podemos obtener el valor cuadrtico medio de la siguiente forma:

1 2
= (1) 2

2

Tal que T sea el periodo de la funcin peridica:


=
2 =

1 15
(1) 2
30 15

1
(2 + ( ) )

= 2

Comprobando as que los valores obtenidos en matlab son correctos.


c.

Cdigo:

%%
x=-100:0.01:100;
y=input('ingrese la funcion : ');
y2=round(y*10000);
l=1;
s=0;
m=min(y);
n=max(y);
P=1;
y1=[];
x1=[];
v=linspace(m,n,500);
v1=round(v*10000);
for r = 1:length(y2)
l=1;

while l<length(v1)
P = y2(r)== v1(l);
l=l+1;
if y2(r)==y2(r+1)
P=not(P);
elseif P
aux1=y1;
y1=[aux1 y2(r)];
aux2=x1;
x1=[aux2 x(r)];
end
end
if(r==length(y2)-1)
break;
end
end
a=1;
b=1;
while (b < (length(y1)-3))
b=b+1;
P=y1(a)==y1(b);
if P
for r = 1:b-a
F = y1(a+r)==y1(b+r);
P = P && F;
if not(P)
break;
end
end
end
if (P)
break;
end
end
if (P)
c=x1(b)-x1(a);
end
if (not(P))
fprintf('La funcion no es periodica \n');
else

fprintf('La funcion es periodica \n');


fprintf('el periodo: %2.3f \n',c);
fprintf('el fecuencia en rad/s: %.3f
\n',2*pi/c);
end
if(P)
syms t
syms P
f=input('ingrese la seal periodica: ');
Energia=int(f^2,t,-inf,inf);
Pot=limit(1/P*int(f^2,t,-P/2,P/2),P,inf);
Potencia=double(Pot);
Vr=sqrt(1/(c)*int(f^2,t,-c/2,c/2));
Vrms=double(Vr);
fprintf('Si es una seal periodica tiene
energia infinita \n');
fprintf('Su potencia es : %.3f \n',Potencia);
fprintf('Su valor eficaz : %.3f \n',Vrms);
plot(x,y)
axis([-6,6,m-5,n+5]);
elseif not(sum(imag(y)==0))
subplot(2,2,1)
plot(x,real(y))
axis([-6,6,-10,10]);
subplot(2,2,2)
plot(x,imag(y))
axis([-6,6,-10,10]);
elseif sum(imag(y)==0) && not(P)
plot(x,y);
axis([-6,6,m-5,n+5]);
end

a. La impedancia de entrada es una funcin compleja por decirlo as , siendo el

parmetro la grfica de la impedancia de entrada equivale a graficar la funcin de


manera paramtrica :
En 2-D observamos: (Grafica compleja de la impedancia)

En 3-D observamos: (Grafica (Zent ,))

b. La grfica de la impedancia en funcin de :


En 2-D no es factible observar las una grafica de este tipo , lo que es posible es onservar modulo de la

impedancia en funcion de :

Lamda 180 cm

Lamda 150 cm

La distancia entre maximos y minimos consecutivos en funcion de :

c. Calculo de mnimos y mximos consecutivos en funcin de :


Partimos de:
= 50[(100 50())/(50 100 () )]
2

|| = 50
2

|| = 50

2 + (tan() 2
1 + (2 tan ()2

3 cos(2) + 5
3 cos(2) + 5

Para determinar los valores mximos y mnimos de la funcin emplearemos desigualdades:


3 cos(2) + 5
10
= 1 +
3 cos(2) + 5
3 cos(2) + 5
Ahora recordamos la variacin del coseno y obtenemos que:
1 cos(2) 1
5
10

5
4 3 cos(2) + 5
1
10
1 +
4
4
3 cos(2) + 5
1
3 cos(2) + 5

4
4 3 cos(2) + 5
1 2 3 cos(2) + 5

2
2
3 cos(2) + 5
25 || 100

Obtenemos las variaciones del mdulo de la impedancia lo cual se comprueba con los
resultados de las grficas obtenidas con Matlab.
25 || 100
Para determinar la distancia entre mnimos y mximo consecutivos solo tenemos que resolver
las siguientes ecuaciones :
2

50

3 cos(2) + 5
= 25
3 cos(2) + 5

3 cos(2) + 5
= 1/4
3 cos(2) + 5

50

3 cos(2) + 5
=4
3 cos(2) + 5

cos(2) = 1

cos(2) = 1

(2 + 1)
2

(2 + 1)
=

3 cos(2) + 5
= 100
3 cos(2) + 5


= = 1,2,3, ..
2

3 1
3 1
= , , | | = 0.5

4 4
4 4

1
1
= , 1 , | 1| = 0.5

2
2

Lo cual comprueba los resultados aproximados que se obtuvieron en Matlab:

d. Cdigo:

%%
%Grafica de la impedancia compleja
teta=-4*pi:0.001:0;
Zc=50;
ZL=100;
Zent=Zc*(complex(ZL,-tan(teta)*Zc)./complex(Zc,tan(teta)*ZL));
Zentx=real(Zent);
Zenty=imag(Zent);
subplot(2,2,1);
plot(Zent);
ylim([0,70]);
subplot(2,2,2);
plot3(Zentx,Zenty,teta);
%%
%Graficas para dos landas distintos
landa=input('ingrese la primera longitud de onda:
\n');
xl1=teta*landa/(2*pi);
Z=((Zentx).^2+(Zenty).^2).^(1/2);
subplot(2,2,3);
plot(xl1/landa,Z)
ylabel('Z')
title(['Z vs x/' num2str(landa)])
landa=input('ingrese la primera longitud de onda:
\n');
xl2=teta*landa/(2*pi);
subplot(2,2,3);
plot(xl2/landa,Z)
ylabel('Z')
title(['Z vs x/' num2str(landa)])
%%
%Determinar la distancia entre maximos y minimos
consecutivos
lamda=input('ingrese la longitud de onda \n');
x=teta*lamda/(2*pi);
A=min(Z);
B=max(Z);
y0=[];

x0=[];
C=linspace(A,B,500);
C1=round(C*10);
Z1=round(Z*10);
l=1;
for l=1:length(Z)
for g = 1:length(C1)
P = Z1(l)==C1(g);
if Z1(l)==Z1(l+1)
P=not(P);
elseif P
aux=y0;
y0=[aux Z1(l)];
aux1=x0;
x0=[aux1 x(l)];
end
end
if(l==length(x)-2)
break;
end
end
[r,s]=min(y0);
[h,j]=max(y0);
v=y0(s+1:end);
vmax=y0(j+1:end);
y01=v;
y01max=vmax;
[r1,s1]=min(y01);
[h1,j1]=max(y01max);
lh=1/lamda*(x0(s+s1)-x0(s));
lhmax=1/lamda*(x0(j+j1)-x0(j));
fprintf('la distancia entre minimos es : %f \n ',lh);
fprintf('la distancia entre maximos es : %f \n
',lhmax);

a.

Grfica de las funciones con [. , ]:

b. Grfica de las funciones compuestas por las anteriores con [. , ]

Para comprender la grfica analicemos las aproximaciones que se emplean:


Las amplitudes son de la forma:
| | = log10 ( )
Entonces analicemos:
Qu pasa cuando:
| | =
Qu pasa cuando:
| | =
Es decir una pendiente de:

m=

Sin embargo para este caso la amplitud se encuentra modulada por un escaln que hace que lo
anterior a sea nulo:
Por lo expuesto anteriormente se concluye que los codos que se observan en la |7 |
corresponden a:

1
1 =

2 1

1
2 = 200
2 =

2 2

1
3 = 5000
3 =

2 3
1 = 40

Observaciones:
Las grafica |1 | corresponde a un cero en los diagramas de bode mientras que el resto
de corresponden a polos.
Tambin se observa que el primero era un cero de orden 2 mientras que el resto de
polos es de orden 1.
las graficas |5,6,7 | corresponden a combinaciones de polos y ceros en el diagrama de
bode , los cuales presentan codos, que son frecuencias a la cual la amplitud sufre
alteraciones de ms de 3dB.

c. Codigo :

%%
%grafica de las funciones iniciales
w=0.1:0.1:10^5;
f=1/(2*pi)*w;
F1=40*log10(w/5).*heaviside(w-5);
subplot(2,2,1)
semilogx(f,F1);
title('Grfica |H1|')
xlabel('Frecuncia (Hz)');
ylabel('|H|db (dB)')
xlim([0.1 10000])
F2=-20*log10(w/200).*heaviside(w-200);
subplot(2,2,2)
semilogx(f,F2);
title('Grfica |H2|')
xlabel('Frecuncia (Hz)');
ylabel('|H|db (dB)')
xlim([0.1 10000])
F3=-20*log10(w/40).*heaviside(w-40);
subplot(2,2,3)
semilogx(f,F3);
title('Grfica |H3|')
xlabel('Frecuncia (Hz)');
ylabel('|H|db (dB)');
xlim([0.1 10000])
F4=-20*log10(w/5000).*heaviside(w-5000);
subplot(2,2,4)
semilogx(f,F4);
xlabel('Frecuncia (Hz)');

ylabel('|H|db (dB)')
title('Grfica |H4|')
xlim([0.1 10000])
%%
%grafica de las composicones
figure
F5=F1+F2;
subplot(2,2,1)
semilogx(f,F5);
xlabel('Frecuncia (Hz)');
ylabel('|H|db (dB)')
title('Grfica |H5|')
xlim([0.1 10000])
F6=F1+F2+F3;
subplot(2,2,2)
semilogx(f,F6);
xlabel('Frecuncia (Hz)');
ylabel('|H|db (dB)')
title('Grfica |H6|')
xlim([0.1 10000])
F7=F1+F2+F3+F4;
subplot(2,2,3)
semilogx(f,F7);
xlabel('Frecuncia (Hz)');
ylabel('|H|db (dB)')
title('Grfica |H7|')
xlim([0.1 10000])

P5. Anlisis del sistema LTI mostrado:

Aplicando la transformada de Laplace:


() = () ()
Tenemos que:
() = () ()

Despejamos:
() =

()
()

() = ()
0

() = ( )
0

Obteniendo:
( ) =

() =

2
( + 1)
2

( ) =

2
( + 1)

Habiendo obtenido la funcin de transferencia determinamos la salida para la nueva seal de


entrada :
2
() = ( 3 )

() =

2 2
( + 1)( 3 )
2

%%
%graficar la seal de salida
t=0:0.001:6;
Y1=2*heaviside(t-2)-2*((t-2).*heaviside(t-2))+2*(t3).*heaviside(t-3)-2*heaviside(t-4)+2*(t-4).*heaviside(t-4)2*(t-5).*heaviside(t-5);
plot(t,Y1)

a. Solucin :
El procedimiento para el problema es idntico a lo explicado en el anterior problema as que
para simplificar los pasos emplearemos mala para determinar todas la funciones en Laplace de
manera directa para ello empezaremos por expresar cada seal de entrada con funciones
singulares:
1 () = () ( 2)
1 ( ) = () 2( 1) + ( 2)
2() = () + ( 1) ( 2) ( 3)
3() = () 2( 2) + ( 4)
4() = 2() 4 ( 2) + 2( 4)

Dnde:
():funcin rampa
():funcin escaln unitario

Ahora determinaremos la transformada de Laplace de estas funciones:


1 2

1
2
1 () = 2 2 2 + 2

1 2 3
2 () = +

1
2 4
3 () = 2
+

2
1

4
4 () = 2 2 4 2 + 2 2

1 () =

Habiendo obtenido las correspondientes transformadas obtendremos la funcin de


transferencia del sistema:

() =

1 ()
1 ()

1
2
( 22 2 + 2 )
1

=
=
2
1
( + 1)

Teniendo la funcin de transferencia es posible determinar las seales de salida en funcin de la


variable s para luego aplicarle la transformada inversa de Laplace:
2 ( ) = () 2 () =

2 3
1
2 + 2 + 2
2

2 () = () ( 1) ( 2) + ( 3)

3 ( ) = () 3 () =

2
2

+
2 ( ) 3 2 ( )4

1
2

3 () = () 2( 1) + 2( 3) ( 4)

4 ( ) = ()4 () =

4
3

4
2
2
3
+ 3

4
( )
( )

4 () = () 2( 1) ( 1) + 2( 3) ( 3) ( 4) ( 4)

Observaciones:
1. Durante el desarrollo del laboratorio se tuvo contratiempos en el problema 1 y el problema 3
por un equivoco entendimiento de lo que el ejercicio solicitaba, aun asi se logro obtener el
codigo script en matlab , obteniendo asi los resultados que han sido indicados.
2. En algunas circunstancias elaborar un algoritmo matematico con matlab es mas complejo que
resolver el problema analiticamente o viceversa, pero es necesario la base teorica para
analizar si los resultados obtenidos por matlab son los correctos.
3. Tanto el problema 5 y 6 no se emplean un script propiamente dicho ya que son comandos
directos los que ayudan a obtener la graficas y la transformada directa e inversa de laplace, en
este par de problemas se emplearon codigos como : laplace(F(t)) , ilaplace(F(s)) ,
ezplot(F(t),[intervalo]) , para determinar las seales de salida y sus respectivas graficas

Вам также может понравиться