formation control of unicycle mobile robots - tu/e · formation control of unicycle mobile robots...

139
. Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s Thesis Committee: prof.dr. H. Nijmeijer (Supervisor), TU/e dr.ir. N. van de Wouw (Coach), TU/e dr.MSc. D. Kostic, TU/e dr.ir. E.I. Barakova, TU/e ir. J. Ploeg, TNO Eindhoven University of Technology Department of Mechanical Engineering Dynamics and Control Group Eindhoven, October 23, 2008

Upload: ngothuan

Post on 29-Aug-2019

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

.

Formation Control

of Unicycle Mobile Robots

Theory and Experiments

T.H.A. van den BroekDCT 2008.131

Master’s Thesis

Master’s Thesis Committee:prof.dr. H. Nijmeijer (Supervisor), TU/edr.ir. N. van de Wouw (Coach), TU/edr.MSc. D. Kostic, TU/edr.ir. E.I. Barakova, TU/eir. J. Ploeg, TNO

Eindhoven University of TechnologyDepartment of Mechanical EngineeringDynamics and Control Group

Eindhoven, October 23, 2008

Page 2: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

ii

Page 3: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Abstract

In the last decade, the attention of formation and cooperative control of robotic systems hasgrown enormously in the control community. Compared to single robots, the usage of groupsof robots has several advantages such as the possibility of performing spatially distributedtasks, tasks that require redundancy, tasks that scale up and down in time, etc. In this thesis,the formation control problem of a group of unicycle mobile robots is considered. Hereto,a known tracking controller is adapted to enforce mutual coupling between non-holonomicunicycle mobile robots, i.e. a virtual structure controller is designed. Moreover, an experi-mental environment to perform experiments with the cooperative controller in real life hasbeen designed and realized.

The tracking controller, which is used in the virtual structure approach, is based on ear-lier work regarding controller design for the kinematic model of unicycle mobile robots. First,the tracking controller is used in a leader-follower approach towards the formation controlproblem. This represents a stepping stone to the design of the virtual structure controllerand illustrates the limitations (e.g. there is no explicit feedback from the followers to theleader) of the leader-follower approach, with respect to the virtual structure approach. Sec-ond, the tracking controller is used as a starting point for the design of a virtual structurecontroller for formation control. Using the latter control strategy, the mobile robots mediatebetween following their individual desired trajectories and trying to maintain the group for-mation.If the restrictions regarding the desired rotational velocity and control parameters are takeninto account, the formation error dynamics of a group of mobile robots using the leader-follower approach is shown to be locally exponentially stable. The formation error dynamicsof two unicycle mobile robots using the virtual structure controller is also shown to be lo-cally exponentially stable, when certain restrictions are taken into account with respect tothe desired forward velocity, desired rotational velocity, control parameters and coupling pa-rameters. Simulations performed without these restrictions, show that the formation errordynamics of unicycle mobile robots using the virtual structure controller are stable in a moregeneral setting. Moreover, experiments are performed, in the new designed experimental envi-ronment, to demonstrate the behaviour of the mobile robot using both formation approaches.

Since the real life behaviour of the mobile robots in both formation approaches is inter-esting to examen, an experimental environment is created. This experimental setup consistsof wireless mobile robots, named E-Puck, and a localization device, which is a combinationof a FireWire camera and the reacTIVision visual software. The experimental environmentsmeets the predefined requirements for testing on cooperative control strategies such as theones mentioned above.

iii

Page 4: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

iv

Page 5: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Samenvatting

De aandacht voor formatie en cooperatieve regelaars voor robotische systemen is enormgegroeid in de laatste tien jaar. Vergeleken met enkelvoudige robotische systemen, heeft hetgebruik van een groep van robots verschillende voordelen, zoals de mogelijkheid tot ruimtelijkverdeelde taken, taken die een overvloed vereisen, taken die in complexiteit toe- of afnemengedurende in de tijd, enz. In dit verslag wordt een formatie regelprobleem voor een groep vanmobiele robots beschouwd. Daarvoor is een bekende volgregelaar als basis gebruikt, waar-bij een additionele wederzijdse koppeling tussen mobiele robots wordt opgelegd, m.a.w. eenvirtuele structuur regelaar is ontworpen. Bovendien is een experimentele omgeving ontworpenen gerealiseerd, om met deze cooperatieve regelaars onder echte omstandigheden te kunnenexperimenteren.

De volgregelaar, die gebruikt wordt voor de virtuele structuur methode, is gebaseerd opeerder werk waarin een regelaar is ontworpen voor het kinematische model van een mobielerobot. Ten eerste is de volgregelaar gebruikt in een leider-volger aanpak van het formatieregelprobleem. Dit is een ideale opstap naar het ontwerp van een virtuele structuur regelaaren laat ook goed de beperkingen van de leider-volger aanpak zien, ten opzichte van de virtuelestructuur methode. Ten tweede is de volgregelaar gebruikt als startpunt voor het ontwerpvan de virtuele structuur regelaar. Gebruikmakend van de laatste regelstrategie, zullen demobiele robots het volgen van de individuele gewenste trajectorie en het behouden van degroepsformatie combineren.Rekening houdend met de beperkingen ten aanzien van de gewenste rotatie snelheid en deparameters van de regelaar, is de foutdynamica van een groep van mobiele robot, die geregeldis door middel van de leider-volger aanpak, lokaal exponentieel stabiel. De foutdynamicavan twee mobiele robots, die geregeld zijn door middel van de virtuele structuur methode, isook lokaal exponentieel stabiel, wanneer met bepaalde beperkingen rekening wordt gehouden,welke betrekking hebben op de gewenste voorwaartse snelheid, gewenste rotatie snelheid, deregel parameters en de koppelings parameters. Simulaties die zijn uitgevoerd zonder dezebeperkingen, laten zien dat de foutdynamica van mobiele robots die geregeld zijn door mid-del van de virtuele structuur methode ook stabiel zijn in algemenere situaties. Daarnaast zijner ook nog experimenten uitgevoerd, in de nieuw ontworpen experimentele omgeving, om hetgedrag van de mobiele robots te demonstreren voor beide formatieregelaars.

Aangezien het echte gedrag van de mobiele robots, die gebruik maken van beide formatierege-laars, het meest interessant is, wordt een experimentele omgeving gecreerd. Deze opstellingbestaat uit draadloze mobiele robots, genaamd E-Puck, en een positie meetsysteem, dat eencombinatie is van een FireWire camera en de reacTIVision visuele software. De experimenteleopstelling voldoet aan de gestelde eisen voor het testen van de formatieregelaars.

v

Page 6: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

vi

Page 7: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Contents

Abstract iii

Samenvatting v

1 Introduction 1

1.1 Motivations for Cooperative Control in Robotics . . . . . . . . . . . . . . . . 1

1.2 Areas of application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3.1 Approaches in Cooperative Control . . . . . . . . . . . . . . . . . . . . 3

1.3.2 Localization of Mobile Robots . . . . . . . . . . . . . . . . . . . . . . . 6

1.4 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.5 Report Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Preliminaries 9

2.1 Mathematical definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 Stability of Time-Varying Systems . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 Cascaded systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3 Kinematics and Tracking Control for a Unicycle Mobile Robot 15

3.1 Kinematics of a Unicycle Mobile Robot . . . . . . . . . . . . . . . . . . . . . 15

3.2 Tracking Controller for a Unicycle Mobile Robot . . . . . . . . . . . . . . . . 16

4 Formation Control 19

4.1 Master-Slave Approach versus Virtual Structure Approach . . . . . . . . . . . 19

4.2 Master-Slave Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.2.1 Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.2.2 Stability Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.3 Virtual Structure Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.3.1 Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.3.2 Stability Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.3.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

vii

Page 8: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

5 Experimental Setup 41

5.1 Choice of the Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.1.2 E-Puck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.1.3 Robots: comparison and choice . . . . . . . . . . . . . . . . . . . . . . 44

5.2 Choice of Localization Device . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.2.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.2.2 Localization techniques . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.2.3 Different localization systems . . . . . . . . . . . . . . . . . . . . . . . 46

5.2.4 Localization: comparison and choice . . . . . . . . . . . . . . . . . . . 48

5.3 Calibrating the Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . 48

5.4 Experimental Setup: New Design . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.4.1 Accurate and Consistent Measurements . . . . . . . . . . . . . . . . . 50

5.4.2 Time Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.4.3 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

5.4.4 Driving Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

5.4.5 Robustness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

5.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

6 Experimental Results 57

6.1 Experiments using the Master-Slave Approach . . . . . . . . . . . . . . . . . 57

6.2 Experiments using the Virtual Structure Approach . . . . . . . . . . . . . . . 60

6.2.1 Weak Coupling Parameters . . . . . . . . . . . . . . . . . . . . . . . . 61

6.2.2 Strong Coupling Parameters . . . . . . . . . . . . . . . . . . . . . . . 67

6.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

7 Conclusions and Recommendations 71

7.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

7.2 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

Bibliography 73

A Stability Proof 81

A.1 Proof of Theorem 2.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

A.2 Coordinate Transformation Matrix . . . . . . . . . . . . . . . . . . . . . . . . 83

A.3 Matrix g(t, z1, z2) satisfies Assumption 2.3.1 . . . . . . . . . . . . . . . . . . . 85

B Limitations of the Virtual Structure Controller 89

C Unicycle Mobile Robots 103

C.1 Mindstorm NXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

C.2 Khepera II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

C.3 Khepera III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

D MATLAB-Toolbox 107

D.1 connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

D.2 speed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

D.3 reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

viii

Page 9: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Contents

D.4 position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

E Python-Toolbox 109E.1 MyReactableClient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109E.2 recognizer5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109E.3 student . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110E.4 MS 1master 4slaves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110E.5 MS chained . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111E.6 virtual structure circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

F Consistency measurements 113

G How to Use the Experimental Setup? 117G.1 How to Use E-Puck? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

G.1.1 Communication Configuration . . . . . . . . . . . . . . . . . . . . . . 118G.1.2 Stepper Motors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118G.1.3 BlueTooth Serial Port communication . . . . . . . . . . . . . . . . . . 118

G.2 How to Use the Localization Device? . . . . . . . . . . . . . . . . . . . . . . . 120G.3 How to Use the Entire Experimental Setup? . . . . . . . . . . . . . . . . . . . 121

H Illustrating Experimental Results 125H.1 Master-Slave Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

ix

Page 10: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

x

Page 11: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 1

Introduction

Cooperative control of a group of mobile robots is the topic of this thesis. A group of mobilerobots should cooperate to achieve certain specified goals. One can think of numerous reasonsand applications to use cooperative control in robotics. These reasons and applications arefurther explained in Sections 1.1 and 1.2, respectively. Before a wide application of multi-robot systems is feasible in real life, still many technological and scientific challenges should besolved. One can think of the method of cooperative control, which is used for a group of mobilerobots, the means of communication between the mobile robots, dealing with communicationconstraints between the robots, etc. These challenges are further explained in Section 1.3. Theproblem statement, which is presented in Section 1.4, will define the main topic of this thesis.This topic involves some of the challenges stated in Section 1.3. Eventually, two differentcontrollers are designed, which create a specified formation for a group unicycle mobile robotsand an experimental environment is designed to experiment with both controllers in real life.Finally, in Section 1.5, the outline of this thesis is presented.

1.1 Motivations for Cooperative Control in Robotics

Over the last few years, the attention for formation and cooperative control of robotic systemshas grown enormously in the control community. In [3], a general overview is given of whathas been achieved over the last few years. In the book [53], papers are collected, which givea clear view on what has been achieved over the last few years in formation and cooperativecontrol. In the early days of robotic employment, single robots were typically used to performdifferent tasks. Today, attention focusses more and more on the use of a multitude of robotsto complete different objectives. There are several reasons why group control of robots isemployed, related to the following range of tasks:

- spatially distributed tasks, e.g. setting up a mobile sensor network, automated highwaysystems (AHS) [29, 55, 67] or robotic environmental surveillance;

- dangerous tasks, on locations where it is unwanted for humans to work, e.g. operating incollapse structures to search for victims, areas of toxic/nuclear contamination or forestfires [10];

- redundancy, in this way other robots will be able to complete the task when a robotfails;

1

Page 12: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 1

- tasks that scale up or down in time. Certain tasks may require a decreasing or increasingamount of robots as the operation proceeds over time;

- flexibility to perform a multitude of tasks. Single robots can have a variety of roles,which results in the fact that the same group of robots can be employed for manydifferent objectives;

- tasks that cannot be performed by a single robot, e.g. transporting or repositioning of alarge object.

1.2 Areas of application

At the moment there are many areas of application of cooperative control. A spacecraft/satelliteapplication is given in [4], which is designed for the National Aeronautics and Space Adminis-tration. Herein, an interferometer consists of multiple spacecrafts in formation. This methodwill increase the instrument resolution, while decreasing the costs. In Figure 1.1, five space-crafts are in formation and work together as a single huge telescope.

Figure 1.1: Five spacecrafts in formation, working together as a single huge telescope.

Another application can be seen in automated highway systems [29, 55, 67], for effectivelyincreasing the traffic throughput. At sea, marine vessels are synchronized in formation forunderway replenishment operations [38, 39, 66]. These underway replenishment operationsare necessary for long-term military operation to shorten or avoid port time. In Figure 1.2, afleet of six marine vessels is shown in formation.

The main application of unmanned aerial vehicles (UAVs) is covering a large area for military(e.g. target assessment, reconnaissance) or civilian purposes (e.g vegetation growth, topo-graphical changes due to natural events) [58]. The main advantage of UAVs is its low cost

2

Page 13: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Introduction

Figure 1.2: A fleet of six marine vessels in formation.

and dispensability of vehicles. In [10], UAVs are specifically used to track the propagationof large forest fires. During the literature study, the main focus is set on ground vehicles[5, 9, 13, 16, 17, 18, 19, 26, 59, 60, 61, 65]. Ground vehicles are used for all the same reasonsas explained in Section 1.1. In Figure 1.3, two cooperating mobile robots are shown thattransport a large object.

1.3 Challenges

There are still many technological and scientific challenges before a wide application of coop-erative mobile robotics is feasible. These challenges involve the development of cooperativecontrol strategies, which can deal with certain communication constraints, the localizationof the robot positions, sensing and environment mapping (e.g. simultaneous localization andmapping), learning and biologically inspired behaviours (e.g. schooling and flocking) [44].Within this thesis the focus will be on the first two challenges: cooperative control and thelocalization of the robots position. This will be applied to non-holonomic unicycle mobilerobots.

1.3.1 Approaches in Cooperative Control

In the literature [4, 9, 13, 19, 59], three different approaches towards the cooperative controlof mobile robots are described:

1 behaviour-based approach [10, 14, 27, 57];

2 leader-follower approach [5, 9, 13, 16, 17, 18, 26, 29, 38, 39, 44, 50, 55, 58, 59, 61, 63,65, 66, 67];

3

Page 14: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 1

Figure 1.3: Two robots repositioning a large object.

3 virtual structure approach [4, 19, 60].

Each approach has its own advantages and disadvantages. In the behaviour-based approach,a behaviour (e.g. obstacle avoidance, target seeking) is assigned to each individual robot.Weighting the relative importance of each behaviour determines the ultimate actions of therobots. The advantage of this approach is that it is natural to derive control strategieswhen robots have multiple competing objectives. Another advantage is that the robots arecontrolled in a decentralized fashion. Therefore, it is ideal for a large number of robots.A disadvantage is that the dynamics of the group of robots does not lend itself for simplemathematical analysis; therefore, it is hard to guarantee exact formation control and stabilityof the system as a whole. In most cases the dynamics of the individual robots are thereforesimplified as a single integrator

x = u. (1.1)

In this way, the stability analysis becomes easier, but is still very complex. Clearly, the dy-namics of real robots are more complex in itself, making such approach less feasible, which isespecially important when creating an experimental environment.

The second approach is the leader-follower approach. Herein, some robots will be leaders,which will follow predefined trajectories, while the followers will follow according to a relativeposture to the leader robot. The advantage of this approach is that it is easy to understandand implement. The disadvantage, however, is that there is no explicit feedback from thefollowers to the leaders. If the follower is perturbed, the formation cannot be maintained.Another disadvantage is that the position of the leader robot has to be communicated to thefollower robots, which the followers use as a control input. This asks for a centralized controlstrategy, which makes this approach less ideal for a large number of robots.The concept of string stability is also related to the leader-follower approach. This can beemployed as a vision-based leader-follower approach [55, 65], where the slave robot will follow

4

Page 15: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Introduction

its master by means of a camera. It is also possible to look at this approach as in a chainedform [29, 67], which is mainly used in automated highway systems.A closer look is taken at the leader-follower approach, with respect to ground vehicles. Groundvehicles are particular interested, since an experimental environment will be designed todemonstrate the behaviour of the new designed controllers in real life. In most literature, thedesign of the formation controller is based on the kinematic model of non-holonomic unicyclemobile robots [5, 13, 16, 17, 18, 26, 60, 61, 65]. In most cases of cooperative control, theleader-follower approach is used. One method which is often used to maintain the formation[5, 16, 17, 18, 26, 59], is to define the internal shape variable of the slave robot according tothe relative angle ψ and relative distance l from its master or defining the relative distance lfrom two of its masters. These methods are better known as l−ψ control and l− l control. In[5, 26], this same technique is used in combination with a collision-avoidance technique. How-ever, the master-slave approach will not maintain its formation if the slaves are perturbed,which results in a limited robustness with respect to the formation.

The last approach is the virtual structure approach. Here the robot formation will be consid-ered as a virtual rigid structure (e.g. a circle, square, etc). The advantage of this approach isthat it adds certain robustness to the formation, since all mobile robots are mutually coupledto each other. Another advantage is that the formation is easy to describe. A disadvantageis that it is often more difficult to determine stability than for the leader-follower approach.Another disadvantage is that the full state of the virtual structure or the individual posi-tion/control variables of the individual robots needs to be communicated to each member ofthe formation; note that the same disadvantage holds for the leader-follower approach.The main difference between the leader-follower approach and the virtual structure approachis that for the virtual structure approach extra parameters are added to the controllers, whichspecify the formation. If these parameters are added to the control feedback, the structure ismore robust, even if some robots are perturbed.In [60], a general controller strategy is developed for the virtual structure approach. Thecontrol method enforces robots to behave as particles embedded in a rigid structure. Thekey elements of the algorithm, which is used in their control method, is that the robots moveto stay inside the virtual structure and the virtual structure moves to fit the robots currentpositions. Eventually the formation algorithm consists of the following steps. First, the vir-tual structure is aligned with the current position of the robots position. Then, the virtualstructure is moved with a certain distance and angle, and finally the desired trajectories of themobile robots are determined to the virtual structure endpoints. There are a few disadvan-tages of this theory. First, it is not possible to determine formations which are time-varying.Second, it is not possible to alter the priority of the mobile robots, either to follow their indi-vidual trajectories or to maintain the groups formation. In [4], the virtual structure methodof [60] is used for a multiple spacecrafts interferometer. The same limitations are presentas in [60]. In [19], a virtual structure controller is designed for a group of unicycle mobilerobots using models involving the dynamics of the robots. Herein, the virtual structure andtrajectory tracking approaches are combined for the virtual structure controller. Since [19]uses the dynamics of the robots, the calculations and stability proof are very extensively andcomplicated and therefore less ideal in a practical situation. The result is that only simulationare performed, and no experiments are executed with the designed controller. However, ina lot of situations the kinematics of the unicycle robots are enough to describe the robotsmotion. Since the robots motion is easier described by the kinematic model, this will lead to

5

Page 16: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 1

simpler calculations and stability proof. Moreover, this ensures that the designed controllercan be easier applied in a more realistic setting. When it is necessary to describe the robotsmotion in a dynamic setting, the designed controller of [19] can still be used.

1.3.2 Localization of Mobile Robots

It becomes clear from Section 1.3.1 that it is important, at least for a centralized controlstrategy, to know the exact global position of all individual robots. Localization of a groupof robots is still a topic of active research at different research institutes [7, 9, 26, 60]. Thereare two different methods to determine the position of a robot, namely

- relative, by means of dead-reckoning. Here, it is supposed that the robot starts ata known position. Because the rotations of the wheels are known, due to usage ofencoders, the new position of robot is also known when there is no slippage betweenthe wheels and the floor. The advantage of this technique is that it is easy to employ.The disadvantages are that errors due to slippage will accumulate in time and thatsignificant errors can occur due to collisions.

- absolute, determining the position with respect to a fixed coordinate frame. There aretwo alternatives for absolute localization. First, it is possible that the robot determinesits position by means of proximity sensors or visual images [22]. This method is oftenused in the scope of decentralized control. Secondly, the position of the robot can bedetermined by means of an external localization device, e.g. camera [9, 26, 60], beacons[6, 35, 64], or a magnetic field [54]. This method is used in the scope of centralizedcontrol.

The localization devices, which are used in [7, 9, 26, 60], are designed and built at the involvedresearch center. In the last few years more and more localization devices become available[23]. At the moment, there is limited attention shown to combine available mobile robots,with a known localization device, to create a new experimental environment. It is interestingto examen the possibilities of combining mobile robots and a localization device, for creatingan experimental environment to perform experiments with a multitude of mobile robots incombination with a cooperative controller.

1.4 Problem Statement

In Section 1.3, two challenges in cooperative control of mobile robots are discussed, namelythe design of the cooperative controller and localization of a group of mobile robots, whichare still open for improvement. These challenges result in the problem statement, which canbe subdivided in three parts.

1. Design a leader-follower tracking controller, which guarantees stability of the synchro-nization error dynamics for a group of non-holonomic unicycle mobile robots. Theleader-follower controller will be used as a stepping stone for the virtual structure con-troller.

2. Design a virtual structure tracking controller, based on the known tracking controllerof [28, 49] that is also used for the leader-follower controller, which guarantees stabilityof the formation error dynamics for a group of non-holonomic unicycle mobile robots.

6

Page 17: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Introduction

3. Create an experimental environment combining mobile robots and an absolute localiza-tion device, which are available on the market, so that both formation controllers canbe tested in real time.

For the purpose of the experimental setup ground vehicles will be chosen. A lot of research isexecuted at the Dynamics and Control Group at the department of Mechanical Engineering atEindhoven University of Technology regarding non-holonomic unicycle mobile robots [6, 20,21, 28, 35, 48, 49, 64]. Based on these earlier works, both controllers will be designed for thekinematic model of a non-holonomic unicycle mobile robot. The stability of the formationerror dynamics of both controllers will be examined and simulations will be performed toinvestigate the behaviour of a group of robots for both types of controllers. Eventually anexperimental setup is created to study the behaviour of a group of robots for both types ofcontrollers in real life. The experimental setup will consist of a number of unicycle mobilerobots and an absolute localization device to determine to position of the individual robots.

1.5 Report Outline

This report is organized as follows. In Chapter 2, mathematical definitions and theoreticalresults are summarized which are used throughout this thesis. Chapter 3 explains the kine-matics of a unicycle mobile robot and a trajectory tracking controller is given for a unicyclemobile robot. With the knowledge of the mathematical definitions and theoretical results, thekinematics of the unicycle robot and the given controller, the design of two new controllersis presented in Chapter 4. In Sections 4.2 and 4.3, a controller is designed for master-slaveapproach and virtual structure approach, respectively, stability of both controllers is analyzedand simulations are executed. At the end of both sections a brief discussion is presented todiscuss the main results. To experiment in real-time with both controllers, an experimentalsetup is designed, see Chapter 5. In Sections 5.1 and 5.2, a mobile robot and localizationdevice are chosen for the experimental setup, respectively. In Section 5.4, the mobile robotsand the localization device are combined. In Chapter 6, the results of the experiments arediscussed. First, in Section 5.3, the experimental setup is calibrated. Then, in Sections 6.1and 6.2, the experiments of the master-slave controller and virtual structure controller arediscussed, respectively. Finally, conclusions and recommendations are presented in Chapter7.

7

Page 18: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

8

Page 19: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 2

Preliminaries

Throughout this thesis numerous mathematical definitions and theoretical results will be used.This is briefly reviewed in this chapter.

First, some fundamental mathematical definitions are discussed in Section 2.1. Next, somestandard concepts of stability theory are stated for linear and non-linear time-varying systemsin Section 2.2. Finally, in Section 2.3, a stability theorem for cascaded systems is given.

2.1 Mathematical definitions

First, two definitions regarding the vector norm and matrix norm are recalled, which willeventually be used in Appendix A.3.

Definition 2.1.1. [15] Let x = [x1, ..., xn]T be an n-dimensional vector in Rn. The vector

norm ‖x‖ is a real-valued continuous function of the components x1, ..., xn of x, defined onR

n, and has the following properties:

a) ‖x‖ ≥ 0 for every vector x, ‖x‖ = 0 ⇔ x = 0.

b) ‖αx‖ = |α| ‖x‖ for all x on Rn and for all scalars α.

c) ‖x+ y‖ ≤ ‖x‖ + ‖y‖ for all x and y in Rn (triangle inequality).

Lets define the p-norm as

‖x‖p = (|x1|p + ...+ |xn|p)1/p, (2.1)

and the maximum norm as

‖x‖∞ = maxi=1,...,n

|xi|. (2.2)

Definition 2.1.2. [15] The Frobenius norm for a matrix A ∈ Rm×n is defined as

‖A‖F =

n∑

j=1

m∑

i=1

|aij |2

1/2

, (2.3)

i.e. this norm is consistent with the vector norm ‖x‖2.

9

Page 20: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 2

The final two definitions of this section will describe specific classes of continuous functions,which are used in Lemma 2.2.1 to determine the stability of an equilibrium point of a non-autonomous time-varying system.

Definition 2.1.3. [36] A continuous function α : [0, a) → [0,∞) is said to belong to class Kif it is strictly increasing and α(0) = 0. It is said to belong to K∞ if a = ∞ and α(r) → ∞as r → ∞.

Definition 2.1.4. [36] A continuous function β : [0, a)× [0,∞) → [0,∞) is said to belong toclass KL if, for each fixed s, the mapping β(r, s) belongs to class K with respect to r and, foreach fixed r, the mapping β(r, s) is decreasing with respect to s and β(r, s) → 0 as s→ ∞.

2.2 Stability of Time-Varying Systems

In this section, results on the stability of time-varying dynamical systems are recalled. Con-sider the following non-autonomous time-varying system

x = f(t, x), (2.4)

where f : [0,∞) ×D → Rn is piecewise continuously differentiable in t and locally Lipschitz

in x on [0,∞) ×D, and D ⊂ Rn is a domain that contains the origin x = 0.

To study the stability of the origin, which is an equilibrium point of (2.4), i.e. f(t, 0) = 0 forall t, the following stability definitions are considered, see [36]:

Definition 2.2.1. [36] The equilibrium point x = 0 of (2.4) is

• stable, if for each ǫ > 0, there is δ = δ(ǫ, t0) > 0 such that

||x(t0)|| < δ ⇒ ||x(t)|| < ǫ, ∀t ≥ t0 ≥ 0. (2.5)

