You are on page 1of 8

Three Tank System

Muhammad Abid

Institute of Automatic Control and Complex Systems,


Department of Electrical Engineering, University of Duisburg-Essen
Bismarck Strasse 81, Duisburg 47057, , Germany
Date: March 7, 2013
Chapter 1

Three Tank System

Three Tank System is a Laboratory equipment and can be used as a bench mark
for different control problems. Due to its highly nonlinear behavior, it can be
used as a good example to show the superiority and usefulness of Fuzzy Control.
The Three Tank System consists of two major parts: the three tank system
DTS200 [1]as the controlled plant and a DSP-system [2] which may be used to
implement the control law.
This chapter introduces three tank system in details. A nonlinear model is
derived for the system and the uncertainties are modeled. The system is then
linearized at some operating point. A nonlinear controller is used to obtain two
decoupled linear systems and one nonlinear system.

1.1 Description of Three Tank System


The three tank system is a nonlinear multivariable laboratory equipment and
has been widely used as a benchmark to test nonlinear control techniques and
fault detection and isolation algorithms ([3], [4], [5], [6], [7], [8], etc.). Schematic
diagram of three tank system is shown in Fig (1.1). It consists of three cylindrical
tanks T1 , T2 and T3 each of cross sectional area Ac . These tanks are connected to
each other through cylindrical pipes of cross sectional area sn . There is a valve in
tank T2 for the liquid outflow. The outflow liquid goes to the reservoir. There are
two pumps P1 and P2 which pump the liquid to T1 and T2 , respectively. These
pumps have flow rates of Q1 and Q2 . There is an arrangement for measuring the
liquid level in each tank. If the liquid level in tank T1 or T2 exceed a maximum
level Hmax , the corresponding pump is automatically switched off. Table (1.1)
shows the technical data of the three tank system.

1
Table 1.1: Parameters of the three tank system

Parameters Symbol Value Unit


cross section area of tanks Ac 154 cm2
cross section area of pipes sn 0.5 cm2
max. height of tanks Hmax 62 cm2
max. flow rate of pump 1 Q1max 100 cm3 /sec
max. flow rate of pump 2 Q2max 100 cm3 /sec
coeff. of flow for pipe 1 a1 0.46
coeff. of flow for pipe 2 a2 0.60
coeff. of flow for pipe 3 a3 0.45

Pump 1 Pump 2

A A A

Tank 1
Tank 3 Tank 2
H max

h1
h3
h2

sn

Figure 1.1: Three Tank System

1.2 Modeling of Three Tank System


Using the incoming and outgoing mass flows under consideration of Torricellies
Law, the dynamics of the three tank system is modeled by:

Ac h˙1 = Q1 − Q13
Ac h˙2 = Q2 + Q32 − Q20
Ac h˙3 = Q13 − Q32
p
Q13 = a1 s13 sgn(h1 − h3 ) 2g|h1 − h3 |
p
Q32 = a3 s23 sgn(h3 − h2 ) 2g|h3 − h2 |
p
Q20 = a2 s0 2gh2 (1.1)

where Q1 (t), Q2 (t) are incoming mass flows and h1 (t), h2 (t), h3 (t) are the water
level of each tank and can be measured. The three circular tanks have the same

2
cross section A and are interconnected via circular pipes with cross sections s13 ,
s23 . The outlet pope is also circular with cross section s0 . a1 ,a2 and a3 are
scaling constants and g is the gravity constant.

1.3 Linearization of the model about operating


point
As in three tank system, the functions g(x) and h(x) are constant matrices, we
may write the system (??) as follows:
ẋ = f (x) + Bu
y = Cx
Although the system is non-differentiable, it may be regarded as a flat hybrid
system. The system has four possible state locations. In each location a dif-
ferentiable model is obtained. The state space regions corresponding to such
locations are x1 ≥ x3 or x1 ≤ x3 and x2 ≥ x3 or x2 ≤ x3 [5]. We can linearize
f (x) using the Taylor series expansion of f (x) about an equilibrium point x0 .
 2 2 
∂f ∂ fx
f (x) = x + + · · ·
∂x x0 ∂x2 2!
= Ax + (higher order terms)
Neglecting the higher order terms, system (??) linearizes to the following system
ẋ = Ax + Bu
y = Cx (1.2)
For the case of three tank system, the constant matrices A, B and C are:
 
