Documente Academic
Documente Profesional
Documente Cultură
Podemos definir un controlador PID en MATLAB utilizando la funcin de transferencia directamente, por
ejemplo
Kp = 1;
Ki = 1;
Kd = 1;
s = tf('s');
C = Kp + Ki/s + Kd*s
Alternativamente, podemos usar el objeto controlador pid de MATLAB para generar un controlador de
tiempo continuo equivalente como sigue:
C = pid(Kp,Ki,Kd)
Vamos a convertir el objeto pid a una funcin de transferencia para ver que produce el mismo resultado
que anteriormente:
tf(C)
t = 0:0.01:2;
step(T,t)
Control Proporcional-Derivado
Kp = 300;
Kd = 10;
C = pid(Kp,0,Kd)
T = feedback(C*P,1)
t = 0:0.01:2;
step(T,t)
Control Proporcional-Integral
t = 0:0.01:2;
step(T,t)
Control Proporcional-Integral-Derivado
Despus de varios ensayos y errores, las ganancias = 350, = 300 y = 50 proporcionaron la respuesta
deseada.
Kp = 350;
Ki = 300;
Kd = 50;
C = pid(Kp,Ki,Kd)
T = feedback(C*P,1);
t = 0:0.01:2;
step(T,t)
La respuesta al paso mostrada es ms lenta que el controlador proporcional que diseamos a mano.
Mostrar parmetros en la parte superior derecha. La constante de ganancia proporcional, Kp, es menor
que la que usamos, Kp = 94,85 <300.
Ahora podemos ajustar los parmetros del controlador y ver la respuesta resultante en la ventana GUI.
Arrastro el control deslizante de tiempo slider a la derecha hasta 0.14s. La respuesta se hace ms
rpida, y podemos ver que Kp est ahora ms cerca del valor manual. Tambin podemos ver todos los
dems parmetros de rendimiento y robustez del sistema.
Ahora intentemos disear un controlador PID para nuestro sistema. Especificando el controlador C, como
segundo parmetro, pidtool disear otro controlador PID (en lugar de P o PI) y comparar la respuesta
del sistema con el controlador automatizado con el de la lnea de base.
Codigo:
pidtool(P,C)
Vemos en la ventana de salida que el controlador automatizado responde ms lentamente y muestra
ms sobrepaso que la lnea de base. Ahora elijo la opcin de desing mode: frecuency domeain, que
revela ms parmetros de ajuste