• uniformly stable, if for each ǫ > 0, there is δ = δ(ǫ) > 0, independent of t0, such that(2.5) is satisfied.

• unstable, if it is not stable.

• asymptotically stable, if it is stable and there is a positive constant c = c(t0) suchthat x(t) → 0 as t→ ∞, for all ‖x(t0)‖ < c.

• locally uniformly asymptotically stable (LUAS), if it is uniformly stable and thereis a positive constant c, independent of t0, such that for all ‖x(t0)‖ < c, x(t) → 0 ast→ ∞, uniformly in t0; that is, for each η > 0, there is T = T (η) > 0 such that

‖x(t)‖ < η, ∀t ≥ t0 + T (η), ∀‖x(t0)‖ < c. (2.6)

• globally uniformly asymptotically stable (GUAS), if it is uniformly stable, δ(ǫ)can be chosen to satisfy limǫ→∞ δ(ǫ) = ∞, and, for each pair of positive numbers η andc, there is T = T (η, c) > 0 such that

‖x(t)‖ < η, ∀t ≥ t0 + T (η, c), ∀‖x(t0)‖ < c. (2.7)

10

Page 21: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Preliminaries

In the next lemma, taken from [36], more transparent characterizations of uniform sta-bility and uniform asymptotic stability are given by using class K and class KL functionsof Definition 2.1.3 and Definition 2.1.4, respectively. Secondly, a definition of exponentialstability is given, which is a special case of uniform asymptotic stability.

Lemma 2.2.1. [36] The equilibrium point x = 0 of (2.4) is

• uniformly stable, if and only if there exist a class K function α and a positive constantc, independent of t0, such that

||x(t)|| ≤ α(||x(t0)||), ∀t ≥ t0 ≥ 0, ∀||x(t0)|| < c. (2.8)

• locally uniformly asymptotically stable (LUAS), if and only if there exist a classKL function β and a positive constant c, independent of t0, such that

||x(t)|| ≤ β(||x(t0)||, t− t0), ∀t ≥ t0 ≥ 0, ∀||x(t0)|| < c. (2.9)

• globally uniformly asymptotically stable (GUAS), if and only if inequality (2.9)is satisfied for any initial state x(t0).

Definition 2.2.2. [36] The equilibrium point x = 0 of (2.4) is

• locally exponentially stable (LES), if there exist positive constants c, k, and λ suchthat

||x(t)|| ≤ k||x(t0)||e−λ(t−t0), ∀||x(t0)|| < c. (2.10)

• globally exponentially stable (GES), if and only if inequality (2.10) is satisfied forany initial state x(t0).

Two definitions and a corollary are presented, which can be applied for linear time-varyingsystems [41]. Consider the following linear time-varying system

x = A(t)x+B(t)uy = C(t)x,

(2.11)

where matrices A(t), B(t), C(t) are matrices of appropriate dimensions whose elements arepiecewise continuous functions of time. Let Φ(t, t0) denote the state-transition matrix for thesystem x = A(t)x.

Definition 2.2.3. [41] The pair (A(t), C(t)) is uniformly completely observable (UCO) ifconstants δ, ǫ1, ǫ2 > 0 exist such that ∀t > 0:

ǫ1In ≤∫ t+δ

tΦT (t, t− τ)CT (τ)C(τ)Φ(τ, t− δ)dτ ≤ ǫ2In. (2.12)

Definition 2.2.4. [41] A continuous function ω : R+ → R is said to be persistently exciting

(PE) if ω(t) is bounded, Lipschitz, and constants δc > 0 and ǫ > 0 exist such that

∀t ≥ 0,∃s : t− δc ≤ s ≤ t such that |ω(s)| ≥ ǫ. (2.13)

The following corollary can be derived from Theorem 2.3.3, presented in [41], and will beused in Appendix A.1.

11

Page 22: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 2

Corollary 2.2.1. Consider the linear time-varying system

x = A(ω(t))x+Buy = Cx,

(2.14)

where A(ω) is continuous and ω : R → R is continuous. Assume for all s 6= 0 the pair(A(s), C) is observable. If ω(t) is persistently exciting, see Definition 2.2.4, then the system(2.14) is uniformly completely observable.

In the following theorem and corollary, the local exponential stability of an equilibriumpoint of a nonlinear system is related to the stability of its linearization around this equilibriumpoint. This theorem and corollary are needed in Section 4.3.2.

Theorem 2.2.1. [36] Let x = 0 be an equilibrium point of (2.4). Let

A(t) =∂f

∂x(t, x)

∣∣∣x=0

. (2.15)

Then, the origin is an exponentially stable equilibrium point for the nonlinear system if it isan exponentially stable equilibrium point of the linear system

x = A(t)x. (2.16)

Corollary 2.2.2. [36] Let x = 0 be an equilibrium point of the nonlinear system x = f(x),where f(x) is continuously differentiable in some neighbourhood of x = 0. Let A = [∂f/∂x](0).Then, x = 0 is an exponentially stable equilibrium point for the nonlinear system if and onlyif A is Hurwitz.

Let us now give a theorem as an introduction to Theorem 2.2.3, which is used in AppendixA.1. This theorem is an invariance-like result for non-autonomous systems.

Theorem 2.2.2. [36] Let D ⊂ Rn be a domain containing x = 0 and suppose f(t, x) is

piecewise continuous in t and locally Lipschitz in x for all t ≥ 0 and x ∈ D. Let x = 0 bean equilibrium point for x = f(t, x) at t = 0. Let V : [0,∞) × D → R be a continuouslydifferentiable function such that

W1(x) ≤ V (t, x) ≤W2(x), (2.17)

V (t, x) =∂V

∂t+∂V

∂xf(t, x) ≤ 0, (2.18)

V (t+ δ, φ(t+ δ; t, x)) − V (t, x) ≤ −λV (t, x), 0 < λ < 1, (2.19)

∀t ≥ 0, ∀x ∈ D, for some δ > 0, where W1(x) and W2(x) are continuous positive definitefunctions on D and φ(τ ; t, x) is the solution of the system that starts at (t, x). If

W1(x) ≥ k1‖x‖c, W2(x) ≤ k2‖x‖c, k1 > 0, k2 > 0, c > 0, (2.20)

then the origin is exponentially stable.

The following theorem is based on Theorem 2.2.2. This theorem will be used in AppendixA.1 to determine the exponential stability of an equilibrium point of a linear time-varyingsystem.

12

Page 23: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Preliminaries

Theorem 2.2.3. Consider the following linear time-varying system

x = A(t)x, (2.21)

where A(t) is continuous for all t ≥ 0. Suppose the pair (A(t), C(t)) is uniformly completelyobservable. If there exists a continuously differentiable, symmetric matrix P (t) that satisfies,for c1, c2 > 0, the inequality

0 < c1I ≤ P (t) ≤ c2I,∀t ≥ 0, (2.22)

as well as the matrix differential equation

−P (t) ≥ P (t)A(t) +AT (t)P (t) + CT (t)C(t), (2.23)

where C(t) is continuous in t, then the origin is globally exponentially stable.

Proof. This theorem can easily be derived from Example 8.11 in [36] and Theorem 2.2.2.

The final theorem of this section provides a sufficient condition for the global exponentialstability of the equilibrium of a specific linear time-varying system and will be used in Section4.3.2.

Theorem 2.2.4. The equilibrium point x = 0 of the system

x =

−a1 a2ωd(t) a3 −a4ωd(t)−ωd(t) 0 0 0a3 −a4ωd(t) −a1 a2ωd(t)0 0 −ωd(t) 0

x (2.24)

is globally exponentially stable if −a1 + a3 < 0, −a1 − a3 < 0, a2 6= a4, a2 6= −a4 and ωd(t)is persistently exciting according to Definition 2.2.4.

Proof. See Appendix A.1.

2.3 Cascaded systems

Consider the system z = f(t, z), z ∈ Rn×m, that is written as

z1 = f1(t, z1) + g(t, z1, z2)z2,z2 = f2(t, z2),

(2.25)

where z1 ∈ Rn, z2 ∈ R

m, f1(t, z1) is continuously differentiable in (t, z1) and f2(t, z2),g(t, z1, z2) are continuous in their arguments, and locally Lipschitz in z2 and (z1, z2), re-spectively, and (z1, z2) = (0, 0) is an equilibrium point of (2.25).

Assumption 2.3.1. [52] Assume that there exist continuous functions k1, k2 : R+ → R such

that‖g(t, z1, z2)‖F ≤ k1(‖z2‖2) + k2(‖z2‖2)‖z1‖2, ∀t ≥ t0, (2.26)

where ‖g(t, z1, z2)‖F denotes the Frobenius norm of the matrix g(t, z1, z2).

Then the following corollary can be determined from Theorem 1 presented in [51].

Corollary 2.3.1. The equilibrium point of the cascaded system of (2.25) is locally exponen-tially stable if the equilibrium point of z1 = f1(t, z1) is globally exponentially stable, g(t, z1, z2)satisfies Assumption 2.3.1 and the equilibrium point of z2 = f2(t, z2) is locally exponentiallystable.

13

Page 24: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

14

Page 25: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 3

Kinematics and Tracking Control

for a Unicycle Mobile Robot

The control of non-holonomic unicycle mobile robots has received a lot of attention in the lastfew decades. In [37], a summary of developments of the control of unicycle mobile robots ispresented. In many cases the goal is to design a trajectory tracking controller. In this thesis,a kinematic model is used to characterize the position and velocity of the unicycle mobilerobot. This means there will be no forces or moments affecting the robots motion.

In Section 3.1, the kinematics of a unicycle mobile robot is described with its non-holonomicconstraints. Secondly, in Section 3.2, a controller is given, which is able to locally exponen-tially stabilize a predefined reference trajectory.

3.1 Kinematics of a Unicycle Mobile Robot

The position of the center of the mobile robot with respect to the fixed coordinate frame~e1 is described with the coordinates x and y, see Figure 3.1. The orientation φ is the anglebetween the heading of the robot and the x-axis of the fixed coordinate frame ~e1.

Assume there is no slip between the unicycle wheels and the floor. Hence, the velocityin the direction of ~e22 is equal to zero and the velocity in the ~e21-direction is equal to theforward velocity v imposed by the robots actuator. This results in the following two kinematicequations

v = x cos(φ) + y sin(φ)0 = −x sin(φ) + y cos(φ).

(3.1)

The second equation of (3.1) reflects the well-known non-holonomic constraint in the unicyclekinematics. The imposed rotational velocity of the unicycle is denoted by ω:

φ = ω. (3.2)

Consequently, the kinematics of the mobile robot can be described by the following differentialequations

x = v cos(φ),y = v sin(φ),

φ = ω,

(3.3)

15

Page 26: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 3

yd

y

ye

xdx

xe

φ

φdφe

~e11

~e12

~e21

~e22

Figure 3.1: The unicycle coordinates, desired coordinates and error coordinates of the mobilerobot.

where v and ω are control inputs of the mobile robot.

3.2 Tracking Controller for a Unicycle Mobile Robot

Consider the tracking problem for the unicycle robot, where a time-varying desired trajectory(xd(t), yd(t), φd(t)) should be tracked, see also Figure 3.1. Again, φd(t) depends on xd(t), yd(t)in the same way as in the second equation of (3.1). Below, a tracking controller is discussed,as proposed in [28, 49], that solves this problem. This controller consists of a feedforward partand a feedback part. The feedforward part of the controller, denoted by the control inputs(vd, ωd), is designed such that it induces the desired trajectory, i.e. (vd, ωd) satisfy:

xd = vd cos(φd),yd = vd sin(φd),

φd = ωd,

(3.4)

which can be rewritten as follows

vd =√

x2d + y2

d

ωd =xdyd − xdyd

x2d + y2

d

.(3.5)

The total state tracking controller, including the feedback part, is given by

ω = ωd + α sin(φe), α > 0,v = vd + βxe − γωdye, β > 0, γ > −1,

(3.6)

where (xe, ye, φe) are the error coordinates, which are defined as follows:

xe

ye

φe

=

cos(φ) sin(φ) 0− sin(φ) cos(φ) 0

0 0 1

xd − xyd − yφd − φ

, (3.7)

16

Page 27: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Kinematics and Tracking Control for a Unicycle Mobile Robot

see Figure 3.1 for a graphical explanation of these error coordinates. The error dynamics ofthe mobile robot, i.e. the time derivative of (3.7), can now be written as

xe

ye

φe

=

ωye − v + vd cos(φe)−ωxe + vd sin(φe)

ωd − ω

, (3.8)

by using (3.3) and (3.4). Substitution of the tracking controller of (3.6) in (3.8), results inthe following tracking error dynamics

[xe

ye

]

=

[−β (1 + γ)ωd

−ωd 0

] [xe

ye

]

+

[αye sin(φe) + vd(cos(φe) − 1)−αxe sin(φe) + vd sin(φe)

]

φe = −α sin(φe) .

(3.9)

The tracking error dynamics of (3.9) can be written in the following general cascaded form

z1 = f1(t, z1) + g(t, z1, z2)z2z2 = f2(t, z2),

(3.10)

where z1 = [xe ye]T , z2 = φe,

f1(t, z1) =

[−β (1 + γ)ωd

−ωd 0

] [xe

ye

]

,

f2(t, z2) = −α sin(φe)(3.11)

and

g(t, z1, z2)z2 =

[αye sin(φe) + vd(cos(φe) − 1)−αxe sin(φe) + vd sin(φe)

]

. (3.12)

Lemma 3.2.1. [28, 49] The equilibrium point of the cascaded structure of (3.10) is locallyexponentially stable if the equilibrium point of the subsystem z1 = f1(t, z1) is globally expo-nentially stable if ωd is persistently exciting, g(t, z1, z2) satisfies Assumption 2.3.1 and theequilibrium point of the subsystem z2 = f2(t, z2) is locally exponentially stable.

Proof. See Corollary 2.3.1.

17

Page 28: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

18

Page 29: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

Formation Control

In this chapter, two controllers are introduced that induce cooperative behaviour in a groupof non-holonomic unicycle mobile robots. The main goal of these controllers is that the groupof robots follows a certain desired trajectory, while maintaining a given formation.

Now, combining the known tracking controller of (3.6) and the coupling terms of the mutualsynchronization techniques of [56] to a virtual structure controller is interesting, as stated inSection 1.4. However, first a master-slave approach toward formation control is examined.There are two different reasons to start with the master-slave approach. First of all, with thedesign of the master-slave controller the general disadvantage of the master-slave approachwill be illustrated, as explained in Section 1.3.1. Secondly, since the tracking controller of(3.6) for the master-slave approach is used, it represents a good stepping stone for the virtualstructure controller.

In Section 4.1, the main differences between the master-slave and virtual structure approachare discussed. In Section 4.2, the design of the master-slave controller is described, the sta-bility of the resulting error dynamics is studied and simulations are executed. Finally, inSection 4.3, the design of the virtual structure controller is described. Next, the stability ofthe resulting error dynamics is studied and eventually simulations are performed.

4.1 Master-Slave Approach versus Virtual Structure Approach

In Section 1.3.1, the differences between the three major cooperative control approaches,behaviour-based, master-slave and virtual structure approach, are described. In this section,we will go into somewhat more detail regarding the master-slave and virtual structure ap-proaches.

Let us begin with the similarities of both approaches. Both methods can be used when agroup of robots has to follow a predefined trajectory, while keeping a certain formation. Inthis thesis, tracking control is used as method of following the desired trajectory, i.e. the de-sired trajectories are given with respect to time. The main difference between the approachesis that for master-slave control, there is one master which will follow the desired trajectory,while the slaves will determine their desired trajectories by means of the actual positions ofthe master. For the virtual structure approach there are no longer masters, nor slaves present,

19

Page 30: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

therefore, all robots are in a certain sense equal. All robots have to mediate between followinga virtual center from a certain distance and ensuring that the formation is kept. The virtualstructure controller adds robustness to the formation and by doing this it ensures that theformation remains (partly) the same. Certain weighting parameters in the controller deter-mine the robots individual main goal; either following its individual trajectory or ensuringthat the formation is kept.

4.2 Master-Slave Approach

4.2.1 Controller Design

The master-slave approach with only two mobile robots is first explained, for the sake ofsimplicity. The kinematics of these mobile robots are described by the kinematic model of(3.3), where the subscripts m for master and s for slave are added. The master is requiredto track the desired trajectory (xdm, ydm) and the slave should track the trajectory of themaster with a certain distance, i.e. the desired trajectory of the slave

[xds

yds

]

~e1 =

[xm + lxym + ly

]

~e1, (4.1)

see Figure 4.1.

The distance of the slaves, with respect to the master, (lx, ly), is chosen to be constant. Thisresults in φds = φm, because in that case

φds = arctan(yds

xds) = arctan(

ym

xm) = φm, for xds = xm 6= 0

φds = φm =π

2for xds = xm = 0 ∧ yds = ym > 0

φds = φm = −π2

for xds = xm = 0 ∧ yds = ym < 0.

(4.2)

Based on (3.6) the controller for the master will be defined as

ωm = ωdm + αm sin(φem), αm > 0,vm = vdm + βmxem − γmωdyem, βm > 0, γm > −1,

(4.3)

where the error coordinates of the master (xem, yem, φem) are defined as

xem

yem

φem

=

cos(φm) sin(φm) 0− sin(φm) cos(φm) 0

0 0 1

xdm − xm

ydm − ym

φdm − φm

. (4.4)

This controller will ensure that the master exponentially tracks the desired trajectory, seeSection 3.2. The controller for the slave is defined as follows

ωs = ωds + αs sin(φes), αs > 0,vs = vds + βsxes − γsωdsyes, βs > 0, γs > −1,

(4.5)

where the feedforward is consistent with

ωds = φds = φm = ωm

vds =√

x2ds + y2

ds =√

x2m + y2

m = vm,(4.6)

20

Page 31: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

ym

ys

yds

ydm

xm xsxds xdm

φm

φs

φdm

φds

lx

ly

~e11

~e12

~e21

~e22

Figure 4.1: The master-slave approach with two unicycle mobile robots. The desired positionof the master (xdm, ydm), the actual position of the master (xm, ym), the desired position ofthe slave (xds, yds) and the actual position of the slave (xs, ys) are displayed.

where (lx, ly) are constant and where the error coordinates are defined as follows

xes

yes

φes

=

cos(φs) sin(φs) 0− sin(φs) cos(φs) 0

0 0 1

xds − xs

yds − ys

φds − φs

. (4.7)

Hence, the controller (4.5) will ensure local exponential stability of the slaves error coordi-nates, see Section 3.2.

The result is expanded to 1 master and S slaves, where the total number of robots is equalto n, with n = S + 1. The desired trajectory of the master is described as (xdm, ydm), whilethe desired trajectory of the ith unicycle slave robot is equal to

xdsi(t) = xm(t) + lxi

ydsi(t) = ym(t) + lyi.(4.8)

A general controller for the ith slave is defined as

ωsi = ωm + αsi sin(φesi), αsi > 0,vsi = vm + βsixesi − γsiωmyesi, βsi > 0, γsi > −1,

(4.9)

21

Page 32: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

for i = 1, ..., S, where the feedback is determined with the use of the following error coordinates

xesi = cos(θsi)((xm + lxi) − xsi) + sin(θsi)((ym + lyi) − ysi)yesi = − sin(θsi)((xm + lxi) − xsi) + cos(θsi)((ym + lyi) − ysi)θesi = θm − θsi.

(4.10)

In the master-slave approach, as explained in this section, the slave robots will execute thesame desired trajectory as the master at different locations, i.e. it is not possible to specify con-stant relative locations (lxi, lyi) of the slaves, with respect to the master, in the ~e2-coordinatesystem, see Figure 4.1. Namely, if the locations of the slaves are given as (lxi, lyi)~e

2, it willresult in time-varying relative locations of the slaves, with respect to the master, in the fixedcoordinate frame ~e1. The difficulties that rise by dropping this limitation will be furtherexplained in Section 4.2.4.

4.2.2 Stability Analysis

It is clear now that the controller for the master of (4.3) and the controller for the slave of(4.9) are exactly the same as the original state tracking controller of (3.6). This implies thatthe stability analysis will also be exactly the same, so both controllers ensure local exponentialstability of the error coordinates as long as ωdm is persistently exciting, as explained in Section3.2.

4.2.3 Simulation Results

In Section 4.2.1, a controller has been designed for the master-slave approach and, in Section4.2.2, this tracking controller is shown to ensure local exponential stability of the relatederror dynamics. Now, a number of simulations to study the behaviour of the closed-loopmaster-slave system is carried out. In this case there will be two robots, a master which isrequired to track a given desired trajectory and a single slave robot which is desired to trackthe master at a certain distance. The desired trajectory for the master is described as

xd(t) = xd0 +A cos(Ωt)yd(t) = yd0 +A sin(Ωt),

(4.11)

with for xd0 = 0.1 m, yd0 = 0.1 m, A = 0.5 m/rad and Ω = 1 rad/s. This leads to thefollowing feedforward contributions; a desired forward velocity vd = 0.5 m/s and a desiredrotational velocity of ωd = 1 rad/s, see (3.5). The desired trajectory of the slave is set asfollows

xds(t) = xm(t) + lxyds(t) = ym(t) + ly,

(4.12)

where lx = 0.6 m and ly = 0 m. The control parameters of the master of (4.3) and the controlparameters of the slave of (4.9) are given as αm = 1, βm = 1, γm = 0.5 and αs = 1, βs = 1,γs = 0.5, respectively.

In Figure 4.2, the trajectories of the master and slave are displayed in two different settings.One simulation is executed without any external perturbations, while during the second sim-ulation an external perturbation is added after nine seconds. The perturbation consists of anadditional forward velocity and rotational velocity of 10 m/s and 10 rad/s, respectively, for

22

Page 33: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

a duration of 0.1 seconds. The dotted circle represents the desired trajectory of the master.The dashed line and the dashdot line (both in grey) represents the master and slave trajec-tories of the simulation without perturbation, respectively. The solid line and dashdot linewith x-markers represent the master and slave trajectories of the simulation with perturba-tion, respectively. The initial conditions of both experiments are set for the master robot(xm0, ym0, φm0) = (0.8, 0.8, 0) and for the slave robot (xs0, ys0, φs0) = (1.6, 0.8, π

2 ). The be-haviours of both master and slave are exactly as expected. First of all, the master convergesto its desired trajectory. Secondly, the perturbation acting on the slave, does not influencethe trajectory of the master.

−0.5 0 0.5 1 1.5 2−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Desired TrajectoryTrajectory Master with perturbationTrajectory Slave with perturbationTrajectory Master without perturbationTrajectory Slave without perturbation

x [m]

y[m

]

Figure 4.2: Closed-loop simulation of the master-slave approach; the (x, y) trajectories of themaster and slave with and without perturbation are displayed.

In Figures 4.3 and 4.4, the error coordinates of the master and slave robot are displayed.After nine seconds both the master and slave have converged to the desired trajectory, seethe solid line and the grey dashdot line in Figures 4.3 and 4.4. In the second simulation aperturbation is added when both robots have converged, i.e. at nine seconds, a perturbationis added, for 0.1 seconds, to the forward velocity and rotational velocity signal of the slave of10 m/s and 10 rad/s, respectively. The second simulation is shown by the grey dashdot linein both figures.

It is clearly shown in Figure 4.3 that the master robot is not affected by the perturbation atthe slave robot, and the solid line and grey dashdot line are at exactly the same position. InFigure 4.4, it is depicted that the error coordinates of the slave converge to zero. Although

23

Page 34: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

0 5 10 15−1

−0.5

0

0.5

1

Master without perturbationMaster with perturbation

0 5 10 15−1

−0.5

0

0.5

1

0 5 10 150

0.5

1

1.5

2

xem

[m]

y em

[m]

φem

[rad

]

Time [s]

Figure 4.3: Simulated evolution of the error coordinates of the master without perturbationand the master with perturbation.

a perturbation is present in the second simulation, the slave still converges to its desiredtrajectory after the perturbation has vanished. This is also recognized in Figure 4.2.

With these two simulations the main disadvantage of the master-slave approach is shown;namely the master is not able to react at perturbations located at the slave, resulting in thefact that the formation cannot be maintained. Perhaps with mutual coupling between theindividual robots, this would still be possible. In Section 4.3, a virtual structure controller isproposed, which is able to stimulate mutual synchronization between the individual robots,resulting in that the formation remains (partly) the same, when perturbations on the slave(and master) are in effect.

4.2.4 Discussion

In Section 4.2 a master-slave controller is designed. The controller design is explained, a sta-bility analysis is executed and eventually simulations are performed to show the behaviour ofthe controller. Although the master-slave controller is performing well, there is one limitationregarding the desired trajectory of the slave. The slave can only execute the same trajectoryof the master at a different location. Namely, in this specific case the distance (lxi, lyi) isconstant and specified in the ~e1-coordinate system, see Figure 4.1. The feedforward of theslave, with a constant distance (lxi, lyi)~e

1, is determined as follows

vdsi =√

x2dsi + y2

dsi =√

x2m + y2

m = vm, (4.13)

24

Page 35: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

0 5 10 15−0.8

−0.6

−0.4

−0.2

0

0.2

Slave without perturbationSlave with perturbation

0 5 10 15−0.4

−0.2

0

0.2

0.4

0 5 10 15−2

−1.5

−1

−0.5

0

0.5

xes

[m]

y es

[m]

φes

[rad

]

Time [s]

Figure 4.4: Simulated evolution of the error coordinates of the slave without perturbationand the slave with perturbation.

and the feedforward of the rotational velocity of the slave is equal to

ωdsi =xdsiydsi − xdsiydsi

x2dsi + y2

dsi

=xmym − xmym

x2m + y2

m

= ωm, for v2m = v2

dsi 6= 0. (4.14)

If the distance (lxi, lyi) is specified according to the coordinate system attached to the master,the desired position of the slave will be as follows

[xdsi(t)ydsi(t)

]

=

[xm(t)ym(t)

]

+

[cos(φm(t)) − sin(φm(t))sin(φm(t)) cos(φm(t))

] [lxi

lyi

]

, (4.15)

with lxi and lyi constants. In this case, the feedforward of the forward velocity of the slave isdetermined as

vdsi = (x2dsi + y2

dsi)1/2

= (x2m + y2

m + φ2m(l2xi + l2yi) − 2φm sin(φm)(lxixm + lyiym)

+2φm cos(φm)(lxiym − lyixm))1/2,

(4.16)

where xm = vm cos(φm), ym = vm sin(φm) and φm = ωm. The feedforward of the rotationalvelocity is equal to

ωdsi =xdsiydsi − xdsiydsi

x2dsi + y2

dsi

, for v2dsi 6= 0, (4.17)

where

xdsi = xm − φmlxi sin(φm) − φ2mlxi cos(φm) − φmlyi cos(φm) + φ2

mlyi sin(φm) (4.18)

25

Page 36: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

and

ydsi = ym + φmlxi cos(φm) − φ2mlxi sin(φm) − φmlyi sin(φm) − φ2

mlyi cos(φm), (4.19)

in which the accelerations (xm, ym, φm) are defined as

xm = vm cos(φm) − vmφm sin(φm)

