You are on page 1of 7

This regular paper was presented as part of the main technical program at IEEE ETFA'2011

On the Adaptive Performance Improvement of a Trajectory Tracking


Controller for non–Holonomic Mobile Robots

John Arvanitakis1 George Nikolakopoulos2 Demetris Zermas1


arvanitakis@ece.upatras.gr george.nikolakopoulos@ltu.se dzermas@hotmail.com
Anthony Tzes1
tzes@ece.upatras.gr
1
Department of Electrical and Computer Engineering
University of Patras, Rio, Achaias, 26500
Greece
2
Department of Computer, Electrical and Space Engineering
Lulea University of Technology, SE-97187
Sweden

Abstract due to the possible initial state errors and the introduced
disturbances during motion (e.g. additive errors of the en-
In this article a novel performance improvement coders). Thus, for retaining performance, only closed loop
scheme is being presented for the problem of designing a control schemes should be considered.
trajectory tracking controller for non–holonomic mobile
robots with differential drive. Based on the robot kine- In the relative literature, many approached on control-
matic equations, an error dynamics controller is being ling non–holonomic robots have been appeared, includ-
utilized for allowing the robot to follow an a priori de- ing the ones in [1, 8, 9, 12], while this article will fo-
fined reference path, with a desired velocity profile. The cus on the reference path tracking algorithm presented
main novelty of this article stems from the utilization of in [7] where a non–linear control scheme has been pro-
a gradient based adaptive scheme that is able to adapt posed, with satisfactory tracking and robustness capabil-
the controller’s gain ruling the rising and settling time of ities. More specifically, the novelty of this article is the
the robot and up to now has been ad–hoc selected. The proposal of a novel performance improvement scheme, for
proposed adaptation scheme is based on the robot’s path the problem of designing a trajectory tracking controller,
tracking errors and is able to provide an on–line adjust- for non–holonomic mobile robots with differential drive.
ment for the performance improvement, independently of Based on the robot kinematic equations and the control
the selected path type. Multiple experimental test cases, approach developed in [7], an error dynamics controller
including the movement of the robot on various path pro- is being developed and experimentally verified for allow-
files, prove the efficacy of the proposed scheme. ing the robot to follow an a priori defined reference path,
with a desired velocity profile. The main novelty stems
from the utilization of a gradient based adaptive scheme,
1 Introduction able to adapt the controller’s gain, that rule the rising and
settling time of the robot, and up to now has been ad–
Mobile robotics is a research field that has received sig- hoc selected. The proposed adaptation scheme is based
nificant attention over the last years, with numerous appli- on the robot’s path tracking errors and is able to provide
cations in real life situations. Due to the nature of the tasks an on–line adjustment for the performance improvement,
that mobile robots are being utilized, the applied control independently of the selected path type.
schemes should be able at the same time to account not
only for the need of an autonomous navigation but also This article is structured as it follows. In Section 2
for the need of accurate tracking of a desired trajectory, the basic analysis of a wheeled non–holonomic robot is
created by a path planning algorithm. In general the prob- provided, while in Section 3 the adopted closed loop con-
lem of designing a tracking controller, for a mobile robot, troller and the novel adaptation method is being presented.
can result in an arduous work, given the non–holonomic In Section 4 multiple experimental results that prove the
nature of the mobile system. A simple open loop track- efficacy of the proposed scheme are being depicted. Fi-
ing controller would be proven to be inadequate, mainly nally in Section 5 the conclusions are drown.

