Anti-windup in discrete PI controller - Page 1
Forum section: electronics / beginners

author: bonzer
author_rank: Regular Contributor
timestamp: January 03, 2020, 11:26:39 pm
content: Hello everyone! Please help me to understand one thing.Here's the subject I'm talking about. I also attached an image containing the screen of the page just to have it here.https://www.mathworks.com/help/physmod/sps/ref/discretepicontroller.htmlI know this control scheme is a bit complex but it's a bit urgent so for now I need to get just how K_aw influences the overall response. I mean increasing it would usually make my response with less overshoot? (and therefore more saturated). Is it true?

author: ogden
author_rank: Super Contributor
timestamp: January 03, 2020, 11:47:27 pm
content: Don't waste your "urgent" time waiting for answer in internet forum where anybody can say anything. Try to find answers yourself, by learning. Good place to start:https://www.embedded.com/pid-without-a-phd/

author: unitedatoms
author_rank: Frequent Contributor
timestamp: January 04, 2020, 12:17:43 am
content: May be the point of anti wind up is to prevent the integrator to accumulate indefinitely. The loop must eventually saturate (clip) the integrator and also discharge it over time.The whole PID topic is sudo science in my humble opinion. Don't dwell on minor element of this complex example, because every new example is more and more complex (Kalman filter etc). They (Control theories) are abyss of incomprehensible abstractions black boxed into accidentally successful local solutions. They are fragile and never universal. Any next kind of plant to control erases all prior art and demands new tuning and research. It is best what one can have for things like flight control or nuclear reactors, but the failure is that controls never existed in context of fully unattended run with highly unpredictable inputs.

author: IanB
author_rank: Super Contributor
timestamp: January 04, 2020, 12:43:46 am
content: Quote from: bonzer on January 03, 2020, 11:26:39 pmShort answer:K_awhas no influence on the response in normal control operation.Reason: In normal operationu(k)=usat(k), thereforedu(k)= 0. Ifdu(k)is zero the control response is unaffected byK_aw.Thedu(k)feedback loop is only there to prevent integral windup if the output saturates, when by definition the controller is not controlling anymore.

author: bonzer
author_rank: Regular Contributor
timestamp: January 04, 2020, 11:23:50 pm
content: Quote from: IanB on January 04, 2020, 12:43:46 amThanks for your answer. You helped me to understand better how it works.I had the same feeling after a lab session where I tried different values but no one changed my response. In my opinion it was due to the fact that I was far from best case stability (for instance maybe 30° of phase margin and not 80°, or even worse) see the screen of simulation I did after with same gain values used in lab.But you can see another image attached where I impose a good phase margin condition and therefore I have less overshoot and you can see that it actually does an effect. For an appropriate value (k=0.005, time scale is zoomed but for successive instants it's in steady state) it reduces my overshoot and therefore the settling time. However it has no effect on the rise time (and so on the speed) because it depends on the saturation level.