Problema A9.9 pag667 OGATA

Solapas principales

Vamos a calcularle un compensador de retardo-adelanto que nos haga cumplir los siguientes requisitos $K_{v}=10$, margen de fase =50 y margen de ganancia $\geq 10dB$ al siguiente sistema en lazo abierto:

 

Funcion de transferencia en lazo abierto, Transformada de Laplace


 

  1. Vamos a calcular primero el valor de K para obtener $G_{1}(s)$

     

    Constante de velocidad

     

    valor de la ganancia

     

    Funcion de transferencia de la G1


     

     

  2. Vamos a calcular el diagrama de Bode de $G_{1}(jw)$
      w $\frac{w}{10}$ $10\cdot w$
    s 1    
    $(s+1)$ 1 0.1 10
    (s+4) 4 0.4 40

     

    Ganancia en dB (decibelios) para una frecuencia de 0.1

     

    Ganancia en dB (decibelios) para una frecuencia de 0.4

     

    Ganancia en dB (decibelios) para una frecuencia de 1

    Ganancia en dB (decibelios) para una frecuencia de 4

     

    Ganancia en dB (decibelios) para una frecuencia de 10

     

    Ganancia en dB (decibelios) para una frecuencia de 40

     

    Ganancia en dB (decibelios) para una frecuencia de 100

     

    Valor de la fase para una frecuencia de 0.1

     

    Valor de la fase para una frecuencia de 0.4

     

    Valor de la fase para una frecuencia de 1

     

    Valor de la fase para una frecuencia de 4

     

    Valor de la fase para una frecuencia de 10

     

    Valor de la fase para una frecuencia de 40

     

    Valor de la fase para una frecuencia de 100


     

    w 0.1 0.4 1 4 10 40 100
    $dB\vert G_{1}\vert$ 40 27.96 20 -4.08 -27.96 -64.08 -87.96

    $\lfloor{G_{1}}$

    -90 -117 -152.9 -207 -242.9 -270 -270

    Representacion del diagrama de Bode con los valores de las tablas

     

  3. Vamos a calcular la frecuencia a la cual $G_{1}(jw )$ toma el valor -180, que sera la nueva frecuencia de cruce

     

    Ecuacion de la nueva frecuencia de cruce

     

    Ecuacion de la nueva frecuencia de cruce parte 2

     

    Ecuacion de la nueva frecuencia de cruce parte 3

     

    Valor de la nueva frecuencia de cruce


     

    Comprobacion con Scilab

    s=%s;
    g=40/(s*(s+1)*(s+4));
    gs=syslin('c',g);
    w=[0.1 0.4  1 2 4 10 40 100];
    gr=horner(gs,%i*w);
    [phi,db]=phasemag(gr)
    [w;db;phi]
    
    Resultados:
    -->[w;db;phi]
     ans  =
     
        0.1          0.4          1.           2.           4.               
        39.954073    27.271007    16.726411    6.0205999  - 7.355989    
      - 97.142689  - 117.512    - 149.03624  - 180.       - 210.96376  
      
        10.          40.          100. 
      - 28.646594  - 64.128327  - 87.966178
      - 242.488    - 262.85731  - 267.13645
    
    
  4. El valor

    $\frac{1}{T_{2}}$ del compensador de atraso sera una decada por debajo de la frecuencia de cruce

     

    Periodo de la frecuencia del compensador de atraso


     

     

  5. El margen de fase tendra que ser $50+5=55$, con lo que con este valor calcularemos la $\beta$

     

    Relacion de la alpha y la beta del compensador

     

    Ecuacion para calcular la alpha del compensador

     

    Valor del alpha del compensador

     

    Valor de la beta del compensador


     

     

    Con lo que ya tendremos el compensador de atraso

     

    Funcion de transferencia del compensador de atraso


     

    Vamos a representar el diagrama de Bode con el compensador mediante Scilab
    s=%s/(2*%pi);
    g=40/(s*(s+1)*(s+4));
    gc1=(s+0.2)/(s+0.02);
    gt1=g*gc1;
    gs=syslin('c',g);
    gc1s=syslin('c',gc1);
    gt1s=syslin('c',gt1);
    clf();
    bode([gs;gt1s;gc1s],['compensador';'compensado';'no compensado']);
    

    Diagrama de Bode del sistema compensado y no compensado y el compensador con Scilab

  6. Vamos a calcular el compensador de adelanto. Vamos a calcular la ganancia que toma $G_{1}(jw)$ en la frecuencia de cruce:

     

    Ganancia en la frecuencia de cruce


     

    Vamos a calcular el cero y el polo del compensador pasando una recta por el punto (2rad/seg,-7.95dB) del diagrama de Bode y viendo donde interseca con la recta -20dB y la recta 0db. La pendiente viene dada de la siguiente forma:

    Compensador de adelanto

     

    Relacion entre la ganancia y la beta en el compensador

     

    Relacion entre la ganancia y la beta en el compensador parte 2


    Valor de la ganancia del compensador


    ecuacion para obtener w2

     

    ecuacion para obtener w2 parte 2

     

    \Valor de la w2

     

    Ecuacion para obtener la w1


     

     

    Ecuacion para obtener la w1 parte 2


     

     

    Valor de la w1


     

     

    El compensador de adelanto nos quedara:

     

    Funcion de transferencia del compensador de adelanto


     

