0% found this document useful (0 votes)
27 views9 pages

Multivariable Control Laboratory Experiment 2 The Quadruple Tank

This document describes a laboratory experiment involving a quadruple tank process with two inputs (pump voltages) and two outputs (tank water levels). The process can operate in either a minimum phase or nonminimum phase configuration. In minimum phase mode, most water enters the upper tanks, while in nonminimum phase most water enters the lower tanks. The document provides nonlinear and linear models of the process, and discusses properties like multivariable zeros, relative gain array, and the fundamental limitations introduced by nonminimum phase dynamics.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views9 pages

Multivariable Control Laboratory Experiment 2 The Quadruple Tank

This document describes a laboratory experiment involving a quadruple tank process with two inputs (pump voltages) and two outputs (tank water levels). The process can operate in either a minimum phase or nonminimum phase configuration. In minimum phase mode, most water enters the upper tanks, while in nonminimum phase most water enters the lower tanks. The document provides nonlinear and linear models of the process, and discusses properties like multivariable zeros, relative gain array, and the fundamental limitations introduced by nonminimum phase dynamics.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Multivariable Control

Laboratory experiment 2
The Quadruple Tank
1
Department of Automatic Control
Lund Institute of Technology
1. Introduction
The aim of this laboratory exercise is to study some dierent aspects of multi-
variable control systems. The ideas are illustrated on a quadruple-tank process
with two inputs and two outputs. The process can be modied to have dierent
dynamics: In one conguration the process is minimum phase, and in another
conguration the process is nonminimum phase. In the lab we will study the
pairing of dierent inputs and outputs, interaction between the control loops,
decoupling, and fundamental limitations introduced by a nonminimum phase
zero.
Preparations
Solve problems 1-3 in exercise session 7. Read this lab manual carefully as well
as the lecture notes on fundamental limitations. At the beginning of the lab,
you should also be able to discuss the points below:
Discussion points
1. Give real-world examples of systems where the step response
initially goes in the wrong direction.
2. In which of the two possible process congurations is it eas-
ier to control the level of the lower tanks? Can you give an
intuitive explanation?
3. Consider the conguration where most of the water enters the
upper tanks. Increase the speed of one pump while decreasing
the other. What short-term eects do you expect? What long-
term eects do you expect?
4. Imagine a conguration where the ow from each pump is
divided 5050. Can you achieve dierent levels in the lower
left and right tanks?
1
Written by Anton Cervin, latest updated 2009-09-17 by Kristian Soltesz
1
u
1
u
2
y
1
y
2
y
3
y
4

1
1
1

2
1
2
Tank 1
(A2)
Tank 2
(B2)
Tank 3
(A1)
Tank 4
(B1)
Pump 1 (BP) Pump 2 (AP)
Figure 1 The quadruple-tank process.
2. The Process
The quadruple-tank process is shown in Figure 1. The goal is to control the
water level in the lower tanks using the two pumps.
The control inputs u
1
, u
2
are the voltages (010 V) applied to the two pumps.
The control outputs y
1
, y
2
are voltages (010 V) representing the levels in the
lower tanks.
Nonlinear Model
In this section, a nonlinear model of the quadruple-tank process is derived.
For each tank i = 1 . . . 4, mass balance and Bernoullis law give that
A
i
dh
i
dt
= a
i

2gh
i
+ q
in
j
where A
i
[cm
2
] is the cross-section of the tank, h
i
[cm] is the water level,
a
i
[cm
2
] is the cross-section of the outlet hole, g [cms
2
] is the acceleration of
gravity, and q
in
i
[cm
3
s
1
] is the inow to the tank.
Each pump j = 1, 2 gives a ow proportional to the control signal,
q
pump
j
= k
j
u
j
where k
j
[cm
3
V
1
s
1
] is a pump constant. The ows from the pumps are
divided according to the two parameters
1
,
2
(0, 1). The ow to Tank 1
is
1
k
1
u
1
and the ow to Tank 4 is (1
1
)k
1
u
1
. Symmetrically, the ow to
Tank 2 is
2
k
2
u
2
and the ow to Tank 3 is (1
2
)k
2
u
2
.
The measured level signals are y
1
= k
c
h
1
and y
2
= k
c
h
2
, where k
c
[Vcm
1
] is
a measurement constant.
2
Considering the ow in and out of all tanks simultaneously, the dynamics of
quadruple-tank process are given by
dh
1
dt
=
a
1
A
1

2gh
1
+
a
3
A
1

2gh
3
+

