10
Robotics and Autonomous Systems 58 (2010) 727–736 Contents lists available at ScienceDirect Robotics and Autonomous Systems journal homepage: www.elsevier.com/locate/robot Formation path following control of unicycle-type mobile robots Jawhar Ghommam a , Hasan Mehrjerdi b , Maarouf Saad b , Faiçal Mnif a,c,* a Research unit on Mechatronics and Autonomous Systems, École Nationale d’Ingénieurs de Sfax (ENIS), BP W, 3038 Sfax, Tunisia b Department of Electrical Engineering, École de technologie supérieure, 1100, rue Notre-Dame Ouest, Montréal, Québec, H3C 1K3, Canada c Department of Electrical and Computer Engineering, Sultan Qaboos University, P.O. Box 33, Muscat 123, Oman article info Article history: Received 30 November 2008 Received in revised form 27 October 2009 Accepted 29 October 2009 Available online 12 November 2009 Keywords: Path following Formation control Virtual structure Nonholonomic robot Adaptive control abstract This paper presents a control strategy for the coordination of multiple mobile robots. A combination of the virtual structure and path following approaches is used to derive the formation architecture. A formation controller is proposed for the kinematic model of two-degree-of-freedom unicycle-type mobile robots. The approach is then extended to consider the formation controller by taking into account the physical dimensions and dynamics of the robots. The controller is designed in such a way that the path derivative is left as a free input to synchronize the robot’s motion. Simulation results with three robots are included to show the performance of our control system. Finally, the theoretical results are experimentally validated on a multi-robot platform. © 2009 Elsevier B.V. All rights reserved. 1. Introduction During recent years, efforts have been made to give autonomy to single mobile robots by using different sensors, actuators and advanced control algorithms. This was mainly motivated by the necessity to develop complex tasks in an autonomous way, as de- manded by service or production applications. In some applica- tions, a valid alternative (or even the mandatory solution) is the use of multiple simple robots which, operating in a coordinated way, can develop complex tasks [1–3]. This alternative offers addi- tional advantages, in terms of flexibility in operating the group of robots and failure tolerance due to redundancy in available mobile robots [4]. In the literature, there have been three main methods to formation control of multiple robots: 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, whilst the rest of robots in the group act as followers [1,5]. 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 * Corresponding author at: Department of Electrical and Computer Engineering, Sultan Qaboos University, P.O. Box 33, Muscat 123, Oman. E-mail addresses: [email protected] (J. Ghommam), [email protected] (H. Mehrjerdi), [email protected] (M. Saad), [email protected] (F. Mnif). 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, the disadvantage re- lated to this approach is that there is no explicit feedback to the formation; that is, there is no explicit feedback from the followers to the leader in this case. The behavioral approach prescribes a set of desired behaviors for each member in the group, and weighs them such that desirable group behavior emerges without an explicit model of the subsys- tems or the environment. Possible behaviors include trajectory and neighbor tracking, collision and obstacle avoidance, and formation keeping. In [6], the behavioral approach for multi-robot teams is described where formation behaviors are implemented with other navigational behaviors to derive control strategies for goal seek- ing, collision avoidance and formation maintenance. The advan- tage is that it is natural to derive control strategies when vehicles have multiple competing objectives, and an explicit feedback is in- cluded through communication between neighbors. The disadvan- tages are that the group behavior cannot be explicitly defined, and it is difficult to analyze the approach mathematically and guaran- tee the group stability. In the virtual structure approach, the entire formation is treated as a single, virtual, structure and it acts as a single rigid body. The control law for a single vehicle is derived by defining the dynam- ics of the virtual structure and it then translates the motion of the virtual structure into the desired motion for each vehicle [7–9]. In [10], virtual structures have been achieved by having all mem- bers of the formation tracking assigned nodes which move into de- sired configuration. A formation feedback has been used to prevent 0921-8890/$ – see front matter © 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.robot.2009.10.007

Formation path following control of unicycle-type mobile robots

Embed Size (px)

Citation preview

Robotics and Autonomous Systems 58 (2010) 727–736

Contents lists available at ScienceDirect

Robotics and Autonomous Systems

journal homepage: www.elsevier.com/locate/robot

Formation path following control of unicycle-type mobile robotsJawhar Ghommam a, Hasan Mehrjerdi b, Maarouf Saad b, Faiçal Mnif a,c,∗a Research unit on Mechatronics and Autonomous Systems, École Nationale d’Ingénieurs de Sfax (ENIS), BP W, 3038 Sfax, Tunisiab Department of Electrical Engineering, École de technologie supérieure, 1100, rue Notre-Dame Ouest, Montréal, Québec, H3C 1K3, Canadac Department of Electrical and Computer Engineering, Sultan Qaboos University, P.O. Box 33, Muscat 123, Oman

a r t i c l e i n f o

Article history:Received 30 November 2008Received in revised form27 October 2009Accepted 29 October 2009Available online 12 November 2009

Keywords:Path followingFormation controlVirtual structureNonholonomic robotAdaptive control

a b s t r a c t

This paper presents a control strategy for the coordination ofmultiplemobile robots. A combination of thevirtual structure and path following approaches is used to derive the formation architecture. A formationcontroller is proposed for the kinematic model of two-degree-of-freedom unicycle-type mobile robots.The approach is then extended to consider the formation controller by taking into account the physicaldimensions and dynamics of the robots. The controller is designed in such away that the path derivative isleft as a free input to synchronize the robot’s motion. Simulation results with three robots are included toshow the performance of our control system. Finally, the theoretical results are experimentally validatedon a multi-robot platform.

© 2009 Elsevier B.V. All rights reserved.

1. Introduction

