Find a PID Controller
9 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
River Rock
le 24 Déc 2012
Réponse apportée : mano
le 6 Août 2024
Hi
I want to find a PID Controller for the following process:
Hp(s) = 1 / (s^2 + 1)
or Hp = tf (1, [1 0 1] );
Performance requirements: overshoot < 5%, settling time < 3 sec, steady-state error = 0.
I tried to use pidtool(H) and none of the available pid types meet the performance requirements.
Do you have any suggestion on how to find the optimal controller using Matlab / Simulink ?
Thanks
0 commentaires
Réponse acceptée
Azzi Abdelmalek
le 24 Déc 2012
Modifié(e) : Azzi Abdelmalek
le 24 Déc 2012
Hp=tf (1, [1 0 1] );
[kpid,info] = pidtune(Hp,'pid')
Then simulate your system using tune (in PID block) to find the desired values of kp ki and kd
you will find approximately
kp=83
ki=19
kd=32
2 commentaires
Azzi Abdelmalek
le 25 Déc 2012
Modifié(e) : Azzi Abdelmalek
le 25 Déc 2012
You have to do it manualy, adjust the time (lower then expected) then decrease the kp to reduce the overshoot
Plus de réponses (1)
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!