1-s2.0-S0921889006001618-main

14
Robotics and Autonomous Systems 55 (2007) 191–204 www.elsevier.com/locate/robot Nonlinear formation control of unicycle-type mobile robots K.D. Do * , J. Pan School of Mechanical Engineering, The University of Western Australia, 35 Stirling Highway, Crawley, WA 6009, Australia Received 14 December 2004; received in revised form 10 August 2006; accepted 20 September 2006 Available online 1 November 2006 Abstract We investigate formation control of a group of unicycle-type mobile robots at the dynamics level with a little amount of inter-robot communication. A combination of the virtual structure and path-tracking approaches is used to derive the formation architecture. Each individual robot has only position and orientation available for feedback. For each robot, a coordinate transformation is first derived to cancel the velocity quadratic terms. An observer is then designed to globally exponentially/asymptotically estimate the unmeasured velocities. An output feedback controller is designed for each robot. The controller is designed in such a way that the path derivative is left as a free input to synchronize the robots’ motion. Simulations illustrate the soundness of the proposed controller. Crown Copyright c 2006 Published by Elsevier B.V. All rights reserved. Keywords: Formation; Path-tracking; Mobile robot; Nonlinear control; Output-feedback 1. Introduction Over the last few years, formation control of multiple vehicles has received a lot of attention from the control community. Applications of vehicle formation control include the coordination of multiple robots, unmanned air/ocean vehicles, satellites, aircraft and spacecraft [1–19]. For example, a group of mobile robots can be used to carry out tasks that are difficult or not effective for a single robot to perform alone. In the literature, there have been roughly three methods to formation control of multiple vehicles: leader- following, behavioral and virtual structure. Each approach has its own advantages and disadvantages. In the leader- following approach, some vehicles are considered as leaders, whist the rest of robots in the group act as followers [6–9]. The leaders track predefined reference trajectories, and the followers track transformed versions of the states of their nearest neighbors according to given schemes. An advantage of the leader-following approach is that it is easy to understand and implement. In addition, the formation can still be maintained even if the leader is perturbed by some disturbances. However, a disadvantage is that there is no explicit feedback to the formation, that is, no explicit feedback from the followers to the * Corresponding author. Tel.: +61 8 64883602; fax: +61 8 64881024. E-mail address: [email protected] (K.D. Do). leader in this case. If the follower is perturbed, the formation cannot be maintained. Furthermore, the leader is a single point of failure for the formation. In the behavioral approach [1,10–15], few desired behaviors such as collision/obstacle avoidance and goal/target seeking are prescribed for each vehicle and the formation control is calculated from a weighting of the relative importance of each behavior. The advantages of this approach are: it is natural to derive control strategies when vehicles have multiple competing objectives, and an explicit feedback is included through communication between neighbors. The disadvantages are: the group behavior cannot be explicitly defined, and it is difficult to analyze the approach mathematically and guarantee the group stability. In the virtual structure approach, the entire formation is treated as a single entity [16–19]. When the structure moves, it traces out desired trajectories for each agent in the group to track. Some similar ideas based on the perceptive reference frame, the virtual leader, and the formation reference point are given in [20,17,21] respectively. The advantages of the virtual structure approach are: it is fairly easy to prescribe the coordinated behavior for the group, and the formation can be maintained very well during the manoeuvres, i.e. the virtual structure can evolve as a whole in a given direction with some given orientation and maintain a rigid geometric relationship among multiple vehicles. However requiring the formation to act as a virtual structure limits the class of potential applications such as when the formation shape 0921-8890/$ - see front matter Crown Copyright c 2006 Published by Elsevier B.V. All rights reserved. doi:10.1016/j.robot.2006.09.001

description

1-s2.0-S0921889006001618-main

Transcript of 1-s2.0-S0921889006001618-main

Robotics and Autonomous Systems 55 (2007) 191–204www.elsevier.com/locate/robot

Nonlinear formation control of unicycle-type mobile robots

K.D. Do∗, J. Pan

School of Mechanical Engineering, The University of Western Australia, 35 Stirling Highway, Crawley, WA 6009, Australia

Received 14 December 2004; received in revised form 10 August 2006; accepted 20 September 2006Available online 1 November 2006

Abstract

We investigate formation control of a group of unicycle-type mobile robots at the dynamics level with a little amount of inter-robotcommunication. A combination of the virtual structure and path-tracking approaches is used to derive the formation architecture. Each individualrobot has only position and orientation available for feedback. For each robot, a coordinate transformation is first derived to cancel the velocityquadratic terms. An observer is then designed to globally exponentially/asymptotically estimate the unmeasured velocities. An output feedbackcontroller is designed for each robot. The controller is designed in such a way that the path derivative is left as a free input to synchronize therobots’ motion. Simulations illustrate the soundness of the proposed controller.Crown Copyright c© 2006 Published by Elsevier B.V. All rights reserved.

Keywords: Formation; Path-tracking; Mobile robot; Nonlinear control; Output-feedback

1. Introduction

Over the last few years, formation control of multiplevehicles has received a lot of attention from the controlcommunity. Applications of vehicle formation control includethe coordination of multiple robots, unmanned air/oceanvehicles, satellites, aircraft and spacecraft [1–19]. For example,a group of mobile robots can be used to carry out tasksthat are difficult or not effective for a single robot toperform alone. In the literature, there have been roughly threemethods to formation control of multiple vehicles: leader-following, behavioral and virtual structure. Each approachhas its own advantages and disadvantages. In the leader-following approach, some vehicles are considered as leaders,whist the rest of robots in the group act as followers [6–9].The leaders track predefined reference trajectories, and thefollowers track transformed versions of the states of theirnearest neighbors according to given schemes. An advantage ofthe leader-following approach is that it is easy to understand andimplement. In addition, the formation can still be maintainedeven if the leader is perturbed by some disturbances. However,a disadvantage is that there is no explicit feedback to theformation, that is, no explicit feedback from the followers to the

∗ Corresponding author. Tel.: +61 8 64883602; fax: +61 8 64881024.E-mail address: [email protected] (K.D. Do).

0921-8890/$ - see front matter Crown Copyright c© 2006 Published by Elsevier B.Vdoi:10.1016/j.robot.2006.09.001

leader in this case. If the follower is perturbed, the formationcannot be maintained. Furthermore, the leader is a singlepoint of failure for the formation. In the behavioral approach[1,10–15], few desired behaviors such as collision/obstacleavoidance and goal/target seeking are prescribed for eachvehicle and the formation control is calculated from a weightingof the relative importance of each behavior. The advantagesof this approach are: it is natural to derive control strategieswhen vehicles have multiple competing objectives, and anexplicit feedback is included through communication betweenneighbors. The disadvantages are: the group behavior cannotbe explicitly defined, and it is difficult to analyze the approachmathematically and guarantee the group stability. In the virtualstructure approach, the entire formation is treated as a singleentity [16–19]. When the structure moves, it traces out desiredtrajectories for each agent in the group to track. Some similarideas based on the perceptive reference frame, the virtualleader, and the formation reference point are given in [20,17,21]respectively. The advantages of the virtual structure approachare: it is fairly easy to prescribe the coordinated behavior forthe group, and the formation can be maintained very well duringthe manoeuvres, i.e. the virtual structure can evolve as a wholein a given direction with some given orientation and maintain arigid geometric relationship among multiple vehicles. Howeverrequiring the formation to act as a virtual structure limits theclass of potential applications such as when the formation shape

. All rights reserved.

192 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

is time-varying or needs to be frequently reconfigured, thisapproach may not be the optimal choice. The virtual structureand leader-following approaches require that the full state of theleader or virtual structure be communicated to each memberof the formation. In contrast, a behavior-based approach isdecentralized and may be implemented with significantly lesscommunication.

Formation feedback has been recently introduced in theliterature [22,16,23,4]. In [23], a coordination architecture forspacecraft formation control is introduced to incorporate theleader-following, behavioral, and virtual structure approachesto the multi-agent coordination problem. This architecturecan be extended to include formation feedback. In [16],formation feedback is used for the coordinated control problemfor multiple robots. In [22], a Lyapunov formation functionis used to define a formation error for a class of robots(double integrator dynamics) so that a constrained motioncontrol problem of multiple systems is converted into astabilization problem for one single system. The error feedbackis incorporated to the virtual leader through parameterizedtrajectories. The strength of this approach is that the formationerror is guaranteed to be below a given upper bound undercertain assumptions. However, this approach results in asteady state formation error during the manoeuvre, that is, theformation error will always reach an equilibrium value whichis close to the given upper bound even if the initial formationerror is zero. Consequently, formation is only maintained withina certain bound during the manoeuvre, which may not be properfor the requirement of precise formation maintenance.