During recent years, efforts have been made to give autonomyto single mobile robots by using different sensors, actuators andadvanced control algorithms. This was mainly motivated by thenecessity to develop complex tasks in an autonomous way, as de-manded by service or production applications. In some applica-tions, a valid alternative (or even the mandatory solution) is theuse of multiple simple robots which, operating in a coordinatedway, can develop complex tasks [1–3]. This alternative offers addi-tional advantages, in terms of flexibility in operating the group ofrobots and failure tolerance due to redundancy in available mobilerobots [4]. In the literature, there have been threemainmethods toformation control of multiple robots: leader following, behavioraland virtual structure. Each approach has its own advantages anddisadvantages.In the leader following approach, some vehicles are considered

as leaders, whilst the rest of robots in the group act as followers[1,5]. The leaders track predefined reference trajectories, and thefollowers track transformed versions of the states of their nearestneighbors according to given schemes. An advantage of the leader

∗ Corresponding author at: Department of Electrical and Computer Engineering,Sultan Qaboos University, P.O. Box 33, Muscat 123, Oman.E-mail addresses: [email protected] (J. Ghommam),

[email protected] (H. Mehrjerdi), [email protected](M. Saad), [email protected] (F. Mnif).

0921-8890/$ – see front matter© 2009 Elsevier B.V. All rights reserved.doi:10.1016/j.robot.2009.10.007

following approach is that it is easy to understand and implement.In addition, the formation can still bemaintained even if the leaderis perturbed by some disturbances. However, the disadvantage re-lated to this approach is that there is no explicit feedback to theformation; that is, there is no explicit feedback from the followersto the leader in this case.The behavioral approach prescribes a set of desired behaviors

for eachmember in the group, andweighs them such that desirablegroup behavior emerges without an explicit model of the subsys-tems or the environment. Possible behaviors include trajectory andneighbor tracking, collision and obstacle avoidance, and formationkeeping. In [6], the behavioral approach for multi-robot teams isdescribed where formation behaviors are implemented with othernavigational behaviors to derive control strategies for goal seek-ing, collision avoidance and formation maintenance. The advan-tage is that it is natural to derive control strategies when vehicleshavemultiple competing objectives, and an explicit feedback is in-cluded through communication between neighbors. The disadvan-tages are that the group behavior cannot be explicitly defined, andit is difficult to analyze the approach mathematically and guaran-tee the group stability.In the virtual structure approach, the entire formation is treated

as a single, virtual, structure and it acts as a single rigid body. Thecontrol law for a single vehicle is derived by defining the dynam-ics of the virtual structure and it then translates the motion of thevirtual structure into the desired motion for each vehicle [7–9].In [10], virtual structures have been achieved by having all mem-bers of the formation tracking assigned nodeswhichmove into de-sired configuration. A formation feedback has been used to prevent

728 J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736

members leaving the group. Each member of the formation tracksa virtual element, while the motion of the elements is governedby a formation function that specifies the desired geometry of theformation. The main advantages of the virtual structure approachis that it is fairly easy to prescribe the coordinated behavior for thegroup, and the formation can be maintained very well during themaneuvers; that is, the virtual structure can evolve as a whole ina given direction with some given orientation and maintain a rigidgeometric relationship among multiple vehicles. However, if theformation has to maintain the exact same virtual structure all thetime, the potential applications are limited, especially when theformation shape is time varying or needs to be frequently recon-figured.In addition to the references mentioned so far, there have been

many results on the mathematical analysis of formation control.In [11], the authors analyze the stability of the behavior of thefirst-order vehicles in a formation that relied on the Graph Lapla-cian associated with a given communication topology. Consen-sus algorithms applied to a team represented by a second-orderdynamics are presented in [12] to guarantee attitude alignmentand velocities in a group of vehicles using undirected commu-nication information. New results on formation control based onsecond-order consensus protocols was given in [13]. In [14], newgeneral potential functions are constructed to design formationcontrollers that yield semi-global asymptotic convergence of agroup of mobile agents to a desired formation, and guarantee nocollisions among the agents. However, most of those works modelthe agents as point robots and consider only the problem of posi-tion control of the robots. In numerous applications the orientationof the agents plays an important role, whichmeans that the agentsmust be modeled as rigid bodies. Taking into account the positionand orientation of the rigid bodies in a formation of a team of mo-bile robots, Breivik et al. [15] proposed a guided formation controlscheme based on a modular design procedure that makes the de-sign completely decentralized in the sense that no variables needto be communicated between the formation members. In [16], theproblem of coordinated path following of multiple wheeled robotswas solved by resorting to linearization and gain scheduling tech-niques. Even though the solution given to the problem is sim-ple, it lacks global results; that is, convergence of the vehicles totheir paths and to the desired formation pattern is only guaranteedlocally.The challenge we are tackling in this paper is to design a non-

linear formation control law based on a virtual structure approachfor the coordination of a group ofN mobile robots [17]. This controllaw should force the robots’ relative positions with respect to thecenter of the virtual structure during the motion. The control sys-tem is derived in four stages. First, the dynamic of the virtual struc-ture is defined. Second, the desired motion for each mobile robotis defined by translating by a given distance the motion of the vir-tual structure center. Third, the path following problem for eachmobile robot is solved individually, by introducing a virtual targetthat propagates along the path. We interpret the path followingerrors in a triangular form, for which the backstepping techniquecan be applied to control the rate of progression of the virtual targetalong the path, and a local control law that makes themobile robottrack the virtual target. Finally, coordination is achieved by syn-chronizing the parametrization states that capture the positions ofthe virtual targets with the parametrization states of the virtualstructure’s center. The formation of a simplified kinematicmodel ofrobots is first considered to clarify the design philosophy. The pro-posed technique is then extended to the dynamics ofmobile robotswith nonholonomic constraints. The experimental controller test-ing was performed on EtsRo vehicles, available at the GREPCI,Robotics Lab of the École de Technologie Supérieure of Montreal.The reminder of this paper is organized as follows. The prob-

