Professional Documents
Culture Documents
Multivariable Control: An Introduction: Aims and Objectives
Multivariable Control: An Introduction: Aims and Objectives
Dr M.J. Willis
Department of Chemical and Process Engineering
University of Newcastle upon Tyne
email: mark.willis@ncl.ac.uk
Written:
Modified:
Plan
Introduction
Processes with only one output being controlled by a single manipulated variable are
classified as single-input single output (SISO) systems. It should be noted however,
that most unit operations in chemical engineering have more than one control loop.
In fact, each unit typically requires the control of at least two variables, e.g. product
rate and product quality. There are therefore usually at least two control loops.
Systems with more than one control loop are known as multi-input multi-output
(MIMO) or multivariable systems.
A Continuous Stirred Tank Reactor (CSTR)
A continuous stirred tank reactor (CSTR) is used to convert a reactant (A) to a
product (B). The reaction is liquid phase, first order and exothermic. Perfect mixing is
assumed. A cooling jacket surrounds the reactor to remove the heat of reaction.
A
B
Exothermic, first order
CAo, Fo, To
Constant Volume
TC
Tj
CC
Coolant
Effluent
F, CA, T
control strategy. If it is not, it may be difficult to run the unit under closed loop
control, creating many operational problems.
Thus, for two loops to work successfully together each loop must know what the
other is doing. Otherwise, in trying to achieve their respective objectives each loop
may act against the interests of the other.
For systems with more than one output, input-output models may assume a number
of structural forms. However, discussions will be restricted to the model structure
shown in the diagram below,
mv 1
G11(s)
cv 1
Loop 1
G21(s)
G12(s)
mv2
G22(s)
Loop 2
cv2
Here G11(s) is a symbol used to represent the forward path dynamics between mv1
and cv1, while G22(s) describes how cv2 responds after a change in mv2. The
interaction effects are modelled using transfer functions G21(s) and G12(s). G21(s)
describes how cv2 changes with respect to a change in mv1 while G12(s) describes
how cv1 changes with respect to a change in mv2.
For sake of simplicity during these, and subsequent discussions only (2 x 2) processes will be considered.
For the CSTR shown in figure (1) mv1 could be the coolant flowrate, while mv2 could
be the flowrate of the reactant. The output cv1 may be the reactor temperature while
the output cv2 would be the effluent concentration.
The mathematical model written in matrix-vector notation
The elements within the blocks of Figure (2) are transfer functions, defining the
relationship between the respective input output pairs. As usual, the following
general transfer function description will be used,
G p ( s) =
k p e s
ps + 1
(1)
where kp is a process gain, p the process time constant and the process time
delay. Note that each of the 4 blocks in Figure (2) will have different parameters that
must be determined.
Referring to fig. 2., on a loop by loop basis, the outputs of the system model are
related to the inputs as follows,
Loop 1:
Loop 2:
(2)
(3)
Equations (2) and (3) may be expressed more compactly in matrix-vector notation
as:
cv = G mv
(4)
where cv = [cv1, cv2]T; mv = [mv1 mv2]T
and,
G11 G12
G=
G21 G22
where G d =
0
0
and
G d 2
(5)
dv = dv1 ,dv 2
d1
u
Gd1(s)
G11(s)
y1
Loop 1
G21(s)
G12(s)
u2
+
+
G22(s)
d2
Loop 2
y2
Gd2(s)
Worked Example
Consider the following mixing process,
f2
f1
Control objective:
fo
c#
regulate fo and c# to desired levels
5
Manipulated variables:
f1 and f2
Assume that the system is a two component system. Let f1 be the flowrate (kg/hr) of
stream 1, f2 be the flowrate of stream 2 (kg/hr) while fo is the total flowrate. Also, if c1
and c2 are the mass fractions of component A in each stream and c# the mass
fraction of component A in the mixed stream:
1. What are the material balance equations for this system ?
2. Develop a linear (2 x 2) model representation by linearisation of the material
balance equations around the following steady-state operating point, fo = 100
kg/hr, c# = 60% with c1=80% and c2=20%.
3. If the dynamics of the mixed streams concentration and measurement sensors
and are characterised by the following expressions,
f om
Gm ( s) = 1 =
fo
m
e s2 c
= #
and Gm ( s) =
c
1
(6)
(7)
(8)
2) We require the mathematical relationship between the two outputs and the two
manipulated variables. Equation (7) provides one expression. Rewriting the material
balance equations (7) and (8) gives the other as,
c# =
f 1c1 + f 2 c2
f1 + f 2
(9)
Equation (1) is linear however, equation (3) is not a linear function. To linearise the
relationship between c# and the manipulated variables, fo and f1 it is necessary to
use a 1st order Taylor series expansion of equation (9) around the steady-state
6
operating point (see the Appendix for an explanation about linearisation via the
Taylor series). The basic structure of the linear equation is:
dc #
dc #
'
f1 +
f 2'
c =
df 1 ss
df 2 ss
#'
(10)
c# = [
f 2 (c1 c2 )
f 1 (c1 c2 )
'
'
2 ] ss f 1 + [
2 ] ss f 2
( f1 + f 2 )
( f1 + f 2 )
(11)
(13)
(14)
d (u / v )
=
dx
du
dv
u
dx
dx
v2
7
f1
fo
fom
2 x 10-3
+
-4 x 10-3
f2
c#2
e s
cm
=
3 s
cm ( s) 2 x10 e
1
3
4 x10 e
f 1 ( s)
f ( s)
2
(15)
Summary
So far, these notes have introduced multivariable systems modelling by
consideration of a 2 x 2 (2 input - 2 output) representation. The block diagram
representation is used to clearly illustrate system dynamics and interactions. Once a
mathematical model of the system has been developed, and the presence of
process interactions identified, the next stage of the control design procedure is to
synthesise the control law.
With multivariable systems, where loop interactions exist, configuration of two single
loop PI(D) controllers could cause system instability, or at the very least result in
poor control performance. This can be overcome by,
choosing a manipulated variable - controlled variable pairing so that system
interactions are minimised. The basic question for a 2 x 2 system is do we want
mv1-cv1, mv2-cv2 (i.e. mv1 to control cv1 and mv2 to control cv2) or the other way
round ?
the design a multivariable controller that achieves non interacting control.
Design of multivariable controllers will be considered later in the course. The next
section of the notes concentrates on a systematic technique for choosing a
manipulated variable - controlled variable pairing so that system interactions are
minimised.
cv1
mv 2
mv1
(16)
If instead of keeping mv2 constant, cv2 is now kept constant by closing the loop
between cv2 and mv2. A step change in mv1 of magnitude mv1 will result in another
change in cv1. The gain in this case is denoted by:
g11|y2 =
cv1
cv 2
mv1
(17)
The gain relationships, equations (16) and (17) may have different values. If
interaction exists, then the change in cv1 due to a change in mv1 for the two cases
when mv2 and cv2 are kept constant, will be different.
The ratio: 11 =
g11 |mv2
g 11 |cv2
(18)
is a dimensionless value and it defines the relative gain between the output cv1 and
the input mv1.
As no information about the process dynamics is used a "health-warning" should be attached to the results
although in practice the interpretation is normally valid.
3. ij = 0.5. There is a high degree of interaction. The other control loops have the
same effect on the output, j, as the manipulated input, i.
4. 0.5 < ij < 1. There is interaction between the control loops. However, this would
be the preferable pairing as it would minimise interactions.
5. ij > 1. The interaction reduces the effect gain of the control loop. Higher
controller gains are required.
6. ij > 10. The pairing of variables with large RGA elements is undesirable. It can
indicate a system sensitive to small variations in gain and possible problems
applying model based control techniques.
7. ij < 0. Care must be taken with negative RGA elements. Negative off-diagonal
elements indicate that closing the loop will change the sign of the effective gain.
More importantly, negative diagonal elements can indicate integral instability i.e.
the control loop is unstable for any feedback controller.
12 11
1 11
=
22 1 11
11
(19)
(20)
Eliminating mv2 from the steady-state relationships, Eqs. (19) and (20), results in:
cv1 = g11mv1 + g12(cv2-g21 mv1)/g22
(21)
from which:
g11|cv2 = (cv1/mv1)|cv2 = g11-g12 g21/g22
10
11 =
Therefore:
g11 |u2
g11 | y2
g11
g g
g11 12 21
g 22
1
1 ( g12 g21 ) / ( g11 g22 )
(22)
(23)
where, G is the process gain matrix, '.* ' represents Schur (element by element)
T
matrix multiplication, [.]-1 denotes a matrix inverse and [.] is the transpose operator.
The mixing example revisited: calculation of the RGA
For the mixing process the following two control schemes are possible:
FC
FT
F1 , x1
Mixer
F,x
F2 , x2
CC
CC
CT
CT
F 1 , x1
Mixer
F,x
F 2 , x2
FC
FT
Now that the steady-state gain matrix has been calculated, it is possible to use the
RGA to determine the "best" manipulated variable control variable pairings.
11
3
4 x10
Enter the MATLAB environment and enter the commands preceeded by the
MATLAB prompt >>. The text after the % is intended to tell you what you are doing
(and should not be typed).
% enter the steady-state gain matrix
>>g = [1 1 ; 2e-3 -4e-3]
% calculate the RGA4
>> rga = g.*inv(g)
This should give the result,
rga =
0.6667 0.3333
0.3333 0.6667
In other words, the RGA analysis suggests f1 should be used to control fo, while f2
should be used to control c#
Exercises
1. Simulate the following transfer function representation of a 2 x 2 process using
simulink
In Matlab, inv calculates the inverse of a matrix while calculates the transpose of the matrix
12
mv
1
10s + 1
cv1
+
1
20 s + 1
0.2
5s + 1
mv
0.8
10s + 1
+
cv2
a) discuss the dynamic response characteristics of cv1 and cv2 with respect to
changes in mv1 and mv2.
b) Tune two PI(D) controllers the first to control cv1 using mv1 and the second to
control cv2 using mv2. (use the simulink simulation environment). Make critical
comments on the functionality of the system.
Summary
Using a simple process example these notes have:
If the RGA indicates little interaction within the system then it may be possible to use
single loop controllers. In some situations this may not be possible in which case it
will be necessary to develop a multivariable control law. The design of multivariable
controllers will be covered in detail in later lectures.
13
Appendix: Linearisation
Given a function,
dx
= f ( x)
dt
Expand f(x) using a Taylor series around xo,
f ( x) = f ( xo ) + (
df
) ( x xo )
dx xo
Control system models are always expressed in terms of deviation variables. That
deviation (or difference) being the difference between the actual value and a steadystate value. If xss is the steady-state value of x, then,
dx ss
= f ( x ss ) = 0
dt
and so,
d ( x x ss )
df
= ( ) xss ( x x ss )
dt
dx
or, if the deviation variable is defined as x=x-xss,
d(x' )
df
= ( ) xss x '
dt
dx
This concept generalises if there is more than one variable. For instance if there are
two variables we have,
f ( x1 , x 2 ) = (
df
df
) x1, ss , x2 , ss x1' + (
) x1, ss , x2 , ss x 2'
dx1
dx 2
14