Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

J Intell Robot Syst

DOI 10.1007/s10846-016-0381-9

A Velocity-Based Dynamic Model and Its Properties


for Differential Drive Mobile Robots
Felipe N. Martins · Mário Sarcinelli-Filho ·
Ricardo Carelli

Received: 9 April 2015 / Accepted: 22 May 2016


© Springer Science+Business Media Dordrecht 2016

Abstract An important issue in the field of motion demonstrate that the proposed dynamic model has
control of wheeled mobile robots is that the design useful mathematical properties. We also present an
of most controllers is based only on the robot’s kine- application of such model on the design of an adap-
matics. However, when high-speed movements and/or tive dynamic controller and the stability analysis of
heavy load transportation are required, it becomes the complete system, while applying the proposed
essential to consider the robot dynamics as well. The model properties. Finally, we show some simulation
control signals generated by most dynamic controllers and experimental results and discuss the advantages
reported in the literature are torques or voltages for and limitations of the proposed model.
the robot motors, while commercial robots usually
accept velocity commands. In this context, we present Keywords Robot dynamics and control · Dynamic
a velocity-based dynamic model for differential drive modelling · Adaptive control · Mobile robot
mobile robots that also includes the dynamics of the
robot actuators. Such model has linear and angular
Mathematics Subject Classification (2010)
velocities as inputs and has been included in Peter
70E60 · 93A30 · 93D05 · 93C40
Corke’s Robotics Toolbox for MATLAB, therefore
it can be easily integrated into simulation systems
that have been built for the unicycle kinematics. We
1 Introduction

F. N. Martins () Most mobile robots are wheel-based structures be-


IFES - Federal Institute of Education, Science cause of their efficiency and simple mechanical imple-
and Technology of Espı́rito Santo, Serra Campus - Rod.
ES-010, km 6,5, Serra, ES, Brazil 29173-087
mentation [28]. A very common configuration for
e-mail: felipe.n.martins@gmail.com mobile robots is the differential drive, which has
two independently driven wheels in the rear (or
M. Sarcinelli-Filho front) and one or more unpowered wheels to balance
Department of Electrical Engineering, UFES - Federal
University of Espı́rito Santo, Av. Fernando Ferrari,
the structure. Due to their good mobility and sim-
514, Vitória, ES, Brazil 29075-910 ple configuration, differential drive robots have been
used in various applications, such as surveillance [3],
R. Carelli floor cleaning [24], industrial load transportation [30],
INAUT - Institute of Automatics - UNSJ - National
University of San Juan and CONICET,
autonomous wheelchairs [1], and others.
Av. San Martin Oeste 1112, San Juan, Considering differential drive mobile robots, an
Argentina, CP 5400 important issue is that the design of most of its motion
J Intell Robot Syst

controllers is based only on the robot’s kinematic proposed in [8], along with the design of multi-robot
model. The main reasons for that are: (a) the dynamic controller. One advantage of such a model is that its
model is more complicated than the kinematic one and parameters are directly related to the robot physical
its precise determination depends on the knowledge of parameters.
several parameters associated with the vehicle and its To reduce performance degradation in applications
actuators (like mass, moment of inertia etc.); and (b) in which the robot dynamic parameters may vary
mobile robots frequently have low-level velocity con- (such as load transportation) or when the knowledge
trol loops for their motors, which take a desired angu- of the dynamic parameters is limited, we have pro-
lar velocity as input and stabilize the motor angular posed an adaptive controller in [21]. There, we have
velocity at this value [22]. used the dynamic model proposed in [8], but we
However, because the robot’s low-level velocity have divided it in two parts, allowing the design of
control loops do not guarantee perfect velocity track- independent controllers for the robot kinematics and
ing, when high-speed movements and/or heavy load dynamics.
transportation are required, it becomes essential to A similar idea was used in the following works,
consider the robot dynamics as well, as we also have which have also used a dynamic model that has linear
shown in our previous work [21]. Thus, some motion and angular velocities as inputs. An adaptive sliding-
controllers that compensate for the robot dynamics mode dynamic controller to implement a trajectory-
have been proposed in the literature. As an example, in tracking mission was presented in [5]. It proposes a
[11] a combined kinematic/torque control law with a kinematic controller working with an adaptive sliding-
robust-adaptive controller based on neural networks is mode dynamic controller that makes the real velocity
proposed to deal with disturbances and non-modeled of the wheeled mobile robot reach the desired velocity
dynamics. Notice that the control commands they used commands. In turn, in [9] a landmark-based nav-
were torques. Another example is the adaptive fuzzy igation system for robotic wheelchairs is proposed
logic-based controller presented in [7]. Their dynamic and an adaptive controller considering its dynamic
model includes the actuator dynamics, and the com- model is developed. An approach to adaptive trajec-
mands generated by the controller are voltages for the tory tracking of mobile robots is presented in [25],
robot motors. Other examples of controllers that deal that presents an inverse nonlinear controller combined
with the unicycle dynamics were presented in [10, 16, with an adaptive NN with sliding mode control using
23, 27, 32]. an on-line learning algorithm. The adaptive NN acts
The control signals generated by most dynamic as a compensator for a controller to improve system
controllers reported in the literature are torques or performance when it is affected by variations in its
voltages for the robot motors (as in the above-men- structure. Finally, [31] deals with the Nonlinear Model
tioned papers). But, commercial robots usually receive Predictive Control of an agricultural robot to precisely
velocity commands, like the Pioneer robots from follow a trajectory operating in row cultures in order
Adept Mobile Robots, the Khepera robots from to perform high precision drop-on-demand application
K-Team Corporation, and the robuLAB-10 from of herbicide.
Robosoft Inc. Following this idea, in [2] a switch- The above-mentioned works applied a dynamic
ing controller with on-line learning and hierarchical model that has linear and angular velocities as inputs,
architecture has been proposed, investigating Neu- which illustrates the interest on such kind of dynamic
ral Network-based methodologies to compensate the model. In such context, in this paper we extend our
effects of non-modeled phenomena. Neural Networks previous work [21] that dealt with a velocity-based
(NN) were used for identification and control, and dynamic model. The main contributions of the present
the control signals were linear and angular veloc- paper are the proposal of a new approach to repre-
ities. However, the authors reported that real-time sent the dynamics of differential drive mobile robots
implementation of their solution requires a high- and the study of its mathematical properties, which are
performance computer architecture based on a multi- useful on the design of controllers that compensate for
processor system. On the other hand, a dynamic model the robot dynamics and on the system stability ana-
using linear and angular velocities as inputs has been lysis. As in [21], the dynamic model presented here
J Intell Robot Syst