lem statement is presented in Section 2. Section 3 is devoted to

Fig. 1. Formation structure.

modeling of the path following configuration for a wheeledmobilerobot, while Sections 4 and 5 are the main part of this paper fo-cussing on the study of the coordinated control for, respectively,a team of kinematic wheeled mobile robots and dynamic mobilerobots. Simulation and experimental results are presented in Sec-tion 6. A conclusion is given in Section 7.

2. Problem statement

2.1. Kinematic model

We consider a group of N mobile robots, each of which has thefollowing equations of motion:

xi = vi cos(θi)yi = vi sin(θi)

θi = ωi (1)

where ηi = [xi, yi, θi]> denotes the position and the orientationvector of the ith robot of the group with respect to an inertial co-ordination frame (Fig. 1). vi and ωi stand for the linear and angularvelocities, respectively. For the group to move in a prescribed for-mation, eachmemberwill require an individual parameterized ref-erence path so that when all path parameters are synchronized themember iwill be in formation.We can generalize the setup of a sin-gle path ξ(s) to n paths by defining the center of a virtual structurethat moves along a given reference path ξ(s0) = [xd0(s0), yd0(s0)],with s0 being a path parameter, and create a set of n designa-tion vectors li(xd0(si), yd0(si)) relative to the center of the struc-ture.When the center of the virtual structuremoves along the pathξ0(s0), mobile robot i will then follow the individual desired pathgiven by

ξi(si) = ξ0(s0)+ R(θd0(si))li(xd0(si), yd0(si)) (2)

where R(θd0(si)) is the rotation matrix from a frame attached tothe center of the virtual structure and the earth fixed frame, whichis given as

R(θd0(si)) =[cos(θ0(si)) − sin(θ0(si))sin(θ0(si)) cos(θ0(si))

]θd0(si) = arctan

(ysid0xsid0

)(3)

where the partial derivative notations in [17,18] are used; i.e.,

ysid0 =∂yd0(si)∂si

, and xsid0 =∂xd0(si)∂si

.

J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736 729

2.2. Control objective

Before going on with the design, we first give the following as-sumption.

Assumption 1. 1. We assume that each mobile robot i of the for-mation broadcasts its state and reference trajectory to the restof the robots in the group. Moreover, it can receive states andreference trajectories from the other robots of the group.

2. The desired geometric path is regularly parameterized; i.e.,there exist strictly positive constants ε1i and ε2i, 1 ≤ i ≤ Nsuch that

(xsidi)2(s)+ (ysidi)

2(s) ≥ ε1i, s0 ≥ ε2i. (4)

Remark 1. The second inequality of Eq. (4) means that the centerof the virtual structure moves forward.

The overall control objective is to solve the formation problemforNmobile robotswhich consists of two parts [17]. The geometrictask ensures that an individual mobile robot converges to andstays at its designation in the formation. The dynamic task ensuresthat the formation maintains a speed along the path according tothe given speed assignment. The formation control objective boilsdown to design controller vi and ωi such that

limt→∞‖ηi(t)− ηdi(t)‖ = 0

limt→∞|si(t)− s0(t)| = 0 (5)

where ηid denotes the ith reference path to be tracked by robot i.The following lemma [19] will be useful later.

Lemma 1. Consider a scalar system

x = −kx+ f (t)

where k > 0 and f (t) is a bounded and uniformly continuousfunction. If, for any initial t0 ≥ 0 and any initial condition x(t0), thesolution x(t) is bounded and converges to 0 as t →∞, then

limt→∞

f (t) = 0.

Proof. The result follows using the Bellman–Grown inequalitylemma and the triangular inequality. �

3. Path following error dynamic

The problem we consider here is the path following for eachmobile robot in the formation; that is, we wish to find the controllaw vi and ωi such that the robot follows a reference point in thepath with position ηdi = [xdi, ydi, θdi]> and inputs vdi and ωdi. Thepath error is therefore interpreted in a frame attached to the refer-ence path ξ(si). Following [20], we define the error coordinates[ xeiyeiψei

]=

[ cos(θi) sin(θi) 0− sin(θi) cos(θi) 00 0 1

][xi − xdiyi − ydiθi − θdi

](6)

where θdi is defined as

θdi = arctan(ysidixsidi

). (7)

The error dynamics are then

xei = vi − vdi cos(θei)+ yeiωiyei = vdi sin(θei)− xeiωi (8)θei = ωi − ωdi

where we have defined

vdi =

√xsidi(si)2 + y

sidi(si)2si := vdi(si)si (9)

ωdi =xsidi(si)y

s2idi (si)− x

s2idi (si)y

sidi(si)

xsidi(si)2 + ysidi(si)2

si := ωdi(si)si. (10)

4. Control design

In the tracking model (8), yei could not be directly controlled,and to overcome this difficulty, we employ the backstepping ap-proach [19].Define the following variable:

˙si = si +$i(t, xe, ye, θe) (11)where xe = [xe1, xe2, . . . , xen]>, ye = [ye1, ye2, . . . , yen]> andθe = [θe1, θe2, . . . , θen]

>; $i(t, xe, ye, θe) is a strictly positivefunction that specifies how fast the ith mobile robot should moveto maintain the formation since si is related to the desired forwardspeed vdi.Step 1. Design a controller to stabilize the xei dynamic. The variable˙si should be left as an extra controller in order to synchronize allthe path parameters of each mobile robot in the formation. Wetherefore choose the following control for xei:vi = −k1ixei + vdi$ cos(θei). (12)In a closed loop, the xei dynamic can be rewritten as

xei = −k1ixei − vdi ˙si cos(θei)+ yeiωi. (13)

From (13), it is seen that, if ˙si and yei are zero, then xei globallyexponentially converges to zero.The next step of the design will focus on designing a controller