ym = vm sin(φm) + vmφm cos(φm)

φm = ωm.

(4.20)

The time derivatives of the forward and rotational velocities (vm, ωm), of (3.6), are definedas

vm = vd + βxe − γωdye − γωdye

ωm = ωd + αφe cos(φe),(4.21)

where the velocities of the error coordinates (xe, ye, φe) are equal to (3.8). Clearly, this resultsin complex equations to specify the feedforward for the slave. Since the focus is on the virtualstructure controller in this thesis, such extensions will not be pursued here.

4.3 Virtual Structure Approach

4.3.1 Controller Design

When the robots are controlled in a master-slave approach, the group of robots will have alimited robustness with respect to keeping the formation, since the master will not respondto deviations of the slave from its desired trajectory, e.g. due to disturbances, see Section 4.2.Moreover, if the master fails to accomplish its task, the slave will fail as well. Therefore itis likely that the structure of the formation will not be maintained in the face of perturbations.

A virtual structure controller has been designed, which aims at introducing mutual couplingbetween the individual robots, such that a desired formation is maintained. The main goalof the virtual structure controller is, firstly, that the formation as a whole is able to followa predefined trajectory, i.e. a so-called virtual center will follow a predefined trajectory andthe unicycle robots will follow at a certain distance of the virtual center (lxi, lyi)~e

2. Secondly,if individual robots suffer from perturbations, the formation will remain (partly) the same,due to mutual coupling between the robots. In Figure 4.5, two mobile robots and the virtualcenter V C of the formation are shown.

It is clear in Figure 4.5 that the relative distance of the mobile robot (lxi, lyi)~e2, with re-

spect to the virtual center, can vary in time. The reference trajectory of the virtual center isdescribed as

Γvc(t) = [xvc(t) yvc(t)]T , (4.22)

where the coordinates (xvc(t), yvc(t)) are given with respect to the fixed coordinate frame ~e1,see [19]. The trajectories of the individual robots are described as

Γi(t) = Γvc(t) +

[cos(φvc(t)) − sin(φvc(t))sin(φvc(t)) cos(φvc(t))

] [lxi(t)lyi(t)

]

, (4.23)

26

Page 37: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

yd1

y1

yd2

y2

yvc

x1 x2 xd1xd2 xvc

φ1

φ2

φvc

~e11

~e12

~e21

~e22

Desired Trajectory Robot 1

Desired Trajectory Robot 2

Reference Trajectory VC

V C

−lx1

−lx2

ly1

−ly2

Figure 4.5: The virtual structure approach with two unicycle mobile robots. The position(xvc, yvc) of the virtual center V C, the desired position of robot 1 (xd1, yd1), the desiredposition of robot 2 (xd2, yd2), the actual position of robot 1 (x1, y1) and the actual positionof robot 2 (x2, y2) are displayed.

where (lxi(t), lyi(t))~e2 is transformed to distances with respect to the fixed coordinate frame

~e1 and the orientation of the virtual center φvc satisfies

φvc = arctan(yvc

xvc) if xvc 6= 0

φvc = π2 if xvc = 0 ∧ yvc > 0

φvc = −π2 if xvc = 0 ∧ yvc < 0,

(4.24)

where it is assumed that xvc 6= 0 or yvc 6= 0. The controller of (3.6) will be used as a startingpoint, but it will be expanded with so-called mutual coupling terms, see [56] where suchcoupling terms are used to achieve mutual synchronization between industrial robots. Here,the following controller is proposed:

ωi = ωdi + αi sin(φei) +n∑

j=1,i6=j

αi,j sin(φei − φej)

vi = vdi︸︷︷︸

feedforward

+ βixei − γiωdiyei︸ ︷︷ ︸

feedback

+

n∑

j=1,i6=j

βi,j(xei − xej) −n∑

j=1,i6=j

γi,jωdi(yei − yej)

︸ ︷︷ ︸

mutual coupling terms

,

(4.25)

27

Page 38: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

where the error coordinates (xei, yei, φei) and feedforward velocities (vdi, ωdi) are defined as

xei

yei

φei

=

cos(φi) sin(φi) 0− sin(φi) cos(φi) 0

0 0 1

xdi − xi

ydi − yi

φdi − φi

(4.26)

and

vdi =√

x2di + y2

di

ωdi =xdiydi − xdiydi

x2di + y2

di

,(4.27)

respectively, with αi > 0, βi > 0 and γi > −1, see Section 3.2, and αi,j > 0, βi,j > 0 andγi,j > 0, which are weighting parameters of the mutual coupling of terms and the subscripti denotes the ith mobile robot, which is mutually coupled with respect to the jth mobile robot.

For the sake of simplicity, we limit ourselves to the case of two mobile robots for the virtualstructure approach to explain the working principle of the controller design. The individualcontrollers of two robots which create a virtual structure are respectively given by

ω1 = ωd1 + α1 sin(φe1) + α1,2 sin(φe1 − φe2),

v1 = vd1 + β1xe1 − γ1ωd1ye1 + β1,2(xe1 − xe2) − γ1,2ωd1(ye1 − ye2),(4.28)

and

ω2 = ωd2 + α2 sin(φe2) + α2,1 sin(φe2 − φe1),

v2 = vd2 + β2xe2 − γ2ωd2ye2 + β2,1(xe2 − xe1) − γ2,1ωd2(ye2 − ye1),(4.29)

where the parameters αi,j , βi,j , γi,j > 0. The reasoning behind the incorporation of the mu-tual coupling terms is explained by considering three situations depicted in Figure 4.6.

In Figure 4.6(a) both mobile robots are shown, which have both an individual desired trajec-tory. Robot 1 is not on its desired trajectory. In this specific case is xe1 = 0, φe1 = 0 andye1 6= 0. Moreover, robot 2 is assumed to be on its desired trajectory, i.e. (xe2, ye2, φe2) = 0.Because the error coordinate ye1 > 0, robot 2 receives an input of γ2,1ωd2ye1 due to the mutualcoupling terms, see definition of v2 in (4.29). Note that the term γ2,1ωd2ye1, with ye1 > 0,is similar to a term -γ2ωd2ye2, with ye2 < 0. So, this mutual coupling term γ2,1ωd2ye1 actsas if robot 2 is below its desired trajectory, i.e. as if ye2 < 0. Eventually robot 2 will tryto compensate by moving upwards. Clearly, in this case the controller of robot 2 mediatesbetween making robot 2 following its desired trajectory and ensuring that the formation iskept. The second effect of the mutual coupling term will be that robot 1 receives an effectivegain of γ1 + γ1,2, in the term −(γ1 + γ1,2)ωd1ye1 in v1 in (4.28), resulting in a feedback gainwhich will try to compensate for the error ye1.

Another example is represented by the situation in which robot 1 is ahead of its trajec-tory, i.e. xe1 > 0, ye1 = 0 and φe1 = 0, and robot 2 is assumed to be on its desired trajectory,see Figure 4.6(b). In this case robot 2 will receive information from the mutual synchroniza-tion part of the controller, where it ’thinks’ that it is behind its own desired trajectory, i.e.xe2 < 0, and it should accelerate. Again, the result will be that the virtual structure willremain (partly) the same. The second effect of the mutual coupling term is that the feedback

28

Page 39: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

~e11

~e11~e11

~e12

~e12~e12

~e21

~e21~e21

~e22

~e22~e22

(xd1, yd1)

(xd1, yd1)(xd1, yd1)

(xd2, yd2)

(xd2, yd2)(xd2, yd2)

(xV C , yV C)

(xV C , yV C)(xV C , yV C)

V C

V CV C

−lx1

−lx1−lx1

−lx2

−lx2−lx2

ly1

ly1ly1

−ly2

−ly2−ly2

(a) (b)

(c)

Figure 4.6: Two unicycle mobile robots that create a virtual structure. (a) The error coordi-nate of robot 1 ye1 6= 0. (b) The error coordinate of robot 1 xe1 6= 0. (c) The error coordinateof robot 1 φe1 6= 0.

gain in the term (β1 + β1,2)xe1 in (4.28) of robot 1 is increased with β1 + β1,2.

The mutual synchronization works in a similar fashion for the orientation, see Figure 4.6(c).If robot 1 is located at the correct position (xe1, ye1) = (0, 0), while only the orientation iswrong, φe1 > 0, it will result that robot 2 virtually thinks its orientation error φe2 < 0. Again,in this case robot 2 mediates between following its desired trajectory and ensuring that theformation is kept. In this case the effective feedback gain in the term (α1 + α1,2) sin(φe1) in(4.28) of robot 1 is increased to α1 + α1,2.

4.3.2 Stability Analysis

In Section 4.3.1, a virtual structure controller is designed for the formation control of a groupof unicycle mobile robots. In this section, the stability of the resulting error dynamics isanalyzed for a formation of two mobile robots. First the error dynamics of two mobile robotis determined, which takes the form of (3.8). The error dynamics with the controllers of

29

Page 40: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

(4.28) and (4.29) can be written into the cascaded form of (3.10), which is stated here as

xe1

ye1

xe2

ye2

= f1(t, xe1, ye1, xe2, ye2) + g(t, xe1, ye1, xe2, ye2, φe1, φe2)

[φe1

φe2

]

[φe1

φe2

]

= f2(t, φe1, φe2),

(4.30)

where

f1(t, xe1, ye1, xe2, ye2) =

ye1ωd1 − β1xe1 + γ1ωd1ye1 − β1,2(xe1 − xe2) + γ1,2ωd1(ye1 − ye2)−ωd1xe1

ye2ωd2 − β2xe2 + γ2ωd2ye2 − β2,1(xe2 − xe1) + γ2,1ωd2(ye2 − ye1)−ωd2xe2

,

(4.31)

f2(t, φe1, φe2) =

[−α1 sin(φe1) − α1,2 sin(φe1 − φe2)−α2 sin(φe2) − α2,1 sin(φe2 − φe1)

]

, (4.32)

and

g(t, xe1, ye1, xe2, ye2, φe1, φe2)

[φe1

φe2

]

=

α1ye1 sin(φe1) + ye1α1,2 sin(φe1 − φe2) − vd1 + vd1 cos(φe1)−α1xe1 sin(φe1) − xe1α1,2 sin(φe1 − φe2) + vd1 sin(φe1)

α2ye2 sin(φe2) + ye2α2,1 sin(φe2 − φe1) − vd2 + vd2 cos(φe2)−α2xe2 sin(φe2) − xe2α2,1 sin(φe2 − φe1) + vd2 sin(φe2)

,

(4.33)

with αi > 0, βi > 0, γi > −1, i = 1, 2, αi,j > 0, βi,j > 0 and γi,j > 0, i = 1, 2, j =1, 2, i 6= j. The following theorem gives sufficient conditions under which the equilibriumpoint (xei, yei, φei) = 0, i = 1, 2, of the formation error dynamics (4.30)-(4.33) is locallyexponentially stable. In other words, the formation control problem is solved locally.

Theorem 1. Consider two non-holonomic unicycle mobile robots described by (3.3). Supposethat the desired trajectories of the individual robots (xdi(t), ydi(t)), i = 1, 2, are given by (4.23),(4.22), for a given trajectory (xvc(t), yvc(t)) for the virtual center. Moreover, the desired ori-entation φdi(t) of the robots satisfies the second equation of (3.1). Consider the controllers(4.28) and (4.29) for robot 1 and robot 2, respectively, with vdi, ωdi, i = 1, 2, satisfying (4.27).

If

• the desired rotational velocity ωdi, i = 1, 2, of both mobile robots is persistently excitingand identical, i.e. ωd1 = ωd2;

• β1 = β2, γ1 = γ2, β1,2 = β2,1 and γ1,2 = γ2,1;

• the control parameters αi > 0, βi > 0 and γi > −1, i = 1, 2;

• the coupling parameters αi,j > 0, βi,j > 0 and γi,j > 0, i = 1, 2, j = 1, 2, i 6= j,

then, the equilibrium point (xe1, ye1, φe1, xe2, ye2, φe2) = 0 is locally exponentially stable.

30

Page 41: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

Proof. Note that the tracking error dynamics of both robots can be described by (4.30)-(4.33).Note, moreover, that (4.30) is of the form (2.25) and Corollary 2.3.1 is exploited to show thatthe equilibrium point (xe1, ye1, φe1, xe2, ye2, φe2) = 0 of the tracking error dynamics (4.30)-(4.33) is locally exponentially stable. First, the global exponential stability of the f1(t, xei, yei)part of the (xei, yei)-dynamics is proven, see (4.31), then the local exponential stability of theφei-dynamics is proven, see (4.32), and eventually it is shown that g(t, xei, yei, φei) of (4.33)satisfies Assumption 2.3.1. Herein xei = [xe1 xe2]

T , yei = [ye1 ye2]T and φei = [φe1 φe2]

T .According to Corollary 2.3.1 the satisfaction of these three conditions implies that the equilib-rium point (xei, yei, φei) = 0, i = 1, 2, of the error dynamics of the virtual structure controlleris locally exponentially stable.

Global exponential stability of the f1(t, xei, yei) part of the (xei, yei)-dynamics

Write f1(t, xei, yei) of (4.31), for i = 1, 2, as the following linear time-varying system,

f1(t, xe1, ye1, xe2, ye2) =

−β1 − β1,2 (1 + γ1 + γ1,2)ωd1 β1,2 −γ1,2ωd1

−ωd1 0 0 0

β2,1 −γ2,1ωd2 −β2 − β2,1 (1 + γ2 + γ2,1)ωd2

0 0 −ωd2 0

xe1

ye1

xe2

ye2

,

(4.34)Since β1 = β2 > 0, β1,2 = β2,1 > −β1

2 , γ1 = γ2 6= −1, γ1,2 = γ2,1 6= −1−γ1

2 and ωd1 = ωd2 ispersistently exciting according to Definition 2.2.4, Theorem 2.2.4 can be directly exploited toprove that the origin of the system [xei yei]

T = f1(t, xei, yei), for i = 1, 2, with f1(t, xei, yei)as in (4.34) is globally exponentially stable.

Local exponential stability of the φei-dynamics

Define (4.32), for i = 1, 2, as

f2(t, φe1, φe2) =

[−α1 sin(φe1) − α1,2 sin(φe1 − φe2)−α2 sin(φe2) − α2,1 sin(φe2 − φe1)

]

, (4.35)

Note that φe = (φe1, φe2)T = 0 is the equilibrium point of the φei-dynamics in (4.30) with f2

as in (4.35). If (4.35) is linearized around its equilibrium point as

A =∂f2

∂φe(φe)

∣∣∣φe=0

, (4.36)

it will result that A is a linear time-invariant matrix defined as

A =

[−α1 − α1,2 α1,2

α2,1 −α2 − α2,1

]

, (4.37)

which is Hurwitz for αi > 0 and αi,j > 0 if i, j = 1, 2 and i 6= j. According to Corollary 2.2.2it will result that φe = 0 is a locally exponentially stable equilibrium point of the φe-dynamicsfor αi > 0 and αi,j > 0 if i, j = 1, 2 and i 6= j.

31

Page 42: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

Matrix g(t, xei, yei, φei) satisfies Assumption 2.3.1

The matrix g(t, xei, yei, φei) of (4.33), for i = 1, 2, is determined as follows:

g(t, xe1, ye1, xe2, ye2, φe1, φe2)

[φe1

φe2

]

=

[g11 g12g21 g22

] [φe1

φe2

]

, (4.38)

where

g11 =

α1ye1

∫ 1

0cos(sφe1)ds+ ye1α1,2 cos(φe2)

∫ 1

0cos(sφe1)ds− vd1

∫ 1

0sin(sφe1)ds

−α1xe1

∫ 1

0cos(sφe1)ds− xe1α1,2 cos(φe2)

∫ 1

0cos(sφe1)ds+ vd1

∫ 1

0cos(sφe1)ds

g12 =

−ye1α1,2 cos(φe1)

∫ 1

0cos(sφe2)ds

xe1α1,2 cos(φe1)

∫ 1

0cos(sφe2)ds

g21 =

−ye2α2,1 cos(φe2)

∫ 1

0cos(sφe1)ds

xe2α2,1 cos(φe2)

∫ 1

0cos(sφe1)ds

g22 =

α2ye2

∫ 1

0cos(sφe2)ds+ ye2α2,1 cos(φe1)

∫ 1

0cos(sφe2)ds− vd2

∫ 1

0sin(sφe2)ds

−α2xe2

∫ 1

0cos(sφe2)ds− xe2α2,1 cos(φe1)

∫ 1

0cos(sφe2)ds+ vd2

∫ 1

0cos(sφe2)ds

,

(4.39)where ∫ 1

0cos(sx)ds =

sin(x)

x for x 6= 01 for x = 0

(4.40)

and ∫ 1

0sin(sx)ds =

1−cos(x)

x for x 6= 00 for x = 0

. (4.41)

With L’Hopital’s Rule [1] the indeterminate forms of (4.40) and (4.41) are determined as

limx→0

sin(x)

x= 1, (4.42)

and

limx→0

1 − cos(x)

x= 0, (4.43)

with as a consequence that both functions are continuous and always ≤ 1. Knowing theseindeterminate forms, matrix g(t, xei, yei, φei), for i = 1, 2, satisfies Assumption 2.3.1, seeAppendix A.3 for details. Since, it has now been shown that all conditions of Corollary 2.3.1hold, this corollary can be used to show that the origin of the error dynamics of the virtualstructure controller is locally exponentially stable. This completes the proof.

Remark. The conditions for the control parameters (βi, γi) and coupling parameters (βi,j , γi,j)to prove global exponential stability of the f1(t, xei, yei) part of the (xei, yei)-dynamics aregiven. Bare in mind additional conditions are already given to these parameters, i.e. thecontrol parameter γi > −1, see Section 3.2, and the coupling parameters (βi,j , γi,j) > 0, seeSection 4.3.1.

32

Page 43: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

4.3.3 Simulation Results

In Sections 4.3.1 and 4.3.2, a controller has been designed for the virtual structure approachand it is shown that the error dynamics of the controller is locally exponentially stable in thecase of two mobile robots. With this newly developed controller a number of simulations toillustrate the results is carried out. Since the stability analysis is only valid for two mobilerobots, with the same control and coupling parameters (βi, γi, βi,j , γi,j), and which follow thesame desired rotational velocity trajectory ωdi, see Section 4.3.2, these limitations are takeninto account during simulations. The desired trajectory of the virtual center is described as

xvc(t) = 2 + 0.5tyvc(t) = 5 + 0.5t.

(4.44)

The desired trajectories of robot 1 and robot 2 with respect to the coordinate frame attachedto the virtual center are given as

lx1(t) = 2ly1(t) = 1.5 + 0.5 sin(2π0.25t)

(4.45)

andlx2(t) = 0ly2(t) = −2 + 0.5 sin(2π0.25t),

(4.46)

respectively. The individual trajectories of both robots (xdi, ydi) are determined by (4.23) andthe desired forward velocity vdi and desired rotational velocity ωdi are determined by (4.27).The individual trajectories of both robots will give the same desired forward velocity vdi anddesired rotational velocity ωdi. The control parameters of robot 1 and robot 2 are chosen asα = 1, β = 1 and γ = 0.5 and the mutual coupling parameters of robot 1 and robot 2 arechosen as α = 1, β = 1 and γ = 0.5. The choice of parameters determine whether the robotsprefer to track their individual trajectories, or prefer to maintain formation. With the choiceof these parameters both robots priority is to maintain the formation. The initial conditionof robot 1 is equal to (x10, y10, φ10) = (4, 15, 0) and the initial condition of robot 2 is equal to(x20, y20, φ20) = (4, 10, 0).

In Figure 4.7 the trajectories of robots 1 and 2 are displayed for the virtual structure ap-proach. The dashed trajectory represents the trajectory of the virtual center, while the graysolid line and gray dotted line represent the desired trajectories of robot 1 and robot 2, respec-tively. The solid black line with o-markers and the solid black line with x-markers illustratesthe actual trajectories of robot 1 and robot 2, respectively.

When both trajectories of the mobile robots have converged after 16 seconds, as shown inFigure 4.7, a perturbation is added of 25 m/s extra forward velocity and 25 rad/s extra rota-tional velocity for the duration of 0.1 seconds to robot 1. It is clearly shown that robot 2 willalso react to the perturbation of robot 1. Robot 2 will mediate between following its desiredtrajectory and ensuring that the formation is kept.

In Figures 4.8 and 4.9, the error coordinates of both mobile robots are displayed with thesolid line. The dashdotted line illustrates the difference between both error coordinates, whichreflects the ”formation” error.

33

Page 44: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

0 2 4 6 8 10 12 14 16 18

4

6

8

10

12

14

16

18

20

22

Trajectory Robot 1Trajectory Robot 2Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2

x [m]

y[m

]

Figure 4.7: The trajectories of the robot 1 and robot 2 in the virtual structure approach.

When the difference between the error coordinates of robot 1 (xe1, ye1, φe1) and the errorcoordinates of robot 2 (xe2, ye2, φe2) is equal to zero, the formation is kept. Both robots sufferfrom two different types of errors, e.g. there is the initial position error at t = 0 s and errorsdue to the perturbation at robot 1 at t = 16 s. In Figures 4.8 and 4.9, it is clearly depictedwith the the individual error coordinates and formation error coordinates, that the robotsconverge faster to the formation, than that both mobile robots converge to their individualdesired trajectories.

4.3.4 Discussion

In Section 4.3, a virtual structure controller has been designed, a stability analysis is performedfor the case of two robots driving in formation and simulations illustrate the behaviour ofthe robots using the virtual structure approach. There are, however, some limitations to thisvirtual structure controller. These limitations are briefly recalled:

- the desired rotational velocity ωdi of both mobile robots should be persistently exciting;

- the formation consists of maximally two robots maximum;

- the desired rotational velocity ωdi should be exactly the same for both robots;

- the control parameters βi and γi and the coupling parameters βi,j and γi,j should beidentical for both robots.

34

Page 45: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

0 5 10 15 20 25 30−4

−2

0

2

4

Error Coordinates Robot 1Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−8

−6

−4

−2

0

2

0 5 10 15 20 25 30−2

−1

0

1

2

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure 4.8: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.28).

The first limitation of the desired rotational velocity ωdi, which should be persistently exciting,is already present at the level of the individual trajectory controller, see Section 3.2. The otherlimitations occur due to assumptions in the stability proof, see Section 4.3.2. During numeroussimulations with more than two robots, different desired angular velocities, different controlparameters and/or different coupling parameters, the error coordinates (xei, yei, φei) convergeto zero in time, see Appendix B. In Figure 4.10, a simulation is performed with four mobilerobots, moving with different desired angular velocities, with different control parameters(βi, γi) and different coupling parameters (βi,j , γi,j). The desired trajectories of the virtualcenter, robot 1, robot 2, robot 3 and robot 4 are described as in (4.44),

lx1(t) = 2ly1(t) = 1.5 + 2 cos(2π0.6t),

(4.47)

(4.46),

lx3(t) = 4ly3(t) = 5 + 0.25t+ 0.5 sin(2π0.25t)

(4.48)

and

lx4(t) = −2ly4(t) = −7 + 3 sin(2π0.05t),

(4.49)

35

Page 46: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

0 5 10 15 20 25 30−4

−2

0

2

4

Error Coordinates Robot 2Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−8

−6

−4

−2

0

2

0 5 10 15 20 25 30−2

−1

0

1

2

x2e

[m]

y 2e

[m]

φ2e

[rad

]

Time [s]

Figure 4.9: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.29).

respectively. The controllers of robot 1, robot 2, robot 3 and robot 4 are given as follows

ω1 = ωd1 + α1 sin(φe1) + α1,2 sin(φe1 − φe2) + α1,3 sin(φe1 − φe3) + α1,4 sin(φe1 − φe4),

v1 = vd1 + xe1(β1 + β1,2 + β1,3 + β1,4) − β1,2xe2 − β1,3xe3 − β1,4xe4

−ωd1ye1(γ1 + γ1,2 + γ1,3 + γ1,4) + ωd1(γ1,2ye2 + γ1,3ye3 + γ1,4ye4),(4.50)

ω2 = ωd2 + α2 sin(φe2) + α2,1 sin(φe2 − φe1) + α2,3 sin(φe2 − φe3) + α2,4 sin(φe2 − φe4),

v2 = vd2 + xe2(β2 + β2,1 + β2,3 + β2,4) − β2,1xe1 − β2,3xe3 − β2,4xe4

−ωd2ye2(γ2 + γ2,1 + γ2,3 + γ2,4) + ωd2(γ2,1ye1 + γ2,3ye3 + γ2,4ye4),(4.51)

ω3 = ωd3 + α3 sin(φe3) + α3,1 sin(φe3 − φe1) + α3,2 sin(φe3 − φe2) + α3,4 sin(φe3 − φe4),

v3 = vd3 + xe3(β3 + β3,1 + β3,2 + β3,4) − β3,1xe1 − β3,2xe2 − β3,4xe4

−ωd3ye3(γ3 + γ3,1 + γ3,2 + γ3,4) + ωd3(γ3,1ye1 + γ3,2ye2 + γ3,4ye4)(4.52)

and

ω4 = ωd4 + α4 sin(φe4) + α4,1 sin(φe4 − φe1) + α4,2 sin(φe4 − φe2) + α4,3 sin(φe4 − φe3),

v4 = vd4 + xe4(β4 + β4,1 + β4,2 + β4,3) − β4,1xe1 − β4,2xe2 − β4,3xe3

−ωd4ye4(γ4 + γ4,1 + γ4,2 + γ4,3) + ωd4(γ4,1ye1 + γ4,2ye2 + γ4,3ye3),(4.53)

respectively. The control and coupling parameters for robot 1, robot 2, robot 3 and robot 4are given in Table 4.1. The initial conditions of robot 1, robot 2, robot 3 and robot 4 are

36

Page 47: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

i αi βi γi αi,1 αi,2 αi,3 αi,4 βi,1 βi,2 βi,3 βi,4 γi,1 γi,2 γi,3 γi,4

1 1 1 1 - 1 0.9 0.7 - 1 0.9 0.7 - 1 0.9 0.72 2 2 2 0.4 - 1.5 1.7 0.4 - 1.5 1.7 0.4 - 1.5 1.73 0.5 0.5 0.5 0.3 1.6 - 1.2 0.3 1.6 - 1.2 0.3 1.6 - 1.24 0.1 0.1 0.1 2.5 0.6 0.3 - 2.5 0.6 0.3 - 2.5 0.6 0.3 -

Table 4.1: The control and coupling parameters of robots 1, 2, 3 and 4.

taken equal to [0 12 0], [4 10 π2 ], [5 18 0] and [0 0 0], respectively. In Figures 4.11, 4.12,

4.13 and 4.14 the error coordinates of robot 1, robot 2, robot 3 and robot 4 are displayed,respectively, which show convergence to zero of all error coordinates.

−5 0 5 10 15 20

0

5

10

15

20

25

30

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Desired Trajectory Robot 3Desired Trajectory Robot 4Trajectory Robot 1Trajectory Robot 2Trajectory Robot 3Trajectory Robot 4