includes the dynamics of the robot actuators and has coordinates x and y in the XY plane, ψ is the robot
linear and angular velocities as inputs, which makes its orientation, a is the distance from the point of inter-
integration into existing simulation models straight- est to the point in the middle of the virtual axle that
forward. We apply the proposed model and some of links the traction wheels (point B), b is the distance
its properties on the design of an adaptive dynamic between points G and B, and d is the distance between
compensation controller, with a robust updating law, the points of contact of the traction wheels to the floor.
and present the stability analysis of the whole sys- In the model, θ = [θ1 , ..., θ6 ]T is the vector of
tem as an application example. Several simulation and identified parameters and δ = [δx δy 0 δu δω ]T
some experimental results are presented. A compari- is the vector of parametric uncertainties associated to
son of the performance of the system with and without the mobile robot. The complete mathematical model
the dynamic compensation controller is also shown. is written as [8]
Finally, we discuss the advantages and limitations of ⎡ ⎤ ⎡ ⎤ ⎡ ⎤
ẋ u cos ψ − aω sin ψ 0 0
the proposed model and present our conclusions. ⎢
⎢ ẏ ⎥ ⎢ u sin ψ + aω cos ψ ⎥ ⎥ ⎢ 0 0 ⎥

⎢ ⎥ ⎢ ⎢ ⎥ ⎢ ⎥ uref
⎢ ψ̇ ⎥ = ⎢ ω +
⎥ ⎢ 0 0 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ 1 0 ⎥ ωref
⎣ u̇ ⎦ ⎣ θ3 2 θ4
θ1 ω − θ1 u ⎦ ⎣ θ1 ⎦
2 Dynamic Model
ω̇ − θθ25 uω − θθ62 ω 0 θ12
The dynamic model for the differential drive mobile ⎡ ⎤
δx
robot proposed in [8] is now reviewed. For conve- ⎢ δy ⎥
⎢ ⎥
nience, we first present its equations again. Then, +⎢⎢ 0 ⎥.

the dynamic model is written in such a way that it ⎣ δu ⎦
becomes similar to the classical dynamic equation δω
based on torques. Figure 1 depicts a differential drive
mobile robot with the variables of interest. There, u The parameters included in the vector θ are func-
and ω are, respectively, the linear and angular veloc- tions of some physical parameters of the robot, such as
ities, G is the center of mass, h is the point of its mass m, its moment of inertia Iz at G, the electrical
interest (whose position should be controlled) with resistance Ra of its motors, the electromotive constant
kb of its motors, the constant of torque ka of its motors,
the coefficient of friction Be , the moment of inertia Ie
of each group rotor-reduction gear-wheel, the radius r
of the wheels, and the distances b and d (see Fig. 1).
It is assumed that the robot servos have PD controllers
to control the velocities of each motor, with propor-
tional gains kP T > 0 and kP R > 0, and derivative
gains kDT ≥ 0 and 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
θi are

Ra
2 1
θ1 = mr + 2Ie + 2rkDT [s],
ka (2rkP T )

Ra
2

θ2 = Ie d + 2r Iz + mb
2 2
+ 2rdkDR
ka
1
× [s],
(2rdkP R )
Ra mbr
θ3 = [sm/rad 2 ],
Fig. 1 The differential drive mobile robot ka 2kP T
J Intell Robot Syst

Ra ka kb 1 so that the term c(v)v can be written as
θ4 = + Be + 1,
ka Ra rkP T    
0 −θ3 ω iu θ 0 u
θ5 =
Ra mbr
[s/m], and + 4 .
θ3 ω 0 ω 0 θ6 + (θ5 − iθ3 )u ω
ka dkP R
(5)
Ra ka kb d
θ6 = + Be + 1.
ka Ra 2rkP R The role of the term i = 1 rad2 /s is to make the units
It should be noticed that θi > 0 for i = 1, 2, 4, 6. The consistent to allow us to split c(v) into two matrices,
parameters θ3 and θ5 can be negative and will be null while keeping the numerical values unchanged. Now,
if, and only if, the center of mass G is exactly in the let us define v = [iu ω]T as the vector of modified
center of the virtual axle, i.e. b = 0. velocities, so that
 
The above model is split into kinematic and  i 0 u
dynamic parts. The kinematic model is v = .
01 ω
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
ẋ cos ψ −a sin ψ  δx The terms in the vector of modified velocities are
⎣ ẏ ⎦ = ⎣ sin ψ a cos ψ ⎦ u + ⎣ δy ⎦ , (1)
ω numerically equal to the terms in the vector of actual
ψ̇ 0 1 0 velocities v, only its dimensions are different. By
whereas the dynamic model is rewriting the model equation, the following matrices
  θ3 2 θ4   1   are defined:
u̇ ω − θ1 u 0 uref δ
= θ 1
θ5 θ6 + θ 1
1 + u .  
ω̇ − θ uω − θ ω 0 θ2 ω δ θ1 /i 0 θ4 /i 0
2 2
ref ω
H= 0 θ2 , F(v ) = 0 θ6 + (θ5 /i − θ3 )iu
(2)
Now, we are going to present our proposal for and
representing the dynamic model. By rearranging the 
0 −θ3 ω
terms, Eq. 2 can be written as C(v ) = .
θ3 ω 0
     
−θ1 0 δu θ1 0 u̇ θ4 −θ3 ω u Finally, we propose the dynamic model of a
0 −θ2 δω + 0 θ2 ω̇ + θ5 ω θ6 ω differential-drive mobile robot to be represented by
 
1 0
= 0 1
uref  + Hv̇ + C(v )v + F(v )v = vr . (6)
ωref ,
Though written in a different way, the model pro-
or, in a compact form, as posed here is mathematically equivalent to the one
proposed in [8], where simulation and experimental
 + H v̇ + c(v)v = vr , (3)
results were presented to validate it. The main advan-
where vr = [uref ωref is the vector of reference
]T tage of the model presented here is that it is written in
velocities, v = [u ω]T is the vector containing the such a way that it becomes possible to use its mathe-
actual robot velocities, and the matrices H and c(v), matical properties in the design and stability analysis
and the vector  are given by of dynamic controllers. Such properties are studied
  and discussed in the following Section.
θ 0 θ4 −θ3 ω
H = 1 , c(v) = and
0 θ2 θ 5 ω θ6
  3 Dynamic Parameters and Model Properties
−θ1 0 δu
= .
0 −θ2 δω
Before analyzing the properties of the dynamic model,
Let us rewrite c(v) by adding and subtracting the term it is important to verify that none of its parameters
iθ3 u to its fourth element (where i = 1 rad2 /s), such θ1 to θ6 can be written as a linear combination of
that the others, otherwise it would be possible to write

θ4 −θ3 ω the dynamic model with a smaller number of parame-
c(v) = , (4)
θ5 ω θ6 + (iθ3 − iθ3 )u ters. Some physical variables have influence on more
J Intell Robot Syst