978-1-4577-0018-7/11/$26.00 ©2011 IEEE

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.
2 Mathematical Modeling of the Non- tangential velocity υ r ∈  and a reference angular veloc-
Holonomic Mobile Robot ity ωr ∈  are needed that can be extracted from solving
the inverse kinematic problem. Based on an a priori de-
A mobile robot, as the one presented in Figure 1, with fined trajectory, these velocities can be derived from the
control actuation on both front wheels and a passive rear following equations [12]:
supporting caster for balancing, can be modeled as a non– 
holonomic vehicle [2, 10], with differential drive capabili- υr (t) = ± ẋ2r (t) + ẏ 2r (t) (4)
ties. For analysing the movement of the robot, the coordi- ẋr (t)ÿr (t) − ẏr (t)x¨r (t)
ωr (t) = (5)
nates of: a) the Earth Fixed Frame (EFF) E = [X, Y ] T , ẋ2r (t) + ẏ 2r (t)
consisted of the perpendicular vectors X and Y , and b)
the Body Fixed Frame (BFF) R = [x, y] T , consisted of where the sign of υ r (t) depends on the desired drive direc-
the perpendicular vectors x and y, are being considered. tion, (+) for the forward and (-) for the backwards move-
Moreover it is being assumed that the robot’s geometric ment.
center and the center of gravity coincide, and θ is the an- In the case that: a) there are no errors in the trajec-
gle from the horizontal X–axis. Finally, the body of the tory tracking, and b) there are no initial errors in the sys-
robot has length L. tem, only equations (4) and (5) are sufficient for the robot
to follow the reference trajectory (feed–forward control
y
scheme).
υ
x By observing the state space equations in (1), it occurs
θ that there is also a need to determine the tangential an-
ω
gle, θr (t) ∈ [−π, π] of each point on the path, using the
T following equation:

θr (t) = arctan(ẏr (t), ẋr (t)) + kπ (6)


Y

where k = 0, 1 defines the desired drive direction, (0) for


the forward and (1) for the reverse movement.
L In most of the cases and especially when dealing with
experimental setups, the movements of the robot will not
be error free, as errors from the sensory systems, the non-
linearities of the motors, the friction, as also the non–
X
linearities of the overall non–holonomic model of the mo-
bile robot, are introducing additional errors. In such a
case, a feed forward controller is not able to cope and thus
Figure 1. Characteristics of the wheeled
robot under investigation a more advanced control scheme should be applied.

3 Control Design Scheme


The motion state space equations of the presented dif-
ferential drive robot, can be defined as: 3.1 Error Dynamics Control Scheme
⎡ ⎤ ⎡ ⎤ While significant work has been done on closed loop
ẋ cos(θ) 0   control schemes [3, 5, 6], the proposed method of the
⎣ ẏ ⎦ = ⎣ sin(θ) 0 ⎦ · υ (1) adaptive gradient based adaptation methodology, will be
ω
θ̇ 0 1 provided based on the non–linear control scheme pre-
sented in [7], which will be depicted shortly in the se-
where υ ∈  and ω ∈  are the tangential and angular quel, for the clarity of the presentation. The basic control
velocities of the robot respectively, x ∈  and y ∈  scheme, is an error dynamics controller and it bases its op-
are the horizontal and vertical displacements respectively, eration on the following errors from the reference trajec-
and θ ∈ [−π, π] is the heading of the robot. By applying tory that occur during the robot’s movement. These errors
different velocities on the vehicle’s two motor wheels, the are expressed in the reference frame of the real robot, as it
heading of the robot can be controlled. These velocities is depicted in Figure 2 and can be formulated as:
can be expressed as: ⎡ ⎤ ⎡ ⎤ ⎡ ⎤
e1 cos(θ) sin(θ) 0 xr − x
⎣ e2 ⎦ = ⎣ −sin(θ) cos(θ) 0 ⎦ · ⎣ yr − y ⎦ (7)
υR = υ + ωL/2 (2) e3 0 0 1 θr − θ
υL = υ − ωL/2 (3)
The objective of the control scheme in [7], is to min-
for the right (u R ) and the left (u L ) wheel respectively. imize (regulation problem) the deviation in the errors, so
For allowing the robot to track a reference trajectory that the mobile robot will follow the reference trajectory
(xr (t), yr (t)), t ∈ [0, T ], with xr , yr ∈ 2 , a reference with an acceptable precision. By combining the robot’s

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.
reference robot
and g > 0 ∈  is a parameter that allows the user to adjust
θr the amount of gain in k 2 , while ζ ∈ (0, 1) is the desired
Y
(xr, yr) dumping coefficient, and ω n > 0 is the characteristic fre-
quency of the robot, provided by the following equation,
e2
y
while the overall control scheme is being presented in Fig-
e1
ure 3.
x
θ ωn = u2r2 (k) + gu2r1 (k) (16)