x [m]

y[m

]

Figure 4.10: The trajectory of the robot 1, robot 2, robot 3 and robot 4 in the virtual struc-ture approach with different control parameters (αi, βi, γi) and different coupling parameters(αi,j , βi,j , γi,j).

All robots converge to their desired trajectories, even though robot 1 shows undesired be-haviour in the first ten seconds of the simulation resulting in large position errors, see Figures4.10 and 4.11. Although robot 1 experiences undesired behaviour, this simulation, and thesimulations in Appendix B, give confidence that the virtual structure approach will be stablewhen numerous robots with different persistently exciting desired angular velocities, different

37

Page 48: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

0 5 10 15 20 25 30−10

−5

0

5

10

0 5 10 15 20 25 30−6

−4

−2

0

2

4

0 5 10 15 20 25 300

0.2

0.4

0.6

0.8

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure 4.11: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.50) with a formation of 4 robots.

control parameters and/or different coupling parameters are controlled.

To generalize the stability proof to n robots, without limitations regarding the desired an-gular velocity, control and coupling parameters, some major steps have to be taken. Firstof all, a general coordinate transformation has to be determined for the linear time-varyingpart f1i(t, z1i) of the (xei, yei)-dynamics for n mobile robots for different control parameters(βi, γi), different coupling parameters (βi,j , γi,j) and different desired angular velocities ωdi.Note that this is probably the most difficult step. It is recommended to expand the resultof two mobile robots of Section 4.3.2, to three mobile robots and try to identify repetitivereasoning. The method described in Appendix A.2 can be used to determine the coordinatetransformation for three mobile robots.

The outcome of the stability proof of the φei-dynamics will take the same form for n robots.The linear time-constant matrix A of the linearization of (4.32) for n robots will have thefollowing form:

A =

−α1 −n∑

j=1,16=j

α1,j α1,2 . . . α1,n

α2,1 −α2 −n∑

j=1,16=j

α2,j . . . α2,n

......

. . ....

αn,1 αn,2 . . . −αn −n∑

j=1,n6=j

αn,j

. (4.54)

38

Page 49: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Formation Control

0 5 10 15 20 25 30−8

−6

−4

−2

0

2

0 5 10 15 20 25 30−2

−1

0

1

0 5 10 15 20 25 300

0.2

0.4

0.6

0.8

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure 4.12: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.51) with a formation of 4 robots.

Next, is determined for which control parameters αi and coupling parameters αi,j the matrixis Hurwitz. Then, according to Corollary 2.2.2 it will result that (4.32) for n robots is locallyexponentially stable.

Finally, it is shown that (4.33) for n robots satisfies Assumption 2.3.1. The same methodcan be used as for two robots, see Appendix A.3, and no further difficulties are expected.Resulting that (4.33) satisfies Assumption 2.3.1 for n mobile robots will be solved easily.

39

Page 50: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 4

0 5 10 15 20 25 30−4

−2

0

2

4

0 5 10 15 20 25 30−8

−6

−4

−2

0

2

0 5 10 15 20 25 300

0.5

1

1.5

2

xe3

[m]

y e3

[m]

φe3

[rad

]

Time [s]

Figure 4.13: Simulated evolution of the error coordinates of robot 3 for the virtual structurecontroller of (4.52) with a formation of 4 robots.

0 5 10 15 20 25 30−2

0

2

4

6

0 5 10 15 20 25 30−3

−2

−1

0

0 5 10 15 20 25 300

0.5

1

1.5

2

xe4

[m]

y e4

[m]

φe4

[rad

]

Time [s]

Figure 4.14: Simulated evolution of the error coordinates of robot 4 for the virtual structurecontroller of (4.53) with a formation of 4 robots.

40

Page 51: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

Experimental Setup

In Sections 4.2 and 4.3, the stability is proven of the error dynamics for the master-slaveapproach and virtual structure approach. In these sections, also simulations are executed toverify the stability results. In this chapter, an experimental environment is designed, whichenables to experiment with these new controllers. In the simulation studies, the kinematicmodel of Section 3.1 has been used, no environmental disturbances are acting on the robotsand no measurement noise is present, while in an experimental environment disturbances andmeasurement noise are always present. Therefore it will be interesting to examine how themaster-slave controller and virtual structure controller will perform under such more practicalconditions.

Before a choice for the robots and the localization system can be made, it is desirable tohave a general understanding on the configuration of the experimental environment as awhole, see Figure 5.1.

PC with Wireless Connection Unicycle Mobile Robots

Localization System

Figure 5.1: The main components of the experimental setup.

The main components of the experimental setup will be a PC, a number of wireless mobilerobots and a localization device. Centralized control will be used for the experimental setup,which means there is one PC, with sufficient computational power, that receives the absolute

41

Page 52: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

coordinates and orientations of the robots from a position measurement device (localization).The main reason to opt for centralized control is that all absolute positions and orientationsof all robots are needed to determine the new control inputs for the individual robots, usingthe control strategies of Chapter 4. Another important benefit of centralized control is thata multitude of control languages can be used to control the individual robots, instead of onlythe specific control language which can be used on the CPU of the robot. The choice ofcentralized control will influence the requirements for the robots and the localization system.

In Sections 5.1 and 5.2, the choice for the robots and the localization device are explained,respectively, considering performance requirements for both. Then, in Section 5.3, is dis-cussed how the experimental setup is calibrated. Finally, in Section 5.4, the experimentalenvironment as whole is discussed.

5.1 Choice of the Robot

5.1.1 Requirements

There are several important requirements to determine the differences between the robots.These requirements are:

- encoder accuracy of the wheel position. The relative position accuracy must be smallerthan 1 mm with the assumption that there will be no slip between the wheels and thedriving surface. The relative position of the mobile robot is determined with encodersattached to the robots wheels. Although the absolute position will be determined inanother way, therefore not influencing the choice for a robot at this moment, the relativeposition is still necessary. It is possible that the absolute position measurements of thelocalization device will take a lot of time between its measurements. A large timeinterval between measurements, results in a low bandwidth of the controller, whichleads to an increase of the position errors. A large time interval between measurementscan be compensated by determining the position of the robot by its relative position.

- control language(s). A low level control language which is appropriate for control pro-totyping is preferred. It is important that a multitude of controllers can be easily im-plemented on the robot. Because centralized control will be used for the experimentalsetup, the robots should be able to react to direct commands from the PC.

- communication configurations of the robot. A wireless link is needed between the PCand the robots to ensure that the robots are not limited in their movements by cabledconnections. Besides the wireless link, it is important that the robots will receive andexecute the commands with a bandwidth of at least 20 Hz. The mobile robots shouldmove with low accelerations, since the controllers of Sections 4.2 and 4.3 are basedon kinematic models. Due to the low accelerations of the mobile robots, the desiredtrajectories of the mobile robots have a low frequency. The low frequency of the desiredtrajectories results in the requirement of a low bandwidth of the controller . Therefore,a sampling frequency of 20 Hz is more than enough.

- possibility of decentralized control. In future research, it can be desirable that the robotsuse a decentralized control scheme. Although this is beyond the scope of this project,the possibilities will be briefly mentioned.

42

Page 53: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

- size, weight and price. Most absolute positioning measurement devices have a limitedarea in which the position and orientation of the robots can be measured accurately.Therefore it is preferred that the robots are smaller then 10 cm in diameter.

Four unicycle mobile robots that are interesting for the experimental setup will be discussed,namely Mindstorm NXT, Khepera II, Khepera III and E-Puck. In Appendix C, MindstormNXT, Khepera II and Khepera III are discussed and in Section 5.1.2, the mobile robot E-Puckis discussed. In Section 5.1.3, all four unicycle robot are compared with each other.

5.1.2 E-Puck

E-Puck is a mini unicycle mobile robot developed at Swiss Federal Institute of Technology inLausanne for teaching purposes. E-Puck is equipped with a small dsPIC microprocessor andfeatures a large number of sensors and actuators [46], see Figure 5.2.

Figure 5.2: The robot E-Puck.

The stepper motor generates 20 pulses per revolution. Due to a gear reduction, with a ratioof 50:1, there are eventually 1000 pulses per revolution of the wheel. The diameter of thewheel is 41mm, resulting in 7.76 pulses per millimeter [46].

The standard control language is C. But since this robot is widely used there are othercontrol languages available, e.g. ePic2 [24, 25], which is a MATLAB toolbox, and a pythontoolbox with direct commands developed by an employee of Industrial Design at the Eind-hoven University of Technology. After intensive testing with the ePic2 toolbox, we are notable to send direct commands to E-Puck. This is probably due to the SerCom file installedon E-Puck. The SerCom file makes it possible to communicate with E-Puck by means ofthe serial communication protocol, i.e. by means of direct commands. This will probably besolved in the near future. Because E-Puck has an open BlueTooth protocol it is possible tocommunicate directly from Matlab to E-Puck by means of the serial port. Eventually a smallMATLAB-toolbox is written to send direct commands to the robots, see Appendix D. If onewants full control of E-Puck with MATLAB, this toolbox should be expanded.

Communication is done by means of BlueTooth, which limits the amount to seven activerobots per dongle. The bandwidth of BlueTooth is large enough to send simple commands toset the velocity to the motors.According to the distributors of E-Puck, it is possible for this robot to communicate directly

43

Page 54: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

to other robots. Bare in mind, it will not be a trivial solution to communicate directly betweenrobots, due to the fact that with this type of communication, it is not possible to program inMATLAB of Python.

E-Puck’s size is characterized by a diameter of 70mm and a height of 55mm. The weightis 150g. The price of three E-Pucks, plus three batteries, one charger for the three batteries,1 power supply and documentation is about 1800,- euro.

An additional advantage of E-Puck is that the robot is already intensively used at the In-dustrial Design faculty of Eindhoven University of Technology. A lot of knowledge about thecontrol of E-Puck is available there. Also the possibility of borrowing a number of robots isa large advantage.

5.1.3 Robots: comparison and choice

Comparing the different robots of the previous subsection and Appendix C will result in achoice of an appropriate robot. The main drawback of Lego NXT is the specific and blockedBlueTooth protocol. Therefore centralized control by means of direct commands for the PC isnot trivial. Despite numerous attempts, a serial connection between NXT and the PC couldnot be created. Secondly, there are some doubts about how Mindstorm will react if a numberof bricks are controlled at the same time, since Mindstorm is not developed with the idea ofmulti-robot systems in mind, while E-Puck, Khepera II and Khepera III are. Finally, Mind-storm NXT is not an appropriate solution in the near future, because decentralized controlis not possible.

Khepera II has no advantages in regard to Khepera III, while this robot is significantlymore expensive. Therefore, it is not an interesting choice for this setup.

Khepera III is well suited for the experimental setup, perhaps even a bit too well suited,i.e. it is over-qualified. A lot of control configurations are possible, and the robot is suitedfor a lot of other applications, due to the numerous sensors and actuators. However, thoseconfigurations and applications are not of particular interest with respect to the specificationsof this experimental environment, while it results in the disadvantages of an increased sizeand price of the robot. The robot which will be used in this experimental setup only hasto respond to direct commands regarding velocities of the two motors and return encoderpositions when it is asked for.

E-Puck gives exactly what the robot for the experimental setup needs. It can be controlledby direct commands with numerous control languages. This robot is the smallest one and nottoo expensive. Another big advantage of E-Puck is that there is a lot of knowledge availableat the faculty of Industrial Design. An employee of ID even developed a toolbox for Pythonwhat makes it possible to control the robot by means of direct commands. In total threeE-Pucks have been bought for this experimental setup.

44

Page 55: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

5.2 Choice of Localization Device

5.2.1 Requirements

There are many different localization techniques and devices. However, at the moment mostof them still suffer from several disadvantages. Therefore, localization is still a topic whichreceives a lot of attention from different research centers [7, 9, 26, 60]. There are a numberof important requirements for this specific experimental setup, namely:

- plug-and-play type of localization device. Due to time limitations, it was important inthis project to have the localization device running as soon as possible, so that the mainfocus of the current research can remain to be the development of the controller.

- orientation measurements. Most localization devices can measure the position of therobots; however the developed controller also needs the orientation as feedback infor-mation.

- accurate and consistent measurements. The maximum measurement error should besmaller then 10 mm and the measurements should be consistent between measurements.

- positions and orientations are known of all robots at (almost) the same time. Since thevirtual structure controller of Section 4.3 needs the information of all robots, the timebetween measurements of the position and orientation of the different robots should beminimal.

- robust to operate at different locations. Light and/or radiations, e.g. magnetic radiations,should not interfere with the experimental setup, so it can operate at different locations.

- wireless. The motion of the robots cannot be limited by means of wires.

First, the different localization techniques that exist today are briefly explained.

5.2.2 Localization techniques

There are in principal three different techniques for the localization of objects [22]. Thesetechniques are:

- triangulation. Herein, the position of an object is determined with the use of triangles.In other words, with known distances and/or angles from fixed beacons, the absoluteposition of the object can be determined. Lateration and angulation are two subcat-egories of triangulation. For lateration the distance is measured from a beacon to theposition of the object in a 2D environment. To determine a unique location of an objectby means of lateration, three beacons are necessary, see Figure 5.3(a). For angulationthe angle is determined between the beacon and the object, see Figure 5.3(b). For thislocalization technique two beacons are used. With triangulation it is not possible todetermine the orientation of the object.

- scene analysis. For this technique, scenes, e.g. camera images, are observed from a spe-cific point of view to determine the location of the object. There are two subcategories,namely static and differential scene analysis. For static scene analysis, the observedscenes are matched with predefined datasets, e.g. specific markers which are recognized

45

Page 56: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

beaconobject

(a) (b)

Figure 5.3: Triangulation localization technique. (a) Lateration. (b) Angulation.

by means of visual software. In differential scene analysis, the movement of the ob-served features specify the movement of the object. The main difference between thetwo subcategories is that for static scene analysis the absolute position is determinedand for differential scene analysis the relative position is determined.

- proximity. Proximity determines when a object is near a known location. There arethree different subcategories for this technique. It is possible to have physical contact,e.g. pressure sensors or touch sensors. Secondly, wireless cellular acces points can bemonitored, so there is knowledge in which cell the object is at the moment. And finally,automatic identification systems can be observed, e.g. credit card terminal, computerlog-in history and land-line telephone records.

The different localization systems, which will discussed in the following section, will all useone or more of the techniques described above.

5.2.3 Different localization systems

There are numerous localization systems on the market [23]. However, only a few of thesesystems will come close to meeting the requirements which are summarized in Section 5.2.1,since most of these devices have limitations on accuracy. One of the localization systems, men-tioned in [23], can be interested for this experimental setup; it is called MotionStar. It uses acombination of scene analysis and lateration and has an accuracy of 1mm. The experimentalsetup will consist of a 3-axis magnetic source which will be monitored by a 3-axis magneticsensor. The excitation of the source will be represented as vectors. The system tracks theposition and orientation of the sensor by determining small changes in the coordinates andadding them to the previous measurements [54]. Further research on MotionStar showed thatthe magnetic sources are too large for the chosen robots, and the smaller localization devicessimilar to MotionStar are wired.

The second localization device of interest is eBeam. This system uses the lateral localiza-tion technique, with only two beacons. As shown in Figure 5.3(a) three beacons are necessaryto determine a unique location of the robot. The localization system eBeam has an angle ofview of 90 degrees. By placing both beacons in a configuration as illustrated in Figure 5.4,

46

Page 57: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

beacontransmitter

Figure 5.4: Lateral localization technique of the device eBeam.

there is one unique location measured.

The beacon measures the elapsed time between incoming ultrasonic and infrared signals fromthe transmitters. With the use of trigonometry the coordinates of the transmitters are ob-tained [64]. However, there are some limitations to the eBeam system. First of all, onlypositions are measured and no orientation. Fortunately, it can distinguish different transmit-ters; this way the positions of multiple robots and orientation of one robot with two sleevescan be measured. Unfortunately, it is not possible for eBeam to measure multiple transmittersat the same time. Switching between sleeves will happen at a frequency of 1 Hz [35]. As aconsequence determination of the orientation is not possible with two sleeve. The last disad-vantage is that blocking of the infrared and/or ultrasonic signal will result in large positionerrors [6]. And, because there will be a multitude of robots, signals will be blocked eventually.

Instead of absolute localization, it is also possible to use relative localization (dead-reckoning).By means of encoders attached to the motors driving the robots wheels, the position can bedetermined from a known starting position. The main disadvantage of this approach is thatthe error, which will occur due to slippage or collision, will accumulate over time. Therefore,this technique is only suitable if the experiments are relatively short in duration.

The final alternative is static scene analysis by means of camera measurements and visualsoftware. This type of localization to determine the position of a group of robots is widelyused, e.g. in experimental setups [9, 26, 60] and the SmallSize league of RoboCup [7]. Thereare different visual software packages available on the internet as freeware, but one of themis particularly of interest. ReacTIVion [34], which is a part of a tabletop tangible musicalinterface named reacTable, determines both position and orientation of a large quantity offiducal markers at virtually the same time. The source image of the camera is first convertedto a black an white image, with an adaptive threshold. This black and white image is con-verted in a region adjacency graph, which provides a simple-connectivity view. If a uniquetree structure is found in the region adjacency graph, it will be identified with predefinedtrees in the dictionary to retrieve the unique marker ID number.

47

Page 58: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

5.2.4 Localization: comparison and choice

Since the different existing localization devices and techniques are known, these devices arecompared and the most suitable one is chosen.

MotionStar has high accuracy, but because it is either too large or wired, this system can notbe used for the experimental setup.

The eBeam device is also inadequate, because the switching between the sleeves takes toomuch time. The second reason is that sleeves can be blocked due to the multitude of robots.These two reasons will eliminate eBeam as an appropriate localization device.

Dead-reckoning is also not a possibility, because there is always a possibility of collisionbetween robots.

ReacTIVision is the best choice, because for a multitude of markers both positions and orien-tations can be determined at virtually the same time. The coordinates of these markers aresend to a local port of a computer, which can be read by a multitude of programmes. Theposition of the marker, which is determined by the visual software reacTIVision, is consistentwhen the measurements are repeated for a number of times, i.e. the position of the markeris reproducible. Moreover, if reacTIVision is restarted between two measurements, still thesame position of the marker is determined. However, the accuracy depends mostly on thechoice of the camera and lens. Simple experiments with a webcam resulted in confidence thatthe maximum error will be within one centimeter. Eventually, an industrial firewire camerais bought, which is able to reach 30 frames per second with a resolution of 1024x768 pixels.For the camera and lens, the AVT Guppy F-080b b/w [2], with a Computar T0412FICS-3lens [12], with a fixed focal length of 4 mm, manual iris, CS-mount, appropriate for 1/3” ccdsensors is chosen. This will give a driving area of 175 by 128 cm, with a marker size of 7 by7 cm attached to the robots.

5.3 Calibrating the Experimental Setup

There are two types of measurement data that need to be calibrated, before proper experi-ments can be executed. Firstly, the data which is received from reacTIVision is considered.The position of the mobile robots, which is determined with the localization software reac-TIVision, is represented by values between 0 and 1. The values in the x- and y-direction arebetween [0.034;0.960] and [0.030;0.913], respectively, determined at the corners of the arena.These values are written to the actual size of the arena, which is 175 by 128 cm. The ori-entation angle φ of the mobile robot is the angle between the heading of the robot and thex-axis, see Figure 5.5. This orientation angle is chosen to be consistent with the orientationangle as in Section 3.1. In Figure 5.5, the coordinate axes in the x- and y-direction of theexperimental environment are depicted.

Secondly, the data which is send to E-Puck is calibrated. The velocity which is set with thespeeds-command, see Appendix E.3, is given in [encoderstripes/s]. It is possible to determinethe velocity in [m/s] theoretically, but experiments show that the realized velocity is not lin-early related to the velocity set by the controller in [encoderstripes/s], which is probably due

48

Page 59: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

Desktop Arena Camera

x

y

φ

Figure 5.5: The experimental setup, with its corresponding x-, y- and φ-direction.

to friction effects in the E-Puck hardware. In Figure 5.6, the velocity of two E-Puck robotsis determined in [m/s].

Eventually, a fitted linear relation is chosen from the measured data which is consistent with0.000127 [m/encoderstripes].

5.4 Experimental Setup: New Design

The choice of the robots and the localization system are explained in Sections 5.1 and 5.2,respectively. The entire experimental setup is shown in Figure 5.7.

In Figure 5.7, it is shown that the camera is positioned above the driving arena. In the drivingarena two E-Pucks are visible. A computer is positioned on the left side of the arena, whichreceives the images of the camera, which, using the reacTIVision software, determines theposition and orientation of the robots. The computer is used to determine the new velocitiesfor the robots, while using the information of the position and orientation, and the controlstrategies developed in Chapter 4. The new velocity information is sent to the robots bymeans of BlueTooth, i.e. over a wireless communication channel.

The following aspects are important to determine the success of the experimental setup:

- accurate and consistent measurements. The accuracy and consistency of the measure-ments depend on the visual software and camera. In both a theoretical and a exper-imental fashion the maximum error and how consistent the system is determined inbetween measurements (reproducibility).

- time delay. There is a time delay between the moment of measurement and the action

49

Page 60: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

0 100 200 300 400 500 600 700 800 900 10000

0.05

0.1

Speed of Robot 1Speed of Robot 2Average speed of both Robots

Rea

lize

dve

loci

ty[m

/s]m

easu

red

by

the

cam

era

Velocity set by the controller [encoderstripes/s]

Figure 5.6: Calibrating the velocity of two E-Pucks to [m/s].

which is executed by the robots. To minimize the related error, it is desired to minimizethis time delay as much as possible.

- bandwidth. The bandwidth of the experimental setup defines the total number of timesper second that new information, e.g. the position of the robots, velocities set by thecontroller, is determined and executed. It is preferred to have the bandwidth of thesystem as high as possible. A large bandwidth of the experimental setup is necessaryto minimize the error in a dynamic situation.

- driving area. Because a large number of robots is driving in the arena, it is recommendedto have a driving area as large as possible.

- robustness. The BlueTooth connection between the computer and the robots shouldremain stable and the visual software should keep on measuring the markers at alltimes.

In the following sections, is first explained how the above goals are achieved. Then, the mainresults of these five goals, which are important to determine the success of the experimentalsetup, are given.

5.4.1 Accurate and Consistent Measurements

First, the accuracy of the measurements is determined in a theoretical fashion. The cameraresolution is given as 1024 by 768 pixels, and the area of the arena is given as 1.75 by 1.28 m.

50

Page 61: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

CameraE-Pucks ArenaPC

Figure 5.7: The experimental setup, with two E-Pucks driving in the arena, a camera whichdetermines the position of the robot and a PC which sends new information to the robots.

This results in a theoretical accuracy of 0.0017 m in both the x- and y-direction. The size ofthe markers is 0.07 by 0.07 m, see Figure 5.8.

Consequently, the maximum distance between center of the black dots and the center of thewhite dots, which are used to determine the angle of the marker is 7 cm. With simple geo-metric reasoning, this results in an accuracy of 0.0243 rad in the φ-direction.

The accuracy of the measurements is also determined in an experimental fashion. The po-sition is measured while the speed of E-Puck is set to be very low. The position in the x-and y-direction changes with steps of 0.0019 m. The experimental result is larger than thetheoretical result, because the area recorded by the camera is somewhat larger than the arena.The orientation changes with steps of 0.0524 rad. The experimental result is larger than thetheoretical result, because the distance between the two points on the marker, which are usedto determine the angle of the marker, is less than 0.07 m and the position in the x- andy-direction, which is used to determine the angle φ, changes with steps of 0.0019 m, insteadof 0.0017 m.

Let us determine the consistency between measurements. First, the exact position of a markeris determined. Then, the experimental setup is shut down, leaving the marker at exactly thesame position. Finally, the experimental setup is restarted and the new position measurementof the marker is compared with the old position measurement. The position measurementconsists of the x-, y- and φ-position of the marker. In total ten experiments with ten measure-ments each are executed. The data of the experiments are shown in Appendix F. In Table

51

Page 62: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

Figure 5.8: A reacTIVision marker with the unique identification number 0.

5.1, the differences between the maximum value and the minimum value of the measurementsin the x-, y- and φ-direction of each experiment are displayed.

Experiment max(x) − min(x) [m] max(y) − min(y) [m] max(φ) − min(φ) [rad]

1 0.0007 0.0002 0.00922 0.0004 0.0001 0.02833 0.0001 0.0000 0.00684 0.0001 0.0001 0.00285 0.0001 0.0001 0.00876 0.0001 0.0001 0.00497 0.0001 0.0000 0.00068 0.0000 0.0000 0.00009 0.0001 0.0001 0.009810 0.0000 0.0001 0.0029

Table 5.1: The differences between the maximum value and minimum value in x-direction,y-direction and φ-orientation of ten experiments.

Regarding the consistency of the position, the errors are well below 1 mm. The consistencyof the orientation is determined on average 0.0074 radial, which is also low with respect tothe accuracy of the orientation. This results that the position and orientation error due tothe consistency between measurements is in the same order of magnitude as the error due tothe measurement accuracy of the experimental setup.

5.4.2 Time Delay

While communicating with the experimental setup time delay is present. Since this experi-mental setup consists of a camera with visual software and wireless communication towardsthe mobile robots, the time delay can be a significant issue in the experiments. It is interestingto know how much time delay occurs at each individual action, especially when it is desired

52

Page 63: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

to decrease the time delay in future research. The total time delay τtotal is subdivided intothe following contributors:

- camera, τcam. The camera operates at a maximum frame rate, i.e. the frame rate isproportional with the time delay of the camera.

- visual software, τvisual. The visual software determines the position of the markers fromthe visual image received from the camera.

- computation of new velocities, τvelocity. The computer determines new velocities for theindividual robots, with the coordinates of the markers received from the visual software,using the control laws proposed in Chapter 4.

- sending the new velocity over the wireless communication link, τBT . The new commandsfor the velocity are send to E-Puck by means of BlueTooth.

- reacting on new commands, τreact. E-Puck reacts on new received commands.

In Figure 5.9, the decomposition of the total time delay of the experimental setup is shown.The time delay regarding the camera, visual software and velocity calculation is determinedat the computer’s level. The time delay of sending the information to E-Puck by means ofBlueTooth and executing the commands is determined at E-Puck’s level.

Camera Visual software Calculatingvelocities

velocitiesSending Executing

commands

τcam

τBT

τvisual τvelocity

τreact

Figure 5.9: The time delay, which is present in the experimental setup, is subdivided into thefollowing five contributions.

The maximum frame rate of the camera operating at a resolution of 1024 by 768 pixel isset at 30 Hz, i.e. resulting in the time delay of the camera τcam of 0.033333 seconds. Thetotal time delay of the camera τcam, visual software τvisual and determining new velocitiesfor the individual robots τvelocity is in total 0.040120 seconds, which is determined during theexperiments. The time delay to determine new velocities for the individual robots, which isalso determined during the experiments, is approximately zero. Eventually, this results in a

53

Page 64: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 5

