How can I AUTOMATICALLY tune PID controller to get a certain overshoot and settling time?

3 次查看(过去 30 天)
I'm trying to tune the PID to get a certain percentage overshoot and settling time however manual tuning is very tough can I do that automatically by simply specifying the parameters? I am using simulink.
  4 个评论
Sam Chak
Sam Chak 2022-12-24
编辑:Sam Chak 2022-12-24
Can you post a new question with the uncompenstated plant transfer function/state-space model?
It is difficult for some people because the formulas for the desired PID gains , , expressed as functions of percent overshoot and settling time , are not explicitly stated in the textbooks, for some unknown reasons.
If you follow the conventional way of design, then the Root Locus approach is the most convenient way for both experts and non-experts designers. First, you need to view the root locus of the uncompenstated system by entering the command
controlSystemDesigner('rlocus', sys)
In the Control System Designer app, you can specify the design requirement such as the percent overshoot . The requirement will show an exclusion region, which is a yellow shaded area. Do the same for the settling time .
To satisfy the requirements, your design task is to add/place the compensator poles and zeros "somewhere", and then adjust the Loop gain by clicking on one of the "magenta dot markers" and dragging it along the root locus until a response plot stay outside of the associated exclusion regions.

请先登录,再进行评论。

回答(1 个)

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2022-12-23
编辑:Sulaymon Eshkabilov 2022-12-23

类别

Help CenterFile Exchange 中查找有关 PID Controller Tuning 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by