than one parameter θ , therefore the linear indepen- wheel on either left or right sides), we claim that this
dence between θ1 ..θ6 is not straightforwardly seen. assumption does not introduce significant modeling
This issue was not discussed in previous papers, so errors on most cases.
we have applied the following method to verify the Now, let us analyze the mathematical properties
linear independence of parameters θ : using the equa- of the dynamic model. First, recall that θi > 0 for
tions that define the dynamic parameters (presented i = 1, 2, 4, 6. By observing that H is a diagonal square
in Section 2), we have obtained K sets of parame- matrix formed by θ1 and θ2 , one can conclude that
ters calculated with randomly generated values of the H is symmetric and positive definite, and its inverse
physical variables (Ra , Ie , Be , m, r etc.). The results exists and is also positive definite. Moreover, H is con-
were used to build the following matrix: stant if there is no change on the physical parameters
of the robot (i.e., if there is no change on the robot’s
⎡ ⎤ mass, moment of inertia etc.), and does not depend
θ1 (1) θ2 (1) θ3 (1) θ4 (1) θ5 (1) θ6 (1) on the robot position if it navigates on a horizontal
⎢ θ1 (2) θ2 (2) θ3 (2) θ4 (2) θ5 (2) θ6 (2) ⎥
⎢ ⎥ plane.
⎢ θ1 (3) θ2 (3) θ3 (3) θ4 (3) θ5 (3) θ6 (3) ⎥
⎢ ⎥. F(v ) is also a diagonal square matrix formed by
⎢ . .. .. .. .. .. ⎥
⎣ .. . . . . . ⎦ θ4 and θ6 + (θ5 /i − θ3 )iu. If we assume that θ6 >
θ1 (K) θ2 (K) θ3 (K) θ4 (K) θ5 (K) θ6 (K) −(θ5 /i − θ3 )iu, we can conclude that F(v ) is sym-
metric and positive definite. Additionally, F(v ) can
be considered constant if θ6  |(θ5 /i − θ3 )iu| and
This matrix has 6 columns and K lines, where K there is no change on the physical parameters of the
is the number of random sets of parameters. It was robot. In Section 3.2 we show that the conditions of
verified that its rank is equal to 6, which indicates θ6 > −(θ5 /i − θ3 )iu and θ6  |(θ5 /i − θ3 )iu| were
that it has six independent columns, i.e. all parame- verified via experimental tests for five different types
ters are linearly independent. In an attempt to avoid a of robots whose parameters were identified.
false indication of independence between the parame- C(v ) is a square matrix formed by θ3 ω and −θ3 ω,
ters due to numerical error, each column of the matrix whose transpose is also its negative. Therefore, C(v )
was normalized by dividing its values by the max- is skew symmetric.
imum value of that column. Before calculating the To sum up, the mathematical properties of the
rank of the matrix, all values were truncated so that dynamic model (6) are:
they had a fixed number of decimal digits. This pro-
cedure was repeated several times for K = 1, 000 and 1. The matrix H is symmetric and positive definite,
K = 5, 000. For truncation of 4, 3, and 2 decimal dig- or H = HT > 0;
its, the resulting matrix rank was equal to six in all 2. The inverse of H exists and is also positive defi-
cases, indicating that the dynamic parameters θ are, nite, or ∃ H−1 > 0;
indeed, linearly independent. This indicates that the
3. The matrix F(v ) is symmetric and positive def-
dynamic model of the differential drive mobile robot
inite, or F(v ) = FT > 0, if θ6 > −(θ5 /i −
cannot be written with less than six parameters.
θ3 )iu;
4. The matrix H is constant if there is no change on
3.1 Model Properties
the physical parameters of the robot;
First, it is interesting to notice that the dynamic model 5. The matrix C(v ) is skew symmetric;
considers that the robot’s center of mass G can be 6. The matrix F(v ) can be considered constant if
located anywhere along the line that crosses the cen- θ6  |(θ5 /i − θ3 )iu| and there is no change on
ter of the structure, as illustrated in Fig. 1. This means the physical parameters of the robot;
that the formulation of the proposed dynamic model 7. The mapping vr → v is strictly output passive if
is adequate for robots that have a symmetrical weight θ6 > −(θ5 /i − θ3 )iu and  = 0.
distribution between their left and right sides. Because
most differential drive robots have an approximately Finally, the following theorem states the passivity
symmetrical weight distribution (with each motor and property of the dynamic model (6).
J Intell Robot Syst

Theorem 1 Considering  = 0 and θ6 > −(θ5 /i − The description of the parameter identification proce-
θ3 )iu, and assuming that vr ∈ L2e and v ∈ L2e , the dure is out of the scope of this paper, but the reader is
mapping vr → v of the dynamic model referred to [8] and [17] for detailed information.
We consider the parameters of the following robots:
Hv̇ + C(v )v + F(v )v = vr
a Pioneer 3-DX with no extra equipment (P 3), a
is strictly output passive. Pioneer 3-DX with a LASER scanner and omnidirec-
tional camera (P 3laser ), a robotic wheelchair while
Proof According to [26], an operator P : L2e → L2e
carrying a 55 kg person (RW55 ), a robotic wheelchair
is strictly output passive if, and only if, there are
while carrying a 125 kg person (RW125 ), and a Khep-
constants δ ∈ R and β ∈ R so that
era III (K3), whose parameters were originally pre-
< P x, x > ≥ β + δP x22,T ∀x ∈ L2e , sented in [17]. The Khepera III robot weighs 690 g,
where < ·, · > represents the internal product. To has a diameter of 13 cm and is 7 cm high. By its
show that the mapping vr → v is strictly output turn, the Pioneer robots weigh about 9 kg, are 44 cm
passive, let us consider the positive function V = long, 38 cm wide and 22 cm tall (without the LASER
1 T  T  scanner). The LASER scanner weighs about 50 % of
2 v Hv and its first time derivative V̇ = v Hv̇ ,
where property 4 is applied. Using Eq. 6 and applying the original robot weight, which produces an impor-
properties 3 and 5, V̇ can be written as tant change in the mass and moment of inertia of the
structure. Finally, the robotic wheelchair presents an
V̇ = vT (vr − Cv − Fv ) = vT vr − vT Fv . (7) even greater difference in dynamics because of its own
By integrating Eq. 7 one gets weight (about 70 kg) and the weight of the person that
 T  T  T it is carrying. The dynamic parameters for the above
V̇ dt = vT vr dt − vT Fv dt, mentioned robots are presented in Table 1.
0 0 0 The value of u is limited to 0.5 m/s for the Khepera
which can be written as III robots, to 1.2 m/s for the Pioneer robots, and to
 T  T
1.5 m/s for the robotic wheelchair. Therefore, using
V (T ) − V (0) = vT vr dt − vT Fv dt. (8)
0 0 the values presented in Table 1 one can verify that the
By neglecting the positive term V(T), it follows that conditions of θ6 > −(θ5 /i − θ3 )iu and θ6  |(θ5 /i −
 T  T θ3 )iu| are valid for all sets of identified parameters.
−V (0) ≤ vT vr dt − inf(λmin (F)) v 2 dt, Therefore, the dynamic model of the above-mentioned
0 0 robots can be represented as in Eq. 6, with properties
or 1–7 valid.
 T
vT vr dt ≥ −V (0) + inf(λmin (F))v 2,T .
2
0
Assuming that vr ∈ L2e and v ∈ L2e , the prior 4 Application Example: Controller Design
equation can be written as
To illustrate the usefulness of the proposed dynamic
< v , vr > ≥ −V (0) + inf(λmin (F))v 22,T , (9) model and its properties, let us show the design of
where inf(λmin (·)) represents the smallest eigenvalue an adaptive dynamic compensation controller, with
of a matrix. Given that θ6 > −(θ5 /i − θ3 )iu, one can
see that F > 0. Therefore, based on Eq. 9, one can Table 1 Identified dynamic parameters
conclude that the mapping vr → v is strictly output
P3 P 3laser RW55 RW125 KI I I
passive.
θ1 [s] 0.5338 0.2604 0.3759 0.4263 0.0228
3.2 Identified Parameters θ2 [s] 0.2168 0.2509 0.0188 0.0289 0.0568
θ3 [sm/rad 2 ] −0.0134 −0.0005 0.0128 0.0058 −0.0001
In order to verify the assumptions that θ6  |(θ5 /i − θ4 0.9560 0.9965 1.0027 0.9883 1.0030
θ3 )iu| and θ6 > −(θ5 /i − θ3 )iu, we have ana- θ5 [s/m] −0.0843 0.0026 −0.0015 0.0134 0.0732
lyzed the dynamic parameters of five differential drive θ6 1.0590 1.0768 0.9808 0.9931 0.9981
robots, all obtained via an identification procedure.
J Intell Robot Syst

stability analysis of the whole control system. The respectively; h̃ = [x̃ ỹ]T is the vector of position
controller design is split in two parts, as in [21]. The errors given by hd − h; kx > 0 and ky > 0 are the
first part is based on the inverse kinematics and the controller gains; lx , ly ∈ R are saturation constants;
second one compensates for the robot dynamics. The and a > 0. The tanh terms are included to limit the
application of the proposed model and its properties is values of the desired velocities vd to avoid saturation
shown on the second part. of the robot actuators in case the position errors h̃ are
The control structure is shown in Fig. 2, where too big, considering ḣd is appropriately bounded.
blocks K, D and R represent the Kinematic con- The system characterized so far has a globally
troller, the Dynamic compensation controller, and the asymptotically stable equilibrium at the origin, which
Robot, respectively. Figure 2 shows that the Kine- means that the position errors x̃(t) → 0 and ỹ(t) →
matic controller receives the desired values of position 0 as t → ∞. The reader should refer to [21] for
hd = [xd yd ]T and velocity ḣd from the trajectory details on the development and stability analysis of the
planner (which is not considered in this work). Then, kinematic controller.
based on those values and on the actual robot position
h = [x y]T and orientation ψ, the Kinematic con- 4.2 Adaptive Dynamic Compensation Controller
troller calculates the desired robot velocities vd =
[ud ωd ]T . The desired velocities vd and the actual Now, the use of the proposed dynamic model and
robot velocities v = [u ω]T are fed into the Dynamic its properties is illustrated via the design of an adap-
controller. Such controller uses those values and the tive dynamic compensation controller. It receives the
estimates of the robot parameters θ to generate the desired velocities vd from the kinematic controller and
actual velocity commands vr = [ur ωr ]T that are generates a pair of linear and angular velocity refer-
sent as references to the robot internal controller. ences vr for the robot servos, as shown in Fig. 2. First,
let us define the vector of modified velocities vd as
4.1 Kinematic Controller    
ud i 0 ud
vd = = ,
We use the same kinematic controller that we have ωd 01 ωd
presented in [21]. It is a trajectory tracking controller and the vector of velocity errors is given by
based on the inverse kinematics of the robot. We repeat ṽ = vd − v .
the controller equation here for convenience. Consid- To design the dynamic controller, Eq. 6 is written
ering only the position of the point of interest h = in its linear parametrization form, as
[x y]T , the kinematic control law here adopted is 
u̇ 0 −ω2 u 0 0
v r = G θ = θ, (11)

⎤ 0 ω̇ 0 0 uω ω
  kx
ud cos ψ sin ψ ẋd + lx tanh x̃
= ⎣
lx ⎦ , where the vector of uncertainties was neglected.
ωd − a1 sinψ 1
a cos ψ
ky
ẏd + ly tanh ly ỹ
Regarding parametric uncertainties, the proposed con-
(10) trol law is

vr = Ĥ(v̇d + T(ṽ )) + Ĉvd + F̂vd , (12)


for which vd = [ud ωd is the vector of desired
]T
velocities given by the kinematic controller; h = where Ĥ, Ĉ, and F̂ are estimates of H, C,  and F,
  ku
[x y]T and hd = [xd yd ]T are the vectors of actual l 0 tanh( i ũ)
respectively, T(ṽ ) = u lu , ku > 0
and desired coordinates of the point of interest h, 0 lω tanh( klωω ω̃)
and kω > 0 are gain constants, lu ∈ R and lω ∈ R are
saturation constants, and ω̃ = ωd − ω, ũ = ud − u are
the current velocity errors. The term T(ṽ ) provides
a saturation in order to guarantee that the commands
to be sent to the robot are always below the corre-
sponding physical limits, considering that vd and v̇d
Fig. 2 Structure of the control system are bounded to appropriate values.
J Intell Robot Syst

First, let us assume that there is no parameter esti- where γ −1 ∈ R6×6 is a diagonal positive definite
mation error. Using the Lyapunov candidate function matrix. For now, let us consider that there is no param-
V = 12 ṽT Hṽ > 0, and observing properties 3 and eter changing during the accomplishment of the task,
5, one has V̇ = −ṽT HT(ṽ ) − ṽT Fṽ < 0, which i.e., θ̇ = 0 and θ̂˙ = θ̃˙ .
means that ṽ ∈ L∞ and ṽ → 0 with t → ∞ and, By choosing the updating law as
therefore, ṽ ∈ L∞ and ṽ → 0 with t → ∞.
Regarding the kinematic controller, we have shown θ̂˙ = γ GT ṽ , (18)
in [21] that a sufficient condition for the asymptotic and using property 5 (skew symmetry of C), Eq. 17
stability is results in
Aṽ V̇ = −ṽT Fṽ − ṽT HT(ṽ ) ≤ 0,
h̃ > , (13)
min(kx , ky )
which is semi-definite negative. Hence, it can be con-
 cluded that θ̃ ∈ L∞ , ṽ ∈ L∞ and, therefore, ṽ ∈ L∞ .
cos ψ −a sin ψ
where A = . As ṽ(t)→ 0, the con- By integrating V̇ it results that
sin ψ a cos ψ
dition (13) is asymptotically verified for any value of  T  T
h̃. Consequently, the tracking control error h̃(t)→ 0, V (T ) − V (0) = − ṽT HT(ṽ )dt − ṽT Fṽ dt.
0 0
thus accomplishing the control objective.
To continue to illustrate the application of the pro- If the term V (T ) is dropped, the previous equation
posed model and its properties, let us consider the case can be written as the inequality
in which the dynamic parameters are not correctly  T  ∞
 2 V (0) − α V (0) − α
ṽ  dt ≤
2
identified, or they change from task to task. In such a ṽ  dt ≤ ⇒ ,
0 λ min (F) 0 λmin (F)
case, an updating control law is designed. To do so, let
(19)
us rewrite the control law in its linear parametrization  ∞ T
where α = 0 ṽ HT(ṽ )dt. 
format
 The above inequality is valid for any value of T .
σ1 0 −ωd ω ud 0 0 Thus, it can be concluded that ṽ is a square integrable
vr = Gθ̂ = θ̂ ,
0 σ2 (iud ω − iuωd ) 0 uωd ωd signal, i.e., ṽ ∈ L2 , and hence ṽ ∈ L2 . Assuming that
(14) vd is bounded, as ṽ = vd − v and ṽ is bounded, one
can conclude that v is also bounded. Thus, C(v) and
where σ1 = u̇d + lu tanh( kluu ũ), σ2 = ω̇d + F(v) are bounded. Considering that v̇d is bounded it
lω tanh( klωω ω̃). By defining the vector of parametric can be concluded that G is also bounded. Property 4
errors θ̃ = θ̂ − θ , where θ̂ is the vector of parameter states that H is constant, and it is known that θ̃ , ṽ and
estimates, Eq. 14 can be written as vr = Gθ + Gθ̃ , or T(ṽ ) are bounded. So, from Eq. 16 it can be noticed
that ṽ˙  is bounded, i.e., ṽ˙  ∈ L∞ . As ṽ˙  ∈ L∞ and ṽ ∈
vr = Hσ + Cvd + Fvd + Gθ̃ , (15) L2 , Barbalat lemma guarantees that ṽ (t) → 0 with
t → ∞. Therefore, ṽ(t) → 0 with t → ∞, which
where σ = v̇d + T(ṽ ). By recalling that ṽ = vd − v , proves that the control objective is accomplished.

one can conclude that v̇d = ṽ˙  + v̇ . Then, σ = ṽ˙ + The parameter updating law (18) works as an inte-
T(ṽ ) + v̇ . Substituting this term in Eq. 15, the closed grator and can cause robustness problems in case of
loop equation is measurement errors, noise or disturbances. A possible
way of preventing parameter drifting is to turn param-
−Gθ̃ = H(ṽ˙  + T(ṽ )) + Cṽ + Fṽ . (16)
eter updating off when the error value is smaller than
T a certain bound, as illustrated in [20]. Another known
Let us consider V = 12 ṽT Hṽ + 12 θ̃ γ −1 θ̃ > 0
way of preventing parameter drifting is to change
as the Lyapunov candidate function. Using Eq. 16, it
the parameter updating law by introducing a Leakage
results that
term, or a σ -modification [4, 15]. By including such
V̇ = −ṽT (Gθ̃ + Cṽ + Fṽ )− ṽT HT(ṽ ) + θ̃ γ −1 θ̃˙ .
T term, the robust updating law

(17) θ̂˙ = γ GT ṽ − γ


θ̂ (20)
J Intell Robot Syst

is obtained, where  ∈ R6×6 is a diagonal positive is represented by a sequence of desired positions hd


gain matrix. and velocities ḣd , both varying in time.
By using the same Lyapunov function as before, The following parameters were used in all simula-
and applying a technique similar to the one we have tions: fixed sample time of 0.1 s (this is the sample
presented in [21], it is possible to show that the stabil- time of the Pioneer 3-DX); controller gains kx = 0.1,
ity of the equilibrium is guaranteed if the disturbance ky = 0.1, ku = 4, kw = 4; saturation constants
is limited. Finally, it is also possible to prove that the lx = 0.1, ly = 0.1, lu = 1, lw = 1; adapta-
tracking error h̃ is ultimately bounded. tion gains γ = diag(1.7, 1.1, 0.5, 0.3, 0.01, 0.5);
Because we cannot guarantee that the control sig- and sigma modification Γ = diag(0.0005, 0.001,
nals are sufficiently rich, it should be pointed out that 0.001, 0.00006, 0.001, 0.001).
the proposed controller does not guarantee that θ̃ → 0 Figure 3a and b show the path followed by the robot
when t → ∞. In other words, parameter estimates and the evolution of the distance error during the first
might converge to values that do not correspond to simulation. The distance error is defined as the instan-
the physical parameters. Actually, this does not repre- taneous distance between the reference position hd
sent a problem because it is not required that θ̃ → 0 in and the robot position h. It can be noticed that the dis-
order to make ṽ converge to a bounded value. tance error starts in 0.2 m, as expected, and decreases
This concludes our example of application of the to zero as the simulation progresses. The trajectory to
proposed model and its properties on the design and be followed by the robot is shown in Fig. 4a in the
stability analysis of a dynamic compensation con- form of desired positions along time, decomposed in
troller. X and Y axes. The same figure also presents the actual
X and Y values of the robot position. One should
notice that the desired X and Y positions vary in time,
5 Results and Discussion which forces the robot to change its linear and angu-
lar velocities along the path as illustrated in Fig. 4b.
To illustrate the application and relevance of the Because the robot dynamics is neglected in this case,
dynamic model, we are going to compare the simu- a perfect velocity tracking is implicitly assumed, i.e.,
lation results of four cases. In the first case, only the vd = v. Therefore, in Fig. 4b is not possible to see
robot kinematic model is considered and the robot is the difference between reference and actual veloci-
directly controlled by the kinematic controller. This ties. This is reflected in the evolution of the distance
is the classical situation in which the dynamics of error, which remains equal to zero while the robot is
the mobile robot is not considered in the simulation. following the trajectory.
In the other cases, the complete dynamic model of The perfect velocity tracking assumption does not
the Pioneer 3-DX with LASER is considered, includ- result in significant errors in some cases. But, in other
ing speed and acceleration limitations. In the second situations the consideration of the dynamic model is
simulation, only the kinematic controller is used. In very important. To illustrate this, in the second sim-
the third and fourth simulations, the adaptive dynamic ulation we include the dynamic model into the same
compensation controller is also used. The difference system and repeat the experiment using the same kine-
is that in the third simulation the parameter estimates matic controller as in the first simulation. Now, the
are exactly equal to the robot parameters (ideal case), desired velocities generated by the kinematic con-
while the fourth simulation deals with the more real- troller are sent to the robot model that includes its
istic case in which the initial parameter estimates are dynamics (vd = vr ).
different from the robot parameters. Figure 5a and b show the path followed by the robot
We used MATLAB/Simulink to implement the and the evolution of the distance error during the sec-
control structure shown on Fig. 2 using the control ond simulation. One should immediately notice the
laws given by Eqs. 10 and 12, with the robust updating difference in performance when compared to the first
law given by Eq. 20. In all simulations the robot starts simulation. Now, the distance error does not decrease
at position (0.2, 0.0) m with orientation 0 degrees, to zero as the simulation progresses. Instead, it oscil-
and should follow an 8-shape trajectory starting at lates around 0.1 m and the path followed by the robot
(0.0, 0.0) m. The trajectory to be followed by the robot is distorted. Figure 6a shows the desired and actual X
J Intell Robot Syst

Robot Path Distance Error


0.5 0.8
Reference
Actual
0.7
0

0.6
-0.5
0.5

error [m]
y [m]

-1 0.4

0.3
-1.5

0.2

-2
0.1

-2.5 0
-2 -1 0 1 2 0 20 40 60 80 100 120 140 160 180 200
x [m] time [s]

(a) (b)
Fig. 3 Kinematic controller and kinematic model only: a Robot path; b Evolution of distance error

and Y positions, where it can be seen that the robot is The results of the first and second simulations
always behind the desired position. Figure 6b presents illustrate that considering the dynamic model is very
the reference and actual values of linear and angular important for the evaluation of controller performance
velocities. Now, it is clear that the actual robot veloci- under simulation. If we were to tune the controller
ties are not exactly equal to the desired ones generated based on the first simulation, the real world per-
by the kinematic controller. This is the reason why formance of the kinematic controller could be non
the tracking error never drops to zero and the path satisfactory. It is important to mention that an increase
followed by the robot is not equal to the desired one. in controller gains kx and ky would result in better

Desired and actual positions on X and Y axes Reference


x
d
Linear Velocity
0.6 Actual
x
1
0.4
u [m/s]
x [m]

0
0.2
-1
0
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]
y Angular Velocity Reference
d
y 2 Actual
0
1
[rad/s]
y [m]

