When not to use PID-controllers
When not to use PID-controllers
(OP)
Hello. How do you know when you cannot apply PID-controllers to a system? Have you had an experience where you first thought that a PID-controller might work but eventually find it impossible? How would you decide?





RE: When not to use PID-controllers
What are your applications? You cannot just say that PID is needed or not. It depends a lot.
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: When not to use PID-controllers
I can only think of a couple cases:
1) when I need the controller to increase or decrease the dB/dec by more than 20 or -20, I know that I can't use a PID-controller;
2) if I need to extend the bandwidth, a PID controller doesn't give me the zeros to use.
But these two cases seem obvious that PID controllers cannot be used. I was wondering what case you might have where it is not as obvious.
RE: When not to use PID-controllers
1) dB or dec isn't an output I'm familiar with on PID controllers..
2) And again, Bandwidth isn't a common term to use in the same sentence with PID unless it's a discussion about sensor response, etc.
But a system like:
1) A batch-like process where input/s might be lumped.
2) Horribly non-linear systems like ph control.
3) A system dependant on noisy inputs.
4) A system with easy to wear out actuators.
5) A system that would benefit from predictive control.
6) A system with an easy to model response.
Keith Cress
Flamin Systems, Inc.- http://www.flaminsystems.com
RE: When not to use PID-controllers
What would you use for (3) when the actuators are worn easily? What are the grey areas in terms of applications where PID-controllers work sometimes only?
- Thanks
RE: When not to use PID-controllers
Based on what?
Why not? I use it all the time.
Peter Nachtwey
RE: When not to use PID-controllers
Your second question.
I base that on successful applications in paper machines and steel mills for more than forty years.
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: When not to use PID-controllers
RE: When not to use PID-controllers
How did you compensate for dead time in a paper mill. Are you saying you used only a simple PI? No model or Smith Predictor?
What about an integrating application like position control. Is a P gain good enough there? Why or why not?
I often come across systems that require a second derivative gain along with velocity, acceleration and jerk feed forwards. Obviously a standard simple PID alone will not do. It must be augmented in some way. Even knowing when to use a PID vs a I-PD can be a big help.
ecwal's question is very open ended and is good for a class room discussion. There are so many different types of systems out there that use different types of control. I am waiting for ecwal to explain why he needs bandwidth and why the PID didn't work. This makes me believe he had a motion system in mind but he hasn't made that clear yet.
BTW, did anybody look at thread just below this one about different PIDs?
RE: When not to use PID-controllers
----------------------------------
Sometimes I only open my mouth to swap feet...
RE: When not to use PID-controllers
If one wants more bandwidth one must just move the closed loop poles farther to the left or make them more negative without have the zeros mess things up. When zeros are complex they can cause the gain to drop sharply like a notch filter.
RE: When not to use PID-controllers
In some cases of robust control where some parameters of the plant may vary, the boundary of the closed-loop gain takes the shape of a cylinder on the Nichols chart. In the design, I would use zeros and poles on the controller to make shape the open-loop response. When I don't have enough zeros and poles to use, I would have to increase the gain in the middle in order to make it fall later outside the cylindrical boundary.
So suppose I have requirements on the gain margin or phase margin, the open-loop plots can tell me whether a controller from the PID family can stabilize the system. However I assumed that the PID family can only give at most 90 degree phase lag.
RE: When not to use PID-controllers
1) One and two pole systems.
2) Single and double integrator systems.
3) Both of the above with moderate delays
4) Both of the above with a slow Right Half Plane Zero.
5) All of the above with moderate non-linearities.
6) All of the above with moderate time dependent changes.
The above list is not meant to be all inclusive.
RE: When not to use PID-controllers
Sorry. Couldn't resist. I was really trying to figure out what your comment meant, but that version of the question was nagging me even after I figured it out. Had to get it off my mind by dumping it here!
RE: When not to use PID-controllers
http://wilk4.com/humor/humore30.htm
See the joke about more poles.
RE: When not to use PID-controllers
However someone mentioned above that a PI controller is more likely to be used than a PID. This is generally true because the "real" world is pretty noisy environment. The D term essentially behaves as a high pass filter on the error signal. Consequently, though D-control can be beneficial, it should be implemented judiciously as it easily introduces instability in a system and makes it more sensitive to noise.
Hope this helps...
RE: When not to use PID-controllers
The OP wasn't very specific. The question could come from a university or a guy practising at the shop floor. I told her/him my opinion.
Peter asked on what I based that opinion. It is mostly drive systems. And some other applications. But I never do anything where a long dead-time gets into the loop (like g/m2 control or anything like that). Most of the loops I see are rather simple. A sum of short times plus a first order delay or an integrator. And that's where PI works well.
Feed forward is used a lot, but I do not see that as a controller characteristic. It, as its name says, a parallel path that takes care of large changes. Acceleration compensation in a winder is one such application where the feed-forward signal usually is totaly dominant. The web tension controller usually doesn't move much when the feed-forward is correctly adjusted and the inertia calculation is OK.
I have been thinking. How come that there is so much talk about different controller types when we do not seem to need them IRL? I guess that it is because most practical solutions are using cascaded loops where each loop controls its own variable. Take a drive for instance. There is the inner current loop (or torque loop), then the speed loop controlling the current set-point, and around that a web tension, or level control or air pressure or whatever, loop.
Dividing and conquering like this seems to be the rule today. And then PI works very well then.
I can understand that there are many exotic plants that need unusual controllers. But I have to admit that I have been lucky to not have seen them. Or I have been able to handle them using simple techniques. Time varying and highly non-linear plants are something I either try to avoid or use an observer/model for. But, I have to admit again, that is also something I mostly leave for the guys interested in that kind of problems.
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: When not to use PID-controllers
OK, but you must realize that drive systems are just one of many types of systems that are controlled by PIDs or PIs. What bothers me is that people make statements about how to tune the PID often without knowing anything about the system that needs to be tuned. I have worked out the formulas for tuning many different types of systems and there is a general theme but the details about whether to use or not use a derivative gain or even a second derivative gain is dependent on the model of the system.
Noise should not prevent one from using the derivative gain. When I am confronted with this I need to know the source of the 'noise'.
1. Is it electrical?
2. Is it poor feedback resolution?
3. Is the process itself noisy?
There is no excuse for the first two reasons. The third reason can be over come by using a filter, an observer or even a Kalman type of filter.
About cascaded loops.
One should only use a cascade loop when there is a different and more accurate feedback device available for the inner loops. It makes no sense to differentiate an encoder to get feedback for an inner velocity loop. This is because the inner and outer loops can be combined to make a simpler controller.
Think about this"
The proportional gain for the outer loop is doing the same thing as the integrator gain for the inner velocity loop. The proportional gain for the inner velocity loop is doing the same thing as the derivative gain in a outer position loop.
RE: When not to use PID-controllers
That said, I must comment on what you say about making controllers simple. "This is because the inner and outer loops can be combined to make a simpler controller."
That is, in my view, a reasoning that leads to complex solutions. It is then that you need other controller structures than the simple PI, sometimes PID, controller with the problems it brings with it.
The need to make the controller "simple" was perhaps real back in the forties when every controller did contain a set of thermionic valves that had low realiability. Combining loops to make the controller "simple" (less valves) was a way of keeping MTBF up (and cost and heat down).
That trend was still strong during the sixties but abandoned in the seventies when the integrated opamps became available. And, today, all these things are done in algorithms, so the "cost", reliability-wise, for an extra loop is not high.
The cost for complex combined loops, that are poorly designed and that do not correspond to what is happening in the plant, is high though.
It is a fascinating area for research and for scientific papers, but it should be applied to real world systems with some carefulness and restriction. I live in Sweden and it is close to impossible not to meet guys like C-J Åström, P Ljung, Gunnar Bengtsson etc and I have had discussions about these topics with them. I have also been involved in the rebuild of a few autotuning projects where the "combined loop economy" made a paper machine's runnability close to zero.
There are many ways of looking at these things. And all are more or less valid. I base my view on what I have lived through - and continue to live through - during forty+ active years in industry.
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: When not to use PID-controllers
"Noise should not prevent one from using the derivative gain."
Noise can have lots of origins, and it may be cost-prohibitive to address it completely via "filters". For example, mechanical noise, which leads to torque oscillations, which reverbrate into the electrical system (or vice versa). Depending on the type of system, addition of mechananical damping could be expensive or may not really even be feasible. That said, certainly a "filter" on the electrical side can help, and prudent to implement, as will reduce some harmonic content, but will not remove all. If your physical system is relatively simple, "noise" may not be terribly significant. However if you are dealing with huge loads turning on/off such as in a shipboard power distribution system, electro-mechanical-hydraulic automotive cam phaser, etc. the "noise" is inevitable and inescapable, and will definitely may limit implementation of the "D" term of a PID controller. :)
RE: When not to use PID-controllers
Use derivative. If it causes problems reduce the amount or turn it off. This is an advantage of electronic controls over pneumatic controls - the derivative can be turned off with electronic controls. In the pneumatic days the derivative function was a hardware module. Once installed, typically the amount could be turned down to the bottom setting but not off.
RE: When not to use PID-controllers
2. A PI works well for plants with 1 pole.
No one has answered why a derivative gain should be off. Telmatrix, could you provide an example? I have motion systems where the shaft was bent an I could see the effect of the bent shaft on the controller output.
skogsgurra, I know when not to apply a PID. I would put it another way. I know when to use a PI or PID or I-PD. I know when to use feed forwards. I know when to use observers, Kalman filters etc. What I need is specifics.
For the most part some form of PID along with feed forwards will do. The feed forwards should be able to predict the control output within 5%, The PID , or some of of it, should be able to correct the last 5% with little problem.
There are also cases where an observer or Kalman filter will provide better feedback for the controller.
I don't think this is a matter of PID vs something else but more spme form of PID + something else.
Peter Nachtwey
RE: When not to use PID-controllers
You asked:
No one has answered why a derivative gain should be off. Telmatrix, could you provide an example? I have motion systems where the shaft was bent an I could see the effect of the bent shaft on the controller output.
I never said explicitly that derivative gain should be off, just judiously applied, but yeah, perhaps indeed should off for the reasons given.
You seem to be a textbook guy, so an example outside of the noise reason, it is easy to visualize. The "D" term is used to anticipate the future, that is, reduce overshoot, hence if your system is sufficiently damped, the derivative gain should be off as it is not even needed.
You also said:
1. A PID works well for only a small number of plants. There are plants with two poles.
Ans: It appears that you may be too engrossed in that textbook theory. See my first post in this thread. PID is quite versatile in fact, and there are many different permutations. By the time one throws in the motor, load(s), semiconductors, etc., most systems have far more than just 2 poles, it is really a question where the dominant poles lie, and how stability can be managed, and managed cost effectively, right?
2. A PI works well for plants with 1 pole.
Ans: Sure, no dispute here, but will work in some more complex scenarios as well. BTW... A "plant" with "1" pole? What real life plant has only "1" pole? Even the simplest DCPM motor alone has 2 poles (either imaginary or real - depends on motor construction). This does not include the rest of the system the motor resides.
RE: When not to use PID-controllers
None, in reality. There may be systems where only one pole is dominant. Only those systems can be tuned using a PI controller and only if one doesn't excite the higher order poles.
The point I have moving towards is that PI and PID controllers only have enough gains to place the poles for the simplest of systems and one must be able do use the derivative gains to tune the system with two or more poles properly.
The OP asked when not to use a PID controller. One answer is when the plant can't be reasonably be modeled as having two dominant poles. A PID controller may for for a system such as...
(Ka*omega^2)/(s*(s^2+2*zeta*omega*s+omega^2)) where
Ka is the actuator gain
zeta is the damping factor
omega is the natural frequency
but only the damping factor is high. Even then one can't get a nice critically damped response except at one theoretical spot. A second derivative gain is required because the actuator has three poles. Calculating the acceleration from position feedback is a little more work than calculating the velocity but it can be done.
RE: When not to use PID-controllers
BTW, you said:
Calculating the acceleration from position feedback is a little more work than calculating the velocity but it can be done.
Ah... A double derivative. Now that can be "noisy". :)