How to put anti wind up (integrator clamping) for PI in simulink

119 ビュー (過去 30 日間)
Ramu Nair R
Ramu Nair R 2018 年 1 月 12 日
回答済み: sanjeev 2019 年 12 月 11 日
I am using saturation block, but that creates error.

回答 (3 件)

Birdman
Birdman 2018 年 1 月 12 日
You don't have to create anything on your own. Go to PID Controller block in Simulink, double click it, open PID Advanced part of it. Check Limit output part and then the Anti-windup method will become visible. Then, you can choose clamping as a method. Hope this helps.
  2 件のコメント
Ramu Nair R
Ramu Nair R 2018 年 1 月 12 日
Thanks for your answer. But i would like to make one myself.
Birdman
Birdman 2018 年 1 月 12 日
That is also possible. Again, go to PID Controller and set its anti-windup method as Clamping as I said before. Click Apply and close the Block Parameters pane. Then, right click PID Controller and select Mask->Look Under Mask. You will encounter a block diagram as attached in figure. You can make one for yourself.

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


John Harris
John Harris 2018 年 6 月 14 日
The PID controller uses the Saturation block. If you don't want a Saturation block, or if your max and min are dynamic, you need to roll your own. The logic is something like,
if(in>max); out=max;
elseif(in<min); out=min;
else; out=in;
end
This logic could be put in a subsystem using any of the following:
* relative operators & Switches
* relative operators, Enabled Subsystems, Merge
* if block, If-Action subsystems, Merge,
and then your subsystem could be a block in your custom library...you could find it useful again.

sanjeev
sanjeev 2019 年 12 月 11 日
Hi,
Please find PID with Anti Wind-up from Astrom book.
K: proportional gain,
K/Ti: integral gain,
KTd: derivative gain,
Tt = sqrt(Ti*Td)
Actuator model = Saturation block (you can define upper and lower depends on hardware you are using)
es = control implemented - control generated

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by