Stabilization and tracking control of single mobile robotshave received an extensive amount of attention [27,29,31,32,35], to list just a few. Their objectives are mostly kinematicmodels. Since mobile robots do not have direct control overvelocities, a static mapping implementation requires a high-gain control law and cannot achieve global results, see [40](pp. 239–245) for a discussion on general nonlinear systems.Recently several authors focused on the dynamic model [24,29–31] using the backstepping technique [33] and feedbacklinearization. In [29], a unified approach using a dynamicoscillator was introduced to design a high-gain single controllerthat solves both global exponential stabilization and trackingfor mobile robots. Global asymptotic output-feedback trackingcontrol of vehicles has been solved for the case of fullyactuated [38] (pp. 311–334). The main difficulty of designingan observer-based output-feedback for Lagrange systems ingeneral is because of the Coriolis matrix, which results inquadratic cross terms of unmeasured velocities. In addition,the nonholonomic constraints of mobile robots make theoutput-feedback problem more challenging. For example,many solutions proposed for robot manipulator control, seefor example [38] and references therein, cannot directly beapplied. Some recent results on output-feedback control of thesingle degree of freedom and special Lagrange systems wereaddressed in [36,37,28]. It is noted that the systems studiedin these papers can contain one square term of only oneunmeasured state. Although Besancon [28] gave an extensionto systems with more degrees of freedom but relied (see [28],

Theorem 5.1) on the solution of a differential equation, whichdoes not exist for more-than-one degrees of freedom in generaland for the mobile robot in question. Using a dynamic oscillatoras for the case of state feedback, an output feedback controllerthat solves both stabilization and tracking for mobile robotswas proposed in [29]. However, the closed loop stabilizationand tracking errors are semi-globally uniformly ultimatelybounded. Recently, we developed a method [24] to design aglobal output feedback controller that solved both stabilizationand tracking control for unicycle-type mobile robots. Themethod is based on a nontrivial coordinate transformation andbackstepping technique.

This paper is aimed at a combination of the virtual structureand path-tracking approaches to derive a control system forformation control of a group of unicycle-type mobile robots.The conventional virtual structure approach is modified sothat the formation shape can vary, i.e. the robots can changetheir relative positions with respect to the center of the virtualstructure during the manoeuvre. The technique in [24] ismodified to design a global output feedback controller for eachrobot based on a global exponential/asymptotic observer. Theoutput feedback controller is designed in such a way that thederivative of the path parameter is left as an additional controlinput to synchronize the formation motion. The control systemis derived in four stages: first, the dynamics of the virtualstructure are defined; second, the motion of the virtual structureis translated into the desired motion for each robot; third, outputfeedback tracking controller for each robot is derived; andfinally, formation feedback is introduced from each robot to thevirtual structure.

The rest of the paper is organized as follows. Problemstatement is presented in the next section. Section 3 designs anobserver to globally exponentially/asymptotically estimate theunmeasured velocities. Control design is presented in Section 4.Numerical simulations are given in Section 5. Section 6concludes the paper. Appendix A gives proofs of the observerdesign result. Proof of the main result is given in Appendix B.

2. Problem statement

2.1. Formation setup

A group of r mobile robots needs r individual referencepaths, which are parameterized so that when all the pathparameters are synchronized, the robots are in formation. Amodification of the conventional virtual structure approachis used here to generate the reference paths. We consider avirtual structure whose center moves along a reference pathΓ0(s0) = [xd0(s0), yd0(s0)]

T with s0 being the path parameter,see Fig. 1. Since the structure under consideration is virtual,the center does not have to be the center of gravity but canbe any convenient point. The shape of the virtual structure canbe varied by specifying the distance li (xd0(si ), yd0(si )) fromeach place-holder to the center of the structure. This variance isparticularly meaningful in practice. For example, the formationhas to change its shape when the vehicles enter a tunnel. Whenthe structure moves along the path Γ0(s0), the place-holders

K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204 193

Fig. 1. Formation coordinates.

generate reference paths Γi (si ) = [xdi (si ), ydi (si )]T , 1 ≤ i ≤

r with si being the i th path parameter, given by:

Γi (si ) = Γ0(si ) + R(φd0(si ))li (xd0(si ), yd0(si )) (1)

where li (xd0(si ), yd0(si )) = [lxi (xd0(si ), yd0(si )), lyi (xd0(si ),

yd0(si ))]T , and

R(φd0(si )) =

[cos(φd0(si )) −sin(φd0(si ))

sin(φd0(si )) cos(φd0(si ))

]φd0(si ) = arctan(y′

d0(si ), x ′

d0(si )),

x ′

d0(si ) = ∂xd0(s0)/∂s0|s0=si,

y′

d0(si ) = ∂yd0(s0)/∂s0|s0=si.

(2)

Intuitively, one might set si (t) = t , i.e. the current time instant tis used as the path parameter. However, the use of si as the pathparameter has an advantage that its time evolution, si , can betreated as an additional “control input”. In [26], this additionalcontrol input is utilized so that the overall control system forsingle mobile robots possesses certain robustness with respectto measurement error and external disturbances. In our paper,we will use this additional control input for formation feedbackand synchronization of the path parameters, see Section 4.

It is noted that in the conventional virtual structure approach,the distance from each place-holder to the structure center isconstant, i.e. the shape of the structure cannot be changed.Having generated each reference path for each mobile robot,the remaining tasks are to design a controller such that eachvehicle tracks its own desired path, and all the path parametersof the reference paths are synchronized.

2.2. Mobile robot dynamics

The i th two-wheel driven (unicycle-type) mobile robot(Fig. 2) has the following equations of motion [31]:

ηi = Ji(ηi)ωi

Miωi + Ci(ηi)ωi + Diωi = τ i(3)

with ηi =[xi yi φi

]T, ωi =

[ω1i ω2i

]T, τ i =[

τvi τwi]T .

Ji(ηi) =ri

2

[cos(φi ) sin(φi ) b−1

icos(φi ) sin(φi ) −b−1

i

]T

,

Fig. 2. The i th two-wheel driven mobile robot and interpretation of pathtracking errors.

Mi =

[m11i m12im12i m11i

],

Di =

[d11i 0

0 d22i

], Ci(ηi) =

[0 ci φi

−ci φi 0

],

ci = 0.5b−1i r2

i mci ai , m11i = 0.25b−2i r2

i (mi b2i + Ii ) + Iwi ,

m12i = 0.25b−2i r2

i (mi b2i − Ii ), mi = mci + 2mwi ,

Ii = mci a2i + 2mwi b2

i + Ici + 2Imi

where mci and mwi are the masses of the body and wheel witha motor; Ici , Iwi and Imi are the moment of inertia of the bodyabout the vertical axis through Pci (center of mass), the wheelwith a motor about the wheel axis, and the wheel with a motorabout the wheel diameter, respectively; ai , bi and ri are definedin Fig. 2; the nonnegative constants d j j i , j = 1, 2 are the damp-ing coefficients; (xi , yi , φi ) are the position (the coordinates ofthe middle point, P0i , between the left and right driving wheels)and orientation of the robot, ω1i and ω2i are the angular veloc-ities of the wheels; τvi and τwi are the control torques appliedto the wheels of the robot; O XY is the earth-fixed coordinatesystem. When d j j i > 0, the robot is referred to as an internallydamped one. When d j j i = 0, it is internally un-damped.

2.3. Control objective

Before presenting the control objective, we impose thefollowing assumption:

Assumption 1. (1) For each robot, only position (xi , yi ) andorientation φi are measurable.

(2) For each value of si , there exists a unique value of xdi (si )

and ydi (si ).(3) There exist strictly positive constants ε1i and ε2i such that:

x′2di + y

′2di ≥ ε1i , s0 ≥ ε2i (4)

where •′ denoting ∂ • /∂si .

Remark 1. Part (1) of Assumption 1 implies that we need todesign an output feedback control system. Part (2) means theunique solvability of each individual path from its parameter.

194 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

∂qi11

∂xicos(φi )vi +

∂qi11

∂yisin(φi )vi +

∂qi11

∂φiwi

∂qi12

∂xicos(φi )vi +

∂qi12

∂yisin(φi )vi +

∂qi12

∂φiwi

∂qi21

∂xicos(φi )vi +

∂qi21

∂yisin(φi )vi +

∂qi21

∂φiwi

∂qi22

∂xicos(φi )vi +

∂qi22

∂yisin(φi )vi +

∂qi22

∂φiwi

[viwi

]