to stabilize θei at the origin.Step 2. Design a controller for ωi. Consider the following Lyapunovfunction:

V =12

n∑i=1

(x2ei + y2ei + θ

2ei + γi(si − s0)

2) (14)

where γi is a positive constant. The time derivative of (14) alongthe solutions of (13) and (8) yields

V =n∑i=1

xei(−k1ixei − vdi ˙si cos(θei)+ yeiωi)

+

n∑i=1

yei(vdi(˙si +$i) sin(θei)− xeiωi)

+

n∑i=1

θei(ωi − ωdi(˙s+$i))

+

n∑i=1

γi(si − s0)(˙si +$i − s0). (15)

If we select$i = s0, (16)the derivative of the Lyapunov function V becomes

V =n∑i=1

−k1ix2ei + θei

[yeivdi$i

∫ 1

0cos(λθei)dλ

+ωi − ωdi$i

]+

n∑i=1

[−vdi cos(θei)xei

+ yeivdi sin(θei)− θeiωdi + γi(si − s0)

]˙si. (17)

730 J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736

To make the derivative of the Lyapunov function V negative, wechoose the following controllers:

ωi = −k2iθei − yeivdi$i

∫ 1

0cos(λθei)dλ+ ωdi$i

˙si = −εω tanh(−vdi cos(θei)xei + yeivdi sin(θei)

− θeiωdi + γi(si − s0))

(18)

where εω is a positive constant to be selected later. Substituting theequations of (18) into (17) yields

V =n∑i=1

−k1ix2ei − k2iθ2ei − εωφi tanh(φi) (19)

where φi = −vdi cos(θei)xei + yeivdi sin(θei) − θeiωdi + γi(si − s0).We are able now to choose an appropriate function for s0 suchthat, when the tracking errors are large, the center of the virtualstructure will wait for the rest of the group; however, when theerrors converge to zero, we impose s0 to approach a given positivebounded functionω0(t), whichmeans that the center of the virtualstructure will move at a desired speed. s0 can be chosen as, amongmany others, [21]

s0 = ω0(t)(1− κ1e−κ2(t−t0))(1− κ3 tanh(x>e Γxxe

+ y>e Γyye + θ>

e Γθθe)) (20)

where ω0(t) is a strictly positive and bounded function. This func-tion specifies how fast the whole group of robots should move.Γx,Γy and Γθ are weighting positive matrices. All the constantsκ1, κ2 and κ3 are nonnegative, and κ1 and κ3 should be less than1. Now, if we choose the constant εω such that

εω < ω0(t)(1− κ1)(1− κ3) (21)

then we have

si = −εω tanh(φi)+ ω0(t)(1− κ1e−κ2(t−t0))× (1− κ3 tanh(x>e Γxxe + y

>

e Γyye + θ>

e Γθθe))

≥ −εω + ω0(t)(1− κ1)(1− κ3) > 0. (22)

From the above control design, we have the closed loop system

xei = −k1ixei − vdi ˙si cos(θei)+ yeiωiyei = vdi sin(θei)+ k2iθeixei + yeixeivdi

×$i

∫ 1

0cos(λθei)dλ− xeiωdi$i (23)

θei = −k2iθei − yeivdi$i

∫ 1

0cos(λθei)dλ− ωdi ˙si

si = −εω tanh(φi)+ ω0(t)(1− κ1e−κ2(t−t0))× (1− κ3 tanh(x>e Γxxe + y

>

e Γyye + θ>

e Γθθe)).

Wenow state themain result of the formation control for the kine-matic model of unicycle-type mobile robots.

Theorem 2. Under Assumption 1, the control inputs vi and ωi givenin (12) and (18) and the time derivative of each individual path sigiven in (22) for the mobile robot i solve the formation control ob-jective. In particular, the closed loop system is forward complete, andthe position and orientation of the robots track their path referenceasymptotically in the sense of (5).

Proof (Forward Completness). From (19), we have that V ≤ 0,which implies that

V (t) ≤ V (t0), ∀t ≥ t0. (24)

From the definition of V , the right-hand side of (24) is boundedby a positive constant depending on the initial conditions. Theboundedness of the left-hand side of (24) also implies those ofxei, yei, θei and si − s0 for all t ≥ t0 ≥ 0. The assumed boundednessof ω0(t) implies that of the right-hand side of the last equationof (23) depends continuously on t through bounded functions.It follows that si and therefore s0 are bounded on the maximalinterval of definition [0, T ); this excludes finite escape time, so T =+∞. This in turn implies by construction that xi(t), yi(t), θi(t), siand s0 do not go to infinity in finite time.(Stability of (xei, yei, θei)) From the above argument on the bound-edness of (xei, yei, θei, si−s0), applying Barbalt’s lemma [22] to (19)results in

limt→∞

(xei, θei) = 0

limt→∞

φi tanh(φi) = 0. (25)

On the other hand, from the second equation of (25), we concludethat

limt→∞

φi = 0

limt→∞˙si = 0. (26)

From this fact, we also conclude that

limt→∞

(si − s0) = 0, (27)

which satisfies the second objective of (5). To satisfy the first ob-jective of (5), we have to show that yei also converges to zero as tgoes to infinity. In a closed loop the θei dynamic can be rewrittenas follows:

θei = −k2iθei − yeivdi$i

∫ 1

0cos(λθei)dλ− ωdi ˙si. (28)

Let f (t) = −yeivdi$i∫ 10 cos(λθei)dλ−ωdi

˙si; according to Lemma 1,it follows that

limt→∞

yeivdi$i

∫ 1

0cos(λθei)dλ = 0

since limt→∞∫ 10 cos(λθei)dλ = 1, then limt→∞ yei = 0, which

concludes the first objective of (5). �

5. Extension of formation control to the dynamic model of themobile robot

In this section, we study the augmented system (8) appendedwith a dynamic model of a nonholonomic mobile robot [23].

