242
Industrial Control Behzad Samadi Department of Electrical Engineering Amirkabir University of Technology Winter 2010 Tehran, Iran Behzad Samadi (Amirkabir University) Industrial Control 1 / 95

Industrial Control Systems - PID Controllers

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Industrial Control Systems - PID Controllers

Industrial Control

Behzad Samadi

Department of Electrical EngineeringAmirkabir University of Technology

Winter 2010Tehran, Iran

Behzad Samadi (Amirkabir University) Industrial Control 1 / 95

Page 2: Industrial Control Systems - PID Controllers

Feedback Control Loop

r : reference signal

y : process (controlled) variable

u: manipulated (control) variable

e: control error

d : load disturbance signal

n: measurement noise signal

F : feedforward filter

C : controller

P: plant

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 2 / 95

Page 3: Industrial Control Systems - PID Controllers

On-Off Control

One of the simplest control laws:

u =

{umax if e > 0umin if e < 0

Disadvantage: persistent oscillation of the process variable

P =1

10s + 1e−2s , umax = 2, umin = 0

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 3 / 95

Page 4: Industrial Control Systems - PID Controllers

On-Off Control

One of the simplest control laws:

u =

{umax if e > 0umin if e < 0

Disadvantage: persistent oscillation of the process variable

P =1

10s + 1e−2s , umax = 2, umin = 0

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 3 / 95

Page 5: Industrial Control Systems - PID Controllers

On-Off Control

One of the simplest control laws:

u =

{umax if e > 0umin if e < 0

Disadvantage: persistent oscillation of the process variable

P =1

10s + 1e−2s , umax = 2, umin = 0

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 3 / 95

Page 6: Industrial Control Systems - PID Controllers

On-Off Control

One of the simplest control laws:

u =

{umax if e > 0umin if e < 0

Disadvantage: persistent oscillation of the process variable

P =1

10s + 1e−2s , umax = 2, umin = 0

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 3 / 95

Page 7: Industrial Control Systems - PID Controllers

On-Off Control

a) Ideal on-off controller

b) Modified with a dead zone

c) Modified with hysteresys

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 4 / 95

Page 8: Industrial Control Systems - PID Controllers

PID Control

1 Proportional action

2 Integral action

3 Derivative action

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 5 / 95

Page 9: Industrial Control Systems - PID Controllers

Proportional Action

Proportional control action:

u(t) = Kpe(t) = Kp(r(t)− y(t)),

Kp: proportional gain

Controller transfer function:

C (s) = Kp

Advantage: small control signal for a small error signal

Disadvantage: steady state error

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 6 / 95

Page 10: Industrial Control Systems - PID Controllers

Proportional Action

Proportional control action:

u(t) = Kpe(t) = Kp(r(t)− y(t)),

Kp: proportional gain

Controller transfer function:

C (s) = Kp

Advantage: small control signal for a small error signal

Disadvantage: steady state error

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 6 / 95

Page 11: Industrial Control Systems - PID Controllers

Proportional Action

Proportional control action:

u(t) = Kpe(t) = Kp(r(t)− y(t)),

Kp: proportional gain

Controller transfer function:

C (s) = Kp

Advantage: small control signal for a small error signal

Disadvantage: steady state error

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 6 / 95

Page 12: Industrial Control Systems - PID Controllers

Proportional Action

Proportional control action:

u(t) = Kpe(t) = Kp(r(t)− y(t)),

Kp: proportional gain

Controller transfer function:

C (s) = Kp

Advantage: small control signal for a small error signal

Disadvantage: steady state error

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 6 / 95

Page 13: Industrial Control Systems - PID Controllers

Proportional Action

Proportional control action:

u(t) = Kpe(t) = Kp(r(t)− y(t)),

Kp: proportional gain

Controller transfer function:

C (s) = Kp

Advantage: small control signal for a small error signal

Disadvantage: steady state error

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 6 / 95

Page 14: Industrial Control Systems - PID Controllers

Proportional Action

Steady state error occurs even if the process presents an integratingdynamics, in case a constant load disturbance occurs.

Adding a bias (or reset) term:

u(t) = Kpe + ub

The value of ub can be fixed or can be adjusted manually until thesteady state error is zero.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 7 / 95

Page 15: Industrial Control Systems - PID Controllers

Proportional Action

Steady state error occurs even if the process presents an integratingdynamics, in case a constant load disturbance occurs.

Adding a bias (or reset) term:

u(t) = Kpe + ub

The value of ub can be fixed or can be adjusted manually until thesteady state error is zero.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 7 / 95

Page 16: Industrial Control Systems - PID Controllers

Proportional Action

Proportional Band (PB):

PB =100%

Kp

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 8 / 95

Page 17: Industrial Control Systems - PID Controllers

Integral Action

Integral control action:

u(t) = Ki

∫ t

0e(�)d�,

Ki : integral gain

Controller transfer function:

C (s) =Ki

s

Advantage: zero steady state error

Disadvantage: integrator windup in the presence of saturation

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 9 / 95

Page 18: Industrial Control Systems - PID Controllers

Integral Action

Integral control action:

u(t) = Ki

∫ t

0e(�)d�,

Ki : integral gain

Controller transfer function:

C (s) =Ki

s

Advantage: zero steady state error

Disadvantage: integrator windup in the presence of saturation

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 9 / 95

Page 19: Industrial Control Systems - PID Controllers

Integral Action

Integral control action:

u(t) = Ki

∫ t

0e(�)d�,

Ki : integral gain

Controller transfer function:

C (s) =Ki

s

Advantage: zero steady state error

Disadvantage: integrator windup in the presence of saturation

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 9 / 95

Page 20: Industrial Control Systems - PID Controllers

Integral Action

Integral control action:

u(t) = Ki

∫ t

0e(�)d�,

Ki : integral gain

Controller transfer function:

C (s) =Ki

s

Advantage: zero steady state error

Disadvantage: integrator windup in the presence of saturation

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 9 / 95

Page 21: Industrial Control Systems - PID Controllers

Integral Action

Integral control action:

u(t) = Ki

∫ t

0e(�)d�,

Ki : integral gain

Controller transfer function:

C (s) =Ki

s

Advantage: zero steady state error

Disadvantage: integrator windup in the presence of saturation

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 9 / 95

Page 22: Industrial Control Systems - PID Controllers

PI Controller

Proportional Integrator Controller:

Transfer function:

C (s) = Kp(1 +1

Ti s)

Integral action is able to set automatically the value of ub.

The integral action is also called automatic reset.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 10 / 95

Page 23: Industrial Control Systems - PID Controllers

PI Controller

Proportional Integrator Controller:

Transfer function:

C (s) = Kp(1 +1

Ti s)

Integral action is able to set automatically the value of ub.

The integral action is also called automatic reset.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 10 / 95

Page 24: Industrial Control Systems - PID Controllers

PI Controller

Proportional Integrator Controller:

Transfer function:

C (s) = Kp(1 +1

Ti s)

Integral action is able to set automatically the value of ub.

The integral action is also called automatic reset.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 10 / 95

Page 25: Industrial Control Systems - PID Controllers

Derivative Action

Derivative control action:

u(t) = Kdde(t)

dt,

Kd : derivative gain

Controller transfer function:

C (s) = Kds

Advantage: Derivative action is an instance of predictive control.

Disadvantage: Sensitive to the measurement noise in the manipulatedvariable

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 11 / 95

Page 26: Industrial Control Systems - PID Controllers

Derivative Action

Derivative control action:

u(t) = Kdde(t)

dt,

Kd : derivative gain

Controller transfer function:

C (s) = Kds

Advantage: Derivative action is an instance of predictive control.

Disadvantage: Sensitive to the measurement noise in the manipulatedvariable

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 11 / 95

Page 27: Industrial Control Systems - PID Controllers

Derivative Action

Derivative control action:

u(t) = Kdde(t)

dt,

Kd : derivative gain

Controller transfer function:

C (s) = Kds

Advantage: Derivative action is an instance of predictive control.

Disadvantage: Sensitive to the measurement noise in the manipulatedvariable

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 11 / 95

Page 28: Industrial Control Systems - PID Controllers

Derivative Action

Derivative control action:

u(t) = Kdde(t)

dt,

Kd : derivative gain

Controller transfer function:

C (s) = Kds

Advantage: Derivative action is an instance of predictive control.

Disadvantage: Sensitive to the measurement noise in the manipulatedvariable

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 11 / 95

Page 29: Industrial Control Systems - PID Controllers

Derivative Action

Derivative control action:

u(t) = Kdde(t)

dt,

Kd : derivative gain

Controller transfer function:

C (s) = Kds

Advantage: Derivative action is an instance of predictive control.

Disadvantage: Sensitive to the measurement noise in the manipulatedvariable

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 11 / 95

Page 30: Industrial Control Systems - PID Controllers

Derivative Action

Derivative action is an instance of predictive control.

Taylor series expansion of the control error at time Td ahead:

e(t + Td ) ≈ e(t) + Tdde(t)

dt

A control law proportional to e(t + Td )

u(t) = Kp

(e(t) + Td

de(t)

dt

)Derivative action is also called anticipatory control, or rate action, orpre-act.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 12 / 95

Page 31: Industrial Control Systems - PID Controllers

Derivative Action

Derivative action is an instance of predictive control.

Taylor series expansion of the control error at time Td ahead:

e(t + Td ) ≈ e(t) + Tdde(t)

dt

A control law proportional to e(t + Td )

u(t) = Kp

(e(t) + Td

de(t)

dt

)Derivative action is also called anticipatory control, or rate action, orpre-act.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 12 / 95

Page 32: Industrial Control Systems - PID Controllers

Derivative Action

Derivative action is an instance of predictive control.

Taylor series expansion of the control error at time Td ahead:

e(t + Td ) ≈ e(t) + Tdde(t)

dt

A control law proportional to e(t + Td )

u(t) = Kp

(e(t) + Td

de(t)

dt

)

Derivative action is also called anticipatory control, or rate action, orpre-act.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 12 / 95

Page 33: Industrial Control Systems - PID Controllers

Derivative Action

Derivative action is an instance of predictive control.

Taylor series expansion of the control error at time Td ahead:

e(t + Td ) ≈ e(t) + Tdde(t)

dt

A control law proportional to e(t + Td )

u(t) = Kp

(e(t) + Td

de(t)

dt

)Derivative action is also called anticipatory control, or rate action, orpre-act.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 12 / 95

Page 34: Industrial Control Systems - PID Controllers

PID Controller

Transfer function:

C (s) = Kp

(1 +

1

Ti s+ Tds

)Time windows:

Proportional action responds to current error.Integrator action responds to accumulated past error.Derivative action anticipated future error.

Peter Woolf umich.edu

Behzad Samadi (Amirkabir University) Industrial Control 13 / 95

Page 35: Industrial Control Systems - PID Controllers

PID Controller

Transfer function:

C (s) = Kp +Ki

s+ Kds

Frequency band:

Proportional action: all-bandIntegrator action: low passDerivative action: high pass

[Li et al., 2006]

Behzad Samadi (Amirkabir University) Industrial Control 14 / 95

Page 36: Industrial Control Systems - PID Controllers

PID Controller

Transfer function:

C (s) = Kp +Ki

s+ Kds

[Li et al., 2006]

Behzad Samadi (Amirkabir University) Industrial Control 15 / 95

Page 37: Industrial Control Systems - PID Controllers

PID Controller

Implementation methods:

PneumaticHydraulicElectronicDigital

Behzad Samadi (Amirkabir University) Industrial Control 16 / 95

Page 38: Industrial Control Systems - PID Controllers

PID Controller

Structures of PID controllers:

Ideal or noninteracting form:

Ci (s) = Kp

(1 +

1

Ti s+ Tds

)

Series or interacting from:

Cs(s) = K′p

(1 +

1

T′i s

)(1 + T

′ds)

Parallel form:

Ci (s) = Kp +Ki

s+ Kds

[Visioli, 2006] and [Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 17 / 95

Page 39: Industrial Control Systems - PID Controllers

PID Controller

Structures of PID controllers:

Ideal or noninteracting form:

Ci (s) = Kp

(1 +

1

Ti s+ Tds

)Series or interacting from:

Cs(s) = K′p

(1 +

1

T′i s

)(1 + T

′ds)

Parallel form:

Ci (s) = Kp +Ki

s+ Kds

[Visioli, 2006] and [Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 17 / 95

Page 40: Industrial Control Systems - PID Controllers

PID Controller

Structures of PID controllers:

Ideal or noninteracting form:

Ci (s) = Kp

(1 +

1

Ti s+ Tds

)Series or interacting from:

Cs(s) = K′p

(1 +

1

T′i s

)(1 + T

′ds)

Parallel form:

Ci (s) = Kp +Ki

s+ Kds

[Visioli, 2006] and [Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 17 / 95

Page 41: Industrial Control Systems - PID Controllers

PID Controller

Structures of PID controllers:

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 18 / 95

Page 42: Industrial Control Systems - PID Controllers

PID Controller

Structures of PID controllers:

Series to ideal form conversion:

Kp =K′p

T′i + T

′d

T′i

Ti =T′i + Td

Td =T′i T′d

T′i + T

′d

Behzad Samadi (Amirkabir University) Industrial Control 19 / 95

Page 43: Industrial Control Systems - PID Controllers

PID Controller

Structures of PID controllers:

Ideal to series form conversion: Only if Ti ≥ 4Td

K′p =

Kp

2

(1 +

√1− 4

Td

Ti

)

T′i =

Ti

2

(1 +

√1− 4

Td

Ti

)

T′d =

Ti

2

(1−

√1− 4

Td

Ti

)[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 20 / 95

Page 44: Industrial Control Systems - PID Controllers

PID Controller

Alternative series form:

Cs(s) = Kp(1 +1

�Ti s)(� + Tds)

Ideal to alternative series form conversion: Only if Ti ≥ 4Td

� =1±

√1− 4 Td

Ti

2> 0

[Li et al., 2006]

Behzad Samadi (Amirkabir University) Industrial Control 21 / 95

Page 45: Industrial Control Systems - PID Controllers

PID Controller

A PID controller has two zeros and one pole at the origin.

Ti > 4Td : two real zeros

Ti = 4Td : two coincident zeros

Ti < 4Td : two complex conjugate zeros

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 22 / 95

Page 46: Industrial Control Systems - PID Controllers

Problems with the Derivative Action

Noise:n(t) = A sin(!t)

Derivative action:u(t) = A! cos(!t)

u(t) is large for high frequencies.

In practice, a (very) noisy control signal might lead to a damage ofthe actuator.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 23 / 95

Page 47: Industrial Control Systems - PID Controllers

Problems with the Derivative Action

Noise:n(t) = A sin(!t)

Derivative action:u(t) = A! cos(!t)

u(t) is large for high frequencies.

In practice, a (very) noisy control signal might lead to a damage ofthe actuator.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 23 / 95

Page 48: Industrial Control Systems - PID Controllers

Problems with the Derivative Action

Noise:n(t) = A sin(!t)

Derivative action:u(t) = A! cos(!t)

u(t) is large for high frequencies.

In practice, a (very) noisy control signal might lead to a damage ofthe actuator.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 23 / 95

Page 49: Industrial Control Systems - PID Controllers

Problems with the Derivative Action

Noise:n(t) = A sin(!t)

Derivative action:u(t) = A! cos(!t)

u(t) is large for high frequencies.

In practice, a (very) noisy control signal might lead to a damage ofthe actuator.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 23 / 95

Page 50: Industrial Control Systems - PID Controllers

Modified Derivative Action

Modified ideal form:

Ci1a(s) = Kp

(1 +

1

Ti s+

TdsTdN s + 1

)

Gerry and Shinskey, 2005:

Ci1b(s) = Kp

⎛⎜⎝1 +1

Ti s+

Tds

1 + TdN s + 0.5

(TdN s)2

⎞⎟⎠Modified series form:

Cs(s) = K′p

(1 +

1

T′i s

)⎛⎝T′ds + 1

T′d

N s + 1

⎞⎠N generally assumes a value between 1 and 33, although in themajority of the practical cases its setting falls between 8 and 16 (Anget al., 2005).

[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95

Page 51: Industrial Control Systems - PID Controllers

Modified Derivative Action

Modified ideal form:

Ci1a(s) = Kp

(1 +

1

Ti s+

TdsTdN s + 1

)Gerry and Shinskey, 2005:

Ci1b(s) = Kp

⎛⎜⎝1 +1

Ti s+

Tds

1 + TdN s + 0.5

(TdN s)2

⎞⎟⎠

Modified series form:

Cs(s) = K′p

(1 +

1

T′i s

)⎛⎝T′ds + 1

T′d

N s + 1

⎞⎠N generally assumes a value between 1 and 33, although in themajority of the practical cases its setting falls between 8 and 16 (Anget al., 2005).

[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95

Page 52: Industrial Control Systems - PID Controllers

Modified Derivative Action

Modified ideal form:

Ci1a(s) = Kp

(1 +

1

Ti s+

TdsTdN s + 1

)Gerry and Shinskey, 2005:

Ci1b(s) = Kp

⎛⎜⎝1 +1

Ti s+

Tds

1 + TdN s + 0.5

(TdN s)2

⎞⎟⎠Modified series form:

Cs(s) = K′p

(1 +

1

T′i s

)⎛⎝T′ds + 1

T′d

N s + 1

⎞⎠

N generally assumes a value between 1 and 33, although in themajority of the practical cases its setting falls between 8 and 16 (Anget al., 2005).

[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95

Page 53: Industrial Control Systems - PID Controllers

Modified Derivative Action

Modified ideal form:

Ci1a(s) = Kp

(1 +

1

Ti s+

TdsTdN s + 1

)Gerry and Shinskey, 2005:

Ci1b(s) = Kp

⎛⎜⎝1 +1

Ti s+

Tds

1 + TdN s + 0.5

(TdN s)2

⎞⎟⎠Modified series form:

Cs(s) = K′p

(1 +

1

T′i s

)⎛⎝T′ds + 1

T′d

N s + 1

⎞⎠N generally assumes a value between 1 and 33, although in themajority of the practical cases its setting falls between 8 and 16 (Anget al., 2005).

[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95

Page 54: Industrial Control Systems - PID Controllers

Modified Derivative Action

Alternative modified ideal form:

Ci2a(s) = Kp

(1 +

1

Ti s+ Tds

)1

Tf s + 1

Astrom and Hagglund, 2004:

Ci2b(s) = Kp

(1 +

1

Ti s+ Tds

)1

(Tf s + 1)2

Derivative kick: A spike in the control signal due to an abrupt(stepwise) change of the set-point signal.

If the set-point is constant, the derivative action can be applied onlyto the process variable:

u(t) = −Kddy(t)

dt

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 25 / 95

Page 55: Industrial Control Systems - PID Controllers

Modified Derivative Action

Alternative modified ideal form:

Ci2a(s) = Kp

(1 +

1

Ti s+ Tds

)1

Tf s + 1

Astrom and Hagglund, 2004:

Ci2b(s) = Kp

(1 +

1

Ti s+ Tds

)1

(Tf s + 1)2

Derivative kick: A spike in the control signal due to an abrupt(stepwise) change of the set-point signal.

If the set-point is constant, the derivative action can be applied onlyto the process variable:

u(t) = −Kddy(t)

dt

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 25 / 95

Page 56: Industrial Control Systems - PID Controllers

Modified Derivative Action

Alternative modified ideal form:

Ci2a(s) = Kp

(1 +

1

Ti s+ Tds

)1

Tf s + 1

Astrom and Hagglund, 2004:

Ci2b(s) = Kp

(1 +

1

Ti s+ Tds

)1

(Tf s + 1)2

Derivative kick: A spike in the control signal due to an abrupt(stepwise) change of the set-point signal.

If the set-point is constant, the derivative action can be applied onlyto the process variable:

u(t) = −Kddy(t)

dt

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 25 / 95

Page 57: Industrial Control Systems - PID Controllers

Modified Derivative Action

Alternative modified ideal form:

Ci2a(s) = Kp

(1 +

1

Ti s+ Tds

)1

Tf s + 1

Astrom and Hagglund, 2004:

Ci2b(s) = Kp

(1 +

1

Ti s+ Tds

)1

(Tf s + 1)2

Derivative kick: A spike in the control signal due to an abrupt(stepwise) change of the set-point signal.

If the set-point is constant, the derivative action can be applied onlyto the process variable:

u(t) = −Kddy(t)

dt

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 25 / 95

Page 58: Industrial Control Systems - PID Controllers

Derivative Action

80% of the employed PID controllers have the derivative partswitched-off (Ang et al., 2005).

Derivative action is the most difficult to tune, why?

Consider a first-order-plus-dead-time (FOPDT) plant:

P(s) =K

Ts + 1e−Ls

and a PD controller:

C (s) = Kp(1 + Tds)

Open loop frequency response:

∣C (j!)P(j!)∣ = KKp

√1 + T 2

d!2

1 + T 2!2

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 26 / 95

Page 59: Industrial Control Systems - PID Controllers

Derivative Action

80% of the employed PID controllers have the derivative partswitched-off (Ang et al., 2005).

Derivative action is the most difficult to tune, why?

Consider a first-order-plus-dead-time (FOPDT) plant:

P(s) =K

Ts + 1e−Ls

and a PD controller:

C (s) = Kp(1 + Tds)

Open loop frequency response:

∣C (j!)P(j!)∣ = KKp

√1 + T 2

d!2

1 + T 2!2

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 26 / 95

Page 60: Industrial Control Systems - PID Controllers

Derivative Action

80% of the employed PID controllers have the derivative partswitched-off (Ang et al., 2005).

Derivative action is the most difficult to tune, why?

Consider a first-order-plus-dead-time (FOPDT) plant:

P(s) =K

Ts + 1e−Ls

and a PD controller:

C (s) = Kp(1 + Tds)

Open loop frequency response:

∣C (j!)P(j!)∣ = KKp

√1 + T 2

d!2

1 + T 2!2

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 26 / 95

Page 61: Industrial Control Systems - PID Controllers

Derivative Action

80% of the employed PID controllers have the derivative partswitched-off (Ang et al., 2005).

Derivative action is the most difficult to tune, why?

Consider a first-order-plus-dead-time (FOPDT) plant:

P(s) =K

Ts + 1e−Ls

and a PD controller:

C (s) = Kp(1 + Tds)

Open loop frequency response:

∣C (j!)P(j!)∣ = KKp

√1 + T 2

d!2

1 + T 2!2

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 26 / 95

Page 62: Industrial Control Systems - PID Controllers

Derivative Action

Open loop frequency response:

KKp

√1 + T 2

d!2

1 + T 2!2≥ KKp min

(1,

Td

T

)

Td ≥ T ⇒ min(

1, TdT

)= 1

If Td ≥ T and KKp > 1, then

∣C (j!)P(j!)∣ ≥ 1

Td ≤ T ⇒ min(

1, TdT

)= Td

T

If Td ≤ T and KKpTdT > 1, then

∣C (j!)P(j!)∣ ≥ 1

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 27 / 95

Page 63: Industrial Control Systems - PID Controllers

Derivative Action

Open loop frequency response:

KKp

√1 + T 2

d!2

1 + T 2!2≥ KKp min

(1,

Td

T

)Td ≥ T ⇒ min

(1, Td

T

)= 1

If Td ≥ T and KKp > 1, then

∣C (j!)P(j!)∣ ≥ 1

Td ≤ T ⇒ min(

1, TdT

)= Td

T

If Td ≤ T and KKpTdT > 1, then

∣C (j!)P(j!)∣ ≥ 1

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 27 / 95

Page 64: Industrial Control Systems - PID Controllers

Derivative Action

Open loop frequency response:

KKp

√1 + T 2

d!2

1 + T 2!2≥ KKp min

(1,

Td

T

)Td ≥ T ⇒ min

(1, Td

T

)= 1

If Td ≥ T and KKp > 1, then

∣C (j!)P(j!)∣ ≥ 1

Td ≤ T ⇒ min(

1, TdT

)= Td

T

If Td ≤ T and KKpTdT > 1, then

∣C (j!)P(j!)∣ ≥ 1

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 27 / 95

Page 65: Industrial Control Systems - PID Controllers

Derivative Action

Open loop frequency response:

KKp

√1 + T 2

d!2

1 + T 2!2≥ KKp min

(1,

Td

T

)Td ≥ T ⇒ min

(1, Td

T

)= 1

If Td ≥ T and KKp > 1, then

∣C (j!)P(j!)∣ ≥ 1

Td ≤ T ⇒ min(

1, TdT

)= Td

T

If Td ≤ T and KKpTdT > 1, then

∣C (j!)P(j!)∣ ≥ 1

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 27 / 95

Page 66: Industrial Control Systems - PID Controllers

Derivative Action

Open loop frequency response:

KKp

√1 + T 2

d!2

1 + T 2!2≥ KKp min

(1,

Td

T

)Td ≥ T ⇒ min

(1, Td

T

)= 1

If Td ≥ T and KKp > 1, then

∣C (j!)P(j!)∣ ≥ 1

Td ≤ T ⇒ min(

1, TdT

)= Td

T

If Td ≤ T and KKpTdT > 1, then

∣C (j!)P(j!)∣ ≥ 1

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 27 / 95

Page 67: Industrial Control Systems - PID Controllers

Frequency Response

The magnitude of the open-looptransfer function is not less than0 dB. As a consequence, sincethe phase decreases when thefrequency increases because ofthe time delay, the closed-loopsystem will be unstable.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 28 / 95

Page 68: Industrial Control Systems - PID Controllers

Derivative Action

Consider the following process:

P(s) =2

s + 1e−0.2s

controlled by a PID controller in series form with Kp = 1 and Ti = 1.

If Td = 0.01, GM=12.3dB, PM=68.2 deg.

If Td = 0.05, GM=13.2dB, PM=72.7 deg.

If Td = 0.5, the system stability is lost!

In summary:

Sensitive to noise

Hard to tune (4 parameters)

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 29 / 95

Page 69: Industrial Control Systems - PID Controllers

Derivative Action

Consider the following process:

P(s) =2

s + 1e−0.2s

controlled by a PID controller in series form with Kp = 1 and Ti = 1.

If Td = 0.01, GM=12.3dB, PM=68.2 deg.

If Td = 0.05, GM=13.2dB, PM=72.7 deg.

If Td = 0.5, the system stability is lost!

In summary:

Sensitive to noise

Hard to tune (4 parameters)

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 29 / 95

Page 70: Industrial Control Systems - PID Controllers

Derivative Action

Consider the following process:

P(s) =2

s + 1e−0.2s

controlled by a PID controller in series form with Kp = 1 and Ti = 1.

If Td = 0.01, GM=12.3dB, PM=68.2 deg.

If Td = 0.05, GM=13.2dB, PM=72.7 deg.

If Td = 0.5, the system stability is lost!

In summary:

Sensitive to noise

Hard to tune (4 parameters)

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 29 / 95

Page 71: Industrial Control Systems - PID Controllers

Derivative Action

Consider the following process:

P(s) =2

s + 1e−0.2s

controlled by a PID controller in series form with Kp = 1 and Ti = 1.

If Td = 0.01, GM=12.3dB, PM=68.2 deg.

If Td = 0.05, GM=13.2dB, PM=72.7 deg.

If Td = 0.5, the system stability is lost!

In summary:

Sensitive to noise

Hard to tune (4 parameters)

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 29 / 95

Page 72: Industrial Control Systems - PID Controllers

Derivative Action

Consider the following process:

P(s) =2

s + 1e−0.2s

controlled by a PID controller in series form with Kp = 1 and Ti = 1.

If Td = 0.01, GM=12.3dB, PM=68.2 deg.

If Td = 0.05, GM=13.2dB, PM=72.7 deg.

If Td = 0.5, the system stability is lost!

In summary:

Sensitive to noise

Hard to tune (4 parameters)

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 29 / 95

Page 73: Industrial Control Systems - PID Controllers

Derivative Action

Consider the following process:

P(s) =2

s + 1e−0.2s

controlled by a PID controller in series form with Kp = 1 and Ti = 1.

If Td = 0.01, GM=12.3dB, PM=68.2 deg.

If Td = 0.05, GM=13.2dB, PM=72.7 deg.

If Td = 0.5, the system stability is lost!

In summary:

Sensitive to noise

Hard to tune (4 parameters)

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 29 / 95

Page 74: Industrial Control Systems - PID Controllers

Integral Windup

Solid:process output,Dashed:process input,Dotted:integral term

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 30 / 95

Page 75: Industrial Control Systems - PID Controllers

Integral Windup

Solid:process output,Dashed:process input,Dotted:integral term

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 30 / 95

Page 76: Industrial Control Systems - PID Controllers

Conditional Integration

The integral term is limited to a predefined value.

The integration is stopped when the error is greater than a predefinedthreshold, namely, when the process variable value is far from thesetpoint value.

The integration is stopped when the control variable saturates, i.e.,when u

′ ∕= u.

The integration is stopped when the control variable saturates andthe control error and the control variable have the same sign (i.e.,when ue > 0).

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 31 / 95

Page 77: Industrial Control Systems - PID Controllers

Conditional Integration

The integral term is limited to a predefined value.

The integration is stopped when the error is greater than a predefinedthreshold, namely, when the process variable value is far from thesetpoint value.

The integration is stopped when the control variable saturates, i.e.,when u

′ ∕= u.

The integration is stopped when the control variable saturates andthe control error and the control variable have the same sign (i.e.,when ue > 0).

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 31 / 95

Page 78: Industrial Control Systems - PID Controllers

Conditional Integration

The integral term is limited to a predefined value.

The integration is stopped when the error is greater than a predefinedthreshold, namely, when the process variable value is far from thesetpoint value.

The integration is stopped when the control variable saturates, i.e.,when u

′ ∕= u.

The integration is stopped when the control variable saturates andthe control error and the control variable have the same sign (i.e.,when ue > 0).

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 31 / 95

Page 79: Industrial Control Systems - PID Controllers

Conditional Integration

The integral term is limited to a predefined value.

The integration is stopped when the error is greater than a predefinedthreshold, namely, when the process variable value is far from thesetpoint value.

The integration is stopped when the control variable saturates, i.e.,when u

′ ∕= u.

The integration is stopped when the control variable saturates andthe control error and the control variable have the same sign (i.e.,when ue > 0).

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 31 / 95

Page 80: Industrial Control Systems - PID Controllers

Anti-windup for Automatic Reset Configuration

Automatic reset:

Limiting the controller output:

Limiting the integrator output:

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 32 / 95

Page 81: Industrial Control Systems - PID Controllers

Anti-windup for Automatic Reset Configuration

Automatic reset:

Limiting the controller output:

Limiting the integrator output:

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 32 / 95

Page 82: Industrial Control Systems - PID Controllers

Anti-windup for Automatic Reset Configuration

Automatic reset:

Limiting the controller output:

Limiting the integrator output:

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 32 / 95

Page 83: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Tuning rule for Tt (Astrom and Hagglund 1995):

Tt =√

TdTi

Not useful for a PI controller

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 33 / 95

Page 84: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Tuning rule for Tt (Astrom and Hagglund 1995):

Tt =√TdTi

Not useful for a PI controller

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 33 / 95

Page 85: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Tuning rule for Tt (Astrom and Hagglund 1995):

Tt =√TdTi

Not useful for a PI controller

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 33 / 95

Page 86: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Tuning rule for Tt (Astrom and Hagglund 1995):

Tt =√TdTi

Not useful for a PI controller

[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 33 / 95

Page 87: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Bohn and Atherton, 1995 suggest Tt = Ti .

Conditioning technique (Hanus et al., 1987;Walgama et al., 1991):This is a tracking rule (u tracks u

′). In this framework:

Tt = Kp

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 34 / 95

Page 88: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Bohn and Atherton, 1995 suggest Tt = Ti .

Conditioning technique (Hanus et al., 1987;Walgama et al., 1991):This is a tracking rule (u tracks u

′). In this framework:

Tt = Kp

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 34 / 95

Page 89: Industrial Control Systems - PID Controllers

Back-calculation

Integrator input:

ei =Kp

Tie +

1

Tt(u′ − u)

Bohn and Atherton, 1995 suggest Tt = Ti .

Conditioning technique (Hanus et al., 1987;Walgama et al., 1991):This is a tracking rule (u tracks u

′). In this framework:

Tt = Kp

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 34 / 95

Page 90: Industrial Control Systems - PID Controllers

PID with Tracking Input

SP: Setpoint, MV: Manipulated Variable, TR: Tracking Input[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 35 / 95

Page 91: Industrial Control Systems - PID Controllers

Bumpless Transfer

Bumpless Transfer between Manual (M) and Automatic (A)

A is to track M in this case.

[Visioli, 2006]

Behzad Samadi (Amirkabir University) Industrial Control 36 / 95

Page 92: Industrial Control Systems - PID Controllers

Bumpless Transfer

Bumpless Transfer between Manual (M) and Automatic (A)

Incremental manual input

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 37 / 95

Page 93: Industrial Control Systems - PID Controllers

Bumpless Transfer

Bumpless Transfer between Manual (M) and Automatic (A)

Incremental manual input

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 37 / 95

Page 94: Industrial Control Systems - PID Controllers

Bumpless Transfer

Manual Control Module:

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 38 / 95

Page 95: Industrial Control Systems - PID Controllers

Bumpless Transfer

PID with Manual Switch:

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 39 / 95

Page 96: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).30% gave poor performance due to poor controller tuning.30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 97: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).30% gave poor performance due to poor controller tuning.30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 98: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).30% gave poor performance due to poor controller tuning.30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 99: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).

30% gave poor performance due to poor controller tuning.30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 100: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).30% gave poor performance due to poor controller tuning.

30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 101: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).30% gave poor performance due to poor controller tuning.30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).

20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 102: Industrial Control Systems - PID Controllers

PID Controller Design

In process industries, more than 97% of the regulatory controllers areof the PID type.

Most loops are actually under PI control (as a result of the largenumber of flow loops).

Pulp and paper industry over 2000 loops:

Only 20% of loops worked well (i.e. less variability in the automaticmode over the manual mode).30% gave poor performance due to poor controller tuning.30% gave poor performance due to control valve problems (e.g. controlvalve stick-slip, dead band, backlash).20% gave poor performance due to process and/or control systemdesign problems.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 40 / 95

Page 103: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 104: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.

20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 105: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.

30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 106: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 107: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 108: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).

Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 109: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 110: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 111: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.

32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 112: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.

36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 113: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.

PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 114: Industrial Control Systems - PID Controllers

PID Controller Design

Process industries:

30% of loops operated on manual mode.20% of controllers used factory tuning.30% gave poor performance due to sensor and control valve problems.

Chemical process industry:

Half of the control valves needed to be fixed (results of the Fisher diagnosticvalve package).Most poor tuning was due to control valve problems.

Refining, chemicals, and pulp and paper industries over 26,000 controllers:

Only 32% of loops were classified as excellent or acceptable.32% of controllers were classified as fair or poor, which indicatesunacceptably sluggish or oscillatory responses.36% of controllers were on open- loop, which implies that the controllerswere either in manual or virtually saturated.PID algorithms are used in vast majority of applications (97%). For the rarecases of complex dynamics or significant dead time, other algorithms areused.

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 41 / 95

Page 115: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols PID Tuning Method:

Ziegler-Nichols closed-loop tuning method

Ziegler-Nichols open-loop tuning method

Ziegler, Nichols, “Optimum settings for automatic controllers”, Trans.ASME, 64, pp. 759-768, 1942[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 42 / 95

Page 116: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:1 Remove integral and derivative action.

2 Create a small disturbance in the loop by changing the set point.Adjust the proportional, increasing and/or decreasing, the gain untilthe oscillations have constant amplitude.

3 Record the gain value (Ku) and period of oscillation (Pu).

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 43 / 95

Page 117: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:1 Remove integral and derivative action.2 Create a small disturbance in the loop by changing the set point.

Adjust the proportional, increasing and/or decreasing, the gain untilthe oscillations have constant amplitude.

3 Record the gain value (Ku) and period of oscillation (Pu).

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 43 / 95

Page 118: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:1 Remove integral and derivative action.2 Create a small disturbance in the loop by changing the set point.

Adjust the proportional, increasing and/or decreasing, the gain untilthe oscillations have constant amplitude.

3 Record the gain value (Ku) and period of oscillation (Pu).

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 43 / 95

Page 119: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:1 Remove integral and derivative action.2 Create a small disturbance in the loop by changing the set point.

Adjust the proportional, increasing and/or decreasing, the gain untilthe oscillations have constant amplitude.

3 Record the gain value (Ku) and period of oscillation (Pu).

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 43 / 95

Page 120: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:1 Remove integral and derivative action.2 Create a small disturbance in the loop by changing the set point.

Adjust the proportional, increasing and/or decreasing, the gain untilthe oscillations have constant amplitude.

3 Record the gain value (Ku) and period of oscillation (Pu).

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 43 / 95

Page 121: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

[Love, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 44 / 95

Page 122: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method (ultimate cycle method):

C (s) = Kp(1 +1

Ti s+ Tds)

Kp Ti Td

P Controller Ku/2 - -

PI Controller Ku/2.2 Pu/1.2 -

PID Controller Ku/1.7 Pu/2 Pu/8

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 45 / 95

Page 123: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controllerIncludes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consumingCan venture into unstable regions while testing the P controller, whichcould cause the system to become out of controlIt does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 124: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controller

Includes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consumingCan venture into unstable regions while testing the P controller, whichcould cause the system to become out of controlIt does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 125: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controllerIncludes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consumingCan venture into unstable regions while testing the P controller, whichcould cause the system to become out of controlIt does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 126: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controllerIncludes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consumingCan venture into unstable regions while testing the P controller, whichcould cause the system to become out of controlIt does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 127: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controllerIncludes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consuming

Can venture into unstable regions while testing the P controller, whichcould cause the system to become out of controlIt does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 128: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controllerIncludes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consumingCan venture into unstable regions while testing the P controller, whichcould cause the system to become out of control

It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 129: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning method:

Advantages:

Easy experiment; only need to change the P controllerIncludes dynamics of whole process, which gives a more accuratepicture of how the system is behaving

Disadvantages:

Experiment can be time consumingCan venture into unstable regions while testing the P controller, whichcould cause the system to become out of controlIt does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 46 / 95

Page 130: Industrial Control Systems - PID Controllers

PID Controller Design

Process Reaction Curve:

P: the size of the step disturbance in the setpoint

L: the time taken from the moment the disturbance was introducedto the first sign of change in the output signal

ΔCp: the change in output signal in response to the initial stepdisturbance

T : the time taken for this change to occur

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 47 / 95

Page 131: Industrial Control Systems - PID Controllers

PID Controller Design

Process Reaction Curve:

N =ΔCp

T : reaction rate

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 48 / 95

Page 132: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method (process reaction method):

C (s) = Kp(1 +1

Ti s+ Tds)

Kp Ti Td

P Controller K - -

PI Controller 0.9K L/0.3 -

PID Controller 1.2K 2L 0.5L

K =P

NL[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 49 / 95

Page 133: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 134: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methods

It is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 135: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular method

Of these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 136: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 137: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 138: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.

Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 139: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.

It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 140: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols open-loop tuning method:

Advantages:

Quick and easier to use than other methodsIt is a robust and popular methodOf these two techniques, the Process Reaction Method is the easiestand least disruptive to implement

Disadvantages:

It depends upon purely proportional measurement to estimate I and Dcontrollers.Approximations for the Kc , Ti , and Td values might not be entirelyaccurate for different systems.It does not hold for I , D and PD controllers.

[Woolf, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 50 / 95

Page 141: Industrial Control Systems - PID Controllers

PID Controller Design

Summary:

Ziegler-Nichols closed-loop tuning method: Gain margin of 2

Ziegler-Nichols open-loop tuning method: Decay ratio of 0.25

Behzad Samadi (Amirkabir University) Industrial Control 51 / 95

Page 142: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning methods:

G (s) =Ke−Ds

�s + 1

[Yu, 2007]

Behzad Samadi (Amirkabir University) Industrial Control 52 / 95

Page 143: Industrial Control Systems - PID Controllers

PID Controller Design

Ziegler-Nichols closed-loop tuning methods:

G (s) =Ke−td s

�s + 1

Quarter decay ration for 0 < td� < 1 [O’Dwyer, 2002]

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 53 / 95

Page 144: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 145: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dt

Integrated Error for non-oscillatory processes: IE =∫∞

0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 146: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 147: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 148: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dt

Integrated Time Error: ITE =∫∞

0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 149: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 150: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 151: Industrial Control Systems - PID Controllers

PID Controller Design

Quantities to characterize the error:

Maximum error: max e(t)

Integrated Absolute Error: IAE =∫∞

0 ∣e(t)∣dtIntegrated Error for non-oscillatory processes: IE =

∫∞0 e(t)dt

Integrated Squared Error: ISE =∫∞

0 e2(t)dt

Integrated Time Absolute Error: ITAE =∫∞

0 t∣e(t)∣dtIntegrated Time Error: ITE =

∫∞0 te(t)dt

Integrated Time Squared Error: ITSE =∫∞

0 te2(t)dt

Integrated Squared Time Error: ISTE =∫∞

0 t2e2(t)dt

[Astrom and Hagglund, 1995]

Behzad Samadi (Amirkabir University) Industrial Control 54 / 95

Page 152: Industrial Control Systems - PID Controllers

PID Controller Design

ITAE optimization:

G (s) =Ke−td s

�s + 1

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 55 / 95

Page 153: Industrial Control Systems - PID Controllers

PID Controller Design

Ciancone and Marlin Tuning:

G (s) =Ke−td s

�s + 1

Fractional dead time: Tf = tdtd +�

Using Tf , compute �CM and �CM :

Tf 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

�CM 1.1 1.1 1.8 1.1 1.0 0.8 0.59 0.42 0.32

�CM 0.23 0.23 0.23 0.72 0.72 0.70 0.67 0.60 0.53

Compute the controller gains:

Kp =�CM

K, Ti = �CM(td + �)

Minimizing IAE or ISE [Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 56 / 95

Page 154: Industrial Control Systems - PID Controllers

PID Controller Design

Ciancone and Marlin PI Tuning:

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 57 / 95

Page 155: Industrial Control Systems - PID Controllers

PID Controller Design

Ciancone and Marlin PID Tuning:

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 58 / 95

Page 156: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

We have:C

R=

GcGp

1 + GcGp

Therefore:

Gc =1

Gp

C/R

1− C/R

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 59 / 95

Page 157: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

C

R=

1

�cs + 1⇒ Gc =

1

Gp

(1

�cs

)

Example:

Gp =Kp

�ps + 1⇒ Gc =

�p

Kp�c

(1 +

1

�ps

)[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 60 / 95

Page 158: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

C

R=

1

�cs + 1⇒ Gc =

1

Gp

(1

�cs

)Example:

Gp =Kp

�ps + 1⇒ Gc =

�p

Kp�c

(1 +

1

�ps

)[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 60 / 95

Page 159: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

For delayed systems:

C

R=

e−�s

�cs + 1⇒ Gc =

1

Gp

(e−�s

(�cs + 1)− e−�s

)

Considering e−�s ≈ 1− �s:

Gc ≈1

Gp

(e−�s

(�c + �)s

)

Example:

Gp =Kpe

−td s

�ps + 1⇒ Gc =

�p

Kp(�c + �)

(1 +

1

�ps

)for � = td

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 61 / 95

Page 160: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

For delayed systems:

C

R=

e−�s

�cs + 1⇒ Gc =

1

Gp

(e−�s

(�cs + 1)− e−�s

)Considering e−�s ≈ 1− �s:

Gc ≈1

Gp

(e−�s

(�c + �)s

)

Example:

Gp =Kpe

−td s

�ps + 1⇒ Gc =

�p

Kp(�c + �)

(1 +

1

�ps

)for � = td

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 61 / 95

Page 161: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

For delayed systems:

C

R=

e−�s

�cs + 1⇒ Gc =

1

Gp

(e−�s

(�cs + 1)− e−�s

)Considering e−�s ≈ 1− �s:

Gc ≈1

Gp

(e−�s

(�c + �)s

)

Example:

Gp =Kpe

−td s

�ps + 1⇒ Gc =

�p

Kp(�c + �)

(1 +

1

�ps

)for � = td

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 61 / 95

Page 162: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

For delayed systems:

C

R=

e−�s

�cs + 1⇒ Gc =

1

Gp

(e−�s

(�cs + 1)− e−�s

)Considering e−�s ≈ 1− �s:

Gc ≈1

Gp

(e−�s

(�c + �)s

)

Example:

Gp =Kpe

−td s

�ps + 1⇒ Gc =

�p

Kp(�c + �)

(1 +

1

�ps

)for � = td

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 61 / 95

Page 163: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

Second order underdamped desired response:

C

R=

1

�2s2 + 2��s + 1⇒ Gc =

1

Gp

(1

�2s2 + 2��s

)

Example:

Gp =Kp

(�1s + 1)(�2s + 1)⇒ Gc =

(�1s + 1)(�2s + 1)

Kp�s(�s + 2�)

Assuming �2 > �1 and � = 2��2

Gc =�1

4Kp�2�2

(1 +

1

�1s

)[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 62 / 95

Page 164: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

Second order underdamped desired response:

C

R=

1

�2s2 + 2��s + 1⇒ Gc =

1

Gp

(1

�2s2 + 2��s

)

Example:

Gp =Kp

(�1s + 1)(�2s + 1)⇒ Gc =

(�1s + 1)(�2s + 1)

Kp�s(�s + 2�)

Assuming �2 > �1 and � = 2��2

Gc =�1

4Kp�2�2

(1 +

1

�1s

)[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 62 / 95

Page 165: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

Second order underdamped desired response:

C

R=

1

�2s2 + 2��s + 1⇒ Gc =

1

Gp

(1

�2s2 + 2��s

)

Example:

Gp =Kp

(�1s + 1)(�2s + 1)⇒ Gc =

(�1s + 1)(�2s + 1)

Kp�s(�s + 2�)

Assuming �2 > �1 and � = 2��2

Gc =�1

4Kp�2�2

(1 +

1

�1s

)[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 62 / 95

Page 166: Industrial Control Systems - PID Controllers

PID Controller Design

Direct Synthesis:

Second order underdamped desired response:

C

R=

1

�2s2 + 2��s + 1⇒ Gc =

1

Gp

(1

�2s2 + 2��s

)

Example:

Gp =Kp

(�1s + 1)(�2s + 1)⇒ Gc =

(�1s + 1)(�2s + 1)

Kp�s(�s + 2�)

Assuming �2 > �1 and � = 2��2

Gc =�1

4Kp�2�2

(1 +

1

�1s

)[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 62 / 95

Page 167: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control: Assume that we have an approximate model Gp ofthe process Gp

Open loop:

Gc = G−1p

Closed loop:

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 63 / 95

Page 168: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control: Assume that we have an approximate model Gp ofthe process Gp

Open loop:

Gc = G−1p

Closed loop:

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 63 / 95

Page 169: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

P = G ★c (R − C + C )

= G ★c (R − C + GpP)

Therefore:

P =G ★

c

1− G ★c Gp

(R−C )

P = Gc (R − C )

Therefore:

Gc = G★c1−G★c Gp

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 64 / 95

Page 170: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

P = G ★c (R − C + C )

= G ★c (R − C + GpP)

Therefore:

P =G ★

c

1− G ★c Gp

(R−C )

P = Gc (R − C )

Therefore:

Gc = G★c1−G★c Gp

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 64 / 95

Page 171: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

P = G ★c (R − C + C )

= G ★c (R − C + GpP)

Therefore:

P =G ★

c

1− G ★c Gp

(R−C )

P = Gc (R − C )

Therefore:

Gc = G★c1−G★c Gp

[Chau, 2002]Behzad Samadi (Amirkabir University) Industrial Control 64 / 95

Page 172: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Closed loop transfer function:

C =

[(1− G ★

c Gp)GL

1 + G ★c (Gp − Gp)

]L +

[GpG

★c

1 + G ★c (Gp − Gp)

]R

How to choose G ★c :

Gp = Gp+Gp−

Gp+ contains all positive zeros if any.

The design is based on Gp− only:

G ★c =

1

Gp−

[1

�cs + 1

]r

r = 1, 2

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 65 / 95

Page 173: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Closed loop transfer function:

C =

[(1− G ★

c Gp)GL

1 + G ★c (Gp − Gp)

]L +

[GpG

★c

1 + G ★c (Gp − Gp)

]R

How to choose G ★c :

Gp = Gp+Gp−

Gp+ contains all positive zeros if any.

The design is based on Gp− only:

G ★c =

1

Gp−

[1

�cs + 1

]r

r = 1, 2

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 65 / 95

Page 174: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Closed loop transfer function:

C =

[(1− G ★

c Gp)GL

1 + G ★c (Gp − Gp)

]L +

[GpG

★c

1 + G ★c (Gp − Gp)

]R

How to choose G ★c :

Gp = Gp+Gp−

Gp+ contains all positive zeros if any.

The design is based on Gp− only:

G ★c =

1

Gp−

[1

�cs + 1

]r

r = 1, 2

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 65 / 95

Page 175: Industrial Control Systems - PID Controllers

PID Controller Design

Pade Approximation of Delays:

e−td s ≈ Nd (s)Dd (s)

Gd1/0(s) = 1− tds

Gd0/1(s) = 11+td s

Gd1/1(s) =− td

2s+1

td2

s+1

Gd2/2(s) =t2d

12s2− td

2s+1

t2d

12s2+

td2

s+1

http://mathworld.wolfram.com/PadeApproximant.html

Behzad Samadi (Amirkabir University) Industrial Control 66 / 95

Page 176: Industrial Control Systems - PID Controllers

PID Controller Design

Pade Approximation of Delays:

e−td s ≈ Nd (s)Dd (s)

Gd1/0(s) = 1− tds

Gd0/1(s) = 11+td s

Gd1/1(s) =− td

2s+1

td2

s+1

Gd2/2(s) =t2d

12s2− td

2s+1

t2d

12s2+

td2

s+1

http://mathworld.wolfram.com/PadeApproximant.html

Behzad Samadi (Amirkabir University) Industrial Control 66 / 95

Page 177: Industrial Control Systems - PID Controllers

PID Controller Design

Pade Approximation of Delays:

e−td s ≈ Nd (s)Dd (s)

Gd1/0(s) = 1− tds

Gd0/1(s) = 11+td s

Gd1/1(s) =− td

2s+1

td2

s+1

Gd2/2(s) =t2d

12s2− td

2s+1

t2d

12s2+

td2

s+1

http://mathworld.wolfram.com/PadeApproximant.html

Behzad Samadi (Amirkabir University) Industrial Control 66 / 95

Page 178: Industrial Control Systems - PID Controllers

PID Controller Design

Pade Approximation of Delays:

e−td s ≈ Nd (s)Dd (s)

Gd1/0(s) = 1− tds

Gd0/1(s) = 11+td s

Gd1/1(s) =− td

2s+1

td2

s+1

Gd2/2(s) =t2d

12s2− td

2s+1

t2d

12s2+

td2

s+1

http://mathworld.wolfram.com/PadeApproximant.html

Behzad Samadi (Amirkabir University) Industrial Control 66 / 95

Page 179: Industrial Control Systems - PID Controllers

PID Controller Design

Pade Approximation of Delays:

e−td s ≈ Nd (s)Dd (s)

Gd1/0(s) = 1− tds

Gd0/1(s) = 11+td s

Gd1/1(s) =− td

2s+1

td2

s+1

Gd2/2(s) =t2d

12s2− td

2s+1

t2d

12s2+

td2

s+1

http://mathworld.wolfram.com/PadeApproximant.html

Behzad Samadi (Amirkabir University) Industrial Control 66 / 95

Page 180: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Example: Gp =Kpe−td s

�ps+1

Gp ≈Kp

(�ps + 1)( td2 s + 1)

(− td

2s + 1

)

Gp− =Kp

(�ps + 1)( td2 s + 1)

Gp+ = − td

2s + 1

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 67 / 95

Page 181: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Example: Gp =Kpe−td s

�ps+1

Gp ≈Kp

(�ps + 1)( td2 s + 1)

(− td

2s + 1

)

Gp− =Kp

(�ps + 1)( td2 s + 1)

Gp+ = − td

2s + 1

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 67 / 95

Page 182: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Example:

G ★c = G−1

p−1

�cs + 1=

(�ps + 1)( td2 s + 1)

Kp

1

�cs + 1

Gc =G ★

c

1− G ★c Gp

= Kp(1 +1

Ti s+ Tds)

where:

Kc =1

Kp

2�p

td+ 1

2 �ctd

+ 1; Ti = �p +

td

2; Td =

�p

2�p

td+ 1

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 68 / 95

Page 183: Industrial Control Systems - PID Controllers

PID Controller Design

Internal Model Control:

Example:

G ★c = G−1

p−1

�cs + 1=

(�ps + 1)( td2 s + 1)

Kp

1

�cs + 1

Gc =G ★

c

1− G ★c Gp

= Kp(1 +1

Ti s+ Tds)

where:

Kc =1

Kp

2�p

td+ 1

2 �ctd

+ 1; Ti = �p +

td

2; Td =

�p

2�p

td+ 1

[Chau, 2002]

Behzad Samadi (Amirkabir University) Industrial Control 68 / 95

Page 184: Industrial Control Systems - PID Controllers

PID Controller Design

[Chau, 2002]Behzad Samadi (Amirkabir University) Industrial Control 69 / 95

Page 185: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad PID Tuning Method:

S. Skogestad, “Probably the best simple PID tuning rules in theworld” Presented at AIChE Annual meeting, Reno, NV, USA, 04-09Nov. 2001, Paper no. 276h

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 70 / 95

Page 186: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad PID Tuning Method:

g(s) = ke−�s

(�1s + 1)(�2s + 1)

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 71 / 95

Page 187: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):(y

ys

)desired

=1

�cs + 1e−�t

c(s) =(�1s + 1)(�2s + 1)

k

1

(�c + �)s

c(s) = Kc(1 +1

�I s)(�Ds + 1)

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1. �D = �2

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 72 / 95

Page 188: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):(y

ys

)desired

=1

�cs + 1e−�t

c(s) =(�1s + 1)(�2s + 1)

k

1

(�c + �)s

c(s) = Kc(1 +1

�I s)(�Ds + 1)

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1. �D = �2

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 72 / 95

Page 189: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):(y

ys

)desired

=1

�cs + 1e−�t

c(s) =(�1s + 1)(�2s + 1)

k

1

(�c + �)s

c(s) = Kc(1 +1

�I s)(�Ds + 1)

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1. �D = �2

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 72 / 95

Page 190: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):(y

ys

)desired

=1

�cs + 1e−�t

c(s) =(�1s + 1)(�2s + 1)

k

1

(�c + �)s

c(s) = Kc(1 +1

�I s)(�Ds + 1)

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1. �D = �2

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 72 / 95

Page 191: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1, �D = �2

Effective cancellation of the first order dynamics by �I = �1

For processes with large �1, this choice results in a long settling timefor disturbance response.

Consider: g(s) = k e−�s

�1s+1 ≈k�1s for large �1. With a PI controller

c(s) = Kc(1 + 1�I s ), the poles of the closed loop system can be

obtained from the following equation:

�I

k ′Kcs2 + �I s + 1 = 0

with k′

= k�1

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 73 / 95

Page 192: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1, �D = �2

Effective cancellation of the first order dynamics by �I = �1

For processes with large �1, this choice results in a long settling timefor disturbance response.

Consider: g(s) = k e−�s

�1s+1 ≈k�1s for large �1. With a PI controller

c(s) = Kc(1 + 1�I s ), the poles of the closed loop system can be

obtained from the following equation:

�I

k ′Kcs2 + �I s + 1 = 0

with k′

= k�1

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 73 / 95

Page 193: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Tuning Rule

Kc =1

k

�1

�c + �, �I = �1, �D = �2

Effective cancellation of the first order dynamics by �I = �1

For processes with large �1, this choice results in a long settling timefor disturbance response.

Consider: g(s) = k e−�s

�1s+1 ≈k�1s for large �1. With a PI controller

c(s) = Kc(1 + 1�I s ), the poles of the closed loop system can be

obtained from the following equation:

�I

k ′Kcs2 + �I s + 1 = 0

with k′

= k�1

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 73 / 95

Page 194: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Comparing to s2 + 2�!0s + !2:

!0 =

√k ′Kc

�I, � =

1

2

√k ′Kc�I

To avoid slow oscillations, consider: � ≥ 1

�I ≥4

k ′Kc

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 74 / 95

Page 195: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Comparing to s2 + 2�!0s + !2:

!0 =

√k ′Kc

�I, � =

1

2

√k ′Kc�I

To avoid slow oscillations, consider: � ≥ 1

�I ≥4

k ′Kc

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 74 / 95

Page 196: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Comparing to s2 + 2�!0s + !2:

!0 =

√k ′Kc

�I, � =

1

2

√k ′Kc�I

To avoid slow oscillations, consider: � ≥ 1

�I ≥4

k ′Kc

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 74 / 95

Page 197: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Disturbance rejection: Assuming input disturbance (gd (s) = g(s))

∣y(j!)∣ =∣g(j!)∣

∣1 + g(j!)c(j!)∣d ≤ ymax

Assuming ∣gc ∣ >> 1 at low frequencies:

∣c(j!)∣ > d

ymax

For P, PI and PID: c(j!) ≥ Kc

Kc ≥d

ymax

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 75 / 95

Page 198: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Disturbance rejection: Assuming input disturbance (gd (s) = g(s))

∣y(j!)∣ =∣g(j!)∣

∣1 + g(j!)c(j!)∣d ≤ ymax

Assuming ∣gc ∣ >> 1 at low frequencies:

∣c(j!)∣ > d

ymax

For P, PI and PID: c(j!) ≥ Kc

Kc ≥d

ymax

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 75 / 95

Page 199: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Disturbance rejection: Assuming input disturbance (gd (s) = g(s))

∣y(j!)∣ =∣g(j!)∣

∣1 + g(j!)c(j!)∣d ≤ ymax

Assuming ∣gc ∣ >> 1 at low frequencies:

∣c(j!)∣ > d

ymax

For P, PI and PID: c(j!) ≥ Kc

Kc ≥d

ymax

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 75 / 95

Page 200: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Disturbance rejection: Assuming input disturbance (gd (s) = g(s))

∣y(j!)∣ =∣g(j!)∣

∣1 + g(j!)c(j!)∣d ≤ ymax

Assuming ∣gc ∣ >> 1 at low frequencies:

∣c(j!)∣ > d

ymax

For P, PI and PID: c(j!) ≥ Kc

Kc ≥d

ymax

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 75 / 95

Page 201: Industrial Control Systems - PID Controllers

PID Controller Design

Skogestad Internal Model Control (SIMC):

Skogestad Internal Model Control (SIMC)

Kc =1

k

�1

�c + �=

1

k ′1

�c + �

�I = min{�1,4

k ′Kc} = min{�1, 4(�c + �)}

�D = �2

Tuning for fast response with good robustness

�c = �

Tuning for slow response with acceptable disturbance rejection

Kc ≥d

ymax

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 76 / 95

Page 202: Industrial Control Systems - PID Controllers

PID Controller Design

Rules of thumb:

[McMillan, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 77 / 95

Page 203: Industrial Control Systems - PID Controllers

Digital Control

Ts : sampling time

Analog to Digital (A-D) conversion:

y(tk) = y(kTs)

Digital to Analog (D-A) conversion:

u(t) = u(tk) for kTs ≤ t < (k + 1)Ts

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 78 / 95

Page 204: Industrial Control Systems - PID Controllers

Digital Control

Ts : sampling timeAnalog to Digital (A-D) conversion:

y(tk ) = y(kTs)

Digital to Analog (D-A) conversion:

u(t) = u(tk) for kTs ≤ t < (k + 1)Ts

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 78 / 95

Page 205: Industrial Control Systems - PID Controllers

Digital Control

Ts : sampling timeAnalog to Digital (A-D) conversion:

y(tk ) = y(kTs)

Digital to Analog (D-A) conversion:

u(t) = u(tk ) for kTs ≤ t < (k + 1)Ts

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 78 / 95

Page 206: Industrial Control Systems - PID Controllers

Digital Control

Difference equation:

x((k + 1)Ts) = ax(kTs) + bu(kTs)

Discrete time:x [k + 1] = ax [k] + bu[k]

Z -transform:

zX (z) = aX (z) + bU(z)⇒ X (z)

U(z)=

b

z − a

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 79 / 95

Page 207: Industrial Control Systems - PID Controllers

Digital Control

Difference equation:

x((k + 1)Ts) = ax(kTs) + bu(kTs)

Discrete time:x [k + 1] = ax [k] + bu[k]

Z -transform:

zX (z) = aX (z) + bU(z)⇒ X (z)

U(z)=

b

z − a

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 79 / 95

Page 208: Industrial Control Systems - PID Controllers

Digital Control

Difference equation:

x((k + 1)Ts) = ax(kTs) + bu(kTs)

Discrete time:x [k + 1] = ax [k] + bu[k]

Z -transform:

zX (z) = aX (z) + bU(z)⇒ X (z)

U(z)=

b

z − a

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 79 / 95

Page 209: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Euler’s method (forward difference):

z = eTs s ≈ 1 + Tss ⇒ s ≈ z − 1

Ts

x(t) ≈ x(t + Ts)− x(t)

Ts

Backward difference:

z = eTs s ≈ 1

1− Tss⇒ s ≈ 1− z−1

Ts

x(t) ≈ x(t)− x(t − Ts)

Ts

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 80 / 95

Page 210: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Euler’s method (forward difference):

z = eTs s ≈ 1 + Tss ⇒ s ≈ z − 1

Ts

x(t) ≈ x(t + Ts)− x(t)

Ts

Backward difference:

z = eTs s ≈ 1

1− Tss⇒ s ≈ 1− z−1

Ts

x(t) ≈ x(t)− x(t − Ts)

Ts

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 80 / 95

Page 211: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Tustin’s approximation:

z = eTs s ≈ 1 + sTs/2

1− sTs/2⇒ s ≈ 2

Ts

z − 1

z + 1

It is also called trapezoidal method or bilinear transformation.

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 81 / 95

Page 212: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Stability: Images of the left side of the s-plane[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 82 / 95

Page 213: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Re(s) < 0Forward−−−−−−→

DifferenceRe(z) < 1

Stable system in s domainForward−−−−−−→

DifferenceStable or unstable system in z

domain

Re(s) < 0Backward−−−−−−→Difference

(Re(z)− 12 )2 + Im(z)2 < 1

4

Stable or unstable system in s domainBackward−−−−−−→Difference

Stable system in z

domain

Re(s) < 0Tustin−−−−−−−−→

Approximation∣z ∣ < 1

Stable system in s domainTustin−−−−−−−−→

ApproximationStable system in z domain

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 83 / 95

Page 214: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Re(s) < 0Forward−−−−−−→

DifferenceRe(z) < 1

Stable system in s domainForward−−−−−−→

DifferenceStable or unstable system in z

domain

Re(s) < 0Backward−−−−−−→Difference

(Re(z)− 12 )2 + Im(z)2 < 1

4

Stable or unstable system in s domainBackward−−−−−−→Difference

Stable system in z

domain

Re(s) < 0Tustin−−−−−−−−→

Approximation∣z ∣ < 1

Stable system in s domainTustin−−−−−−−−→

ApproximationStable system in z domain

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 83 / 95

Page 215: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Re(s) < 0Forward−−−−−−→

DifferenceRe(z) < 1

Stable system in s domainForward−−−−−−→

DifferenceStable or unstable system in z

domain

Re(s) < 0Backward−−−−−−→Difference

(Re(z)− 12 )2 + Im(z)2 < 1

4

Stable or unstable system in s domainBackward−−−−−−→Difference

Stable system in z

domain

Re(s) < 0Tustin−−−−−−−−→

Approximation∣z ∣ < 1

Stable system in s domainTustin−−−−−−−−→

ApproximationStable system in z domain

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 83 / 95

Page 216: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Re(s) < 0Forward−−−−−−→

DifferenceRe(z) < 1

Stable system in s domainForward−−−−−−→

DifferenceStable or unstable system in z

domain

Re(s) < 0Backward−−−−−−→Difference

(Re(z)− 12 )2 + Im(z)2 < 1

4

Stable or unstable system in s domainBackward−−−−−−→Difference

Stable system in z

domain

Re(s) < 0Tustin−−−−−−−−→

Approximation∣z ∣ < 1

Stable system in s domainTustin−−−−−−−−→

ApproximationStable system in z domain

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 83 / 95

Page 217: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Re(s) < 0Forward−−−−−−→

DifferenceRe(z) < 1

Stable system in s domainForward−−−−−−→

DifferenceStable or unstable system in z

domain

Re(s) < 0Backward−−−−−−→Difference

(Re(z)− 12 )2 + Im(z)2 < 1

4

Stable or unstable system in s domainBackward−−−−−−→Difference

Stable system in z

domain

Re(s) < 0Tustin−−−−−−−−→

Approximation∣z ∣ < 1

Stable system in s domainTustin−−−−−−−−→

ApproximationStable system in z domain

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 83 / 95

Page 218: Industrial Control Systems - PID Controllers

Digital Control

Approximating Continuous-Time Controllers:

Re(s) < 0Forward−−−−−−→

DifferenceRe(z) < 1

Stable system in s domainForward−−−−−−→

DifferenceStable or unstable system in z

domain

Re(s) < 0Backward−−−−−−→Difference

(Re(z)− 12 )2 + Im(z)2 < 1

4

Stable or unstable system in s domainBackward−−−−−−→Difference

Stable system in z

domain

Re(s) < 0Tustin−−−−−−−−→

Approximation∣z ∣ < 1

Stable system in s domainTustin−−−−−−−−→

ApproximationStable system in z domain

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 83 / 95

Page 219: Industrial Control Systems - PID Controllers

Digital Control

Digital PID:

Proportional: P(t) = Kpe(t)

P[k] = Kpe[k]

Integral: I (t) =Kp

Ti

∫ t0 e(�)d�

I [k + 1] = I [k] +KTs

Tie[k]

Derivative: TdN

dDdt + D = −KpTd

dydt

D[k] =Td

Td + NTsD[k − 1]− KpTdN

Td + NTs(y [k]− y [k − 1])

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 84 / 95

Page 220: Industrial Control Systems - PID Controllers

Digital Control

Digital PID:

Proportional: P(t) = Kpe(t)

P[k] = Kpe[k]

Integral: I (t) =Kp

Ti

∫ t0 e(�)d�

I [k + 1] = I [k] +KTs

Tie[k]

Derivative: TdN

dDdt + D = −KpTd

dydt

D[k] =Td

Td + NTsD[k − 1]− KpTdN

Td + NTs(y [k]− y [k − 1])

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 84 / 95

Page 221: Industrial Control Systems - PID Controllers

Digital Control

Digital PID:

Proportional: P(t) = Kpe(t)

P[k] = Kpe[k]

Integral: I (t) =Kp

Ti

∫ t0 e(�)d�

I [k + 1] = I [k] +KTs

Tie[k]

Derivative: TdN

dDdt + D = −KpTd

dydt

D[k] =Td

Td + NTsD[k − 1]− KpTdN

Td + NTs(y [k]− y [k − 1])

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 84 / 95

Page 222: Industrial Control Systems - PID Controllers

Digital Control

Typical sampling time:

Type of variable Sampling time (sec)

Flow 1-3

Level 5-10

Pressure 1-5

Temperature 10-20

Rule of thumb for PI controllers:

Ts

Ti≈ 0.1 to 0.3

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 85 / 95

Page 223: Industrial Control Systems - PID Controllers

Digital Control

Typical sampling time:

Type of variable Sampling time (sec)

Flow 1-3

Level 5-10

Pressure 1-5

Temperature 10-20

Rule of thumb for PI controllers:

Ts

Ti≈ 0.1 to 0.3

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 85 / 95

Page 224: Industrial Control Systems - PID Controllers

Digital Control

Typical sampling time:

Rule of thumb for PID controllers:

NTs

Td≈ 0.2 to 0.6

[Astrom and Wittenmark, 1996]

Behzad Samadi (Amirkabir University) Industrial Control 86 / 95

Page 225: Industrial Control Systems - PID Controllers

Digital Control

Inverse Response: When the initial response of a dynamic system is in adirection opposite to the final outcome, it is called an inverse response.

Obtaining the effective delay (Half rule):

Effective delay =True delay + inverse response time constant(s)

+ half of the largest neglected time constant

+ all smaller higher order time constants

Time constant:

� = the largest time constant +1

2the second largest time constant{

�1 = the largest time constant,�2 = the second largest time constant + 1

2 the third largest time constant

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 87 / 95

Page 226: Industrial Control Systems - PID Controllers

Digital Control

Inverse Response: When the initial response of a dynamic system is in adirection opposite to the final outcome, it is called an inverse response.Obtaining the effective delay (Half rule):

Effective delay =True delay + inverse response time constant(s)

+ half of the largest neglected time constant

+ all smaller higher order time constants

Time constant:

� = the largest time constant +1

2the second largest time constant{

�1 = the largest time constant,�2 = the second largest time constant + 1

2 the third largest time constant

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 87 / 95

Page 227: Industrial Control Systems - PID Controllers

Digital Control

Inverse Response: When the initial response of a dynamic system is in adirection opposite to the final outcome, it is called an inverse response.Obtaining the effective delay (Half rule):

Effective delay =True delay + inverse response time constant(s)

+ half of the largest neglected time constant

+ all smaller higher order time constants

Time constant:

� = the largest time constant +1

2the second largest time constant{

�1 = the largest time constant,�2 = the second largest time constant + 1

2 the third largest time constant

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 87 / 95

Page 228: Industrial Control Systems - PID Controllers

Digital Control

Plant transfer function:

G (s) =

∏j (−Tj0s + 1)∏

j (�i0s + 1)e−td s

First order approximation:

G1(s) =e−�s

�s + 1

� =td +∑

j

Tj0 +�20

2+∑j≥3

�i0 +Ts

2

� =�10 +�20

2

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 88 / 95

Page 229: Industrial Control Systems - PID Controllers

Digital Control

Second order approximation:

G2(s) =e−�s

(�1s + 1)(�2s + 1)

� =td +∑

j

Tj0 +�30

2+∑j≥4

�i0 +Ts

2

�1 =�10

�2 =�20 +�30

2

[Skogestad, 2001]

Behzad Samadi (Amirkabir University) Industrial Control 89 / 95

Page 230: Industrial Control Systems - PID Controllers

Digital Control

Series form of the PID controller:

U(s) = Kp(1 + 1�i s

)(1 + �ds)E (s)

U(s) = Kp(1 + 1�i s

)(E (s) + �dsE (s))

U(s) = Kp(1 + 1�i s

)(E (s)− �dsY (s))

U(s) = Kp(1 + 1�i s

)(R(s)− (1 + �ds)Y (s))

U(s) = Kp(1 + 1�i s

)Ed (s)

Behzad Samadi (Amirkabir University) Industrial Control 90 / 95

Page 231: Industrial Control Systems - PID Controllers

Digital Control

Series form of the PID controller:

U(s) = Kp(1 + 1�i s

)(1 + �ds)E (s)

U(s) = Kp(1 + 1�i s

)(E (s) + �dsE (s))

U(s) = Kp(1 + 1�i s

)(E (s)− �dsY (s))

U(s) = Kp(1 + 1�i s

)(R(s)− (1 + �ds)Y (s))

U(s) = Kp(1 + 1�i s

)Ed (s)

Behzad Samadi (Amirkabir University) Industrial Control 90 / 95

Page 232: Industrial Control Systems - PID Controllers

Digital Control

Series form of the PID controller:

U(s) = Kp(1 + 1�i s

)(1 + �ds)E (s)

U(s) = Kp(1 + 1�i s

)(E (s) + �dsE (s))

U(s) = Kp(1 + 1�i s

)(E (s)− �dsY (s))

U(s) = Kp(1 + 1�i s

)(R(s)− (1 + �ds)Y (s))

U(s) = Kp(1 + 1�i s

)Ed (s)

Behzad Samadi (Amirkabir University) Industrial Control 90 / 95

Page 233: Industrial Control Systems - PID Controllers

Digital Control

Series form of the PID controller:

U(s) = Kp(1 + 1�i s

)(1 + �ds)E (s)

U(s) = Kp(1 + 1�i s

)(E (s) + �dsE (s))

U(s) = Kp(1 + 1�i s

)(E (s)− �dsY (s))

U(s) = Kp(1 + 1�i s

)(R(s)− (1 + �ds)Y (s))

U(s) = Kp(1 + 1�i s

)Ed (s)

Behzad Samadi (Amirkabir University) Industrial Control 90 / 95

Page 234: Industrial Control Systems - PID Controllers

Digital Control

Series form of the PID controller:

U(s) = Kp(1 + 1�i s

)(1 + �ds)E (s)

U(s) = Kp(1 + 1�i s

)(E (s) + �dsE (s))

U(s) = Kp(1 + 1�i s

)(E (s)− �dsY (s))

U(s) = Kp(1 + 1�i s

)(R(s)− (1 + �ds)Y (s))

U(s) = Kp(1 + 1�i s

)Ed (s)

Behzad Samadi (Amirkabir University) Industrial Control 90 / 95

Page 235: Industrial Control Systems - PID Controllers

Digital Control

Series form of the PID controller:

Behzad Samadi (Amirkabir University) Industrial Control 91 / 95

Page 236: Industrial Control Systems - PID Controllers

Digital Control

Antiwindup digital PID:

public class SimplePID {

private double u,e,v,y;

private double K,Ti,Td,Beta,Tr,N,h;

private double ad,bd;

private double D,I,yOld;

public SimplePID(double nK, double nTi, double NTd,

double nBeta, double nTr, double nN, double nh) {

updateParameters(nK,nTi,nTd,nBeta,nTr,nN,nh);

}

ARTIST Graduate Course on Embedded Control Systems

Behzad Samadi (Amirkabir University) Industrial Control 92 / 95

Page 237: Industrial Control Systems - PID Controllers

Digital Control

Antiwindup digital PID:

public void updateParameters(double nK, double nTi,

double NTd, double nBeta, double nTr, double nN,

double nh) {

K = nK; Ti = nTi; Td = nTd; Beta = nBeta;

Tr = nTr

N = nN;

h = nh;

ad = Td / (Td + N*h);

bd = K*ad*N;

}

ARTIST Graduate Course on Embedded Control Systems

Behzad Samadi (Amirkabir University) Industrial Control 93 / 95

Page 238: Industrial Control Systems - PID Controllers

Digital Control

Antiwindup digital PID:

public double calculateOutput(double yref, double newY) {

y = newY;

e = yref - y;

D = ad*D - bd*(y - yOld);

v = K*(Beta*yref - y) + I + D;

return v;

}

public void updateState(double u) {

I = I + (K*h/Ti)*e + (h/Tr)*(u - v);

yOld = y;

}

}

ARTIST Graduate Course on Embedded Control Systems

Behzad Samadi (Amirkabir University) Industrial Control 94 / 95

Page 239: Industrial Control Systems - PID Controllers

Digital Control

Antiwindup digital PID:

public class Regul extends Thread {

private SimplePID pid;

public Regul() { pid = new SimplePID(1,10,0,1,10,5,0.1); }

public void run() {

// Other stuff

while (true) {

y = getY();

yref = getYref():

u = pid.calculateOutput(yref,y);

u = limit(u);

setU(u);

pid.updateState(u);

// Timing Code

}}}

ARTIST Graduate Course on Embedded Control Systems

Behzad Samadi (Amirkabir University) Industrial Control 95 / 95

Page 240: Industrial Control Systems - PID Controllers

Astrom, K. J. and Hagglund, T. (1995).PID Controllers: Theory, Design, and Tuning.Instrument Society of America.

Astrom, K. J. and Wittenmark, B. (1996).Computer-Controlled Systems: Theory and Design.Prentice Hall, 3 edition.

Chau, P. C. (2002).Process Control: A First Course with MATLAB (Cambridge Series inChemical Engineering).Cambridge University Press, 1 edition.

Li, Y., Ang, K. H., and Chong, G. C. Y. (2006).Pid control system analysis and design.IEEE Control Syst. Mag., 26(1):32–41.

Love, J. (2007).Process Automation Handbook: A Guide to Theory and Practice.Springer, 1 edition.

Behzad Samadi (Amirkabir University) Industrial Control 95 / 95

Page 241: Industrial Control Systems - PID Controllers

McMillan, G. K. (2001).Good Tuning: A Pocket Guide.The Instrumentation, Systems, and Automation Society (ISA).

O’Dwyer (2002).Handbook of PI & Pid Controller Tuning Rules.World Scientific Publishing.

Skogestad, S. (2001).Probably the best simple pid tuning rules in the world.In AIChE Annual meeting, Reno, NV, USA.

Visioli, A. (2006).Practical PID Control (Advances in Industrial Control).Springer, 1 edition.

Woolf, P., editor (2007).The Michigan Chemical Process Dynamics and Controls Open TextBook.

Yu, C.-C. (2007).

Behzad Samadi (Amirkabir University) Industrial Control 95 / 95

Page 242: Industrial Control Systems - PID Controllers

Autotuning of PID Controllers: A Relay Feedback Approach.Springer.

Behzad Samadi (Amirkabir University) Industrial Control 95 / 95