[qi11 qi12qi21 qi22

] −bi ci

m11i + m12iw2

i

ci

bi (m11i − m12i )viwi

= 0

Box I.

Part (3) of Assumption 1 means that each path is regular, andthat the virtual structure moves forward, i.e. we do not considerthe problem of stabilization.

Having discussed on how the reference path, see (1), foreach individual mobile robot is generated in Section 2.1, theformation control objective boils down to design a controlsystem, under Assumption 1, such that

limt→∞

‖((xi (t) − xdi (t)), (yi (t) − ydi (t)), (φi (t) − φdi (t)))‖

= 0 (5)

and

limt→∞

(si (t) − s0(t)) = 0 (6)

where φdi = arctan(y′

di (si )/x ′

di (si )). The objective (5) justifiesboth position and orientation tracking tasks in the sense thateach robot moves on the path and its linear velocity is tangentialto its own path. On the other hand, the objective (6) guaranteessynchronization of all the path parameters, i.e. all the robots areproperly arranged.

3. Observer design

In this section, an observer is proposed to globallyasymptotically/exponentially estimate the robot unmeasuredvelocities. For convenience of observer design and controldesign, which will be presented in Section 4, we will firstconvert the wheel velocities ω1i and ω2i to the linear, vi , andangular,wi . Since the quadratic term in the robot dynamics, seethe term Ci(wi )vi in (8) below, causes difficulties in designinga global and asymptotic/exponential observer, we will thentransform the convenient form of the robot dynamics, see(8), to a new dynamics such that it is linear in unmeasuredstate by introducing a global transformation. After an observeris designed for this new dynamics, an estimate of the robotunmeasured velocities, vi and wi , is reconstructed by invertingthe above global transformation.

We now convert the wheel velocities ω1i and ω2i to thelinear, vi , and angular, wi , velocities of the robot by therelationship:

vi = B−1i ωi, with vi =

[vi wi

]T, Bi =

1ri

[1 bi1 −bi

]. (7)

With (7), we write (3) as

ηi = Ji(ηi)vi

vi = −Ci(wi )vi − Divi + B−1i M−1

i τ i(8)

where

Ji(ηi) =

[cos(φi ) sin(φi ) 0

0 0 1

]T

,

Ci =

[0 −bi ci/(m11i + m12i )wi

ci/bi/(m11i − m12i )wi 0

],

Di = B−1i M−1

i DiBi.

(9)

As discussed above, we first remove the quadratic velocityterms in the second equation of (8) by introducing the followingcoordinate change:

Xi = Qi(ηi)vi (10)

where Qi(ηi) is a globally invertible matrix with boundedelements to be determined. Using (10), we write the secondequation of (8) as follows:

Xi = [Qi(ηi)vi − Qi(ηi)Ci(wi )vi]

+ Qi(ηi)(−Divi + B−1i M−1

i τ i). (11)

Besancon [28] requires Qi(ηi) with the above propertiessuch that Qi(ηi) = Qi(ηi)Ci(wi ), ∀ηi ∈ R3, wi ∈ R, whichdoes not exist as a simple calculation shows. Our method isto cancel the square bracket in the right hand side of (11) forall (ηi, vi) ∈ R5. We assume that qik j (ηi), k = 1, 2, j = 1, 2are the elements of Qi(ηi). We now need to find qik j (ηi), k =

1, 2, j = 1, 2 such that

[Qi(ηi)vi − Qi(ηi)Ci(wi )vi] = 0, ∀(ηi, vi) ∈ R5. (12)

Using the first equation of (8), we can write (12) as the equationgiven in Box I, which further yields(

∂qik1

∂xicos(φi ) +

∂qik1

∂yisin(φi )

)v2

i

+

(∂qik1

∂φi+

∂qik2

∂xicos(φi ) +

∂qik2

∂yisin(φi )

−ci qik2

bi (m11i − m12i )

)viwi

+

(∂qik2

∂φi+

bi ci qik1

m11i + m12i

)w2

i = 0 (13)

K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204 195

for k = 1, 2. Clearly (13) holds if we choose qik j (ηi), k =

1, 2, j = 1, 2 such that

∂qik1

∂xicos(φi ) +

∂qik1

∂yisin(φi ) = 0,

∂qik1

∂φi+

∂qik2

∂xicos(φi ) +

∂qik2

∂yisin(φi )

−ci qik2

bi (m11i − m12i )= 0,

∂qik2

∂φi+

bi ci qik1

m11i + m12i= 0.

(14)

A family of solutions of the above partial differential equations(PDEs) is

qik1 = Cik1 sin(ci∆iφi ) + Cik2 cos(ci∆iφi ),

qik2 = bi (m11i − m12i )∆i (Cik1 cos(ci∆iφi )

− Cik2 sin(ci∆iφi ))

(15)

where ∆i = 1/

√m2

11i − m212i , Cik1 and Cik2 are arbitrary

constants. Setting Ci11 = Ci22 = 0, Ci12 = Ci21 = 1 results in

Qi(ηi) =

[qi11 qi12qi21 qi22

]=

[cos(ci∆iφi ) −bi∆i (m11i − m12i ) sin(ci∆iφi )

sin(ci∆iφi ) bi∆i (m11i − m12i ) cos(ci∆iφi )

]. (16)

This matrix is globally invertible and its elements are bounded.We write (8) in the (ηi, Xi) coordinates as

ηi = Gi(ηi)Xi

Xi = −Dηi(ηi)Xi + Qi(ηi)B−1i M−1

i τ i(17)

where Gi(ηi) = Ji(ηi)Q−1i (ηi), Dηi(ηi) = Qi(ηi)DiQ−1

i (ηi). Itis seen that (17) is linear in the unmeasured states. If the robotis internally damped a reduced-order observer, i.e. an observerestimates Xi only, can be designed. To cover both damped andun-damped cases, we use the following full-order observer:

˙ηi = Gi(ηi)Xi + K01i(ηi − ηi)

˙Xi = −Dηi(ηi)Xi + Qi(ηi)B−1i M−1

i τ i + K02i(ηi − ηi)(18)

where ηi and Xi are the estimates of ηi and Xi, respectively.The observer gain matrices K01i and K02i are chosen such thatQ01i = KT

01iP01i + P01iK01i is positive definite, and that

Gi(ηi)TP01i − P02iK02i = 0 (19)

with P01i and P02i being diagonal positive definite matrices.From (18) and (17), we have

˙ηi = Gi(ηi)Xi − K01iηi,

˙Xi = −Dηi(ηi)Xi − K02iηi(20)

where ηi = ηi − ηi, Xi = Xi − Xi. We present the followingresults, whose proofs are given in Appendix A.

Proposition 1. Assume that the solutions of (17) exist, if themobile robot is internally damped, i.e. the damping coefficients,

d11i and d22i , are strictly positive constants, the observer errordynamics (20) is globally exponentially stable at the originfor all ηi ∈ R3. If the mobile robot is internally un-damped,i.e. d11i = d22i = 0, the observer error dynamics (20) isglobally stable at the origin for all ηi ∈ R3. Furthermore,assume that the velocity wi (t) starting at wi (t0), 0 ≤ t0 ≤ tis globally bounded, i.e. there exist a class-K function β0i and aconstant c0i such that |wi (t)| ≤ β0i (‖(ηi(t0), vi(t0))‖)+ c0i :=

wMi , ∀0 ≤ t0 ≤ t, (ηi(t0), vi(t0)) ∈ R5. Then the origin of (20)is globally asymptotically stable for all ηi ∈ R3.

Remark 2. The assumptions on existence of the solutionsof (17) and on boundedness of wi (t) are needed here toestablish global exponential/asymptotic stability of (20). Theseassumptions will be relaxed when considering the overallclosed loop system, i.e. when an output-feedback controller isintroduced.

By defining vi =[vi wi

]T being an estimate of thevelocity vector vi as

vi = Q−1i (ηi)Xi (21)

the velocity estimate error vector, vi =[vi wi

]T= vi − vi

satisfies

vi = Q−1i (ηi)Xi. (22)

By differentiating both sides of (21) along the solutions ofthe second equation of (18), and noting from (21) that Xi =

Qi(ηi)vi, we have

˙vi =

˙︷ ︸︸ ︷Q−1

i (ηi)Xi + Q−1i (ηi)(−Dηi(ηi)Xi + Qi(ηi)B−1

i M−1i τ i

+ K02i(ηi − ηi))

= −Ci(wi )vi − Divi + B−1i M−1

i τ i

+ Q−1i (ηi)K02i(ηi − ηi)

= −Ci(wi )vi − Divi + B−1i M−1

i τ i