-1 0

-1
-2
-2
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]

(a) (b)
Fig. 4 Kinematic controller and kinematic model only: a desired and actual positions; b linear and angular velocities
J Intell Robot Syst

Robot Path Distance Error


0.5 0.8
Reference
Actual 0.7
0

0.6

-0.5
0.5

error [m]
y [m]

-1 0.4

0.3
-1.5

0.2

-2
0.1

-2.5 0
-2 -1 0 1 2 0 20 40 60 80 100 120 140 160 180 200
x [m] time [s]

(a) (b)
Fig. 5 Kinematic controller and dynamic model: a Robot path; b Evolution of distance error

performance (smaller tracking error). Nevertheless, Figure 7a and b show the path followed by the robot
we kept the same values of controller gains during all and the evolution of the distance error, while Fig. 8a
four simulations to be able to compare the results. and b show the desired and actual X and Y posi-
Now, let us analyze the system performance with tions, and the robot linear and angular velocities,
the addition of the dynamic compensation controller. respectively, during the third simulation. By compar-
In this third simulation, we use the exact values of ing this results with the ones from the first simulation
the robot parameters as estimates on the dynamic (Figs. 3a, b, 4a and b) it can be seen that the sys-
controller (ideal case of dynamic compensation). tem performance is very similar. This means that the

