Professional Documents
Culture Documents
Controllers
ISA New Orleans 3-7-2013
Standards
Certification
Education & Training
Publishing
Conferences & Exhibits
Presenter
Greg is a retired Senior Fellow from Solutia/Monsanto and an ISA Fellow.
Greg was an adjunct professor in the Washington University Saint Louis
Chemical Engineering Department 2001-2004. Presently, Greg contracts as a
consultant in DeltaV R&D via CDI Process & Industrial and is a part time
employee of Experitec and MYNAH. Greg received the ISA Kermit Fischer
Environmental Award for pH control in 1991, the Control Magazine Engineer
of the Year Award for the Process Industry in 1994, was inducted into the
Control Process Automation Hall of Fame in 2001, was honored by InTech
Magazine in 2003 as one of the most influential innovators in automation, and
received the ISA Life Achievement Award in 2010. Greg is the author of 20
books on process control, his most recent being Advanced Temperature
Measurement and Control. Greg has been the monthly Control Talk
columnist for Control magazine since 2002 and has started a Control Talk
Blog. Gregs expertise is available on the Control Global and Emerson
modeling and control web sites:
http://community.controlglobal.com/controltalkblog
http://modelingandcontrol.com/author/Greg-McMillan/
Resources
(10) Make large setpoint changes that zip past valve dead band and nonlinearities.
(9) Change the setpoint to operate on the flat part of the titration curve.
(8) Select the tray with minimum process sensitivity for column temperature control.
(6) Decrease the time span so that just a couple data points are trended.
(5) Increase the reporting interval so that just a couple data points are trended.
(2) Increase the process variable scale span so it is at least 10x control region
(1) Increase the historian's data compression so changes are screened out
Signal
(%)
%CO1
step from
proportional
mode
seconds/repeat
%CO2 = %CO1
repeat from
Integral mode
%SP
Time
(seconds)
Contribution of Each PID Mode for a Step Change in the Set Point
Structure of PID on error (=1 and =1)
10
Eliminate offset
Minimize integrated error
Smooth movement of output
Limit cycles
Overshoot
Runaway of open loop unstable reactors
11
PV
SP
temperature
steam
valve
opens
SP
50%
PV
water
valve
opens
48
52
time
%CO
Controller is in Manual
Open Loop
Error Eo (%)
%PV
0.63Eo
Dead Time
(Time Delay)
%SP
Time
(seconds)
Open Loop
(process)
Time Constant
(Time Lag)
%CO
%SP
%SP
%PV
0.63%SP
Dead Time
(Time Delay)
Time
(seconds)
Closed Loop
Time Constant
(Time Lag)
Lambda ()
(9) When asked what the controller gain setting is, the answer is given in %.
(8) When asked what the controller reset time setting is, the answer is in repeats/min.
(3) Operators are placing bets on what loop will cause the next shutdown.
(2) The output limits are set to keep the valve from moving.
16
%
SCLR
%
SUB
SP
%PV
SCLR
PV
(e.u.)
PID
%
%
AO
SCLR
OUT
(e.u.)
%CO
MV
(e.u.)
Process
Equipment
PID
AI
DCS
Control
Valve
PV - Primary Variable
SV - Second Variable*
TV - Third Variable*
FV - Fourth Variable*
Sensing
Smart
Element
Transmitter PV
(e.u.)
Measurement
The scaler block (SCLR) that convert between engineering units of application and % of scale
used in PID algorithm is embedded hidden part of the Proportional-Integral-Derivative block (PID)
To compute controller tuning settings, the process variable and controller output
must be converted to % of scale and time units of dead times and time constants
must be same as time units of reset time and rate time settings!
Series Form
Form in analog controllers and early DCS available as a choice in most modern DCS
Gain
Inverse
Reset All signals are % of scale in PID algorithm but
Time inputs and outputs are in engineering units
%SP
filter
%PV
proportional
Rate
Time
integral
%CO
Filter Time =
Rate Time
filter
derivative
filter
Switch position for no derivative action
18
Parallel Form
Form in a few early DCS and PLC and in many control theory textbooks
Proportional
Gain Setting
%SP
Integral
Gain Setting
filter
%PV
proportional
All signals are % of scale in PID algorithm but
inputs and outputs are in engineering units
integral
%CO
Derivative
Gain Setting
derivative
filter
19
Gain
Inverse
Reset All signals are % of scale in PID algorithm but
Time inputs and outputs are in engineering units
%SP
filter
%PV
proportional
Rate
Time
integral
%CO
Filter Time =
Rate Time
filter
derivative
filter
20
* Back out positive feedback of Feedforward (*FF) and ISA Standard Form of
Proportional (*P) and Derivative (*D) modes with and factors
P = ( 1) Gain %SP
%SP
filter
Out2
%PV
FF
Filter Time =
Reset Time
Rate
Time
filter
%CO
D
*P
*FF
Switch position
for external
reset feedback
*D
filter
filter
Positive
Feedback
Feedforward
Filter Time =
Rate Time
derivative
E-R
Filter Time =
Reset Time
21
Ti ' + Td'
'
Kc =
K
c
Ti '
Interaction factor
Ti ' + Td'
'
'
'
Ti =
+
T
=
T
T
i
i
d
Ti '
To convert from Series to ISA Standard Form rate time:
Ti '
'
Td = '
T
d
Ti + Td'
Primed tuning settings are Series Form
Note that if the rate time is zero, the ISA Standard and Series Form settings are identical.
When using the ISA Standard Form, if the rate time is greater than the reset time the
response can become oscillatory. If the rate time exceeds the reset time, the response can
become unstable from a reversal of action form these modes. The Series Form inherently
prevents this instability by increasing the effective reset time as the rate time is increased.
22
25
(7) Does that flare out there always shoot up that high?
(2) Are you ready to put all your loops in Remote Cascade?
26
DCS
Process
SP
Drive Signal
Flow
SP
PID
Valve Positioner
PID
External
Reset
BKCAL
CO
External
Reset
BKCAL
AO
PID*
I/P
Relay
Control
Valve
Flow
Meter
Process
PV
PV
AI
Process
Sensor
Primary PV
Secondary SP
Secondary SP
Secondary CO
Primary PV
(4 - 5) No Integral action
2
K c * Ti >
Ki
80
70
degrees C
60
50
40
30
20
10
0
1
51
101
151
201
251
301
351
401
Time (min)
Setpoint
PV
CO%
degrees C
45.0
40.0
35.0
30.0
25.0
20.0
15.0
10.0
5.0
0.0
1
51
101
151
201
251
301
351
401
Time (min)
Setpoint
PV
CO%
36
39
Maximizes the step and kick of the controller output for a setpoint change.
Overdrive (driving of output past resting point) is essential for getting slow loops, such
as vessel temperature and pH, to the optimum setpoint as fast as possible.
The setpoint change must be made with the PID in Auto mode.
SP track PV will generally maximize the setpoint change and hence the step and kick
(retaining SP from last batch or startup minimizes kick and bump)
SP Feedforward
For low controller gains (controller gain less than inverse of process gain), a setpoint
feedforward is particularly useful. For this case, the setpoint feedforward gain is the
inverse of the dimensionless process gain minus the controller gain.
For slow self-regulating (e.g. continuous) processes and slow integrating (e.g. batch)
processes, even if the controller gain is high, the additional overdrive can be beneficial
for small setpoint changes that normally would not cause the PID output to hit a limit.
If the setpoint and controller output are in engineering units the feedforward gain must
be adjusted accordingly.
The feedforward action is the process action, which is the opposite of the control
action, taking into account valve action. In other words for a reverse control action, the
feedforward action is direct provided the valve action is increase-open or the analog
output block, I/P, or positioner reverses the signal for a increase-close.
A dead time (DT) block must be used to compute the rate of change so that new values of
the PV are seen immediately as a change in the rate of approach.
If the total loop dead time (o) is used in the DT block, the projected PV is simply the current
PV minus the output of the DT block (PV) plus the current PV.
If the process changes during the setpoint response (e.g. reaction or evaporation), the
resting value can be captured from the last batch or startup
If the process changes are negligible during the setpoint response, the resting value can be
estimated as:
If the PV rate of change (PV/t) is useful for other reasons (e.g. near integrator or true integrating
process tuning), then PV/t = PV/o can be computed.
the PID output just before the setpoint change for an integrating (e.g. batch) process
the PID output just before the setpoint change plus the setpoint change divided by the process gain
for a self-regulating (e.g. continuous) process
For self-regulating processes such as flow with the loop dead time (o) approaching or
less than the largest process time constant (p ), the logic is revised to step the PID
output immediately to the resting value. The PID output is held at the resting value for
the T98 process response time (T98 = o + 4 o ).
Output Lead-Lag
A lead-lag on the controller output or in the digital positioner can kick the signal though
the valve deadband and stiction, get past split range points, and make faster
transitions from heating to cooling and vice versa.
A lead-lag can potentially provide a faster setpoint response with less overshoot when
analyzers are used for closed loop control of integrating processes When combined
with the enhanced PID algorithm (PIDPlus) described in:
Deminar #1 http://www.screencast.com/users/JimCahill/folders/Public/media/5acf213538c9-422e-9eb9-33ee844825d3
White paper http://www.modelingandcontrol.com/DeltaV-v11-PID-Enhancements-forWireless.pdf
The simple addition of a delay block with the dead time set equal to the total loop dead
time to the external reset signal for the positive feedback implementation of integral
action described in Deminar #3 for the dynamic reset limit option
http://www.screencast.com/users/JimCahill/folders/Public/media/f093eca1-958f-4d9c96b7-9229e4a6b5ba .
The controller reset time can be significantly reduced and the controller gain increased
if the delay block dead time is equal or slightly less than the process dead time as
studied in Advanced Application Note 3
http://www.modelingandcontrol.com/repository/AdvancedApplicationNote003.pdf
Feed Maximization
Profile Control
If you have a have batch measurement that should increase to a maximum at the batch end
point (e.g. maximum reaction temperature or product concentration), the slope of the batch
profile of this measurement can be maximized to reduce batch cycle time. For application
examples checkout Direct Temperature Rate of Change Control Improves Reactor
Yield in a Funny Thing Happened on the Way to the Control Room
http://www.modelingandcontrol.com/FunnyThing/ and the Control magazine article
Unlocking the Secret Profiles of Batch Reactors
http://www.controlglobal.com/articles/2008/230.html .
Dead time is eliminated from the loop. The smith predictor, which created a PV without
dead time, fools the controller into thinking there is no dead time. However, for an
unmeasured disturbance, the loop dead time still causes a delay in terms of when the loop
can see the disturbance and when the loop can enact a correction that arrives in the
process at the same point as the disturbance. The ultimate limit to the peak error and
integrated error for an unmeasured disturbance are still proportional to the dead time, and
dead time squared, respectively.
Control is faster for existing tuning settings. The addition of dead time compensation
actually slows down the response for the existing tuning settings. Setpoint metrics, such as
rise time, and load response metrics, such as peak error, will be adversely affected.
Assuming the PID was tuned for a smooth stable response, the controller must be retuned
for a faster response. For a PID already tuned for maximum disturbance rejection, the gain
can be increased by 250%. For dead time dominant systems where the total loop dead
time is much greater than the largest loop time constant (hopefully the process time
constant), the reset time must also be decreased or there will be severe undershoot. If you
decrease the reset time to its optimum, undershoot and overshoot are about equal. For the
test case where the total loop dead time to primary process time constant ratio was 10:1,
you could decrease the reset time by a factor of 10. Further study is needed as to whether
the minimum reset time is a fraction of the underestimated dead time plus the PID module
execution time where the fraction depends upon the dead time to time constant ratio
Compensator works better for loops dominated by a large dead time. The reduction in
rise time is greatest and the sensitivity to per cent dead time modeling error particularly for
an overestimate of dead time is least for the loop that was dominated by the process time
constant. You could have a dead time estimate that was 100% high before you would see
a significant jagged response when the process time constant was much larger than the
process dead time. For a dead time estimate that was 50% too low, some rounded
oscillations developed for this loop. The loop simply degrades to the response that would
occur from the high PID gain as the compensator dead time is decreased to zero. While
the magnitude of the error in dead time seems small, you have to remember that for an
industrial temperature control application, the loop dead time and process time constant
would be often at least 100 times larger. For a 400 second dead time and 10,000 second
process time constant, a compensator dead time 200 seconds smaller or 400 seconds
larger than actual would start to cause a problem. In contrast, the dead time dominant loop
developed a jagged response for a dead time that was high or low by just 10%. I think this
requirement is unreasonable in industrial processes. A small filter of 1 second on the input
to the dead time block in the BKCAL path may have helped.
An underestimate of the dead time leads to instability. In tuning calculations for a
conventional PID, a smaller than actual dead time can cause an excessively oscillatory
response. Contrary to the effect of dead time on tuning calculations, a compensator dead
time smaller than actual dead time will only cause instability if the controller is tuned
aggressively after the dead time compensator is added.
An overestimate of the dead time leads to sluggish response and greater stability. In
tuning calculations for a conventional PID, a larger than actual dead time can cause an
excessively slow response. Contrary to the effect of dead time on tuning calculations, a
compensator dead time greater than actual dead time will cause jagged irregular
oscillations.
(6) Stable
48
49
Feedforward Applications
Feedforward is the most common advanced control technique used - often the
feedforward signal is a flow or speed for ratio control that is corrected by a feedback
process controller (Flow is the predominant process input that is manipulated to set
production rate and to control process outputs (e.g. temperature and composition))
Feedforward is most effective if the loop deadtime is large, disturbance speed is fast
and size is large, feedforward gain is well known, feedforward measurement and
dynamic compensation are accurate
Setpoint feedforward is most effective if the loop deadtime exceeds the process time
constant and the process gain is well known
For more discussion of Feedforward see May 2008 Control Talk
http://www.controlglobal.com/articles/2008/171.html
Feedforward Implementation - 1
Feedforward gain can be computed from a material or energy balance ODE * &
explored for different setpoints and conditions from a plot of the controlled variable
(e.g. composition, conductivity, pH, temperature, or gage) vs. ratio of manipulated
variable to independent variable (e.g. feed) but is most often simply based on
operating experience
* http://www.modelingandcontrol.com/repository/AdvancedApplicationNote004.pdf
Plots are based on an assumed composition, pressure, temperature, and/or quality
For concentration and pH control, the flow/flow ratio is valid if the changes in the composition
of both the manipulated and feed flow are negligible.
For column and reactor temperature control, the flow/flow ratio is valid if the changes in the
composition and temperature of both the manipulated and feed flow are negligible.
For reactor reaction rate control, the speed/flow is valid if changes in catalyst quality and void
fraction and reactant composition are negligible.
For heat exchanger control, the flow/flow ratio is valid if changes in temperatures of coolant
and feed flow are negligible.
For reactor temperature control, the flow/flow ratio is valid if changes in temperatures of
coolant and feed flow are negligible.
For slaker conductivity (effective alkali) control, the speed/flow ratio is valid if changes in lime
quality and void fraction and liquor composition are negligible.
For spin or sheet line gage control, the speed/speed ratio is valid only if changes in the pump
pressure and the polymer melt quality are negligible.
Compensation of a delay in the feedforward path > delay in upset path is not possible
Feedforward Implementation - 2
While technically, the correction should be a multiplier for a change in slope and a bias for a change
in the intercept in a plot of the manipulated variable versus independent variable (independent from
this loop but possibly set by another PID or MPC), a multiplier creates scaling problems for the user,
consequently the correction of most feedforward signal is done via a bias.
The bias correction must have sufficient positive and negative range for worst case.
Model predictive control (MPC) and PID loops get into a severe nonlinearity by creating a controlled
variable that is the ratio. It is important that the independent variable be multiplied by the ratio and
the result be corrected by a feedback loop with the process variable (composition, conductivity,
gage, temperature, or pH) as the controlled variable.
Process gain is the open loop gain seen by the PID (product of manipulated variable, process
variable, and measurement variable gain) that is dimensionless.
Feedforward action must be in the same direction as feedback action for upset.
Feedforward action is the opposite of the control action for setpoint feedforward.
Feedforward delay and lag adjusted to match any additional delay and lag,
respectively in path of upset so feedforward correction does not arrive too soon.
Feedforward lead is adjusted to compensate for any additional lag in the path of the
manipulated variable so the feedforward correction does not arrive too late.
The actual and desired feedforward ratio should be displayed along with the bias
correction by the process controller. This is often best done by the use of a ratio block
and a bias/gain block instead of the internal PID feedforward calculation.
53
For SP change PID tracks output limit until the predicted PV one
deadtime into future gets within a deadband of setpoint, the output is
then set at best/last startup or batch final settling value for one
deadtime
Implementation uses simple DT block (loop deadtime) to create an
old PV subtracted from the new PV to give a delta PV that is added to
old PV to create a PV one deadtime into future
Works best on slow batch and integrating processes
Once a compressor gets into surge, cycles are so fast & large that
feedback control can not get compressor out of surge
When compressor flow drops below surge SP or a precipitous drop
occurs in flow, PID tracks an output that provides a flow large enough
to compensate for the loss in downstream flow for a time larger than
the loop dead time plus the surge period.
An excursion < 2 pH or > 12 pH for even a few sec can be a
recordable RCRA violation regardless of downstream volume
When an inline pH system PV approaches the RCRA pH limit the PID
tracks an incremental output (e.g. 0.25% per sec) opening the
reagent valve until the pH sufficiently backs away
Feedback Action
RCRA pH Kicker
Optimization of pH filter and kicker increment saved $50K in reagent costs
MPC-1
MPC-2
Waste
middle selector
RCAS
RCAS
ROUT
AC-1
AC-2
splitter
Kicker
splitter
middle selector
FT
AY
Stage 1
Mixer
AT
AT
AT
AY
AT
AY
AY
FT
AY
AY
Filter
middle selector
AY
Stage 2
Mixer
AT
AT
Attenuation
Tank
AT
FT
AT
AT
Conductivity spike
Setpoint Filter
PID SP filter reduces overshoot enabling fast tuning
Setpoint filter time set equal reset time
63
Enhanced PID
Sensor PV
Traditional PID
Sensor PV
Enhanced PID
Sensor PV
Traditional PID
Sensor PV
Enhanced PID
Sensor PV
Traditional PID
Sensor PV
pH Setpoint Response
Enhanced PID
Sensor PV
Traditional PID
Sensor PV
pH Load Response
Enhanced PID
Sensor PV Traditional PID
Sensor PV
Enhanced PID
Sensor PV
Traditional PID
Sensor PV
Traditional PID
PID PV
PID Output
Enhanced PID
Gamesmanship
Diverse sources of change
Diverse objectives
Diverse dynamics
Diverse metrics
SIS
PID
Function
Advantage 1
Advantage 2
Direction Velocity
Limits
Minimize Disruption
to Process
Dynamic Reset
Limit
Direction Velocity
Limits
Prevent Burst of
Oscillations
Adaptive Tuning
Automatically Identify
and Schedule Tuning
Eliminate Manual
Tuning
Compensation of
Nonlinearity
Feedforward
Minimize Disruption
Enhanced PID
(PIDPlus)
Suspend Integral
Action until PV Update
Minimize Oscillations
from Interaction & PV
Update Delay
VPC PID PV
VPC PID SP
Minimize Prime
Mover Energy
Reactor Feed
Flow PID Out
Compressor or Pump
Pressure SP
Minimize Boiler
Fuel Cost
Boiler
Pressure SP
Minimize Boiler
Fuel Cost
Equipment
Temperature PID Out
Boiler
Pressure SP
Minimize Chiller
or CTW Energy
Equipment
Temperature PID Out
Chiller or CTW
Temperature SP
Minimize Purchased
Reagent or Fuel Cost
Purchased Reagent or
Fuel Flow PID Out
Waste Reagent
Or Fuel Flow SP
Minimize Total
Reagent Use
Final Neutralization
Stage pH PID Out
First Neutralization
Stage pH PID SP
Maximize Reactor
Production Rate
Reactor or Condenser
Temperature PID Out
Maximize Reactor
Production Rate
Reactor Vent
Pressure PID Out
Maximize Column
Production Rate
Reboiler or Condenser
Flow PID Out
Maximize Ratio or
Feedforward Accuracy
Process Feedback
Correction PID Out
50%
(Zero Correction)
Flow Ratio or
Feedforward Gain
ratio
calc
FC
1-1
CAS
1-8
FY
1-6
reactant A
LY
1-8
PT
PC
1-5
1-5
FT
FT
1-1
1-5
residence
time calc
CAS
LC
FC
FC 1-1
CAS
ZC
1-4
vent
LT
TT
TC
1-8
1-3
1-3
1-2
reactant B
FT
TT
TC
1-4
1-4
1-2
return
AT
AC
1-6
1-6
makeup
CTW
FC
1-7
FT
product
1-7
84
ratio
calc
FC
PT
PC
ZC
1-1
1-5
1-5
1-5
CAS
FY
1-6
reactant A
LC
TT
FT
1-8
1-10
1-5
residence
time calc
CAS
FC
ZY-1
IN1
1-10
1-8
TC
FT
1-1
LY
product
LT
TT
1-8
1-3
TC
ZC
1-3
1-10
TT
TC
1-4
1-4
ZY-1
IN2
1-2
reactant B
FT
1-2
return
ZC-5
OUT
FC1-1
CAS
low signal
selector
ZC-10
ZY
OUT
1-1
ZC
AT
AC
1-6
1-6
1-4
ZY-1
IN3
makeup
ZC-4
OUT
CTW
CAS
FC
1-7
FT
product
1-7
85
AC
1- 4
AY
1- 4
XC
1- 4
AT
NIR-T
1- 4
XY
1- 4
Slurry Solids
Enhanced PID
Feedforward
Fermentable Starch
Correction
DX
2- 4
DC
2- 4
RCAS
FC
1- 5
Dilution Water
FT
1- 5
FC
1- 6
Backset Recycle
DT
2- 4
FT
1- 6
Slurry
Tank 1
Coriolis
Meter
Slurry
Tank 2
86
Lag
Gain
Kd
DV
Load Upset
Delay
Lag
Gain
Kv
Secondary
Delay
Secondary
Lag
Primary
Delay
Primary
Lag
Gain
Kp
Fv
Kv = slope of installed
flow characteristic
%CO
PID
Kc
Ti
%
Td
%PV
PV
Process
Valve
Local
Set Point
%SP
Km = 100% / span
of Wireless Default Update Rate
%
Delay
Lag
Gain
Lag
Delay
Lag
c2
c1
Km
m2
m2
m1
Lag
Controller
Measurement
m1
Delay
87
%PV
Ko = %PV / %CO
Self-regulating process gain (%/%)
%CO
%PV
Maximum speed
in 4 dead times
is critical speed
0.63%PV
%CO
Noise Band
observed
total loop
dead time
ideally
Time (seconds)
%PV
%CO
%CO
ramp rate is
%PV2 / t2
ramp rate is
%PV1 / t1
observed
total loop
dead time
Time (seconds)
89
Ko = %PV / %CO
Runaway process gain (%/%)
Acceleration
1.72%PV
%PV
%CO
Noise Band
observed
total loop
dead time
must be
Time (seconds)
90
Diverse Metrics
Peak and Integrated Error
The use of a setpoint lead-lag with the lag equal to the reset time and the lead
20% of the lag will provide a fast setpoint response with minimal overshoot
despite tuning for maximum load rejection
o
Ex =
Eo
( o + o )
Largest lag in loop
that is ideally set by
large process volume
Integrated error is proportional to the ratio of loop dead time squared to 63% response time
(Important to minimize quantity of product off-spec and total energy and raw material use)
o2
Ei =
Eo
( o + o )
For a sensor lag (e.g. electrode or thermowell lag) or signal filter that is much larger
than the process time constant, the unfiltered actual process variable error can be
found from the equation for attenuation
Adaptive loop
Baseline loop
Adaptive loop
Baseline loop
1
Ex =
Eo
(1 + K o K c )
Integrated error decreases as the controller gain increases and reset time decreases
but is essentially the open loop error multiplied by the reset time plus signal
delays and lags for systems when total dead time >> process time constant
Ei =
Ti + t x + f
Ko Kc
Eo
Peak and integrated errors cannot be better than ultimate limit - The errors predicted
by these equations for the PIDPlus and deadtime compensators cannot be better
than the ultimate limit set by the loop deadtime and process time constant
i = 0.5 ( + o )
For most aggressive tuning Lambda is set equal to observed dead time
(implied dead time is equal to observed dead time)
Money spent on improving measurement and process dynamics
(e.g. reducing measurement delays and process dead times)
will be wasted if the controller is not tuned faster to take
advantage of the faster dynamics
You can prove most any point you want to make in a comparison
of control system performance, by how you tune the PID.
Inventors of special algorithms as alternatives to the PID
naturally tend to tune the PID to prove their case. For example Ziegler-Nichols
tuning is often used to show excessive oscillations that could have be
eliminated by cutting gain in half
Disturbance Speed
Effect of load disturbance lag (L) on peak error can be estimated by replacing the
open loop error with the exponential response of the disturbance during the loop dead time
For Ei (integrated error), use closed loop time constant instead of dead time
E L = (1 e o / L ) Eo
For a load disturbance lag much larger than the dead time, the load error in one dead time
Is very small, allowing a very large implied dead time from slow tuning. In other words,
tuning and control loop dynamics are not important in terms of disturbance rejection. The focus
is then on the effect of tuning and dynamics on rise time (time to reach a new setpoint)
Rise time (time to reach a new setpoint) is inversely proportional to controller gain
% SP
Tr =
+ o
K i min ( | %COmax |, ( K c + K ff ) % SP )
Rise time can be decreased by setpoint feedforward and bang-bang logic that
sets and holds an output change at maximum (%COmax) for one dead time until
future PV value is projected to reach setpoint. The fastest possible rise time is:
% SP
Tr =
+ o
K i | %COmax |
Ko =
% PV
%CO
Controller Gain
Ti
Kc =
K o ( + o )
Lambda (Closed Loop Time Constant for Setpoint Response)
= f o
Ti = o
Lambda tuning excels at coordinating loops for blending,
fixing lower loop dynamics for model predictive control,
and reducing loop interaction and resonance
= o
K c = 0.5
o
Ko o
Ti = o
= f / Ki
Integrating Process Gain:
Ki =
% PV2 / t 2 % PV1 / t1
%CO
Controller Gain:
Kc =
Ti
K i [ + o ]2
Ti = 2 + o
Controller Derivative (Rate) Time:
Td = s secondary lag
= o
Controller Gain:
3
Kc =
Ki 4 o
Controller Integral (Reset) Time:
Ti = 3 o
Controller Derivative (Rate) Time:
Td = s secondary lag
Check for prevention of slow rolling oscillations:
2.25
K c * Ti =
Ki
2
K c * Ti >
Ki
103
% PV % PVo
Ko =
%CO %COo
o
K c = 0.4
Ko o
1
K c = 0.2
Ko
1
K c = 0.4
Ki o
K c = 0.6
1
Ki o
Td = s
Ti = 4.0 o
Ti = 4 o
Ti = 0.5 o
Td = 0
Td = s
'p
K c = 0.8
Ko o
1
K c = 0.8
Ki o
Ti = 40 o
Td = 2 s
(6) Control action (direct & reverse) & valve action (increase-open & increase-close)
(4) PID structure, anti-reset windup, output limits, and dynamic reset
(1) My books
Ultimate Period
Tu
Measurement
(%)
If o >> o then Tu = 4
If o << o then u = 2
Set Point
Time
(min)
Quarter Amplitude
Period To
Measurement
(%)
Offset
Set Point
110%
of o
Time
(min)
5.
6.
7.
6.
Choose largest step change in controller output and setpoint that is safe. If the test is to
be made in auto, increase the reset time by factor of 10x for test.
Add a PV filter to keep the controller output fluctuations from noise within the valve
deadband. Measure the initial rate of change of the process variable (PV1/t).
Make a either a change in controller output in manual or change in set point in auto
Note the time it take for the for the process variable to get out of the noise band as the
loop dead time.
Estimate the rate of change of the process variable (PV2/t) over successive dead time
intervals (at least two). Choose the largest rate of change. Subtract this from initial rate of
change of the process variable and divide the result by the step change in controller
output to get the integrating process gain.
Set the controller gain equal to the inverse of the product of integrating process gain and
loop dead time multiplied by 0.4 (self-regulating), 0.6 (integrating), and 0.8 (runaway)
7.
8.
If the inverse of the integrating gain is much larger than the loop dead time, set the reset time
setting equal to 4x the process dead time and set the rate time setting equal to the process dead
time, otherwise set the reset time to 0.5x the process dead time and the rate time to zero
If a high controller gain is used (e.g. > 10) use setpoint rate of change (velocity) limits if a
big kick in the controller output for setpoint changes is disruptive to operations from PD
action on error (enable external reset feedback).
Make setpoint changes across the range of operation to make sure an operating point
with a higher controller gain or larger process dead time does not cause oscillations.
Monitor the loop closely over several days of operation.
Ultimate Gain
4d
Ku =
e
Signal
(%)
Ultimate Period
Tu
Set Point
Time
(min)
e = sq rt (a2 - n2) If n = 0, then e = a
alternative to n is a filter to smooth PV
Multiple Model
Interpolation with
Re-centering
Estimated
Gain
E=
i (t )
( y (t ) Yi (t ) )
Where:
K
Changing
Process Input Pure Gain
Process
Ep kl (t ) = kl Ei (t )
Initial Model
Gain = G1
i =1
kl
kl = 1 if parameter value p is used in
G2-
G3-
G2
G3
G2+
G3+
Multiple
iterations per
adaptation
cycle
sumEp kl = Ep kl (t )
t =1
Fkl =
1
sumEp kl
p k (=
a ) p k 1 f k 1 + ... + p kl f kl + ... + p kn f kn
f k1 =
Fkl
sumFk
0.30 oC overshoot
0.12 oC overshoot
0.13 oC overshoot
0.20 oC overshoot
0.11 oC overshoot
An overdrive of the controller output beyond its resting value is needed to reach a
set point or compensate for a disturbance (achieved by high controller gain)
The maximum allowable controller gain for many integrating processes is well
beyond the comfort level of most users. Measurement noise and resolution often
sets the practical high limit to the controller gain rather than process dynamics
Too much reset action (too small of a reset time) cause severe overshoot
A higher controller gain creates more overdrive for small setpoint changes and
gets controller off its output limit sooner for large setpoint changes
There is a window of allowable controller gains.
Instability from too high of a controller gain (not likely for industrial processes)
Slow rolling oscillations from too low of a controller gain (common case) that slowly
decay for integrating processes but can grow for runaway till it hits physical limits
% PVmax
% PV
%COmax
t
%CO
Realizing that the integrating process gain is the PV rate of change per percent output change:
1 % PVmax
K i %COmax
% PVLimit % SP
1
K i %COLimit %CO
The above calculation would be done for high and low operating limits and various setpoints.
The smallest of the arrest times would be used in tuning.
Ki = Kv K p K m
The valve gain or variable speed drive gain for a linear installed characteristic or flow loop is:
Kv =
Fv
Fmax
=
%CO 100%
The level process gain for mass flow is (omit density term for volumetric flow):
Kp =
1
A
Km =
% PV 100%
=
L
Lmax
Ki = Kv K p K m =
Fmax
1
100% Fmax
1
A Lmax % PVmax
Fmax
%COmax
An equivalent setpoint rate limit on the controller output (e.g. flow controller setpoint):
%CO
t max
%COmax
%COmax
Fmax
=
A Lmax % PVmax
(o + w + v ) 2
Ei =
Eo
T63
w = Min( T , S )
T = 0.5 Tw
( % PV / t ) max = K i ( Eo / K o )
S =
Ki =
Ko
T63 = o + w + o
0 .5 S m
S =
( % PV / t ) max
( % PV / t ) max =
Eo
0.5 S m o
Eo
129
v =
0.5 S v
( %CO / t ) max
Sv
K c = min x o ,
[
]
K
N
S
max
(
),
0
.
002
m
m
o o
( %CO / t ) max =
K x Eo
Ko o
( % PV / t ) max =
v =
Eo
0.5 S v K o o
K x Eo
Increase in process gain from elimination of controller reaction to noise by wireless trigger level or
PID threshold sensitivity setting decreases dead time from valve stick-slip, resolution, or deadband
130
Nomenclature
A = cross sectional area (m2) (ft2)
Kc = controller gain (dimensionless)
Ki = integrating process gain (%/sec/% or 1/sec)
Kp = process gain (dimensionless) also known as open loop gain
Lmax = max change in level (e.g. level span) (m) (ft)
Fmax = max change in manipulated flow (e.g. flow span) (kg/sec) (lb/sec)
%CO = change in controller output (%)
%PV = change in process variable (%)
%SP = change in setpoint (%)
%SPff = setpoint feedforward (%)
t = change in time (sec)
tx = execution or update time (sec)
o = total loop dead time (sec)
f = filter time constant or well mixed volume residence time (sec)
m = measurement time constant (sec)
s = secondary (small) self-regulating process time constant (sec)
p = primary (large) runaway process time constant (sec)
p = primary (large) process time constant (sec)
Ti = integral (reset) time setting (sec/repeat)
Td = derivative (rate) time setting (sec)
Tr = rise time for setpoint change (sec)
to = oscillation period (sec)
= Lambda (closed loop time constant or arrest time) (sec)
f = Lambda factor (ratio of closed to open loop time constant or 1/Ki factor)
131
Nomenclature
Ei = integrated error for unmeasured load disturbance (% sec)
Ex = peak error for unmeasured load disturbance (%)
Eo = open loop error (loop in manual) for unmeasured load disturbance (%)
Ki = near integrator process gain (% per % per sec)
Ko = open loop gain (dimensionless product of valve, process, and measurement gains)
Kx = detuning factor for controller gain (dimensionless)
Nm = measurement noise (%)
%CO/t = rate of change in PID % controller output (% per sec)
%PV/t = rate of change in PID % process variable (% per sec)
Tw = wireless default update rate (update time interval) (sec)
Sm = wireless measurement trigger level (threshold sensitivity) (%)
Sv = valve stick-slip, resolution, or deadband (%)
T63 = 63% process response time (sec)
o = original loop dead time (sec)
t = additional dead time from default update rate (sec)
s = additional dead time from wireless trigger level (sec)
v = additional dead time from valve (sec)
w = additional dead time from wireless measurement (sec)
= fluid density (kg/m3) (lb/ft3)
o = self-regulating open loop time constant (largest time constant in loop) (sec)
o = runaway open loop time constant (positive feedback process time constant) (sec)
132