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.

回答(1 个)
Jon
2021-1-5
0 个投票
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 个评论
Adeel Ashraf
2021-1-7
Jon
2021-1-8
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
2023-9-6
Hi Jon,
Could you explain with equations how you choose the inital condition as 1800/K_i ?
Best regards;
Jon
2023-9-6
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
类别
在 帮助中心 和 File Exchange 中查找有关 Real-Time PID Autotuning 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