− Ci(wi )vi + Q−1i (ηi)K02i(ηi − ηi) (23)

since Ci(wi ) is linear in wi , see (9). We now write (8) inconjunction with (23) as

xi = cos(φi )vi + cos(φi )vi

yi = sin(φi )vi + sin(φi )vi

φi = wi + wi

˙vi = τvci + Ωvi

˙wi = τwci + Ωwi

(24)

where Ωvi and Ωwi are the first and second rows of i:

i = −Ci(wi )vi + Q−1i (ηi)K02iηi (25)

and we have chosen the control torque

τ i = MiBi

(Ci(wi )vi + Divi +

[τvci τwci

]T)

(26)

with τvci and τwci being the new control inputs to be designedin the next section.

196 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

4. Path tracking error dynamics and control design

In this section, we will consider the dynamics (24) anddesign controls τvci and τwci for the robot i to achieve theformation control objective posed in Section 2. The actualcontrol vector τ i is then calculated from (26). The main ideasof the control design are as follows:

(1) Tracking errors of the robot i are interpreted in a frameattached to the reference path Γi (si ) such that the errordynamics are of a triangular form to which the backsteppingtechnique [33] can be applied.

(2) The orientation error and estimate of the robot linearvelocity are used as virtual controls to stabilize thetangential and cross-track errors interpreted in the frameattached to the robot reference path. The reason that theorientation error is not directly stabilized at this stage but istreated as a virtual control to stabilize the cross-track error,is to overcome difficulties caused by the nonholonomicfeature of the robot.

(3) The estimate of the robot angular velocity is then used as avirtual control to stabilize the orientation error interpretedin the frame attached to the frame attached to the robotreference path.

(4) The controls τvci and τwci are finally designed to force theactual estimates of the robot velocities to converge to theirvirtual values by using the backstepping technique.

(5) The above control designs are carried out in such a waythat the derivative of the path parameter si for the robot iis saved as an additional control input. This control inputis then used to synchronize all the path parameters. Thepath parameter derivative, s0, of the path of the virtualstructure center will be chosen as a function of the pathtracking errors of the robots and time. This choice meansthat the control system takes mobility of each robot intoaccount, i.e. a formation feedback is exhibited in the controlsystem.

4.1. Path tracking error dynamics

To prepare for the control design, we first interpret the pathtracking errors ((xi − xdi ), (yi − ydi ), (φi − φdi )) in the frameObi Xbi Ybi , of which the origin Obi is a point on the path Γi (si ),Obi Xbi and Obi Ybi axes are parallel to the surge axis and swayaxis of the robot, respectively, see Fig. 2. In Fig. 2, the directionof vdi is tangential to the path Γi (si ). From this figure, wehave [39]:

xei = (xi − xdi ) cos(φi ) + (yi − ydi ) sin(φi ),

yei = −(xi − xdi ) sin(φi ) + (yi − ydi ) cos(φi ),

φei = φi − φdi .

(27)

The physical interpretations of the new tracking errors(xei , yei , φei ) defined in (27) are: xei is the tangential trackingerror, yei is the cross-tracking error, and φei is the heading error.Differentiating both sides of (27) along the solution of (24), we

have

xei = vi − vdi cos(φei ) + yei (wi + wi ) + vi

yei = vdi sin(φei ) − xei (wi + wi )

φei = wi − wdi + wi

˙vi = τvci + Ωvi

˙wi = τwci + Ωwi

(28)

where we have defined

vdi =

√x ′2

di (si ) + y′2di (si )si ,

wdi =x ′

di (si )y′′

di (si ) − x ′′

di (si )y′

di (si )

x ′2di (si ) + y′2

di (si )si .

(29)

In the above expressions, we refer to vdi and wdi as the desiredlinear and angular velocities of the robot on the path. It isnoted that the speed of the robot on the path is specified bysi , and that (29) is well defined, see Assumption 1. From(27) for any value of φi , (xei , yei , φei ) = 0 if and only if(xi , yi , φi ) = (xdi , ydi , φdi ), we have therefore converted theproblem of output-feedback path tracking for the mobile robotin question to a problem of stabilizing (28) at the origin.

4.2. Control design

It is seen that (28) is of the lower triangular structure withrespect to vi and wi , we use the backstepping technique [33] todesign τvci and τwci in three steps.Step 1: Stabilizing the (xei , yei ) dynamics. In this step, weconsider vi and φei as controls. Define

vei = vi − αvi , φei = φei − αφei (30)

where αvi and αφei are the virtual controls of vi and φei ,respectively. Moreover, we define

˙si = si − ωi (t, xe, ye, φe) (31)

where xe = [xe1, xe2, . . . , xer ]T , ye = [ye1, ye2, . . . , yer ]

T , φe= [φe1, φe2, . . . , φer ]

T ; ωi (t, xe, ye, φe) is a strictly positivefunction that specifies how fast the i th mobile robot shouldmove to maintain the formation since si is related to the desiredforward speed, see (29). This function will be specified later.Substituting (30) and (31) into the first two equations of (28),and choosing the virtual controls αvi and αφei as

αvi = −k1i xei

∆1i+ vdiωi cos(φei ),

αφei = −arctan(

k2i yei

∆1i

) (32)

where ∆1i =

√1 + x2

ei + y2ei , vdi =

√x ′2

di (si ) + y ′2di (si ); k1i

and k2i are positive constants, result in the (xei , yei ) errordynamics

K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204 197

xei = −k1i xei

∆1i+ vei − vdi ˙si cos(φei ) + yei (wi + wi ) + vi

yei = −k2i vdiωi yei

∆2i−

k2i vdi ˙si yei

∆2i

+ vdi ( ˙si + ωi )(sin(φei ) cos(αφei )

+ (cos(φei ) − 1) sin(αφei )) − xei (wi + wi )

(33)

where ∆2i =

√1 + x2

ei + (1 + k22i )y2

ei .

Step 2: Stabilizing the φei dynamics. In this step, we considerwi as a control. Define

wei = wi − αwi (34)

where αwi is the virtual control of wi . From (30) and (32), thefirst time derivative of φei is given by

˙φei =

(1 − k2i xei∆1i∆−2

2i

)(αwi + wei + wi )

+k2i

∆1i∆22i

(vdiωi sin(φei )(1 + x2ei )

− xei yei (αvi − vdiωi cos(φei )))

+k2i vdi ˙si

∆1i∆22i

(vdiωi sin(φei )(1 + x2ei )

+ xei yei vdiωi cos(φei ))

−k2i xei yei

∆1i∆22i

(vei + vi ) − wdi (ωi + ˙si ). (35)

If the constant k2i is chosen such that 0 < k2i < 1, then from(35) the virtual control αwi is selected as

αwi = (1 − k2i xei∆1i∆−22i )−1

(−

k3i φei

∆3i+ wdiωi

−k2i

∆1i∆22i

(vdiωi sin(φei )(1 + x2ei )

− xei yei (αvi − vdiωi cos(φei )))

−vdiωi yei

∆1i φei(sin(φei ) cos(αφei )

+ (cos(φei ) − 1) sin(αφei ))

)(36)

where ∆3i =

√1 + φ2

ei , wdi = (x ′

di (si )y′′

di (si ) − x′′

di (si )

y′

di (si ))/(x′2di (si ) + y

′2di (si )), k3i is a positive constant. The

last term in (36) is included to cancel the cross term in theyei -dynamics. It is noted that (36) is well defined since 1 −

k2i xei∆1i∆−22i ≥ 1 − k2i > 0; sin(φe)/φe =

∫ 10 cos(φeλ)dλ

and (cos(φe)−1)/φe =∫ 1

0 sin(φeλ)dλ are smooth functions ofφe. It is also of interest to note that the upper bound of αwi isgiven by

|αwi | ≤ (1 − k2i )−1(k3i + |wdi |ωi + k2i (3|vdi |ωi + k1i )

+ 2|vdi |ωi ) := αMwi . (37)

Substituting (36) into (35) yields

˙φei = −k3i φei

∆3i−

vdiωi yei

∆1i φei(sin(φei ) cos(αφei )

+ (cos(φei ) − 1) sin(αφei )) + (1 − k2i xei∆1i∆−22i )

× (wei + wi ) +k2i vdi ˙si

∆1i∆22i

(vdiωi sin(φei )(1 + x2ei )

+ xei yei vdiωi cos(φei ))

−k2i xei yei

∆1i∆22i

(vei + vi ) − wdi ˙si . (38)

Step 3: Stabilizing the (vei , wei ) dynamics. In this step, thecontrols τvci and τwci are designed. From (30) and (32), thetime derivative of vei is given by