Vamos a representar el diagrama de Bode con el compensador mediante Scilab
s=%s/(2*%pi);
g=40/(s*(s+1)*(s+4));
gc1=(s+0.2)/(s+0.02);
gc2=(s+0.5)/(s+5);
gc3=(s+0.4)*(s+0.2)/((s+4)*(s+0.02));
gt1=g*gc1*gc2;
gt2=gc3*g;
gs=syslin('c',g);
gc1s=syslin('c',gc1*gc2);
gc2s=syslin('c',gc3);
gt1s=syslin('c',gt1);
gt2s=syslin('c',gt2);
clf();
bode([gs;gt1s;gc1s;gc2s;gt2s],['compensado libro';'compensador libro'
;'compensador';'compensado';'no compensado']);

Diagrama de Bode del sistema no compensado y compensado y el compensador con Scilab

Si ampliamos el grafico, vemos que el margen de ganancia es mayor que 10dB

Ampliacion del diagrama de Bode para ver que el margen de ganancia es mayor que 10dB

Vamos a ver la respuesta ante una entrada escalon del sistema mediante Scilab
s=%s;
g=40/(s*(s+1)*(s+4));
gc1=(s+0.2)/(s+0.02);
gc2=(s+0.5)/(s+5);
gc3=(s+0.4)*(s+0.2)/((s+4)*(s+0.02));
gt1=g*gc1*gc2;
gt2=gc3*g;
glc=g /. 1;
glc2=gt1 /. 1;
glc3=gt2 /. 1;
gs=syslin('c',glc);
gs2=syslin('c',glc2);
gs3=syslin('c',glc3);
t=0:0.1:40;
y=csim('step',t,gs);
y2=csim('step',t,gs2);
y3=csim('step',t,gs3);
clf();
subplot(2,1,1);
plot(t,y,1);
legends('no compensado',1,opt=1)
xgrid;
xtitle('Respuesta ante una entrada escalon','','y(t)')
subplot(2,1,2)
plot(t,y2,'b');
plot(t,y3,'g');
legends(['compensado';'compensado libro'],[2;3],opt=4);
xtitle('','t(seg)','y(t)')
xgrid;

 

Respuesta a un escalon del sistema compensado y no compensado con Scilab

 

 

Vamos a ver la respuesta ante una rampa del sistema mediante Scilab
s=%s;
g=40/(s*(s+1)*(s+4));
gc1=(s+0.2)/(s+0.02);
gc2=(s+0.5)/(s+5);
gc3=(s+0.4)*(s+0.2)/((s+4)*(s+0.02));
gt1=g*gc1*gc2;
gt2=gc3*g;
glc=g /. 1;
glc2=gt1 /. 1;
glc3=gt2 /. 1;
gs=syslin('c',glc);
gs2=syslin('c',glc2);
gs3=syslin('c',glc3);
t=0:0.1:20;
y=csim(t,t,gs);
y2=csim(t,t,gs2);
y3=csim(t,t,gs3);
clf();
subplot(2,1,1);
plot(t,y,1);
legends('no compensado',2,opt=1)
xgrid;
xtitle('Respuesta ante una entrada rampa','','y(t)')
subplot(2,1,2)
plot(t,t,'r');
plot(t,y2,'b');
plot(t,y3,'g');
legends(['compensado';'compensado libro';'rampa'],[2;3;5],opt=4);
xtitle('','t(seg)','y(t)')
xgrid;

Respuesta a una rampa del sistema compensado y no compensado con Scilab

Español

Añadir nuevo comentario

Plain text

  • No se permiten etiquetas HTML.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Saltos automáticos de líneas y de párrafos.
Pin It