xei = vi − vdi cos(θei)+ yeiωiyei = vdi sin(θei)− xeiωi (29)θei = ωi − ωdi

M iνi = −C i(ωi)νi − Diνi + Biτi

where νi = [vi, ωi]>, τi = [τ1i, τ2i]> are the control vector torquesapplied to the wheels of the robot i. The modified mass matrix,Coriolis and Damping matrices are given by

M i = B−1i MiBi, C i(ωi) = B−1i Ci(ωi)BiDi = B−1i DiBi

where Bi is an invertible matrix given by Bi =[1 bi1 −bi

]and

M =[m11i m12im12i m11i

], Ci(ωi) =

[0 ciωi−ciωi 0

],Di =

[d11i 00 d22i

]with

bi,m11i,m22i, d11i, d22i and ci are the dynamic parameters of each

J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736 731

Fig. 2. Interaction between the host computer and the robots.

group, which are not necessarily know. Definitions of these param-eters are given in [23]. In this section we intend to show that theformation control developed for the kinematic model can also beobtained for the complete dynamic of unicycle-typemobile robots.The control objective is thereby similar to that of (5) and consistsof finding the controller τi that satisfies all the conditions of (5).We introduce the following new variables:

νei = νi − ανi , ⇒ vei = vi − αvi , ωei = ωi − αωi (30)

where αvi and αωi are defined as in (12) and (18), respectively. Fol-lowing the notation in Section 4, in the new coordinates (xei, yei,θei, vei, ωei) the system (29) is transformed into

xei = −k1ixei − vdi ˙si cos(θei)+ yeiωi + veiyei = vdi sin(θei)+ k2iθeixei + yeixeivdi

×$i

∫ 1

0cos(λθei)dλ− xeiωdi$i − xeiωei

θei = −k2iθei − yeivdi$i

∫ 1

0cos(λθei)dλ− ωdi ˙si + ωei (31)

Mνei = −C i(ωi)νi − Diνi −M i[αvi , αωi ]>+ Biτi

= −Diνei + ΦiΘi + Biτiwhere

Φi =

[ω2i −αvi −αvi 0 0 00 0 0 −ωivi −αωi −αωi

]Θi =

[bici d11i m11i +m12i

cibi

d22i m11i −m12i]>. (32)

At this stage, we design the actual control input vector τi and up-dated laws for the unknown system parameter vector Θi for eachrobot i. To do so, we consider the following Lyapunov function:

V2 = V +12

N∑i

(ν>eiM iνei + Θ

>

i Γ−1i Θi

)(33)

where Θi = Θi− Θi, with Θi being an estimate ofΘi and Γi a sym-metric positive definite matrix. Differentiating both sides of (33)along the solutions of (31) and (17) yields a non-negative func-tion. This suggests that we choose for the control input τi, the pathparameter si and the updated law Θi the following

τi = B−1(−K1iνei − ΦiΘi −

[xei θei

]>)˙Θ i = Γiproj(Φ>i νei, Θi)

si = −εω tanh(φi)+ ω0(t)(1− κ1e−κ2(t−t0))× (1− κ3 tanh(x>e Γxxe + y

>

e Γyye + θ>

e Γθθe)) (34)

Fig. 3. The three EtsRo mobile robots in the experiments.

where the operator, proj, is the Lipschitz continuous projec-tion [24] algorithm applied in our case as follows:

proj(π, µ) = π, if,Ξ(µ) ≤ 0proj(π, µ) = π, if,Ξ(µ) ≥ 0 andΞµ(µ) ≤ 0proj(π, µ) = (1− Ξ(µ))π, if,Ξ(µ) > 0 andΞµ(µ) > 0

where Ξ(µ) = (µ2 − µ2M)/(k2+ 2kµM), Ξµ(µ) =

(∂Ξµ(µ)

∂µ

), k

is an arbitrarily small positive constant, ω is an estimate of µ and|µ| ≤ µM . The projection algorithm is such that if ˙µ = proj(π, µ)and µ(t0) ≤ µM then

(a) µ(t) ≤ µM + k, ∀0 ≤ t0 ≤ t ≤ ∞(b) proj(π, µ) is Lipschitz continuous(c) |proj(π, µ)| ≤ |π |(d) µproj(π, µ) ≥ µπ with µ = µ− µ

and K1i is a symmetric positive definite matrix. Using Property (d)of the projection algorithm results in

V2 ≤ −n∑i=1

[k1ix2ei + k2iθ

2ei + εωφi tanh(φi)

+ ν>ei (Di + K1i)νei]. (35)

From the above control design, we have the closed loop system

xei = −k1ixei − vdi ˙si cos(θei)+ yeiωi + veiyei = vdi sin(θei)+ k2iθeixei + yeixeivdi

×$i

∫ 1

0cos(λθei)dλ− xeiωdi$i − xeiωei

θei = −k2iθei − yeivdi$i

∫ 1

0cos(λθei)dλ− ωdi ˙si + ωei

Mνei = −(Di + K1i)νei + ΦiΘi −[xei θei

]>si = −εω tanh(φi)+ ω0(t)(1− κ1e−κ2(t−t0))

× (1− κ3 tanh(x>e Γxxe + y>

e Γyye + θ>

e Γθθe))

˙Θ i = −Γiproj(Φ>i νei, Θi). (36)

Theorem 3. Under Assumption 1, the control inputs τi and theupdate law ˙Θ i given in (34) for the mobile robot i solve the formationcontrol objective. In particular, the closed loop system (36) is forwardcomplete and all signals in the closed loop system are UniformlyUltimately Bounded (UUB).

732 J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736

(a) Desired and actual vehicle’ trajectories. (b) Path following errors xei .

(c) Path following errors yei . (d) Heading errors θei .

(e) Path parameter error in the form√∑3