vei = τvci + Ωvi −∂αvi

∂si( ˙si + ωi ) −

∂αvi

∂t

r∑j=1

∂αvi

∂xej(v j − vd j ( ˙s j + ω j ) cos(φej ) + yej (w j + w j )

+ v j ) −

r∑j=1

∂αvi

∂yej(vd j ( ˙s j + ω j ) sin(φej ) − xej (w j + w j ))

r∑j=1

∂αvi

∂φej(w j − wd j ( ˙s j + ω j ) + w j ). (39)

From (39), we choose the control τvci as

τvci = −k4ivei +∂αvi

∂siωi +

∂αvi

∂t

+

r∑j=1

∂αvi

∂xej

(v j − vd jω j cos(φej ) + yej w j

)+

r∑j=1

∂αvi

∂yej(vd jω j sin(φej ) − xej w j )

+

r∑j=1

∂αvi

∂φej(w j − wd jω j ) −

xei

∆1i+

k2i xei yei φei

∆1i∆22i

(40)

where k4i is a positive constant. The last two terms in (40) areincluded to cancel the cross terms in xei and φei dynamics.Substituting (40) into (39) gives

vei = −k4ivei + Ωvi −∂αvi

∂si˙si

r∑j=1

∂αvi

∂xej

(−vd j ˙s j cos(φej ) + yej w j + v j

)−

r∑j=1

∂αvi

∂yej(vd j ˙s j sin(φej ) − xej w j )

r∑j=1

∂αvi

∂φej(−wd j ˙s j + w j ) −

xei

∆1i+

k2i xei yei φei

∆1i∆22i

.

(41)

198 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

From (34) and (36), the time derivative of wei is given by

wei = τwci + Ωwi −∂αwi

∂si( ˙si + ωi ) −

∂αwi

∂t

r∑j=1

∂αwi

∂xej(v j − vd j ( ˙s j + ω j ) cos(φej )

+ yej (w j + w j ) + v j )

r∑j=1

∂αvi

∂wej(vd j ( ˙s j + ω j ) sin(φej ) − xej (w j + w j ))

r∑j=1

∂αwi

∂φej(w j − wd j ( ˙s j + ω j ) + w j ). (42)

From (42), the control τwci is chosen as

τwci = −k5iwei +∂αwi

∂siωi +

∂αwi

∂t

+

r∑j=1

∂αwi

∂xej

(v j − vd jω j cos(φej ) + yej w j

)+

r∑j=1

∂αwi

∂yej

(vd jω j sin(φej ) − xej w j

)+

r∑j=1

∂αwi

∂φej(w j − wd jω j ) − (1 − k2i xei∆1i∆−2

2i )φei

(43)

where k5i is a positive constant. Substituting (43) into (42)yields

wei = −k5iwei + Ωwi −∂αwi

∂si˙si

r∑j=1

∂αwi

∂xej(−vd j ˙s j cos(φej ) + yej w j + v j )

r∑j=1

∂αwi

∂yej(vd j ˙s j sin(φej ) − xej w j )

r∑j=1

∂αwi

∂φej(−wd j ˙s j + w j ) − (1 − k2i xei∆1i∆−2

2i )φei .

(44)

We now need to choose all the functions ωi (t, xe, ye, φe) andthe update law for ˙si so that (31) holds. To do this, we considerthe following Lyapunov function

V1 =

r∑i=1

(√1 + x2

ei + y2ei +

√1 + φ2

ei − 2 + 0.5v2ei

+ 0.5w2ei + 0.5γi (si − s0)

2)

(45)

where γi is a positive constant. We note that the choice ofweighting on the path parameters in (45) is not unique. Thereare many other choices discussed in [21]. The time derivative

of (45) along the solutions of (33), (38), (41) and (44) is

V1 = −

r∑i=1

(k1i x2

ei

∆21i

+k2i vdiωi y2

ei

∆1i∆22i

+k3i φ

2ei

∆23i

+ k4iv2ei

+ k5iw2ei

)+

r∑i=1

Φ1i +

r∑i=1

Φ21i ˙si

+

r∑i=1

r∑j=1

Φ22i j ˙s j +

r∑i=1

γi (si − s0)( ˙si + ωi − s0) (46)

where

Φ1i =xei

∆1ivi + (1 − k2i xei∆1i∆−2

2i )∆−13i wi φei

−k2i xei yei

∆1i∆22i∆3i

vi φei + Ωvivei + Ωwiwei

r∑j=1

(∂αvi

∂xej(yej w j + v j )vei −

∂αvi

∂yejxej w jvei

−∂αvi

∂φejw jvei +

∂αwi

∂xej

(yej w j + v j

)wei

−∂αwi

∂yejxej w jwei −

∂αwi

∂φejw jwei

), (47)

Φ21i = −xei

∆1ivdi cos(φei ) −

k2i vdi yei

∆1i∆2i

+vdi yei

∆1i(sin(φei ) cos(αφei )

+ (cos(φei ) − 1) sin(αφei ))

+k2i vdi

∆1i∆22i∆3i

(vdiωi sin(φei )(1 + x2ei )

+ xei yei vdiωi cos(φei ))φei (48)

Φ22i j =

r∑j=1

(−

∂αvi

∂xejvd j cos(φej )vei +

∂αvi

∂yejvd j sin(φej )vei

−∂αvi

∂φejwd jvei −

∂αwi

∂xejvd j cos(φej )vei

+∂αwi

∂yejvd j sin(φej )vei −

∂αwi

∂φejwd jvei

). (49)

By noting that∑r

i=1∑r

j=1 Φ22i j ˙s j =∑r

i=1∑r

j=1 Φ22 j i ˙si , wecan write (46) as

V1 = −

r∑i=1

(k1i x2

ei

∆21i

+k2i vdiωi y2

ei

∆1i∆22i

+k3i φ

2ei

∆23i

+ k4iv2ei

+ k5iw2ei

)+

r∑i=1

Φ1i +

r∑i=1

(Φ21i +

r∑j=1

Φ22 j i

)˙si

+

r∑i=1

γi (si − s0)( ˙si + ωi − s0). (50)

From (50), we can choose

ωi = s0, ˙si = −εs tanh

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

)(51)

K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204 199

where εs is a positive constant to be selected later. We now canchoose s0 in two cases: the first case is with formation feedbackand the second case is without formation feedback as discussedin Section 2.

For the case with formation feedback, s0 can be chosen as(among many others [22])

s0 = ω0(t)(1 − χ1e−χ2(t−t0))

× (1 − χ3 tanh(xTe Γx xe + yT

e Γy ye + φTe Γφφe)) (52)

where ω0(t) is a strictly positive and bounded function.This function specifies how fast the whole group of robotsshould move, since the forward speed of the center of the

virtual structure is given by vd0 =

√x ′2

d0(s0) + y ′2d0(s0)s0. The

weighted positive definite matrices Γx ,Γy,Γφ determining thetracking errors are taken into account in the formation feedback.All the constants χ1, χ2 and χ3 are nonnegative but χ1 < 1and χ3 < 1. If χ1, χ2 and χ3 are positive, the choice of s0in (52) has the following desired feature: when the trackingerrors are large, the virtual structure will wait for robots; whenthe tracking errors converge to zero and the time increases, s0approaches ω0(t), i.e. the center of the virtual structure movesat the desired speed. Now we choose the constant εs suchthat

εs < ω0(t)(1 − χ1)(1 − χ3) (53)

then we have

si = ˙si + ωi

= −εs tanh

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

)+ ω0(t)(1 − χ1e−χ2(t−t0))

× (1 − χ3 tanh(xTe Γx xe + yT

e Γy ye + φTe Γφφe))

≥ −εs + ω0(t)(1 − χ1)(1 − χ3) > 0. (54)

For the case without formation feedback, s0 can be simply cho-sen as

s0 = ω∗

0(t) (55)

where ω∗

0(t) is a strictly positive and bounded function, whichagain specifies how fast the whole group of robots should move.It is noted that in this case, the controls τvci and τwci are sig-nificantly simplified in the sense that all the terms in the sum∑r

i=1, see (40), (43) and (51) are zero.

Remark 3. In the case with formation feedback, i.e. s0 ischosen as in (52), each robot requires the path parameters,measurements of position and orientation of itself and all otherrobots in the group to be available for feedback. In the casewithout formation feedback, i.e. s0 is chosen as in (55), eachrobot requires only the path parameter and measurements ofposition and orientation of itself for feedback. The trade-off isthat the mobility of each robot is taken into account for thecase with formation feedback but is not for the case withoutformation feedback. For example, if some robots get saturatedor disturbed, formation cannot be achieved in the case withoutformation feedback.

