Bank-to-Turn Control For A Small UAV Using Backstepping and Parameter Adaptation
Bank-to-Turn Control For A Small UAV Using Backstepping and Parameter Adaptation
max
< /2, the heading rate is induced by the roll angle
with the inertial speed V as follows,
=
g
V
tan , (2)
I
Y
X
s
p
q
r
f
F
s
e
d
e
s
Fig. 1. Denition of the Serret-Frenet frame for the path
following problem.
where the roll angle is assumed to be controlled by an inner
PID loop. Properly tuned PID gains result in closed-loop
roll dynamics which resemble a rst-order system,
=
1
(
c
), (3)
where
c
is the roll angle command and
R(
f
) = R(
f
)S(
f
), (7)
where, S(
f
) is the skew-symmetric matrix,
S(
f
) =
_
0
f
f
0
_
. (8)
It follows from Eq. (1) that
p = R()
_
V
0
_
. (9)
Notice that q is the time derivative of the point q(s), whose
speed is represented by s when expressed in the Serret-
Frenet frame. It follows that
q = R(
f
)
_
s
0
_
. (10)
Subsequently, by substituting Eqs. (9) and (10) in Eq. (6),
we obtain,
e = S(
f
)e +R(
f
)
_
V
0
_
_
s
0
_
, (11)
where R
T
(
f
)R() = R(
f
).
Let now the error course angle be dened by
f
. (12)
Hence,
=
f
=
f
, (13)
and
f
d
f
dt
=
d
f
ds
ds
dt
= (s) s, (14)
where (s) is the curvature of the path at q(s).
The error kinematic model of a xed-wing UAV for the
path following problem with respect to the Serret-Frenet
frame is summarized as follows,
e
s
= V cos (1 (s)e
d
) s, (15a)
e
d
= V sin (s)e
s
s, (15b)
= (s) s. (15c)
From Eqs. (15), the path following problem reduces into
a problem of driving the errors to zero as the UAV ap-
proaches the given path. In Micaelli and Samson (1993),
the point q is found by projecting p on the path, as-
suming the projection is well dened. Hence, the control
law derived by Micaelli and Samson (1993) requires a
stringent restriction on the initial position of q in order
to avoid singularities. In contrast, Lapierre and Soetanto
(2007) proposed to employ a moving Serret-Frenet frame
along the path, which eectively provides an extra con-
trol parameter s allowing q(s) to evolve along the error
states. This control parameter then mitigates the stringent
restriction on the initial condition arose in Micaelli and
Samson (1993).
3. PATH FOLLOWING CONTROLLER DESIGN
In this section we present a nonlinear path following
control logic, which steers the UAV to the reference path
with an inaccurately known time constant
. Beginning
with the derivation of a kinematic control law for the
heading rate command, we apply backstepping to derive
a roll control command for a xed-wing UAV, which, in
turn, induces an equivalent control eort to the kinematic
control law. In addition, we apply a parameter adaptation
technique to deal with an inaccurately known
.
3.1 Kinematic controller design
Following an approach similar to Lapierre and Soetanto
(2007) we rst derive a kinematic control law for the head-
ing rate. We introduce a bounded dierentiable function
with respect to the cross-track error e
d
, as follows
(e
d
)
e
2ke
d
1
e
2ke
d
+ 1
(16)
where, k > 0 and
_
(e
d
)
_
+(s) s +
(e
d
)
_
V sin (s)e
s
s
_
e
d
V
_
sin sin
_
(e
d
)
_
(e
d
)
_
, (18a)
s = k
s
e
s
+V cos , (18b)
where k
s
, k
d
= tan
1
_
V
d
g
_
. (19)
Note that the actual response of the roll angle diers
from the commanded value of Eq. (19), but it can be
approximated by a rst-order system described as in
Eq. (3). Taking into account the approximated model of
Eq. (3), one can design a steering logic for the roll angle
command
c
in order to achieve
d
through
d
.
Following the standard backstepping technique [Spooner
et al. (2002)], we introduce an auxiliary control input for
the roll angle by augmenting the error model in Eq. (15)
with
= . Thus, the system is given as follows,
e
s
= V cos (1 (s)e
d
) s, (20a)
e
d
= V sin (s)e
s
s, (20b)
=
g
V
tan (s) s, (20c)
= , (20d)
where the auxiliary control input is associated with the
roll command by
=
1
_
. (21)
Suppose that the desired heading rate
d
is obtained from
Eq. (18a) and let
e
d
= (g/V ) tan
d
be an
error state for the heading rate, whose time derivative is
calculated using (tan )
= sec
2
, as follows
e
=
g
V
sec
2
d
. (22)
Proposition 2. Consider the kinematic error model of the
UAV described in Eqs. (20) and the approach angle
(e
d
) dened in Eq. (16). Assume that the speed of the
UAV is non-negative. Suppose that the reference path
is parameterized by the arc-length s, and at each s the
variables , e
s
, e
d
, and
f
are well dened. Then, the
control input,
=
V
g sec
2
_
k
e
e
+(e
d
) +
d
_
, (23)
where k
e
is a positive constant and
d
is given in Eq. (18a),
asymptotically drives e
s
, e
d
, and towards zero, while
d
. It should be noted that
d
can be calculated by
numerical dierentiation of
d
. However, in order to avoid
any high frequency noise eect due to dierentiation,
d
in
the actual implementation is obtained by using a pseudo
dierentiation lter in conjunction with saturation, as a
transfer function D(s) = sat
_
s/(s + 1)
_
where > 0 is
employed.
Proof. Let V
1
be a candidate Lyapunov function given
by,
V
1
1
2
_
e
2
s
+e
2
d
_
+
1
2
_
(e
d
)
_
2
+
1
2
2
e
. (24)
Dierentiating with respect to time one obtains,
V
1
=
1
_
es es + e
d
e
d
_
+
_
(e
d
)
__
(e
d
)
_
+ e e
=
1
es(V cos s) +
1
e
d
V sin
_
(e
d
)
_
+
_
(e
d
)
_
_
g
V
tan +
d
d
(s) s
(e
d
)
_
V sin (s)es s
_
+
e
d
V
sin sin
_
(e
d
)
_
(e
d
)
_
+ e
_
g
V
sec
2
d
_
.
(25)
By the denition of
e
, and substituting the desired
d
from Eq. (18a) and s from Eq. (18b), the term inside of
the bracket collapses to
V
1
=
k
s
e
2
s
+
e
d
V
sin
_
(e
d
)
_
k
_
(e
d
)
_
2
+
e
_
g
V
sec
2
+ (e
d
)
d
_
.
(26)
Choosing
through the auxiliary control input in Eq. (23),
that is,
= =
V
g sec
2
_
k
e
e
+(e
d
) +
d
_
, (27)
results in,
V
1
=
ks
e
2
s
+
e
d
V
sin
_
(e
d
)
_
k
_
(e
d
)
_
2
ke
2
e
0.
(28)
The last inequality implies, in particular, that e
s
, e
d
,
and
e
are bounded. Furthermore, (e
d
) is also bounded
from (16) since e
d
is bounded. It is also easy to show,
using (18a), that
d
is bounded. To this end, notice that
all signals in the rhs of (18a) except the last are bounded.
Moreover, since
sin sin
_
(e
d
)
_
_
(e
d
)
_
= sinc
_
1
2
_
(e
d
)
_
_
cos
_
1
2
_
+(e
d
)
_
_ (29)
and since the sinc function is bounded, the last term in
the rhs of (18a) is also bounded. Since
d
and
e
are
bounded, it follows that || < /2 and the control (23)
is well dened.
To complete the proof, note that V
1
is radially unbounded,
hence the set
c
= {V
1
(e
s
, e
d
, ,
e
) c} is a compact,
positively invariant set. Let E
1
be the set of all points in
c
where
V
1
= 0. The set E
1
is given by E
1
= {e
s
=
e
d
= 0, = , and (g/V ) tan =
d
}. Noticing that ()
is a function of the cross-track error e
d
, one can easily
verify that any point starting from the set E
1
will remain
in the set, i.e. E
1
is an invariant set. By the LaSalles
invariance principle, we have that every trajectory starting
inside the set
c
approaches E
1
as t . Therefore,
lim
t
e
s
= 0, lim
t
e
d
= 0, and lim
t
= 0 since
(e
d
) 0. We also have (g/V ) tan
d
as t .
3.3 Parameter adaptation
Note that the actual roll angle command is computed from
Eq. (3) and (23),
c
=
+, (30)
where,
c
is then given by
c
=
+, (31)
where
is an estimate of
.
In order to compensate for any uncertainty in
, we apply
a parameter adaptation technique. To this end, let V
2
be
a candidate Lyapunov function dened by
V
2
V
1
+
1
2
1
k
a
, (32)
where V
1
is given in Eq. (24) and
is the
estimate error. Dierentiating with respect to time, we get
V
2
=
V
1
+
1
ka
=
ks
e
2
s
+
e
d
V
sin
_
(e
d
)
_
k
_
(e
d
)
_
2
+ e
_
g
V
sec
2
+ (e
d
)
d
_
+
1
ka
.
(33)
The actual value of
is calculated from Eq. (3) in
conjunction with the actual roll command in Eq. (31) and
given in Eq. (23). Subsequently, substituting the actual
V
2
=
ks
e
2
s
+
e
d
V
sin
_
(e
d
)
_
k
_
(e
d
)
_
2
ke
2
e
+ e
_
(e
d
)
d
_
+
1
ka
.
(34)
Choosing
as,
= k
a
e
_
(e
d
)
d
_
, (35)
where k
a
is a positive constant. It follows that
V
2
=
k
s
e
2
s
+
e
d
V
sin
_
(e
d
)
_
k
_
(e
d
)
_
2
k
e
2
e
0.
(36)
Assuming
= k
a
e
_
(e
d
)
d
_
. (37)
Proposition 3. Let the control law in Eqs. (18) and (23).
With the parameter update law given by Eq. (37) the
actual roll command of Eq. (31) guarantees that the
signals e
s
, e
d
, and asymptotically tend to zero, while
(g/V ) tan
d
.
Proof. In order to prove the proposition notice that
lim
t
V
2
(t) exists since V
2
is bounded from below and
is non-increasing. It therefore suces to show that
V
2
is uniformly continuous, in which case we can invoke
Barbalats lemma to ensure that lim
t
V
2
(t) = 0.
To this end, consider the expression of
V
2
in Eq. (36),
from which it follows that e
d
, e
s
, ,
e
,
, and
are
all bounded. As with the proof of Proposition 2, it follows
from (18b) that s is bounded, and from (18a) that
d
is
bounded as well. The boundedness of
d
and
e
imply
that || < /2. Using (20) we conclude that e
s
, e
d
,
are
also bounded. Dierentiating Eq. (18a) with respect to
time, one can show that all terms are bounded, while the
last term is also bounded since the derivative of the sinc
function is bounded (see also Eq. (29)). Hence, it can be
shown that
d
is bounded. Furthermore, (e
d
) and its time
derivative
(e
d
) =
(e
d
) e
d
are bounded. A straightforward
calculation shows that
e
=
_
k
e
e
+(e
d
)
_
d
. (38)
From the previous equation it follows that
e
is bounded.
Furthermore,
V
2
=
ks
es es +
V e
d
sin
_
(e
d
)
_
+
V e
d
(e
d
) cos
_
(e
d
)
_
2k
_
(e
d
)
__
(e
d
)
_
kee e,
(39)
Table 1. Simulation parameters.
V = 20 [m/s] k = 0.01 ks = 0.4 k = 0.001 |
max
c
| = /6
ke = 1.1 ka = 0.7 = 4000
1.1
where, all expressions in the rhs of the equation have
been shown to be bounded. It follows that
V
2
is bounded
and hence
V
2
is uniformly continuous. Applying Barbalats
lemma, it follows that
V
2
0 as t 0.
4. HARDWARE IN-THE-LOOP SIMULATION
RESULTS
4.1 Simulation environment
A realistic hardware-in-the-loop simulation (HILS) envi-
ronment has been developed to validate the UAV autopi-
lot hardware and software development utilizing Matlab
and Simulink
f
(s) = tan
1
y
, (s) =
x
(x
2
+y
2
)
3/2
. (40)
where ()
and ()
d
[
d
e
g
/
s
e
c
]
(c) Heading rate command
0 10 20 30 40 50 60 70 80
40
30
20
10
0
10
20
30
40
Time [sec]
R
o
l
l
a
n
g
l
e
a
n
d
c
o
m
m
a
n
d
[
d
e
g
]
:
c
:
(d) v/s c
Fig. 5. Error states and command inputs without param-
eter adaptation.
from Eq. (30) using a time constant
= 0.4 which is
inaccurately known. Without parameter adaptation, as
shown in Fig. 4, we observe a sluggish and low damped
response of the actual trajectory. The error variables are
shown in Fig. 5. In the second case, we calculate the roll
angle command from Eq. (31) with the parameter update
law of Eq. (37). Figures 6-8 show the results. The error
states tend to zero asymptotically as shown in Fig. 7.
Because the roll angle command is limited within /6,
the UAV is unable to exactly follow the path where the
curvature exceeds the maximum curvature achievable by
the UAV at the speed of 20 [m/sec]. Nevertheless, the
path following control law forces the UAV converge to the
path asymptotically after a short transient. It should be
noted that the simulation was carried out in conjunction
with realistic sensor noises and constant wind disturbance,
showing that the adaptation law is more or less robust to
the presence of such measurement noises and disturbances.
Fig. 8 displays the time history of the estimate of
,
which shows that from the initial guess of
= 0.4,
the parameter estimate converges to the actual value of
1.1.
0 100 200 300 400 500 600 700 800 900
0
100
200
300
400
500
600
700
800
East [meter]
N
o
r
t
h
[
m
e
t
e
r
]
: Ref. path
: Position
Fig. 6. Reference path and actual trajectory of the UAV
with parameter adaptation.
0 10 20 30 40 50 60 70 80
140
120
100
80
60
40
20
0
20
40
Time [sec]
E
r
r
o
r
s
t
a
t
e
s
[
m
e
t
e
r
]
: e
s
: e
d
(a) Track errors
0 10 20 30 40 50 60 70 80
40
20
0
20
40
60
80
Time [sec]
E
r
r
o
r
c
o
u
r
s
e
a
n
g
l
e
[
d
e
g
]
(b) Course angle error
0 10 20 30 40 50 60 70 80
20
10
0
10
20
30
40
50
Time [sec] K
i
n
e
m
a
t
i
c
c
o
n
t
r
o
l
l
e
r
o
u
t
p
u
t
,
d
[
d
e
g
/
s
e
c
]
(c) Heading rate command
0 10 20 30 40 50 60 70 80
40
30
20
10
0
10
20
30
40
Time [sec]
R
o
l
l
a
n
g
l
e
a
n
d
c
o
m
m
a
n
d
[
d
e
g
]
:
c
:
(d) v/s c
Fig. 7. Error states and command inputs with parameter
adaptation.
0 10 20 30 40 50 60 70 80
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
Time [sec]
E
s
t
i
m
a
t
e
d
p
a
r
a
m
t
e
r
,
.
5. CONCLUSION
In this research a nonlinear path following control law has
been developed for a small UAV using backstepping of the
heading rate command. The kinematic control law realizes
cooperative path following so that the motion of a virtual
target is controlled by an extra control input to help
the convergence of the error variables. A roll command
that gives rise to the desired heading rate has been
derived by taking into account the inaccurate system time
constant. The path following control algorithm is validated
through a high-delity hardware-in-the-loop simulation
(HILS) environment, which veries the applicability of the
presented algorithm to the actual UAV.
ACKNOWLEDGEMENTS
Partial support for this work has been provided by NSF
award CMS-0510259.
REFERENCES
D. Jung, E. Levy, D. Zhou, R. Fink, J. Moshe, A. Earl,
and P. Tsiotras. Design and Development of a Low-
Cost Test-Bed for Undergraduate Education in UAVs.
In Proceedings of the 44
th
IEEE Conference on Decision
and Control, pages 27392744, Seville, Spain, December
2005.
D. Jung and P. Tsiotras. Inertial Attitude and Position
Reference System Development for a Small UAV. In
AIAA Infotech at Aerospace, Rohnert Park, CA, May
2007a. AIAA Paper 07-2768.
D. Jung and P. Tsiotras. Modelling and Hardware-in-the-
loop Simulation for a Small Unmanned Aerial Vehicle.
In AIAA Infotech at Aerospace, Rohnert Park, CA, May
2007b. AIAA 07-2763.
L. Lapierre and D. Soetanto. Nonlinear Path-following
Control of an AUV. Ocean Engineering, 34:17341744,
2007.
L. Lapierre, R. Zapata, and P. Lepinay. Combined Path-
following and Obstacle Avoidance Control of a Wheeled
Robot. The International Journal of Robotics Research,
26(4):361375, April 2007.
A. Micaelli and C. Samson. Trajectory Tracking
for Unicycle-type and Two-Steering-Wheels Mobile
Robots. Technical Report 2097, INRIA, Sophia-
Antipolis, November 1993.
D. R. Nelson, D. B. Barber, T. W. McLain, and R. W.
Beard. Vector Field Path Following for Small Unmanned
Air Vehicles. In Proceedings of the 2006 American
Control Conference, pages 57885794, Minneapolis, MN,
June 2006.
M. Niculescu. Lateral Track Control Law for Aerosonde
UAV. In 39
th
AIAA Aerospace Sciences Meeting and
Exhibit, Reno, NV, January 2001. A01-16013.
S. Park, J. Deyst, and J. P. How. A New Nonlinear
Guidance Logic for Trajectory Tracking. In AIAA Guid-
ance, Navigation, and Control Conference and Exhibit,
Providence, RI, August 2004. AIAA-2004-4900.
W. Ren and R. W. Beard. Trajectory Tracking for
Unmanned Air Vehicles with Velocity and Heading Rate
Constraints. IEEE Transactions on Control Systems
Technology, 12(5):706716, September 2004.
R. Rysdyk. UAV Path Following for Constant Line-Of-
Sight. In 2nd AIAA Unmanned Unlimited Conference
and Workshop and Exhibit, San Diego, CA, 2003. AIAA-
2003-6626.
J. T. Spooner, M. Maggiore, R. Ord o nez, and K. M.
Passino. Stable Adaptive Control and Estimation for
Nonlinear Systems. A John Wiley & Sons, Inc., New
York, NY, 2002.