real robot
ur
X Feed Forward ur1cos(e3)
Controller ur2
Figure 2. Error dynamics transformations

Reference e Gain Controller v u Mobile


Transformation in Robot
kinematic equations in equation (1) with the error equa- Path Coordinates K Robot
tions in (7), the following model is obtained:
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
ė1 cos(e3 ) 0   −1 e2  
⎣ ė2 ⎦ = ⎣ sine(3 ) u u1
0 ⎦· +⎣ 0 −e1 ⎦·
r1
ur2 u2 Figure 3. Error Dynamics Control Architec-
ė3 0 1 0 −1
(8) ture
where ur1 and ur2 are the tangential (4) and angu-
lar (5) velocities, computed by the feed–forward con-
troller, while the robot receives the following control val-
ues: 3.2 Adaptive Gradient Based Performance Improve-
ment
u1 = ur1 cos(e3 ) − υ1 (9) From the aforementioned analysis, it can be observed
u2 = ur2 − υ2 (10) that one of the most significant problems of this con-
troller, is the selection of the g parameter’s value, while
where υ1 , υ2 are the real velocities computed from the
closed loop controller. By combining equations (8) with ζ is usually selected to be very large for avoiding oscilla-
equations (9) and (10), the error dynamics equation can be tions in the mobile robot’s response. This remark could
depicted as: be enhanced, by observing in Figure 4, the location of the
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ closed loop error dynamics system poles, with respect to
ė1 0 u2 0 e1
⎣ ė2 ⎦ = ⎣ −u2 0 0 ⎦ · ⎣ e2 ⎦ + the selection g. The ad–hoc selection of the g parameter,
ė3 0 0 0 e3 could be considered as a trade off between the rise time
⎡ ⎤ ⎡ ⎤ (11)
0 1 0   and the settling time of the control action. In general,
⎣ sin(e3 ) ⎦ · ur1 + ⎣ 0 υ1
0 ⎦ small values of g will lead to slower tracking responses
υ2
0 0 1
with better relative setting time and minimal to no over-
By linearisation around the following operating point: shoot, while large values of g will lead to faster response
with increased relative settling time.
e1 = e2 = e3 = 0, An upper limit, on the selection of g should be con-
u1 = u2 = 0 (12) sidered, when this parameter is being tuned in an ad–hoc
manner, as further increases of g above this limit, will
the equation in (11), can be formulated in the following have no positive effects on the robot response and it could
linear error dynamics model [7]: even drive it to instabilities. This situation is being pre-
⎡ ⎤ ⎡ ⎤ sented in Figure 5, where experimental results are being
0 ur2 0 1 0
presented, by utilizing the control scheme in [7], with the
Δė = ⎣ −ur2 0 ur1 ⎦·Δe+⎣ 0 0 ⎦·Δv (13)
parameter g ad–hoc tuned in 30 (black line) and 50 (blue
0 0 0 0 1
line), for the problem of a reference circle path tracking
with the control action v provided by the following gain (red line).
controller: For this purpose, instead of the adopted ad–hoc selec-
v =K·e (14) tion of the g parameter, a novel adaptive gradient based
approach [4, 13] for the auto–adjusting of this gain, is be-
where e = [e1 , e2 , e3 ]T , and the gains in the matrix K ∈ ing presented in the sequel. The proposed scheme has
2×3 are formulated as: the merit to adapt the value of g in different path tracking
k1 = k3 = 2ζωn (t) problems and in general improve the effectiveness and the
(15)
k2 = g · |ur1 (t)| speed of the adopted error dynamics control scheme.

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.
By considering the following positive defined cost
function, containing all the reference tracking errors, at
the k–sampling time instant:

J(k) = e21 (k) + e22 (k) + e23 (k) (17)


1
From Equations (7) and (17) the cost function can be fur-
0.8
ther analysed as it follows:
0.6