time delay of the visual software τvisual of 0.006787 seconds. To determine the time delaywhich occurs when sending new velocities and when E-Puck executes these new velocities isdifficult to determine separately. According to the developers at Cyberbotics, E-Puck canreceive by BlueTooth and execute theoretically 30 actions per second. This means that thetime delay of τBT and τreact is theoretically 0.033333 seconds in total. Eventually, this resultsin a total time delay τtotal of 0.073453 seconds for the experimental setup.

This total time delay is no limitations to the experimental setup, since the robots movewith low accelerations, since the controllers of Sections 4.2 and 4.3 are based on kinematicequations. Due to the low accelerations of the mobile robots, the velocities of the desiredtrajectories are low as well. The most dominant contributors of the total time delay τtotal arethe camera τcam and E-Puck, with receiving τBT and executing τreact actions.

5.4.3 Bandwidth

The bandwidth of the experimental setup is measured during experiments. The bandwidthis the total number of send commands per second to the E-Pucks. A maximum bandwidthof 24.925 Hz is accomplished during the experiments.

5.4.4 Driving Area

The first experiments are executed with markers of 4 by 4 cm and a camera resolution of 640by 480 pixels. The distance from the camera to the markers, i.e. object distance, is given as50 cm. For the final experimental setup, markers are used of 7 by 7 cm and the resolution ofthe camera is 1024 by 768 pixels. This gives an object distance of 140 cm. The focal lengthof the lens is chosen to be 4 mm. This gives a horizontal angle of view of 63.9 degrees and avertical angle of view of 49.2 degrees. The constructed driving area is 175 by 128 cm.

5.4.5 Robustness

There are two different types of robustness which are going to be discussed here. First of all,the camera and visual software should be robust in determining the position of the markers,which are attached to the mobile robots, for each iteration. If the visual software can notdetermine the coordinates of the marker during an iteration, no new velocities can be sendto the individual robots. This increases the time delay, resulting in a larger position andorientation error. This form of robustness is determined during experiments. A resultingconclusion is that if the camera is calibrated well, the visual software recognizes the markerseach time during the experiments.

Secondly, the BlueTooth connection between the PC and the robots should be a robust one.Sometimes the BlueTooth connection is unstable, resulting in a connection failure. It seemsto occur more often when the battery of E-Puck is running empty, or when there are errorspresent in the script which is executed. Regretfully, this does not cover all unstable BlueToothconnections. Sometimes the BlueTooth connection is unstable without any warnings at all.The failure rate is below five percent of the experiments, therefore it is not considered to bea limitation for the experimental setup.

54

Page 65: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Setup

5.5 Discussion

In this chapter, a new experimental setup for multi-robot systems is designed. First, an ap-propriate robot is chosen which can be controlled by means of direct commands. Secondly, alocalization device is chosen which is able to determine the absolute position and orientationof a number of robots. Finally, the robots and localization device are connected by means ofa PC and a wireless BlueTooth connection.

In Section 5.4, it has become clear that the experimental setup has a few points which areopen for improvement. These limitations are mainly due to the camera, lens and robots whichare used in this setup. If a camera is chosen with a higher resolution, the accuracy of theposition and orientation of the robots will be improved. When the ccd-sensor of the camerais larger, the driving area of the robots can be increase. Finally, if a camera is chosen with ahigher frame rate, the total time delay is decreased and the bandwidth of the experimentalsetup is increased. It is important that the frame rate of the combination of camera andvisual software does not exceed the bandwidth of the robots. Otherwise, the robots can notreact fast enough to new information from the PC.

It is also possible to change the lens. By choosing a lens with a smaller focal length, theangle of view increases. A larger angle of view results in a larger field of view and a largerfield of view results in a increased driving area for the mobile robots. A disadvantage of asmaller focal length, is the increase of deformation, especially around the edges of the cameraview. This has to be compensated by calibrating the image.

If the frame rate of the localization device is improved, it is wise to improve the bandwidthof the unicycle robots as well. Early experiments executed by the developers of Cyberboticsshow an increase of the bandwidth of E-Puck of around a factor eight, with respect to itsinitial bandwidth. The increase of bandwidth is obtained by removing a resistance at theE-Pucks hardware. Due to the hardware changes of E-Puck, the communication protocol hasto be completely rewritten. Therefore, it takes some time before it will be available on themarket.

It is advised to check new releases of reacTIVision, see [47]. At the moment a pre-releaseversion of reacTIVision 1.4 is running at the experimental setup. For the new version ofreacTIVision 12 special markers will be introduced, which are four times smaller than thestandard markers. This means the arena can be increased with a factor of four.

At the moment the data acquisition and controller evaluation is programmed in Python.The disadvantage of Python is that two E-Pucks always have to be connected, to ensure astable BlueTooth connection. Regretfully, it is not clear why this limitation occurs. It can beinteresting to experiment with MATLAB, which creates a stable BlueTooth connection withonly one E-Puck. During this thesis, there were some problems regarding reading and writingto E-Puck in the same script with MATLAB, though, while Python does not seem to havethis problem. In Appendix D, a few m-files are described to control E-Puck with MATLAB.

55

Page 66: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

56

Page 67: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

Experimental Results

In this chapter, experimental results are presented, which are obtained with the new devel-oped controllers of Chapter 4 and the new developed experimental setup of Chapter 5. Intotal, four sets of experiments are performed: two sets of experiments using the master-slaveapproach with five mobile robots and two sets of experiments using the virtual structure ap-proach with two mobile robots. Each set of experiments consists of one experiment withoutexternal perturbations and one experiment with external perturbations.

The experiments using the master-slave approach and virtual structure approach are shownin Sections 6.1 and 6.2, respectively.

6.1 Experiments using the Master-Slave Approach

In this section, the results of five mobile robots, which are controlled using the master-slaveapproach, are discussed. In total two sets of experiments are executed. One set of experimentsis performed with one master and four slaves, which is discussed in this section, see Figure6.1a. However, the second set of experiments, which is performed in a chained approach, i.e.robot 1 acts as master for robot 2, robot 2 acts as master for robot 3, robot 3 acts as masterfor robot 4 and robot 4 acts as master for robot 5, is discussed in Appendix H.1, see Figure6.1b.

1

2 3 4 5

1 2 3 4 5

(a) (b)

Figure 6.1: Two different master-slave approaches. (a) One master with four slaves. (b)Chained approach of five robots.

57

Page 68: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

Each set of experiments consists of one experiment without perturbations and one experi-ment with perturbations. With the first experiment the remaining error is examined whenthe robots are converged to their desired trajectory, while in the second experiment the be-haviour of the robots during different disturbances is depicted. For each experiment threefigures are shown; one figure shows the desired trajectories and the actual trajectories of allmobile robots, in the second figure the error coordinates of all mobile robots are shown overthe entire time interval and in the third figure a closer look is given of the error coordinatesof all mobile robots between a certain time interval.

The first set of experiments with one master robot and four slave robots, see Figure 6.1a, isdiscussed here. The desired trajectory of the master is given by

xdM (t) = 0.62 + 0.15 cos(0.2t)ydM (t) = 0.52 + 0.15 sin(0.2t),

(6.1)

and the desired trajectories of the slaves are defined according to (4.8), with (lx1, ly1) =(0.2, 0.2), (lx2, ly2) = (0.4, 0.0), (lx3, ly3) = (0.4, 0.4) and (lx4, ly4) = (0.0, 0.4). The controllersof the master and the slaves are equal to (4.3) and (4.9), respectively. The control parametersof both master and slaves are given by (αi, βi, γi) = (3.0, 5.5, 13.0), i = 1, ..., 5. If the controlparameters are chosen higher, the robots will converge faster. However, if the parameters arechosen too high oscillating behaviour is present in the system, which can result in unstablebehaviour. The oscillating behaviour is a result of actuator saturation and the time delaythat is present in the experimental setup. In Figure 6.2, the desired trajectories and actualtrajectories of the master and the four slaves in the master-slave approach without perturba-tions are shown.

The figure shows that the desired trajectories of the four slaves are based on the actual tra-jectory of the master. In Figure 6.3, the error coordinates of all mobile robots are depicted,which converge to zero.

All mobile robots have converged to their respective desired trajectories after 30 seconds. InFigure 6.4, the error coordinates of all mobile robots are shown for the time interval between70 and 90 seconds.

In this figure it is shown that not all error coordinates converge exactly zero. The errorscoordinates of slave 2 and slave 3 are largest compared to the other mobile robots, which isalso visible in Figure 6.2, where the actual trajectories of slave 2 and slave 3 are not exactlymatched with the desired trajectory. There are a few reasons why the mobile robots do notconverge exactly to zero. First of all, the marker is not positioned precisely in the center ofE-Puck. Secondly, the realized velocity of the mobile robots in [m/s] changes nonlinearly withrespect to the velocity set by the controllers in [encoderstripes/s], see Figure 5.6. However,a linear relation is used to determine the velocity from [encoderstripes/s] to [m/s]. Anotherreason is the static inaccuracy present in the experimental setup, see Section 5.4.1, i.e. the po-sition in the x- and y-direction changes with steps of 0.0019 m and the orientation φ changeswith steps of 0.0524 rad. Fourth, there is a time delay present in the experimental setupand this influences the dynamic accuracy, see Section 5.4.2. Finally, the orientation errorφei varies roughly between -0.05 and 0.05 rad, due to measurement inaccuracies, see Section5.4.1 and Figure 6.4. Note that the orientation error φei influences the error dynamics, see

58

Page 69: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Results

0.2 0.4 0.6 0.8 1 1.20.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

Desired Trajectory MasterDesired Trajectory Slave 1Desired Trajectory Slave 2Desired Trajectory Slave 3Desired Trajectory Slave 4Trajectory MasterTrajectory Slave 1Trajectory Slave 2Trajectory Slave 3Trajectory Slave 4

x[m

]

y [m]

Figure 6.2: The trajectories of the master and the four slaves in the master-slave approach.

(3.9). Assume there is a fixed orientation error φei of 0.05 rad, or -0.05 rad. Due to this fixedorientation error, new equilibria evolve in the position error xei and yei. The position errorsin the x- and y-directions are determined according to (3.9), where xei = 0 and yei = 0, whichleads to

xei =vdi sin(φei)

ωdi + αi sin(φei)

yei =βixei − vdi(cos(φei) − 1)

(1 + γi)ωdi + αi sin(φei),

(6.2)

Therefore it follows that the position errors xei and yei find new equilibria as [−0.02995, 0.00428]and [−0.06214, 0.00800], respectively. Although, the orientation error φei is varying between-0.05 and 0.05 rad, instead of fixed on one value, it still influences the position errors (xei, yei).

The second experiment is executed with the same desired trajectories, controllers and controlparameters as for the first experiment of this first set of experiments. However, two differentperturbations are added to the second slave. One perturbation of 0.3 m/s and 0.5 rad/s isadded to the second slave’s forward velocity vS2 and rotational velocity ωS2, respectively.The perturbation takes place after 35 second for the duration of one second. The secondperturbation takes place after 52 seconds: the second slave is repositioned manually at thispoint in time. In Figure 6.5, the desired trajectories and actual trajectories of the master andthe four slaves in the master-slave approach with perturbations are depicted. In Figure 6.6,the error coordinates of the master and four slaves with external disturbances are depicted.

Again, the controller ensures that all error coordinates converge to zero. In Figure 6.7, acloser look at the error coordinates of the individual robots in the time interval between 30

59

Page 70: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

0 10 20 30 40 50 60 70 80 90

−0.2

0

0.2

0.4

Error MasterError Slave 1Error Slave 2Error Slave 3Error Slave 4

0 10 20 30 40 50 60 70 80 90−0.4

−0.2

0

0.2

0 10 20 30 40 50 60 70 80 90−2

−1

0

1

2

3

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.3: Experimental evolution of the error coordinates of the master and four slaves inthe master-slave approach for the time ∈ [0, 90] s.

and 90 seconds is taken.

It becomes clear that the two perturbations acting on the second slave, do not inflict per-turbations on the other robots, as expected. In other words, the other slaves do not try tomaintain formation with respect to the perturbed slave 2, but only aim to follow their presentdesired trajectories.

In this section, the experimental results of five mobile robots driving in a master-slave for-mation are discussed. In the following section, the experimental results of two mobile robotsdriving in a virtual structure approach will be discussed.

6.2 Experiments using the Virtual Structure Approach

In this section, the results of two E-Pucks controlled using the virtual structure approach aspresented in Section 4.3 are discussed. In total two sets of experiments are executed. Thefirst set of experiments is executed with weak coupling parameters, i.e. the robots’ priorityis to follow their individual trajectories. The second set of experiments is executed withstrong coupling parameters, i.e. the robots’ priority is to remain in formation. Each set ofexperiments consists of one experiment without perturbations and one experiment with per-turbations. With the first experiment the remaining error when both E-Pucks are convergedto their desired trajectory is shown, while in the second experiment the behaviour of the

60

Page 71: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Results

70 72 74 76 78 80 82 84 86 88 90

−0.02

−0.01

0

0.01

Error MasterError Slave 1Error Slave 2Error Slave 3Error Slave 4

70 72 74 76 78 80 82 84 86 88 90−0.03

−0.02

−0.01

0

0.01

70 72 74 76 78 80 82 84 86 88 90−0.1

−0.05

0

0.05

0.1

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.4: Experimental evolution of the error coordinates of the master and four slaves inthe master-slave approach for the time ∈ [70, 90] s.

robots during different perturbations is depicted.

The trajectory of the virtual center and the desired trajectories of the mobile robots arethe same for both sets of experiments. The trajectory of the virtual center is given as follows

xvc(t) = 0.9 + 0.3 cos(2π0.02t)yvc(t) = 0.6 + 0.3 sin(2π0.02t).

(6.3)

The desired trajectories of robots 1 and 2 are defined according to (4.23), with lx1 = −0.1,ly1 = 0.1, lx2 = 0 and ly2 = −0.1. The controllers of robots 1 and 2 are given by (4.28) and(4.29), respectively.

6.2.1 Weak Coupling Parameters

The first set of experiments with weak coupling parameters is discussed here. The control andcoupling parameters are given as αi = 3, βi = 2.75, γi = 13, i = 1, 2, αi,j = 0.3, βi,j = 0.275and γi,j = 1.3, i = 1, 2, j = 1, 2, i 6= j. If the control parameters are chosen higher, therobots will in general converge faster to their desired trajectories. However, if the parametersare chosen too high, oscillating behaviour is present in the system that can result in unstablebehaviour. The oscillating behaviour is a result of actuator saturation and the time delaythat is present in the experimental setup. In Figure 6.8, the desired trajectories and actualtrajectories of robots 1 and 2 are shown for the virtual structure approach with weak coupling

61

Page 72: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

0.4 0.6 0.8 1 1.2 1.4 1.6

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

Desired Trajectory MasterDesired Trajectory Slave 1Desired Trajectory Slave 2Desired Trajectory Slave 3Desired Trajectory Slave 4Trajectory MasterTrajectory Slave 1Trajectory Slave 2Trajectory Slave 3Trajectory Slave 4x

[m]

y [m]

Figure 6.5: The trajectories of the master and the four slaves in the master-slave approachwith perturbations.

parameters.

Robot 1 moves directly to its desired trajectory and is not moving in the direction of thesecond robot, i.e. it is not primarily trying to create the formation. In Figure 6.9, the errorcoordinates of robot 1 and robot 2 are depicted.

Besides the individual error coordinates, the difference between both error coordinates is de-picted as well. When the difference between both error coordinates is zero, both robots arepositioned in the desired formation. First of all, this figure shows that both E-Pucks convergeto their desired trajectory. Secondly, the mobile robots create the desired formation at theexact same moment when both robots are converged to the desired trajectory.

The experiment with the weak coupling parameters is repeated, with two different pertur-bations added to robot 1 in this experiment. One perturbation of 0.3 m/s and 0.5 rad/s isadded to the first mobile robots forward velocity v1 and rotational velocity ω1, respectively.The perturbation takes place after 35 seconds for the duration of one second. The secondperturbation takes place after 58 seconds; robot 1 is repositioned manually at this point oftime. In Figure 6.10, the desired trajectories and actual trajectories of robots 1 and 2 aredepicted for the virtual structure approach with weak coupling parameters.

It is clearly shown that there are two perturbations acting on robot 1. If a closer look at thetrajectory of robot 2 is taken, there is no notice of any effect of the disturbances acting onrobot 1. This behaviour is due to the weak coupling parameters. In Figure 6.11 the error

62

Page 73: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Results

0 10 20 30 40 50 60 70 80 90

−0.2

0

0.2

0.4

Error MasterError Slave 1Error Slave 2Error Slave 3Error Slave 4

0 10 20 30 40 50 60 70 80 90−0.05

0

0.05

0.1

0.15

0 10 20 30 40 50 60 70 80 90

−0.5

0

0.5

1

1.5

2

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.6: Experimental evolution of the error coordinates of the master and four slaves inthe master-slave approach with perturbations for the time ∈ [0, 90] s.

coordinates of robots 1 and 2 are depicted.

Both E-Pucks converge to their desired trajectories in the first 10 seconds. The robots aremoving in formation when both robots are on their desired trajectories. After 35 seconds asmall perturbation is created for one second. The reaction of robot 2 to the perturbation ofrobot 1 is again minimal. In Figure 6.12, the error coordinates of robots 1 and 2 are displayedfor the time ∈ [30, 90] s, which gives a closer look at the individual errors. In this figure it isshown that the reaction of robot 2 to the disturbances acting on robot 1 is limited.

63

Page 74: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

30 40 50 60 70 80 90

−0.3

−0.2

−0.1

0

Error MasterError Slave 1Error Slave 2Error Slave 3Error Slave 4

30 40 50 60 70 80 90−0.03

−0.02

−0.01

0

0.01

30 40 50 60 70 80 90

−0.2

−0.1

0

0.1

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.7: Experimental evolution of the error coordinates of the master and four slaves inthe master-slave approach with perturbations for the time ∈ [30, 90] s.

0.2 0.4 0.6 0.8 1 1.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

Desired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x[m

]

y [m]

Figure 6.8: The trajectories of robots 1 and 2 in the virtual structure approach with weakcoupling parameters.

64

Page 75: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Results

0 10 20 30 40 50 60 70 80 90

−0.5

0

0.5

1

Error Robot 1Error Robot 2Error Robot 1 − Robot 2

0 10 20 30 40 50 60 70 80 90

−0.5

0

0.5

0 10 20 30 40 50 60 70 80 90

−2

−1

0

1

2

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.9: Experimental evolution of the error coordinates of robots 1 and 2 for the virtualstructure approach with weak coupling parameters.

0.2 0.4 0.6 0.8 1 1.20.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

Desired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x[m

]

y [m]

Figure 6.10: The trajectories of robots 1 and 2 in the virtual structure approach with weakcoupling parameters with perturbations.

65

Page 76: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

0 10 20 30 40 50 60 70 80 90−1

−0.5

0

0.5

1

Error Robot 1Error Robot 2Error Robot 1 − Robot 2

0 10 20 30 40 50 60 70 80 90

−0.5

0

0.5

1

0 10 20 30 40 50 60 70 80 90−2

−1

0

1

2

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.11: Experimental evolution of the error coordinates of robots 1 and 2 for the virtualstructure approach with weak coupling parameters with perturbations.

30 40 50 60 70 80 90−0.4

−0.3

−0.2

−0.1

0

Error Robot 1Error Robot 2Error Robot 1 − Robot 2

30 40 50 60 70 80 90

−0.15

−0.1

−0.05

0

0.05

30 40 50 60 70 80 90−0.2

−0.1

0

0.1

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.12: Experimental evolution of the error coordinates of robots 1 and 2 for the virtualstructure approach with weak coupling parameters with perturbations for the time ∈ [30, 90]s.

66

Page 77: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Results

6.2.2 Strong Coupling Parameters

The final set of experiments consists of two experiments with strong coupling parameters,i.e. both robots find it relatively important to remain in formation. The first and secondexperiment are without and with perturbations, respectively. The trajectories of the virtualcenter and desired trajectories of the mobile robots are the same as in the first set of exper-iments using the virtual structure approach. The control and coupling parameters are givenas αi = 0.3, βi = 0.275, γi = 1.3, i = 1, 2, αi,j = 3, βi,j = 2.75 and γi,j = 13, i = 1, 2, j = 1, 2,i 6= j. In Figure 6.13, the desired trajectories and actual trajectories of robots 1 and 2 aredepicted for the virtual structure approach with strong coupling parameters.

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Desired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x[m

]

y [m]

Figure 6.13: The trajectories of robots 1 and 2 in the virtual structure approach with strongcoupling parameters.

Clearly, robot 1 moves backwards away from its desired trajectory, trying to create the for-mation with robot 2 as fast as possible. In Figure 6.14, the error coordinates of both mobilerobots and the formation error are shown.

It is shown that the robots converge to their desired formation after 12 seconds, while theyconverge to their individual trajectories in about 28 seconds. This type of behaviour of bothrobots is due to the strong coupling parameters.

The experiment with the strong coupling parameters is repeated, with two different per-turbations added to robot 1 in this experiment. One perturbation of 0.3 m/s and 0.5 rad/s isadded to the first mobile robots forward velocity v1 and rotational velocity ω1, respectively.The perturbation takes place after 35 seconds for the duration of one second. The secondperturbation takes place after 56 seconds; here, robot 1 is repositioned manually. In Figure6.15, the desired trajectories and actual trajectories of robots 1 and 2 are depicted for thevirtual structure approach with strong coupling parameters.

67

Page 78: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

0 10 20 30 40 50 60 70 80 90

−0.5

0

0.5

1

Error Robot 1Error Robot 2Error Robot 1 − Robot 2

0 10 20 30 40 50 60 70 80 90−0.4

−0.2

0

0.2

0.4

0.6

0.8

0 10 20 30 40 50 60 70 80 90

0

0.5

1

1.5

2

2.5

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.14: Experimental evolution of the error coordinates of robots 1 and 2 for the virtualstructure approach with strong coupling parameters.

It is clearly depicted that there are two perturbations, besides the initial position error, act-ing on robot 1. If a closer look is taken at the trajectory of robot 2, there are disturbancespresent as a result from the error of robot 1. In Figure 6.16, it is clearly shown that therobots converge to formation after 15 seconds.

The robots have converged to their desired trajectories after 25 seconds. Robot 2 is reactingto the error of robot 1, trying to remain in formation. In Figure 6.17, the error coordinates ofrobots 1 and 2 are displayed for the time ∈ [30, 90] s, which gives a closer look at the individ-ual errors. After each perturbation, the robots first converge to their desired formation, andthen the robots converge to their desired trajectory. This behaviour is exactly as expected inSection 4.3.1.

6.3 Discussion

In this chapter, in total eight experiments have been discussed. Four experiments are executedusing the master-slave approach with five mobile robots and four experiments are executedusing the virtual structure approach with two mobile robots. The four experiments using themaster-slave approach consists of two sets of two experiments. The first set of experimentsare performed with one master and four slaves, see Figure 6.1a. The second set of experimentsusing master-slave approach are performed with robot 1 acting as master for robot 2, robot 2acting as master for robot 3, robot 3 acting as master for robot 4 and robot 4 acting as masterfor robot 5, see Figure 6.1b. Both sets of experiments consist of one experiment without per-turbations and one experiment with perturbations. The four experiments using the virtual

68

Page 79: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Experimental Results

0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.20.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Desired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x[m

]

y [m]

Figure 6.15: The trajectories of robots 1 and 2 in the virtual structure approach with strongcoupling parameters with perturbations.

structure approach consist of two sets of two experiments as well. One set of experiments withweak coupling parameters between the mobile robots and one set of experiments with strongcoupling parameters between the mobile robots. Again, each set of experiments consists ofone experiment without perturbations and one experiment with perturbations.

In Sections 4.2.1 and 4.3.1, the design of the master-slave controller and virtual structurecontroller are explained, respectively. In these sections is explained how the mobile robotsbehaviour is expected with the different controllers. During the experiments the behaviourof the E-Puck robots is exactly as expected. First, the experiments using the master-slaveapproach are discussed. In all of the experiments using the master-slave approach, the de-sired trajectories of the slaves are based on the actual trajectory of their master. This meansthe slaves will respond to perturbations acting on the master. However, the master will notrespond to perturbations acting on the slave.Next, the experiments performed using the virtual structure approach are discussed. If thecoupling parameters of the controller are low, the formation is less robust to perturbations.The robots’ priority is to follow their individual desired trajectories. If the virtual structurecontrollers of both E-Pucks are chosen with strong coupling parameters, it will result thatboth E-Pucks are trying to maintain their formation. Also when perturbations are acting onone of the robots, they both try to maintain the formation. In the case of strong couplingparameters, after the mobile robots have converged to formation, they converge to their de-sired trajectory, still maintaining their formation.

Regretfully, the formation errors do not converge exactly to zero. There are five reasonsfor such remaining errors in the position and orientation, as explained in Section 6.1. Thesefive items are open for improvement in future research.

69

Page 80: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 6

0 10 20 30 40 50 60 70 80 90−1

−0.5

0

0.5

1

Error Robot 1Error Robot 2Error Robot 1 − Robot 2

0 10 20 30 40 50 60 70 80 90−0.5

0

0.5

0 10 20 30 40 50 60 70 80 90

0

1

2

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.16: Experimental evolution of the error coordinates of robots 1 and 2 for the virtualstructure approach with strong coupling parameters with perturbations.

30 40 50 60 70 80 90−0.4

−0.3

−0.2

−0.1

0

Error Robot 1Error Robot 2Error Robot 1 − Robot 2

30 40 50 60 70 80 90

−0.05

0

0.05

30 40 50 60 70 80 90

−0.4

−0.2

0

0.2

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure 6.17: Experimental evolution of the error coordinates of robots 1 and 2 for the virtualstructure approach with strong coupling parameters with perturbations for the time ∈ [30, 90]s.

70

Page 81: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 7

Conclusions and Recommendations

In this chapter, conclusions and recommendations are presented based on the results that arestated throughout this thesis. The main results of this thesis are concluded in Section 7.1. InSection 7.2, a number of recommendations are made for further research.

7.1 Conclusions

The conclusions, related to the results presented in this thesis, can be subdivided into threedifferent parts. Each part is directly related with the problem statement, as defined in Section1.4.

First, the conclusions regarding the master-slave controller, which is designed for the purposeof formation control with non-holonomic unicycle mobile robots, are stated. The master-slavecontroller is based on a tracking controller designed in [28, 49] and consists of a feedforwardand feedback part. The main purpose of the design of the master-slave controller in thisthesis is to obtain a better understanding of the tracking controller and how it can be ex-ploited directly to solve master-slave synchronization problems. Secondly, it illustrates themain limitation of master-slave controllers in general, which is the lack of feedback of theslaves towards the master; i.e. if the slaves are perturbed, the formation is no longer main-tained. The stability of the formation error dynamics induced by the master-slave controlleris shown to be guaranteed, which is consistent with the results on tracking control in [28, 49].Simulations show that the error coordinates of the mobile robots using the master-slave con-troller converge to zero in time. Finally, two sets of experiments are performed with in total5 mobile robots. The master-slave controller performs exactly as expected. The master robotconverges to its desired trajectory and does not respond to perturbations acting on the slaverobots. However, the desired trajectory of the slave robots is based on the actual trajectoryof their master. The slave robots respond to perturbations acting on the master; so the slavesare trying to maintain the formation in the face of such perturbations. At the moment thereis one important limitation to the way in which the master-slave formation control strategy isapplied. This limitation involves the possible desired trajectories of the slaves with respect tothe master that is considered. Namely, in this thesis is assumed that the location of the slaveswith respect to the master is constant in a fixed coordinate frame. This assumption ensuredsimpler calculations, although it should be possible to specify time-varying relative locationsof slaves. Moreover, a virtual structure controller is proposed for the formation control of

