syslin

Undefined

Programa 6.6 OGATA 4edicion pag367

Español
Vamos a dibujar el lugar de las raices con indicaciones de factor de amortiguamiento $\zeta$=0.5,0.707 y de frecuencia natural no amortiguada $\omega_{n}$=0.5, 1 y 2 mediante Scilab de un sistema en lazo cerrado con realimentación unitaria cuyo funcion de transferencia en lazo abierto es:

 


Programa en Scilab

num=poly([1 0 0 0],'s','coeff');

den=poly([0 5 4 1],'s','coeff');

g=syslin('c',num/den);

evans(g);

v=[-3 1 -2 2];

mtlb_axis(v)

sgrid([0.5, 0.707],[0.5, 1, 2],32);
Lugar de las raices para la transformada de Laplace para varios valores de ganancia con Scilab

 

 

Programa 6.3 OGATA 4edicion pag362 (Lugar de las Raices)

Español
Vamos a calcular el lugar de las raices mediante Scilab de un sistema en lazo cerrado con realimentación unitaria cuyo funcion de transferencia en lazo abierto es:

 

Funcion de tranferencia del sistema. Laplace


Programa en Scilab

num=poly([1 0 0 0 0],'s','coeff');

den=poly([0 5 10.3 1.1 1],'s','coeff');

g=syslin('c',num/den);

for k1=0.2:0.2:20,
  gl=1+k1*g;
  numl=numer(gl);
  r=roots(numl);
  x=real(r);
  y=imag(r);
  plot(x,y,'o');
end;

for k2=20.02:0.2:30,
  g2=1+k2*g;
  num2=numer(g2);
  r2=roots(num2);
  x2=real(r2);
  y2=imag(r2);
  plot(x2,y2,'o');
end;

for k3=35:5:1000,
  g3=1+k3*g;
  num3=numer(g3);
  r3=roots(num3);
  x3=real(r3);
  y3=imag(r3);
  plot(x3,y3,'o');
end;

v=[-20 20 -25 25];

mtlb_axis(v)

xgrid;

Lugar de las raices por puntos de la trasformada de Laplace con Scilab

Programa 6.2 OGATA 4edicion pag361 (Lugar de las Raices)

Español
Vamos a calcular el lugar de las raices mediante Scilab de un sistema en lazo cerrado con realimentación unitaria cuyo funcion de transferencia en lazo abierto es:

 

Funcion de transferencia de una transformada de Laplace


 

 

Programa en Scilab

num=poly([1 0 0 0 0],'s','coeff');

den=poly([0 5 10.3 1.1 1],'s','coeff');

g=syslin('c',num/den);

evans(g);

v=[-6 6 -6 6];

mtlb_axis(v)

xgrid
Lugar de las raices de la Transformada de Laplace

 

Programa 6.1 OGATA 4edicion pag360 (Lugar de las Raices)

Español
Vamos a calcular el lugar de las raices mediante Scilab de un sistema en lazo cerrado con realimentación unitaria cuyo funcion de transferencia en lazo abierto es:

 

Transformada de Laplace


Programa en Scilab

s=%s;

num=s+3;

den=s*(s+1)*(s^2+4*s+16);

g=syslin('c',num/den);

//Lugar de los raices
evans(g);
 
//punto de corte en el eje imaginario y ganancia
[Ki,s]=kpure(g)
 
//Los puntos de corte con el eje imaginario dibujados con un asterisco
plot([real(s) real(s)],[imag(s) -imag(s)],'*r')

v=[-6 6 -6 6]; mtlb_axis(v);

Resultados:

 s  =

 
    3.140933i  
 Ki  =
 
    33.3273 
 

Lugar de las raices de la funcion de transferencia con Scilab

 

Problema B2.3 pag51 OGATA 4ed(Tranformada de Laplace)

Español
Vamos a calcular las transformadas de Laplace de las funciones siguientes.
a)
Funcion en el tiempo seno coseno
Solucion:
Vamos a cambiar la funcion de la siguiente manera:
Transformacion de la funcion en el tiempo

 

Utilizando las siguiente tranformadas de Laplace.
Transformada de Laplace de la funcion seno

 

Con lo que obtenemos:
Transformada de Laplace de la funcion en el tiempo

 



b)
funcion en el tiempo exponecial  por seno

 

Solucion:
Utilizando las siguiente Tranformadas de Laplace y propiedades de la Transformada de Laplace.
Propiedad de la transformada de Laplace
 
Propiedad de la transformada de Laplace con exponencial
 
Transformada de Laplace de la funcion seno
 
Con lo que obtenemos:

 

Transformada de Laplace de la funcion en el tiempo

 

Vamos a comprobar el resultado con el Scilab.
t=0:0.1:5;