Desired and actual positions on X and Y axes Reference


x
d Linear Velocity
0.6 Actual
x
1
0.4
u [m/s]
x [m]

0
0.2
-1
0
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]
yd Angular Velocity Reference
y 2 Actual
0
1
[rad/s]
y [m]

-1 0

-1
-2
-2
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]

(a) (b)
Fig. 6 Kinematic controller and dynamic model: a desired and actual positions; b linear and angular velocities
J Intell Robot Syst

Distance Error
0.8
Robot Path
0.5
Reference 0.7
Actual
0 0.6

-0.5 0.5

error [m]
0.4
y [m]

-1

0.3
-1.5
0.2

-2
0.1

-2.5 0
-2 -1 0 1 2 0 20 40 60 80 100 120 140 160 180 200
x [m] time [s]

(a) (b)
Fig. 7 Perfect dynamic compensation: a Robot path; b Evolution of distance error

dynamic compensation controller is able to cancel out we have included white noise in the values of position
the effects of the robot dynamics almost perfectly. and velocities that are fed back to the controllers.
The cancellation of the dynamic effects is not perfect The fourth simulation repeats the third one with
because, in order to have a more realistic simulation, the same conditions, except that the initial parameter

Desired and actual positions on X and Y axes xd Reference


Linear Velocity
x 0.6 Actual