i=1(si − s0)2 . (f) Time evolution of the forward velocity of each robot.

Fig. 4. Coordination of three wheeled robots along a sinusoidal path.

Proof. Let Xei = [xei, yei, θei]> and Zi = [X>ei , ν>

ei , Θ>

i , si]>.

Considering (35), by subtracting and adding 12∑Ni=1 Θ

>

i Γ−1i Θi to

its right-hand side, we get

V2 ≤ δV2 + ρ (37)

where δ = min(1, 2µ1, . . . , µN), µi = min(k1i, k2i, εω) and ρ =12

∑Ni=1 Θ

>

i Γ−1i Θi. From (37), it is straightforward to show that

V2(t) ≤ V2(t0)e−δ(t−t0) +ρ

δ. (38)

This implies that, for all t in the maximal interval of definition[0, T ),

‖Zi‖ ≤ pi‖Zi(t0)‖e−0.5δ(t−t0) + ρi (39)

where pi is a constant that depends on the elements of Γi, andρi =

√ρ

δ. Consequently, all the signals in the closed-loop are

guaranteed to be UUB.The assumed boundedness of ω0(t) implies that the right-hand

side of (36) depends continuously on time t through a boundedfunction. With Zi being bounded, it follows that (36) is boundedon the maximal interval of definition. This excludes finite escapetimes. �

6. Simulation and experimental tests

In this section, we provide simulation and experimental resultsto validate the theoretical results of Sections 4 and 5. For the sim-ulations and experiments, the number of robots in the formationgroup is chosen for simplicity of implementation to be N = 3, and

J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736 733

(a) Desired and actual vehicle trajectories. (b) Time varying distance between the center of the virtual structure and therobots.

Fig. 5. Maneuvering coordination of three wheeled robots along different paths.

the interactions between the host computer and the robots are as-sumed to be bidirectional, as in Fig. 2. The experimental platform,implementation of the algorithm, and experimental results will bedescribed in detail.

6.1. Numerical simulations

To illustrate the dynamic performance of the proposed coordi-nation control scheme in Section 4, numerical simulations werecarried out. The three mobile robots assemble and maintain anin-line formation; that is, the three robots are requested to fol-low some regular paths with respect to the path parameter si byhaving them aligned along a common vertical line. In the casewhen the paths are not regular, one can break them into differ-ent regular paths and consider each path separately. Hereafter, wepropose two different scenarios for coordination. In the first one,we simulate the coordination control to execute an in-line forma-tion along three sinusoidal paths by having them aligned along acommon vertical line. Next, a different kind of formation maneu-ver of three mobile robots is presented, in which one robot is re-quired to follow the x-axis, while the two others must follow asinusoidal path, while the three agents keep an in-line formationalong the y-axis. For both scenarios, the control gains, the initialconditions, and the parameters involved the update of the path pa-rameters are k1 = 150, k2 = 70, εω = 0.12, ω0 = 5, κ1 =0.5, κ2 = 2, κ3 = 0.5, si(0) = 2, [x1(t0), y1(t0), θ1(t0)]> =[−4, 2, π4 ]

>, [x2(t0), y2(t0), θ2(t0)]> = [−3.5,−1, π4 ]>, [x3(t0),

y3(t0), θ3(t0)]> = [−3.5, 0.5, π4 ]>, and Γx = Γy = Γθ =

diag(1, 1, 1). In the first scenario, the reference path for the cen-ter of the virtual structure is taken as xd0 = 0.1s0 − 3.5 andyd0 = 0.5 cos(0.1s0). The distances from the vehicles to the cen-ter of the virtual structure are chosen as l1(xd0(s1), yd0(s1)) =(0, 0), l2(xd0(s2), yd0(s2)) = (0.1s2 − 3.5, 0.5 cos(0.1s2) − 1) andl3(xd0(s3), yd0(s3)) = (0.1s1 − 3.5, 0.5 cos(0.1s1) + 1). Clearlythe choice for the distance l1 means that the first robot coincideswith the center of the virtual structure. In Fig. 4(a), the vehiclesare progressing successfully towards their paths and the vehiclesultimately attain their desired formation configuration. The pathtracking and path parameter errors are plotted in Fig. 4(b), (c),(d) and (e), respectively. Notice in Fig. 4(f) how the vehicles ad-just their speed along the path so as to achieve coordinations.This could be explained as follows. During the first few seconds,the vehicles quickly move to reach their trajectories; once theykeep moving on their paths, each vehicle slows down to waitfor its neighbors in order to synchronize as long as they propa-gate. Fig. 5(a) depicts a typical formationmaneuver involving threerobots along different paths. This example captures the situationwhere a vehicle (moving in straight line) directs two other robots

Fig. 6. Path references and real robot trajectories.

to inspect twodistinct symmetric areas along a fixed direction. Thisparticular formation shows the novelty of the method adopted us-ing the virtual structure approach, since we allow the distancesbetween robots to change (see Fig. 5(b)).

6.2. Experimental validation

In this section, we provide experimental results to validate thetheoretical results of Section 5 on a team of three mobile robots.

6.2.1. Robot platform and program implementationTo show the performance of the proposed controllers, several

experiments were executed. The proposed controllers were im-plemented on a team of EtsRo mobile robot platforms. The EtsRovehicle is available at the Robotics Lab of the École de Technolo-gie Supèrieure in Montreal, supplied with an automatic naviga-tion system. A picture of a team of three EtsRo robots is givenin Fig. 3. EtsRo is a four-wheel car-like mobile robot, equippedwith two driving front wheels and DC motors. The EtsRo sensorequipment consists of high precision wheel encoders giving therelative localization of the vehicle, mounted on the motors count-ing (6000 pulses/turn). Within each robot there is a 32-bit micro-controller ATmega32 that maintains support for all sensor andactuation features of the robot and manages the navigation, guid-ance and control of the vehicle. A control program is sent remotelyby a Zigbee USB-Modem to the EtsRos. The range of the modemis about 100 m, which makes it a high quality modem for indoorapplications. The host computer executes programs which trans-mit the desired posture and the control commands to the EtsRos