ft=t.*exp(-t).*sin(5*t);

s=%s;
fs=10*(s+1)/((s+1)^2+5^2)^2;

fs2=syslin('c',fs);

fs1=csim('impulse',t,fs2);

subplot(2,1,1);

plot2d(t,ft,2);

xtitle('Enunciado');

xgrid;

subplot(2,1,2);

plot2d(t,fs1,1);

xtitle('Solucion');

xgrid;
Respuesta en el tiempo a un impulso de la transformada de Laplace con Scilab

Problema B2.2 pag51 OGATA 4ed(Tranformada de Laplace)

Español
Vamos a calcular las transformadad de Laplace de las funciones siguientes.

a)

 

\begin{displaymath}f(t)=3\cdot sen(5\cdot t+\frac{\pi}{4})\end{displaymath}


 

Solucion:
Vamos a descomponer la funcion de la siguiente manera:

 

Funcion en el tiempo seno


 

Utilizando las siguientes tranformadas.

 

Descomposicion de la funcion en el tiempo seno


 

 

Transformada de Laplace de una funcion seno


Obtendriamos:

 

Transformada de Laplace de una funcion coseno


 

Vamos a comprobar el resultado con el Scilab.
t=0:0.5:50;

ft=3*sin(5*t+(%pi/4));

s=%s;

fs=3*(5/(s^2+5^2))*cos(%pi/4)+3*(s/(s^2+5^2))*sin(%pi/4);

fs2=syslin('c',fs);

fs1=csim('impulse',t,fs2);

subplot(2,1,1);

plot2d(t,ft,2);

xtitle('Enunciado');

xgrid;

subplot(2,1,2);

plot2d(t,fs1,1);

xtitle('Solucion');

xgrid;

 

Representacion en el tiempo de la tranformada de Laplace para una entrada impulso con Scilab

b)

 

Funcion en el tiempo coseno


 

 

Solucion:
Vamos a descomponer la funcion de la siguiente manera:

 

Descomposicion de la funcion coseno


 

Utilizando las siguientes tranformadas.

 

Transformada de Laplace de un escalon unitario


 

 

Transformada de Laplace de una funcion coseno


 

Obtendriamos:

 

Transformada de Laplace de la funcion


 

Vamos a comprobar el resultado con el Scilab.
t=0:0.5:50;

ft=0.3*ones(size(t,2))-0.3*cos(2*t);

s=%s;

fs=0.3*(1/s)-0.3*(s/(s^2+2^2));

fs2=syslin('c',fs);

fs1=csim('impulse',t,fs2);

subplot(2,1,1);

plot2d(t,ft,2);

xtitle('Enunciado');

xgrid;

subplot(2,1,2);

plot2d(t,fs1,1);

xtitle('Solucion');

xgrid;
Representacion en el tiempo de la tranformada de Laplace para una entrada impulso con Scilab

 

Problema B2.1 pag51 OGATA 4ed(Tranformada de Laplace)

Español

Vamos a calcular las transformada de Laplace de las funciones siguientes.
a)
funcion en el tiempo

 

Solucion:
Vamos a utilizar las siguientes propiedades y tranformadas.
 
Transformada de Laplace de una funcion exponencial
 
Transformada de Laplace de una funcion coseno

 

Con lo que obtenemos:

Transformada de Laplace de la funcion en el tiempo



Vamos a comprobar el resultado con el Scilab.
t=0:0.5:20;

ft=exp(-0.4*t).*cos(12*t);

s=%s;

numfs=s+0.4;

denfs=(s+0.4)^2+12^2;

fs=syslin('c',numfs/denfs);

fs1=csim('impulse',t,fs);
subplot(2,1,1);

plot2d(t,ft,2);

xtitle('Enunciado');

xgrid;

subplot(2,1,2);

plot2d(t,fs1,1);

xtitle('Solucion');

xgrid;

 

representacion de la transformada de Laplace en el tiempo con Scilab

b)

funcion en el tiempo

 

Solucion:

Vamos a descomponer la funcion de la siguiente manera:
descomposicion de la funcion en el tiempo
 
 
Con lo que la transformada nos quedaria:
 
transformada de Laplace de la funcion en el tiempo descompuesta

Vamos a comprobar el resultado con el Scilab.

t=0:0.5:300;

ft=sin(4*t+(%pi/3));

s=%s;

fs=(4/(s^2+4^2))*cos(%pi/3)+(s/(s^2+4^2))*sin(%pi/3);

fs2=syslin('c',fs);

fs1=csim('impulse',t,fs2);

subplot(2,1,1);

plot2d(t,ft,2);

xtitle('Enunciado');

xgrid;