1
0.4
u [m/s]
x [m]

0
0.2
-1
0
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]
yd Angular Velocity Reference
y 2 Actual
0
1
[rad/s]
y [m]

-1 0

-1
-2
-2
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]

(a) (b)
Fig. 8 Perfect dynamic compensation: a desired and actual positions; b linear and angular velocities
J Intell Robot Syst

Before Parameter Updating After Parameter Updating Distance Error


0.5 0.5 0.8
Reference Reference
Actual Actual 0.7
0 0

0.6 Parameter updating starts here


-0.5 -0.5
0.5

error [m]
y [m]

y [m]
-1 -1 0.4

0.3
-1.5 -1.5

0.2

-2 -2
0.1

-2.5 -2.5 0
-2 -1 0 1 2 -2 -1 0 1 2 0 20 40 60 80 100 120 140 160 180 200
x [m] x [m] time [s]

(a) (b)
Fig. 9 Adaptive dynamic compensation: a Robot path before and after parameter updating; b Evolution of distance error

estimates used in the controller were different from activation, and the evolution of the distance error
the real robot parameters (about 30 % difference). The during the simulation. Notice that the distance error
initial values of parameter estimates used in the fourth oscillates around 0.2 m until the activation of the
simulation are: θ̂ = [0.1736 0.1673 −0.0003 0.6643 parameter updating at t = 100 s. Then, the error is
0.0018 0.7179]. The simulation begins with no param- reduced, reaching a value smaller than 0.05 m at t =
eter updating, which starts only at t = 100 s and 200 s. Figure 10a and b present the evolution of the
remains active until the simulation stops. the desired and actual X and Y positions, and the robot
Figure 9a and b illustrate, respectively, the linear and angular velocities, respectively. Notice the
robot path before and after the parameter updating reduction in velocity error after the start of parameter

Desired and actual positions on X and Y axes xd Reference


Linear Velocity
0.6 Actual
x
1
0.4
u [m/s]
x [m]

0
0.2
-1
0
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
Parameter updating starts here time [s] Parameter updating starts here time [s]
yd Angular Velocity Reference
y 2 Actual
0
1
[rad/s]
y [m]

-1 0

-1
-2
-2
0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
time [s] time [s]

(a) (b)
Fig. 10 Adaptive dynamic compensation: a desired and actual positions; b linear and angular velocities
J Intell Robot Syst

updating. All figures clearly show a change in per- cases. For the case (a), it can be seen from Fig. 11
formance after the start of parameter update, which that the I AE value is higher than 8 for kx = ky =
indicates the importance of considering the dynamic 1, and gets smaller as the value of the controller
model in the design of robot motion controllers. gains increases. For this case, better performance is
We have also evaluated the system performance for obtained when kx = ky = 23, when I AE reaches
different values of controller gains kx and ky . To do its minimum value of 1.24. The same simulations
that, several T = 250 s simulations were executed, in were repeated for the cases (b), (c), and (d) with the
which the robot should follow an 8-shape trajectory. adaptive dynamic compensation activated. Figure 11
For each simulation we calculted  T the I AE perfor- shows that the inclusion of the adaptive compensation
mance index, where I AE = 0 |E(t)|dt, E(t) = controller results on smaller I AE values, thus improv-

