Scilab

Scilab es un software matemático libre, con un lenguaje de programación de alto nivel, para cálculo científico

Undefined

Programa 5.14 pag 264, Ogata

Español
Vamos a hacer la representacion grafica de la solucion del Ejemplo 5.9 que viene dada por una entrada escalon unitario al sistema(programado en Scilab):

 

Funcion de transferencia del sistema, Transformada de Laplace

 

Programa en Scilab:
num=poly([0 0.35 0.1],'s','coeff');

den=poly([2 3 1],'s','coeff');

t=0:0.1:7;

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

gs=csim('step',t,g);

plot(t,gs);

xgrid;

xtitle('respuesta a un Escalon unitario de G(s)=(0.1s^2+0.35s)/(s^2+3s+2)'
,'t(seg)','Amplitud')

 

Respuesta a un escalon unitario del sistema con Scilab

Como se ve la funcion sale del 0 cuando tendria que salir del 0.1 vamos a repetir el programa pero utilizando en vez de una entrada escalon para

$G(s)=\frac{(0.1\cdot s^{2}+0.35 \cdot s)}{(s^{2}+3\cdot s+2)}$, una entrada impulso para el sistema

Funcion de transferencia para un sistema equivalente con entrada impulos, es decir, lo mismo. Si nos fijamos al ejecutar el codigo anterior de Scilab, el sistema nos da un warning despues de ejecutar el csim.

 

Programa en Scilab:
num=poly([0 0.35 0.1 0],'s','coeff');

den=poly([0 2 3 1],'s','coeff');

t=0:0.1:7;

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

gs=csim('impulse',t,g);

plot2d(t,gs,2);

xgrid;

xtitle('respuesta a un impulso unitario de G(s)=(0.1s^2+0.35s)/(s^3+3s^2+2s)'
,'t(seg)','Amplitud');

 

Respuesta del sistema equivalente a un impulso con Scilab

Programa 5.12 pag 260, Ogata

Español
Vamos a hacer la representacion grafica de la respuesta a una entrada rampa unitaria al siguiente sistema(programado en Scilab):

 

Funcion de transferencia de segundo orden, Transformada de Laplace


 

Programa en Scilab (es como el programa 5.10 pero cambia la entrada y como introducimos el sistema):
num=poly([1 0 0],'s','coeff');

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

t=0:0.1:7;

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

gs=csim(t,t,g);

plot(t,gs,'+');

plot2d(t,t)

xgrid;

xtitle('respuesta a una rampa unitaria de G(s)=1/(s^2+s+1)','t(seg)'
,'Entrada y salida');

xstring(1.8,3,'Entrada');

xstring(4.4,3,'Salida');
Respuesta del sistema a una rampa unitaria con Scilab

Programa 5.10 pag 257, Ogata

Español
Vamos a hacer la representacion grafica de la respuesta a una entrada rampa unitaria al siguiente sistema(programado en Scilab):

 

Funcion de transferencia de segundo orden, Transformada de Laplace


Programa en Scilab:
num=poly([1 0 0 0],'s','coeff');

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

t=0:0.1:7;

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

gs=csim('step',t,g);

plot(t,gs,'+');

plot2d(t,t);

xgrid;

xtitle('respuesta a una rampa unitaria de G(s)=1/(s^2+s+1)','t(seg)'
,'Entrada y salida');

xstring(1.8,3,'Entrada');

xstring(4.4,3,'Salida');

 

Respuesta del sistema a una rampa unitaria con Scilab

 

Programa 5.9 pag 256, Ogata

Español
Vamos a hacer la representacion grafica de la respuesta a una entrada escalon unitario al siguiente sistema, obteniendo la misma respuesta que en Programa 5.8 (programado en Scilab):

 

Funcion de transferencia, Transformada de Laplace

 

Programa en Scilab:

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

den=poly([1 0.2 1],'s','coeff');

t=0:0.1:70;

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

gs=csim('impulse',t,g);

plot2d(t,gs);

xgrid;

xtitle('respuesta a un impulso unitario de G(s)=1/(s^2+0.2s+1)');

Respuesta al sistema a un impulso con Scilab

Programa 5.8 pag 255, Ogata