Substituting (51) into (50) yields

V1 = −

r∑i=1

(k1i x2

ei

∆21i

+k2i vdiωi y2

ei

∆1i∆22i

+k3i φ

2ei

∆23i

+ k4iv2ei

+ k5iw2ei

)+

r∑i=1

Φ1i − εs

r∑i=1

(Φ21i +

r∑j=1

Φ22 j i

+ γi (si − s0)

)tanh

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

).

(56)

We now state the main result of our paper, whose proof is givenin Appendix B.

Theorem 1. Under Assumption 1, the control inputs τvi andτwi given by (26), (40) and (43), the observer (18) and (21), andthe path parameter update law (51) solve the control objective(5) and (6).

Starting from the convenient dynamics (8), the observerdesign and control design are summarized in Table 1:

5. Simulations

In this section we simulate formation control of a group ofthree identical mobile robots to illustrate the effectiveness of theproposed controller. The physical parameters of the robot takenfrom [31], the observer and control gains, the initial conditions,and the parameters involved the update of the path parametersare as follows:

ri = 0.15, bi = 0.75, ai = 0.3, mci = 30,

mwi = 1, Ici = 15.625, Iwi = 0.005, Imi = 0.0025,

η1(0) =[−5 0 0

]T, η2(0) =

[−5 5 0

]T,

η3(0) =[−5 −5 0

]T,

ω1(0) = ω2(0) = ω3(0) =[0 0

]T,

ηi(0) =[0 0 0

]T, Xi(0) =

[0 0

]T,

P01i = diag(1, 1, 1), K01i = diag(1, 1, 1),

P02i = diag(1, 1), K02i = (Ji(ηi)Q−1i (ηi))

T,

si (0) = 2, k1i = 1, k2i = 0.5; k3i = 1.5,

k4i = k5i = 2, γi = 1, Γi = diag(1, 1, 1),

ω0 = 0.2, χ1 = χ2 = 0, χ3 = 0.5, εs = 0.1.

(57)

The reference path of the center of the virtual structure is chosenas Γ0(s0) = (s0, 0). The distances from the place-holders to thecenter of the virtual structure are chosen as

l1(xd0(s1), yd0(s1)) = (0, 0),

l2(xd0(s2), yd0(s2)) = (3, 8 + 3 cos(0.5s2)),

l3(xd0(s3), yd0(s3)) = (3, −8 + 3 sin(0.5s3)).

(58)

These choices mean that the first place-holder coincides withthe center of the virtual structure which moves on a straight line,and that the other two place-holders move on two sinusoidalpaths. The robots’ position and orientation, and path parameter

200 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

Table 1Summary of the observer design and control design

Observer design:˙ηi = Gi(ηi)Xi + K01i(ηi − ηi)˙Xi = −Dηi(ηi)Xi + Qi(ηi)B−1

i M−1i τ i + K02i(ηi − ηi)

whereGi(ηi) = Ji(ηi)Q−1

i (ηi),Dηi(ηi) = Qi(ηi)DiQ−1

i (ηi),

Qi(ηi) =

[cos(ci∆i φi ) −bi∆i (m11i − m12i ) sin(ci∆i φi )sin(ci∆i φi ) bi∆i (m11i − m12i ) cos(ci∆i φi )

],∆i = 1/

√m2

11i − m212i

Control design:

τ i = MiBi(

Ci(wi )vi + Divi +[τvci τwci

]T )where

vi = Q−1i (ηi)Xi,

τvci = −k4i vei +∂αvi∂si

ωi +∂αvi∂t +

∑rj=1

∂αvi∂xej

(v j − vd j ω j cos(φej ) + yej w j ) +∑r

j=1∂αvi∂yej

(vd j ω j sin(φej ) − xej w j

)+∑r

j=1∂αvi∂φej

(w j − wd j ω j ) −xei∆1i

+k2i xei yei φei∆1i∆

22i

,

τwci = −k5i wei +∂αwi∂si

ωi +∂αwi∂t +

∑rj=1

∂αwi∂xej

(v j − vd j ω j cos(φej ) + yej w j )

+∑r

j=1∂αwi∂yej

(vd j ω j sin(φej ) − xej w j ) +∑r

j=1∂αwi∂φej

(w j − wd j ω j ) − (1 − k2i xei∆1i∆−22i )φei ,

with

αvi = −k1i xei∆1i

+ vdi ωi cos(φei ), αφei = −arctan(

k2i yei∆1i

),∆1i =

√1 + x2

ei + y2ei ,

αwi = (1 − k2i xei∆1i∆−22i )−1

(−

k3i φei∆3i

+ wdi ωi −k2i

∆1i∆22i

(vdi ωi sin(φei )(1 + x2ei ) − xei yei (αvi − vdi ωi cos(φei )))

−vdi ωi yei∆1i φei

(sin(φei ) cos(αφei ) + (cos(φei ) − 1) sin(αφei ))

),∆2i =

√1 + x2

ei + (1 + k22i )y2

ei ,∆3i =

√1 + φ2

ei

vei = vi − αvi , φei = φei − αφei , wei = wi − αwi ,

vdi =

√x ′2

di (si ) + y′2di (si ), wdi =

x ′di (si )y′′

di (si )−x ′′di (si )y′

di (si )

x ′2di (si )+y′2

di (si ),

xei = (xi − xdi ) cos(φi ) + (yi − ydi ) sin(φi ),yei = −(xi − xdi ) sin(φi ) + (yi − ydi ) cos(φi ),φei = φi − φdi ,ωi = s0, s0 = ω0(t)(1 − χ1e−χ2(t−t0))(1 − χ3 tanh(xT

e Γx xe + yTe Γy ye + φT

e Γφφe)),

si = −εs tanh(Φ21i +∑r

j=1 Φ22 j i + γi (si − s0)) + ω0(t)(1 − χ1e−χ2(t−t0))(1 − χ3 tanh(xTe Γx xe + yT

e Γy ye + φTe Γφφe)).

errors are plotted in Fig. 3. The path tracking errors and linearvelocities are plotted in Fig. 4. It is seen from these figures thateach robot asymptotically tracks its own path generated by thevirtual structure, and formation is successful, see the plot ofthe path parameter errors. In addition, Fig. 4 (bottom subplot)indicates that the first robot moves with a constant speed whilethe other two robots move with varying speeds to maintain theformation.

6. Conclusions

A methodology for formation control of a group of unicycle-type mobile robots at the dynamics level has been addressedin this paper. The main ingredients forming the resultsare a combination of the virtual structure and path-trackingapproaches, a coordinate transformation derived to cancel thevelocity quadratic terms, and an output feedback controllerdesigned for each robot in such a way that the derivative ofthe path parameter is left as a free input to synchronize theformation motion. Future work is to extend the techniquesdeveloped in this paper combined with our recent work [25]to formation control of underactuated ships.

Appendix A. Proof of Proposition 1

We prove this proposition by considering the damped andun-damped cases separately.

A.1. Damped case

Consider the Lyapunov function

V01i = ηTi P01iηi + XT

i P02iXi (59)

whose derivative along with the solutions of (20) and using (19)satisfies

V01i = −ηTi Q01iηi − XT

i Q02iXi (60)

where Q02i = DTηi(ηi)P02i + P02iDηi(ηi). Since Di is pos-

itive definite and Dηi(ηi) = Qi(ηi)B−1i M−1

i DiBiQ−1i (ηi)

with Qi(ηi) being given in (16), and Q01i is a con-stant positive definite matrix, there exist strictly posi-tive constants σ0i and ρ0i such that ‖(ηi(t), Xi(t))‖ ≤

ρ0i‖(ηi(t0), Xi(t0))‖e−σ0i (t−t0), ∀t ≥ t0 ≥ 0. Global exponen-tial stability of (20) holds for all ηi ∈ R3 because all elements of

K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204 201

Fig. 3. Top: Robot position and orientation in (x, y) plane. Bottom: Path parameter errors in the form of∑3

1

√(si − s0)2.

Fig. 4. Top: Tracking errors in the form of√

x2ei + y2

ei + φ2ei . Bottom: Robot linear velocities vi .

Ji(ηi), Q−1i (ηi), Dηi(ηi) are bounded, independent from xi , yi ,

and depend on only sin(φi ), cos(φi ), sin(ci∆iφi ), cos(ci∆iφi )

and the robot parameters, as long as the solutions of (17) exist.This also implies from (22) that

‖(vi (t), wi (t))‖ ≤ γ0i‖(ηi(t0), Xi(t0))‖e−σ0i (t−t0),

