Sie sind auf Seite 1von 10

CHEE 3367, FF/FB & Cascade, M.

Nikolaou, page 1
CHEE3367 Process Dynamics and Control
M. Nikolaou, University of Houston

Improving disturbance rejection: Feedforward and Cascade Control

Table of Contents
1 Feedforward Control .............................................................................................................................. 1
1.1 What is Feedforward Control? ...................................................................................................... 1
1.2 Why Feedforward Control? .......................................................................................................... 1
1.3 General FF/FB design ...................................................................................................................... 3
2 Cascade Control...................................................................................................................................... 5
2.1 What is Cascade Control? ............................................................................................................. 5
2.2 Why Cascade Control? ..................................................................................................................... 5
2.3 Design of cascade controllers ........................................................................................................... 6

1 Feedforward Control
1.1 What is Feedforward Control?
Control strategy using measured disturbances. Must be combined with feedback, because there is always
some uncertainty in (a) unmeasured disturbances, (b) Process behavior (model).


Process
Unmeasured
disturbances
Manipulated
inputs
Measured
disturbances
Unmeasure
d outputs
Measured
outputs





Controlle
r
Feedforward
path
Feedback path

Figure 1 Feedback loop
1.2 Why Feedforward Control?
To compensate for measured disturbances. Feedforward takes corrective action before disturbance effects
are felt on process outputs, thereby allowing better disturbance rejection.

EXAMPLE 1 Feedforward / Feedback control of a tank heater
System: Tank heater.
Manipulated input: Q
Measured disturbance:
i
T
Controlled output: T
CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 2

Figure 2 Heater schematic

Dynamics:
| |
( )
( ) ( )
i
p
dT F Q t
T t T t
dt V C V
= +
Linearized dynamics in deviation from steady state:
1
1 1
( ) ( ) ( ) ( ) ( ) ( )
1 1
p
i i
p
C F
d T F F
T t T t Q t T s T t Q t
V V
dt V V C V
s s
F F

A
= A A + A A = A + A
+ +



Figure 3 Feedforward/Feedback loop schematic for Example

| |
1
( ) ( ) ( ) ( ) ( )
1 ( ) ( )
( ) 1
( )
( )
1
0
1 ( ) ( )
FF i
FB
FF
FB
T s D s G s C s T s
G s C s
D s
C s
G s K
G s C s
A = + A
+

~ =

~
+


Design ( )
FB
C s using IMC.
Numerical simulation: Assume 10 K = , 1 t = , 12 K = , 0.8 t = .
Setpoint
T
SP
e
Output, T
Noise
n
-
G C
FB

Input
Q
Measured Disturbance
T
i
D
C
FF

F, T
i

F, T
T
c

V
CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 3

Figure 4 Comparison between Feedforward/Feedback and Feedback
1.3 General FF/FB design

Figure 5 Feedforward/Feedback loop schematic


| |
1
( ) ( ) ( ) ( ) ( )
1 ( ) ( )
( )
( )
( )
1
0
1 ( ) ( )
FF
FB
FF
FB
y s D s G s C s d s
G s C s
D s
C s
G s
G s C s
A = + A
+

~

~
+



- Design of ( )
FF
C s
In general, ( )
FF
C s must be stable, proper (degree of numerator s degree of denominator). If not, use the
same approach as in the design of Q in IMC, i.e.
Setpoint
ySP
e
Output, y
Noise
n
-
G C
FB

Input
u
Measured Disturbance
d

D
C
FF

CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 4

( )
( ) ( )
( )
FF
D s
C s F s
G s

~ (1)
where

1
( )
( 1)
r
F s
s
=
+
(2)
If
1
( ) G s
is not stable or not causal, then modify the following factors of
1
( ) G s


1 1
s a s a


(to eliminate unstable poles)
1
s
e
+u
(to eliminate non-causal terms)

- Design of ( )
FB
C s
Use standard IMC or other PID design methods.
CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 5

2 Cascade Control
2.1 What is Cascade Control?
A control scheme composed of two nested feedback loops, in which the controller of the outer loop
produces the setpoint of the inner loop (see Figure 6).


Figure 6 Classical and cascade control loops. The controller command v is
perturbed by the input disturbance d .

2.2 Why Cascade Control?
To better reject input disturbances that tend to alter the commands (manipulated inputs) sent to the process
by the controller.
EXAMPLE 2 Cascade control configuration for a furnace
A furnace fueled by natural gas is used to preheat a high-molecular-weight (C
16
to C
26
) hydrocarbon feed to
a cracking unit in a petroleum refinery (see schematic below).

The main control objective of this unit is to maintain the temperature of the heated hydrocarbon at setpoint.

To achieve this, the valve opening of the fuel gas flow line is adjusted to use fuel gas pressure as
manipulated input.

The main disturbance d to the system is fluctuations in the fuel gas supply pressure.

To control this system, we will compare standard feedback and cascade feedback control loops, as shown
in the following figure.
C
2
C
1
-1
-1
G
2
G
1
d

y

u

v

u
SP
y
SP
C

-1
G
2
G
1
d

u

v

y
SP
y

CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 6


Figure 7 Classical and cascade control loops for an industrial furnace. The
corresponding block diagrams are shown in Figure 8 below.



Figure 8 Classical and cascade control loops.

2.3 Design of cascade controllers
- Substitute inner loop (Figure 6b):
C

-1
G
2
G
1
d

P

v

T
SP
T

C
2
C
1
-1
-1
G
2
G
1
d

T

P

v

P
SP
T
SP
P
P
SP
B Bu ur rn ne er r
Inlet
hydrocarbon
Outlet (heated)
hydrocarbon

Exhaust gas
TC
T
SP T
PC
v

B Bu ur rn ne er r
Inlet
hydrocarbon
Outlet (heated)
hydrocarbon
Fuel gas
Exhaust gas
TC
T
SP T
v

CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 7
( )
2
2 2 2 2
2
2 2 2 2
1
1
1 1
SP
d
SP SP SP
SP d
G
G
G
u u d G Q u G Q d G u G d
C
G C G C
= + = + =
+
+
+
(3)


Figure 9 Cascade control configuration equivalent to Figure 6b (for design
purposes) with inner loop replaced.
- Transfer functions for entire closed loop (Figure 9).

( )
( )
1
1 1 1 1 1
1 1
1 2 2 1 1 2 2
1
1
1
2 2
1
2
1
1
1
1 ) 1
1
(
SP SP
d
SP SP SP
d SP SP d
SP
SP
G G
P
G
S
GG
y y G d GG Q y GG Q GG d
GG C
G G Q Q y G G Q Q G G
C
G
Q
C
d
G +
= + = +
+
= +

( )
1 2 2 1 1 2 2 2 1 2 2
(1 ) 1
d
SP
Q Q
G
y GG Q Q y GG Q Q G G Q d = + (4)
- Compare to standard feedback loop (Figure 6a):

1
2 2
1
1
2
1
1 1
SP
GG G
y y d
G
C
G G C G C + +
= +
( )
1 2 1 2 1
1
SP
y GG Qy GG Q Gd = + (5)
Eqns. (5) and (4) show that the effect of the setpoint
SP
y on y is similar for both the standard and cascade
control loops, but the effect of the input disturbance d on y is ( )
1 2 2 2 1 2 2
(1 ) 1
d
Q
G
GG Q Q G G Q d for the
cascade vs. ( )
1 2 1
1 GG Q Gd for the standard feedback loop. The extra term
2 2
1
d
G G Q = in the cascade
configuration can be designed to be very small (How? How small?)
Therefore, the cascade control loop can reject d much better than standard feedback loop.

EXAMPLE 3 Design of cascade controllers for the furnace in EXAMPLE 2
Process transfer functions (with all time constants in minutes and all variables in deviation form):

1
exp[ 2 ]
( ) ( )
5 1
( )
s
T s P s
s
G s

A = A
+
,
2
exp[ 0.05 ]
( ) ( )
0.4 1
( )
s
P s v s
s
G s

A = A
+

where dead-time uncertainty is 50% for both transfer functions.
- Standard feedback loop (Figure 8a):
-
G
Inner_loop_setpoint
C
1
-1
G
1
d

y

u

y
SP
u
SP
G
Inner_loop_disturbance
CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 8

1
1 2
( ) ( ) exp[ 2.05 ] exp[ 2 ]
[1 ( ) ( )] ( ) 1
( ) 1 ( ) ( ) 5 1 ( 1)
G s T s s s
G s Q s G s
d s G s C s s s
( A
= = =
(
A + + +

where 1.025 1 = ~ .

- Cascade control loop ((Figure 8b):
o Replace inner loop for design purposes:


Inner_loop_setpoint Inner_loop_disturbance
2 2 2 2
2 2
( ) ( ) ( ) ( ) [1 ( ) ( )] ( )
exp[ 0.05 ] exp[ 0.05 ]
( ) 1 ( )
1 1
SP
SP
G G
P s G s Q s P s G s Q s d s
s s
P s d s
s s
A = A + A
(
= A + A
(
+ +

where
2
0.025 = .

o Design outer loop:


Inner_loop_disturbance
Inner_loop_disturbance
1 Inner_loop_disturbance 1
2
2
( )
( )
( ) ( )[1 ( ) ( )] ( )
( ) 1 ( ) ( )
exp[ 0.05 ] exp[ 2.05 ] exp[ 2 ]
1 1
1 5 1 ( 1)
G
G s
T s
G s G s G s Q s G s
d s G s C s
s s s
s s s
A
= =
A +
( (
=
( (
+ + +

where 1.025 1 = ~

The term
2
exp[ 0.05 ]
1
1
s
s
(

(
+

in
( )
( )
T s
d s
A
A
for the cascade loop and the fact that
2
0.025 = (small) makes
cascade control reject input disturbances faster. In fact, for the low-frequency (
2
1
e

<< ) content of a
disturbance
2
exp[ 0.05 ]
1 0
1
s
s
(
~
(
+

.

Verify design by simulation using Simulink.
CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 9
CHEE 3367, FF/FB & Cascade, M. Nikolaou, page 10