−θ13 0 θ13
1 
A = 0 −θ32 − θ20 θ32 
Ac
θ13 θ32 −θ13 − θ32
   
1 0 1 0 0
1 
B = 0 1  C= 0 1 0  (1.3)
Ac
0 0 0 0 1
q q q
where θ13 = a1 s13 2|x10g−x30 | , θ32 = a3 s23 2|x30g−x20 | and θ20 = a2 s20 2xg20 .
In the above linearization the only assumption is made that x10 6= x20 6= x30
and this assumption is mostly satisfied. Let us take x10 = 45cm, x20 = 15cm
and x30 = 30cm. Then the linearized model is given by:
 
−0.0085 0 0.0085
A =  0 −0.0195 0.0084 
0.0085 0.0084 −0.0169
   
0.0065 0 1 0 0
B =  0 0.0065  C =  0 1 0  (1.4)
0 0 0 0 1

3
1.4 Model uncertainty
We consider the model uncertainty caused by the linearization. We assume that
the operating region is defined as
 
40 ≤ h1 ≤ 50
10 ≤ h2 ≤ 20 (1.5)
25 ≤ h3 ≤ 35
The nominal model is only valid at the the linearizataion point. However, as
the operating point deviates from the linearization point, the linearized model
will be no more valid. That is,
 
−θ13 − δθ13 0 θ13 + δθ13
1 
Ā = 0 −θ32 − δθ32 − θ20 − δθ20 θ32 + δθ32 
Ac
θ13 + δθ13 θ32 + δθ32 −θ13 − θ32 − δθ32 − δθ13
 
−θ13 0 θ13
1 
= 0 −θ32 − θ20 θ32 
Ac
θ13 θ32 −θ13 − θ32
| {z }
A
 
−δθ13 0 δθ13
1 
+ 0 −δθ32 − δθ20 −δθ32 
Ac
δθ13 δθ32 −δθ32 − δθ13
| {z }
∆A

 
−δθ13 0 δθ13
1 
∆A = 0 −δθ32 − δθ20 −δθ32 
Ac
δθ13 δθ32 −δθ32 − δθ13
 
δ1 h11 0 δ1 h13
= 0 δ2 h22 δ2 h23 
δ3 h31 δ3 h32 δ3 h33
  
δ1 0 0 h11 h12 h13
=  0 δ2 0  h21 h22 h23 
0 0 δ3 h31 h32 h33
| {z }| {z }
∆ H

δ
0.0147-0.0085=0.0062 Now Aθ13 c
≤ 0.0062 (The variation of θA13c is 0.0066 ≤ θA13c ≤ 0.0147), that
is |δ1 h11 | ≤ 0.0062, set h11 = −0.0085 |δ1 | ≤ 0.0062/h11 = 0.729 (In book,
it has been mistakenly taken as |δ1 | ≤ h11 /0.0062 = 1.37). The same steps
can be carried to to find that h13 = 0.0085. Furthermore, it is evident that
h12 = 0, h21 = 0.
0.0143-0.0084=0.0059 δ
Now we proceed to find h32 . It can be computed that Aθ32 c
≤ 0.0059
(The variation of θA13c is 0.0064 ≤ θA13c ≤ 0.0143), that is |δ1 h23 | ≤ 0.0059, set
h23 = 0.0084 then |δ2 | ≤ 0.0059/h23 = 0.729. The same hold for h32 .

4
Coming
to the computation of h33
−δθ32 −δθ13
Ac ≤ 0.0059 + 0.0062 = 0.0121 or |δ3 h33 | ≤ 0.0121, set h33 =
−0.0169 then |δ3 | ≤ 0.0121/h33 = 0.715
Home work: Compute the remaining elements of H matrix

1.5 Modeling of Faults in three tank system


Following types of faults may be present in the three tank system:

• component faults: there may be leakage in the tanks. For the purpose of
simulating leaks, each tank in the three tank system additionally has a
circular opening with cross section sl and a manually
√ adjustable
√ ball√valve
in series. These leaks may be modeled as θA1 2gh1 , θA2 2gh2 , θA3 2gh3
where θA1 , θA1 , θA1 are unknown and depend on the size of the leaks. It
is assumed, for simplicity that leaks occurre at the bottom of the tanks.

