How to give my PI controller initial value?

As my system initialize at 1800 RPM. I want to give inital value to my PI controller to remove the swing curve as you can see in my scope result. So that I can reduce the simulation time.
But I don't know how to do it.

Antworten (1)

Jon
Jon am 5 Jan. 2021

0 Stimmen

If you want the inital output of your PI controller to be 1800 when the error signal is zero then set the initial value of the integrator to 1800/I where I is the integrator gain

4 Kommentare

Adeel Ashraf
Adeel Ashraf am 7 Jan. 2021
Jon thank you for helping me.
I tried as you said but I don't know find any difference in the result. I don't know where I'm doing the mistake. Do we have to apply integer gain as a constant value or variable.
you ca see what I did so far.
Jon
Jon am 8 Jan. 2021
Hi Adeel,
It looks like you are on the right track, but I think I need to see your model to understand better what is going on. Could you please attach your .slx file or if that is really huge a simple example model that recreates the problem you are having. Thanks
Hedi BASBAS
Hedi BASBAS am 6 Sep. 2023
Hi Jon,
Could you explain with equations how you choose the inital condition as 1800/K_i ?
Best regards;
Jon
Jon am 6 Sep. 2023
For basic PI control the controller output, u is given by u = K_p*e + K_i*E, where e = (y_setpoint - y) and E is the state representing the integrated error. Assume you start your controller with y=y_sestpoint so the error e is zero. Then in order for u = 1800, we have 1800 = K_p*0 + K_i*E. Solving this for E, the initial state of the integrated error, gives E = 1800/K_i

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Simulink finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 5 Jan. 2021

Kommentiert:

Jon
am 6 Sep. 2023

Community Treasure Hunt

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

Start Hunting!

Translated by