Derivative term in temperature loops

P

Thread Starter

Pat Levinson

I've read in a few recent posts that the derivative term is extremely important for PID-controlled temperature loops. Why is this true specifically for temp loops? I know that in general (not only for temperature) an optimally tuned PID controller will perform better than a PI, but what makes temperature loops in particular so dependant on the D-term? In my case, I've done a lot of temperature loops with only P+I, and they work pretty well.

Perhaps in many of my cases a PID might have performed better, if I had spent the time and/or had the means to perform the open or closed loop tests required to fine tune a PID with Ziegler-Nichols, IAE, ITAE or whichever criterion available. In my case, I prefer not to mess with the D-term (except maybe through formulas when I have the 1st order process model), maybe because I don't have the "feel" with it as I have with the P or I terms.

In summary, in which particular type of temperature loops is the D-term very important?

Regards,
Pat
 
_______Quite a chapter your question _________
In year 1992. I knew no system having derivative that could be called derivative. Things in controllers are numerical approximations. Derivative requires more terms than usually available. Otherwise derivative is incorrect.
Recently Expertune said "don't use derivative" I agree, because of the above.
We had a beautiful PID temperature loop controlling temperature in the 120000 lbs holding furnace. The process gain changed so much between small load and full load, that finally we came back to simple ON/OFF.
Correction: Bailey block 157 was adequate for derivative.
In the case the process is flowing, a good algorithm is the LEAD/LAG. Quick correct. You can add little integral.
A process that flows away of the temperture measuring device, is a "memory process" (so to speak). It contains two main informations:
1_the rate of change
2_the heat quantity to add/remove.
The integral looks afterwards (after it sees the offset from set point).
The derivative sees the rate of change NOW.
If the load changes too, then you must have a mass flow loop feedforward to compute the heat quantity (±).
In fact, if your fedforward loop is well dressed, the PID has nothing to do: this is the ideal controller. THEN, if your system has poor derivative, you don't need D.
Does this brief hurt your academics ?
 
A

Anthony Kerstens

Any temperature process I've ever seen was slowy changing. The derivative contribution to a slowly changing loop would be largely due to signal
noise.

As such, derivative is not usually desireable in temperature control loops.

Anthony Kerstens P.Eng.
 
M
Pat,

There are many aspects that can be covered in terms of Derivative and temperature. First, let's cover the "keep aways". Never use D when a motor is involved such as a gas fired furnace. Never use a D term when there is a transporting medium like air or water. If you are closely coupled like directly heating steel with a heater band then D is essential. It overcomes the thermal inertia when tying to make a change and when you are on setpoint, it reacts quickly if it sees the process trying to stray. D on error (as opposed to PV) will give agressive response to setpoint changes. In this case, it has a stabilizing effect rather than a de-stabilizing
effect. My Nyquist days are long since over but if you look at the phase shift it places on the loop you will see this.

Setting it up is simple. For a well behaved load D equals I divided by 6. I put the loop into oscillation, set I equal to the period of oscillation and set D to one sixth of I. Then I widen the Pb until I get the performance I want.

The question is not so much what makes temperature more suited for D. It is really, what makes the others less suited. This usually comes down to the type of actuator as I mentioned above. In pressure or flow control there is
usually some kind of transport lag. In this case D will induce an oscillation. in motor controlled processes, you must ramp up to the correct value.

Hope this helps,
Mitch
 
M

Mark Blunier

> I've read in a few recent posts that the derivative
> term is extremely important for PID-controlled
> temperature loops. Why is this true specifically for
> temp loops?

First, some simple explanation of the P,I, and D.
If you were using a PID to control the distance between cars, P would be apply the breaks as you get closer to the vehicle in front of you. I is adjust the breaks a little bit, so that you will be 2 seconds behind the vehicle, and D is, I'm gaining on the guy fast, so apply more breaks. If you know that you can break quick when you see that you are coming up on someone quick, you might be inclined to shorten your following distance to 1 second instead of 2. Likewise, the derivative does the same thing with temperature control. It allows you tighter control to your setpoint. It isn't so much that temperature needs derivative more than other loops, but
rather you can use it more than other loops. Temperature readings are usually pretty smooth signals. Levels, flows, pressures, and etc, often are not, and make it harder to have high proportional gain, and very difficult to use
derivative gains, even with the use of filters.

> I know that in general (not only for
> temperature) an optimally tuned PID controller will
> perform better than a PI, but what makes temperature
> loops in particular so dependant on the D-term? In my
> case, I've done a lot of temperature loops with only
> P+I, and they work pretty well.