734 J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736

Fig. 7. Path following errors xei .

Fig. 8. Path following errors yei .

Fig. 9. Heading errors θei .

through an on-board micro-controller. The communication delaybetween the host computer and each robot is evaluated as 100ms.Two level controller architectures are designed to navigate and

steer the EtsRo robots. The lower one is a PID controller, respon-sible for adjusting the velocity of right and left wheels. To filtersparks and unwanted noises on the velocities, a second-order filterwas designed and implemented. The higher level one is a nonlin-ear controller, and it is designed to navigate and steer the mobilerobots with regard to the desired coordination.

6.2.2. Experimental resultsThe simulations presented in Section 5 do not take into account

the dynamics of the robots. EtsRo robots are actuated with DCmo-tors that are characterized by a relatively poor transient responses.Moreover, the left and right motors may not have the same re-sponse due to the nonhomogeneous mass distribution over therobot body. For this reasons, the coordinated controller in Section 5

Fig. 10. Evolution of the forward velocities in the first scenario.

Fig. 11. Evolution of the angular velocities in the first scenario.

Fig. 12. Path references and real robot trajectories.

was implemented on the testbed program. The robots’ configu-ration was used as before, but the controller gains were set withsmaller values since the physical robots are very sensitive to gainsin actuation. Therefore the control gains k1i = 0.04, k2i = 2 andKi = diag(25, 35)were implemented to prevent the control inputsfrom saturating the motors. The environment in which the robotscan evolve is a rectangular arena, 4 m × 7 m. Assuming that thethree robots are identical, the nominal robot parameters (whichwere obtained via identification) are given in Table 1. The expres-sions for each element of the mass matrix are given as

m11i = 0.25b−2i r2i (mib

2i + Ii)+ Iwi,

m12i = 0.25b−2i r2i (mib

2i − Ii)

mi = mci + 2mwi, Ii = mcia2i + 2mwib

2i + Ici + 2Imi.

J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736 735

Fig. 13. Evolution of the forward velocities in the second scenario.

Table 1Parameters of the EtsRo mobile robot.

Parameters Values Unit

ri 0.04 (m)bi 0.1 (m)ai 0.02 (m)mci 2.3 (kg)mwi 0.28 (kg)Ici 0.01 (kgm2)Iwi 0.0056 (kgm2)Imi 0.002 (kgm2)

In the experiment, the trajectories to follow by the robots areas described in simulations section. The initial positions and ori-entations for the robots remained at [x1(t0), y1(t0), θ1(t0)]> =[−4.5 m, 1.5 m, 0 rad]>, [x2(t0), y2(t0), θ2(t0)]> = [−3.5 m,−1.5 m, 0 rad]>, [x3(t0), y3(t0), θ3(t0)]> = [−4.5 m, 1.5 m,0 rad]>. We ran two tests for different scenarios. In the first, therobots are required to follow three parallel sinusoidal paths, whilein the second, one of the robot coincides with the center of thevirtual structure which moves along a straight line and the othertwo robots move on two sinusoidal paths. Fig. 6 presents the ref-erence and the actual robot trajectories. The path tracking errorsxi − xdi, yi − ydi are shown in Figs. 7 and 8. Indeed, these errorsexhibit a steady-state value of 0.2 m; this is due to the dependenceof the steady errors upon the loop gain, and becausewe introducedsmall values for the control gains (to avoid saturating the motors),the errors drifted away from zero. Fig. 9 reports the orientation er-ror θi− θdi. Linear and angular velocities are plotted in Figs. 10 and11 respectively; these show that the robots travel along their pathwith a common velocity, and the formation is experimentally suc-cessful. In the second experimental scenario, the first mobile robotis forced tomove on a straight linewhich coincides with the centerof the virtual structure, and the other two robots move on two op-posite sinusoidal paths (see Fig. 12). The experimental linear andangular velocities in this scenario are reported in Figs. 13 and 14,respectively. Note from Fig. 13 how the first robot moves with aconstant velocity while the other two robots move with varyingvelocity to preserve the formation.

7. Conclusion

This paper has proposed amethodology for formation control ofa group of unicycle-type mobile robots represented at a kinematiclevel and a dynamic level. The approach that has been developedis mainly based on a combination of the virtual structure and pathfollowing approaches. The controller is designed in such away thatthe derivative of the path parameter is left as an additional controlinput to synchronize the formationmotion. Real-time experimentson amulti-robot platform showed the effectiveness of the theoret-ical results. Futurework is to design an observer for both kinematic

Fig. 14. Evolution of the angular velocities in the second scenario.

and dynamic models to estimate unavailable signals such as veloc-ities or orientation error tracking. Moreover, the impact of sensornoise on the systemperformance can be further alleviated by usingstate filter estimators.

References

[1] P.K.C. Wang, Navigation strategies for multiple autonomous robots moving information, Journal of Robotic Systems 8 (2) (1992) 177–195.

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

[3] Q. Chen, J.Y.S. Luh, Coordination and control of a group of small mobile robots,in: Proc. IEEE Int. Conf. Robotics and Automation, San Diego, CA, USA, 1994,pp. 2315–2320.

[4] Y. Ishida, Functional complement by cooperation of multiple autonomousrobots, in: Proc. IEEE Int. Conf. Robotics and Automation, San Diego, CA, USA,1994, pp. 2476–2481.

[5] S. Sheikholeslam, C. Desoer, Control of interconnected nonlinear dynamicalsystems: The platoon problem, IEEE Transactions on Automatic Control 37(1992) 806–810.

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

