Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Abrimos la configuración del bloque del controlador lo cual será PI, le damos en la
configuración TUNE y nos arrojara una gráfica la cual moveremos la amplitud y el
tiempo que deseamos o el más óptimo en el PI.
Investigación:
Definición de margen de fase (MF).
Es el ángulo (en grados) que habría que restarle a la fase de G(s)*H(s) para volver
a M(s). Sobre las representaciones gráficas de la respuesta en frecuencia de
G(s)*H(s), es el ángulo que le falta a la fase llegar a -180° cuando la ganancia es
1(0 dB), si la ganancia es siempre inferior a 0 dB el margen se fase será infinito.
Es el valor por el que habría que multiplicar (o los dB que habría que sumar a) la
ganancia de G(s)*H(s), para que M(s) se vuelva inestable, en pocas palabras,
cuando la fase sea -180°la ganancia fuese 1 (0 dB).
Ejercicio 1
sys=zpk([],[-1 –1 -1],1)
sys =
1
-------
(s+1)^3
[C_pi,info]=pidtune(sys,'PI')
C_pi =
1
Kp + Ki * ---
s
info =
Stable: 1
CrossoverFrequency: 0.5205
PhaseMargin: 60.0000
T_pi=feedback(C_pi*sys,1);
step(T_pi)
Gráfica del ejercicio 1
Para agregar una frecuencia de cruce más alta se se agregara este siguiente
código. Comparando la respuesta a la función escalón en lazo cerrado de los dos
controladores.
sys =
1
-------
(s+1)^3
[C_pi_fast,info]=pidtune(sys,'PI',1.0)
C_pi_fast =
1
Kp + Ki * ---
s
with Kp = 2.83, Ki = 0.0495
info =
Stable: 1
CrossoverFrequency: 1
PhaseMargin: 43.9973
T_pi_fast=feedback(C_pi_fast*sys,1);
step(T_pi,T_pi_fast)
axis([0 30 0 1.4])
legend('PI','PI,fast')
sys =
1
-------
(s+1)^3
[C_pi_fast,info]=pidtune(sys,'PI',1.0)
C_pi_fast =
1
Kp + Ki * ---
s
info =
Stable: 1
CrossoverFrequency: 1
PhaseMargin: 43.9973
T_pi_fast=feedback(C_pi_fast*sys,1);
[C_pidf_fast,info] = pidtune(sys,'PIDF',1.0)
C_pidf_fast =
1 s
Kp + Ki * --- + Kd * --------
s Tf*s+1
info =
Stable: 1
CrossoverFrequency: 1
PhaseMargin: 60.0000
T_pidf_fast = feedback(C_pidf_fast*sys,1);
step(T_pi_fast, T_pidf_fast);
axis([0 30 0 1.4]);
legend('PI,fast','PIDF,fast');
sys =
1
-------
(s+1)^3
[C_pi_fast,info]=pidtune(sys,'PI',1.0)
C_pi_fast =
1
Kp + Ki * ---
s
info =
Stable: 1
CrossoverFrequency: 1
PhaseMargin: 43.9973
T_pi_fast=feedback(C_pi_fast*sys,1);
[C_pidf_fast,info] = pidtune(sys,'PIDF',1.0)
C_pidf_fast =
1 s
Kp + Ki * --- + Kd * --------
s Tf*s+1
info =
Stable: 1
CrossoverFrequency: 1
PhaseMargin: 60.0000
T_pidf_fast = feedback(C_pidf_fast*sys,1);
step(T_pi_fast, T_pidf_fast);
axis([0 30 0 1.4]);
legend('PI,fast','PIDF,fast');
S_pi_fast = feedback(sys,C_pi_fast);
S_pidf_fast = feedback(sys,C_pidf_fast);
step(S_pi_fast,S_pidf_fast);
axis([0 50 0 0.4]);
legend('PI,fast','PIDF,fast');