My experience has been the same.

> Perhaps in many of my cases a PID might have performed
> better, if I had spent the time and/or had the means
> to perform the open or closed loop tests required to
> fine tune a PID with Ziegler-Nichols, IAE, ITAE or
> whichever criterion available. In my case, I prefer
> not to mess with the D-term (except maybe through
> formulas when I have the 1st order process model),
> maybe because I don't have the "feel" with it as I
> have with the P or I terms.

My experience has been the same

> In summary, in which particular type of temperature
> loops is the D-term very important, and why?

The loops that I use derivative are the loops
where the loops have very slow cycle times (20+ minutes), and those I usually do a Ziegler-Nichols method. With slow loops using D allows higher P and I gains without the corresponding large overshoots. It also tends to shorten the frequency of the swings. This means that it will also be able to handle larger or quicker rate
changes to the process.

Mark Blunier
Any opinions expressed in this message are not necessarily those of the company.
 
M
Anthony,

Not true at all. You put in a double pole filter at ten times the frequency of the Derivative to kill the noise. The point is that Derivative kicks the loop in the head since it IS so slowly moving.

Mitch
 
E
The derivative term provides "anticipation" to prevent overshoot. The physical equivalent would be to put a small heater on the temperature
sensor to bring it to the setpoint faster than its normal response.
Regards
Erich Mertz
 
B

Bruce Durdle

Pat,
The three terms of a PID controller affect the overall shape of the response differently - the I term has no efferct on the initial response, but afects the tail of the response. The D term affects the inoitial response and has no effect in the long term.

D is also adversely affected by process noise, and for noisy parameters such as flow the effect of the noise far outweighs any benefits.
Temperature being an inherently smooth parameter is not affected by noise and D can be used on temperature loops.

Temperature is also an inventory variable, and in most temperature processes the storage of thermal energy in the process makes the response to disturbances quite slow. By using the D term, the effect of the initial change in measurement is amplified to give a much greater change in
controller output than would be the case without it, and this can therefore minimise the total temperature deviation.

Just a note - as has been said here many times before, you cannot "calculate" controller settings. You can "estimate" suitable values for the tuning constants and use those as the starting poiint for a successive approximation or trial and error approach to the final values. Also be aware that many variations on the D implementation exist, and the standard theories may not necessarily apply.

Bruce.
 
J

Johan Bengtsson

A lot of answers already, but I give mine as well...

The usefulness of D does not really have to do with if it is controlling a temperature or not or if it is a slow process or not but how the process acts and how fast you want it tuned
compared to it's natural speed.

And this applies probably more often to temperature loops than to other but it isn't a rule.

Ok, what makes the D term useful? If you have a higher order process you will get a lag between
output changes and response, for example: When the otput goes up the heater should get warmer
When the heater is becoming warmer the thing (whatever it is) starts to get warmer. When the thing you want to heat becomes warmer the sensor begins to be warmer

Before you start to se any obvious temperature change the heater is probably quite warm and even if you turn it down it will continue to give away heat.

The above senario (ie haveing a higher than one order process) can be applied to some other processes as well. If the individual time constants are relatively close (less than a factor 5 or something) it makes the process act as a higher order process and in those the D-term is useful. If you really only have one long time constant then the D-term is of lesser use. The reason that the D-term is useful is that it will react fast when the change becomes visible, not wait until it is complete. You can roughly say that the D part looks as far into the future as the D time you set and if you within that future crosses the setpoint is is time to act now. It is a simplification of the operation but anyway. this means greater D time = more action and more look ahead.

You can control without using the D term, but you have to do it more slowly, if the D term is used you stabilizes the control and can make the other terms (P and I) do a faster work. Just applying D by itself will not make the control any faster.

D takes whatever noice you have and amplifies it, this means that if you don't need the D term then don't use it. If you are happy with the resposes you get without using D then don't bother!

For slow processes you can apply a large filter and get most noice killed without loosing much of the real information and in those cases it is easier to apply the D part.

I hope this explains why so many people say "use D for slow processes" "use D on temperature" and similar.

If you don't know the tuning goal you will probably miss it!


/Johan Bengtsson

----------------------------------------
P&L, Innovation in training
Box 252, S-281 23 H{ssleholm SWEDEN
Tel: +46 451 49 460, Fax: +46 451 89 833
E-mail: [email protected]
Internet: http://www.pol.se/
----------------------------------------
 
Top