x̃ 2 + ỹ 2 is the instantaneous distance error, and T ing system performance for any value of kx = ky .
is the simulation period. In each simulation, the kine- As expected, the error is smaller for the ideal case
matic controller gains (kx = ky ) were set to different (d), which illustrates the importance of the considera-
values ranging from 0.5 to 35, while all of the dynamic tion of the dynamic model on the design of the robot
compensation controller gains were kept constant. controller. Even under the unfavorable conditions cor-
Simulations were performed for the following cases: respondent to cases (b) and (c), the resulting I AE
values are smaller when the dynamic compensation
(a) only the kinematic controller was enabled, i.e., controller is activated.
the robot receives the reference velocities vd Finally, we have also tested the controllers on a real
directly from the kinematic controller; robot, namely a Pioneer 3-DX robot, using the control
(b) the dynamic compensation was activated with laws in Eqs. 10 and 12, with the robust updating law
wrong parameter estimates (10 %) and parameter given in Eq. 20. The experiment was executed under
updating was disabled; similar conditions that were used in the fourth simula-
(c) the dynamic compensation was activated start- tion: the robot starts at (0.2, 0.0) m, and should follow
ing with wrong parameter estimates (10 %) and an 8-shape trajectory starting at (0.0, 0.0) m. Its linear
parameter updating was enabled since t = 0 s; and velocity varies from 0.2 m/s to 0.4 m/s, and its angu-
(d) the dynamic compensation was activated with lar velocity varies from −0.8 rad/s to 0.8 rad/s. The
exact parameter estimates (ideal case) without initial parameter estimates used in the controller were
parameter updating. different from the real robot parameters of about 20 %.
Figure 11 shows the I AE values obtained via sev- The experiment begins with no parameter updating,
eral simulations for each of the above mentioned which, in this case, starts at t = 30 s. Robot trajectory
was recovered through its odometry. The effectiveness
of the adaptive controller was evaluated by calculat-
IAE ing the value of I AE for a period of 15 s before
10 and after parameter updating. Between t = 15 s and
(a) t = 30 s the value of I AE was 14.38. On the other
8 hand, the value of I AE calculated between t = 45 s
(b) and t = 60 s, 15 s after the activation of parameter
6
updating, was 6.55, about 50 % smaller. The exper-
(c) iment was repeated under the same conditions, but
4
using only the kinematic controller (10). For this case,
2 the value of I AE calculated between t = 45 s and
t = 60 s was 9.06. This result reinforces the effective-
0 ness of the use of our proposed dynamic model in the
0 10 20 30 40
(d) design of a dynamic compensation scheme when com-
k ,k
x y
pared to control systems that consider only the robot
Fig. 11 I AE for 250 s simulations for the cases (a-d) (see text) kinematic model.
J Intell Robot Syst

6 Conclusion Acknowledgments The authors thank CAPES (Brazil) and


SPU (Argentina) for funding the partnership between the Fed-
eral University of Espirito Santo (UFES), Brazil, the National
We have presented a formulation and the mathemat-
University of San Juan (UNSJ) and CONICET, Argentina. They
ical properties of a velocity-based dynamic model, also thank the Federal Institute of Education, Science and Tech-
which are useful on the design and stability analysis of nology of Espirito Santo (IFES) for the financial support to the
mobile robot controllers. Regarding the model prop- English revision of this text.
erties, it is interesting to notice that (Ḣ − 2C) is skew
symmetric because H is constant (hence Ḣ = 0), and
C is skew symmetric. Also, the mathematical structure References
we propose (6) is similar to the classical torque-based
model that describes the dynamics of mobile robots 1. Andaluz, V.H., Canseco, P., Varela, J., Ortiz, J.S., Pérez,
M.G., Roberti, F., Carelli, R.: Robust control with dynamic
and manipulators. Therefore, existent strategies for
compensation for human-wheelchair system. In: Intelligent
torque-based controller design [12–14, 18, 29] can be Robotics and Applications, pp. 376–389. Springer (2014)
adapted to design controllers for mobile robots using 2. Antonini, P., Ippoliti, G., Longhi, S.: Learning control of
the proposed model. mobile robots using a multiprocessor system. Control. Eng.
Pract. (14):1279–1295 (2006)
As any other dynamic model, our model provides
3. Birk, A., Kenn, H.: Roboguard, a teleoperated mobile secu-
more accurate simulation results when compared with rity robot. Control. Eng. Pract. 10(11), 1259-1264 (2002)
models that are based only on the kinematics of the 4. Boyd, S., Sastry, S.: Adaptive control: stability, conver-
robot. Therefore, it can be used to obtain more realistic gence, and robustness. Prentice Hall, USA (1989)
5. Chen, C., Li, T., Yeh, Y., Chang, C.: Design and imple-
results on controller tuning under simulation, provid-
mentation of an adaptive sliding-mode dynamic controller
ing a more precise evaluation of real robot behaviour. for wheeled mobile robots. Mechatronics 19(2), 156–166
Moreover, it can be easily integrated into simulation (2009)
models that have been built for the differential-drive 6. Corke, P.: Robotics, Vision and Control: Fundamental
kinematics, as we shown in Section 5. For example, Algorithms in MATLAB, vol. 73. Springer, Berlin (2011)
7. Das, T., Kar, I.: Design and implementation of an adap-
our model can be used in connection with kinematic tive fuzzy logic-based controller for wheeled mobile robots.
controllers that were designed for commercial mobile IEEE Trans. Control Syst. Technol. 14(3), 501–510 (2006)
robots, like the Pioneer robots from Adept-Mobile 8. De La Cruz, C., Carelli, R.: Dynamic model based forma-
Robots, the robuLAB-10 from Robosoft Inc. and the tion control and obstacle avoidance of multi-robot systems.
Robotica 26(03), 345–356 (2008)
Khepera robots from K-Team Corporation. This inte- 9. De La Cruz, C., Celeste, W., Bastos-Filho, T.: A robust nav-
gration requires no change on the original controller igation system for robotic wheelchairs. Control. Eng. Pract.
equations since it accepts the same velocity commands 19(6), 575–590 (2011)
as commercial robots. To illustrate this concept, we 10. Do, K.: Bounded controllers for global path tracking con-
trol of unicycle-type mobile robots. Robot. Auton. Syst.
have built simulation blocks for MATLAB/Simulink 61(8), 775-784 (2013)
which include the differential-drive kinematics and 11. Fierro, R., Lewis, F.L.: Control of a nonholonomic mobile
dynamics, a kinematic controller and two adaptive robot: Backstepping kinematics into dynamics. J. Robot.
dynamic compensation controllers. The simulation Syst. 14(3), 149–163 (1997)
12. He, W., Chen, Y., Yin, Z.: Adaptive neural network
blocks are ready-to-use and are available for down- control of an uncertain robot with full-state constraints.
load [19]. The kinematic and dynamic model blocks IEEE Trans. Syst. Man Cybern. Syst. 46(3), 620–629
were also included in version 9.10 of Peter Corke’s (2015)
Robotics Toolbox for MATLAB [6]. 13. He, W., David, A.O., Yin, Z., Sun, C.: Neural network
control of a robotic manipulator with input deadzone and
To sum up, we have proposed a new approach to output constraint. IEEE Trans. Cybern. PP(99), 759–770
write the velocity-based dynamic model for differen- (2015)
tial drive mobile robots. We have also presented the 14. He, W., Dong, Y., Sun, C.: Adaptive neural impedance
study of its mathematical properties and the design control of a robotic manipulator with input saturation.
IEEE Trans. Syst. Man Cybern. Syst. 46(3), 334–344
of an adaptive dynamic compensation controller as an (2015)
example application. Those are the main contributions 15. Kaufman, H., Sobel, K.: Direct Adaptive Control Algo-
of the present paper. rithms: Theory and Applications, pp. 182–184 (1998)
J Intell Robot Syst