0.4
J(k) = ((xr (k) − x(k)) cos(θ(k) + (yr (k) − y(k)) sin(θ(k)))2 +
2
((yr (k) − y(k)) cos(θ(k) − (xr (k) − x(k)) sin(θ(k))) +
Imaginary Axis

0.2
2
0
(θr (k) − θ(k)) (18)

−0.2
and by expanding the terms in (18) and utilizing trigono-
−0.4 metric identities:
−0.6
J(k) = (xr (k) − x(k))2 [sin2 (θ(k)) + cos2 (θ(k))] +
−0.8
(yr (k) − y(k))2 [sin2 (θ(k)) + cos2 (θ(k))] + (19)
−1
−4 −3.5 −3 −2.5 −2 −1.5 −1 −0.5 0 2(xr (k) − x(k))(yr (k) − y(k)) cos(θ(k)) sin(θ(k)) −
Real Axis
2(xr (k) − x(k))(yr (k) − y(k)) cos(θ(k)) sin(θ(k)) +
(θr (k) − θ(k))2 (20)

Figure 4. The dependence of the desired


results in the final expression for the adopted cost func-
closed loop system poles from g
tion:
J(k) = (xr (k) − x(k))2 + (yr (k) − y(k))2 +
(θr (k) − θ(k))2 ) (21)

with the derivative of J in (21) being calculated as:


dJ
(k) = 2(xr (k) − x(k))(ẋr (k) − ẋ(k)) +
dt
2(yr (k) − y(k))(ẏr (k) − ẏ(k)) +
2(θr (k) − θ(k))(θ̇r (k) − θ̇(k)) (22)

The following gradient based adaptation rule can be


formulated as:
1.4

dJ
1.2 g(k + 1) = g(k) − μ (k) (23)
dt
1

0.8 where μ ∈ + is a small positive number.


0.6
The basic idea is that while there is a following error
y (m)

- which decreases as the robot converges on the reference


0.4
trajectory - gain g should be increased. In the case that the
0.2
following error is increased - meaning the robot starts to
0
diverge from the trajectory - g should be decreased as it
−0.2 has crossed the upper bound.
−0.4
0 0.2 0.4 0.6 0.8 1 1.2 1.4
x (m)
4 Experimental Results
The proposed scheme has been experimentally tested
Figure 5. An example of the effect of large on an Amigobot from MOBILERobots [11]. The robot
g in the robot response. With red is the ref- communicates via a wireless network (TCP/IP protocol)
erence trajectory, with black is with g = 30 with a PC, equipped with the NI’s Labview software, that
and blue is g = 50 implements the control scheme. Info about the position
and orientation of the robot is provided by encoders on
the robot. Communication between robot and PC occurs
at a constant time interval that is T s = 100msec.
The proposed scheme has been evaluated on two dif-
ferent trajectories as it follows: a) a circular trajectory,
of radius R = 1m, and b) a sinusoidal trajectory with

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.
Actual
Reference Error Dynamics Mobile Path
Path Controller Robot 1

x error (m)
0.5

Gradient Based −0.5


0 5 10 15 20 25
Adaptive Time (sec)
g 1

y error (m)
0.5

Figure 6. Overall control architecture, en- −0.5


0 5 10 15 20 25
hanced with the gradient based tuning 1
Time (sec)

scheme for the g parameter

θ error (rad)
0

−1

−2
0 5 10 15 20 25
amplitude A = 1. For all the examined experimental tra- Time (sec)
jectories there has been an initial following error on the
beginning of the experiment. The exact parameters for the Figure 7. Tracking errors responses for cir-
convergence rate μ and the initial value of g (g init ), uti- cular trajectory and ginit = 30 ((a)μ = 0.1
lized for these experimental test cases, are being provided (dashed black line, b) μ = 0.3 (dashed red
in Table 1. line), and c) constant ginit = 30 (solid black
line)
Table 1. Adaptation Parameters
Convergence Rate Initial g Value
μ = 0.1 ginit = 30
μ = 0.1 ginit = 40
μ = 0.3 ginit = 30
μ = 0.3 ginit = 40

