2 CONTROLADOR PID
Donde:
0
Calculamos el valor de la ganancia kd en dicho
punto. Para ello se aplica la condición de módulo
Se tiene:
Gc(s)=kd(s+a)=0.0609(s+11.136)
Gc(s)=kd(s+a)=0.6774(1+S/11.136)
CALCULO DEL CONTROLADOR PI
PUNTO DESEADO
ANGULO =0.69°
53.76
54.45
( s) km
Va ( s ) ( Js b)( Ls R ) km kb
k m kb
W (s) k
Va ( s ) ( Js b)( Ls R ) k 2
W (s) k
Va ( s ) ( JLs ( RJ bL) s (bR k )
2 2
Programa para hallar respuesta al escalon del sistema original
J=0.01;
b=0.1;
K=0.01;
R=1;
L=0.5;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];
step(num,den,0:0.1:3);grid
Title('Respuesta al escalón')
De la figura se observa que se obtiene una salida 10 veces
más chica que la deseada (0,1 rad/s) y 3 seg de
establecimiento, sin cumplir las especificaciones
Control Proporcional
Probemos primero un control
Proporcional con ganancia 100 . Para ello
hay que agregar los siguientes comandos
al final del archivo anterior
J=0.01;
b=0.1;
K=0.01;
R=1;
L=0.5;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];
Kp=100;
numa=Kp*num;
dena=den;
[numac,denac]=cloop(numa,dena);
t=0:0.01:5;
step(numac,denac,t);grid
title( 'Respuesta al escalón con Control Proporcional')
De la figura de arriba vemos que tanto el error de estado estacionario y el
sobrepico son muy grandes
Recordemos del PID que incorporando un término
integral se eliminará el error de estado estacionario y un
término derivativo reducirá el sobrepico.
un controlador PID con Ki y Kd
pequeños.
Recordemos que la función de
transferencia para un controlador PID es:
J=0.01;
b=0.1;K=0.01;R=1;L=0.5;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];
Kp=100;
Ki=1;
Kd=1;
numc=[Kd Kp Ki];
denc=[0 1 0];
numa=conv(num,numc);
dena=conv(den,denc);
[numac,denac]=cloop(numa,dena);
step(numac,denac);grid
title('Control PID con pequeño Ki and Kd')
Sigue teniendo error en estado estacionario y sobreimpulso
J=0.01;
b=0.1;K=0.01;R=1;L=0.5;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];
Kp=100;
Ki=200;
Kd=1;
numc=[Kd Kp Ki];
denc=[0 1 0];
numa=conv(num,numc);
dena=conv(den,denc);
[numac,denac]=cloop(numa,dena);
step(numac,denac);grid
title('Control PID con pequeño Kd y grande Ki')
Ahora vemos que la respuesta es mucho más rápida que antes, pero
el Ki grande ha empeorado la respuesta transitoria (gran sobrepico).
Incrementemos Kd para reducir el sobrepico. Vuelva al archivo-m y
cambie Kd a 10
J=0.01;
b=0.1;K=0.01;R=1;L=0.5;
num=K;
den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];
Kp=100;
Ki=200;
Kd=10;
numc=[Kd Kp Ki];
denc=[0 1 0];
numa=conv(num,numc);
dena=conv(den,denc);
[numac,denac]=cloop(numa,dena);
step(numac,denac);grid
title('Control PID con pequeño Kd=10 y grande Ki')
Entonces sabemos que si usamos un controlador PID con
Kp=100,
Ki=200,
Kd=10,
todos nuestros requerimientos de diseño serán satisfechos.
· tiempo de establecimiento de 2 seg
· sobrepaso menor que el 5%
· Error de estado estacionario 1%