1
k
1
A
1
u
1
dh
2
dt
=
a
2
A
2

2gh
2
+
a
4
A
2

2gh
4
+

2
k
2
A
2
u
2
dh
3
dt
=
a
3
A
3

2gh
3
+
(1
2
)k
2
A
3
u
2
dh
4
dt
=
a
4
A
4

2gh
4
+
(1
1
)k
1
A
4
u
1
Stationary Points For a stationary operating point (h
0
1
, h
0
2
, h
0
3
, h
0
4
, u
0
1
, u
0
2
),
the equations above give that
a
3
A
3

2gh
0
3
=
(1
2
)k
2
A
3
u
0
2
a
4
A
4

2gh
0
4
=
(1
1
)k
1
A
4
u
0
1
(1)
and thus
a
1
A
1

2gh
0
1
=
(1
2
)k
2
A
3
u
0
2
+

1
k
1
A
1
u
0
1
a
2
A
2

2gh
0
2
=
(1
1
)k
1
A
4
u
0
1
+

2
k
2
A
2
u
0
2
(2)
If we chose stationary levels in the lower tanks, h
0
1
, h
0
2
, we can obtain the
stationary control signals u
0
1
, u
0
2
by solving the linear system of equations (2).
The stationary levels in the upper tanks, h
0
3
, h
0
4
, are then obtained from (1).
Linear Model
Let u
i
= u
i
u
0
i
, h
i
= h
i
h
0
i
, and y
i
= y
i
y
0
i
. Introducing
u =

u
1
u
2

, x =

h
1
h
2
h
3
h
4

, y =

y
1
y
2

and linearizing around a stationary point gives the linear system


dx
dt
=

1
T
1
0
A
3
A
1
T
3
0
0
1
T
2
0
A
4
A
2
T
4
0 0
1
T
3
0
0 0 0
1
T
4

x +

1
k
1
A
1
0
0

2
k
2
A
2
0
(1
2
)k
2
A
3
(1
1
)k
1
A
4
0

u,
y =

k
c
0 0 0
0 k
c
0 0

x,
3
where
T
i
=
A
i
a
i

2h
0
i
g
The transfer matrix from u to y is given by
G(s) =

1
c
1
1 + sT
1
(1
2
)c
1
(1 + sT
1
)(1 + sT
3
)
(1
1
)c
2
(1 + sT
2
)(1 + sT
4
)

2
c
2
1 + sT
2

where c
1
= T
1
k
1
k
c
/A
1
and c
2
= T
2
k
2
k
c
/A
2
.
Multivariable Zeros
As shown in the preparatory exercises, the zeros of G(s) are given by the
equation
(1 + sT
3
)(1 + sT
4
)
(1
1
)(1
2
)

2
= 0
The system is found to be minimum phase (i.e., both zeros are stable) if
1
1
+
2
2 and nonminimum phase (i.e., at least one zero is unstable) if
0 <
1
+
2
1.
Relative Gain Array
The relative gain array (RGA) is a useful tool for determining what outputs
should be controlled by what inputs for decentralized controllers.
As shown in the preparatory exercises, the RGA of G(0) is given by

1
1

where =
1