[7] K.D. Do, Formation tracking control of unicycle-type mobile robots, in: Proc.of Robotics and Automation Conf., Roma, 2007.

[8] X. Li, J. Xiao, Z. Cai, Backstepping based multiple mobile robots formationcontrol, in: Proc. IEEE Int. Conf. Intelligent Robots and Systems, Roma, 2005.

[9] T. Dierks, S. Jagannathan, Control of nonholonomic mobile robot formations:Backstepping kinematics into dynamics, in: Proc. of the Int. Conference onControl Application, Singapore, 2007.

[10] R. Beard, J. Lawton, Hadaegh, A coordination architecture for spacecraftformation control, IEEE Transactions on Control Systems Technology 9 (1999)777–790.

[11] A. Fax, R.M. Murray, Information flow and cooperative control of vehicleformations, IEEE Transactions on Automatic Control 50 (2004) 1465–1476.

[12] J. Lawton, W. Beard, Synchronized multiple spacecraft rotations, Journal ofAutomatica 8 (38) (2002) 1359–1364.

[13] W. Ren, On consensus algorithms for double-integrator dynamics, IEEETransactions on Automatic Control 6 (53) (2008) 1503–1509.

[14] K. Do, Bounded controllers for formation stabilization of mobile agents withlimited sensing ranges, IEEE Transactions on Automatic Control 3 (52) (2007)569–576.

[15] M. Breivik, T. Fossen, Guided formation control for wheeled mobile robots,in: Proc. of 9th IEEE Conference on Control, Automation, Robotics and Vision,Singapore, 2006, pp. 1–7.

[16] R. Ghabcheloo, A. Pascoal, A. Silvestre, C. Kaminer, Coordinated path fol-lowing control of multiple wheeled robots using linearization techniques,International Journal of Systems Science 37 (2006).

[17] R. Skjetne, S. Moi, T. Fossen, Nonlinear formation control of marine craft, in:Proc. of the 41st Conf. on Decision and Contr., Las Vegas, NV, 2002.

[18] R. Skjetne, T. Fossen, P.V. Kokotovic, Robust output maneuvering for a class ofnonlinear systems, Journal of Automatica 40 (2004) 373–383.

[19] Z.P. Jiang, H. Nijmeijer, Tracking control of mobile robots: A case study inbackstepping, Journal of Automatica 33 (1997) 1393–1399.

[20] Y.K. Kanayama, F. Miyazaki, T. Noguchi, A stable tracking control method foran autonomous mobile robot, in: Proc. of Robotics and Automation Conf., LasVegas, NV, 1990.

[21] K.D. Do, J. Pan, Nonlinear formation control of unicycle-type mobile robots,Journal of Robotics and Autonomous Systems 55 (2007) 191–204.

[22] H.K. Khalil, Nonlinear Systems, Macmillan, New York, 1992.[23] T. Fukao, H. Nakagawa, N. Adachi, Adaptive tracking control of nonholonomic

mobile robot, IEEE Transactions on Robotics And Automation 16 (2000)609–615.

[24] J. Pomet, L. Praly, Adaptive nonlinear regulation: Estimation from the Lya-punov equation, IEEE Transactions on Robotics And Automation 37 (1992)729–740.

736 J. Ghommam et al. / Robotics and Autonomous Systems 58 (2010) 727–736

Jawhar Ghommam was born in Tunis, Tunisia, in 1979.He received his B.Sc. degree from Institut Nationale desSciences Appliquées et de Technologies (INSAT), Tunisia,in 2003, his M.Sc. degree in Control Engineering fromthe Laboratoire d’Informatique, de Robotique et de Micro-electronique (LIRMM), Montpellier, France, in 2004, andhis Ph.D. in Control Engineering and Industrial Computingin 2008, jointly from the Université of Orléans, France,and Ecole Nationale d’Ingénieurs de Sfax, Tunisia. He is anAssistant Professor of Control Engineering at the InstitutNationale des Sciences Appliquées et de Technologies

(INSAT), Tunisia. He is a Member of the research unit on MEChatronics andAutonomous systems (MECA). His research interests include nonlinear controlof underactuated mechanical systems, adaptive control, guidance and control ofunderactuated ships and cooperative motion of nonholonomic vehicles.

Hasan Mehrjerdi received his B.Sc. and M.Sc. in ElectricalEngineering from Ferdowsi University of Mashhad andTarbiat Modares University of Tehran, respectively. Heis currently pursuing a Ph.D. in Electrical and RoboticsEngineering as a member of the GREPCI lab at theUniversité du Québec (Ecole de technologie supérieure).His research interests include mobile robotics, artificialintelligence, mobile sensor networks and mobile robotcoordination in known and unknown environments.

Maarouf Saad received his Bachelor and Master degreesin Electrical Engineering from Ecole Polytechnique ofMontreal in 1982 and 1984, respectively. In 1988, hereceived his Ph.D. in Electrical Engineering from McGillUniversity. He joined Ecole de technologie supérieure in1987, where he is teaching control theory and roboticscourses. His research is mainly in nonlinear control andoptimization applied to robotics and flight control system.

Faïçal Mnif received his M.Sc. and Ph.D. degrees in Con-trol and Robotics from the Ecole Polytechnique de Mon-treal, in 1991 and 1996, respectively. Dr. Mnif is anAssociate Professor of Control Engineering and Roboticsat the National Institute of Applied Sciences and Tech-nology, Tunis, Tunisia. He is currently on leave to SultanQaboos University, Oman, where he is holding a facultyposition with the Department of Electrical and ComputerEngineering. He is also a Member of the Research Unit onMechatronics and Autonomous Systems, Tunisia. Hismainresearch interests include robot modeling and control,

control of autonomous vehicles, modeling and control of holonomic and nonholo-nomic mechanical systems, and robust and nonlinear control.