Simulink - PID Controller Tuning - Strange graphs

18 ビュー (過去 30 日間)
Milan Hrstka
Milan Hrstka 2022 年 4 月 9 日
コメント済み: Sam Chak 2022 年 4 月 9 日
Hello, I'm trying to tune PID controller in Simulink (system with delay). My "model" in Simulink looks like this:
I used Cohen-Coon method to find parameters of PID controller. Input parameters for PID controller are all right but when i start the simulation I keep getting these "not smooth" graphs (via picture) and I don't know why. I already tried to change model settings -> solver -> min and max step size but there is no difference.
I would be grateful for any help with this problem.
  3 件のコメント
Milan Hrstka
Milan Hrstka 2022 年 4 月 9 日
It is set like this
Sam Chak
Sam Chak 2022 年 4 月 9 日
編集済み: Sam Chak 2022 年 4 月 9 日
Edit: moved my comment to Answer.

サインインしてコメントする。

採用された回答

Sam Chak
Sam Chak 2022 年 4 月 9 日
The spikes in the your original output signal was caused by the derivative filter in the PID controller block. More accurately, it's because you tuned the PID control gains manually using the Cohen-Coon method and directly inserted these 3 values into the block, without taking the effect of the derivative filter (N = 100 by default) into account.
There are generally two approaches to handle this situation:
  1. Tune the filter coefficient until you obtain a desired smooth output.
  2. Use the Ideal PID controller instead.
  2 件のコメント
Milan Hrstka
Milan Hrstka 2022 年 4 月 9 日
Thank you very much for your time, i appreciate it.
I tried to create the same model that you did (the ideal PID controller) and my results are not same to yours. I don't know where might be the problem.
Milan Hrstka
Milan Hrstka 2022 年 4 月 9 日
I think i just figured it out. I had bad value in step block by mistake.
Thanks very much!

サインインしてコメントする。

その他の回答 (1 件)

Sam Chak
Sam Chak 2022 年 4 月 9 日
編集済み: Sam Chak 2022 年 4 月 9 日
This is strange.
I only set the max step size = 1e-3 in the solver config paramaters to produce a smoother output signal. The rest of the settings remain unchanged.
Can you check the each value in the control gain block?
P = 0.8958
I = 0.210930325
D = 0.6073524
  2 件のコメント
Milan Hrstka
Milan Hrstka 2022 年 4 月 9 日
It was probably because of Step time value in Step block (it was 1 and I changed it to 0). Now it seems to be smooth.
Sam Chak
Sam Chak 2022 年 4 月 9 日
👍 Good to hear that it works!

サインインしてコメントする。

カテゴリ

Help Center および File ExchangePID Controller Tuning についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by