• component faults: pluggings between two tanks and in the letout pipe by
tank 2, which causes changes
p in Q13 , Q32 and Q20 and thus can p be modeled
by θA4 a1√s13 sgn(h1 −h3 ) 2g|h1 − h3 |, θA6 a3 s23 sgn(h3 −h2 ) 2g|h3 − h2 |,
θA5 a2 s0 2gh2 . Where θA4 , θA5 , θA6 ∈ [−1, 1]and are unknown.

• sensor faults: Using switches, sensor failures of the level measurement


can be simulated. The corresponding sensor output supplies a voltage
which corresponds to the liquid level 0. Alternatively it is possible to
scale the measured liquid level between the real height and the height 0
using potentiometers. Sensor faults in the three sensors are represented
by f1 , f2 and f3 .

• The actuator faults, i.e. the faults in pumps, can be simulated using
two other potentiometers which reduce the control signal up to 0% of its
origional value. These faults are represented by f5 and f6 .

We may incorporate the faults and disturbances in the state space realization
of the system as follows:

ẋ = (A + ∆AF )x + Bu + Ef f (1.6)
y = Cx + Ff f (1.7)

6
X
∆AF = Ai θAi
i=1
 
√−g 0 0

−0.0214 0 0

 (Ac 2g|h10 |)  
A1 =  0 0 0 = 0 0 0 
0 0 0 0 0 0

5
   
0 0 0 0 0 0
 0
A2 =  √−g 0 
= 0 0.0371 0 
(Ac 2g|h20 |)
0 0 0 0 0 0
   
0 0 0 0 0 0
 0 0 0  
A3 =  = 0 0 0 
0 0 √−g 0 0 −0.0262
(Ac 2g|h30 |)

√−a1 s13 g √ a1 s13 g


  
0 −0.0085 0 0.0085

(Ac 2g|h10 −h30 |) (Ac 2g|h10 −h30 |)
  
A4 =  0 0 0 = 0 0 0 
√ a1 s13 g 0 √−a1 s13 g 0.0085 0 −0.0085
(Ac 2g|h10 −h30 |) (Ac 2g|h10 −h30 |)
   
0 0 0 0 0 0
−a s g
A5 =  0 (A √22gh 0
0  =  0 0.0111 0 
c 20 )
0 0 0 0 0 0
  
0 0 0 
−a s g a s g 0 0 0
 0 √ 3 23 √ 3 23

A6 =  (Ac 2g|h30 −h20 |) (Ac 2g|h30 −h20 |)  =  0 −0.0084 0.0084 
0 √ a3 s23 g √−a3 s23 g 0 0.0084 −0.0084
(Ac 2g|h30 −h20 |) (Ac 2g|h30 −h20 |)
3×5
Ef = [0 B] ∈ ℜ , Ff = [I3×3 0] ∈ ℜ3×5

6
Bibliography

[1] Amira, “Lab manual dts200 three tank system,” tech. rep., Bismarckstr. 67,
47057 Duisburg, Germany, 1992.

[2] “Ds1102-board, user’s guide,” tech. rep., Paderborn, 1995.

[3] L. Li and D. Zhou, “Fast and robust fault diagnosis for a class of nonlin-
ear systems: detectability analysis,” Computers and chemical engineering,
vol. 28, no. 12, pp. 2635–2646, 2004.

[4] M. Fliess, C. Join, and H. Sira-Ramirez, “Closed-loop fault-tolerant control


for uncertain nonlinear systems,”

[5] C. Join, H. Sira-Ramirez, and M. Fliess, “Control of an uncertain three-


tank system via on-line parameter identification and fault detection,” in
16th IFAC world congress on automatic control, Prague.

[6] L. Kovacs, E. Borbely, and Z. Benyo, “Optimal control of the three tank
system in h-2/h-infinity space,” in 5th Slovakian-Hungarian joint symposium
on Applied Machine intelligence and Informatics, Poprad, 2007.

[7] G. R., “Mixed sensivity h-infinity control of a three tank system,” in Amer-
ican Control Conference, 2005.

[8] K. Tsuda, D. Mignone, G. Ferrari-Trecate, and M. Morari, “Reconfiguration


strategies for hybrid system,” in American Control Conference, 2001.

You might also like