2
/(
1
+
2
1).
Process Data
The quadruple tank has approximately the following physical constants:
A
i
= 4.9 cm
2
a
i
= 0.03 cm
2
k
i
= 1.6 cm
3
/V
k
c
= 0.5 V/cm
g = 981 cm/s
2
The ow from each pump is divided such that roughly 70 % goes through one
tube extension and 30 % through the other. In the minimum phase case, the
70 % extensions are connected to the lower tanks and we have
1
=
2
= 0.7.
In the nonminimum phase case, the 30 % extensions are connected to the lower
tanks and we have
1
=
2
= 0.3.
The operating point in the lower tanks are chosen as h
0
1
= h
0
2
= 10 cm. In the
minimum phase case the stationary levels in the upper tanks are calculated to
be h
0
3
= h
0
4
= 0.9 cm and in the nonminimum phase the stationary levels are
h
0
3
= h
0
4
= 4.9 cm. In both cases, the stationary control signals are u
0
1
= u
0
2
=
2.6 V.
4
3. The Lab Interface
The controllers are designed and tested in Matlab/Simulink. There is one
Simulink model for simulation quadtank simulated and another one for ex-
periments on the real process quadtank real. There is also a model for man-
ually driving the physical process quadtank real manual.
The Simulink model for the simulated process is shown in Figure 2. The Quad-
tank block contains the non-linear model of the quadruple tank process. Click-
ing on the block allows you to specify
1
and
2
for the process.
Before a simulation, you must dene the two controllers C1 and C2 in the
workspace. In the lab, the controllers will be of either PI or PID type. The con-
trollers are conveniently designed using the commands designpi and designpid
(use help on them!).
Run the script define process to dene the two systems Gmin and Gnonmin
representing the linear process in the minimum phase and nonminimum phase
case respectively.
It is also possible to specify two decoupling matrices W1 and W2 (see Sec-
tion 5.3). The default choice is W
1
= W
2
= I (the identity matrix), i.e. no
decoupling.
y3,y4
y1,y2
u1,u2
r2
r1 W2 W1
v1
v2
y1
y2
y3
y4
Quadtank
C2
C1
Figure 2 Simulink model quadtank simulated.
4. Control in the Minimum Phase Case
We will start by controlling the process in the minimum phase case, where most
water goes directly into the lower tanks. For simulations, make sure to enter
the correct -values into the mask of the Quadtank block. For experiments on
the physical process, make sure that the tubes of the process are connected
so that 70 % of the ow from Pump 1 goes into Tank 1, and that 70 % of
the ow from Pump 2 goes into Tank 2. This is achieved with the following
valve conguration: AV1, AV2 and BV1 should be pulled out while BV2 should
be pushed in (from the users perspective). Also make sure valves AV3, AV4,
BV3, BV4 and V5 are all pushed down.
5
The -values given in this manual are from nominal construction data and
values of individual processes do dier. If you experience dierences between
simulations and real process experiments, this might be a possible cause. The
following steps suggest an experiment for identifying
1
and
2
.
1. Push up AV3, AV4, BV3, BV4 and down V5 to close all tank outlets. Use
either of the two following congurations to choose operating mode (min-
imum or nonminimum phase).
(a) AV1, AV2 and BV1 pulled out, BV2. pushed in
(b) AV1, BV1 and BV2 pulled out, AV2 pushed in.
2. Open quadtank real manual and start a simulation
3. Use the slider gains to ll the the tanks so that the ones that ll fast
reach 160 mm.
4. Measure the water levels A1, A2. B1 and B2.
5. Use

1
=
A2
A2 + B1
,
2
=
B2
B2 + A1
After this is done, do the following, in order to use your identied values.
Edit define process and enter your measured values for gamma1 and
gamma2 under either % Minimum phase case or %Nonminimum phase case.
Enter your values in the mask of the Quadtank block of quadtank simulated
Rerun define process and the synthesis script for C1 and C2.
4.1 Choice of Control Structure and Design
Exercise 1 Have a look at the transfer matrix G
min
in Matlab and also
compute the zeros of the system:
>> Gmin
>> zero(minreal(ss(Gmin)))
Also compute the RGA of G
min
(0):
>> G0 = evalfr(Gmin,0*i)
>> G0.*transpose(inv(G0))
Do the results agree with the preparatory exercises?
Now compute the RGA matrix for higher frequencies, say = 0.1, 0.5, 1, 10, 100
rad/s, that is, we control the closed loop system faster and faster. How does
the RGA matrix change with increasing frequency?
The RGA analysis suggests that we should control Tank 1 with Pump 1 and
Tank 2 with Pump 2. If we ignore the cross-terms in the transfer matrix, we
see that the problem is reduced to controlling the two single-tank processes
G
min11
(s) =

1
c
1
1 + sT
1
, G
min22
(s) =

2
c
2
1 + sT
2
6
From the basic course we know that we can control a single-tank process
without stationary error using a PI controller. The resulting control structure
is shown in Figure 3.
r
1
r
2
e
1
e
2
u
1
u
2
y
1
y
2