71

Page 82: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 7

unicycle mobile robots.

The virtual structure controller consists of the same feedforward and feedback part as themaster-slave controller. However, so-called mutual coupling terms are added, which are basedon the ideas in [56], where such coupling terms are used to achieve mutual coupling betweenindustrial robots. The main advantage of the virtual structure controller, with respect to themaster-slave controller, is that the mobile robots are mutually synchronized in formation. Asa consequence, if perturbations are acting on the formation, all mobile robots try to maintainthe desired formation. Weighting parameters are added to the virtual structure controller,which specify the robot’s priority to maintain the formation or to follow their individual tra-jectories. The formation error dynamics of the virtual structure controller is proven to belocally exponentially stable, for two mobile robots with the same control and coupling param-eters (βi, γi, βi,j , γi,j) and moving with the same desired rotational velocity ωdi. Numeroussimulations in different situations with more than two robots, different desired rotationalvelocities ωdi and different control and coupling parameters between the individual robots(βi, γi, βi,j , γi,j), has given confidence that the virtual structure controller is able to operatein these situations as well. Finally, experiments are performed with two mobile robots inan experimental setup, showing the desired behaviour which is expected from the virtualstructure controller. If the coupling parameters of the controller are low, the priority of themobile robots is to follow their individual trajectories, i.e. the formation is less robust toperturbations. If the virtual structure controller of both mobile robots are chosen with strongcoupling parameters, they both try to maintain the formation. When perturbations are actingon one of the mobile robots, the actual trajectory of both mobile robots is influenced, i.e. theformation is robust to perturbations.

As mentioned above, with the master-slave and virtual structure controllers experiments havebeen performed. For this purpose, a new experimental setup to experiment with multi-robotsystems has been designed. Centralized control is used for the experimental setup, since themaster-slave and virtual structure controllers need the position of all individual robots asinput. E-Puck is chosen as unicycle mobile robot and the position of E-Puck is determinedby means of visual software, named reacTIVision, in combination with a FireWire camera.On top of each robot a unique marker is placed. The visual software determines the positionand orientation of each unique marker and returns this information to a local port in thePC. Python, which is the control language used to control E-Puck, opens the local port andretrieves the information of reacTIVision. With the positions and orientations of the mobilerobots new forward velocities vi and rotational velocities ωi are determined. By means ofBlueTooth the new velocities of E-Puck are send to the robots. Eventually, the experimentalsetup satisfies all given requirements and functions very well.

7.2 Recommendations

There are several points open for improvement. First of all, it should be possible to definethe location of the slave to be time-varying with respect to its master in the master-slaveformation control approach. Since the master-slave controller is used as an introduction tothe virtual structure controller, this issue is left open for further research.

72

Page 83: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Conclusions and Recommendations

In Section 4.3.1, a method to design the virtual structure controller for unicycle mobile robotsis proposed. It is interesting to examen whether the proposed method, of adding so-calledmutual coupling terms to known controllers, can be used to design virtual structure con-trollers for different multi-robot systems (e.g. airplanes/spacecrafts flying formation, boatsfern in formation, etc) as well.

More specifically, it is interesting to expand the stability proof of the virtual structure con-troller to n-mobile robots, with different desired rotational velocities ωdi and different controland coupling parameters (βi, γi, βi,j , γi,j) between the individual robots. In Section 4.3.4, isbriefly explained which steps should be taken to take on this challenge.

With the experimental setup, a system of autonomous cooperative mobile robots is designed,which can be controlled by a wireless network. If such a system is expanded to real life situ-ations, i.e. GPS-satellites determine the position of mobile robots, and the mobile robots arelarge enough to drive autonomously at different locations (e.g. highways, forest, etc.), timedelay can cause unstable behaviours. Therefore, it is interesting to examen controllers, whichcan deal with such problems involving time delay.

The dynamic position and orientation errors of the mobile robots, which are discussed inChapter 6, are partly a result of the overall bandwidth of the experimental setup. It is recom-mended to increase the overall bandwidth of the experimental setup, since this will decreasethe time delay which is present in the experimental setup. A different camera and mobilerobot is necessary to accomplish this task.

If the driving area of the experimental setup is increased, experiments can be performedwith more mobile robots. Secondly, more interesting trajectories can be chosen for the ex-periments. There are two methods to increase the driving area for the mobile robots. Onemethod is choosing a larger ccd-sensor of the camera. A larger sensor results in a larger areaof view for the camera. The second method is to change the visual software. In reacTIVision1.4 twelf special markers will be introduced, which are four times smaller than the stan-dard markers. This means that the size of the arena can be increased by a factor of four. Itis also possible to design visual software from scratch, which is however quite time consuming.

Another point which is open for improvement, is the accuracy of measurements. The ac-curacy of the experimental setup can be increased if a camera is chosen with a higher res-olution. Secondly, if larger markers are chosen, the orientation is determined more accurately.

Finally, the BlueTooth connection is unstable if only one E-Puck is connected with Python.Since multi-robot systems are used this is no limitation for the experimental setup at thismoment. Early experiments show that MATLAB creates a stable BlueTooth connection withonly one E-Puck. It is difficult to determine the exact location of the bug. The faculty of In-dustrial Design at Eindhoven University of Technology, which also uses E-Puck in combinationwith Python, also recognized this problem.

73

Page 84: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

74

Page 85: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Bibliography

[1] R. A. Adams. Calculus. Addison Wesley Longman Ltd., Amsterdam, 4th edition, 1999.

[2] Allied Vision Technologies. AVT Guppy Technical Manual. Allied Vision TechnologiesGmbH, Taschenweg 2a D-07646 Stadtroda/ Germany, March 2008.

[3] T. Arai, E. Pagello, and L. E. Parker. Editorial: Advances in multi-robot systems. IEEETransactions on Robotics and Automation, pages 655–661, Oct 2002.

[4] R. W. Beard, J. Lawton, and F. Y. Hadaegh. A feedback architecture for formationcontrol. In Proceedings of the American Control Conference, pages 4087–4091, June2000.

[5] E. Bicho and S. Monteiro. Formation control for multiple mobile robots: a nonlinearattractor dynamics approach. IEEE/RSJ International Conference on Intelligent Robotsand Systems, pages 2016–2022, 2003.

[6] N. Bosch and S. van der Meulen. Experimental tracking and stabilization of a unicyclemobile robot. Technical report, Eindhoven University of Technology, December 2003.

[7] J. Bruce, T. Balch, and M. Veloso. Fast and inexpensive color image segmentation forinteractive robots. In Proceedings of WIRE-2000, May 2000.

[8] P. Bureau. KoreBot User Manual. K-Team S.A.

[9] R. Carelli, C. de la Cruz, and F. Roberti. Centralized formation control of non-holonomicmobile robots. Latin American Applied Research, pages 63–69, June 2006.

[10] D. W. Casbeer, D. B. Kingston, R. W. Beard, T. W. McLain, S.-M. Li, and R. Mehra.Cooperative forest fire surveillance using a team of small unmanned air vehicles. Inter-national Journal of Systems Sciences, pages 351–360, May 2006.

[11] T. Chikamasa. Embedded Coder Robot for LEGO Mindstorms NXT. The MathWorks,Januari 2007.

[12] Computar. Computar CCTV Lenses Brochure 2007/2008, 2007.http://cbceurope.co.uk/CCTV/Downloads/ComputarLensCatalogue07.pdf.

[13] L. Consolini, F. Morbidi, D. Prattichizzo, and M. Tosques. On the control of a leader-follower formation of nonholonomic mobile robots. IEEE Conference on Decision andControl, pages 5992–5997, 2006.

75

Page 86: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 7

[14] J. Cortes, S. Martınez, T. Karatas, and F. Bullo. Coverage control for mobile sensingnetworks. IEEE Transactions on Robotics and Automation, 2002.

[15] B. N. Datta. Numerical Linear Algebra and Applications. Brooks/Cole Publishing Com-pany, 1995.

[16] J. Desai, V. Kumar, and J. Ostrowski. Control of changes in formation for a teamof mobile robots. IEEE International Conference on Robotics and Automation, pages1556–1561, 1999.

[17] J. P. Desai, J. Ostrowski, and V. Kumar. Controlling formations of multiple mobilerobots. Proc. 1998 IEEE International Conference Robotics and Automation, pages2864–2869, May 1998.

[18] J. P. Desai, J. P. Ostrowski, and V. Kumar. Modeling and control of formations ofnonholonomic mobile robots. IEEE Transactions on Robotics and Automation, pages905–908, Dec 2001.

[19] K. Do and J. Pan. Nonlinear formation control of unicycle-type mobile robots. Roboticsand Autonomous Systems, pages 191–204, 2007.

[20] W. Evers and H. Nijmeijer. Practical stabilization of a mobile robot using saturatedcontrol. Conference on Decision and Control, pages 2394–2399, 2006.

[21] T. Geluk and A. Bommer. Control of unicycle mobile robots: Bellybot & trilobot.Technical report, Eindhoven University of Technology, 2003.

[22] J. Hightower and G. Borriello. Location sensing techniques. Technical report, Universityof Washington, Computer Science and Engineering, Augustus 2001.

[23] J. Hightower and G. Borriello. Location systems for ubiquitous computing. IEEE Com-puter, 34(8):57–66, Augustus 2001.

[24] J. Hubert. ePic2 Documentation. Ecole Polytechnique Federale de Lausanne, September2007.

[25] J. Hubert and T. Stirling. Introduction to Matlab and the E-Puck. Ecole PolytechniqueFederale de Lausanne, September 2007.

[26] T. Ikeda, J. Jongusuk, T. Ikeda, and T. Mita. Formation control of multiple nonholo-nomic mobile robots. Electrical Engineering in Japan, pages 81–88, 2006.

[27] A. Jadbabaie, J. Lin, and A. S. Morse. Coordination of groups of mobile autonomousagents using nearest neighbor rules. IEEE Transactions on Automatic Control, pages988–1001, 2003.

[28] J. Jakubiak, E. Lefeber, K. Tchon, and H. Nijmeijer. Two observer-based trackingalgortihms for a unicycle mobile robot. International Journal of Applied Mathematicaland Computer Science, pages 513–522, 2002.

[29] Z.-P. Jiang and H. Nijmeijer. A recursive technique for tracking control of nonholonomicsystems in chained form. IEEE Transactions on Automatic Control, pages 265–279, Feb1999.

76

Page 87: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Bibliography

[30] K-Team S.A. Khepera II User Manual, March 2002.

[31] K-Team S.A. Khepera II Modules, Radio Turret, 2006. http://www.k-team.com/.

[32] K-Team S.A. Khepera III Configuration Page, 2006. http://www.k-team.com/.

[33] K-Team S.A. Khepera III Introduction Page, 2006. http://www.k-team.com/.

[34] M. Kaltenbrunner and R. Bencina. reactivision: A computer-vision framework for table-based tangible interaction. In Proceedings of the first international conference on ”Tan-gible and Embedded Interaction”, 2007.

[35] J. Keij. Obstacle avoidance for wheeled mobile robotic systems. Technical report, Eind-hoven University of Technology, February 2003.

[36] H. K. Khalil. Nonlinear Systems. Prentice Hall, New Jersey, 3 edition, 2002.

[37] I. Kolmanovsky and N. H. McClamroch. Developments in nonholonomic control prob-lems. IEEE Control Systems Magazine, pages 20–36, 1995.

[38] E. Kyrkejbø and E. Panteley. A Virtual Vehicle Approach to Underway Replenishment,pages 171–189. Springer, 2006.

[39] E. Kyrkjebø, K. Y. Pettersen, M. Wondergem, and H. Nijmeijer. Output synchronizationcontrol of ship replenishment operations: Theory and experiments. Control EngineeringPractice, July 2006.

[40] F. Lambercy and P. Bureau. Khepera III User Manual. K-Team S.A.

[41] A. A. J. Lefeber. Tracking control of nonlinear mechanical systems. PhD thesis, Univer-siteit Twente, 2000.

[42] LEGO Mindstorms Team. Mindstorm NXT Gebruikersgids. The LEGO Group, 2006.

[43] S. Legon and Y. Piguet. kMatlab – Matlab commands for Khepera. K-Team S.A., 1999.

[44] N. E. Leonard and E. Fiorelli. Virtual leaders, artifical potentials and coordinated controlof groups. Proc. 40th IEEE Conference Decision and Control, pages 2968–2973, 2001.

[45] F. Mondada and M. Bonani. Tutorial for programming the e-puck robot using thebootloader via bluetooth. Technical report, Ecole Polytechnique Federale de Lausanne(EPFL), Februari 2006.

[46] F. Mondada and M. Bonani. E-puck education robot, 2007. http://www.e-puck.org/.

[47] Music Technology Group. Reactivision 1.3 Software Page, 2008.http://reactable.iua.upf,edu/?software.

[48] S. Noijen. An orientation error observer-controller combination for a unicycle mobilerobot. Technical report, Eindhoven University of Technology, 2003.

[49] S. Noijen, P. Lambrechts, and H. Nijmeijer. An observer-controller combination for aunicycle mobile robot. International Journal of Control, pages 81–87, Januari 2005.

77

Page 88: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter 7

[50] R. Olfati-Saber and R. M. Murray. Consensus problems in networks of agents withswitching topology and time-delays. IEEE Transactions on Automatic Control, pages1520–1533, Sep 2004.

[51] E. Panteley and A. Lorıa. On global uniform asymptotic stability of nonlinear time-varying systems in cascade. Systems and Control Letters, 1997.

[52] E. Pantely, E. Lefeber, A. Lorıa, and H. Nijmeijer. Exponential tracking control ofa mobile car using a cascaded approach. In Proceedings IFAC Workshop on MotionControl, pages 221–226, 1998.

[53] K. Y. Pettersen, J. T. Gravdahl, and H. Nijmeijer, editors. Group Coordination andCooperative Control. Springer, 2006.

[54] F. H. Raab, E. B. Blood, T. O. Steiner, and H. R. Jones. Magnetic position and orien-tation tracking system. IEEE Transactions on Aerospace and Electronic Systems, pages709–718, September 1979.

[55] P. Renaud, E. Cervera, and P. Martinet. Towards a reliable vision-based mobile robot for-mation control. IEEE/RSJ International Conference on Intelligent Robots and Systems,pages 3176–3181, 2004.

[56] A. Rodriguez-Angeles and H. Nijmeijer. Mutual synchronization of robots via estimatedstate feedback: A cooperative approach. IEEE Transactions on Control Systems Tech-nology, 12:542–554, July 2004.

[57] L. Scardovi, R. Sepulchre, and N. Leonard. Stabilization laws for collective motions inthree dimensions. European Control Conference, 2007 (to appear).

[58] D. Stipanovic, G. Inalhan, R. Teo, and C. Tomlin. Decentralized overlapping controlof a formation of unmanned aerial vehicles. IEEE Conference on Decision and Control,pages 2829–2835, 2002.

[59] H. Takahashi, H. Nishi, and K. Ohnishi. Autonomous decentralized control for formationof multiple mobile robots considering ability of robot. IEEE Transactions on IndustrialElectronics, pages 1272–1279, Dec 2004.

[60] K.-H. Tan and M. A. Lewis. Virtual structures for high-precision cooperative mobilerobotic control. IEEE/RSJ International Conference on Intelligent Robots and Systems,pages 132–139, Nov 1996.

[61] H. G. Tanner, G. J. Pappas, and V. Kumar. Leader-to-formation stability. IEEE Trans-actions on Robotics and Automation, pages 443–455, Jun 2004.

[62] S. Toledo. Analysis of the nxt bluetooth-communication protocol, September 2006.http://www.tau.ac.il/ stoledo/lego/btperformance.html.

[63] N. van de Wouw, A. Pavlov, and H. Nijmeijer. Controlled Synchronisation of ContinuousPWA Systems, pages 271–289. Springer, 2006.

[64] H. van den Berg. A wheeled mobile robot: Creating an experimental environment fornon-linear controllers. Technical report, Eindhoven University of Technology, March2002.

78

Page 89: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Bibliography

[65] R. Vidal, O. Shakernia, and S. Sastry. Formation control of nonholonomic mobile robotswith omnidirectional visual servoing and motion segmentation. IEEE International Con-ference on Robotics and Automation, pages 584–589, 2003.

[66] M. Wondergem. Output feedback tracking of a fully actuated ship. Master’s thesis,Eindhoven University of Technology, 2005.

[67] D. Yanakiev and I. Kanellakopoulos. A simplified framework for string stability analysisin AHS. Preprints of the 13th IFAC World Congress, pages 177–182, July 1996.

79

Page 90: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

80

Page 91: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix A

Stability Proof

Throughout this thesis numerous theorems, corollaries, definitions and assumptions are ex-ploited. In most cases the proof is cited in books or articles. If the proof is not cited in theliterature or explained in the main text of this thesis, it will be further explained in this section.

In Section A.1, the proof of Theorem 2.2.4 is presented. In Section A.2, all the individ-ual steps are explained of determining a transformation matrix, which is used in the proof inTheorem 2.2.4 in Appendix A.1. Finally, in Section A.3, is shown that matrix g(t, z1, z2), ofthe cascaded structure in Corollary 2.3.1, satisfies Assumption 2.3.1.

A.1 Proof of Theorem 2.2.4

Here, is shown that the equilibrium point z1 = 0 of the following system (system (2.24) inTheorem 2.2.4) is globally exponentially stable (GES):

z1 =

−a1 a2ωd(t) a3 −a4ωd(t)−ωd(t) 0 0 0a3 −a4ωd(t) −a1 a2ωd(t)0 0 −ωd(t) 0

z1 =: A(t)z1, (A.1)

where z1 ∈ R4×1. Apply a coordinate transformation z1 = Ux with the following well-defined

transformation matrix U :

U =

0 12

√a2 − a4 −1

2 0−1

2√

a2+a4

0 0 12

0 12

√a2 − a4

12 0

12√

a2+a4

0 0 12

. (A.2)

With the change of coordinates the following system dynamics results:

x =

0 0 −b1ωd(t) 00 −b2 0 b3ωd(t)

b1ωd(t) 0 −b4 00 −b3ωd(t) 0 0

x =: B(t)x, (A.3)

where b1 =√a2 + a4, b2 = a1 − a3, b3 =

√a2 − a4 and b4 = a1 + a3. Note that the system

matrix in (A.3) is now skew-symmetric.

81

Page 92: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter A

The following quadratic candidate Lyapunov function

V =1

2x2

1 +1

2x2

2 +1

2x2

3 +1

2x2

4 (A.4)

is differentiated along the solutions of (A.3) to obtain

V = (−a1 + a3)x22 + (−a1 − a3)x

23. (A.5)

Consequently V is negative semi-definite if −a1 + a3 < 0 and −a1 − a3 < 0.

Now, Theorem 2.2.3 is exploited to determine the stability of the origin of the system (A.3).The matrix C in Theorem 2.2.3 is chosen as follows

C =[

0 12

√a1 − a3

12

√a1 + a3 0

]. (A.6)

Consequently,

xTCTCx = 14(a1 − a3)x

22 + 1

2

√a1 − a3

√a1 + a3x2x3 + 1

4(a1 + a3)x23

≥ 0.(A.7)

Moreover, the fact is used that

1

2

√a1 − a3

√a1 + a3x2x3 ≤ 1

4(a1 − a3)x

22 +

1

4(a1 + a3)x

23 (A.8)

in (A.6) to obtain:

−xTCTCx ≥ −12(a1 − a3)x

22 − 1

2(a1 + a3)x23

≥ (−a1 + a3)x22 − (−a1 − a3)x

23.

(A.9)

Now from (A.5) we have that, with P = 12I,

V = xT (BT (t)P + PB(t))x = (−a1 + a3)x22 + (−a1 − a3)x

23. (A.10)

Using the second inequality of (A.9), it is known that

xT (BT (t)P + PB(t))x ≤ −xTCTCx (A.11)

and inequality (2.23) in Theorem 2.2.3 is satisfied for system (A.3), P = 12I and C as in

(A.6). Moreover, the pair (B(ωd(t)), C), with

B(ωd(t)) =

0 0 −√a2 + a4ωd(t) 0

0 −a1 + a3 0√a2 − a4ωd(t)√

a2 + a4ωd(t) 0 −a1 − a3 00 −√

a2 − a4ωd(t) 0 0

,

(A.12)and

C =[

0 12

√a1 − a3

12

√a1 + a3 0

], (A.13)

is uniformly completely observable according to Corollary 2.2.1. Using Theorem 2.2.3 itcan now be shown that x = 0 is a globally exponentially stable equilibrium point of (A.3).Consequently, z1 = 0 is also a globally exponentially stable equilibrium point of (A.1).

82

Page 93: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Stability Proof

A.2 Coordinate Transformation Matrix

In this section is explained how the coordinate transformation matrix U of (A.2) is determined.First the characteristic polynomial of (A.1) is determined as

0 = λ4 + 2a1λ3 + (2a2ω

2d(t) + (a1 − a3)(a1 + a3))λ

2 + ((a2 − a4)(a1 + a3)+(a1 − a3)(a2 + a4))ω

2d(t)λ+ (a2 − a4)(a2 + a4)ω

4d(t).

(A.14)

The second step is to determine a desired form for matrix B(t), after the coordinate change.First, it should be of such a shape that a candidate Lyapunov function, e.g. as in (A.4), canbe easily found. Second, the characteristic polynomial of B(t) should be identical to (A.14).If matrix B(t) has the skew-symmetric shape of (A.3), the characteristic polynomial will bedetermined as

0 = λ4 + (b2 + b4)λ3 + ((b23 + b21)ω

2d(t) + b2b4)λ

2 + (b21b2 + b23b4)ω2d(t)λ+

b21b23ω

4d(t),

(A.15)

with b1 =√a2 + a4, b2 = a1 − a3, b3 =

√a2 − a4 and b4 = a1 + a3.

Now, a coordinate transformation matrix U can be determined, which is in this case

z1 = Ux, (A.16)

where U ∈ R4×4-matrix. The time-derivative of (A.16) is

z1 = Ux+ Ux, (A.17)

but because U is constant, so U = 0. One opportunity to determine U is to write both matrixA(t) of (A.1) and matrix B(t) of (A.3) in Jordan form, with a common block-diagonal matrixJ . Since

A(t) = S1JS−11 and B(t) = S2JS

−12 , (A.18)

the following transformation matrix U can be determined

B(t) = S2S−11 A(t)S1S

−12 = U−1A(t)U. (A.19)

Regretfully S1 and S2 are dependent of ωd(t), which means matrix U is not constant, andresulting that this solution can not be used.

Matrices A(t) and B(t) are decomposed, defined as in (A.1) and (A.3), respectively, intoa constant matrix and a time-varying matrix as follows

z1 = A(t)z1 = A1z1 +A2(t)z1

=

−a1 0 a3 00 0 0 0a3 0 −a1 00 0 0 0

z1 +

0 a2ωd(t) 0 −a4ωd(t)−ωd(t) 0 0 0

0 −a4ωd(t) 0 a2ωd(t)0 0 −ωd(t) 0

z1,

(A.20)

83

Page 94: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter A

and

x = B(t)x = B1x+B2(t)x

=

0 0 0 00 −a1 + a3 0 00 0 −a1 − a3 00 0 0 0

x+

0 0 −√a2 + a4ωd(t) 0

0 0 0√a2 − a4ωd(t)√

a2 + a4ωd(t) 0 0 00 −√

a2 − a4ωd(t) 0 0

x.

(A.21)

In this case the characteristic polynomials of A1 and A2(t) are equal to those of B1 and B2(t),respectively. Hence, (A.19) can be used to determine two state transformation matrices,namely

U1 =

0 1 −1 01 0 0 00 1 1 00 0 0 1

(A.22)

and

U2 =

0 0 −1 1−1√

a2+a4

−1√a2−a4

0 0

0 0 1 11√

a2+a4

−1√a2−a4

0 0

. (A.23)

In this case there are five common zeros between U1 and U2. The inverse of U1 and the inverseof U2 are given by

U−11 =

0 1 0 012 0 1

2 0−1

2 0 12 0

0 0 0 1

(A.24)

and

U−12 =

0 −12

√a2 + a4 0 1

2

√a2 + a4

12 0 1

2 0−1

2 0 12 0

0 12

√a2 − a4 0 1

2

√a2 − a4

, (A.25)

respectively. Since there are eight elements in (A.24) and (A.25) which have a common zero,it is now assumed that the final transformation matrix will also have zeros at those elements.Since

BU−1 = U−1A, (A.26)

84

Page 95: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Stability Proof

the following equation is solved with eight equations and eight unknown parameters

0 0 −√a2 + a4ωd(t) 0

0 −a1 + a3 0√a2 − a4ωd(t)√

a2 + a4ωd(t) 0 −a1 − a3 00 −√

a2 − a4ωd(t) 0 0

0 u1 0 u2

u3 0 u4 0u5 0 u6 00 u7 0 u8

=

0 u1 0 u2

u3 0 u4 0u5 0 u6 00 u7 0 u8

−a1 a2ωd(t) a3 −a4ωd(t)−ωd(t) 0 0 0a3 −a4ωd(t) −a1 a2ωd(t)0 0 −ωd(t) 0

.

(A.27)This leads to the following inverse coordinate transformation matrix

x =

0 −√a2 + a4 0

√a2 + a4

1√a2−a4

0 1√a2−a4

0

−1 0 1 00 1 0 1

z1 = U−1z1, (A.28)

which eventually leads to the following well-defined transformation matrix

U =

0 12

√a2 − a4 −1

2 0−1

2√

a2+a4

0 0 12

0 12

√a2 − a4

12 0

12√

a2+a4

0 0 12

, (A.29)

which is consistent with (A.2).

A.3 Matrix g(t, z1, z2) satisfies Assumption 2.3.1

Matrix g(t, z1, z2) in (4.38),(4.39) is determined for two robots as

g(t, z1, z2)z2 =

[g11 g12g21 g22

]

z2, (A.30)

with

g11 =

[

α1ye1sin(φe1)

φe1+ ye1α1,2 cos(φe2)

sin(φe1)φe1

+ vd1cos(φe1)−1

φe1

−α1xe1sin(φe1)

φe1− xe1α1,2 cos(φe2)

sin(φe1)φe1

+ vd1sin(φe1)

φe1

]

g12 =

