Post on 24-Jan-2023
ARTICLE IN PRESS
0925-2312/$ - se
doi:10.1016/j.ne
�CorrespondE-mail addr
Neurocomputing 69 (2006) 2140–2151
www.elsevier.com/locate/neucom
Simple neuron-based adaptive controller for a nonholonomicmobile robot including actuator dynamics
Tamoghna Das, I.N. Kar�, S. Chaudhury
Department of Electrical Engineering, Indian Institute of Technology, Delhi, New Delhi 110016, India
Received 19 February 2005; received in revised form 7 September 2005; accepted 16 September 2005
Available online 15 February 2006
Abstract
In this paper, a simple neuron-based adaptive controller for trajectory tracking is developed for nonholonomic mobile robots without
velocity measurements. The controller is based on structural knowledge of the dynamics of the robot and the odometric calculation of
robot position only. The wheel actuator dynamics is also taken into account. An approximation network approximates a nonlinear
function involving robot dynamic parameters so that no knowledge of those parameters is required. The proposed controller is robust
not only to structured uncertainty such as mass variation but also to unstructured one such as disturbances. The real-time control of
mobile robot is achieved through the online learning of the approximation network. The system stability and the boundness of tracking
errors are proved using Lyapunov stability theory. Computer simulations with circular as well as square reference trajectories are
presented that confirm the simplicity and effectiveness of the proposed tracking control law. The efficacy of the proposed control law is
tested experimentally on a differentially driven mobile robot. Both simulation and experimental results are described in detail.
r 2006 Elsevier B.V. All rights reserved.
Keywords: Adaptive control; Actuators; Mobile robots; Stability; Tracking; Uncertainty
1. Introduction
Wheeled mobile robots (WMRs) have been usedextensively in various industrial and service applications.The applications include security, transportation, inspec-tion and planetary exploration etc. These applicationsdemand WMRs with various mobility configurations(wheel number and type, their location and actuation,single or multibody vehicle structure). A detailed analyticalstudy of the structure of the kinematic and dynamic modelsof WMRs can be found in [4]. WMRs constitute a class ofmechanical systems called nonholonomic mechanicalsystems [13,3] characterized by kinematic constraints thatare not integrable and cannot therefore be eliminated fromthe model equations. Nonholonomic behavior in roboticsystems is particularly interesting, because it implies thatthe mechanism can be completely controlled with reducednumber of actuators. The tools for analyzing and control-
e front matter r 2006 Elsevier B.V. All rights reserved.
ucom.2005.09.013
ing author. Tel.: +9111 26591093; fax: +91 11 26581264.
ess: ink@ee.iitd.ernet.in (I.N. Kar).
ling nonholonomic mechanical systems based on knownmathematical model are presented in [5]. Using Lagrangeformalism and differential geometry, a general dynamicalmodel can be derived for mobile robots with nonholonomicconstraints [1,5].In the trajectory tracking problem, the WMR is to
follow a prespecified trajectory. Using the kinematic modelof WMRs the trajectory tracking problem was solved in[11]. Both the local and global tracking problem withexponential convergence have been solved theoreticallyusing time varying state feedback based on the back-stepping technique by Jiang et al. [15]. Using a kinematicmodel of mobile robots in polar coordinates, Weiguo et al.[18] have developed a stabilization scheme using back-stepping technique. Dynamic feedback linearization hasbeen used in [14] for trajectory tracking and posturestabilization of mobile robot system in chained form.The trajectory tracking algorithm presented in the
above-mentioned papers share a common idea of definingvelocity control inputs which stabilize the closed loopsystem. All these controllers consider only the kinematic
ARTICLE IN PRESST. Das et al. / Neurocomputing 69 (2006) 2140–2151 2141
model (e.g. steering system) of the mobile robot, and‘perfect velocity tracking’ is assumed to generate the actualvelocity control inputs. From real-time point of view, thenonholonomic kinematic controller is to be integrated withdynamics of mobile robot as ‘perfect velocity tracking’assumption may not hold good in practice [7]. In Ref. [6]Fierro and Lewis presented a dynamical extension thatmakes possible the integration of a kinematic controllerand a torque controller. First, feedback velocity controlinputs are calculated for the kinematic steering system tomake the position error asymptotically stable. Then acomputed torque controller is designed such that themobile robot’s velocities converge asymptotically to thecalculated velocity inputs. Various nonlinear controltechniques have also been used by many researchersconsidering the system disturbances and unknown dynamicparameters. Sliding mode motion control technique [19],robust adaptive control technique [12], adaptive controltechnique [8] have been used to solve the tracking controlproblem for WMRs. In [16] adaptive controls are derivedfor mobile robots, using backstepping technique, for thetracking of a reference trajectory and stabilization to afixed posture.
Neural networks are considered as an effective tool fornonlinear controller design. Neural networks offer excitingadvantages such as adaptive learning, fault tolerance andgeneralization. Fierro and Lewis [7] developed an artificialneural network-based controller by combining the feed-back velocity control technique and torque controller,using a multi-layer feed forward neural network. But thecontroller structure and the neural network-learningalgorithm are very complicated and it is computationallyexpensive. In [10] and [9] single layer neural network-basedcontroller is proposed for real-time fine control of mobilerobots. The above approaches can learn the dynamics ofthe mobile robot by its on-line learning algorithm. But theeffectiveness of these approaches is shown only bysimulation results without any experimental verification.
In most of the research works for controlling WMRs,wheel torques are control inputs though in reality wheelsare driven by actuators (e.g. DC motors) and thereforeusing actuator input voltages as control inputs is morerealistic. To this effect, actuator dynamics is combined withthe mobile robot dynamics. The contribution of the presentpaper is the utilization of a simple approximation networkfor estimating the nonlinear robot functions involvingunknown robot parameters. In most robust controlalgorithms, it is assumed that wheel velocities are available.However, it may not be always possible to measurevelocities, or it may not even be desirable to do it. Froma practical viewpoint, the velocity measurements, suppliedby the tachometers, are easily perturbed by noises and arenot directly available for the design of controller. Alsocosts are increased when more sensors are used. However,if velocity measurements are not available, they arereplaced by numerical derivatives of the measured position.That may lead to chattering of the control inputs due to
combined effect of noisy measurements and unmodelledphenomena, such as friction and elasticity. To avoid thisundesirable behavior, we have designed a control algorithmwith only wheel angular position as the required input.Also, in case of faulty behavior of real velocity sensorsattached to the wheels, a fault tolerant control of themobile robot can be achieved with the control algorithmdesigned here. The novelty of the approach presented herecan be understood by considering the following points: (i)the wheel actuator (e.g. DC motor) dynamics is integratedwith mobile robot dynamics and kinematics so that theactuator input voltages are the control inputs thus makingthe system more realistic, (ii) the control structure assumesno wheel velocity measurements, and (iii) an approxima-tion network approximates a nonlinear function of robotparameters so that no knowledge of those parameters isrequired. The proposed controller is robust to structureduncertainty as well as bounded unknown disturbancesincluding unstructured unmodelled dynamics. Also, thecontrol law proposed here is less computationally expen-sive than the MLP-based control algorithm presented in[7]. Simulation results are to this effect. The convergence oferror signals and other closed loop signals is shown to bebounded using Lyapunov Stability Theory [17]. Simulationand experimental results are described in detail that showsthe effectiveness of the proposed control law. Detailedprocedure of how to implement the control law in real timehas been demonstrated.The paper is organized as follows. Section 2 presents
the mobile robot model as well as the actuator dynamicmodel and its main properties. Tracking problem definitionand controller design details are described in Section 3.Section 4 presents the stability analysis of the proposedcontroller. Simulation and experimental results of theproposed controller with a mobile robot system are givenin Sections 5 and 6, respectively, followed by conclusion inSection 7.
2. Preliminaries
2.1. Model of a nonholonomic mobile robot
The mobile robot shown in Fig. 1 consists of a vehiclewith two driving wheels mounted on the same axis and apassive self-adjusted supporting wheel, which carries themechanical structure. The two driving wheels are indepen-dently driven two actuators (e.g. DC motors) for themotion and orientation. Both wheels have the same radiusdenoted by r. Two driving wheels are separated by 2R. It isassumed that the mobile robot under study is made up of arigid frame equipped with nondeformable wheels and thatthey are moving in a horizontal plane. Center of mass ofthe mobile robot is located at C; point P is located in theintersection of straight line passing through the middle ofthe vehicle and a section which is an axis of the two wheels.Distance between points P and C is denoted by d. The poseof the robot in the global coordinate frame fO;X ;Y g is
ARTICLE IN PRESS
Y
O 2r
CDrivingwheels
d
X C
Yc
2r
2R
C
Passive self adjusted supportingWheel
d
X
Fig. 1. Nonholonomic mobile robot.
T. Das et al. / Neurocomputing 69 (2006) 2140–21512142
completely specified by the vector P ¼ ½xc yc y�T, wherexc; yc are the coordinates of the point C in the globalcoordinate frame and y is the orientation of the local framefC;X c;Y cg attached on the robot platform measured fromX-axis.
Three generalized coordinates can describe the config-uration of the robot
q ¼ ½xc yc y�T. (1)
Generally, a nonholonomic mobile robot system having ann-dimensional configuration space with n generalizedconfiguration variables ðq1; . . . ; qnÞ and subject to m
constraints can be described by [7]
MðqÞ€qþ Vmðq; _qÞ_qþ sd ¼ BðqÞs� AðqÞk, (2)
where MðqÞ 2 Rnxn is a symmetric positive definite inertiamatrix, Vmðq; _qÞ 2 Rnxn is the centripetal and coriolismatrix, sd 2 Rn�1 denotes bounded unknown disturbancesincluding unstructured unmodelled dynamics, BðqÞ 2 Rn�r
is the input transformation matrix, s 2 Rr�1 is the inputvector, AðqÞ 2 Rn�m is the matrix associated with theconstraints and k 2 Rm�1 is the vector of constraint forces.Several properties of the dynamic equation (Eq. (2)) can beobtained as follows [6]:
P1. The inertia matrix MðqÞ is symmetric and positivedefinite.
P2. Skew symmetry: The matrix ð _M � 2VmÞ is skewsymmetric resulting in the following characteristic, xTð _M �2VmÞx ¼ 0 for all x 2 Rn.
All kinematic constraints are independent of time, andcan be expressed as
ATðqÞ_q ¼ 0. (3)
Let, SðqÞ be a full rank matrix ðn�mÞ formed by a set ofsmooth and linearly independent vector fields spanning thenull space of AT
ðqÞ i.e.
STðqÞAðqÞ ¼ 0. (4)
From (3) and (4), it is possible to find an auxiliary velocityvector time function vðtÞ 2 Rn�k such that for all t [7,5]
_q ¼ SðqÞvðtÞ. (5)
2.2. Kinematics and dynamics of a mobile platform
For the mobile robot system considered here, the purerolling and nonslipping nonholonomic condition statesthat the robot can only move in the direction normal to theaxis of the driving wheels [20,13]. Therefore, the compo-nent of the velocity of the contact point with the ground,orthogonal to the plane of the wheel is zero [2], i.e.
_yc cos y� _xc sin y� d_y ¼ 0. (6)
Thus the constraint matrix in (3) for a mobile robot is givenby
ATðqÞ ¼ ½� sin y cos y � d�. (7)
Therefore, matrix SðqÞ is given by
SðqÞ ¼
cos y �d sin y
sin y d cos y
0 1
264
375. (8)
Therefore, the kinematic equation in (5) can be describedas
_q ¼
_xc
_yc
_y
264
375 ¼
cos y �d sin y
sin y d cos y
0 1
264
375 v1
o
� �, (9)
where v ¼ ½v1 o�T; v1 and o are the linear velocity of thepoint P along the robot axis and angular velocity,respectively. System (9) is called the steering system ofthe vehicle.The Euler–Lagrange equations of motion is used to
derive the dynamics of the mobile robot. The dynamicalequations of the mobile robot can be expressed as (2),where
MðqÞ ¼
m 0 md sin y
0 m �md cos y
md sin y �md cos y I
2664
3775,
Vmðq; _qÞ ¼
0 0 md _y cos y
0 0 md _y sin y
0 0 0
2664
3775,
BðqÞ ¼1
r
cos y sin y
sin y sin y
R �R
2664
3775; s ¼
tr
tl
" #, ð10Þ
where tr and tl represents right and left wheel torques,respectively.
Remark 1. In this dynamic model of mobile robot, thepassive self-adjusted supporting wheel influence is not
ARTICLE IN PRESST. Das et al. / Neurocomputing 69 (2006) 2140–2151 2143
taken into consideration, as it is a free wheel. Thissignificantly reduces the complexity of the model for thefeedback controller design. However, the free wheel may bea source of substantial distortion, particularly in the case ofchanges of movement direction. This effect is reduced if weconsider small velocity of the robot.
+
-
u
Ra
+
-
emfe JL
Jm
r1
r2
, ,m m m
, ,L L L
�� �
�� �
Fig. 2. Simplified circuit model for a DC motor.
2.3. Structural properties of mobile platform
The system (2) can be transformed into a moreappropriate representation for control purposes. Using(5) and multiplying both sides of Eq. (2) by ST, thecomplete equations of motion of the nonholonomic mobileplatform are given by
_q ¼ SðqÞvðtÞ, (11)
M _vþ Vmvþ sd ¼ Bs, (12)
where M ¼ STMS, Vm ¼ STðM _S þ VmSÞ, sd ¼ STsd,
B ¼ STB.
Remark 2. Eq. (12) describes the behavior of the non-holonomic system in a new set of local coordinates, i.e.SðqÞ is a Jacobian matrix that transforms velocities v inmobile base coordinates to velocities in Cartesian coordi-nates _q. Therefore, the properties of the original dynamicshold for the new set of coordinates [7,10].
P3. The matrix MðqÞ is uniformly positive definite.P4. Skew symmetry: The matrix ð _M � 2VmÞ is skew
symmetric.P5. The disturbances are bounded so that ksdkpdB.Using (10), the matrices in Eq. (12) for the mobile robot
can be described as
M ¼m 0
0 I �md2
" #; B ¼
1
r
1
r
R
r�
R
r
2664
3775,
Vm ¼0 0
0 0
" #. ð13Þ
The nonlinear robot dynamics in (12) can be written in alinear combiner form as
M _vþ Vmv ¼ YU, (14)
where U is a vector consisting of the known and unknownrobot dynamic parameters, such as geometric size, mass,moment of inertia etc.; and Y is a coefficient matrixconsisting of the known functions of the robot position,velocity and acceleration, which is referred as robotregressor. For the mobile robot system consideredhere, the robot regressor Y and the coefficient vector U
are given as
Y ¼_v1 0 0
0 _o � _o
� �; U ¼ ½m I md2
�T. (15)
2.4. Actuator dynamics
The wheels of the robot are assumed to be driven by DCmotors.Consider the following notations used to model a DC
motor (see Fig. 2):u is the input voltage, i the motor current, Ra the motor
resistance, eemf the back emf due to the spinning motorshaft, N ¼ r2=r1 the gear ratio, tm and tL are the torqueexerted by the motor and the torque exerted on the load,respectively, om and oL are the angular velocities at themotor (before gears) and the load (after gears), respec-tively, ym and yL are the angles of the motor (before gears)and the load (after gears). The relationship between tm andtL is given by
tL ¼ Ntm, (16)
whereas the relationship between om and oL is given by
oL ¼1
Nom. (17)
The torque exerted by the motor is proportional to themotor current:
tm ¼ KTi, (18)
where KT is the torque constant.The back-emf is proportional to the angular velocity of
the motor shaft:
eemf ¼ Kbom, (19)
where Kb is the velocity constant.Applying Kirchoff voltage law to the circuit shown in
Fig. 2 we get
u ¼ iRa þ eemf . (20)
Using Eqs. (16)–(20), yields,
tL ¼NKT
Rau�
N2KT
RaKboL. (21)
ARTICLE IN PRESST. Das et al. / Neurocomputing 69 (2006) 2140–21512144
If xH ¼ ½or ol �T denotes the wheel velocity vector, where
or is the right wheel angular velocity and ol is the leftwheel angular velocity, then xH is related to the vector v asfollows
xH ¼
1
r
R
r1
r�
R
r
2664
3775 v1
o
� �¼ Xv. (22)
Using Eqs. (12) and (21), the mobile robot dynamics can bewritten as
M _vþ Vmvþ sd ¼NKT
RaBu�
N2KTKb
RaBXv. (23)
3. Control problem formulation and controller design
The tracking problem can be stated as follows:The trajectory tracking problem can be stated as follows:
Given a reference trajectory qrðtÞ ¼ ½xrðtÞ yrðtÞ yrðtÞ�T
generated by a reference vehicle/robot whose equations ofmotion are
_xr ¼ vr cos yr,
_yr ¼ vr sin yr,_yr ¼ or; vr ¼ ½vr or�
T, ð24Þ
with vr40 for all t, determine a smooth velocity controllaw vc ¼ f cðEP; vr;KÞ for (11) such that limt!1 qðtÞ ¼ qrðtÞ
where EP; vr and K are the tracking position error, thereference velocity and control gain, respectively. Then findthe actuator voltage input uðtÞ for (23), that can becomputed without measuring velocities such that vðtÞ !vcðtÞ as t!1.
3.1. Controller design
Many approaches exist in the literature to find thevelocity control vðtÞ for steering system (11). This controlinput is denoted as vcðtÞ. Then either ‘‘perfect velocitytracking’’ is assumed so that v ¼ vc, or a suitable sðtÞ for (2)is derived from a specific vcðtÞ that controls the steeringsystem. The approach assuming ‘‘perfect velocity tracking’’is unrealistic [7]. Also, keeping in mind the fact that thewheel torques are generated by actuators, we should findactuator input voltage u instead of sðtÞ, so that vðtÞconverge asymptotically to vcðtÞ. The contribution of thispaper lies in deriving a suitable uðtÞ, that does not requiremeasurement of vðtÞ and knowledge of dynamic parametersof robot, from a specific vcðtÞ that controls the steeringsystem (11).
First, smooth velocity control inputs vcðtÞ are calculatedfor the kinematic steering system (11) to make the positionerror asymptotically stable. Second, a suitable uðtÞ isderived to achieve that velocity control input such thatthe mobile robot’s velocities converge asymptotically to thecalculated velocity inputs.
The tracking error is expressed relative to the localcoordinate frame fixed on the mobile robot as Ep ¼
Tðqr � qÞ or
Ep ¼
e1
e2
e3
264
375 ¼
cos y sin y 0
� sin y cos y 0
0 0 1
264
375
xr � x
yr � y
yr � y
264
375. (25)
An auxiliary velocity control input that achieves trackingfor kinematic model (11), i.e. with which Ep ¼ 0 isuniformly asymptotically stable under the assumptionvr40 is given by [11]
vc ¼vc
oc
" #¼
vr cos e3 þ k1e1
or þ k2vre2 þ k3vr sin e3
" #, (26)
where k1; k2; k340 are design parameters. If only thekinematic model of the mobile robot (11) with velocityinput (26) is considered and assuming ‘‘perfect velocitytracking’’, then the kinematic model is asymptoticallystable with respect to the reference trajectory (i.e. Ep! 0as t!1) [11].To design the actuator voltage input and generate the
desired velocities vc, the auxiliary velocity tracking error isdefined as
ec ¼ vc � v. (27)
Differentiating (27) and using the result in (23), the robotdynamics using the velocity tracking error can be rewrittenas
M _ec ¼ � Vmec �N2KTKb
RaBXec þ ðM _vc þ VmvcÞ þ sd
þN2KTKb
RaBXvc �
NKT
RaBu. ð28Þ
The function in braces in Eq. (28) can be approximated byan approximation network, such that
M _vc þ Vmvc ¼ Yð_vc; vcÞU. (29)
Remark 3. To calculate _vc, the values of v1 and o arerequired, as is from the derivative of Eq. (25), vc willreplace v ¼ ½v1 o�T in this calculation.
3.2. Proposed control law
To make the error dynamics stable the input term in (28)is chosen as
NKT
RaBu ¼ Yð_vc; vcÞUþ
N2KTKb
RaBXvc þ K v
tanhðdc1Þ
tanhðdc2Þ
" #.
ð30Þ
So that, a single neuron model-based robot controller isproposed as
u ¼Ra
NKTB�1
Yð_vc; vcÞUþN2KTKb
RaBXvc þ Kv
tanhðdc1Þ
tanhðdc2Þ
" # !.
ð31Þ
ARTICLE IN PRESST. Das et al. / Neurocomputing 69 (2006) 2140–2151 2145
In the above equation U is a 3� 1 vector, whichapproximates the vector U. The term Yð_vc; vcÞU representsa linear combiner approximation network; the input to thenetwork is regressor Y . The variables for computing Y arethe vector ½_vTc vTc �
T, which can be obtained from (24). Also,½c1 c2�
T is a high-filtered version of ec ¼ vc � v synthesizedby
_W ¼ �aKWþ Kec, (32)
with WT ¼ ½c1 c2�T. K v ¼ diagfkvg; D ¼ diagfdg; K ¼
diagfkg and kv, d, k are positive scalar constants. The term
K v
tanhðdc1Þ
tanhðdc2Þ
" #
represents the output of a simple neuron controller asshown in Fig. 3, c1 and c2 are the inputs to two simpleneuron controllers with single neurons which processes theinput signals through a nonlinear activation function. Theabove used function is popular Tanh activation function.
Substituting (30) into (28), the closed loop errordynamics can be expressed as
M _ec ¼ � Vmec �N2KTKb
RaBXec � Kv
tanhðdc1Þ
tanhðdc2Þ
" #
þ Y ~Uþ sd, ð33Þ
where
~U ¼ Un � U (34)
is the estimation error of U.
Tanh Activation function
Output ��
vK
Fig. 3. Simple neuron controller.
T
Updation
of �
Reference cart
r
r r
r
x
q y
=
rv
x
q y
θ
θ
=
PE
Kinematic
Controller
cv
2T b
a
N K K
RBX
cv
_+
S
A
d
dt
Fig. 4. Block diagram of the
Remark 4. Eq. (32) is solved (for a sampling interval) toget the updation equation of W, given by
W ¼
c1ð0Þe�akt þ
1
aðe�aktÞðvr cos e3 þ k1e1Þðe
akt � 1Þ
c2ð0Þe�akt þ
1
aðe�aktÞðor þ k2vre2 þ k3vr sin e3Þðe
akt � 1Þ
2664
3775.(35)
To implement the control law given by Eq. (31), only thevalues of c1 and c2 are required, and these are calculatedfrom Eq. (35), without calculating the value of ec, thusavoiding the use of v. Thus wheel velocity information isnot required to implement this control law.The block diagram of the controller structure is given in
Fig. 4. Using appropriate parameter tuning laws forparameter vector U as given in (29) in Proposition 1, theclosed loop stability analysis can be done.
4. Learning algorithm and stability analysis
In this section the closed loop stability of the system isproved in the form of a proposition.
Proposition 1. Given the Nonholonomic system (9), (23), let,the feedback control input u given by (30) be used. Then the
closed loop error dynamics given by Eq. (33), (34) is locally
asymptotically stable with the approximation network
parameter tuning laws given by
_U ¼ CYTec � kCkeckU,
where C is a positive constant design matrix, for simplicity
we assume C ¼ diagfGg, and k is a small positive constant.
Proof. Consider the Lyapunov function candidate
V ¼ V 1 þ V 2,
cv.
q
+
+
uimple neuron
Controller
pproximation
Network
-1a
T
R
NKB
Mobile robot
System
mobile robot controller.
ARTICLE IN PRESST. Das et al. / Neurocomputing 69 (2006) 2140–21512146
where
V1 ¼1
2ðe21 þ e22Þ þ
1
k2ð1� cos e3Þ½1�, (36)
V2 ¼1
2ðeTc MecÞ þ
1
2~UTC�1 ~Uþ
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc1Þ
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc2Þ
p24
35T
�KvK�1D�1
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc1Þ
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc2Þ
p24
35. ð37Þ
Obviously VX0.Differentiating (36), we get
_V ¼ _V1 þ _V 2.
Now,
_V1 ¼ �k1e21 �
k3
k2vr sin
2 e3. (38)
Since the reference linear velocity vr40, therefore _V 1p0.Differentiating (37) and substituting the error dynamics
from Eq. (33), we get
_V2 ¼1
2eTc ð
_M � 2VmÞec �N2KTKb
RaeTc BXec
þ ~UTðYTec þ C�1
_~UÞ � eTc K v
tanhðdc1Þ
tanhðdc2Þ
" #
þ 2
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc1Þ
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc2Þ
p24
35T
K vK�1D�1
�
tanhðdc1Þd _c1
2ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc1Þ
ptanhðdc2Þd _c2
2ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiLN coshðdc2Þ
p
2666664
3777775þ eTc sd. ð39Þ
Owing to the property ð _M � 2VmÞ is skew symmetric,
eTc ð_M � 2VmÞec ¼ 0.
And choosing, _~U ¼ �CYTec þ kCkeckU, Eq. (39) yields
_V2 ¼ �N2KTKb
RaeTc BXeþ k ~U
TkeckU
� aWTKv
tanhðdc1Þ
tanhðdc2Þ
" #þ eTc sd
¼ � V3 þ k ~UTkeckðU
n � ~UÞ þ eTc sd, ð40Þ
where
V3 ¼N2KTKb
RaeTc BXeþ aWTK v
tanhðdc1Þ
tanhðdc2Þ
" #.
Now since, ~UTðUn � ~UÞpk ~UkFðkFnkF � k
~FkFÞ with k � kFthe Frobenius norm, there results
_V2p� V3 þ keck½kc1 þ dB�; where c1 ¼ k ~UkFðkUnkF � k
~UkFÞ
¼ � V3 þ keckc2 where c2 ¼ kc1 þ dB.
By using the fact that x tanhðxÞ is positive definitefunction in x 2 R, and BX is positive definite matrix, as isevident from Eqs. (13), (22), we conclude that _V is negativesemidefinite function provided
keckpV3=c2.
This proves the local asymptotic stability of the system.The system has a spherical domain of attraction of radiusV3=c2. The domain of attaraction can be made large bychoosing a large value of kv and small value of k.Now since, ~U ¼ Un � U, then _~U ¼ � _U, therefore, the
learning law for the approximation network is obtained as
_U ¼ CYTec � kCkeckU. (41)
This completes the proof of the proposition. &
5. Simulation results
The proposed control law (31), (32) is first verified withcomputer simulation using MATLAB. For simulationpurposes, two types of reference trajectories have beenchosen. The first simulation is carried out with a circularreference trajectory with an initial error of 10 cm in theposition of the robot and the other simulation is carried outwith a square reference trajectory with an initial error of20 cm in the position of the robot.For the first simulation, the circular reference trajectory
is given by
xrðtÞ ¼ cost
20
� �; yrðtÞ ¼ sin
t
20
� �; yrðtÞ ¼
p2þ
t
20.
The reference velocity vector is vr ¼ ½0:05 0:05�T. Thereference trajectory starts from
qrð0Þ ¼ 1 0p2
h iTand the robot initial posture is taken as
qð0Þ ¼ ½xð0Þ yð0Þ yð0Þ�T ¼ 1:1 0p2
h iT.
The parameters of the controller are chosen as k1 ¼ 4;k2 ¼ 10; k3 ¼ 6; kv ¼ 15; C ¼ diagf100; 100; 100g; a ¼ 3:0;d ¼ 0:01; k ¼ 20; k ¼ 0:01. No prior information ofthe robot parameters such as mass, moment of inertiaetc. are required, the controller learns the system dynamicson-line. However, for simulation purposes the parametervalues are taken as m ¼ 9 kg; I ¼ 5 kgm2; 2R ¼ 0:306m;r ¼ 0:052m. These values are selected based on approx-imate measurements or calculations made from theexperimental mobile robot system. A disturbance termsd ¼ ½0:1 sinð2tÞ; 0:1 sinð2tÞ�T is added to the robot system
ARTICLE IN PRESS
-1-1
-0.5
0
0.5
Robot actual trajectory and reference trajectory
Actual trajectory
Desired trajectory
Position error plot of the robot
Error along abscissaError along ordinate
Linear and angular velocity profile of the robot
Linear velocity profileAngular velocity profile
1
1.5
-0.12
0.1
0.08
0.06
0.04
0.02
0
-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
-0.5 0 0.5X (meters)
Y (
met
ers)
Pos
ition
al e
rror
s (m
eter
s)lin
ear
velo
city
(m
eter
s/s
ec)
angu
lar
velo
city
(ra
d/s
ec)
1 1.5
0 20 40 60time (sec)
time (sec)
80 100 120 140
0 20 40 60 80 100 120 140
(A)
(B)
(C)
Fig. 5. (A) Tracking performance. (B) Tracking errors. (C) Velocity
profile.
Table 1
Number of Proposed controller MLP-based controller
Weights 3 46
Sigmoidal — 5
Tanh 2 —
Iðxr � xÞ 0.0239 0.0376
Iðyr � yÞ 0.0099 0.0290
T. Das et al. / Neurocomputing 69 (2006) 2140–2151 2147
as unmodelled disturbances. To demonstrate the on-linelearning ability of the proposed controller the mass of themobile is taken as m ¼ 9 kg for tp60 s and m ¼ 10:5 kg fort460 s. The simulation results are shown in Figs. 5A–C.Fig. 5A shows the mobile robot tracks the virtual referencerobot moving on the circular path, and the tracking errorssharply drop to very small values as shown in Fig. 5B.Fig. 5C shows that the mobile robot linear and angularvelocities converge to the corresponding reference velo-cities. The proposed controller is capable of compensatingany sudden change of the robot dynamics because of itslearning ability as is evident from simulation results. Theproposed controller is robust not only to structureduncertainty such as mass variation but also to unstructuredone such as disturbances.The performance of the proposed controller is compared
to that of the multilayer perceptron (MLP) controllerproposed by Lewis [7] for a circular reference trajectory,same as above. The controller parameters and initialconditions are taken same in both the cases. Thedisturbance vector is taken as sd ¼ ½0:1 sinð2tÞ;0:1 sinð2tÞ�T. The MLP controller has a single hidden layerwith 5 neurons in the hidden layer as given in [7]. For thiscontroller the measurements of both position and velocityare required. To get an objective idea of the performance of
the system, the index Ið�Þ ¼
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffið1=NÞ
PN1 k � k
2q
is used,
where N is the total number of samples. Table 1 gives acomparison of the computational complexity and theperformance of the proposed controller and the MLPcontroller [7]. It is observed that the number of tunableparameters of the proposed controller is less than theMLP-based NN controller.Simulation is also carried out with a square reference
trajectory. It is a trajectory with explicitly noncontinuousgradient. The reference trajectory starts from
qrð0Þ ¼ 3 0p2
h iTand the robot initial posture is
qð0Þ ¼ 3:2 0p2
h iT.
The controller parameters are taken same as in thesimulation with circular reference trajectory. Also, samemobile robot parameters and the disturbance are used inthis simulation. However the mass of the robot is notvaried. Figs. 6A and B show the simulation results. Fig. 6A
ARTICLE IN PRESS
Position plot with respect to reference trajectory
Position error plot with respect to reference trajectory
3.5
3
2.5
2
1.5
1
0.5
0
-0.5
0.2
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
-0.250 50 100 150
time (sec)
Error along abscissaError along ordinate
200 250
-0.5 0 0.5 1 1.5X (meters)
Y (
met
ers)
Pos
ition
err
ors
(met
ers)
Actual trajectoryDesired trajectory
2 2.5 3 3.5(A)
(B)
Fig. 6. (A) Tracking performance (square trajectory). (B) Tracking errors
(square trajectory).
Fig. 7. Mobile robot, Multimedia lab, IIT Delhi.
T. Das et al. / Neurocomputing 69 (2006) 2140–21512148
shows that the mobile robot tracks the square referencetrajectory quite accurately. Starting from the initial posture
qð0Þ ¼ 3:2 0p2
h iTthe robot tracks the right side of the square referencetrajectory and the tracking errors sharply drop to verysmall values as shown in Fig. 6B. Note that, along any oneside of the square, the reference orientation angle isconstant. At the end of one side of the square, thereference orientation angle changes suddenly. Conse-quently the mobile robot takes a slow turn (see Fig. 6A)at each corner of the square and ultimately tracks anotherside of the square path. The sudden increase in the positionerrors of the robot against the reference trajectory at thecorners of the square are shown in Fig. 6B.
The simulation results of tracking a circular and a squarereference trajectory by the mobile robot demonstrates that,with the proposed control algorithm the robot is capable oftracking any trajectories with continuous or noncontin-uous gradients.
6. Implementation results
The proposed control algorithm is implemented on atwo-wheel differentially driven mobile robot system asshown in Fig. 7. The wheels have a radius of r ¼ 5:2 cm andare mounted on an axle of length 2R ¼ 30:6 cm. The wheelradius includes the o-ring used to prevent slippage; therubber is stiff enough that point contact with the groundcan be assumed. A small passive self adjusted supportingwheel is placed in the front of the vehicle to carry themechanical structure. The wheels are driven by DC motorshaving rated torque of 20mNm at 3000 r.p.m. and at 24Vrated voltage. Each motor is equipped with incrementalencoder counting 600 pulses/turn and a gear and beltdriven assembly, which reduces the speed by a factor ofN ¼ 147.The mobile robot described here is a low-cost prototype
and presents, therefore, the typical nonidealities ofelectromechanical systems, namely, gear backlash, wheelslippage, actuator dead zone, and saturation. Theselimitations clearly affect the control performance. In viewof the bounded velocity of the wheel actuators, each wheelcan achieve a maximum angular velocity. That’s why toprevent wheel slippage as much as possible, the referencelinear and angular velocities are always limited by jvrjmax ¼
0:05m=s and jorjmax ¼ 0:05 rad=s, respectively. Also, thevehicle is supplied with very thin wheels making trajectorytracking in real time easier. However, for potentialapplication areas such wheels cannot be used. This is alimitation of our experimental mobile robot.
6.1. Control system architecture
As shown in Fig. 8 it has a two level control architecture.High level control algorithms (including reference motiongeneration) are written in VC++ and run with a samplingtime of 16ms on a remote server (a Pentium III processor).The PC communicates through serial port with the
ARTICLE IN PRESS
Control
Algorithm running on PC
Wheel
motor
Wheel
motor
L R�
Right wheel Left wheel
ULUR
Power
Electronics
Power
Electronics
Encod
∆ �∆
er Encoder
TxRx
PIC Microcontroller
Serial Duplex communication
Fig. 8. Control architecture of the mobile robot.
Robot actual position and reference trajectory1.5
1
Actual robot trajectoryReference trajectory
0.5
0
-0.5
-1-1.5 -1
-0.06
-0.04
-0.02
0
0.02
0.04
-0.5X (meters)
Error in position of the robot
Error along X coordinateError along Y coordinate
Y (
met
ers)
sitio
n er
ror
(met
ers)
0 0.5 1 1.5(A)
T. Das et al. / Neurocomputing 69 (2006) 2140–2151 2149
microcontroller on the robot. Wheel PWM duty cyclecommands are sent to the robot and encoder measures DfL
and DfR are received for odometric computation. Thelower level control layer is in charge of the execution of thehigh-level velocity commands. It consists of a PIC 16F877micro controller.
The microcontroller performs three basic tasks, (1) Tocommunicate with the higher-level controller through RS232. (2) To read the encoder counts and (3) to generate ofPWM duty cycle commands, UR and UL (see Fig. 8).
0-0.12
-0.1
-0.08
20 40 60 80 100 120 140 160 180time (sec)
Po
(B)
Fig. 9. (A) Real time tracking performance. (B) Tracking errors.
6.2. Experimental results
To demonstrate the feasibility and effectiveness of thecontrol law (31), (32), the control laws are applied to theexperimental mobile robot. The current robot configura-tion is reconstructed from odometric data. If DfR and DfL
be the wheel angular displacements measured duringsampling time T s by the encoders, the robot linearand angular displacements are reconstructed asDs ¼ r
2ðDfR þ DfLÞ, Dy ¼ r
2RðDfR � DfLÞ. The posture
estimated at time tk ¼ kT s is
qk ¼
xk
yk
yk
0B@
1CA ¼ qk�1 þ
cos yk 0
sin yk 0
0 1
0B@
1CA Ds
Dy
� �,
where yk ¼ yk�1 þ Dy=2. Robot localization using theabove odometric prediction (commonly referred to as dead
reckoning) is quite accurate in the absence of wheel slippageand backlash. These effects are largely reduced when thevelocity is kept reasonably small and the number of backmaneuvers is limited.
For experimental purpose, the reference trajectory ischosen, given by
xrðtÞ ¼ cost
20
� �; yrðtÞ ¼ sin
t
20
� �; yrðtÞ ¼
p2þ
t
20,
so that the reference velocities are vrðtÞ ¼ 0:05m=s andorðtÞ ¼ 0:05 rad=s. The reference trajectory starts from
qrð0Þ ¼ ½1 0 p2�T and the robot initial posture is
qð0Þ ¼ ½1:1 0 p2�T, so that the initial error in the position
of the robot with respect to the reference trajectory is0.1m. The controller parameters are chosen same as usedin the simulation, k1 ¼ 4; k2 ¼ 10; k3 ¼ 6; kv ¼ 15; C ¼
diagf100; 100; 100g; a ¼ 3:0; d ¼ 0:01; k ¼ 20; k ¼ 0:01.Figs. 9A and B show the results obtained by applying theproposed controller (31), (32). Fig. 9A shows the trajectoryfollowed by the mobile robot with respect to the referencetrajectory. The tracking errors drop to small values asshown in Fig. 9B. From these figures, it is clear that, thetracking of the reference trajectory is very accurate. Thecontroller learns the function in Eq. (29) online; so that noprior information of the physical parameters such as mass,moment of inertia is required. The initial value of the co-efficient vector U defined in Eq. (15) is taken asUð0Þ ¼ ½0 0 0�T. To verify the robustness of the proposedcontrol scheme against the parameter variation, anadditional mass of 2 kg is added deliberately with themobile robot after the robot starts tracking the reference
ARTICLE IN PRESS
0-0.12
-0.1
-0.08
-0.06
-0.04
-0.02
0
Error along abscissa
Position error plot (with extra mass added)
Error along ordinate0.02
0.04
20 40 60 80 100
time (sec)
erro
r (m
eter
s)
120 140 160 180
Fig. 10. Tracking errors (with some extra mass added).
T. Das et al. / Neurocomputing 69 (2006) 2140–21512150
trajectory. The corresponding position error plot is shownin Fig. 10. Comparison of Fig. 9B with Fig. 10 reveals thatas the extra mass is added at about t ¼ 95 s, there is a smallincrease in the position error of the robot against thereference trajectory. But owing to the online learningcapability of the approximation network, the controllerlearns the function in Eq. (29) with the extra mass. Thusthe tracking errors remain bounded and the robot tracksthe reference trajectory. The tracking of the referencetrajectories is reasonably accurate; the residual errors in theexperimental result, which is not present in the simulationis caused mainly due to the inherent friction present in thereal system, the neglected wheel dynamics and thenonsmoothness of robot path in addition to the encodertruncation and quantization error.
7. Conclusion
In this paper a controller is proposed for solving thetracking control problem of nonholonomic mobile robotwith robot dynamics and wheel actuator dynamics takeninto account. For the controller, the stability and errorboundness is proved using Lyapunov stability theory.Simulation and experimental results validate the proposedcontroller. There are several features worth pointing out.
�
A simple neuron-based adaptive controller for trajectorytracking of a wheeled mobile robot has been proposed. � The wheel actuator input voltage is chosen as thecontrol input for the torque controller in the proposedcontroller. This approach is more realistic than mosttorque controller where wheel torques are chosen as thecontrol input. � The proposed controller design does not require wheelvelocity measurement. � The proposed controller is robust to structured un-certainty as well as bounded unknown disturbancesincluding unstructured unmodelled dynamics.�
Detailed procedure of how to implement the control lawin real time has been demonstrated. For real-timeconstraints the conventional torque control output isreplaced by actuator input voltage control output.References
[1] B. d’Andrea-Novel, G. Bastin, G. Campion, Modelling and control
of nonholonomic wheeled mobile robots, in: Proceedings of IEEE
International Conference on Robotics and Automation, April 1991,
pp. 1130–1135.
[2] B. d’Andrea-Novel, G. Bastin, G. Campion, Dynamic feedback
linearization of nonholonomic wheeled mobile robots, in: Proceed-
ings of IEEE International Conference on Robotics and Automation,
May 1992, pp. 2527–2532.
[3] G. Campion, B. d’Andrea-Novel, G. Bastin, Controllability and state
feedback of nonholonomic mechanical systems, in: C. Canudes, De
Wit (Eds.), Lecture Notes in Control and Information Science,
Springer, Berlin, Germany, 1991, pp. 106–124.
[4] G. Campion, G. Bastin, B. D’AndreaNovel, Structural properties
and classification of kinematic and dynamic models of wheeled
mobile robots, IEEE Trans. Robotics Autom. 12 (1) (1996) 47–62.
[5] A. De Luca, G. Oriolo, Modelling and Control of Nonholonomic
Mechanical Systems, pp. 277–342 (Chapter 7).
[6] R. Fierro, F.L. Lewis, Control of a nonholonomic mobile robot:
backstepping kinematics into dynamics, in: Proceedings of the
34th Conference on Decision & Control, December 1995,
pp. 3805–3810.
[7] R. Fierro, F.L. Lewis, Control of a nonholonomic mobile robot
using neural networks, IEEE Trans. Neural Networks 9 (4) (1998)
589–600.
[8] T. Fukao, H. Nakagawa, N. Adachi, Adaptive tracking control of a
nonholonomic mobile robot, IEEE Trans. Robotics Autom. 16 (5)
(2000) 609–615.
[9] T. Hu, S.X. Yang, An efficient neural controller for a nonholonomic
mobile robot, in: Proceedings of IEEE International Symposium on
Computational Intelligence in Robotics and Automation, July
29–August 1, 2001, pp. 461–466.
[10] T. Hu, S.X. Yang, F. Wang, G.S. Mittal, A neural network controller
for a nonholonomic mobile robot with unknown robot parameters,
in: Proceedings of IEEE Internatioal Conference on Robotics and
Automation, May 2002, pp. 3540–3545.
[11] Y. Kanayama, Y. Kimura, F. Miyazaki, T. Noquchi, A stable
tracking control method for an autonomous mobile robot, in:
Proceedings of the IEEE International Conference on Robotics and
Automation, Cincinnati, OH, USA, May 1990, vol. 1, pp. 384–389.
[12] M.S. Kim, J.H. Shin, J.J. Lee, Design of a robust adaptive controller
for a mobile robot, in: Proceedings of IEEE/RSJ International
Conference on Intelligent Robots and Systems, 2000, pp. 1816–1826.
[13] I. Kolmanovsky, N.H. McClamroch, Developments in nonholo-
nomic control problems, IEEE Control Syst. (1995) 20–36.
[14] G. Oriolo, A. De Luca, M. Vendittelli, WMR control via dynamic
feedback linearization: design, implementation and experimental
validation, IEEE Trans. Control Syst. Technol. 10 (6) (2002)
835–852.
[15] Z. Ping, H. Nijmeijer, Tracking control of mobile robots: a case study
in backstepping, Automatica 33 (7) (1997) 1393–1399.
[16] F. Pourboghrat, M.P. Karlsson, Adaptive control of dynamic mobile
robots with nonholonomic constraints, Comput. Electr. Eng. (2002)
241–253.
[17] J.-J.E. Slotine, W. Li, Applied Nonlinear Control, Prentice-Hall,
Englewood Cliffs, NJ, 1991.
[18] W.U. Weiguo, C. Hutang, W. Yuejuan, Backstepping design for
path tracking of mobile robots, in: Proceedings of IEEE/RSJ
International Conference on Intelligent Robotics and Systems,
1999, pp. 1822–1827.
ARTICLE IN PRESST. Das et al. / Neurocomputing 69 (2006) 2140–2151 2151
[19] J.-M. Yang, J.-H. Kim, Sliding mode motion control of nonholo-
nomic mobile robots, in: Proceedings of IEEE International
Conference on Robotics and Automation, May 1998, pp. 15–23.
[20] Q. Zhang, J. Shippen, B. Jones, Robust backstepping and neural
network control of a low quality nonholonomic mobile robot, Int. J.
Mach. Tools Manu. 39 (1999) 1117–1134.
Tamoghna Das received the B.E. degree in
electrical engineering from B.E. College (Deemed
University), W.B., India, in 2002, and the M.S.
(Research) degree from Indian Institute of
Technology, New Delhi, India in 2005.
His research interests include nonlinear control
of nonlinear systems with parametric uncertainty,
adaptive visual servo control of mobile robots
and robot manipulators, neural network and
fuzzy logic-based adaptive control of robotic
systems.
Indra Narayan Kar received the Bachelor of
Engineering (1988) degree from Bengal Engineer-
ing College (Deemed University), India, and the
M.Tech. (1991) and Ph.D. (1997) degrees from
Indian Institute of Technology, Kanpur, India,
all in Electrical Engineering.
He worked as a research student at Nihon
University, Tokyo under the Japanese govern-
ment Monbusho scholarship program from 1996
to 1998. He joined as a lecturer in the department
of Electrical Engineering, Indian Institute of
Technology, Delhi where he became assistant professor in the year 1999.
At present, he is working as an associate professor at the Indian Institute
of Technology, Delhi. His research interests include robust and intelligent
control systems, embedded systems, nonlinear control and identification.
He has published more than 40 papers in international journals and
conference proceedings.
Santanu Chaudhury did his B.Tech. (1984) in
Electronics and Electrical Communication En-
gineering and Ph.D. (1989) in Computer Science
and Engineering from I.I.T, Kharagpur, India.
Currently, he is a professor in the department of
Electrical Engineering at I.I.T, Delhi. He was
awarded INSA medal for young scientists in
1993. His research interests are in the areas of
Computer Vision, Artificial Intelligence and
Multimedia Systems. He has published more
than 100 papers in international journals and
conference proceedings.