PI
PI
G
min
Figure 3 The control structure in the minimum phase case.
We will use pole-placement to design the PI controllers in the two loops. The
desired characteristic polynomial of each closed loop is specied as
s
2
+ 2s +
2
4.2 Experiments
Exercise 2 Make sure that the Simulink models agree with the control
structure described above. Double-click on the process block in Simulink to
set the value of
1
and
2
. Use the command designpi to design the two PI
controllers C1 and C2 for the subsystems G
min11
and G
min22
. Use = 0.7 and
experiment with dierent . Try the controller in simulations, and, when it
works well, also on the real process.
Set the step time of step block R1 to 50 and R2 to 100 and the simulation stop
time (found in the Simulation menu under Conguration Parameters) to 150.
If you have diculties to nd a controller which settles within these times, you
may increase them. However, have in mind that this implies longer experiment
durations.
If you try large values of , say > 0.5, you may see large overshoots in the
water levels and in some cases even combinations of over- and undershooting.
Explain this behaviour! How can you eliminate this undesired phenomena?
Hint: Study the plot of the control signals.
Can you notice any cross-coupling in the system response? How fast can you
make the system? What limits the achievable performance?
5. Control in the Nonminimum Phase Case
We will now try to control the process in the nonminimum phase case, where
most water goes to the upper tanks. You must move the tubes in the physical
process such that 70 % of the ow from Pump 1 goes into Tank 4, and that
70 % of the ow from Pump 2 goes into Tank 3. This is achieved with the
following valve conguration: AV1, BV1 and BV2 should be pulled out while AV2
should be pushed in (from the users perspective).
7
5.1 Choice of Control Structure and Design
Exercise 3 Take a look at the transfer matrix G
nonmin
in Matlab. Com-
pute the zeros of the system. Are they stable? Also compute the RGA of
G
nonmin
(0) and G
nonmin
(0.02i). Do the results agree with the preparatory ex-
ercises?
The RGA analysis suggests that we should control Tank 1 with Pump 2 and
Tank 2 with Pump 1. If we ignore the cross-terms in the transfer matrix, the
problem is reduced to controlling the two double-tank processes
G
nonmin12
=
(1
2
)c
1
(1 + sT
1
)(1 + sT
3
)
, G
nonmin21
=
(1
1
)c
2
(1 + sT
2
)(1 + sT
4
)
From the basic course we know that we can control a double-tank process
without stationary error using a PID controller. The resulting control structure
is shown in Figure 4.
r
1
r
2
e
1
e
2
u
1
u
2
y
1
y
2

PID
PID
G
nonmin
Figure 4 The control structure in the nonminimum phase case.
Again, we will use pole placement to design the PID controllers in the two
loops. The desired characteristic polynomial of each closed loop is specied as
(s + )(s
2
+ 2s +
2
)
5.2 Experiments
Exercise 4 You must modify the Simulink models so that they agree with
the new control structure as seen in Figure 4. Dont forget to change the values
of
1
and
2
in the simulated process block as well.
Set the step time of step block R1 to 100 and R2 to 200 and the simulation stop
time to 300. If you have diculties to nd a controller which settles within
these times, you may increase them. However, have in mind that this implies
longer experiment durations.
Use the command designpid to design the two PID controllers C1 and C2. Use
= 0.7, = 1, and experiment with dierent values of . Try the controller
in simulations, and, when it seems to work well, also on the real process. How
should W1 look like according to the RGA reasoning?
8
Can you see the nonminimum phase behavior of the system in the step re-
sponses? How fast can you make the system? What limits the achievable per-
formance? (Warning: The process is much slower and more dicult to control
in this setting. A step response can take several minutes!)
5.3 Decoupling
It is often possible to reduce the cross-coupling in a multivariable system by a
suitable change of coordinates. The idea is to introduce new variables y = W
2
y
and u = W
1
1
u such that the new system

G(s) = W
2
G(s)W
1
becomes as diagonal as possible. It is then possible to design a decentralized
controller
u =

C
1
0
0 C
2

e
for the decoupled system. The control structure is shown in Figure 5.
r
1
r
2
e
1
e
2
e
1
e
2
u
1
u
2
u
1
u
2
y
1
y
2

PID
PID
G
nonmin
W
1
W
2
Figure 5 Decoupling in the nonminimum phase case.
In our case, since the process is symmetric (G
11
= G
22
and G
12
= G
21
),
choosing
W
1
= W
2
=

1 1
1 1

will result in a complete diagonalization of the system. (Choosing W


1
and W
2
may be non-trivial in the general case). Notice that y
1
corresponds to the sum
of the lower tank levels, while y
2
corresponds to the dierence of the lower
tank levels.
Exercise 5 Enter the matrices W
1
and W
2
in Matlab and then compute
the transformed system

G:
>> Gtilde = minreal(W2*Gnonmin*W1)
Notice that the the minimum phase dynamics are collected in

G
11
, while the
nonminimum phase dynamics are collected in

G
22
. It should thus be harder
to control y
2
than y
1
. Does this agree with your intuition?
Exercise 6 Design two PID controllers for the systems

G
11
and

G
22
. It
is probably possible to achieve higher bandwidth in the rst loop than the
second one (why?).
Try the controller in simulations and also on the real process. Do you get
better responses than you did in Exercise 4?
9

You might also like