Robust and Adaptive Path Following For Underactuated Autonomous Underwater Vehicles
Robust and Adaptive Path Following For Underactuated Autonomous Underwater Vehicles
Robust and Adaptive Path Following For Underactuated Autonomous Underwater Vehicles
www.elsevier.com/locate/oceaneng
Robust and adaptive path following
for underactuated autonomous
underwater vehicles
K.D. Do
a,
, J. Pan
a
, Z.P. Jiang
b
a
School of Mechanical Engineering, The University of Western Australia, Crawley, WA 6009, Australia
b
Department of Electrical and Computer Engineering, Polytechnic University, Brooklyn, NY 11201, USA
Received 3 November 2003; accepted 7 April 2004
Abstract
This paper proposes a nonlinear robust adaptive control strategy to force a six degrees of
freedom underactuated underwater vehicle with only four actuators to follow a predened
path at a desired speed despite of the presence of environmental disturbances and vehicles
unknown physical parameters. The proposed controller is designed using Lyapunovs direct
method, the popular backstepping and parameter projection techniques. The closed loop
path following errors can be made arbitrarily small. Interestingly, it is shown that our
developed control strategy is easily extendible to situations of practical importance such as
parking and point-to-point navigation. Numerical simulations are provided to illustrate the
eectiveness of the proposed methodology.
# 2004 Elsevier Ltd. All rights reserved.
Keywords: Path following; Parking; Point-to-point navigation; Underactuated underwater vehicles;
Cascade system; Nonlinear control; Robustness; Adaptation
1. Introduction
Over the last decade, trajectory tracking and path following issues of under-
actuated marine vehicles have received a lot of attention from the control com-
munity. Trajectory tracking refers to the case where the vessel in question must
track a reference trajectory generated by a suitable virtual vehicle. The problem of
path following is concerned with forcing the vessel to follow a given path, which is
_
_
_
J
2
g
2
1 sin/tanh cos/tanh
0 cos/ sin/
0 sin/=cosh cos/=cosh
_
_
_
_
: 2
Notice that J
2
(g
2
) is not dened when the pitch angle is equal to 90
v
. However,
during practical operations with underwater vehicles, this problem is unlikely to
happen due to the metacentric restoring forces. One way to avoid the singularities
of J
2
(g
2
) is to use a four-parameter description known as the quaternion. We use
the above Euler parameters in this paper because of their physical representation
and computational eciency.
The inertia matrices are given by
M
1
diagm
11
; m
22
; m
33
; M
2
diagm
44
; m
55
; m
66
3
where the positive constant terms m
jj
, 1 j 6, denote the vehicle inertia includ-
ing added mass in surge, sway, heave, roll, pitch and yaw.
The Coriolis matrices are as follows:
C
1
v
1
0 m
33
w m
22
v
m
33
w 0 m
11
u
m
22
v m
11
u 0
_
_
_
_;
C
2
v
2
0 m
66
r m
55
q
m
66
r 0 m
44
p
m
55
q m
44
p 0
_
_
_
_: 4
The damping matrices are
D
1
v
1
diag d
11
3
i2
d
ui
u j j
i1
; d
22
3
i2
d
vi
v j j
i1
; d
33
3
i2
d
wi
w j j
i1
_ _
D
2
v
2
diag d
44
3
i2
d
pi
p j j
i1
; d
55
3
i2
d
qi
q j j
i1
; d
66
3
i2
d
ri
r j j
i1
_ _
5
where the positive constant terms d
jj
, d
ui
, d
vi
, d
wi
, d
pi
, d
qi
and d
ri
, 1 j 6, i 2; 3,
represent the hydrodynamic damping in surge, sway, heave, roll, pitch and yaw.
For simplicity, we ignore the higher nonlinear damping terms.
The restoring force vector g
2
(g
2
) is given by
g
2
g
2
qgrGM
T
sin/ qgrGM
L
sinh 0
_
T
6
1971 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
where q, g, r, GM
T
and GM
L
are the water density, gravity acceleration, displaced
volume of water, transverse metacentric height and longitudinal metacentric height,
respectively.
The available control inputs are
s
1
s
u
0 0
T
; s
2
s
p
s
q
s
r
T
7
where s
u
, s
p
, s
q
and s
r
are the control force and torque in surge, roll, pitch and
yaw, respectively.
Finally, the vectors of the environmental disturbances are given by
s
w1
t s
wu
t s
wv
t s
ww
t
T
; s
w2
t s
wp
t s
wq
t s
wr
t
T
8
where s
wu
(t), s
wv
(t), s
ww
(t), s
wp
(t), s
wq
(t) and s
wr
(t) are the disturbance forces and
torques acting on surge, sway, heave, roll, pitch and yaw directions of the vessel,
respectively. We assume that these disturbances are bounded as follows:
s
wu
t j j s
max
wu
< 1; s
wv
t j j s
max
wv
< 1; s
ww
t j j s
max
ww
< 1;
s
wp
t
s
max
wp
< 1; s
wq
t
s
max
wq
< 1; s
wr
t j j s
max
wr
< 1 9
Since the sway and heave control forces are not available in the sway and heave
dynamics, the vehicle model (1) is underactuated.
2.2. Control objective
In this paper, we consider a control objective of designing the control inputs s
1
and s
2
to force the underactuated vehicle (1) to follow a specied path X, see
Fig. 1. If we are able to drive the vehicle to follow closely a virtual vessel that
moves along the path with a desired speed u
0
, then, the control objective is ful-
lled, i.e. the vessel is in a tube of nonzero diameter centered on the reference path
and moves along the specied path at the speed u
0
. Roughly speaking, the
approach is to steer the vessel such that it heads to the virtual one and diminishes
the distance between itself and the virtual vessel.
In Fig. 1, A is the center of the real vehicle and A
s
is a point on the reference
path attached to the virtual vehicle. Dene the following path following errors
x
e
x
d
x; y
e
y
d
y; z
e
z
d
z
d
e
x
2
e
y
2
e
z
2
e
_
10
where x
d
, y
d
and z
d
are the coordinates of A
s
.
Therefore the terms a
i
, 1 i 3, in Fig. 1 are obtained from x
e
, y
e
and z
e
by
rotating the body frame around the earth xed frame 0XYZ the roll, pitch and yaw
angles, i.e.
a
1
a
2
a
3
T
J
1
1
g
2
x
e
y
e
z
e
T
: 11
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1972
Expanding (11) yields
a
1
x
e
J
11
1
g
2
y
e
J
21
1
g
2
z
e
J
31
1
g
2
a
2
x
e
J
12
1
g
2
y
e
J
22
1
g
2
z
e
J
32
1
g
2
a
3
x
e
J
13
1
g
2
y
e
J
23
1
g
2
z
e
J
33
1
g
2
12
where J
ij
1
g
2
is the element of J
1
(g
2
) at the ith row and jth column. Therefore, the
path following orientation errors are dened by the angles a and b. It is noted that
the angles c, a and b are not dened at d
e
0 but with the aid of desired control-
ler, lim
d
e
;a;b k k!0
h; w h
s
; w
s
, with h
s
and w
s
being the orientation angles of the
virtual vessel. Hence, in this paper, we will design a controller such that it guaran-
tees d
e
! d
e
with d
e
being an arbitrarily small positive constant to avoid chattering
caused by d
e
0. With the above denitions, our control objective can be math-
ematically stated as follows.
Objective 1. Under Assumption 1, design the control inputs s
1
and s
2
to force the
underactuated vehicle (1) to follow the path X given by
x
d
x
d
s; y
d
y
d
s; z
d
z
d
s 13
where s is the path parameter variable, such that
lim
t!1
d
e
t d
e
; lim
t!1
at j j aa;
lim
t!1
bt j j
bb and lim
t!1
/t j j
// 14
with d
e
,
//, aa and
bb being arbitrarily small positive constants.
Fig. 1. General framework of underwater vehicle path following.
1973 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
Assumption 1. The reference path is regular, i.e. there exist strictly positive con-
stants a
3min
, a
3max
, a
2min
and a
2max
such that
a
3min
@x
d
@s
_ _
2
@y
d
@s
_ _
2
@z
d
@s
_ _
2
a
3max
and a
2min
@x
d
@s
_ _
2
@y
d
@s
_ _
2
a
2max
: 15
Remark 1.
One might refer to the above objective as a path-tracking one. However, we use
the term path following since our approach is to make the real vehicle to fol-
low the virtual one, see Fig. 1.
Assumption 1 ensures that the path is feasible for the vessel to follow, see Sec-
tion 4. The condition (15) implies that the reference trajectory cannot contain a
vertical straight line to avoid singularity of J
2
(g
2
) at the pitch angle h 0:5p.
If the reference path is not regular, then, we can often split it into regular pieces
and consider each of them separately. This is the case of point-to-point navi-
gation, which will be addressed in Section 5.
The path parameter, s, is not the arc length of the path in general. For example,
a circle with radius R centered at the origin can be described as x
d
Rcoss,
y
d
Rsins.
3. Coordinate transformation
From (10) and (12), we have the position kinematic error dynamics as follows:
_
dd
e
1
d
e
x
e
@x
d
@s
y
e
@y
d
@s
z
e
@z
d
@s
_ _
_ ss
a
1
d
e
u
a
2
d
e
v
a
3
d
e
w 16
For the path following orientation errors, referring to Fig. 1 and the control
objective stated in the previous section, one can see that the following holds:
a
1
d
e
cosc cosacosb 17
which in turn implies that
lim
t!1
at 0
() lim
t!1
ct 0 ) lim
t!1
a
1
t
d
e
t
_ _
1:
lim
t!1
bt 0
_
_
_
18
Hence, we can either choose the angles a and b or the angle c or the term a
1
=d
e
as the orientation coordinates for the control design. We now discuss the above
options and then choose one which results in a simple control design and enhance
feasible initial conditions.
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1974
3.1. Using angles a and b
In this case, the path following orientation errors are dened as follows (refer to Fig. 1):
a e
a
2pn
a
e
a
b e
b
2pn
b
e
b
19
where
e
a
2arctana
3
=a
1
; a
3
; a
1
6 0; 0
0; a
3
; a
1
0; 0
_
;
e
b
2arctan a
2
=
a
2
1
a
2
3
_ _ _
; a
2
;
a
2
1
a
2
3
_ _ _
6 0; 0
0; a
2
;
a
2
1
a
2
3
_ _ _
0; 0
20
_
_
The functions n
a
(e
a
) and n
b
(e
b
) take values in (0, 1, 2, . . .) such that a and b
belong to (p, p). Hence, a and b are periodic and piecewise continuous functions
with respect to e
a
and e
b
. The reason of introducing (19) is to convert all equilib-
rium points of a and b to the origin. It is seen from (20) that e
a
and e
b
are discon-
tinuous on the following surfaces:
D
a
a
1
; a
3
: a
3
6 0; a
1
0 f g;
D
b
a
1
; a
2
; a
3
: a
2
6 0;
a
2
1
a
2
3
_
0
_ _
: 21
It is also seen from (19) that a and b are discontinuous on the surfaces:
C
a
a
1
; a
3
: a p f g; C
b
a
1
; a
2
; a
3
: b p f g: 22
We now use (19) to transform the kinematic part of (1) into
_ gg
ab
f
s
ab
_ ss f
u
ab
u f
v
ab
v f
w
ab
w A
ab
J
2
g
2
v
2
23
where
g
ab
/ a b
T
; f
s
ab
F
ab
@x
d
@s
@y
d
@s
@z
d
@s
_ _
T
;
f
u
ab
F
ab
J
11
1
g
2
J
21
1
g
2
J
31
1
g
2
_
T
;
f
v
ab
F
ab
J
12
1
g
2
J
22
1
g
2
J
32
1
g
2
_
T
;
f
w
ab
F
ab
J
13
1
g
2
J
23
1
g
2
J
33
1
g
2
_
T
;
F
ab
0 f
1
ab
f
2
ab
_ _
T
;
A
ab
1 0 0
cosatanb cos/ sinatanbsin/ coshsin/ tanbsinhcosa
coshsinacos/
sina sin/cosa cosacoshcos/ sinasinh
_
_
_
_
24
1975 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
with
f
1
ab
1
d
e
cosb
cosaJ
13
1
g
2
sinaJ
11
1
g
2
; cosaJ
23
1
g
2
_
sinaJ
21
1
g
2
; cosaJ
23
1
g
2
sinaJ
21
1
g
2
f
2
ab
sinbcosa
d
e
J
11
1
g
2
cosb
d
e
J
12
1
g
2
sinbsina
d
e
J
13
1
g
2
;
_
sinbcosa
d
e
J
21
1
g
2
cosb
d
e
J
22
1
g
2
sinbsina
d
e
J
23
1
g
2
;
sinbcosa
d
e
J
31
1
g
2
cosb
d
e
J
32
1
g
2
sinbsina
d
e
J
33
1
g
2
_
:
25
From (24), we calculate the determination of the matrix A
ab
() as follows:
detA
ab
cosacosh sinasinhcos/ sinhsin/tanb 26
It is seen from (26) that the matrix A
ab
is not globally invertible even when /
0 and h 6 0:5p. It is also observed that if we choose the angles a and b as the
orientation coordinates for control design, there are a number of discontinuous
surfaces, see (20)(22), which make the stability analysis dicult.
3.2. Using angle c
In this case, the path following orientation error is dened as follows (refer to
Fig. 1):
c e
c
2pn
c
e
c
27
where
e
c
2arctan
a
2
2
a
2
3
_ _
a
1
_ _
; a
1
;
a
2
2
a
2
3
_ _ _
6 0; 0
0; a
1
;
a
2
2
a
2
3
_ _ _
0; 0
_
_
_
28
The interpretation of the above expressions is similar to that of (19) and (20). It
is seen from (28) that e
c
is discontinuous on the following surface:
D
c
a
1
; a
2
; a
3
:
a
2
2
a
2
3
_
6 0; a
1
0
_ _
: 29
It is also seen from (27) that c is discontinuous on the surface
C
c
a
1
; a
2
; a
3
: c p f g: 30
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1976
Dierentiating both sides of (27) results in
_ cc
1
e
2
a
2
2
a
2
3
_ a
1
a
2
@a
2
@x
e
_ xx
e
@a
2
@y
e
_ yy
e
@a
2
@z
e
_ zz
e
@a
2
@/
_
//
_ _ _
a
1
a
3
@a
3
@x
e
_ xx
e
@a
3
@y
e
_ yy
e
@a
3
@z
e
_ zz
e
@a
3
@/
_
//
_ _
a
2
2
a
2
3
_ _
@a
1
@x
e
_ xx
e
@a
1
@y
e
_ yy
e
@a
1
@z
e
_ zz
e
@a
1
@/
_
//
_ _
a
1
a
2
@a
2
@h
a
3
@a
3
@h
_ _
a
2
2
a
2
3
_ _
@a
1
@h
_ _
_
hh
a
1
a
2
@a
2
@w
a
3
@a
3
@w
_ _
a
2
2
a
2
3
_ _
@a
1
@w
_ _
_
ww
_
: 31
Since
a
1
a
2
@a
2
@h
a
3
@a
3
@h
_ _
a
2
2
a
2
3
_ _
@a
1
@h
_ __
d
2
e
a
2
2
a
2
3
_
_ _
2
a
1
a
2
@a
2
@w
a
3
@a
3
@w
_ _
a
2
2
a
2
3
_ _
@a
1
@
_ __
d
2
e
a
2
2
a
2
3
_
_ _
2
6 0 32
for all x
e
; y
e
; z
e
; /; w 2 R
5
and h 2 R0:5p, the angle c can be chosen as the
orientation coordinate for the control design. However, (31) will result in a very
complicated control law.
3.3. Using a
1
=d
e
By dening
a
e
x
2
e
y
2
e
_
; cosc
1
a
e
d
e
cosh
z
e
d
e
sinh;
cosc
2
x
e
a
e
cosw
y
e
a
e
sinw 33
we can write a
1
=d
e
as follows:
a
1
d
e
cosc
1
a
e
d
e
coshcosc
2
1: 34
Since a
e
=d
e
cosh j j 1, 8x
e
; y
e
; z
e
; h 2 R
4
, the following conditions
lim
t!1
c
1
0 and lim
t!1
c
2
0 35
imply that lim
t!1
a
1
=d
e
1. Furthermore, from (33), we can write
c
1
h h
d
c
2
w w
d
36
where h
d
arccosa
e
=d
e
and w
d
arccosx
e
=a
e
are the desired orientation angles
of the vessel in the horizontal and vertical planes, respectively. Hence, (35) also
1977 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
implies the orientation control objective. If one dierentiates both side of (36) to
get the _ cc
1
and _ cc
2
, there will be discontinuity in the c
1
and c
2
dynamics at z
e
0
and/or y
e
0, i.e. on the a
e
and/or x
e
axes. This discontinuity will cause dicult-
ies in applying the backstepping technique. To get around this problem, we com-
pute _ cc
1
and _ cc
2
based on (33) as follows:
_ cc
1
_
hh
_ aa
e
sinh _ zz
e
cosh
d
e
cosc
1
_
dd
e
sinc
1
d
e
cosc
1
_ cc
2
_
ww
_ xx
e
sinw _ yy
e
cosw
a
e
cosc
2
_ aa
e
sinc
2
a
e
cosc
2
:
37
It is seen that (37) is not dened at c
i
0:5p, i 1; 2, and a
e
0, d
e
0. How-
ever, our controller will guarantee that c
i
t j j < 0:5p and d
e
t ! d
e
, a
e
t ! a
e
,
8t ! t
0
! 0, with arbitrarily small positive constants d
e
and a
e
and for feasible
initial conditions. From (37), we can see that
_
hh and
_
ww are decoupled. Hence,
designing a controller to achieve the control objective posed in the previous section
by using the orientation coordinate a
1
=d
e
would be much simpler than using the
angles c, a and b. For convenience of control design, we rewrite the transformed
system dynamics (16) and (37) as follows:
_
dd
e
1
d
e
x
e
@x
d
@s
y
e
@y
d
@s
z
e
@z
d
@s
_ _
_ ss
a
1
d
e
u
a
2
d
e
v
a
3
d
e
w
_ gg
2c
f
2c
J
2
g
2
v
2
M
1
_ vv
1
C
1
v
1
v
2
D
1
v
1
v
1
s
1
s
w1
t
M
2
_ vv
2
C
1
v
1
v
1
C
2
v
2
v
2
D
2
v
2
v
2
g
2
g
2
s
2
s
w2
t
38
where
g
2c
/ c
1
c
2
T
;
f
2c
0 f
s
1
_ ss f
u
1
u f
v
1
v f
w
1
w
_ _
f
s
2
_ ss f
u
2
u f
v
2
v f
w
2
w
_ _ _
T
;
f
s
1
-
11
@x
d
@s
-
12
@y
d
@s
-
13
@z
d
@s
;
f
u
1
-
11
J
11
1
g
2
-
12
J
21
1
g
2
-
13
J
31
1
g
2
_
;
f
v
1
-
11
J
12
1
g
2
-
12
J
22
1
g
2
-
13
J
32
1
g
2
_
;
f
w
1
-
11
J
13
1
g
2
-
12
J
23
1
g
2
-
13
J
33
1
g
2
_
;
f
s
2
-
21
@x
d
@s
-
22
@y
d
@s
; f
u
2
-
21
J
11
1
g
2
-
22
J
21
1
g
2
_
;
f
v
2
-
21
J
12
1
g
2
-
22
J
22
1
g
2
_
; f
w
2
-
21
J
13
1
g
2
-
22
J
23
1
g
2
_
39
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1978
with
-
11
x
e
sinh
a
e
d
e
cosc
1
x
e
sinc
1
d
2
e
cosc
1
_ _
; -
12
y
e
sinh
a
e
d
e
cosc
1
y
e
sinc
1
d
2
e
cosc
1
_ _
;
-
13
cosh
d
e
cosc
1
z
e
sinc
1
d
2
e
cosc
1
_ _
; -
21
sinw
a
e
cosc
2
x
e
sinc
2
a
2
e
cosc
2
_ _
;
-
22
cosw
a
e
cosc
2
y
e
sinc
2
a
2
e
cosc
2
_ _
: 40
Therefore, we will design the control inputs s
1
and s
2
for (38) to yield the control
objective. In Section 4, a procedure to design a stabilizer for the path following
error system (38) is presented in details. The structure of (38) suggests us to design
the actual controls s
1
and s
2
in two stages. First, we design the virtual velocity con-
trols for u, v
2
and choose _ ss to ultimately stabilize d
e
and c
i
, i 1; 2, at the origin.
Based on the backstepping technique (Krstic et al., 1995), control s
1
and s
2
will be
then designed to make the errors between the virtual velocity controls and their
actual values asymptotically tend to a small ball centered at the origin. Since the
vessel parameters are unknown, an adaptation scheme is also introduced in this
step to estimate their values used in the control laws. We split the control design
procedure into two steps. The rst step is to design s
1
while the second step takes
care of s
2
. This allows us to simplify the choice of feasible initial conditions.
Since the transformed system (38) is not dened at d
e
t 0, a
e
t 0,
c
i
t 0:5p, i 1; 2, we rst assume that
d
e
t ! d
e
; a
e
t ! a
e
; c
i
t j j < 0:5p; i 1; 2; 8t ! t
0
! 0 41
for some positive constants d
e
and a
e
. Our controller design will guarantee (41) for
feasible initial conditions.
4. Control design
4.1. Design of s
1
The d
e
dynamics have two inputs that can be chosen to stabilize d
e
, namely _ ss and
u. We can either choose the input u or _ ss and then design the remaining input. If we
x _ ss, then the virtual vessel is allowed to move at a desired speed. The real vessel
will follow the virtual one on the path by the controller, and vice verse. In this
paper, we choose to x _ ss. This allows us to adjust the initial conditions in most
cases without moving the real vessel, see Section 5.
Dene
~uu u u
d
42
1979 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
where u
d
is the intermediate control of u. As discussed above, we choose the inter-
mediate control u
d
and _ ss as follows:
u
d
k
1
d
e
d
e
1
a
1
a
2
v a
3
w
1
d
e
u
0
t; d
e
x
e
@x
d
=@s y
e
@y
d
=@s z
e
@z
d
=@s
@x
d
=@s
2
@y
d
=@s
2
@z
d
=@s
2
_ 43
_ ss
a
1
d
e
u
0
t; d
e
@x
d
=@s
2
@y
d
=@s
2
@z
d
=@s
2
_ 44
where k
1
and d
e
are positive constants to be selected later. u
0
t; d
e
6 0, 8t ! t
0
! 0,
d
e
t 2 R, is the speed of the virtual vessel on the path. Indeed, one can choose this
speed to be a constant. However, the time-varying speed and position path follow-
ing error dependence of the virtual vessel on the path is more desirable, especially
when the underwater vehicle starts to follow the path. For example, one might
choose
u
0
t; d
e
u
0
1 v
1
e
v
2
tt
0
e
v
3
d
e
45
where u
0
6 0, v
i
> 0, i 1; 2; 3, v
1
< 1. The choice of u
0
t; d
e
in (45) has the fol-
lowing desired feature: when the path following error, d
e
, is large, the virtual vessel
will wait for the real one; when d
e
is small, the virtual vessel will move along the
path at the speed closed to u
0
and the real one follows it within the specied look
ahead distance. This feature is suitable in practice because it avoids using a high-
gain control for large signal d
e
. It is noted that u
d
is not dened at a
1
0. Since the
terms a
2
=a
1
and a
3
=a
1
can be written as a
2
=d
e
=a
1
=d
e
and a
3
=d
e
=a
1
=d
e
, and
recall that cosc a
1
=d
e
, the intermediate control u
d
is well dened if (41) holds
and
ct j j < 0:5p; 8t ! t
0
! 0: 46
We will come back to this issue in Section 5.
Remark 2.
If one designs the virtual control u
d
without canceling the terms a
2
v and a
3
w in
the d
e
dynamics, then, the condition (46) is not required for u
d
being well dened.
However, an assumption of the sway and heave velocities being bounded is nee-
ded in advance in the stability analysis, i.e. assume stability to prove stability.
If the sway and heave velocities are assumed to be bounded by the surge velo-
city, the terms a
2
v and a
3
w are not required to be canceled either. This controller
can be similarly designed as the one in this paper. Lemma 1 in our present paper
can be directly applied to the stability analysis. It is noted that the sway velocity
does not require to be bounded by the surge velocity with a relatively small
constant as in Skjetne and Fossen (2001) for the case of path following in the
horizontal plane.
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1980
Substituting (43) and (44) into the rst equation of (38) results in
_
dd
e
k
1
a
1
d
e
d
e
d
e
a
1
d
e
~uu: 47
By noticing that under Assumption 1, (41) and (46), the intermediate control u
d
is a smooth function of x
e
, y
e
, z
e
, s, u
0
, g
2
, v and w, dierentiating both sides of
(42) with (43) and (44) yields
_
~uu~uu
m
22
m
11
vr
m
33
m
11
wq
d
11
m
11
u
3
i2
d
ui
m
11
u j j
i1
u
1
m
11
s
u
1
m
11
s
wu
t
@u
d
@x
e
_ xx
e
@u
d
@y
e
_ yy
e
@u
d
@z
e
_ zz
e
@u
d
@s
_ ss
@u
d
@u
0
_ uu
0
@u
d
@g
2
_ gg
2
@u
d
@v
m
33
m
22
wp
m
11
m
22
ur
d
22
m
22
v
3
i2
d
vi
m
22
v j j
i1
v
1
m
22
s
wv
t
_ _
@u
d
@w
m
11
m
33
uq
m
22
m
33
vp
d
33
m
33
w
3
i2
d
wi
m
33
w j j
i1
w
1
m
33
s
ww
t
_ _
48
where for convenience of choosing u
0
, the terms @u
d
=@x
e
, @u
d
=@y
e
and @u
d
=@z
e
do
not include @u
0
=@x
e
, @u
0
=@y
e
and @u
0
=@z
e
, which are lumped into _ uu
0
. From (48),
we choose the actual control s
1
or s
u
without canceling useful nonlinear damping
terms as
s
u
c
1
~uu
^
hh
T
1
f
1
^
hh
21
tanh
~uu
^
hh
21
e
21
_ _
^
hh
22
@u
d
@v
tanh
@u
d
@v
~uu
^
hh
22
e
22
_ _
^
hh
23
@u
d
@w
tanh
@u
d
@w
~uu
^
hh
23
e
23
_ _
49
and the update law as
_
^
hh
^
hh
1j
c
1j
proj~uuf
1j
;
^
hh
1j
; 1 j 16;
_
^
hh
^
hh
21
c
21
proj ~uu j j;
^
hh
21
;
_
^
hh
^
hh
22
c
22
proj ~uu
@u
d
@v
;
^
hh
22
_ _
;
_
^
hh
^
hh
23
c
23
proj ~uu
@u
d
@w
;
^
hh
23
_ _
50
1981 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
where c
1
, e
2i
, c
1j
, c
2i
, 1 i 3, 1 j 16, are positive constants to be selected
later, f
1j
are the jth elements of f
1
, respectively, with
f
1
vr; wq; u
d
; u j ju
d
; u
2
u
d
;
@u
d
@x
e
_ xx
e
@u
d
@y
e
_ yy
e
@u
d
@z
e
_ zz
e
_ _
@u
d
@s
_ ss
@u
d
@u
0
_ uu
0
@u
d
@g
2
_ gg
2
_
;
@u
d
@v
wp;
@u
d
@v
ur;
@u
d
@v
v;
@u
d
@v
v j jv;
@u
d
@v
v
3
;
@u
d
@w
uq;
@u
d
@w
vp;
@u
d
@w
w;
@u
d
@w
w j jw;
@u
d
@w
w
3
_
T
51
and
^
hh
ij
, 1 i 2, is the jth element of
^
hh
i
, which is an estimate of h
i
with
h
1
m
22
; m
33
; d
11
; d
u2
; d
u3
; m
11
;
m
11
m
33
m
22
;
m
2
11
m
22
;
m
11
d
22
m
22
;
m
11
d
v2
m
22
;
_
m
11
d
v3
m
22
;
m
2
11
m
33
;
m
11
m
22
m
33
;
m
11
d
33
m
33
;
m
11
d
w2
m
33
;
m
11
d
w3
m
33
_
T
h
2
s
max
wu
m
11
m
22
s
max
wv
m
11
m
33
s
max
ww
_ _
T
:
52
The operator, proj, is the Lipschitz continuous projection algorithm (Do and
DeBoer, 2000; Pomet and Praly, 1992) applied in our case as follows:
proj-; ^ xx - if N^ xx 0
proj-; ^ xx - if N^ xx ! 0 and N
^ xx
^ xx- 0
proj-; ^ xx 1 N^ xx- if N^ xx > 0 and N
^ xx
^ xx- > 0
53
where N ^ xx ^ xx
2
x
2
M
=l
2
2lx
M
, N
^ xx
^ xx @N^ xx=@ ^ xx, l is an arbitrarily
small positive constant, ^ xx is an estimate of x and x j j x
M
.
The projection algorithm is such that if
_
^ xx^ xx proj-; ^ xx and ^ xxt
0
x
M
then
(a) ^ xxt x
M
l, 80 t
0
t < 1.
(b) proj-; ^ xx is Lipschitz continuous.
(c) proj-; ^ xx j j - j j.
(d) ~ xx proj-; ^ xx ! ~ xx- with ~ xx x ^ xx.
Substituting (49) into (48) yields the error dynamics
_
~uu~uu
1
m
11
c
1
d
11
3
i2
d
ui
u j j
i1
_ _
~uu
1
m
11
h
T
1
f
1
1
m
11
^
hh
T
1
f
1
1
m
11
s
wu
t
1
m
11
^
hh
21
tanh
~uu
^
hh
21
e
21
_ _
@u
d
@v
1
m
22
s
wv
t
1
m
11
^
hh
22
@u
d
@v
tanh
@u
d
@v
~uu
^
hh
22
e
22
_ _
@u
d
@w
1
m
33
s
ww
t
1
m
11
^
hh
23
@u
d
@w
tanh
@u
d
@w
~uu
^
hh
23
e
23
_ _
: 54
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1982
4.2. Design of s
2
Dene
~vv
2
v
2
v
2d
55
where v
2d
p
d
q
d
r
d
T
is the intermediate control of v
2
. Recalling that our goal
is to ultimately stabilize g
2c
/ c
1
c
2
T
at the origin, the second equation of
(38) suggests that we choose this intermediate control as follows:
v
2d
J
1
2
g
2
f
2c
K
2
g
2c
56
where K
2
diagk
21
; k
22
; k
23
is a positive denite diagonal matrix. Substituting
(55) and (56) into the second equation of (38) yields
_ gg
2c
K
2
g
2c
J
2
g
2
~vv
2
: 57
To design the actual control s
2
, we rst note that under Assumption 1, (41) and
(46), the intermediate control v
2d
is a smooth function of x
e
, y
e
, z
e
, s, u
0
, g
2
and v
1
.
Dierentiating both sides of (55) and multiplying by M
2
along the solution of the
last two equations of (38) results in
M
2
_
~vv ~vv
2
C
2
v
2
~vv
2
D
2
v
2
~vv
2
Fh
3
Gh
4
t s
2
58
where
Fh
3
C
1
v
1
v
1
C
2
v
2
v
2d
D
2
v
2
v
2d
g
2
g
2
M
2
@v
2d
@x
e
_ xx
e
@v
2d
@y
e
_ yy
e
@v
2d
@z
e
_ zz
e
@v
2d
@s
_ ss
@v
2d
@u
0
_ uu
0
@v
2d
@g
2
_ gg
2
_ _
M
2
@v
2d
@v
1
M
1
1
C
1
v
1
v
2
D
1
v
1
v
1
s
1
Gh
4
t s
w2
t M
2
@v
2d
@v
1
M
1
1
s
w1
t
59
with F 2 R
3m
3
and G 2 R
3m
4
being the regression matrices, and h
3
2 R
m
3
and h
4
t 2 R
m
4
being the vectors of unknown vessel and environmental disturb-
ance parameters. For the sake of simplicity, the regression matrices F and G,
and the vectors h
3
and h
4
t, are not written down explicitly. From (57) and (58),
we choose the actual control s
2
and update laws as follows:
s
2
K
3
~vv
2
g
T
2c
J
2
g
2
_ _
T
F
^
hh
3
G
^
hh
4
60
_
^
hh
^
hh
3i
c
3i
proj
3
j1
~vv
2j
f
ji
;
^
hh
3i
_ _
; 1 i m
3
_
^
hh
^
hh
4i
c
4i
proj
3
j1
~vv
2j
g
ji
;
^
hh
4i
_ _
; 1 i m
4
61
1983 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
where e
4i
> 0, 1 i 3, c
3j
> 0, 1 j m
3
, c
4i
> 0, 1 l m
4
, K
3
diagk
31
; k
32
; k
33
is a positive denite diagonal matrix, and the proj operator is given
in (53).
^
hh
3i
is an estimate of the ith element of h
3
and
^
hh
4i
is an estimate of the
maximum value of the ith element of h
4
(t). For simplicity of notation, we have dened
F
^
hh
3
:
m
3
i1
f
1i
^
hh
3i
;
m
3
i1
f
2i
^
hh
3i
;
m
3
i1
f
3i
^
hh
3i
_ _
T
G
^
hh
4
:
m
4
i1
g
1i
^
hh
4i
tanh e
1
41
~vv
21
m
2
i1
g
1i
^
hh
4i
_ _
;
m
4
i1
g
2i
^
hh
4i
tanh e
1
42
~vv
22
m
2
i1
g
2i
^
hh
4i
_ _
;
_
m
4
i1
g
3i
^
hh
4i
tanh e
1
43
~vv
23
m
2
i1
g
3i
^
hh
4i
_ __
T
62
with f
ji
, 1 j 3, 1 i m
3
, being the element at the jth column and ith row of the
regression matrix F. Similarly, g
ji
, 1 j 3, 1 i m
4
, is the element at the jth
column and ith row of the regression matrix G.
Substituting (60) into (58) yields the error dynamics
M
2
_
~vv ~vv
2
C
2
v
2
~vv
2
K
3
D
2
v
2
~vv
2
g
T
2c
J
2
g
2
_ _
T
Fh
3
Gh
4
t F
^
hh
3
Gh
^
hh
4
: 63
We now present our main result, whose proof will be given in the next section.
Theorem 1. Assume that (a) the vessel inertia, added mass and damping matrices are
diagonal; (b) the environmental disturbances are bounded; (c) the vessel parameters
are unknown but constant; (d) the reference path satises Assumption 1. If the state-
feedback control laws (49), (60) and the update laws (50), (61) are applied to the
vessel system (1), then there exist feasible initial conditions such that the path follow-
ing errors xt x
d
t; yt y
d
t; zt z
d
t; c
1
t; c
2
t are ultimately asympto-
tically stable at the origin. Furthermore, the ultimate bounds of these errors can be
made arbitrarily small by adjusting the control gains.
5. Proof of Theorem 1
To prove Theorem 1, we rst consider the g
2c
; ~vv
2
subsystem and then the d
e
; ~uu
subsystem.
5.1. g
2c
; ~vv
2
subsystem
To investigate stability of this subsystem, we consider the following Lyapunov
function
V
1
1
2
g
T
2c
g
2c
1
2
~vv
T
2
M
2
~vv
2
1
2
4
i3
~
hh
T
i
C
1
i
~
hh
i
64
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1984
where
~
hh
i
h
i
^
hh
i
and C
i
diagc
ij
, 1 j m
3
for i 3, 1 j m
4
for i 4.
Dierentiating both sides of (64) along (57), (61) and (63) yields
_
VV
1
g
T
2c
K
2
g
2c
~vv
T
2
D
20
K
3
~vv
2
0:2785
3
i1
e
4i
65
where D
20
diagd
44
; d
55
; d
66
and we have used x j j xtanhx=k 0:2785k,
8x 2 R, and k > 0. From (65), we conclude that g
2c
and ~vv
2
are ultimately asympto-
tically stable at the origin. To estimate the upper bound of g
2c
and ~vv
2
, we subtract
and add 1=2
4
i3
~
hh
T
i
C
1
i
~
hh
i
to the right hand side of (65) to obtain
_
VV
1
r
1
V
1
q
1
66
where
r
1
min 1; 2k
min
K
2
;
2k
min
D
20
K
3
k
max
M
2
_ _
;
q
1
1
2
4
i3
~
hh
T
i
C
1
i
~
hh
i
0:2785
3
i1
e
4i
: 67
From (66), it can directly be shown that
V
1
t V
1
t
0
e
r
1
tt
0
q
1
r
1
68
which further yields
g
2c
t
_
_
_
_
2V
1
t
0
_
e
r
1
=2tt
0
2q
1
r
1
: a
g
e
r
1
=2tt
0
q
g
~vv
2
t k k
2V
1
t
0
k
min
M
2
e
r
1
=2tt
0
2q
1
r
1
k
min
M
2
: a
v
e
r
1
=2tt
0
q
v
: 69
5.2. d
e
; ~uu subsystem
For the ease of analyzing the stability of this subsystem, we rst consider the ~uu
dynamics and then the d
e
dynamics.
5.2.1. ~uu dynamics
Consider the following Lyapunov function
V
2
m
11
2
~uu
2
1
2
2
i1
~
hh
T
i
C
1
i
~
hh
i
70
where
~
hh
i
h
i
^
hh
i
and C
i
diagc
ij
, 1 j 16 for i 1, 1 j 3 for i 2. Dif-
ferentiating both sides of (70) along (48)(50) yields
_
VV
2
c
1
d
11
~uu
2
0:2785
3
i1
e
2i
: 71
1985 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
Subtracting and adding 1=2
2
i1
~
hh
T
i
C
1
i
~
hh
i
to the right hand side of (71) yields
_
VV
2
r
2
V
2
q
2
72
where
r
2
min 1;
2c
1
d
11
m
min
11
_ _
; q
2
1
2
2
i1
~
hh
T
i
C
1
i
~
hh
i
0:2785
3
i1
e
2i
73
with m
min
11
being the minimum value of m
11
. From (72), it can directly be shown
that
V
2
t V
2
t
0
e
r
2
tt
0
q
2
r
2
74
which further yields
~uut j j
2V
2
t
0
_
e
r
2
=2tt
0
2q
2
r
2
: a
u
e
r
2
=2tt
0
q
u
: 75
Remark 3. It is noted that, thanks to the use of the projection algorithm, by adjust-
ing K
2
, K
3
, c
1
, e
2i
, e
4i
, c
1j
, c
2i
, c
3n
, c
4l
, 1 i 3, 1 j 16, 1 n m
3
, 1 l m
4
,
we can make q
u
, q
g
and q
m
arbitrarily small. This observation plays an important
role in the stability analysis of the d
e
dynamics.
5.2.2. d
e
dynamics
5.2.2.1 Lower bound of d
e
. We now show that there exist initial conditions such that
d
e
t ! d
e
> 0. From (47) and (17), we have
_
~
dd
~
dd
e
! k
1
~
dd
e
a
u
e
r
2
=2tt
0
q
u
_ _
76
where
~
dd
e
d
e
d
e
, which, with r
2
> 2k
1
(which we can always choose), further
yields
~
dd
e
t !
~
dd
e
t
0
e
k
1
tt
0
a
u
e
k
1
tt
0
r
2
=2 k
1
1 e
r
2
=2k
1
tt
0
q
u
k
1
1 e
k
1
tt
0
: 77
Therefore, the condition d
e
t ! d
e
> 0 holds when
r
2
> 2k
1
; d
e
! d
e
q
u
k
1
; d
e
t
0
!
a
u
r
2
=2 k
1
d
e
q
u
: 78
We will come back to this issue in the next section.
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1986
5.2.2.2 Upper bound of d
e
. We rewrite (47) as
_
~
dd
~
dd
e
k
1
~
dd
e
cosc~uu k
1
cosc
1
1 cosccosc
2
1
~
dd
e
: 79
Since (79) and the ~uu; c
1
; c
2
subsystem are in cascade form, one might think that
the stability results developed for cascade systems in Panteley and Loria (2001) can
be applied. However, the stability results in that paper have been developed for
cascade systems without nonvanishing disturbances. In fact, nonvanishing dis-
turbances may destroy the stability of a cascade system that satises all the con-
ditions stated in the above paper. To illustrate this fact, we give the following
simple example:
_ xx
1
x
1
x
1
x
2
_ xx
2
x
2
dt:
80
When there is no disturbance d(t), by applying stability results in the above, the
cascade system (80) is globally asymptotically stable at the origin. However, if the
magnitude of bounded disturbance d(t) is larger than 1, we have x
1
grows linearly
unbounded although x
2
is bounded. This fact results from the rst equation being
not globally input-to-state-stable (ISS) with respect to x
2
as input (Sontag, 1989).
Therefore, to analyze stability of (79) we rst present the following lemma.
Lemma 1. Consider the following nonlinear system:
_ xx f t; x gt; x; nt 81
where x 2 R
n
, nt 2 R
m
, f t; x is piecewise continuous in t and locally Lipschitz in
x. If there exist positive constants c
i
, 1 i 4, k
j
, 1 j 2, r
0
, e
0
, l
0
, c
0
and a
class-K function a
0
such that the following conditions are satised:
C1. There exists a proper function V(t,x) satisfying
c
1
x k k
2
Vt; x c
2
x k k
2
;
@V
@x
t; x
_
_
_
_
_
_
_
_
c
3
x k k;
@V
@t
@V
@x
f t; x c
4
x k k
2
c
0
:
C2. The vector function gt; x; nt satises:
gt; x; nt k k k
1
k
2
x k k nt k k:
C3. n(t) globally exponentially converges to a ball centered at the origin:
nt k k a
0
nt
0
k k e
r
0
tt
0
e
0
; 8t ! t
0
! 0:
C4. The following gain condition is satised:c
4
k
2
c
3
e
0
k
1
c
3
e
0
4l
0
> 0:
Then, the solution x(t) of (81) globally exponentially converges to a ball centered
at the origin, i.e.
xt k k a xt
0
; nt
0
k k e
rtt
0
e; 8t ! t
0
! 0 82
1987 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
where e
a
4
=c
1
a
1
_
and
if a
1
r
0
; as
c
1
1
e
a
2
s=r
0
c
2
s
2
a
3
s a
1
1
a
2
sa
4
_ _
/
_ _
_
;
r 0:5a
1
d;
if a
1
6 r
0
; as
c
1
1
e
a
2
s=r
0
c
2
s
2
a
1
a
3
s a
2
sa
4
a
1
a
1
r
0
j j
1
_ _
_
;
r 0:5min a
1
; a
1
r
0
j j ;
with
a
1
1
c
2
c
4
k
2
c
3
e
0
k
1
c
3
e
0
4l
0
_ _
; a
2
s
c
3
c
1
k
1
k
2
a
0
s;
a
3
s
k
1
c
3
4
a
0
s; a
4
c
0
k
1
c
3
e
0
l
0
; 0 < d < a
1
;
/ ! t t
0
e
dtt
0
; 8t ! t
0
! 0; s ! 0:
When c
0
0 and e
0
0, we have e 0 and the system (81) is globally K-expo-
nentially stable. Note that a nite value of the constant / exists for an arbitrarily
small positive d.
Proof. See Do et al. (2003).
We now apply Lemma 1 to system (79) by verifying all conditions C1C4.
Verifying condition C1. Take the following Lyapunov function:
V
3
0:5d
2
e
: 83
It can directly be shown that C1 holds with
c
0
0; c
1
c
2
0:5; c
3
1; c
4
k
1
: 84
Verifying condition C2. By noting that cosc~uu k
1
cosc
1
1 cosc j
cosc
2
1
~
dd
e
j ~uu j j k
1
c
1
j j c
2
j j
~
dd
e
, we have
k
1
1; k
2
k
1
: 85
Verifying condition C3. This condition directly holds from (75) and (69).
Verifying condition C4. From (84) and (85), condition C4 becomes
k
1
maxq
g
; q
u
k
1
0:25l
0
> 0: 86
From Remark 3 and noting that l
0
is an arbitrarily positive constant, we can see
that there always exists k
1
such that (86) holds. All conditions of Lemma 1 have
been veried, we therefore have
d
e
t j j a
de
e
r
de
tt
0
q
de
87
where a
de
, r
de
and q
de
are calculated as in Lemma 1.
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1988
5.3. (v,w) dynamics
Expanding (56) gives
q
d
J
21
2
g
2
k
21
/J
22
2
g
2
k
22
c
1
J
23
2
g
2
k
23
c
2
_ _
J
22
2
g
2
f
s
1
_ ss f
u
1
u
_ _
J
23
2
g
2
f
s
2
_ ss f
u
2
u
_ _
J
22
2
g
2
f
v
1
J
23
2
g
2
f
v
2
_ _
v J
22
2
g
2
f
w
1
J
23
2
g
2
f
w
2
_ _
w
r
d
J
31
2
g
2
k
21
/J
32
2
g
2
k
22
c
1
J
33
2
g
2
k
23
c
2
_ _
J
32
2
g
2
f
s
1
_ ss f
u
1
u
_ _
J
33
2
g
2
f
s
2
_ ss f
u
2
u
_ _
J
32
2
g
2
f
v
1
J
33
2
g
2
f
v
2
_ _
v J
33
2
g
2
f
w
1
J
33
2
g
2
f
w
2
_ _
w
88
where J
ij
2
g
2
is the element at the ith row and jth of J
1
2
g
2
. To show that the
sway and heave velocities are bounded, we take the following quadratic function
V
4
1
2
m
2
22
v
2
1
2
m
2
33
w
2
89
whose derivative along (38), (55) and (88) satises
_
VV
4
m
22
d
v3
v
4
m
33
d
w2
w j jw
2
m
33
d
w3
w
4
A
max
3
v
2
A
max
4
w
2
1
4e
5
A
max
1
1
4e
6
A
max
2
90
where e
i
>0, i 1; 2, A
max
j
, 1 j 4 is the maximum value of A
j
with
A
1
m
11
m
22
u ~rr J
31
2
g
2
k
21
/J
32
2
g
2
k
22
c
1
J
33
2
g
2
k
23
c
2
_
J
32
2
g
2
f
s
1
_ ss f
u
1
u
_ _
J
33
2
g
2
f
s
2
_ ss f
u
2
u
_ __
m
22
s
wvt
A
2
m
11
m
33
u ~qqJ
21
2
g
2
k
21
/J
22
2
g
2
k
22
c
1
J
23
2
g
2
k
23
c
2
_
J
22
2
g
2
f
s
1
_ ss f
u
1
u
_ _
J
23
2
g
2
f
s
2
_ ss f
u
2
u
_ __
m
33
s
wwt
A
3
m
22
d
22
m
22
d
v2
v j j e
5
A
1
j j
m
11
m
22
uJ
33
2
g
2
f
w
1
f
w
2
_ _
2
_
m
11
m
33
uJ
22
2
g
2
f
v
1
f
v
2
_ _
2
_
A
4
m
33
d
33
m
33
d
w2
w j j e
6
A
2
j j
m
11
m
22
uJ
33
2
g
2
f
w
1
f
w
2
_ _
2
_
m
11
m
33
uJ
22
2
g
2
f
v
1
f
v
2
_ _
2
_
:
91
It is seen from (91) that A
max
i
exist and are nite since their arguments are boun-
ded as shown above. Hence, (90) and (89) guarantee a nite upper bound of the
sway and heave velocities (Khalil, 2002).
5.4. Initial conditions for ct j j < 0:5p, c
i
t j j < 0:5p, i 1; 2, 8t ! t
0
! 0
Since c
i
t j j g
2c
t
_
_
_
_
, i 1; 2, 8t ! t
0
! 0, from (69), it can directly be shown
that the condition c
i
t j j < 0:5p, i 1; 2, 8t ! t
0
! 0, holds if the initial conditions
1989 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
are such that
2V
1
t
0
2q
1
=r
1
_
< 0:5p 92
which is further equivalent to
g
2c
t
0
_
_
_
_
2
k
max
M
2
~vv
2
t
0
k k
2
4
i1
C
1
i
~
hh
i
t
0
_
_
_
_
2
2q
1
=r
1
_
< 0:5p; 8t ! t
0
! 0: 93
It is noted that the terms
4
i1
C
1
i
~
hh
i
t
0
_
_
_
_
2
and q
1
can be made arbitrarily small
(see Remark 3).
From (34) and (17), the condition ct j j < 0:5p, 8t ! t
0
! 0, holds if the initial
conditions are such that
cosc
1
t
a
e
t
d
e
t
coshtcosc
2
t 1 > 0: 94
Under the assumption that ht j j < 0:5p, 8t ! t
0
! 0, the above condition is
equivalent to
cosc
1
t cosc
2
t > 1: 95
From (69), the condition (95) holds if the initial conditions are such that
g
2c
t
0
_
_
_
_
2
k
max
M
2
~vv
2
t
0
k k
2
4
i1
C
1
i
~
hh
i
t
0
_
_
_
_
2
2q
1
=r
1
_
< arccos0:5; 8t ! t
0
! 0: 96
Since arccos0:5 < 0:5p, the condition (96) covers the condition (93).
5.5. Initial conditions for a
e
t ! a
e
> 0, 8t ! t
0
! 0
Since a
2
e
d
2
e
z
2
e
, we have
a
2
e
..
h
2 d
e
k
1
coscd
e
k
1
coscd
e
cosc~uu
z
e
@z
d
@s
_ ss sinhu coshsin/v coshcos/w
_ __
2k
1
cosca
2
e
2k
1
coscz
2
e
2k
1
coscd
e
d
e
2coscd
e
~uu
2z
e
@z
d
@s
_ ss sinhu coshsin/v coshcos/w
_ _
: 97
From (97), it is not hard to see that under Assumption 1 and d
e
t ! d
e
> 0, if
there exists a strictly positive constant a
0
e
such that
a
e
t
0
! a
0
e
98
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1990
then there exists a strictly positive constant a
e
such that the condition
a
e
t ! a
e
> 0, 8t ! t
0
! 0, holds.
In summary, the feasible initial conditions are such that the conditions (78), (96)
and (98) hold. Roughly speaking, with the above initial conditions, due to under-
actuated conguration in the sway and heave, the sway and heave velocities are
not able to push the vehicle to the point a
e
0 and d
e
0.
6. Initial condition discussion
We now discuss how to obtain the initial conditions such that (78), (96) and (98)
hold. A close look at these conditions, shows that they are always satised by
selecting the initial value, st
0
, if the vessel heads to the conical space containing
the initial path to be followed (see Fig. 2). If the vessel does not, the surge control
should be turned o and the yaw and pitch controls should make the vessel turn
until (78), (96) and (98) hold before applying the proposed path following control-
ler. The angle d
0
(see Fig. 2) should be increased if the initial velocities v
1
t
0
and v
2
t
0
are large. Otherwise, the vessel might cross the edge-line of the subspace in
question, which might result in c
i
0:5p and/or c 0:5p.
7. Parking and point-to-point navigation
7.1. Parking
Objective 2. Parking objective Design the controls s
1
and s
2
to park the under-
actuated underwater vehicle (1) from the initial position and orientation,
xt
0
; yt
0
; zt
0
; /t
0
; ht
0
; wt
0
, to the desired parking position and orientation
of x
p
; y
p
; z
p
; /
p
; h
p
; w
p
under the following conditions:
Fig. 2. Illustration of feasible initial conditions.
1991 K.D. Do et al. / Ocean Engineering 31 (2004) 19671997
1. There exists a large enough positive constant -
p
such that
xt
0
x
p
2
yt
0
y
p
2
zt
0
z
p
2
_
! -
p
:
2. The vessel heads to the feasible cone containing the desired parking orientation
(see Section 6).
3. At the desired parking position and orientation, the environmental disturbances
are negligible.
The above conditions normally hold for the parking practice. However, if the
rst two conditions do not hold, one can apply the strategy in Section 6 to move
the vessel until they hold. Having formulated the parking problem as above, one
might claim that the path following controller proposed in Section 4 can be applied
by setting u
0
equal to zero. However, this will result in an orientation, which may
be very dierent from the desired parking one, at the desired parking position,
since our proposed path following controller is designed to drive d
e
to a small ball,
not to zero due to the robust concern. To resolve this problem, we rst generate a
regular curve, X
p
x
d
; y
d
; z
d
, which goes via the parking position and its orien-
tation at the parking position is equal to the desired parking one. For simplicity of
calculation, the curve can be taken as a straight line in almost all cases of the vessel
initial conditions. Then, the proposed path following controller can be used to
make the vessel follow X
p
x
d
; y
d
; z
d
. In this case, the velocity u
0
should be chosen
such that it goes to zero when the virtual vessel tends to the desired parking pos-
ition, i.e. lim
d
ep
!0
u
0
0 with d
ep
x
d
x
p
2
y
d
y
p
2
z
d
z
p
2
_
. A simple
choice can be taken as
u
0
u
0
1 e
v
1
d
ep
e
v
2
d
e
99
where v
i
> 0, i 1; 2. Special care should be taken to choose the initial values of
x
d
t
0
; y
d
t
0
; z
d
t
0
(see Section 6) and the sign of u
0
such that it results in a
short parking time.
Remark 4. Once at the desired parking position and orientation, if there are large
environmental disturbances, there will be an oscillatory behavior in the yaw and
pitch dynamics and the vessel might diverge from its desired position. This
phenomenon is well known in the ship dynamic positioning (Strand, 1999; Petter-
sen and Fossen, 2000).
7.2. Point-to-point navigation
As seen in Section 2, the requirement of the reference path to be a regular curve
might be too cumbersome in practice, since this curve has to go via desired points
generated by the helmsman and its derivatives are needed in the path following
controller. These restrictions motivate us to consider the point-to-point navigation
problem as follows.
K.D. Do et al. / Ocean Engineering 31 (2004) 19671997 1992
Objective 3. Point-to-point navigation objective Design the surge force s
u
and the yaw
moment s
r
to force the underactuated underwater vehicle (1) from the initial position
and orientation, xt
0
; yt
0
; zt
0
; /t
0
; ht
0
; wt
0
, to go via the desired points
generated by a path planner.
To solve this control objective, we rst assume that the path planner generates
desired points, which are feasible for the vehicle to be navigated through. We then
apply the proposed path following controller in Section 4 to each regular curve
segments connecting desired points in sequence. The regular curve segments can be
straight line, arc or known regular curve ones. It is, however, noted that a funda-
mental dierence between point-to-point navigation and the proposed smooth path
following is that there are a nite number of picks, equal to the number of
points, in the orientation errors, c
1
and c
2
. This phenomenon is due to the path
being non-smooth in the orientation at the points.
8. Numerical simulations
This section validates the control laws (49) and (60) by simulating them on an
underwater vehicle with the following parameters:
m
11
1; m
22
1:5; m
33
2; m
44
2:5; m
55
3; m
66
3:5; d
11
1; d
22
2; d
33
2:5; d
44
2; d
55
3:5; d
66
4; d
u2
0:2d
11
; d
u3
0:1d
11
; d
v2
0:2d
22
; d
v3
0:1d
22
; d
w2
0:2d
33
; d
w3
0:1d
33
; d
p2
0:2d
44
; d
p3
0:1d
44
; d
q2
0:2d
55
; d
q3
0:1d
55
; d
r2
0:2d
66
; d
r3
0:1d
66
:
These values are assumed to be of the real vessels and are estimated on-line by
the adaptation laws (50) and (61). We assume that these parameters uctuate
around above values 15% to calculate the maximum and minimum values used in
the choice of the design constants. In the simulation, we assume that the environ-
mental disturbances are
s
wu
dt; s
wv
0:5dt; s
ww
0:2dt; s
wp
0:2dt; s
wq
1:5dt;
s
wr
1:5dt
where dt 1 rand, and rand is random mean-zero noise of magnitude 1.
This choice results in nonzero-mean disturbances. In practice, the environmental
disturbances may be dierent. We take the above disturbances for simplicity of
generating. It should be noted that only boundaries of the environmental dis-
turbances are needed in our proposed controller.
In the simulation, based on Section 4 the control parameters are taken
as k
1
0:5, c
1
2, K
2
diag0:05, K
3
diag2, C
i
diag10 and d
e
0:2.
The initial conditions are chosen as g
T
1
t
0
; g
T
2
t
0
; v
T
1
t
0
; v
T
2
t
0
; st
0
_
T