Mensaje de error

Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters en drupal_get_feeds() (línea 394 de /home1/montes/public_html/drupal/includes/common.inc).

ganancia

Undefined

Problema A8.4 pag592

[adsense:336x280:9156825571]
Vamos a dibujar los diagramas de Bode en lazo cerrado con realimentacion unitaria para los valores de $K=1,10,20$ mediante el Scilab de la siguiente funcion en lazo abierto:
Español

Programa 7.5 OGATA 4edicion pag455

Vamos a dibujar la respuesta a un escalon para los valores de $K=0.4490$ y $K=1.4130$ mediante el Scilab del sistema en lazo cerrado:

 

Funcion de transferencia en lazo cerrado, transformada de Laplace


Programa en Scilab:
s=%s;

k1=0.4490;

g1=20/(s*(s+1)*(s+4)+20*(1+k1*s));

k2=1.4130;

g2=20/(s*(s+1)*(s+4)+20*(1+k2*s));

t=0:0.1:10;

y1=csim('step',t,g1);

y2=csim('step',t,g2);

clf;

plot(t,y1,'k');

plot(t,y2,'b');

xgrid;

xtitle('Respuesta a un escalon unitario de un sistema paralelo','t','salida');

legend(['K=0.4490';'K=1.4130'],style=4);
Respuesta del sistema a un escalon para dos valores de ganancia con Scilab
Español

Ejercicio B.6.15

[adsense:336x280:9156825571]
Vamos a dibujar el lugar de las raíces del sistema en lazo abierto y calcular las raíces en lazo cerrado cuando $K=2$

 

Funcion de transferencia en lazo abierto, Tranformada de Laplace

 

Programa en Scilab:
//Borramos la ventana grafica

clf;
//Declaramos la variable s y la funciones 'g','h' y 'g*h'

s=%s;

g=(s+1)/(s*(s^2+2*s+6));

h=1/(s+1);

gh=g*h;

//Declaramos la funcion g*h lineal y continua

ghs=syslin('c',gh)

//Declaramos ghs2 como la funcion anterior
 pero con K=2

ghs2=2*ghs;
[adsense:336x280:9156825571]
//Calculamos las raices de (1+ghs2)*(s+1), este ultimo es el polo que se anulo
 con el cero

glc=(1+ghs2)*(s+1);

r=roots(numer(glc))

//Dibujamos el lugar de las raices de la funcion ghs

evans(ghs);
mtlb_axis([-5 5 -5  5])

//Dibujamos el polo y el cero que se anularon:

plot(-1,0,'o');

plot(-1,0,'x');

//Dibujamos las raices para K=2;

plot(real(r),imag(r),'+');

xgrid;

xtitle('Lugar de las raices, los polos en lazo cerrado -> + para K=2','Eje real'
,'Eje imaginario');


Resultados
-->r=roots(numer(glc))
 r  =
 
  - 0.3706383              
  - 1.                     
  - 0.8146808 + 2.175406i  
  - 0.8146808 - 2.175406i



Lugar de las raices en lazo cerrado con Scilab
Español

Programa 6.8 OGATA 4edicion pag370

Vamos a dibujar el lugar de las raices con indicacines de factor de amortiguamiento $\zeta$=0.5 y se pedira marcar un punto del lugar de las raices y se obtendra la ganancia K y los polos en lazo cerrado mediante Scilab de un sistema en lazo cerrado con realimentación unitaria cuya funcion de transferencia en lazo abierto es:

 

Funcion de transferencia, Transformada de Laplace


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],32);

//marcar un punto con el raton en el lugar de las raices de la grafica

p=locate(1)

 k=-1/real(horner(g,[1,%i]*p));

 gl=1+k*g;

numgl=numer(gl);

roots(numgl)
k

Resultados:

-->p=locate(1)
 p  =
 
  - 0.6502732  
    1.0550725 
    
-->roots(numgl)
 ans  =
 
  - 0.6412384 + 1.0505487i  
  - 0.6412384 - 1.0505487i  
  - 2.7175231               
 
-->k
 k  =
 
    4.1166111
Español

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

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
Español

Tranformada de Laplace

Español

Páginas

Pin It
Subscribe to RSS - ganancia