Simulink - PID Controller Tuning - Strange graphs

16 Ansichten (letzte 30 Tage)
Milan Hrstka
Milan Hrstka am 9 Apr. 2022
Kommentiert: Sam Chak am 9 Apr. 2022
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 Kommentare
Milan Hrstka
Milan Hrstka am 9 Apr. 2022
It is set like this
Sam Chak
Sam Chak am 9 Apr. 2022
Bearbeitet: Sam Chak am 9 Apr. 2022
Edit: moved my comment to Answer.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Sam Chak
Sam Chak am 9 Apr. 2022
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 Kommentare
Milan Hrstka
Milan Hrstka am 9 Apr. 2022
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 am 9 Apr. 2022
I think i just figured it out. I had bad value in step block by mistake.
Thanks very much!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Sam Chak
Sam Chak am 9 Apr. 2022
Bearbeitet: Sam Chak am 9 Apr. 2022
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 Kommentare
Milan Hrstka
Milan Hrstka am 9 Apr. 2022
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 am 9 Apr. 2022
👍 Good to hear that it works!

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by