How can I AUTOMATICALLY tune PID controller to get a certain overshoot and settling time?
조회 수: 20 (최근 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
2022년 12월 24일
편집: Sam Chak
2022년 12월 24일
Hi @Muhammad
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개)
참고 항목
카테고리
Help Center 및 File Exchange에서 PID Controller Tuning에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!