Español
Vamos a hacer la representacion grafica de la respuesta a una entrada impulso unitario al siguiente sistema (programado en Scilab):

 

Funcion de transferencia de segundo orden, Transformada de Laplace


Programa en Scilab:
num=poly([1 0 0],'s','coeff');

den=poly([1 0.2 1],'s','coeff');

t=0:0.1:70;

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

gs=csim('impulse',t,g);

plot2d(t,gs);

xgrid;

xtitle('respuesta a un impulso unitario de G(s)=1/(s^2+0.2s+1)');

 

Respuesta del sistema a un impulso unitario con Scilab

Programa 5.6 pag 252, Ogata

Español
Vamos a calcular el tiempo de subid, tiempo de pico, maxima sobreelongacion y tiempo de asentamiento utilizando el Scilab del siguiente sistema:

 

Funcion de transferencia de segundo orden, Transformada de Laplace


Programa en Scilab:
num=poly([25 0 0],'s','coeff');

den=poly([25 6 1],'s','coeff');

t=0:0.005:5;

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

gs=csim('step',t,g);

r=1;

while gs(r)<1.0001;

r=r+1;

end;
tiemposubida=(r-1)*0.005;

[gsmax,rp]=max(gs);

tiempopico=(rp-1)*0.005;

ElongacionMax=gsmax-1;

rmax=5/0.005;

k=rmax+1;

while gs(k)>0.98 & gs(k)<1.02;
k=k-1;
end;

-->tiemposubida
 tiemposubida  =
 
    0.555  
 
-->tiempopico
 tiempopico  =
 
    0.785  
 
-->ElongacionMax
 ElongacionMax  =
 
    0.0947800  
 
-->tiempoasentamiento
 tiempoasentamiento  =
 
    1.185

 

Programa 5.5 pag 250, Ogata

Español
Vamos a hacer la representacion grafica de la respuesta a una entrada escalon unitario, dando a el factor
de amortiguacion los siguientes valores del sistema:$\zeta=0, 0.2, 0.4, 0.6, 0.8, 1.0 $
Funcion de tranferencia con el factor de amortiguacion, Transformada de Laplace

 

Programa en Scilab:
t=0:0.2:10;
zeta=[0 0.2 0.4 0.6 0.8 1];

cv=[1 2 3 4 5 6];

for n=1:6

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

den=poly([1 2*zeta(n) 1],'s','coeff');

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

gs=csim('step',t,g);

plot2d(t,gs,style=cv(n))

end;

xgrid;

xtitle('Representacion a un escalon unitario con wn=1,zeta=0 , 0.2
, 0.4,0.6,0.8,1','t(seg)','Respuesta');

legends(['zeta=0','zeta=0.2','zeta=0.4','zeta=0.6','zeta=0.8','zeta=1']
,[1,2,3,4,5,6],opt=4);
Respuesta del sistema a un escalor para varios valores del factor de amortiguamiento con Scilab

 

Programa 5.4 pag 250, Ogata

Español
Vamos a hacer la representacion grafica de la respuesta a una entrada escalon unitario del sistema:

 

Funcion de transferencia del sistema de segundo orden, Transformada de Laplace
Programa en Scilab:
num=poly([25 0 0 ],'s','coeff');

den=poly([25 4 1],'s','coeff');
g=syslin('c',num/den);

t=0:0.005:3;

gs=csim('step',t,g);

plot2d(t,gs);

xgrid;

xtitle('Respuesta a un escalon unitario G(s)=25/(s^2+4s+25)','Tiempo(seg)'
,'Amplitud')

Respuesta del sistema a un escalon unitario con Scilab

 

Programa 5.3 pag 249, Ogata

Español
Se va ha introducir el valor de frecuencia natural no amortiguada $\omega_{n}=5$ rad/seg y un factor de amortiguamiento $\zeta=0.4$ en el siguiente sistema programandolo en Scilab:

 

Funcion de transferencia de segundo orden, Transformada de Laplace


Programa en Scilab:

wn=5;

zeta=0.4;

num=wn^2;

s=poly(0,'s');

den=[s^2+2*wn*zeta*s+wn^2];

g=[num/den]

g=
1
--------------
s^2 + 4 s + 25

Respuesta Transitoria

Español

 

Páginas

Pin It
Subscribe to RSS - Scilab