∀t ≥ t0 ≥ 0 (61)

where γ0i is a positive constant. That is we can use (18) toreconstruct vi, an estimate of vi from (21).

A.2. Un-damped case

Note that in this Dηi(ηi) = 0 since Di = 0. Hence the timederivative of (59) along the solution of (20) and using (19) inthis case satisfies

V01i = −ηTi Q01iηi ≤ 0 (62)

which implies ‖(ηi(t), Xi(t))‖ ≤ δ0i (·) with δ0i (·) being a non-decreasing function of ‖(ηi(t0), Xi(t0))‖. Next, we consider theLyapunov function

V02i = µ01i (ηTi P01iηi + XT

i P02iXi) − µ02i ηTi Gi(ηi)X i (63)

where µ01i and µ02i are positive constants to be picked suchthat V02i is positive definite. Since Gi(ηi) = Ji(ηi)Q−1

i (ηi), wehave

δ02im‖(ηi, Xi)‖2

≤ V02i ≤ δ02i M‖(ηi, Xi)‖2 (64)

where

δ02im = (µ01i min(λm(P01i), λm(P02i))− µ02i max(1, 1/(bi∆i (m11i − m12i )))),

δ02i M = (µ01i max(λm(P01i), λm(P02i))+ µ02i max(1, 1/(bi∆i (m11i − m12i )))).

202 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

Hence V02 is positive definite if µ01i and µ02i are picked, forchosen P01i and P02i, such that

δ02im ≥ δ∗

02im > 0. (65)

By taking a derivative of (63) along the solution of (20) andnoting that Dηi(ηi) = 0, we arrive at

V02i = −µ01i ηTi Q01iηi − µ02i X

Ti Gi(ηi)

TGi(ηi)Xi

− µ02i ηTi KT

01iGi(ηi)Xi + µ02i ηTi Gi(ηi)

TP−102iGi(ηi)P01iXi

− µ02i ηTi Gi(ηi)Xi. (66)

After some bounding calculation, we have

−XTi Gi(ηi)

TGi(ηi)Xi ≤ −A1i‖Xi‖2;

A1i := min(1, 1/(bi∆i (m11i − m12i ))2),

−ηTi KT

01iGi(ηi)Xi ≤ A2i (1/(4ξ01i )‖ηi‖2+ ξ01i‖Xi‖

2);

A2i := λm(K01i) max(1, 1/(bi∆i (m11i − m12i ))),

ηTi Gi(ηi)

TP−102iGi(ηi)P01iXi ≤ A3i‖ηi‖

2;

A3i := λM (P01i)/λm(P02i)

× max(1, 1/(bi∆i (m11i − m12i ))2),

−ηTi Gi(ηi)Xi = −ηT

i Gηi(ηi)φi Xi

≤ A4iwMi (1/(4ξ01i )‖ηi‖2+ ξ01i‖Xi‖

2);

A4i := max(1 + ci∆i , ci/(bi (m11i − m12i )))

(67)

where ξ01i is a positive constant. Substituting (67) into (66)yields

V02i ≤ −(µ01iλm(Q01i) − µ02i (1/(4ξ01i )(A2i + A4iwMi )

+ A3i ))‖ηi‖2− µ02i (A1i − ξ01i (A2i + A4iwMi ))‖Xi‖

2.

(68)

It is seen from (68) that we can pick small constantsξ01i , µ01i and a large enough constant µ02i such that (65) holdsand

V02i ≤ −ξ02i‖ηi‖2− ξ03i‖Xi‖

2 (69)

where ξ02i and ξ03i are positive constants, which in turn impliesglobal asymptotic stability of (20) in the un-damped case. Notethat (69) in general does not imply global exponential stabilityof (20) since wMi can depend on the initial conditions.

Appendix B. Proof of Theorem 1

Before proving Theorem 1, we note, upon tediouscompletion of squares, from (47) and (22) that

|Φ1i | ≤ ε1i (‖ηi‖2+ ‖Xi‖

2) + ε2i (v2ei + w2

ei ) (70)

where ε1i is some (large) positive constant and ε2i is anarbitrarily small positive constant. Now, to prove Theorem 1,we consider damped and un-damped cases separately.

B.1. Damped case

For this case, we consider the following Lyapunov function

V21 = V1 + µ03

r∑i=1

V01i (71)

where µ03 is a large enough positive constant to be specifiedlater, and V01i is given in (59). Using (60) and (56), thederivative of (71), satisfies

V21 ≤ −

r∑i=1

(k1i x2

ei

∆21i

+k2i vdiωi y2

ei

∆1i∆22i

+k3i φ

2ei

∆23i

+ (k4i − ε2i )v2ei + (k5i − ε2i )w

2ei

)

− εs

r∑i=1

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

)

× tanh

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

)

r∑i=1

(µ03λm(Q01i) − ε1i )‖ηi‖2

− (µ03λm(Q02i) − ε1i )‖Xi‖2. (72)

We can now pick the constants µ03 large enough andε2i small enough such that k4i − ε2i > 0, k5i −

ε2i > 0, µ03λm(Q01i) − ε1i > 0, µ03λm(Q02i) − ε1i >

0. Then the inequality of (72) means that V21(t) ≤

0, i.e. (xei (t), yei (t), φei (t), vei (t), wei (t), ηi(t), Xi(t), si (t) −

s0(t)), is bounded. Applying Babarlat’s lemma, found in [34],to (72) results in

limt→∞

(xei (t), yei (t), φei (t), vei (t), wei (t), ηi(t), Xi(t)) = 0

limt→∞

(r∑

i=1

(Φ21i (t) +

r∑j=1

Φ22 j i (t) + γi (si (t) − s0(t)))

)

× tanh

(Φ21i (t) +

r∑j=1

Φ22 j i (t) + γi (si (t) − s0(t))

)= 0.

(73)

On the other hand, from the first equation of (73) and (48) and(49), we have

limt→∞

(Φ21i (t) +

r∑j=1

Φ22 j i (t)

)= 0. (74)

From this fact, the second equation of (73) implies that

limt→∞

(si (t) − s0(t)) = 0 (75)

which completes the proof of Theorem 1 for the damped case.

B.2. Un-damped case

In this case, we consider the Lyapunov function

V22 = µ04V1 +

r∑i=1

V02i (76)

where V02i is given in (63), and µ04 is a positive constant to bepicked later. We remind the reader that here we do not assumewi (t) is bounded by wMi as in the proof of Proposition 1. Toprepare for calculating the derivative of (76), we here do not

K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204 203

use the bound of −ηTi Gi(ηi)Xi as in the last inequality of (67).

Instead, we proceed as follows

−ηTi Gi(ηi)Xi = −ηT

i Gηi(ηi)φi Xi

= −ηTi Gηi(ηi)(wi + wi )Xi

= −ηTi Gηi(ηi)(αwi + wei + wi )Xi

= −ηTi Gηi(ηi)(αwi + wi )Xi − ηT

i Gηi(ηi)wei Xi

≤ A4i (αMwi + γ0iδ0i (·))((1/4ξ01i )‖ηi‖

2+ ξ01i‖Xi‖

2)

+ µ04ε3iw2ei + 1/(4µ04ε3i )A2

4iδ20i (·)‖ηi‖

2 (77)

where αMwi is defined in (37), and ε3i is a positive constant to

be picked later. By using the first three inequalities of (67) and(77), differentiating both sides of (76) yields

V22 ≤ −µ04

r∑i=1

(k1i x2

ei

∆21i

+k2i vdiωi y2

ei

∆1i∆22i

+k3i φ

2ei

∆23i

+ k4iv2ei + (k5i − ε3i )w

2ei

)

− εs

r∑i=1

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

)

× tanh

(Φ21i +

r∑j=1

Φ22 j i + γi (si − s0)

)

r∑i=1

(k6i‖ηi‖2+ k7i‖Xi‖

2) (78)

where

k6i = µ01iλm(Q01i) − µ02i (1/(4ξ01i )A2i

+ A4i (αMwi + γ0iδ0i (·))((1/4ξ01i )) + A3i )

− 1/(4µ04ε3i )A24iδ

20i (·)

k7i = µ02i (A1i − ξ01i (A2i + A4iξ01i )).

(79)

A close look at (79) shows that we can pick small enough ε3i ,µ04, ξ01i and large enough µ01i such that

k6i ≥ k∗

6i , k7i ≥ k∗

7i (80)

where k∗

i , i = 6, 7 are strictly positive constants. From (78)and (80), using the same arguments as in the damped case, wecomplete the proof of Theorem 1. Finally we note that all of theconstants µ01i , µ02i , µ03, µ04, ξ01i , ε1i , ε2i , ε3i are used onlyfor proof. We do not need to choose them to implement theproposed controller.