16. Lapierre, L., Zapata, R., Lepinay, P.: Combined path- 32. Wang, K.: Near-optimal Tracking Control of a Nonholo-
following and obstacle avoidance control of a wheeled nomic Mobile Robot with Uncertainties. Int. J. Adv. Robot.
robot. Int. J. Robot. Res. 26(4), 361–375 (2007) Syst. 9, 66 (2012). 10.5772/51189
17. Laut, J.: A dynamic parameter identification method
for migrating control strategies between heterogeneous
wheeled mobile robots. Ph.D. thesis, Worcester Polytechnic Felipe Nascimento Martins received his PhD (2009), MSc
Institute (2011) (2003) and BSc (1999) degrees in Electrical Engineering from
18. Lewis, F.L., Dawson, D.M., Abdallah, C.T.: Robot Manipu- the Federal University of Espirito Santo (UFES), Brazil. He is
lator Control: Theory and Practice. CRC Press, Boca Raton assistant professor at the Federal Institute of Education, Science
(2003) and Technology of Espirito Santo (IFES), Brazil, where he is
19. Martins, F.: Velocity-based dynamic model and adaptive also a founding member of NERA (a research group on robotics
controller for differential steered mobile robot. Available and automation). His research interests include control, sensors
at http://www.mathworks.com/matlabcentral/fileexchange/ and computer vision applied to robotics. He also works with
44850 (2013) educational robotics and was member of organizing committees
20. Martins, F., Celeste, W., Carelli, R., Sarcinelli-Filho, M., of several robotics competitions, such as RoboCup Junior, CBR,
Bastos-Filho, T.: Kinematic and adaptive dynamic trajec- OBR and LARC. He was honored five times by Engineering
tory tracking controller for mobile robots. In: 3rd Inter- graduation classes, and received awards for Best Participation at
national Conference on Advances in Vehicle Control and VISUM 2015 and Third Best Paper at the WRE/LARS, 2012.
Safety - AVCS07. Buenos Aires, Argentina (2007)
21. Martins, F., Celeste, W., Carelli, R., Sarcinelli-
Filho, M., Bastos-Filho, T.: An adaptive dynamic
controller for autonomous mobile robot trajectory
tracking. Control Eng. Pract. 16, 1354–1363 (2008).
doi:10.1016/j.conengprac.2008.03.004 Mário Sarcinelli-Filho, received the B.S. degree in Electrical
22. Morin, P., Samson, C.: Motion control of wheeled mobile Engineering from Federal University of Espı́rito Santo, Brazil,
robots. In: Springer Handbook of Robotics, pp. 799–826. in 1979, and the M. Sc. and Ph. D. degrees, both in Electrical
Springer (2008) Engineering, from Federal University of Rio de Janeiro, Brazil,
23. Onat, A., Ozkan, M.: Dynamic adaptive trajectory track- in 1983 and 1990, respectively. He is currently a professor at
ing control of nonholonomic mobile robots using multiple the Department of Electrical Engineering, Federal University of
models approach. Adv. Robot. 29(14), 913–928 (2015) Esprito Santo, Brazil, and a researcher of the Brazilian National
24. Prassler, E., Ritter, A., Schaeffer, C., Fiorini, P.: A short Council for Scientific and Technological Development (CNPq).
history of cleaning robots. Auton. Robot. 9(3), 211–226 His research interests are signal and image processing, control
(2000) of unmanned aerial vehicles, including formations of unmanned
25. Rossomando, F.G., Soria, C., Carelli, R.: Adaptive neural aerial vehicles, coordinated control of mobile robots, mobile
sliding mode compensator for a class of nonlinear sys- robot navigation, and sensing systems. Dr. Sarcinelli-Filho has
tems with unmodeled uncertainties. Eng. Appl. Artif. Intell. co-authored 14 book chapters, more 50 than journal papers and
26(10), 2251–2259 (2013) more than 300 conference papers, as well as advised 17 PhD
26. Schaft, A.J.v.d.: L2-Gain and Passivity Techniques in Non- and 19 Master students.
linear Control. Springer, Berlin (1999)
27. Shojaei, K., Mohammad Shahri, A., Tarakameh, A.: Adap-
tive feedback linearizing control of nonholonomic wheeled
mobile robots in presence of parametric and nonparametric
uncertainties. Robot. Comput. Integr. Manuf. 27(1), 194– Ricardo O. Carelli, was born in San Juan, Argentina in 1952.
204 (2011) He graduated in electrical engineering from the National Uni-
28. Siegwart, R., Nourbakhsh, I., Scaramuzza, D.: Introduc- versity of San Juan, Argentina, and received the Ph.D degree
tion to Autonomous Mobile Robots, 2nd edn. MIT Press, in electrical engineering from the National University of Mex-
Cambridge (2011) ico (UNAM). He is currently full Professor at the National
29. Spong, M.W., Hutchinson, S., Vidyasagar, M.: Robot Mod- University of San Juan and Senior Researcher (Investigador
eling and Control, vol. 3. Wiley, New York (2006) Principal) of the National Council for Scientific and Technical
30. Stouten, B., de Graaf, A.: Cooperative transportation of a Research (CONICET, Argentina). He is Director of the Instituto
large object-development of an industrial application. In: de Automática, National University of San Juan. He also coor-
IEEE International Conference on Robotics and Automa- dinates the PhD and Master Programs in Control Engineering
tion, vol. 3, pp. 2450–2455 (2004) at the same university. His research interests are robotics, man-
31. Utstumo, T., Berge, T.W., Gravdahl, J.T.: Non-linear model ufacturing systems, adaptive control and artificial intelligence
predictive control for constrained robot navigation in row applied to automatic control. Prof. Carelli is senior member of
crops. In: IEEE International Conference on Industrial IEEE and member of the Argentine Association of Automatic
Technology (ICIT 2015) (2015) Control (AADECA-IFAC).

You might also like