Conference PaperPDF Available

Tuning a Velocity-based Dynamic Controller for Unicycle Mobile Robots With Genetic Algorithm

Authors:

Abstract and Figures

This paper addresses the application of genetic algorithm in the tuning problem of an adaptive controller for unicycle-like mobile robots. The motivation for this work comes from the fact that these robots are characterized by a complex dynamical model which makes the space of the possible controller gains difficult to search. First, the paper presents the design of the robot tracking controller that is based on a dynamic model that has linear and angular velocities as inputs, which is not usual in the literature for dynamic models of mobile robots. A brief explanation of the dynamic model and its properties is provided. Then, it shows the use of a genetic algorithm in the selection of the controller gains. Simulation results are presented and illustrate that the proposed system can be successfully applied to select controller gains for a robot that tracks a desired trajectory, either minimizing tracking error, energy consumption or a combination of both indexes.
Content may be subject to copyright.
Tuning a Velocity-based Dynamic Controller for Unicycle Mobile
Robots With Genetic Algorithm
Felipe Nascimento Martins and Gustavo Maia Almeida
NERA - N´ucleo de Estudos em Rob´otica e Automac˜ao
Federal Institute of Education, Science and Technology of Espirito Santo -
IFES, Campus Serra
Rod. ES-010 km 6,5 - Manguinhos, Serra, ES, Brazil. 29173-087
{felipemartins, gmaia}@ifes.edu.br
AbstractThis paper addresses the application of genetic
algorithm in the tuning problem of an adaptive controller
for unicycle-like mobile robots. The motivation for this work
comes from the fact that these robots are characterized by a
complex dynamical model which makes the space of the possible
controller gains difficult to search. First, the paper presents
the design of the robot tracking controller that is based on a
dynamic model that has linear and angular velocities as inputs,
which is not usual in the literature for dynamic models of
mobile robots. A brief explanation of the dynamic model and
its properties is provided. Then, it shows the use of a genetic
algorithm in the selection of the controller gains. Simulation
results are presented and illustrate that the proposed system can
be successfully applied to select controller gains for a robot that
tracks a desired trajectory, either minimizing tracking error,
energy consumption or a combination of both indexes.
I. INTRODUCTION
Unicycle-like mobile robots are frequently adopted to ac-
complish several tasks, due to their good mobility and simple
configuration. Nonlinear control for this type of robot has
been studied for several years, and so far it is an important
research field [1]. The unicycle structure has been used in
various robotic applications, such as surveillance [2], floor
cleaning [3], industrial load transportation using automated
guided vehicles (AGVs) [4], and autonomous wheelchairs
[5]. For this kind of robot, some authors have addressed the
problem of trajectory tracking, a quite important functional-
ity that allows a mobile robot to describe a desired trajectory
when accomplishing a task. Some of the controllers designed
so far are based only on the kinematics of the mobile robot.
However, to perform tasks that require high speed move-
ments and/or heavy load transportation, it is fundamental to
consider the robot dynamics, besides its kinematics. Thus,
there are some studies that present the design of controllers
that compensate for the robot dynamics. As an example, [6]
present a robust-adaptive controller based on neural networks
that deals with disturbances and non-modeled dynamics and
generate torque control law for nonholonomic mobile robots.
In [7] it is proposed a fuzzy logic-based adaptive controller
in which the system uncertainty is estimated by a fuzzy
logic system and its parameters are tuned on-line. There,
the dynamic model includes the actuator dynamics, and the
commands generated are voltages for the robot motors. Other
types of trajectory tracking controllers based on the robot
dynamics are developed in [8]–[12].
The control signals generated by most of the dynamic
controllers presented in the literature are torques or voltages
for the robot motors, like in most of the above mentioned
works, while commercial robots usually accept velocity
commands. In such a context, [13] presented the development
of a dynamic model that has the advantage of using linear
and angular velocities as inputs. This model was used in the
development of an adaptive dynamic controller presented in
[14]. An evolution of such dynamic model was presented in
[11], that also shows some important model properties and
presents the design of an adaptive dynamic compensation
controller for unicycle robots.
One of the problems regarding the above mentioned dy-
namic controllers is how to select a proper set of controller
gains for the robot to have good performance. First of all,
it is important to define what ”good performance” means,
and how it can be computed, in order to make the selection
of a proper set of controller gains. The use of evolutionary
algorithms to solve optimization problems, including con-
troller gain settings, is a well studied problem [15]. The
problem of selecting a set of controller gains is addressed in
[16], where the authors present three types of evolutionary
optimization algorithms for PI controller tuning. Following
the same idea, in [17] the authors present a tuning method
for a multivariable predictive control of a hot rolling mill
with genetic algorithm.
The above mentioned works have shown that system
performance can be improved via evolutionary optimization
algorithms. Therefore, in this paper we present the results
of the application of a genetic algorithm used to select a
set of controller gains for a mobile robot trajectory tracking
dynamic controller. The controller we use is based on the
approach to model the dynamics of an unicycle-like mobile
robot presented in [11]. This dynamic model is not common
in the literature, as it has linear and angular velocities
as inputs. It is developed in such a way that important
properties arise. Such properties are also summarized in the
present paper, and some of them are used to design an adap-
tive compensation controller for the unicycle mobile robot,
with proven stable performance. Selection of the controller
gains is performed to minimize tracking error (IAE), energy
consumption and a balanced combination of both indexes.
VII JAR 2012 - UNICEN, Olavarra
Simulation results illustrate system performance for some of
the selected controller gains. Simulation files are available
for download and can be freely used and modified [18].
The paper is hereinafter organized in the following sec-
tions: Section II, which presents the mathematical represen-
tation of the unicycle-like dynamic model and its properties;
Section III, where the kinematic and dynamic controllers
are developed; Section IV, that presents genetic algorithm
fundamentals; Section V, which presents simulation results
and a comparison of system performance for three different
sets of controller gains; and, finally, Section VI, where some
conclusions are highlighted.
II. DYNAMIC MODEL
The dynamic model of the unicycle-like mobile robot
proposed in [11] is now reviewed. It’s structure is similar
to the classical dynamic equation of a manipulator. Fig. 1
depicts a unicycle-like mobile robot and the parameters and
variables of interest. There, uand ωare, respectively, the
linear and angular velocities, Gis the center of mass, Cis
the position of the castor wheel, his the point of interest
with coordinates xand yin the XY plane, ψis the robot
orientation, and ais the distance from the point of interest to
the point in the middle of the virtual axis linking the traction
wheels (point B).
The complete robot mathematical model is written as a
kinematic and a dynamic models, as shown in the sequel.
The kinematic model is
˙x
˙y
˙
ψ
=
cos ψasin ψ
sin ψ a cos ψ
0 1
u
ω+δx
δy,(1)
while the dynamic model is
˙u
˙ω="θ3
θ1ω2θ4
θ1u
θ5
θ2θ6
θ2ω#+1
θ10
01
θ2ur ef
ωref +δu
δω,(2)
where θ= [θ1θ2θ3θ4θ5θ6]Tis the vector of
model parameters (which are identified) and δx,δy,δu,
and δωare parametric uncertainties associated to the mobile
robot.
The parameters included in the vector θare functions of
some physical parameters of the robot, such as its mass m,
its moment of inertia Izat G, the electrical resistance Ra
a
G
b
d
ce
h
B
C
E
\
u
Z
y
x
Fig. 1. The unicycle-like mobile robot.
of its motors, the electromotive constant kbof its motors,
the constant of torque kaof its motors, the coefficient of
friction Be, the moment of inertia Ieof each group rotor-
reduction gear-wheel, the radius rof the wheels, and the
distances band d(see Fig. 1). It is assumed that the robot
servos have PD controllers to control the velocities of each
motor, with proportional gains kP T >0and kPR >0,
and derivative gains kDT 0and kDR 0. It is also
assumed that the motors associated to both driven wheels
have the same characteristics, and that their inductances are
neglectable. The equations describing the parameters θiwere
firstly presented in [13], and are
θ1=Ra
ka
(mRtr+ 2Ie) + 2rkDT 1
2rkP T
[s],
θ2=hRa
kaIed2+ 2RtrIz+mb2+ 2rdkDRi
(2rdkP R )[s],
θ3=Ra
ka
mbRt
2kP T
[sm/rad2],
θ4=Ra
kakakb
Ra
+Be1
rkP T
+ 1 [1],
θ5=Ra
ka
mbRt
dkP R
[s/m],
θ6=Ra
kakakb
Ra
+Bed
2rkP R
+ 1 [1].
It should be noticed that θi>0for i= 1,2,4,6. The
parameters θ3and θ5, by their turn, can be negative and will
be null if, and only if, the center of mass Gis exactly in the
middle of the virtual axis linking the traction wheels (point
B), i.e. b= 0. In this paper, however, it is assumed that
b6= 0.
Remark 1. The dynamics of the robot actuators is included
in the presented model, which is not the case for the model
that has torques as inputs.
By rearranging the terms, (2) can be written as
+H ˙v+C(v)v+F(v)v=vr,(3)
where vr= [uref ωref ]Tis the vector of reference
velocities, v= [u ω]Tis the vector containing the current
robot velocities, v= [Iu ω]Tis the vector of modified
velocities, given by
v=I0
0 1u
ω,
where I= 1rad2/s, and the matrices H,C(v)and F(v),
and the vector are given by
H=θ1/I 0
0θ2,F(v) = θ4/I 0
0θ6+ (θ5/I θ3)Iu,
C(v) = 0θ3ω
θ3ω0,=θ10
0θ2δu
δω.
Please, refer to [11] for more detailed information on the
development of the presented dynamic model.
Remark 2. It is important to remark that the products of
matrices in (3) result in velocities, not in torques. Therefore,
VII JAR 2012 - UNICEN, Olavarra
the model here presented is suitable to be used in connection
with commercial mobile robots, that usually have linear and
angular velocities as reference signals. Some examples are
the Pioneer robots from Mobile Robots, and the Khepera
robots from K-Team Corporation.
Remark 3. The mathematical structure of the dynamic
model represented by (3) is similar to the one that describes
the dynamics of manipulators. So, strategies and techniques
used to design controllers for manipulator robots can be
adapted to design controllers for mobile robots.
A. Properties of the Dynamic Model
The model here presented is somewhat different from the
classical dynamic model based on torques, and its properties
deserve some analysis. They are:
1. The matrix His symmetric and positive definite, or
H=HT>0;
2. The inverse of Hexists and is also positive definite, or
H1>0;
3. The matrix Fis symmetric and positive definite, or F=
FT>0, if θ6>(θ5/I θ3)Iu;
4. The matrix His constant if there is no change on the
physical parameters of the robot;
5. The matrix C(v)is skew symmetric;
6. The matrix F(v)can be considered constant if θ6
|(θ5/I θ3)Iu|and there is no change on the physical
parameters of the robot;
7. The mapping vrvis strictly output passive if θ6>
(θ5/I θ3)Iu and =0.
Properties 1, 2 and 3 can be proved by observing that H
and Fare diagonal and their terms are all positive. Property
4 is true under the assumption that there is no change in
the robot parameters, i.e., the robot structure, mass, moment
of inertia etc. do not change and the robot navigates on a
horizontal plane. It is worth mentioning that Hdoes not
depend on the robot position if it navigates on a horizontal
plane. Property 5 is straightforwardly proven by checking
the terms of C(v). It is interesting to notice that (˙
H2C)
is skew symmetric because His constant and, therefore,
˙
H=0. Property 6 can be verified by observing that if θ6
|(θ5/I θ3)Iu|the term (θ5/I θ3)Iu can be ignored, and
Fwill depend only on θ4and θ6, which are constant under
the assumption of constant robot parameters. The condition
θ6≫ |(θ5/I θ3)Iu|was verified via experimental tests in
different unicycle-like mobile robots.
Passivity is an important system property that can be
used to design a controller for such a system [19]. The
passivity property of the dynamic model (3) is presented by
the following theorem.
Theorem 1: By considering =0and θ6>(θ5/I
θ3)Iu, and assuming that vrL2eand v
L2e, the mapping vrvof the dynamic model
H˙
v+C(v)v+F(v)v=vris strictly output passive.
Please refer to [11] for the theorem proof.
Parameter identification performed for three different
unicycle-like mobile robots presented in [13], and for a
unicycle-like robotic wheelchair, shows that the conditions
θ6>(θ5/I θ3)Iu and θ6≫ |(θ5/I θ3)Iu|are true for
the robots whose parameters were identified. Those robots
are two Pioneer 2-DX (one having an onboard computer
and the other having not) and one Pioneer 3-DX having
an onboard computer and a laser scanner mounted on it,
all of them from Mobile Robots. Such robots have different
weights and dynamics, specially the Pioneer 3-DX, because
the laser sensor mounted on the top front of it weighs
about 50% of the robot weight, which produces an important
change in the robot mass and moment of inertia. The
robotic wheelchair presents an even greater difference in
the dynamic parameters, because of its own weight (about
70kg). Parameter identification of the robotic wheelchair was
performed when it was carrying a person who weighs 55kg
and when it was carrying a person who weighs 125kg. For
both cases the above assumptions were verified.
As an example, the parameter values for the Pioneer 3-DX
robot are
θ1= 0.2604 s, θ2= 0.2509 s, θ3=0.0005 sm/rad2,
θ4= 0.9965, θ5= 0.00263 s/m, θ6= 1.0768,
and for the robotic wheelchair carrying a person with 125kg
they are
θ1= 0.4263 s, θ2= 0.0289 s, θ3= 0.0058 sm/rad2,
θ4= 0.9883, θ5= 0.0134 s/m, θ6= 0.9931.
As uis limited to 1.2m/s for the Pioneer robots and to
2m/s for the robotic wheelchair, the assumptions of θ6>
(θ5/I θ3)Iu and θ6≫ |(θ5/I θ3)Iu|are valid. Then,
the dynamic model of the above mentioned robots can be
represented as in (3), with properties 1-7 valid.
III. CONTROLLER DESIGN
A trajectory tracking controller was designed based on
the presented robot model. The controller was split in two
parts: one is based on the inverse kinematics and the other
compensates for the robot dynamics. The complete control
structure is shown in Fig. 2, where K,Dand Rrepresent
the kinematic controller, the adaptive dynamic compensation
controller, and the robot, respectively.
A. The Kinematic Controller
The kinematic controller is based on the kinematic model
of the robot, which is given by (1). The kinematic control
law here adopted is
uc
ref
ωc
ref =cos ψsin ψ
1
asinψ 1
acos ψ"˙xd+lxtanh( kx
lx˜x)
˙yd+lytanh( ky
ly˜y)#,(4)
for which a > 0;vd= [uc
ref ωc
ref ]Tis the output of the
kinematic controller; h= [x y]Tand hd= [xdyd]Tare
the vectors of the current and the desired coordinates of the
point of interest h, respectively; ˜
h=hdhis the vector of
position errors; kx>0and ky>0are the controller gains;
and lx,lyRare saturation constants.
VII JAR 2012 - UNICEN, Olavarra
K D R
d
v
r
v
v
,h
dd
hh &
,
Fig. 2. The structure of the proposed controller.
Stability analysis considering this controller is presented
in [14]. There, using the Lyapunov candidate function V=
1
2
˜
hT˜
h>0, it is shown that the system has a globally
asymptotically stable equilibrium at the origin, which means
that the position errors ˜x(t)0and ˜y(t)0as t→ ∞.
B. The Adaptive Dynamic Compensation Controller
The adaptive dynamic compensation controller receives
the references for linear and angular velocities vdfrom the
kinematic controller, and generates another pair of linear
and angular velocities commands vrfor the robot servos, as
shown in Figure 2. The vector of modified desired velocities
v
dis defined as
v
d=I0
0 1ud
ωd,
and the vector of velocities error is given by ˜v=v
dv.
To design the dynamic controller, (3) will be written in its
linear parametrization form, as
vr=Gθ=˙u0ω2u0 0
0 ˙ω0 0 uω ωθ,(5)
where the uncertainties vector was neglected. Regarding
parametric uncertainties, the proposed control law is
vr=ˆ
H(˙v
d+T(˜v)) + ˆ
Cv
d+ˆ
Fv
d,(6)
where ˆ
H,ˆ
C, and ˆ
Fare estimates of H,C, and F, re-
spectively, T(˜v) = lu0
0lω"tanh(ku
luI˜u)
tanh(kω
lω˜ω)#, ku>0and
kω>0are gain constants, luRand lωRare saturation
constants, and ˜ω=ωdω,˜u=uduare the current
velocity errors. The term T(˜v)provides a saturation in order
to guarantee that the commands to be sent to the robot are
always within the corresponding physical limits, considering
that v
dand ˙v
dare bounded to appropriate values.
An updating control law is designed for the case in which
the dynamic parameters are not correctly identified, or may
change from task to task. To design the updating law, the
control law is written in its linear parametrization format, or
vr=Gˆ
θ=σ10ωdω ud0 0
0σ2(IudωIuωd) 0 dωdˆ
θ,
(7)
where σ1= ˙ud+lutanh( ku
lu˜u),σ2= ˙ωd+lωtanh(kω
lω˜ω). By
defining the vector of parametric errors ˜
θ=ˆ
θθ, where ˆ
θ
is the vector of parameter estimates, (7) can be written as
vr=Gθ+G˜
θ, or
vr=Hσ+Cv
d+Fv
d+G˜
θ,(8)
where σ=˙v
d+T(˜v).
The following equation is used as a parameter updating
law. To prevent parameter drifting, a Leakage term, or a σ-
modification term [20], was included in the equation. Then,
the robust updating law
˙
ˆ
θ=γGT˜vγΓˆ
θ(9)
is obtained, where ΓR6×6is a diagonal positive gain
matrix.
A complete stability analysis considering the adaptive
dynamic compensation controller is presented in [11]. There,
it is shown that if the disturbance bounded, the velocity error
is also bounded. Stability of the equilibrium is guaranteed if
the disturbance is limited, and the robustness to disturbances
is reduced as the velocity error reduces. This means that
when the velocity error is very small, a disturbance of small
intensity might provoke an increase in error. This fact leads
to the conclusion that, in practice, ˜vwill not be null and,
therefore, there always will be some velocity error ˜v 6=0.
It should be noticed that an increase in kuand kωgains
increases the robustness to disturbances.
Remark 4. It should be pointed out that the proposed con-
troller does not guarantee that ˜
θ0when t→ ∞. In other
words, parameter estimates might converge to values that
does not correspond to the physical parameters. Nevertheless,
it is not required that ˜
θ0in order to make ˜v converge to
a bounded value.
Remark 5. It is important to point out that a nonholonomic
mobile robot must be oriented according to the tangent of
the trajectory path to track a trajectory with small error.
Otherwise, the control errors would increase. This is true
because the nonholonomic platform restricts the direction of
the linear velocity developed by the robot. So, if the robot
orientation is not tangent to the trajectory, the distance to the
desired position at each instant will increase. The fact that
the control errors converge to a bounded value shows that
robot orientation does not need to be explicitly controlled,
and will be tangent to the trajectory path while the control
errors remain small.
Remark 6. The updating law adjusts parameter estimates
when the velocity error is different than zero. In other
words, here we consider that the velocity tracking error is
all caused by a parameter estimation error. Although this is
not entirely true, the proposed updating law is capable of
providing a reduction in the velocity tracking error ˜v as will
be illustrated.
Considering the complete controller, some of the parame-
ters, like lx,ly,luand lω, must be determined according to
the physical limitations of the robot. But others, like kx,ky,
kuand kωcan be chosen by the user. An important question
that arises is: ”How to select a proper set of controller gains
for the robot to have good performance?”. One possible way
of solving this problem is to select a set of gains to minimize
some cost function (like energy consumption or tracking
error). In the next section we discuss the fundamentals of
genetic algorithms, that will be used to select the controller
gains according to some functions we define.
VII JAR 2012 - UNICEN, Olavarra
IV. GENETIC ALGORITHMS
Genetic algorithms (GA) are search algorithms based on
the mechanics of natural selection of Darwin and natural
genetics of Mendel. They combine survival of the fittest
among string structures with a structures yet randomized
information exchange to form a search algorithm with some
of the innovative flair of human search. In every generation,
a new set of artificial creatures (strings) is created using
bits and pieces of the fittest of the old; an occasional new
part is tried for good measure. While randomized, genetic
algorithms are no simple random walk. They efficiently
exploit historical information to search new points with
expected improved performance.
GAs were first presented by [21] and have been used
in many diverse areas such as function optimization, image
processing, signal processing and system identification [22]
[23]. A GA is a parallel global search technique that emulates
natural genetic operators and works on a population repre-
senting different parameter vectors whose optimal value with
respect to some (fitness) criterion is searched. This technique
includes operations such as reproduction, crossover and
mutation. These operators work with a number of artificial
creatures called generation. By exchanging information from
each individual in a population. GAs preserve a better
individual and yield higher fitness generation by generation
such that the performance can be improved. Next, we will
briefly describe the basic operators in a GA.
A. Reproduction
Reproduction is a process in which a new generation
of population is formed by selecting individuals from an
existing population, according to their fitness. This process
results in individuals with higher fitness values obtaining
one or more copies in the next generation, while low fitness
individuals may have none. Note, however, that reproduction
does not generate new individuals but only favours the
percentage of fit individuals in a population of given size.
B. Crossover
This operation provides a mechanism for individual to
exchange information via probabilistic process. This op-
eration takes two ”parents” individuals and produces two
”offspring” who are new individual whose characteristics are
a combination of those of their parents.
C. Mutation
Mutation is an operation where some characteristics of an
individuals are randomly modified, yielding a new individual.
Here, the operation simply consists in randomly changing the
value of one bit of the string representing an individual.
V. TUNNING AND SIMULATION PROCESS
In this section, a genetic algorithm is used to optimize
parameters kx,ky,kuand kωof the tracking controller
described in Section III. Our GA creates a population of 200
individuals that contain the parameters necessary to minimize
the objective function. The individuals of the GA are
[kx, ku, kω],(10)
and are coded as real values. We have considered that
kx=ky, so it was necessary to select only one gain
for the kinematic controller. This can be explained by the
fact that there is no preferable direction for the robot to
follow. After that, the GA algorithm computes the fitness
of each individual in the population and selects the best
individuals of each generation. The fitness of each individual
is calculated as
F it(kx, ku, kω) = IAEgainIAE +Engain Energy, (11)
where IAE =RT
0|E(t)|dt is the integral of the tracking
error, E(t) = p˜x2+ ˜y2is the instantaneous distance er-
ror, Energy =RT
0(u2(t) + ω2(t))dt represents the energy
consumption, and Tis the total simulation period. IAEgain
and Eng ain are constants that can be altered to balance
the importance of each factor (IAE or Energy). After that,
the genetic operators (reproduction, crossover and mutation)
are carried out through the population to create a new
generation. Mutation rate is 0.1% and crossover rate is 80%.
Individual selection is made by standard roulette wheel. GA
runs iteratively for 15 generations, presenting at the end of
the procedure the best individual, that is, the set of gains
that results in smaller F it(kx, ku, kω). We have repeated this
procedure for over 70 different combinations of IAEgain and
Engain.
After applying each resulting individual into the controller
gains, we have simulated the hole system considering the
Pioneer 3DX complete dynamic model, including its speed
and acceleration limitations. White noise was added to the
position and velocities signals sent to the controllers. The
period of each simulation was T= 250s, in which the
robot should follow an 8-shape trajectory (varying linear and
angular speeds). We have made all MATLAB scripts and
Simulink models available for download in [18]. The files
include the robot dynamic model, the controllers, the genetic
algorithm and some scripts to run the whole simulation.
VI. RESULTS AND CONCLUSIONS
Some of the resulting gains selected by the GA, associated
with the corresponding IAE and Energy indexes, are shown
in table I as an example. Line (a) represents the set of
gains selected for I AEgain = 1 and Engain = 0. Line
(b) represents the set of gains selected for IAEgain = 0
and Eng ain = 1. Lines (c-e) are resulting of different
combinations of both gains. It can be seen that the smallest
IAE value is achieved by the set of gains shown in line (a),
while the smallest Energy index is obtained by the individual
in line (b), as expected.
To select a proper set of controller gains one should
consider other performance issues that are not shown in the
values presented in table I. For instance, controller gains
in line (a) will result in small tracking error, as shown in
VII JAR 2012 - UNICEN, Olavarra
0 50 100 150 200 250
0
0.1
0.2
0.3
0.4 Distance Error
time [s]
error [m]
Fig. 3. Distance error for minimal IAE.
0 50 100 150 200 250
−0.2
0
0.2
0.4
0.6 Linear Velocity Error [m/s]
time [s]
0 50 100 150 200 250
−1
0
1
2Angular Velocity Error [rad/s]
time [s]
Fig. 4. Velocity error for minimal IAE.
0 50 100 150 200 250
0
0.1
0.2
0.3
0.4 Distance Error
time [s]
error [m]
Fig. 5. Distance error for minimal energy.
0 50 100 150 200 250
−0.2
0
0.2
0.4
0.6 Linear Velocity Error [m/s]
time [s]
0 50 100 150 200 250
−1
0
1
2Angular Velocity Error [rad/s]
time [s]
Fig. 6. Velocity error for minimal energy.
Figure 3, but the robot behaviourwill not be smooth. Figure 4
illustrates that fact by showing that the velocity errors for
minimal IAE have some fast oscillation. On the other hand,
controller gains in line (b) will result in much less energy
consumption and smoother behaviour (Figure 6), but the
tracking error will be higher, as illustrated in Figure 5.
The presented simulation results show that a genetic
algorithm can be successfully applied to select controller
gains that result in minimizing energy consumption, tracking
error or a combination of both indexes. Different sets of
controller gains can be selected according to some defined
criteria. This allows the user to make a proper selection of
controller gains according to the task that is going to be
carried out by the robot, considering a compromise between
tracking error and battery consumption.
A limitation of the proposed tuning method is that it relies
on the knowledge of the robot dynamic model. Therefore, the
quality of the tuning results depends on the quality of the
robot model. In our case, we have used a dynamic model
of the Pioneer 3-DX that has been validated, as shown in
previous works [11], [14]. MATLAB/Simulink simulation
files are available for download and can be modified by
the user to adapt the system to different robot models and
conditions.
REFERENCES
[1] B. Lantos and L. M´arton, Nonlinear Control of Vehicles and Robots.
Springer, 2011.
[2] S. Patel, R. Sanyal, and T. Sobh, “RISCBOT: A WWW-Enabled
Mobile Surveillance and Identification Robot,” Journal of Intelligent
Robotic Systems, vol. 45, no. 1, pp. 15–30, 2006.
[3] E. Prassler, A. Ritter, C. Schaeffer, and P. Fiorini, “A Short History
of Cleaning Robots,” Autonomous Robots, vol. 9, no. 3, pp. 211–226,
2000.
[4] B. Stouten and A. de Graaf, “Cooperative transportation of a large
object-development of an industrial application,” in Proceedings of the
IEEE International Conference on Robotics and Automation, vol. 3,
2004, pp. 2450–2455.
[5] C. De La Cruz, T. Bastos, and R. Carelli, “Adaptive motion control
law of a robotic wheelchair,” Control Engineering Practice, vol. 19,
no. 2, pp. 113–125, 2011.
[6] R. Fierro and F. L. Lewis, “Control of a nonholonomic mobile robot:
Backstepping kinematics into dynamics,Journal of Robotic Systems,
vol. 14, no. 3, pp. 149–163, 1997.
[7] T. Das and I. Kar, “Design and implementation of an adaptive fuzzy
logic-based controller for wheeled mobile robots,IEEE Transactions
on Control Systems Technology, vol. 14, no. 3, pp. 501–510, 2006.
[8] M. Kim, J. Shin, and J. Lee, “Design of a robust adaptive controller
for a mobile robot,Proc. of the IEEE/RSJ Int. Conf. on Intelligent
Robots and Systems, vol. 3, pp. 1816–1821, 2000.
[9] S. Liu, H. Zhang, S. Yang, and J. Yu, “Dynamic control of a
mobile robot using an adaptive neurodynamics and sliding mode
strategy,” in Proc. pf the 5th World Congress on Intelligent Control
and Automation, vol. 6, 2004, pp. 5007–5011.
TABLE I
SET OF GAINS AND PERFORMANCE
kx=kykukωIAE Energy
(a) 9.172 9.329 9.727 0.948 56.42
(b) 0.301 1.140 8.404 13.54 51.35
(c) 5.951 8.090 1.059 1.04 54.39
(d) 6.872 8.527 0.523 1.01 54.45
(e) 6.777 9.736 0.594 0.99 54.43
VII JAR 2012 - UNICEN, Olavarra
[10] W. Dong and Y. Guo, “Dynamic tracking control of uncertain non-
holonomic mobile robots, Proc. of the IEEE/RSJ Int. Conference on
Intelligent Robots and Systems, pp. 2774–2779, 2005.
[11] F. Martins, M. Sarcinelli-Filho, T. Bastos, and R. Carelli, “Dynamic
modeling and adaptive dynamic compensation for unicycle-like mo-
bile robots,” in Advanced Robotics, 2009. ICAR 2009. International
Conference on. IEEE, 2009, pp. 1–6.
[12] C. Resende, F. Espinosa, I. Bravo, M. Sarcinelli-Filho, and T. Bastos-
Filho, “A trajectory tracking controller with dynamic gains for mobile
robots,” in Intelligent Robots and Systems (IROS), 2011 IEEE/RSJ
International Conference on. IEEE, 2011, pp. 3746–3751.
[13] C. De La Cruz and R. Carelli, “Dynamic modeling and centralized
formation control of mobile robots,” in 32nd IEEE Conference on
Industrial Electronics, November 2006, pp. 3880–3885.
[14] F. Martins, W. Celeste, R. Carelli, M. Sarcinelli-Filho, and T. Bastos-
Filho, “An Adaptive Dynamic Controller for Autonomous Mobile
Robot Trajectory Tracking,” Control Engineering Practice, vol. 16,
pp. 1354–1363, 2008.
[15] P. Fleming and R. Purshouse, “Evolutionary algorithms in control
systems engineering: a survey,” Control engineering practice, vol. 10,
no. 11, pp. 1223–1241, 2002.
[16] R. Radu-Codrut¸David, S. Preitl, J. Tar, and J. Fodor, “Three evolution-
ary optimization algorithms in pi controller tuning, in Applied Com-
putational Intelligence in Engineering and Information Technology:
Revised and Selected Papers from the 6th IEEE Int. Symp. on Applied
Computational Intelligence and Informatics 2011, vol. 1. Springer-
Verlag New York Incorporated, 2012, p. 95.
[17] G. Almeida, J. Salles, J. Denti-Filho, and F. Rossomando, “Tuning
a multivariable predictive control of a hot rolling mill with genetic
algorithm, in Proceedings of the Brazilian Symposium of Intelligent
Automation, 2009.
[18] NERA - Nucleo de Estudos em Robotica e Automacao, “Arquivos
para simulacao de robo movel uniciclo, 2012. [Online]. Available:
http://nera.sr.ifes.edu.br/?p=157
[19] H. Khalil, Nonlinear systems. Prentice Hall, NJ, 2002.
[20] S. Boyd and S. Sastry, Adaptive control: stability, convergence, and
robustness. Prentice Hall, USA, 1989.
[21] J. H. Holland, Adaptation in Natural and Artificial Systems. Boston,
MA: MIT Press, 1992.
[22] K. Dejong, “An analysis of the behavior of a class of genetic adaptive
systems.” University of Michigan, Ann Arbor,Michigan” PHD Disser-
tation, 1975.
[23] R. Das and D. E. Goldberg, “Discrete-time parameters estimation
with genetic algorithm,” in Proceedings of the 19th Annual Pittsburg
Conference on Modeling and Simulation, California, USA, 1988.
VII JAR 2012 - UNICEN, Olavarra
... To sum up, by using a control structure as shown in Figure 2 with a dynamic compensation controller given by Eq. (25), different motion controllers can be applied. In our example, the trajectory tracking controller given by Eq. (20) was used. ...
... We have implemented the control structure shown on Figure 2 using the control laws given by Eqs. (20) and (25). In total, we have executed 10 experiments for each controller, from now on referred to as KC (kinematics controller) and DC (dynamic compensation). ...
... The values of the gains were chosen empirically so that we could compare different cases. Optimization of controller gains can be executed to reduce tracking error, energy consumption, or a weighted combination of both, as shown in [25]. This means that the performance of the overall system could potentially be better than reported here. ...
Chapter
Full-text available
The design of motion controllers for wheeled mobile robots is often based only on the robot's kinematics. However, to reduce tracking error it is important to also consider the robot dynamics, especially when high-speed movements and/or heavy load transportation are required. Commercial mobile robots usually have internal controllers that accept velocity commands, but the control signals generated by most dynamic controllers in the literature are torques or voltages. In this chapter, we present a velocity-based dynamic model for differential-drive mobile robots that also includes the dynamics of the robot actuators. Such model can be used to design controllers that generate velocity commands, while compensating for the robot dynamics. We present an explanation on how to obtain the parameters of the dynamic model and show that motion controllers designed for the robot's kinematics can be easily integrated with the velocity-based dynamic compensation controller. We conclude the chapter with experimental results of a trajectory tracking controller that show a reduction of up to 50% in tracking error index IAE due to the application of the dynamic compensation controller.
... Using the inverse kinematics of a differential-drive mobile robot (DDMR), the kinematic control law proposed by Martins et al. [6] has been used in many research works [6][7][8][9][10][11]. However, almost all authors have focused on analyzing the research results related to the dynamic controller only when the parameters of the kinematic controller are constant. ...
Book
Nonlinear Control of Vehicles and Robots develops a unified approach to the dynamic modeling of robots in terrestrial, aerial and marine environments. The main classes of nonlinear systems and stability methods are summarized and basic nonlinear control methods, useful in manipulator and vehicle control, are presented. Formation control of ground robots and ships is discussed. The book also deals with the modeling and control of robotic systems in the presence of non-smooth nonlinearities. Robust adaptive tracking control of robotic systems with unknown payload and friction in the presence of uncertainties is treated. Theoretical and practical aspects of the control algorithms under discussion are detailed. Examples are included throughout the book allowing the reader to apply the control and modeling techniques in their own research and development work. Some of these examples demonstrate state estimation based on the use of advanced sensors as part of the control system.
Article
In the present work, a dynamic model of a robotic wheelchair is developed considering a lateral deviation of the center of mass. The Lyapunov and input/output stability theories are used to design a novel tracking and positioning adaptive control for the robotic wheelchair. Properties of the dynamic model with respect to its matrices and parameters are shown. A filter is used to obtain a closed loop equation that allows designing the adaptive control law. Then, a projection algorithm is used to improve the adaptive control in the sense of avoiding parameter drift. Experimental results show good performance of the adaptive control.
Article
A dynamical extension that makes possible the integration of a kinematic controller and a torque controller for nonholonomic mobile robots is presented. A combined kinematic/torque control law is developed using backstepping, and asymptotic stability is guaranteed by Lyapunov theory. Moreover, this control algorithm can be applied to the three basic nonholonomic navigation problems: tracking a reference trajectory, path following, and stabilization about a desired posture. The result is a general structure for controlling a mobile robot that can accommodate different control techniques, rang-ing from a conventional computed-torque controller, when all dynamics are known, to robust-adaptive controllers if this is not the case. A robust-adaptive controller based on neural networks (NNs) is proposed in this work. The NN controller can deal with unmodeled bounded disturbances and/or unstructured unmodeled dynamics in the vehicle. On-line NN weight tuning algorithms that do not require off-line learning yet guarantee small tracking errors and bounded control signals are utilized.
Article
Challenging optimisation problems, which elude acceptable solution via conventional methods, arise regularly in control systems engineering. Evolutionary algorithms (EAs) permit flexible representation of decision variables and performance evaluation and are robust to difficult search environments, leading to their widespread uptake in the control community. Significant applications are discussed in parameter and structure optimisation for controller design and model identification, in addition to fault diagnosis, reliable systems, robustness analysis, and robot control. Hybrid neural and fuzzy control schemes are also described. The important role of EAs in multiobjective optimisation is highlighted. Evolutionary advances in adaptive control and multidisciplinary design are predicted. r 2002 Published by Elsevier Science Ltd.
Conference Paper
The work presents, first, a complete dynamic model of a unicycle-like mobile robot that takes part in a multi-robot formation. A linear parameterization of the model is also performed. The resulting robot model is input-output feedback linearized. On a second stage, for the multi-robot system, a model is obtained by arranging into a single equation all the feedback linearized robot models. This multi-robot model is expressed in terms of formation states by applying a coordinate transformation. The inverse dynamics technique is then applied to design a centralized formation control. The controller can be applied both to positioning and to tracking desired robot formations. Experimental results validate the theoretical aspects
Conference Paper
We consider the tracking control of a nonholonomic mobile robot with parameter uncertainty and unknown dynamics. A new robust adaptive controller is proposed with the aid of adaptive backstepping and robust control techniques. The proposed controller guarantees that the tracking error converges to a small ball containing the origin. The ball's radius can be adjusted by control parameters. Uncertainties in both of kinematics and dynamics of mobile robots are considered of the first time in the frame of robust and adaptive control in this paper. Simulation results show effectiveness of the proposed controller.