In the first examined case of a circular trajectory, the


1
obtained responses of the tracking errors are presented in
x error (m)

Figure 7, for the cases of: a)g init = 30 and with μ equal 0.5

to 0.1 (dashed black line), b) g init = 30 and with μ equal 0

to 0.3 (dashed red line), and c) with a constant g init = 30 −0.5


0 5 10 15 20 25
(solid black line). Time (sec)
1
For the case of a different constant selection for the ini-
y error (m)

tial value of gi nit = 40 and for the same experiment (cir-


0.5

0
cular trajectory), the obtained errors responses are being
presented in Figure 8. −0.5
0 5 10 15 20 25
Time (sec)
From the results obtained, in both cases, it is being 2

observed that larger values of μ leads to smaller follow-


θ error (rad)

ing errors and to faster convergence rates, while both the 0

adaptive cases are superior to the steady g case. In Fig- −1

−2
0 5 10 15 20 25
ure 9 the corresponding obtained experimental trajecto- Time (sec)
ries of the mobile robot are also being depicted, for all
the examined aforementioned test cases. From the results Figure 8. Tracking errors responses for cir-
obtained, it could clearly being observed the superiority of cular trajectory and ginit = 40 ((a)μ = 0.1
the adaptive tuning of the g parameter, against the constant (dashed black line, b) μ = 0.3 (dashed red
case. The adaptive scheme, results in faster responses and line), and c) constant ginit = 30 (solid black
in faster tracking of the trajectory as the the gain g is being line)
adapted to the selected path.
Additionally, the convergence rates of the identified g
are being presented in Figure 10. From the responses ob-
tained it is obvious that proposed scheme achieves a fast
convergence of the parameter g (in less 10sec). Moreover,

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.
1.5
Trajectory
g=30
ì=0.1, g =30
init

1 ì=0.3, ginit=30
g=40
ì=0.1, g =40
init
ì=0.3, ginit=40 1
0.5

x error (m)
0.5

0
y (m)

0
−0.5
0 2 4 6 8 10 12 14 16 18 20
Time (sec)
−0.5 1

y error (m)
0.5

−1 0

−0.5
0 2 4 6 8 10 12 14 16 18 20

−1.5 Time (sec)


−1 −0.5 0 0.5 1 1.5 1
x (m)

θ error (rad)
0

−1
Figure 9. Experimental robot trajectories in
−2
a circular reference 0 2 4 6 8 10 12 14 16 18 20
Time (sec)

Figure 11. Tracking errors responses for si-


it should be noted that there is not a single solution for the nusoidal trajectory for ginit = 30 ((a)μ = 0.1
problem of defining the best value of g, and this could (dashed black line, b) μ = 0.3 (dashed red
also being observed from the fact that g converges to dif- line), and c) constant ginit = 30 (solid black
ferent steady state values, based on different initial values line)
(ginit = 30 and 40).
44

42

40

38

36

34
g

1
32
x error (m)

0.5
30
0

28
−0.5
0 2 4 6 8 10 12 14 16 18 20
26 Time (sec)
1
y error (m)

24
0 5 10 15 20 25 30 0.5
Time (sec)
0

Figure 10. Convergence of g for various μ −0.5


0 2 4 6 8 10 12 14 16 18 20
Time (sec)
and ginit 1
θ error (rad)

