Find a PID Controller
9 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Azzi Abdelmalek
2012-12-24
编辑:Azzi Abdelmalek
2012-12-24
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 个评论
Azzi Abdelmalek
2012-12-25
编辑:Azzi Abdelmalek
2012-12-25
You have to do it manualy, adjust the time (lower then expected) then decrease the kp to reduce the overshoot
更多回答(1 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!