subplot(2,1,2);

plot2d(t,fs1,1);

xtitle('Solucion');

xgrid;
representacion en el tiempo de la Transformada de Laplace con Scilab


Ejemplo 2.17 pag50 OGATA 4ed(Tranformada de Laplace)

Español
Vamos a resolver la siguiente ecuacion diferencial mediante scilab:
 

ecuacion diferencial segundo grado

 

\begin{displaymath}x(0)=0 \end{displaymath}

 

\begin{displaymath}\dot{x}(0)=0 \end{displaymath}

 

La Tranformada de Laplace quedaria:

Tranformada de Laplace


 

Con lo que nos quedaria:
 

Tranformada de Laplace


 

Vamos a obtener el desarrollo en fracciones simples mediante Scilab:

Programa en Scilab

s=%s

num=2;

den=s^3*(s^2+2*s+10);

g=syslin('c',num/den);

gf=tf2ss(g);

se=pfss(gf);

Resultado en Scilab:

 se  =
 
 
       se(1)
 
                        2  
    0.2 - 0.04s - 0.012s   
    --------------------   
              3            
             s             
 
       se(2)
 
    0.064 + 0.012s   
    --------------   
                2    
     10 + 2s + s

 

Con lo que el sistema nos quedaria:
 

Desarrollo en fracciones simples


 

Vamos a descomponer primero se(1) mediante scilab añadiendo mas lineas de codigo:

Lineas a añadir en Scilab

r=roots(denom(se(1)));

a(3)=horner(s^3*se(1),r(1));

a(2)=horner(derivat(s^3*se(1)),r(1));

a(1)=horner(derivat(derivat(s^3*se(1))),r(1))/2;

for k=1:3,
ds1(k)=a(k)/s^k,
end;

Resultado en Scilab del desarrollo de se(1)

 ds1  =
 
 
       ds1(1)
 
            
   -0.012   
   -------  
            
     s      
 
       ds1(2)
 
           
   -0.04   
   ------  
      2    
     s     
 
       ds1(3)
 
         
   0.2   
   ----  
     3   
    s
 
 
Con lo que la descomposicion de se1 nos queda:
 

descomposicion del primer termino

 

La descomposicion de se2 la obtendriamos:
 

decomposicion del segundo termino

 

Descomposicion del segundo termicon parte 2

 

Transformada inversa de Laplace

 

Con lo que la tranformada de Laplace nos quedaria:
 

resultado final

 

 

Problema A2.16 pag49 OGATA 4ed(Tranformada de Laplace)

Español

Dados los polos,ceros y ganancia vamos a calcular la funcion de tranferencia mediante Scilab en los siguientes casos:

a)Ganancia K=10,polos en -1+2j y -1-2j.

 

Programa en Scilab

num=10;

den=poly([-1-2*%i -1+2*%i],'s');

g=syslin('c',num/den)

Solucion:

 g  =
 
                
       10       
   -----------  
             2  
   5 + 2s + s

b)Ganancia 10. Cero en 0. Polos en -1+2j y -1-2j.

Programa en Scilab

num=10*poly(0,'s');

den=poly([-1-2*%i -1+2*%i],'s');

g=syslin('c',num/den)

Solucion:

g  =
 
                
      10s       
   -----------  
             2  
   5 + 2s + s

c)Ganancia 12. Cero en -1. Polos en -2, -4 y -8.

Programa en Scilab

num=12*poly(-1,'s');

den=poly([-2 -4 -8],'s');

g=syslin('c',num/den)

Solucion:

g  =
 
         12 + 12s        
    ------------------   
                  2   3  
    64 + 56s + 14s + s

Problema A2.15 pag48 OGATA 4ed(Tranformada de Laplace)

Español
Vamos a obtener la Transformada inversa de Laplace mediante Scilab la siguiente funcion de tranferencia:
 

Funcion de transferencia


Programa en Scilab

s=%s

num=s^5+8*s^4+23*s^3+35*s^2+28*s+3;

den=s^3+6*s^2+8*s;

g=syslin('c',num/den);

gf=tf2ss(g);

se=pfss(gf);

for k=1:size(se),


df(k)=clean(se(k)),

end;

Solucion:

 df  =
 
 
       df(1)
 
    0.375   
    -----   
      s     
 
       df(2)
 
    0.375   
    -----   
    4 + s   
 
       df(3)
 
    0.25    
    ----    
    2 + s   
 
       df(4)
 
              2  
    3 + 2s + s

El desarrollo en fracciones simples quedaria: 

Descomposicion en fracciones simples

 

La Transformada inversa de Laplace:

 

Transformada inversa de Laplace

 

 

 

Páginas

Pin It
Subscribe to RSS - syslin