−1
For the second experimental test case of a sinusoidal
−2
0 2 4 6 8 10 12 14 16 18 20
trajectory, the obtained responses of the tracking errors Time (sec)
are presented in Figure 11, for the cases of: a)g init = 30
and with μ equal to 0.1 (dashed black line, b) g init = 30 Figure 12. Tracking errors responses for si-
and with μ equal to 0.3 (dashed red line), and c) with a nusoidal trajectory for ginit = 40 ((a)μ = 0.1
constant g = 30 (solid black line). (dashed black line, b) μ = 0.3 (dashed red
Moreover, the same responses for the case of a differ- line), and c) constant ginit = 30 (solid black
ent constant selection for the initial value of g i nit = 40, line)
and for the same experiment (sinusoidal trajectory), the
obtained errors responses are being presented in Figure 8.
From the results obtained, in both cases, it is being ob-
served that again the proposed scheme of the g adapta-
tion provides smaller tracking errors responses. Moreover

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.
in Figure 13 the corresponding obtained experimental tra- parameter g is estimated based on a novel gradient based
jectories of the mobile robot are also being depicted, for adaptive scheme. The efficacy of the proposed scheme
all the examined aforementioned test cases. From the re- is tested in experimental results for various trajectories
sults obtained, it is again clearly experimentally verified against a fixed value of g, which produced satisfactory re-
the superiority of the adaptive tuning scheme, against the sults.
constant case. Finally, the convergence of the g parameter
References
1.5
Trajectory
g=30
ì=0.1, ginit=30 [1] L. A. and O. G.. Modelling and control of nonholo-
ì=0.3, g =30
1
g=40
init nomic mechanical systems. In Kinematics and Dynamics
ì=0.1, ginit=40 of Multi-Body Systems, 1995.
ì=0.3, ginit=40
0.5
[2] A. Bloch. Non-holonomic Mechanics and Control.
Springer Press, 2003.
[3] R. Fierro and F. Lewis. Control of a nonholonomic mo-
y (m)

0
bile robot using neural networks. Neural Networks, IEEE
Transactions on, 9(4):589 –600, jul 1998.
−0.5 [4] S. S. Haykin. Adaptive Filter Theory. Prentice–Hall, En-
glewood Cliffs, NJ, 2001.
−1
[5] Z.-G. Hou, A.-M. Zou, L. Cheng, and M. Tan. Adap-
tive control of an electrically driven nonholonomic mobile
robot via backstepping and fuzzy approach. Control Sys-
−1.5
−0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 tems Technology, IEEE Transactions on, 17(4):803 –815,
x (m)
july 2009.
[6] Y. Kanayama, Y. Kimura, F. Miyazaki, and T. Noguchi. A
Figure 13. Experimental robot trajectories stable tracking control method for an autonomous mobile
for a sinusoidal reference robot. In Robotics and Automation, 1990. Proceedings.,
1990 IEEE International Conference on, pages 384 –389
vol.1, may 1990.
is depicted in Figure 14 for all the examined test cases, [7] G. Klancar, D. Matko, and S. Blazic. Mobile robot con-
where it can be observed that the convergence is being trol on a reference path. In Intelligent Control, 2005.
achieved in less than 7sec. Proceedings of the 2005 IEEE International Symposium
on, Mediterrean Conference on Control and Automation,
44
pages 1343 –1348, june 2005.
42 [8] I. Kolmanovsky and N. McClamroch. Developments in
nonholonomic control problems. Control Systems, IEEE,
40
15(6):20 –36, dec 1995.
38 [9] R. D. Luca and M. Vendittelli. Control of wheeled mobile
36
robots: An experimental overview. In Valigi, (Eds.) RAM-
SETE Articulated and Mobile Robotics for Services and
34
Technologies, page 270. Springer-Verlag, 2001.
g

32 [10] S. Manesis. Non-holonomic Systems. Patras University


Press, 2000.
30
[11] A. Robotics. Team AmigoBot Operations Manual, May
28 2005.
26
[12] N. Sarkar, X. Yun, and V. Kumar. Developments in non-
holonomic control problems. The International Journal of
24
0 5 10 15 20 25 30 35 40 Robotic Research, 13:55–69, feb 1994.
Time (sec) [13] B. Widrow and S. Stearns. Adaptive Signal Processing.
Prentice–Hall, Englewood Cliffs, NJ, 1985.
Figure 14. Convergence of g for various μ
and ginit

5 Conclusions

In this paper a performance improvement method for a


trajectory tracking controller for a mobile robot has been
presented. For the design and development of the pro-
posed error dynamics linear control scheme, the controller
design approach in [7] has been followed, where the gain

Authorized licensed use limited to: COVENTRY UNIVERSITY. Downloaded on June 12,2020 at 05:56:10 UTC from IEEE Xplore. Restrictions apply.

You might also like