[

−ye1α1,2 cos(φe1)sin(φe2)

φe2

xe1α1,2 cos(φe1)sin(φe2)

φe2

]

g21 =

[

−ye2α2,1 cos(φe2)sin(φe1)

φe1

xe2α2,1 cos(φe2)sin(φe1)

φe1

]

g22 =

[

α2ye2sin(φe2)

φe2+ ye2α2,1 cos(φe1)

sin(φe2)φe2

+ vd2cos(φe2)−1

φe2

−α2xe2sin(φe2)

φe2− xe2α2,1 cos(φe1)

sin(φe2)φe2

+ vd2sin(φe2)

φe2

]

,

(A.31)

85

Page 96: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter A

which is exactly the same as (4.39), due to (4.40) and (4.41). The Frobenius norm, seeDefinition 2.1.2, of matrix g(t, z1, z2) is equal to

‖g‖F =(

(α1ye1sin(φe1)

φe1+ ye1α1 cos(φe2)

sin(φe1)φe1

+ vd1cos(φe1)−1

φe1)2

(−α1xe1sin(φe1)

φe1− xe1α1,2 cos(φe2)

sin(φe1)φe1

+ vd1sin(φe1)

φe1)2

(−ye2α2,1 cos(φe2)sin(φe1)

φe1)2 + (xe2α2,1 cos(φe2)

sin(φe1)φe1

)2

(−ye1α1,2 cos(φe1)sin(φe2)

φe2)2 + (xe1α1,2 cos(φe1)

sin(φe2)φe2

)2

(α2ye2sin(φe2)

φe2+ ye2α2,1 cos(φe1)

sin(φe2)φe2

+ vd2cos(φe2)−1

φe2)2

(−α2xe2sin(φe2)

φe2− xe2α2,1 cos(φe1)

sin(φe2)φe2

+ vd2sin(φe2)

φe2)2

)1/2.

(A.32)

Since the Frobenius norm is consistent with the 2-norm, see Definition 2.1.2, the inequality‖g‖2 ≤ ‖g‖1 holds [15], so it holds that

‖g‖F ≤ |α1ye1sin(φe1)

φe1+ ye1α1,2 cos(φe2)

sin(φe1)φe1

+ vd1cos(φe1)−1

φe1|

| − α1xe1sin(φe1)

φe1− xe1α1,2 cos(φe2)

sin(φe1)φe1

+ vd1sin(φe1)

φe1|

| − ye2α2,1 cos(φe2)sin(φe1)

φe1| + |xe2α2,1 cos(φe2)

sin(φe1)φe1

|| − ye1α1 cos(φe1)

sin(φe2)φe2

| + |xe1α1,2 cos(φe1)sin(φe2)

φe2|

|α2ye2sin(φe2)

φe2+ ye2α2,1 cos(φe1)

sin(φe2)φe2

+ vd2cos(φe2)−1

φe2|

| − α2xe2sin(φe2)

φe2− xe2α2,1 cos(φe1)

sin(φe2)φe2

+ vd2sin(φe2)

φe2|.

(A.33)

With the help of the properties of vector norms in Definition 2.1.1 and the indeterminateforms of (4.42) and (4.43) the inequality can be rewritten to

‖g‖F ≤ |α1ye1sin(φe1)

φe1| + |ye1α1,2 cos(φe2)

sin(φe1)φe1

| + |vd1cos(φe1)−1

φe1|

+|α1xe1sin(φe1)

φe1| + |xe1α1,2 cos(φe2)

sin(φe1)φe1

| + |vd1sin(φe1)

φe1|

+|ye2α2,1 cos(φe2)sin(φe1)

φe1| + |xe2α2,1 cos(φe2)

sin(φe1)φe1

|+|ye1α1,2 cos(φe1)

sin(φe2)φe2

| + |xe1α1,2 cos(φe1)sin(φe2)

φe2|

+|α2ye2sin(φe2)

φe2| + |ye2α2,1 cos(φe1)

sin(φe2)φe2

| + |vd2cos(φe2)−1

φe2|

+|α12xe2sin(φe2)

φe2| + |xe2α2,1 cos(φe1)

sin(φe2)φe2

| + |vd2sin(φe2)

φe2|,

≤ |α1|(|xe1| + |ye1|) + |α1,2|(|xe1| + |ye1|) + 2|vd1| + |α2,1|(|xe2| + |ye2|)|α1,2|(|xe1| + |ye1|) + |α2|(|xe2| + |ye2|) + 2|vd2| + |α2,1|(|xe2| + |ye2|),

≤ 2(|α1| + |α1,2|)(|xe1| + |ye1|) + 2(|α2| + |α2,1|)(|xe2| + |ye2|)+2(|vd1| + |vd2|),

≤ 4(|α1| + |α1,2| + |α2| + |α2,1|)(|xe1| + |ye1| + |xe2| + |ye2|)+2(|vd1| + |vd2|).

(A.34)

Since it holds that |x|1 ≤ √n|x|2, for x ∈ R

n, it is known that |xe1| + |ye1| + |xe2| + |ye2| ≤2‖[xe1 ye1 xe2 ye2]

T ‖, the following inequality is derived from (A.34)

‖g(t, z1, z2)‖ ≤ 2(|vd1| + |vd2|) + 8(|α1| + |α1,2| + |α2| + |α2,1|)‖

xe1

ye1

xe2

ye2

‖. (A.35)

86

Page 97: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Stability Proof

This satisfies Assumption 2.3.1 where it is stated that

‖g(t, z1, z2)‖ ≤ k1(‖z2‖) + k2(‖z2‖)‖z1‖, (A.36)

wherek1(‖z2‖) = 2 sup

t∈R

(|vd1(t)| + |vd2(t)|), (A.37)

k2(‖z2‖) = 8(|α1| + |α2| + |α1,2| + |α2,1|) (A.38)

and

‖z1‖ = ‖

xe1

ye1

xe2

ye2

‖. (A.39)

87

Page 98: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

88

Page 99: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix B

Limitations of the Virtual Structure

Controller

In Section 4.3.4, seven different limitations are given of the virtual structure controller. Sixof the seven limitations relate to assumptions made during the stability analysis, see Section4.3.2. In this appendix, simulations will be performed to examen the behaviour of the robots,when these six limitations are not taken into account.

First, a simulation is performed where both mobile robots do not have the same rotationalvelocity. The desired trajectory of the virtual center is given by (4.44). The desired trajectoryof robot 1 and robot 2 with respect to the coordinate frame attached to the virtual center aregiven as follows

lx1(t) = 2ly1(t) = 1.5 + 2 cos(2π0.6t)

(B.1)

and (4.46), respectively. The control and coupling parameters are given by α1 = α2 = 1,β1 = β2 = 1, γ1 = γ2 = 0.5, α1,2 = α2,1 = 1, β1,2 = β2,1 = 1 and γ1,2 = γ2,1 = 0.5 for thecontroller described in (4.28) and (4.29). The initial conditions of robot 1 and robot 2 areset to (x10, y10, φ10) = (4, 15, 0) and (x20, y20, φ20) = (4, 4, 0), respectively. In Figure B.1, thedesired trajectory of the virtual center, the desired trajectory of both robots and the actualtrajectory of both robots are given. In Figure B.2 and Figure B.3, the error coordinates ofrobot 1 and robot 2 are displayed, respectively, which show convergence to zero of all errorcoordinates. In both figures the difference between the error coordinates of both robots aredisplayed as well. This simulation gives confidence that the assumption relating to the identi-cal desired rotational velocities ωdi, between the mobile robots, is not necessary to guaranteestability of the error coordinates of the virtual structure controller.

In the second simulation, the trajectories of the virtual center, robot 1 and robot 2 are de-scribed according to (4.44), (4.45) and (4.46), respectively, i.e. ωd1(t) = ωd2(t). However,the control parameter βi is taken non-identical for both robots, i.e. β1 = 0.01 and β2 = 1.The other control and coupling parameters are given by α1 = α2 = 1, γ1 = γ2 = 0.5,α1,2 = α2,1 = 1, β1,2 = β2,1 = 1 and γ1,2 = γ2,1 = 0.5. The initial conditions of robot 1 androbot 2 are set to (x10, y10, φ10) = (0, 12, 0) and (x20, y20, φ20) = (4, 10, π

2 ), respectively. InFigure B.4, the desired trajectory of the virtual center, the desired trajectory of both robotsand the actual trajectory of both robots are given. In Figure B.5 and Figure B.6, the error

89

Page 100: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter B

0 2 4 6 8 10 12 14 16 18

5

10

15

20

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x [m]

y[m

]

Figure B.1: The trajectory of the robot 1 and robot 2 in the virtual structure approach withdifferent desired angular velocities between the robots.

coordinates of robot 1 and robot 2 are displayed, respectively, which show convergence to zeroof all error coordinates. Since the control parameter β1 is scaled down, both robots convergefaster to formation, than to individual trajectories. In both figures the difference betweenthe error coordinates of both robots are displayed as well. Apparently, the mobile robots stillconverge to their desired trajectories, although the control parameter βi is non-identical. Thisgives confidence that the assumption regarding the control parameter βi is not necessary.

In the third simulation, the trajectories of the virtual center, robot 1 and robot 2 are de-scribed according to (4.44), (4.45) and (4.46), respectively. However, the control parameterγi is taken is non-identical for both robots, i.e. γ1 = 0.005 and γ2 = 0.5. The other con-trol and coupling parameters are given by α1 = α2 = 1, β1 = β2 = 1, α1,2 = α2,1 = 1,β1,2 = β2,1 = 1 and γ1,2 = γ2,1 = 0.5. The initial conditions of robot 1 and robot 2 are setto (x10, y10, φ10) = (0, 12, 0) and (x20, y20, φ20) = (4, 10, π

2 ), respectively. In Figure B.7, thedesired trajectory of the virtual center, the desired trajectory of both robots and the actualtrajectory of both robots are given. In Figure B.8 and Figure B.9, the error coordinates ofrobot 1 and robot 2 are displayed, respectively, which show convergence to zero of all errorcoordinates. Since the control parameter γ1 is scaled down, both robots converge faster toformation, than to individual trajectories. In both figures the difference between the errorcoordinates of both robots are displayed as well. This simulation gives confidence that theassumptions regarding an identical control parameter γi is not necessary.

In the fourth simulation, the trajectories of the virtual center, robot 1 and robot 2 are de-scribed according to (4.44), (4.45) and (4.46), respectively. However, the coupling parameterβi,j is taken non-identical for both robots, i.e. β1,2 = 0.01 and β2,1 = 1. The other con-trol and coupling parameters are given by α1 = α2 = 1, β1 = β2 = 1, γ1 = γ2 = 0.5,

90

Page 101: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Limitations of the Virtual Structure Controller

0 5 10 15 20 25 30−10

−5

0

5

10

Error Coordinates Robot 1Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−10

−5

0

0 5 10 15 20 25 30−1

−0.5

0

0.5

1

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure B.2: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.28) with different desired angular velocities between the robots.

α1,2 = α2,1 = 1 and γ1,2 = γ2,1 = 0.5. The initial conditions values of robot 1 and robot2 are set to (x10, y10, φ10) = (0, 12, 0) and (x20, y20, φ20) = (4, 10, π

2 ), respectively. In FigureB.10, the desired trajectory of the virtual center, the desired trajectory of both robots andthe actual trajectory of both robots are given. In Figure B.11 and Figure B.12, the errorcoordinates of robot 1 and robot 2 are displayed, respectively, which show convergence tozero of all error coordinates. Since the coupling parameter β1,2 is scaled down, you wouldexpect that the robot priority is following its individual trajectory. Though, there is stillsynchronization due to the coupling parameter β2,1. Therefore, the formation is synchronizedfast as well. In both figures the difference between the error coordinates of both robots aredisplayed as well. This simulation gives confidence that the assumption in relation to theidentical coupling parameter βi,j , between the mobile robots, is not necessary to guaranteestability of the error coordinates of the virtual structure controller.

In the fifth simulation, the trajectories of the virtual center, robot 1 and robot 2 are de-scribed according to (4.44), (4.45) and (4.46), respectively. However, the coupling parameterγi,j is taken non-identical for both robots, i.e. γ1,2 = 0.005 and γ2,1 = 0.5. The other con-trol and coupling parameters are given by α1 = α2 = 1, β1 = β2 = 1, γ1 = γ2 = 0.5,α1,2 = α2,1 = 1 and β1,2 = β2,1 = 1. The initial conditions values of robot 1 and robot 2 areset to (x10, y10, φ10) = (0, 12, 0) and (x20, y20, φ20) = (4, 10, π

2 ), respectively. In Figure B.13,the desired trajectory of the virtual center, the desired trajectory of both robots and theactual trajectory of both robots are given. In Figure B.14 and Figure B.15, the error coordi-nates of robot 1 and robot 2 are displayed, respectively, which show convergence to zero of allerror coordinates. Since the coupling parameter γ1,2 is scaled down, you would expect thatthe robot priority is following its individual trajectory. Though, there is still synchronizationdue to robot 2. Therefore, the formation is synchronized fast as well. In both figures the

91

Page 102: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter B

0 5 10 15 20 25 30−5

0

5

10

Error Coordinates Robot 2Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30

−6

−4

−2

0

2

0 5 10 15 20 25 30−1

0

1

2

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure B.3: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.29) with different desired angular velocities between the robots.

difference between the error coordinates of both robot are displayed as well. Since all errorcoordinates converge to zero, there is confidence that the assumption of the identical couplingparameter γi,j is not necessary to guarantee stability of the error coordinates of the mobilerobots.

In the sixth simulation, in total four mobile robots will form a formation. The trajectories ofthe virtual center, robot 1 and robot 2 are described according to (4.44), (4.45) and (4.46),respectively. The trajectories of robot 3 and robot 4 are given by

lx3(t) = 4ly3(t) = 5.5 + 0.5 sin(2π0.25t)

(B.2)

andlx4(t) = −2ly4(t) = −5 + 0.5 sin(2π0.25t),

(B.3)

respectively. The controllers of robot 1, robot 2, robot 3 and robot 4 are defined accordingto (4.50), (4.51), (4.52) and(4.53), respectively. The control parameters (αi,j , βi,j , γi,j) andcoupling parameters (αi,j , βi,j , γi,j) are identical for all robots, i.e. αi,j = 1, βi,j = 1, γi,j = 0.5,αi,j = 1, βi,j = 1 and γi,j = 0.5. The initial conditions of robot 1, robot 2, robot 3 and robot 4are set to (x10, y10, φ10) = (0, 12, 0), (x20, y20, φ20) = (4, 10, π

2 ), (x30, y30, φ30) = (5, 18, 0) and(x40, y40, φ40) = (0, 0, 0), respectively. In Figure B.16, the desired trajectory of the virtualcenter, the desired trajectory of all robots and the actual trajectory of all robots are given.In Figure B.17, B.18, B.19 and B.20 the error coordinates of robot 1, robot 2, robot 3 androbot 4 are displayed, respectively, which show convergence to zero of all error coordinates.This simulation gives confidence that the error coordinates of the virtual structure controller

92

Page 103: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Limitations of the Virtual Structure Controller

0 2 4 6 8 10 12 14 16 18

4

6

8

10

12

14

16

18

20

22

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x [m]

y[m

]

Figure B.4: The trajectory of the robot 1 and robot 2 in the virtual structure approach withdifferent control gain βi between the robots.

are stable during experiments with more than two mobile robots.

93

Page 104: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter B

0 5 10 15 20 25 30

0

5

10

Error Coordinates Robot 1Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 300

0.5

1

1.5

2

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure B.5: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.28) with different control gain βi between the robots.

0 5 10 15 20 25 30

−5

0

5

10

Error Coordinates Robot 2Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 300

0.5

1

1.5

2

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure B.6: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.29) with different control gain βi between the robots.

94

Page 105: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Limitations of the Virtual Structure Controller

0 2 4 6 8 10 12 14 16 18

4

6

8

10

12

14

16

18

20

22

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x [m]

y[m

]

Figure B.7: The trajectory of the robot 1 and robot 2 in the virtual structure approach withdifferent control gain γi between the robots.

0 5 10 15 20 25 30

−2

0

2

4

6

8

10

Error Coordinates Robot 1Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure B.8: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.28) with different control gain γi between the robots.

95

Page 106: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter B

0 5 10 15 20 25 30

−5

0

5

10

Error Coordinates Robot 2Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 300

0.5

1

1.5

2

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure B.9: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.29) with different control gain γi between the robots.

−2 0 2 4 6 8 10 12 14 16 18

4

6

8

10

12

14

16

18

20

22

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x [m]

y[m

]

Figure B.10: The trajectory of the robot 1 and robot 2 in the virtual structure approach withdifferent coupling gain βi,j between the robots.

96

Page 107: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Limitations of the Virtual Structure Controller

0 5 10 15 20 25 30

−2

0

2

4

6

8

10

Error Coordinates Robot 1Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure B.11: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.28) with different coupling gain βi,j between the robots.

0 5 10 15 20 25 30

−5

0

5

10

Error Coordinates Robot 2Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure B.12: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.29) with different coupling gain βi,j between the robots.

97

Page 108: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter B

0 2 4 6 8 10 12 14 16 18

4

6

8

10

12

14

16

18

20

22

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Trajectory Robot 1Trajectory Robot 2

x [m]

y[m

]

Figure B.13: The trajectory of the robot 1 and robot 2 in the virtual structure approach withdifferent coupling gain γi,j between the robots.

0 5 10 15 20 25 30

−2

0

2

4

6

8

10

Error Coordinates Robot 1Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure B.14: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.28) with different coupling gain γi,j between the robots.

98

Page 109: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Limitations of the Virtual Structure Controller

0 5 10 15 20 25 30

−5

0

5

10

Error Coordinates Robot 2Error Coordinates Robot 1 − Error Coordinates Robot 2

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure B.15: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.29) with different coupling gain γi,j between the robots.

0 2 4 6 8 10 12 14 16 18

0

5

10

15

20

25

Trajectory Virtual CenterDesired Trajectory Robot 1Desired Trajectory Robot 2Desired Trajectory Robot 3Desired Trajectory Robot 4Trajectory Robot 1Trajectory Robot 2Trajectory Robot 3Trajectory Robot 4

x [m]

y[m

]

Figure B.16: The trajectory of the robot 1, robot 2, robot 3 and robot 4 in the virtualstructure approach.

99

Page 110: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter B

0 5 10 15 20 25 30−2

−1

0

1

2

3

0 5 10 15 20 25 30−6

−4

−2

0

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe1

[m]

y e1

[m]

φe1

[rad

]

Time [s]

Figure B.17: Simulated evolution of the error coordinates of robot 1 for the virtual structurecontroller of (4.50) with a formation of 4 robots.

0 5 10 15 20 25 30−8

−6

−4

−2

0

2

0 5 10 15 20 25 30

−2

−1

0

1

0 5 10 15 20 25 30

0

0.2

0.4

0.6

0.8

xe2

[m]

y e2

[m]

φe2

[rad

]

Time [s]

Figure B.18: Simulated evolution of the error coordinates of robot 2 for the virtual structurecontroller of (4.51) with a formation of 4 robots.

100

Page 111: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Limitations of the Virtual Structure Controller

0 5 10 15 20 25 30

−4

−2

0

2

0 5 10 15 20 25 30

−6

−4

−2

0

0 5 10 15 20 25 300

0.5

1

1.5

2

xe3

[m]

y e3

[m]

φe3

[rad

]

Time [s]

Figure B.19: Simulated evolution of the error coordinates of robot 3 for the virtual structurecontroller of (4.52) with a formation of 4 robots.

0 5 10 15 20 25 30−2

0

2

4

0 5 10 15 20 25 30

−0.6

−0.4

−0.2

0

0.2

0 5 10 15 20 25 30

0

0.5

1

1.5

2

xe4

[m]

y e4

[m]

φe4

[rad

]

Time [s]

Figure B.20: Simulated evolution of the error coordinates of robot 4 for the virtual structurecontroller of (4.53) with a formation of 4 robots.

101

Page 112: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

102

Page 113: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix C

Unicycle Mobile Robots

Out of four different mobile robots E-Puck has been chosen, which is used in the experimentalsetup of Chapter 5. In this appendix, the mobile robots are described which are taken intoaccount, but are not chosen in the end.

First, in Section C.1, Mindstorm NXT is described. Khepera II is described in Section C.2.Finally, in Section C.3, Khepera III is further explained.

C.1 Mindstorm NXT

The NXT-brick is the brain of Lego Mindstorm [42]. It is a computer controlled CPU whichcontains three outputs to attach stepper motors, and four inputs for different sensors, e.g.sound, ultrasonic, touch and light sensors. The robot can be built with Lego. In Figure C.1,the NXT-brick is shown.

Figure C.1: The NXT-brick of Lego Mindstorm.

The stepper motor of Mindstorm NXT has an accuracy of +/- 1 degree. The accuracy ofthe motor is so high, because it has a build-in transmission [42]. Because the diameter of therobots wheel can vary, and additional gears can be built, the requirement of relative accuracycan be met. Due to play in the stepper motor the accuracy is approximately 1 degree.

LEGO Mindstorm NXT Software is available, but this is very limited in use, i.e. it is only pos-sible to download programmes to the brick, while there is no utility of direct commands withthe Mindstorm NXT Software. Other software packages, which can create programs suitablefor NXT, are LabVIEW Graphical Programming, Next Byte Code, Not eXactly C and MAT-

103

Page 114: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter C

LAB/Simulink. The last one is the most suitable one for control prototyping. According to[11], it is possible to send direct commands to the NXT-brick by means of BlueTooth. A lotof different freeware is necessary to set up a serial connection between the brick and the PC.Even with the help of the developer of this ECRobotNXT-toolbox we have not been able tosend direct commands to the NXT-brick.Secondly it is possible to communicate with the brick by means of fantom drivers. These C++files can communicate with the brick. Due to the specific and blocked BlueTooth protocol,setting up a serial connection is not a trivial task. Eventually we did not manage to set up aBlueTooth serial connection, due to numerous errors in the C++ files.

Communication with the NXT-brick can be established in two ways, namely with a USB-cableand with BlueTooth. There are some drawbacks of communication by means of BlueTooth.Mindstorm can easily loose messages due to the short mailbox queues [62]. The reason for theshort mailbox sizes is the limited size of memory. This problem can be overcome by means ofrequesting an acknowledgement of the slave at each sent message. The slave will reply with asucess/error code. This prevents messages getting lost, but results in slower communication.In [62] two experiments in which the PC sends 1000 messages to the NXT slave are executed.The first time without acknowledgement of the slave and the second time with acknowledge-ment. The result is that in the first experiment between 800 and 820 messages are actuallydelivered. The delivery is done with a running time of 4.6-4.9ms per message. In the secondexperiment all messages are delivered, but performance dropped to 47ms per message, whichis still faster than 20 Hz.The possibility for communication between the robots is limited. Only master-slave connec-tions are possible, in which one master can be connected with three slaves. When multipleslaves are connected with one master it is only possible for the master to communicate withone slave-brick at a time [42].

The size of the robot can vary, because it depends on the robot which is built by the user.Lego has an example of a unicycle mobile robot, named TriBot without its grappers, ultra-soon, touch and light sensors [42]. The size is approximately 100mm by 120mm. The price ofone box Mindstorm NXT, which contains one brick and three stepper motors, is 300,- euro.

C.2 Khepera II

Khepera is originally designed as a research and teaching tool at the Swiss Federal Instituteof Technology Lausanne. Khepera II is a miniature robot which is equipped with differentsensors and actuators [30]. This allows testing and confrontation of numerous algorithms inthe real world. Khepera II is shown in Figure C.2.

The stepper motor of Khepera II sends 24 pulses per revolution of the motor. The motor iscoupled with a gearbox that gives a 25:1 reduction. This results in 600 pulses per revolutionof the wheel, i.e. 12 pulses per millimeter [30].

The robot can be controlled with C/C++, LabVIEW, MATLAB and SysQuake. Again thecontrol with MATLAB is the most interesting, hence it is an appropriate control languagefor prototyping. In [43] a sample session is discussed for the control of one Khepera robot

104

Page 115: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Unicycle Mobile Robots

Figure C.2: The miniature robot Khepera II.

with MATLAB. The technical staff of K-Team is asked whether it is possible to control amultitude of robots. The technical staff informed that it is possible to control a multitude ofrobots, but there will be a delay of 20 ms. This delay will still result in a bandwidth for thecontrol of Khepera larger as 20 Hz.

Khepera II can communicate with a PC by means of a RS232-cable, and a Radio Turretwhich can be used as main SerCom channel [31]. Each individual robot must have one RadioTurret and the PC must be equipped with a Radio Base. In total 32 robots can be controlledwith one Radio Base. The communication distance is limited to 10 meter.Regretfully the Radio Turret of Khepera II can only communicate with its Radio Base [31].Therefore direct communication between the robots is not possible.

The robot has a diameter of 70mm and a height of 30mm. The robots weight is 80g. Due tothe Radio Turret and Radio Base this robot is very expensive. The costs of three Khepera IIrobots, three Khepera II Radio Turrets and one Khepera II radio base is 9395,- euro.

C.3 Khepera III

Khepera III is the new generation of miniature robotics [33]. Slightly bigger as Khepera II,though this robot is also suitable to drive on lab floors, instead of only tabletops. KheperaIII is equipped with improved sensors and actuators, resulting in more accurate movementand better detection of its surroundings. Khepera III is displayed in Figure C.3.

The motor of Khepera III produces 16 pulses per revolution. The motor has a reduction of27:1 and the gearbox adds a reduction of 1.6:1. This results in a total reduction of 43.2:1, i.e.691.2 pulses per revolution of the wheel. This results in 55 pulses per ten millimeter of thetrajectory of the robot [40].

The control language of Khepera III is the same as for Khepera II, see Section C.2.

There are different types of communication configurations. First of all, serial communica-tion can be established with the RS232-cable. Secondly it is possible to add a BlueToothcard to each individual robot, which results in a maximum capacity of 7 robots and a controldistance of 10 meter per BlueTooth dongle. Thirdly, a KoreBotLE with WiFi card can be

105

Page 116: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter C

Figure C.3: The robot Khepera III.

added to each Khepera III robot. The KoreBotLE offers an increase in performance and con-nectivity, see [8]. The configuration with WiFi ensures that there is virtually no maximumcapacity of robots and the control distance is about 20 meter [32]. An other advantage ofWiFi is that the bandwidth is much higher than for BlueTooth: 10Mbit against 115Kbit.For only sending direct commands to set a speed to the motors and/or to read the encoders,BlueTooth is sufficient.Although it will be challenging to set up a direct connection between robots, it is possibleaccording to the manufactures of Khepera III.

Khepera III, in the standard setting, is 130mm in diameter en 70mm in height. Additionalcards, as KoreBotLE, will increase the height. Without additional cards Khepera III weighs690g. The configuration with BlueTooth will cost in total 5859,- euro for three KheperaIII robots. The configuration with WiFi, which includes a KoreBot Light Edition and aKoreWiFiCard per robot, is 6964,- euro for three robots.

106

Page 117: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix D

MATLAB-Toolbox