References

[1] R.T. Jonathan, R.W. Beard, B.J. Young, A decentralized approach toformation maneuvers, IEEE Transactions on Robotics and Automation 19(2003) 933–941.

[2] T.D. Barfoot, C.M. Clark, Motion planning for formations of mobilerobots, Robotics and Autonomous Systems 46 (2004) 65–78.

[3] D.M. Stipanovica, G. Inalhana, R. Teo, C.J. Tomlina, Decentralizedoverlapping control of a formation of unmanned aerial vehicles,Automatica 40 (2004) 1285–1296.

[4] W. Ren, R.W. Beard, Formation feedback control for multiple spacecraftvia virtual structures, IEE Proceedings-Control Theory Application 151(2004) 357–368.

[5] H. Yamaguchi, Adaptive formation control for distributed autonomousmobile robot groups, in: Proc. IEEE Int. Conf. Robotics and Automation,Albuquerque, NM, 1997, pp. 2300–2305.

[6] P.K.C. Wang, Navigation strategies for multiple autonomous mobilerobots moving in formation, Journal of Robotic Systems 8 (2) (1991)177–195.

[7] P.K.C. Wang, F.Y. Hadaegh, Coordination and control of multiplemicrospacecraft moving in formation, Journal of the AstronauticalSciences 44 (3) (1996) 315–355.

[8] J.P. Desai, J. Ostrowski, V. Kumar, Controlling formations of multiplemobile robots, in: Proc. IEEE Int. Conf. Robotics and Automation,Leuven, Belgium, 1998, pp. 2864–2869.

[9] M. Mesbahi, F.Y. Hadaegh, Formation flying control of multiplespacecraft via graphs, matrix inequalities, and switching, AIAA JournalGuidance, Control, Dynamics 24 (2) (2000) 369–377.

[10] T. Balch, R.C. Arkin, Behavior-based formation control for multirobotteams, IEEE Transactions on Robotics and Automation 14 (1998)926–939.

[11] M. Schneider-Fontan, M.J. Mataric, Territorial multirobot task division,IEEE Transactions on Robotics and Automation 14 (1998) 815–822.

[12] Q. Chen, J.Y.S. Luh, Coordination and control of a group of small mobilerobots, in: Proc. IEEE Int. Conf. Robotics and Automation, 1994, pp.2315–2320.

[13] M. Veloso, P. Stone, K. Han, The CMUnited-97 robotic soccer team:Perception and multi-agent control, Robotics and Autonomous Systems29 (1999) 133–143.

[14] L.E. Parker, ALLIANCE: An architecture for fault-tolerant multirobotcooperation, IEEE Transactions on Robotics and Automation 14 (1998)220–240.

[15] K. Sugihara, I. Suzuki, Distributed algorithms for formation of geometricpatterns with many mobile robots, Journal of Robotic Systems 13 (3)(1996) 127–139.

[16] R.W. Beard, J. Lawton, F.Y. Hadaegh, A feedback architecture forformation control, IEEE Transactions on Control Systems Technology 9(2001) 777–790.

[17] N.E. Leonard, E. Fiorelli, Virtual leaders, artificial potentials andcoordinated control of groups, in: Proc. IEEE Conf. Decision and Control,Orlando, FL, 2001, pp. 2968–2973.

[18] W. Kang, N. Xi, A. Sparks, Formation control of autonomous agents in3D workspace, in: Proc. IEEE Int. Conf. Robotics and Automation, SanFrancisco, CA, 2000, pp. 1755–1760.

[19] M.A. Lewis, K.-H. Tan, High precision formation control of mobile robotsusing virtual structures, Autonomous Robots 4 (1997) 387–403.

[20] W. Kang, H.-H. Yeh, Co-ordinated attitude control of multisatellitesystems, International Journal of Robust and Nonlinear Control 12 (2002)185–205.

[21] R. Skjetne, S. Moi, T.I. Fossen, Nonlinear formation control of marinecraft, in: Proc. IEEE Conf. on Decision and Control, Las Vegas, NV, 2002,pp. 1699–1704.

[22] P. Ogren, M. Egerstedt, X. Hu, A control Lyapunov function approach tomultiagent coordination, IEEE Transactions on Robotics and Automation18 (2002) 847–851.

[23] R.W. Beard, J. Lawton, F.Y. Hadaegh, A coordination architecture forformation control, IEEE Transactions on Control Systems Technology 9(2001) 777–790.

[24] K.D. Do, Z.P. Jiang, J. Pan, A Global output-feedback controllerfor simultaneous tracking and stabilization of mobile robots, IEEETransactions on Robotics and Automation 20 (2004) 589–584.

[25] K.D. Do, J. Pan, Global path-tracking of underactuated ships with non-zero off-diagonal terms, Automatica 41 (2005) 87–95.

[26] M. Egerstedt, X. Hu, A. Stotsky, Control of a car-like robot using a virtualvehicle approach, in: Proceedings of the 37th Conference on Decision andControl, 1998, pp. 1503–1507.

[27] A. Astolfi, Discontinuous control of nonholonomic systems, Systems andControl Letters 27 (1996) 37–45.

204 K.D. Do, J. Pan / Robotics and Autonomous Systems 55 (2007) 191–204

[28] G. Besancon, Global output feedback tracking control for a class ofLagrangian systems, Automatica 36 (2000) 1915–1921.

[29] W.E. Dixon, D.M. Dawson, E. Zergeroglu, A. Behal, Nonlinear Controlof Wheeled Mobile Robots, Springer, London, 2001.

[30] R. Fierro, F.L. Lewis, Control of a nonholonomic mobile robot:backstepping kinematics into dynamics, in: Proceedings of the 34thConference on Decision and Control, 1995, pp. 3805–3810.

[31] T. Fukao, H. Nakagawa, N. Adachi, Adaptive tracking control ofnonholonomic mobile robot, IEEE Transactions on Robotics andAutomation 16 (2000) 609–615.

[32] I. Kolmanovsky, N.H. McClamroch, Developments in nonholonomiccontrol problems, IEEE Control Systems Magazine 15 (1995) 20–36.

[33] M. Krstic, I. Kanellakopoulos, P.V. Kokotovic, Nonlinear and AdaptiveControl Design, Wiley, New York, 1995.

[34] H. Khalil, Nonlinear Systems, Prentice Hall, 2002.[35] T.C. Lee, K.T. Song, C.H. Lee, C.C. Teng, Tracking control of unicycle-

modelled mobile robots using a saturation feedback controller, IEEETransactions on Control Systems Technology 9 (2) (2001) 305–318.

[36] A. Loria, Global tracking control of one degree of freedomEuler–Lagrange systems without velocity measurement, EuropeanJournal of Control (1996) 144–151.

[37] A. Loria, K. Melhem, Position feedback global tracking control ofEL systems: A state transformation approach, IEEE Transactions onAutomatic Control 47 (2002) 841–847.

[38] H. Nijmeijer, T.I. Fossen (Eds.), New Directions in Nonlinear ObserverDesign, Springer-Verlag, London, 1999.

[39] C. Samson, Velocity and torque feedback control of a nonholonomiccart, in: Advanced Robot Control, in: C. Canudas de Wit (Ed.), LectureNotes in Control and Information Sciences, Springer-Verlag, Berlin, 1991,pp. 125–151.

[40] R. Sepulchre, M. Jankovic, P. Kokotovic, Constructive Nonlinear Control,Springer-Verlag, New York, 1997.

K.D. Do obtained his ME-degree and Ph.D.degree with Distinction in Mechanical Engineeringfrom The University of Wollongong and TheUniversity of Western Australia in 1999 and 2003,respectively. Currently, he is a research fellowat the School of Mechanical Engineering, TheUniversity of Western Australia. His researchareas are control of nonlinear systems, control ofmultiple agents, control of land, air and oceanvehicles, and control of systems governed bypartial differential equations.

Dr. J. Pan obtained his B.Sc. in physics fromNanjing University, China in 1982. He obtainedhis Ph.D. in acoustics from Adelaide University,Australia 1989. From 1989 to 1991, he wasa research associate at Adelaide University andworked on active control of noise and vibration.Since 1991, Pan has become a lecturer, seniorlecturer, associate professor, and then professor atthe School of Mechanical Engineering, Universityof Western Australia. His undergraduate teachingcovers dynamics, acoustics, vibration, control and

mechatronics. His research areas are room acoustics, structural acoustics andactive noise and vibration control. He is the director of Center for Acoustics,Dynamics and Vibration.