D.1 connect

Purpose Connects E-Puck with a specified COM-port.Synopsis Robot = connect(’COM-PORT’)

Description connect will make a serial connection with an E-Puckrobot which is preconnected to a BlueTooth Serial Port.Secondly it will open the serial connection so that directcommands can be send to the robot.

See Also speed, reset,position

D.2 speed

Purpose Sets a velocity to both stepper motors of E-Puck.Synopsis speed(robot,M1,M2)

Description speed sets a velocity to both stepper motors of E-Puck,where robot is the parameter which is addressed to theE-Puck that will be controlled, and (M1,M2) are the ve-locities of the left and right motor, respectively. Thevelocity can differ from -1024 to 1024.

See Also connect, reset,position

D.3 reset

Purpose Reset all former commands send to E-Puck.Synopsis reset(robot)

Description reset will reset all former commands, i.e. velocities,lights, send to E-Puck.

See Also connect, speed,position

107

Page 118: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter D

D.4 position

Purpose Returns information of the encoder position of the step-per motors

Synopsis position(robot)

Description position returns the information of both encoders,which are attached to the stepper motors of E-Puck.

See Also connect, speed,reset

108

Page 119: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix E

Python-Toolbox

E.1 MyReactableClient

Purpose Import the position, velocity and acceleration of fiducialmarkers of reacTIVision into Python.

Synopsis MyReactableClient.getRTC()

Description MyReactableClient.getRTC() will import the ID-number, position, orientation, velocity, rotational veloc-ity, acceleration and rotational acceleration of fiducialmarkers of reacTIVision into Python. The standalone ap-plication reacTIVision will send OpenSound Control mes-sages via LocalHost address 3333 (LocalPort 127.0.0.1),which are imported by Python.

See Also recognizer5, studentNote This file is created by D. Vanderelst.

E.2 recognizer5

Purpose Determines the position and orientation of five given ID-marker number.

Synopsis recognizer5.recog()

Description The function MyReactableClient determines the po-sition, velocity and acceleration of fiducial markars,and will return this information as a string.recognizer5.recog() will subtract the positionand orientation of five given marker, and will return theinformation as a real value.

See Also MyReactableClient, studentNote This file is created by D. Vanderelst and modified by the

author of this thesis.

109

Page 120: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter E

E.3 student

Purpose Control of E-Puck by means of direct commands.Synopsis robot = student.epuck(COM-PORT)

robot.connect()

robot.disconnect()

robot.reset()

robot.stop()

robot.speeds()

robot.get pos()

robot.get prox()

Description student.epuck(COM-PORT) will make a variable robot

for a serial connection with an E-Puck robot which ispreconnected to a BlueTooth Serial Port.robot.connect() will connect robot with the precon-nected BlueTooth Serial Port.robot.disconnect() will disconnect robot with theBlueTooth Serial Port.robot.reset() will reset all former commands send torobot.robot.stop() will stop both motors of robot.robot.speeds() sets a velocity to both stepper motorsof robot.robot.get pos() determines the encoder position ofboth stepper motors of robot.robot.get prox() determines the values of all proximi-ties sensors attached to robot.

See Also MyReactableClient, recognizer5Note This file is created by D. Vanderelst and modified by the

author of this thesis.

E.4 MS 1master 4slaves

Purpose Five E-Pucks are controlled using the master-slave ap-proach. There is one master and four slaves.

Synopsis MS 1master 4slaves

Description MS 1master 4slaves will control five E-Pucks using themaster-slave approach. The desired trajectory of themaster is defined as a circle. The desired trajectoriesof the slaves are based on the actual trajectory of themaster. The slave robots will perform the same trajec-tory of the slaves at different locations. This file is usedto perform the experiments, as shown in Section 6.1.

See Also recognizer5, student

110

Page 121: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Python-Toolbox

E.5 MS chained

Purpose Five E-Pucks are controlled using the master-slave ap-proach. Robot 1 acts as master of robot 2, robot 2 actsas master of robot 3, robot 3 acts as master of robot 4and robot 4 acts as master of robot 5. There is chainedapproach.

Synopsis MS chained

Description MS chained will control five E-Pucks using the master-slave approach. The desired trajectory of robot 1 is de-fined as a circle. The desired trajectories of the otherrobots are based on the actual trajectory of their prede-cessor. Robots 2, 3, 4 and 5 will perform the same trajec-tory of their predecessor at different locations. This file isused to perform the experiments, as shown in AppendixH.1.

See Also recognizer5, student

E.6 virtual structure circle

Purpose Two E-Pucks are controlled using the virtual structureapproach.

Synopsis virtual structure

Description virtual structure will control two E-Pucks using thevirtual structure approach. The desired trajectories ofthe robots are circles. The control and coupling param-eters can be varied, to perform experiments with strongand weak coupling parameters, as shown in Section 6.2.

See Also recognizer5, student

111

Page 122: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

112

Page 123: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix F

Consistency measurements

In total ten experiments are executed to determine the consistency of the experimental setup.During these experiments the position of a marker is determined. In between the measure-ments the localization device is restarted, while the marker remains at the same position. InTable F.1 to F.10 the results are displayed.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.127016291022 0.799586117268 4.525902271272 0.126283869147 0.799797832966 4.524517059333 0.12626850605 0.799740970135 4.533039569854 0.12626850605 0.799740970135 4.533039569855 0.12626850605 0.799740970135 4.533039569856 0.126283869147 0.799740970135 4.523816585547 0.12626850605 0.799740970135 4.533039569858 0.12626850605 0.799740970135 4.533039569859 0.12626850605 0.799740970135 4.5330395698510 0.12626850605 0.799740970135 4.53303956985

Table F.1: The data of experiment 1 to determine the consistency of the experimental setup.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.909997463226 0.124146364629 3.784945487982 0.909637212753 0.124146364629 3.758974790573 0.909594535828 0.124146364629 3.757298946384 0.909637212753 0.124146364629 3.758974790575 0.909637212753 0.124146364629 3.758974790576 0.909637212753 0.124146364629 3.758974790577 0.909594535828 0.124146364629 3.757298946388 0.909652590752 0.124125875533 3.760673284539 0.909637212753 0.124089449644 3.756604909910 0.909594535828 0.124146364629 3.75729894638

Table F.2: The data of experiment 2 to determine the consistency of the experimental setup.

113

Page 124: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter F

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.423889577389 0.50942414999 4.928598403932 0.423846900463 0.50942414999 4.925189018253 0.423846900463 0.50942414999 4.925189018254 0.423846900463 0.50942414999 4.925189018255 0.423846900463 0.50942414999 4.925189018256 0.423804223537 0.50942414999 4.921774387367 0.423846900463 0.50942414999 4.925189018258 0.423846900463 0.50942414999 4.925189018259 0.423846900463 0.50942414999 4.9251890182510 0.423889577389 0.50942414999 4.92859840393

Table F.3: The data of experiment 3 to determine the consistency of the experimental setup.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.688112914562 0.39175632596 4.090137004852 0.688112914562 0.39175632596 4.090137004853 0.688134253025 0.391813278198 4.092972755434 0.688134253025 0.391813278198 4.092972755435 0.688134253025 0.391813278198 4.092972755436 0.688134253025 0.391813278198 4.092972755437 0.688091576099 0.391813278198 4.090642452248 0.688155591488 0.391699433327 4.090798854839 0.688112914562 0.39175632596 4.0901370048510 0.688134253025 0.391813278198 4.09297275543

Table F.4: The data of experiment 4 to determine the consistency of the experimental setup.

114

Page 125: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Consistency measurements

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.184507146478 0.251839309931 3.680140733722 0.184592500329 0.251839309931 3.68389534953 0.184549823403 0.251839309931 3.682012081154 0.184507146478 0.251839309931 3.680140733725 0.184549823403 0.251839309931 3.682012081156 0.184549823403 0.251782387495 3.678877353677 0.184464454651 0.251782387495 3.675158739098 0.184507146478 0.251839309931 3.680140733729 0.184549823403 0.251782387495 3.6788773536710 0.184464454651 0.251839309931 3.67828083038

Table F.5: The data of experiment 5 to determine the consistency of the experimental setup.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.692430615425 0.633921086788 3.46289324762 0.692430615425 0.633921086788 3.46289324763 0.692531347275 0.633921086788 3.462444782264 0.692531347275 0.633921086788 3.462444782265 0.692531347275 0.633978009224 3.465138435366 0.692473292351 0.633978009224 3.466497659687 0.692445993423 0.633978009224 3.463343143468 0.6925740242 0.633921086788 3.463343143469 0.692488670349 0.633921086788 3.4615511894210 0.692488670349 0.633921086788 3.46155118942

Table F.6: The data of experiment 6 to determine the consistency of the experimental setup.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.527886688709 0.54581195116 3.207803964612 0.527886688709 0.54581195116 3.207803964613 0.527886688709 0.54581195116 3.207803964614 0.527886688709 0.54581195116 3.207803964615 0.527902007103 0.54581195116 3.207217693336 0.527886688709 0.54581195116 3.207803964617 0.527886688709 0.54581195116 3.207803964618 0.527886688709 0.54581195116 3.207803964619 0.527886688709 0.54581195116 3.2078039646110 0.527844011784 0.54581195116 3.20756816864

Table F.7: The data of experiment 7 to determine the consistency of the experimental setup.

115

Page 126: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter F

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.379257947206 0.415426045656 2.6812453272 0.379257947206 0.415426045656 2.6812453273 0.379257947206 0.415426045656 2.6812453274 0.379257947206 0.415426045656 2.6812453275 0.379257947206 0.415426045656 2.6812453276 0.379257947206 0.415426045656 2.6812453277 0.379257947206 0.415426045656 2.6812453278 0.379257947206 0.415426045656 2.6812453279 0.379257947206 0.415426045656 2.68124532710 0.379257947206 0.415426045656 2.681245327

Table F.8: The data of experiment 8 to determine the consistency of the experimental setup.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.850871026516 0.503876626492 1.936334729192 0.850913763046 0.503897130489 1.929974317553 0.850913763046 0.503954052925 1.93120169644 0.850956439972 0.503954052925 1.927930355075 0.85082834959 0.503897130489 1.93647468096 0.850956439972 0.503876626492 1.929772615437 0.850956439972 0.503897130489 1.926712155348 0.850956439972 0.503876626492 1.929772615439 0.850956439972 0.503933548927 1.9310108423210 0.850913763046 0.503897130489 1.92997431755

Table F.9: The data of experiment 9 to determine the consistency of the experimental setup.

Measurement x-position [m] y-position [m] φ-orientation [rad]

1 0.1580119133 0.481789022684 2.814056158072 0.1580119133 0.48184594512 2.816946268083 0.1580119133 0.48184594512 2.816946268084 0.1580119133 0.481789022684 2.814056158075 0.1580119133 0.48184594512 2.816946268086 0.1580119133 0.48184594512 2.816946268087 0.1580119133 0.481789022684 2.814056158078 0.1580119133 0.48184594512 2.816946268089 0.1580119133 0.481789022684 2.8140561580710 0.1580119133 0.48184594512 2.81694626808

Table F.10: The data of experiment 10 to determine the consistency of the experimentalsetup.

116

Page 127: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix G

How to Use the Experimental

Setup?

In this chapter is explained how to use the newly designed experimental setup. The ex-perimental setup consists of three parts. First of all, there are several mobile robots calledE-Puck. Secondly, there is a camera on top of the driving area of the E-Pucks. With the useof visual software the position and orientation of the mobile robots are measured. Finally, aPC is present to make an interconnection between the camera and the mobile robots. ThePC receives images from the camera, the visual software installed on the PC determines thepositions of the E-Pucks, new velocities are determined for the individual robots, and finallythese new velocities are send to E-Puck by means of BlueTooth.

In Section G.1, communication and control of E-Puck will be explained in more detail. InSection G.2, it is explained how the localization device, which is chosen in Section 5.2, shouldbe used in the experimental setup. Finally, in Section G.3, it is explained in more detail howto use the entire experimental setup.

G.1 How to Use E-Puck?

E-Puck is a small unicycle mobile robot [46]. The robot can be controlled in two differentconfigurations. First of all, it is possible to write a program which will be downloaded toE-Pucks memory. The robot will be completely autonomous in this setup. Secondly, it ispossible to control E-Puck by means of direct commands. It is important that both methodsare understood. Therefore, in Section G.1.1, both communication configurations will befurther explained. Furthermore, the robot is equipped with

- two stepper motors;

- eight infra-red proximity sensors;

- three omni-directional microphones for recording and sound localization;

- one on-board speaker;

- one VGA color camera;

117

Page 128: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter G

- infra-red receiver for remote controllers;

- eight red LEDs, green body light, one strong red LED in front;

- BlueTooth robot-computer or robot-robot Serial Port communication.

In the experimental setup the stepper motors are used as actuator, and communication be-tween the PC and the robots is created by means of BlueTooth. Therefore, in Section G.1.2,the two stepper motors and, in Section G.1.3, the Bluetooth Serial Port communication willbe further explained in detail.

G.1.1 Communication Configuration

There are two different methods to control E-Puck, namely by means of direct commandsand secondly it is possible to download a program to the memory of E-Puck which will beexecuted. In the developed experimental setup direct commands will be used, but first it isnecessary to send a BlueTooth Serial Communication protocol to E-Pucks memory, whichmakes it possible that the robot will react to direct commands. New SerCom protocols arestill being developed by the creators of E-Puck. Those protocols can be found on the Down-load page of [46]. The newest SerCom protocol is at this moment BTcom.hex and is installedon all E-Pucks. If a new protocol is released, it can be installed on the memory of E-Puck bymeans of the TinyBootloader, see [45].

E-Puck is controlled by means of direct commands. Since E-Puck is equipped with an openBlueTooth protocol, a multitude of programmes can be used to control the robots, e.g. theHyperterminal of Windows, MATLAB, see Appendix D, and Python, see Appendix E. InTable G.1 the different command functions are explained for E-Puck.

G.1.2 Stepper Motors

In this section, the stepper motors will be further explained. As shown in Table G.1.1, thespeed of the stepper motor is controlled by D,∗,∗. If E-Puck is controlled by means of theHyperterminal of Windows, it is sufficient to type D with a desired velocity for the left steppermotor and right stepper motor, respectively. Though, to control the velocity of the steppermotors with MATLAB and Python is a bit more difficult. Therefore, in Section D.2 and inSection E.3, two files are written to control the speed of both stepper motors in MATLABand Python, respectively.

G.1.3 BlueTooth Serial Port communication

The direct commands will be send to E-Puck by means of BlueTooth. It is important toconnect the robot in a correct way with the PC, otherwise the connection will be unstable.The following steps must be taken to connect E-Puck with the PC.

- Connect E-Puck to the PC with the IVT BlueSoleil BlueTooth drivers. First open theBlueTooth software from the start menu of Windows. If the robots are not used forsome time, they must be paired with the PC, see Figure G.1. The BlueTooth passkey,which is a four digit number, to pair the robot with the PC is addressed on the front ofE-Puck. When the robots are paired, apply a Service Refresh, see Figure G.2. Then, itbecomes possible to connect E-Puck to an empty COM-port, see Figure G.3.

118

Page 129: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

How to Use the Experimental Setup?

A accelerometerB,∗ body LED 0=off, 1=on, 2=inverseC selector positionD,∗,∗ set motor speed left, rightE get motor speed left, rightF,∗ front LED 0=off, 1=on, 2=inverseI get camera parameterJ,∗,∗,∗,∗ get camera parameter mode, width, height, zoomK calibrate proximity sensorsL,∗,∗ LED number 0=off, 1=on, 2=inverseM floor sensorsN proximityO light sensorsP,∗,∗ set motor position left, rightQ get motor position left, rightR reset E-PuckS stop E-Puck and turn off LEDsT,∗ play sound 1-5, else stop soundU get microphone amplitudeV version of SerCom

Table G.1: The direct command functions for E-Puck

- Import the toolbox student and specify variables to the known COM-ports, see SectionE.3. The following syntax will be used:import student

robot1 = student.epuck(COM-port)

robot2 = student.epuck(COM-port).The toolbox student contains numerous macros to control E-Puck by means of directcommands. By specifying variables to the known COM-ports, names are assigned tothe individual robots in Python;

- Connect both E-Pucks to Python withrobot1.connect()

robot2.connect();

- Reset both E-Pucks with the reset command, explained in Section E.3, to flush thebuffers of E-Puck.robot1.reset()

robot2.reset();

At the moment, there is still one problem regarding the BlueTooth connection. For a sta-ble BlueTooth connection it is necessary to connect at least two E-Pucks. The problem ofthe unstable BlueTooth connection with one robot only occurs with Python, and not withMATLAB. Since the experiments are performed with numerous robots, this will not be alimitation.

119

Page 130: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter G

Figure G.1: E-Puck 1309 is paired with the PC. The BlueTooth passkey is in this case 1309.

G.2 How to Use the Localization Device?

In Section 5.2, a camera with visual software is chosen as an appropriate localization de-vice. For the camera the Guppy F-080b b/w of Allied Vision Technologies [2] with ComputarT0412FICS-3 lens [12], with a fixed focal length of 4 mm is chosen. This camera is connectedto the PC by means of FireWire. Because the PC is not standard equipped with a FireWirecard, a IEEE1394 interface card is mounted in the PC to enable the connection between thecamera and the PC.

ReacTIVision is used as visual software [34, 47]. A large number of markers can be rec-ognized and the position and orientation of these markers are measured. On top of eachrobot a marker is placed with a unique identification number. The markers have the follow-ing shape, see Figure 5.8. In total 180 different markers can be recognized. Each markerconsists of white and black dots. Because the software determines the center of the whitedots and the center of the black dots, it will be able to determine the orientation of the marker.

ReacTIVision can be started from the desktop by double clicking on the reacTIVision symbol,which is similar to Figure 5.8. Then, set the frame rate to 30 frames per second and an outputsize resolution of 1024 by 768 pixels. A video stream appears with the reacTIVision software.With h help text appears for all commands. If v is typed, the position and orientation outputof the markers, which are recognized by reacTIVision, are displayed.

Let us now start Python. Since the robots are controlled by Python it is important thatthe information of reacTIVision is also known in Python. The link between reacTIVision andPython is created by recognizer.py, see Section E.2. First introduce a variable which is rec-ognized as follows: character = recognizer.recog(). Then, specify of which identificationnumber the position and orientation is measured by position = character.number(ID). If

120

Page 131: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

How to Use the Experimental Setup?

Figure G.2: A Service Refresh for E-Puck 1309 is shown.

the fiducial marker with the correct identity number is spotted by reacTIVision, its positionand orientation is returned.

G.3 How to Use the Entire Experimental Setup?

It is now known how to connect E-Puck to the PC by means of BlueTooth, see Section G.1,and how to receive the coordinates of the markers in Python, see Section G.2. In total twofiles have been written, see Appendices E.4 and E.6, which simulate a master-slave approachwith two mobile robots, moving in a circular motion, and a virtual structure approach withtwo robots moving in a circular motion, respectively.

In Figure G.4 a print of the PC screen of the experimental setup is illustrated.

In the left top corner the Python script of two E-Pucks running in master-slave approachis shown. Underneath reacTIVision is visible, with two unique markers. These markers areplaced on top of the E-Puck robots. In this specific case reacTIVision is working with 25frames per second. On the right side of the screen the BlueTooth connection of E-Puck withthe PC is illustrated. It is advised to keep this screen visible, this way an unstable connec-tion will be noticed instantly. Above the BlueTooth Software the Python Command Shell isvisible. In Figure G.5, a closer look is taken at the different commands which are stated inthe Python Command Shell.

First, a BlueTooth connection is established between the robots and the PC, as described inAppendix G.1.3. Then, the toolbox student, see Appendix E.3, is imported. With the useof this toolbox, both E-Pucks are connected with the connect-command. The buffers of therobots are flushed with the reset-command, and the robots are positioned with the use ofthe speeds- and stop-commands. Finally, the script master slave circle.py is executed,

121

Page 132: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter G

Figure G.3: E-Puck 1309 is connected to a COM-port.

with the use of the execfile-command. The main advantage of the execfile-command isthat the names, which are addressed to the individual robots, are globals which can be usedwithin the file. This means that E-Puck and the PC remain connected, instead of connectingand disconnecting for every individual experiment. With the execfile-command a morestable BlueTooth connection is created.

122

Page 133: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

How to Use the Experimental Setup?

reacTIVision Python Command Shell BlueTooth SoftwareMaster-Slave script

Figure G.4: A print of the PC screen of the experimental setup, while running a file of tworobots in master-slave approach, is shown.

123

Page 134: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter G

Figure G.5: The Python commands which are necessary to connect E-Puck with Python andto execute to script of two robots driving in master-slave approach.

124

Page 135: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Appendix H

Illustrating Experimental Results

In this appendix, the figures of the experiments, which were not shown in Chapter 6, are de-picted. In Section H.1, the results of the experiments using the chained master-slave approachare shown.

H.1 Master-Slave Approach

In this section, two master-slave experiments in six figures are shown. The controllers of themaster and the slaves are equal to (4.3) and (4.9), respectively. The controller parameters ofboth master and slaves are given by (αi, βi, γi) = (3.0, 5.5, 13.0), i = 1, ..., 5. Here, robot 1acts as master of robot 2, robot 2 acts as master of robot 3, robot 3 acts as master of robot 4and robot 4 acts as master of robot 5, see Figure 6.1b. The desired trajectories of the robots1, 2, 3, 4 and 5 are given by

xd1 = 0.62 + 0.15 cos(0.2t)yd1 = 0.52 + 0.15 sin(0.2t),

(H.1)

xd2 = x1 + 0.2yd2 = y1 + 0.2,

(H.2)

xd3 = x2 + 0.2yd3 = y2 − 0.2,

(H.3)

xd4 = x3 + 0.0yd4 = y3 + 0.4,

(H.4)

andxd5 = x4 − 0.4yd5 = y4 + 0.0,

(H.5)

respectively.

In Figure H.1, the desired trajectories and actual trajectories of the five mobile robots aredepicted.

It is shown clearly that the desired trajectories of robots 2, 3, 4 and 5 are based on the actualtrajectories of its predecessors. In Figure H.2, the error coordinates of all five robots are

125

Page 136: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter H

0.6 0.8 1 1.2 1.4 1.6

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

Desired Trajectory Robot 1Desired Trajectory Robot 2Desired Trajectory Robot 3Desired Trajectory Robot 4Desired Trajectory Robot 5Trajectory Robot 1Trajectory Robot 2Trajectory Robot 3Trajectory Robot 4Trajectory Robot 5

x[m

]

y [m]

Figure H.1: The trajectories of the five robots in the master-slave approach.

depicted.

Again, all error coordinates converge to zero, ensuring that the mobile robots are followingtheir desired trajectories. A closer look is taken at how accurately the desired trajectory istracked in Figure H.3.

Again, the error coordinates are not exactly zero in steady-state, due to the same reasons asexplained in the first set of experiments, see Section 6.1.

The final experiment of the master-slave approach is executed with the same desired tra-jectories, controllers and control parameters as the first experiment of the second set ofexperiments. Two different perturbations are added. One perturbation of 0.3 m/s and 0.5rad/s is added to the third mobile robots forward velocity v3 and rotational velocity ω3, re-spectively. This perturbation takes place after 35 second for the duration of one second. Thesecond perturbation takes place after 55 seconds; the third robot is repositioned manually. InFigure H.4, the desired trajectories and actual trajectories of the five E-Pucks are depicted.

In this figure it becomes clear that the perturbations acting on the third mobile robot, influ-ences the desired trajectory of robot 4. This results in a change of the actual trajectory ofrobot 4, which in turn influences the desired trajectory of robot 5. This behaviour is exactlyas expected. In Figure H.5, the error coordinates of all robots are depicted.

The second perturbation, of repositioning robot 3, results also in a large error for the fourthrobot. This error occurs because robot 3 is repositioned relatively fast. The error resulting to

126

Page 137: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Illustrating Experimental Results

0 10 20 30 40 50 60 70 80 90−0.2

0

0.2

0.4

0.6

0 10 20 30 40 50 60 70 80 90

−0.1

0

0.1

0.2

0 10 20 30 40 50 60 70 80 90−2

−1

0

1

2

3

Error Robot 1Error Robot 2Error Robot 3Error Robot 4Error Robot 5x

e[m

]y e

[m]

φe

[rad

]

Time [s]

Figure H.2: Experimental evolution of the error coordinates of the five robots in the master-slave approach for the time ∈ [0, 90] s.

robot 5 is hardly visible. In Figure H.6, a closer look is taken at the error coordinates in thetime interval between 30 and 90 seconds for the five mobile robots. It becomes clear that thefirst perturbation, located after 35 seconds, does not initiate a position or orientation errorof robot 4 and robot 5.

127

Page 138: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Chapter H

70 72 74 76 78 80 82 84 86 88 90−0.015

−0.01

−0.005

0

0.005

0.01

Error Robot 1Error Robot 2Error Robot 3Error Robot 4Error Robot 5

70 72 74 76 78 80 82 84 86 88 90−0.02

−0.01

0

0.01

0.02

70 72 74 76 78 80 82 84 86 88 90−0.1

−0.05

0

0.05

0.1

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure H.3: Experimental evolution of the error coordinates of the five robots in the master-slave approach for the time ∈ [70, 90] s.

0.6 0.8 1 1.2 1.4 1.6

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

Desired Trajectory Robot 1Desired Trajectory Robot 2Desired Trajectory Robot 3Desired Trajectory Robot 4Desired Trajectory Robot 5Trajectory Robot 1Trajectory Robot 2Trajectory Robot 3Trajectory Robot 4Trajectory Robot 5

x[m

]

y [m]

Figure H.4: The trajectories of the five robots in the master-slave approach with perturba-tions.

128

Page 139: Formation Control of Unicycle Mobile Robots - TU/e · Formation Control of Unicycle Mobile Robots Theory and Experiments T.H.A. van den Broek DCT 2008.131 Master’s Thesis Master’s

Illustrating Experimental Results

0 10 20 30 40 50 60 70 80 90

−0.2

0

0.2

0.4

Error Robot 1Error Robot 2Error Robot 3Error Robot 4Error Robot 5

0 10 20 30 40 50 60 70 80 90

−0.4

−0.2

0

0.2

0 10 20 30 40 50 60 70 80 90

−1

0

1

2

xe

[m]

y e[m

e[r

ad]

Time [s]

Figure H.5: Experimental evolution of the error coordinates of the five robots in the master-slave approach with perturbations for the time ∈ [0, 90] s.

30 40 50 60 70 80 90

−0.2

0

0.2

30 40 50 60 70 80 90

−0.1

0

0.1

30 40 50 60 70 80 90−0.2

−0.1

0

0.1

0.2

Error Robot 1Error Robot 2Error Robot 3Error Robot 4Error Robot 5x

e[m

]y e

[m]

φe

[rad

]

Time [s]

Figure H.6: Experimental evolution of the error coordinates of the five robots in the master-slave approach with perturbations for the time ∈ [30, 90] s.

129