Anda di halaman 1dari 35

Faculty of Electrical Engineering

University of Belgrade

May, 2012

Table of Contents
1.

Introduction.......................................................................................................... 2

2.

Brief Review of Proposed Algorithms....................................................................3

3.

4.

2.1.

Kinematic Model of Two-Wheel Differentially Driven Mobile Robot.................3

2.2.

Leader-follower Approach for Generating Virtual Followers Trajectories.......3

2.3.

Control System Structure............................................................................... 4

2.3.1.

Trajectory Tracking Controllers.................................................................5

2.3.2.

Obstacle Avoiding Controller...................................................................9

2.3.3.

Vehicle Avoiding Controller....................................................................10

2.3.4.

Combined Controller..............................................................................12

Simulation Results.............................................................................................. 13
3.1.

Nonlinear PI Controller.................................................................................13

3.2.

Fuzzy Logic Based Controller.......................................................................17

3.3.

Pure Pursuit Controller................................................................................. 18

3.4.

Deviated Pursuit Controller..........................................................................21

3.5.

Proportional Navigation................................................................................ 25

3.6.

Comparative Analysis of Proposed Controllers.............................................32

Conclusion and Future Work...............................................................................32

1. Introduction
1

Formation control is an important field in multirobot coordinated control, which has recently
triggered the great interest of research community. Group of mobile robots show obvious advantages over
single autonomous vehicle, including greater flexibility, adaptibility and robustness. Team of mobile
robots can efficiently solve tasks such as space exploration, transportation of large objects, security tasks,
group hunt, etc.
In mobile robot formation control, common task is coordination of individual venicles. This means
that robot has to maintain its relative position in the formation pattern. Solution of formation navigation in
space with static and known obstacles is presented in this report. Basically, there are three approaches in
formation control: behavior-based methods (where group behavior consists of number of decentralized
actions, synthetized in order to accomplish global goal), virtual structure approaches (where whole
formation is treated as a single rigid body, and individual robots are particles in this structure) and leaderfollower strategy (where one of the robots is designated as a leader, while the others are treated as
followers, which are forced to track the leader). Here, leader-follower approach is adopted.
It is assumed that environment is static and known, i.e. obstacles do not change their positions in time
and their positions are assumed to be known. It is also assumed that high level planner is available, which
generates collision free trajectory for leader robot, while leader is forced to track this trajectory and avoid
obstacles on its way. Desired trajectories of the followers are generated on the basis of realized leaders
trajectory. Exact formation can be maintained only during straight-line motion. During turning, followers
desired trajectories become nonsmooth, if the formation is considered as a rigid structure. Hence,
concession must be made and idea is to consider formation motion in curvelinear instead of Cartesian
coordinates. When the desired trajectories of the followers are obtained, i.e. virtual followers, the next
step is to design a control structure which will provide two functionalities: trajectory tracking (i.e.
formation keeping) and object avoidance (i.e. prevention of collision between robot and objects of the
environment - obstacles and other vehicles). Hence, control structure consists of four controllers, each
with different functionality: trajectory tracking (TTC), obstacle avoiding (OAC), vehicle avoiding (VAC)
and combined controller (CC), whose purpose is to combine control actions of the previously mentioned
three controllers, in order to make concession between individual control actions. Two groups of TTCs
will be proposed: fuzzy controller and controllers based on missile homing and guidance laws (nonlinear
proportional-integral (PI), pure pursuit, deviated pursuit and proportional navigation controllers). OAC
and VAC are fuzzy logic based controllers (FLCs). There are some situations when formation cannot be
maintained, for example during passing through narrow corridors. Proposed control structure is not
enough, so global supervisor for formation switching becomes neccessary. Formation must change its
pattern only if it is neccessary, i.e. when the formation cannot be maintained. Kinematic model of
differentially driven two-wheeled mobile robot is assumed for simulation purposes. Simulation results
show the performance of the proposed control algorithm.
The report is organized as follows: brief review of proposed control algorithms is given in Section 2,
including kinematic model of the mobile robot, leader-follower approach for virtual robots trajectories
generation, and design of control structure. Simulation results for two different scenarios (with and
without obstacles) are given in Section 3, while the conclusion is given in Section 4.

2. Brief Review of Proposed Algorithms


In this section, theoretical basis for solution of considered problem is given.
2

Note: This section should include some descriptions that are already given in the first part of the
report written on Serbian (kinematic model of the mobile robot and all TTCs). These missing parts will
not be repeated here. They will be translated on English for purposes of some future paper. Also, there are
some figures with labels and annotations on Serbian, as well as tables. All of them will be translated on
English in the future.

2.1.
Kinematic
Mobile Robot

Model

of

Two-Wheel

Differentially

Driven

Generating

Virtual

Already given in the first part of the report.

2.2.
Leader-follower
Approach
Followers Trajectories

for

As previously mentioned, there are several approaches to formation control. Here, leader-follower
methodology is adopted, i.e. one of the robots is designated as leader, while the others are forced to track
it, keep the formation shape, and avoid obstacles and other robots. If the formation shape cannot be
maintained (for example if the formation is very large and corridor narrow), it is very important that the
formation is able to reconfigure dynamically (for example to reconfigure into convoy).
It is also assumed that environment is structured and static, that is, all obstacles are static and their
position is known. Algorithm for generation of virtual leaders trajectory has also been given in the first
part of the report. It is mentioned that it is not guaranteed that obtained trajectory is collision free due to
approximation errors using neural networks. Tracking is never perfect, so additional correctional
controller must be introduced, in order to prevent collision with obstacles.
Ideal differentially driven two-wheel robot can turn on the spot, so curvature of the tracking trajectory
is not limited. Unfortunately, it is not the same situation with a formation, i.e. whole formation cannot
turn on the spot. Formation shape in Cartesian coordinates can be maintained only during straight-line
motion. In order to turn the formation, concession must be made. So, the idea is to maintain the formation
in curvilinear, rather than in the rectilinear coordinates. Reference point of the formation can be arbitrarily
chosen, but in this case it will be positioned at the leaders centre of mass (COM), as depicted on
Figure 1. Let us assume that the desired trajectory of the leader is denoted by

(x Ld , y Ld , Ld ) , that is,

the trajectory of the virtual leader, while the trajectory realized by real leader is denoted by

( x L , y L , L ) . Desired trajectories for the followers will be obtained regarding the trajectory of the real
leader and denoted by

( x F , y F , F ) , i=1, , N
i

, where N denotes the number of followers. When the

reference coordinate frame is chosen, desired position of every follower can be described by two
parameters relative to reference point:
trajectory and
Parameter

qi

pi

distance from leader to the ith follower along leaders

normal distance from ith follower to leaders path, as depicted on Figure 1.

pi must be nonnegative, i.e. all followers must be behind or in line with leader. Parameter
3

qi

can be arbitrarily chosen. This means that the position of every follower in the formation is

described by two parameters,

pi and qi . If the current time instant is denoted by t, and time instant

when the leader was at a distance

pi away from its current position along its path by t , current desired
f

position and orientation of the ith follower can be obtained using following formula:
x Fi t x L t f qi sin L t f

y Fi t y L t f qi cos L

Fi

t tf

t
f

(1)
In equation (1), dependence on parameter
parameters

pi and qi

pi

is hidden under tf, i.e. tf depends on

pi . Formation

can be constant (static formation) or time-varying (dynamic formation). It is

very important that formation is dynamic, which means that it is able to reconfigure its shape. Here,
simple algorithm is adopted. When ith virtual robot collides with an obstacle, absolute value of its
parameter

qi

must decrease. This means that ith follower and leader are in convoy. If two or more

followers collide with obstacles, absolute value of their parameters q must decrease, as well as value of
their parameters p for all followers except one. This means that formation changes its shape to convoy.
During formation switching nonholonomic constraint may not be satisfied, i.e. it is not ensured that
trajectories of virtual followers satisfy nonholonomic constraint. Hence, larger value of tracking error is
expected at the beginning of formation switching.

Figure 1. Simple formation while turning.

2.3.

Control System Structure

As previously mentioned, control structure consists of four separate controllers, each with different
functionality: TTC, which provides formation keeping, i.e. tracking of desired trajectory, OAC, which
provides obstacle avoidance, VAC, which provides vehicle avoidance, i.e. prevents collision with other
vehicles, and CC, which has to combine individual control actions into single control which is passed to
the actuators of the robot. Basically, CC forms a weighted sum of its inputs, whose weights vary
4

according to situation in environment. Five different TTCs will be presented: fuzzy logic based controller
(FLC), nonlinear PI, pure pursuit (PP), deviated pursuit (DP) and proportional navigation (PN) controller.
FLC is intelligent control strategy which tries to mimic action of the experienced driver. PI controllers are
widely used in industrial practice. Although simple they provide satisfactory performance in control of
wide class of processes. PP, DP and PN controllers are taken from missile guidance theory. From the other
hand, VAC and OAC are FLCs. Control structure of leader and followers is very similar, i.e. leader does
not have VAC, i.e. it does not care where followers are. Followers must take care where the leader is, i.e.
they recognize leader as an obstacle. Control system structure of the followers is given on the Figure 2.

Slika 2. Control System Structure.


2.3.1.Trajectory Tracking Controllers
Already given in the first part of the report (all controllers based on missile guidance techniques).
Note: Fuzzy controller has been slightly changed and improved. Only this controller will be described
here, as well as nonlinear PI.

NONLINEAR PI CONTROLLER

Tracking controller should generate control action which tries to direct robot to the desired trajectory.
This action is mainly achieved by proportional term. Also, controller should have integral term in order to
decrease an error in stationary state. Let

( x , y , ) denotes robot position and orientation, while desired

position in the same time instant is denoted by

( x , y , ) , and desired velocity by

v.

Velocity

v z and can be written as:

generated by controller is denoted by

v z v* v z ,

K p ez d
v z

ez

ez

1
e zi , e z d
Ti

0 , ez d

d d 0 min d 0 , v* / k

(2)

where

vz

is velocity correction, k is positive gain and d is the dead-zone size, dependant on

Tracking error and integral of tracking error are denoted by

e z =[ x x

y y ]

and

v .

e zi = e z dt

, respectively. Proportional gain is denoted by Kp, while Ti stands for integral constant.
As can be seen from (2), velocity correction is chosen as nonlinear function of errors sum, i.e. deadzone around desired point is introduced. Introducing nonlinearity is necessary, because it does not allow
oscillations of robot position when it comes close enough to the desired point. Dead-zone changes its size
depending on desired velocity, i.e. it decreases when desired velocity increases. Parameter

d0

determines the size of the dead zone when desired trajectory approaches destination point, i.e. maximal
value of tracking error when real vehicle approaches the destination point.
It is necessary to avoid integrator windup. Simple anti-windup algorithm is adopted, i.e. integral term
freezes on the previous value, when one of the motors saturates.
It can be seen from inverse kinematic equations that angular velocities of the motors
actually weighted sums of the linear and angular velocities of the robot

( , Dt )

generated by controller

( v c , )

( L , D )

are

. So, angular velocities

are given by:

Lt av v z a z
Dt av v z a z
(3)
where

v z

and

denote magnitude and angle of the velocity vector

approximates derivative of the

z , while weights

av

and

vz

given by (2),

are control parameters,

which have to be adjusted. These parameters weight straight-line and turning capabilities of the controller.
Derivative approximation

z is given by:

z
T , ez d

*
, e d
z
Ts

where

T s denotes the sampling time. It can be seen from (4) that controller tries to align orientations

of the real and virtual robot when they are close enough, i.e. if their distance is less or equal d.

(4)

FUZZY LOGIC BASED CONTROLLER

FLCs represent intelligent control systems, which try to mimic actions of the experienced operator. In
FLCs, knowledge about the process behavior is given in linguistic form, not in form of mathematical
equations. Hence, control design becomes more intuitive. FLCs are widely used in control of complex
systems, which can be hardly described mathematically. Main drawback of this method is its complexity,
i.e. large number of parameters which has to be adjusted.
In order to obtain fuzzy trajectory tracking controller, similar approach as in pure pursuit will be used.
It should try to direct the mobile robot toward current desired point, i.e. toward current position of the
virtual robot. Designed FLC has two inputs (real to virtual robot distance d and viewing angle , i.e. angle
at which real robot sees the virtual one) and two outputs (normalized linear and angular velocities of the
mobile robot,

vc

and

c ). Note that the outputs of the fuzzy system are linear and angular

velocities of the whole robot, not the angular velocities of the wheels. Angular velocities of the left and
right motors,

and

can be obtained considering inverse kinematic model of the mobile

robot. It can be easily shown that angular velocities of the motors are weighted sums of linear and angular
velocities of the robot. Hence, output of the whole controller can be obtained as a weighted sum of fuzzy
inference mechanism outputs. Let

(x , y , )

(x , y , )

denotes current position of the virtual vehicle, while

denotes current position of the real robot. Inputs of the FLC can be obtained using the

following formula:
d x , y , x* , y *

xx y y
* 2

* 2

, arctg

y* y
x* x

(5)

while the outputs are:


Lt K v vc Kc
Dt K v vc Kc

(6)
where

Kv

and

denote gains which have to be determined experimentally. These two

parameters weight straight-line and turning capabilities, so choice of their larger values is advisable. If the
value of

Kv

is too small, tracking will be poor. If the value of

is too small, tracking error

during turning will be large. Input and output membership functions are experimentally adjusted and
given on Figures 3 and 4, respectively.

Funkcije pripadnosti ulazne promenljive

Funkcije pripadnosti ulazne promenljive d

Daleko

0.8

stepen pripadnosti

stepen pripadnosti

Blizu Srednje

0.6

0.2

0.2

0.1

0.2

0.3

-3
-2
-1
0.8
0.9
1
Figure 0.7
3. TTC
input
membership
functions.

0.4
0.5
0.6
rastojanje[m]

Funkcije pripadnosti izlazne promenljive linearna brzina

0.8

0.6

0.4

Veliko

0.2

Nazad
Desno

0
ugao[rad]

Funkcije pripadnosti izlazne promenljive ugaona brzina

stepen pripadnosti

stepen pripadnosti

Srednje

Nula

Napred
Desno

0.6

0.4

Napred
Napred
Levo

0.8

0.4

Nazad
Levo

Mnogo
Negativna

Pola
Negativna

Nula

Pola
Pozitivna

Mnogo
Pozitivna

0.8

0.6

0.4

0.2

0.1

0.2

0.3

0.4

0.5
brzina

0.6
0.7
0.8
0.9
1
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
Figure
4.
TTC
output
membership
functions.
ugaona brzina

0.4

0.6

0.8

Fuzzy rules are derived experimentally, and rule base is given by Table 1. Note that every cell
contains abbreviations, which correspond to the two output variables linear and angular velocity,
respectively.

Table 1. Fuzzy rule base for trajectory tracking controller.

CONTROLLER BASED ON PROPORTIONAL NAVIGATION LAW

Proportional navigation control law (PN) is widely used in missile guidance. It has been shown that
for an aerodynamically controlled missiles, proportional navigation is an optimal control strategy in sense
of minimizing the terminal miss distance. A major advantage of PN is its relative simplicity and ease of
8

implementation, because the whole control scheme is based entirely on the instantenous direction of the
target relative to the pursuer, and its derivative.
The basic idea consists in applying to the pursuer a control force proportional to the rate of rotation of
the line of sight (LOS) and acting along a direction specified by the used variant of the PN law. Basically,
there are two variants of the PN: true (TPN) and pure (PPN), as depicted on Figure 5. TPN is LOS
referenced variant of the PN, while the PPN is referenced relative to the pursuer velocity vector. TPN is
more attractive from the point of mathematical analysis, but PPN is more attractive from the practical
point of view. This conlusion is drawn from the fact that implementation of the PPN is easier than TPN,
more efficient in terms of control effort and more robust on initial engagement geometry to ensure
acceptible trajectory behavior. In PPN law, acceleration and velocity vectors, AM and VM are always
orthogonal, that is, the applied control force cannot change the magnitude of the velocity. In TPN,
acceleration vector AM and LOS direction are normal. Hence, applied law requires forward
acceleration/deceleration, increasing the control effort in missile guidance.

Figure 5. Two variants of the PN.


Acceleration vector in TPN case is given by:
A M NVc &
(7)
where vectors are bolded, N represents navigation constant,

V c =r

reference line, while


is closing velocity (
vehicle). Acceleration vector in PPN is given by:

is angle between LOS and horizontal

is distance vector between real and virtual

A M NVM & & N &


(8)
where N denotes navigation constant. Navigation constant has a dominant effect on tracking performance,
and it is usually chosen from interval [3,5]. Low values of this constant decreases the tracking
performance, but makes control system less sensitive to disturbances.
PPN strategy can be used for mobile robot trajectory tracking, assuming that virtual vehicle (desired
trajectory) is target T, and real robot is interceptor M. In missile guidance, the aim is achievement of
intercept between missile and target. The aim of trajectory tracking is to guide mobile robot as close as
possible to the desired time-parameterized path. As previously mentioned, control force is applied in a
such direction that magnitude of the velocity remains the same. It is not good solution in the considered
problem, so magnitude of the velocity generated by the controller shoud be proportional to the tracking
error.
vzx
x* x

*
y y
vzy

Vz ke

(9)

where k is the gain. Based on (3) , (8) and (9), angular velocites of the wheels can be evaluated as:

Lt av v z a N &
a v a N &
Dt

(10)
where:

arctg

v r v r
& cy x 2 cx y
rx
r

ry

(11)
where

v cx

axes, and

rx

v cy

and
and

ry

are projections of the closing velocity vector


are projections of the distance vector

Vc

onto x and y coordinate

onto x and y coordinate axes.

2.3.2.Obstacle Avoiding Controller


Although TTC tries to reduce tracking error as much as possible, tracking will never be perfect due to
noise and uncertainties. Hence, it is not still ensured that the robot will pass from starting to destination
point safely and controller for obstacle avoidance becomes necessary. Its function is to move the robot
away from the obstacle, when it comes close enough to it. For this purpose, FLC is designed with two
inputs (distance between robot and obstacle

d and angle at which robot sees the obstacle

one output (normalized correction of the angular velocity

( xO , yO , rO )

) and

'OAC ). If b denotes robot half-width and

position and radius of the obstacle, inputs and output of the controller can be obtained

using following formula:


dTO x, y , xO , yO rO b 2 , TO arctg

yO y

xO x

'
OAC K OAC OAC

(12)
where

K OAC

stands for controller gain, which has to be determined experimentally. This gain

determines the influence of correction action of the controller on the overall control. Increase of this
parameter decreases the possibility of collision with obstacle, but has a negative influence on tracking
performance.
Input and output membership functions are experimentally adjusted and given on Figures 6 and 7,
respectively. Fuzzy rules are derived experimentally, and rule base is given by Table 2, where output
membership functions are represented with abbreviations.

10

Funkcije pripadnosti ulazne promenljive TO

Funkcije pripadnosti ulazne promenljive dTO

Blizu

0.8

stepen pripadnosti

stepen pripadnosti

0.6

0.4

0.2

Nazad
Desno

Desno

Malo
Desno

Malo
Levo

Nazad
Levo

Levo

0.8

0.6

0.4

0.2

0.1

0.2

0.3

0.4
0.5
0.6
rastojanje[m]

0.7

0.8

0.9

-2

-1.5

-1

-0.5

0
0.5
ugao[rad]

Figure 6. OAC input membership functions.

1.5

Funkcije pripadnosti izlazne promenljive OAC

stepen pripadnosti

Negativno Negativno Pozitivno Pozitivno


Negativno Srednje
Malo
Malo
Srednje Pozitivno
Puno
Puno

0.8

0.6

0.4

0.2

0
-1

-0.8

-0.6

-0.4

-0.2
0
0.2
ugaona brzina

0.4

0.6

0.8

Figure 7. OAC output membership functions.


Table 2. Fuzzy rule base for obstacle avoiding controller.

2.3.3.Vehicle Avoiding Controller


VAC and OAC actions are very similar, i.e. VAC considers other robots as moving obstacles, and its
correction action becomes active only when two robots are close enough. Here, FLC is also used, but it
has one input more, i.e. closing velocity between robots. Hence, inputs of the VAC are distance to the
nearest robot

d TV

and angle at which robot sees the nearest robot

between these two robots

TV , as well as closing velocity

v TV = dTV , while the output is normalized correction of angular velocity

11

'

VAC . If

(x v , y v )

denotes the position of the nearest robot, inputs and output of the controller

can be obtained using following formula:


dTV

x xV

y yV 2b 2 , TV arctg
2

yV y

xV x

'
VAC K VAC VAC

(13)
VAC

where

denotes controller gain. This gain has similar influence on overall control as

OAC

Input and output membership functions are given on Figures 8 and 9, respectively, while the fuzzy rule
base is given by Table 3.
Although, proposed controller is efficient, there are still some situations which have to be further
investigated. In some cases, it is a good solution to stop one vehicle while the other one moves far
enough. This solution degrades tracking quality of the stopped vehicle, but upgrades the overall tracking
performance, i.e. tracking performance of whole formation, making whole situation simpler. So, the idea
is to introduce priority. Priority vehicle is the one which is closer to the current collision point. Collision
point is the intersection point between x axes of local coordinate frames of two robots that are close
enough. Hence, priority vehicle continues to travel, while the other one stops and continues to travel when
the distance between them becomes large enough. This simple algorithm is very efficient, especially at the
beginning (i.e. during formation establishing), when the possibility of jamming is reduced.
Table 3. Fuzzy rule base for vehicle avoiding controller.

Funkcije pripadnosti ulazne promenljive dTV

Blizu

0.8

stepen pripadnosti

stepen pripadnosti

Funkcije pripadnosti ulazne promenljive vTV

0.6

0.4

0.2

Velika

Srednja

0.8

0.6

0.4

0.2

0.1

0.2

0.3

0.4
0.5
0.6
rastojanje[m]

0.8
0.9
1
-1.5
-1
-0.5
0
0.5
Figure 0.7
8. OAC
input
membership
functions.
brzina priblizavanja[m/s]

12

1.5

Funkcije pripadnosti ulazne promenljive TV

Nazad
Desno

Nazad
Levo

Desno Napred Napred Levo


Desno Levo

0.8

stepen pripadnosti

stepen pripadnosti

Funkcije pripadnosti izlazne promenljive VAC

0.6

0.4

0.2

Negativno Negativno Negativno Pozitivno Pozitivno Pozitivno


Malo
Srednje Puno
Puno
Srednje Malo

0.8

0.6

0.4

0.2

-3

-2

-1

0
ugao[rad]

-1
-0.8
-0.6
-0.4
-0.2
0
0.2
Figure 19. OAC2 output3 membership
functions.
ugaona brzina

0.4

0.6

0.8

2.3.4.Combined Controller
In the previous part of the report, three distinct controllers have been introduced: TTC, OAC and
VAC. The task of the combined controller is to make concession between control actions of these
controllers, depending on situation and to generate single control input, which is passed to the robot
motors. When the robot is far away from the objects of the environment, TTC action has to be only active.
When the robot approaches the obstacle, contribution of the OAC must increase. Also, if robots are
approaching to each other, contribution of the VAC must increase. If the robot is close to the obstacle and
another robot, all three controllers must remain active. It is very important to note that the contribution of
the TTC action is never below some nonzero threshold value, in order to ensure movement in the desired
direction. Hence, TTC contribution has to increase when the robot moves away from the objects, OAC
contribution has to increase when robot approaches obstacle, while the VAC contribution has to increase
when robot approaches another vehicle. CC can be defined as a weighted sum, whose weights are
variable, depending on situation:

L K1Lt K 2 OAC K3 VAC


D K1Dt K 2 OAC K3 VAC

1 K1min


1 K1min
K1 min min 1,
dTO K1min , min 1,
dTV K1min

d kO
d kV

K max
K max
K 2 max 0, 2 dTO K 2max , K 3 max 0, 3 dTV K 3max
d kO
d kV

where

K max
3

min

K1

denotes minimal value of gain

maximal values of gains

K2

and VAC actions, respectively, while

and

d kO

(14)

K 1 , i.e. minimal contribution of TTC,

max

K2

and

K 3 , respectively, i.e. maximal contributions of OAC


and

d kV

stand for minimal distances to obstacle and

vehicle, when OAC and VAC become active, respectively. Gains


13

K2

and

K3

decrease to zero,

when corresponding distances ( d

and

d TV ) increases. Gain

K 1 depends on d and d TV ,

i.e. it gradually increases to one, when corresponding distances increases.

3. Simulation Results
Tracking performance of the closed loop system will be presented in two separate scenarios: with and
without obstacles. As previously mentioned, the difference between proposed controllers is only in TTC
part, while the other elements remain the same. It is assumed that TTCs in all robots are of the same type.
In both scenarios, desired trajectory of the leader is the same. Mean square error (MSE) is used as a
measure of tracking quality.
Dimensions of the robot are adopted as follows: robot half-width is

b=15 cm and wheel radius is

r=6 cm . Maximum angular velocities of the wheels of the leader robot are assumed to be
max

L =15 rad / s , while the motors of the followers must be more powerful, in order to track more
demanding maneuvers, i.e.

max
L =27 rad /s . Triangular formation with three robots (leader and two
p1= p2=80 cm

followers) is adopted whose parameters are:

and

q 2=q1=40 cm . During

formation switching, it is assumed that rates of change of parameters p and q are

p i=q i=0.8 m/s . In

all simulations, controller gains of leader robot are different from those of followers. Controller gains of
both followers are the same. Output of CC is filtered with simple first order filter

G ( s )=

1
0.2 s+1 , in

order to reduce noise presence, except in FLC case.

3.1.

Nonlinear PI Controller

Controller gains are also determined experimentally, and for leader robot are chosen as follow:
TTC : K p 5, Ti 0,5, k 10, d 0 0.05m, av 66.68, a 9.33
OAC : K OAC 7.5
CC : K1min 0.5, K 2max 0.7, d kO 0.6m

(15)
while controller gains for followers are chosen as:

14

K pmax K pmin d min K pmin dc1 K pmax dc 2

d c 2 d c1

TTC : K p

, d c1 d min dc 2

K pmax , d min dc1


K pmin , d min d c2

d min

min dTO , dTV , d c1 0, 225, d c 2 0.6, K pmin 2, K pmax 8


OAC : K OAC 21
VAC : K VAC 27

CC : K1min 0.5, K 2max 0.8, K 3max 0.8, d kO 0.4m, d kV 0.6m

(16)
It can be seen from (16) that proportional gain of the follower PI depend on vehicle to object distance

d min , i.e. it decreases when distance to closest object increases. It is experimentally shown that this
variable gain is better solution than the constant one, i.e. avoiding capability is improved. Proportional
gain

Kp

and gains

parameters (as well as

av

and

have major effect on tracking performance. Increase of these

K min
1
) improves tracking performance, but degrades avoiding capability.

Avoiding capability can be improved increasing the parameters

K max
2

and

K OAC

and

K VAC

, as well as

K max
3
. It is the rule for all controllers, i.e. tracking performance can be improved

increasing the TTC gains, while avoiding capabilities can be improved increasing the gains that belong to
VAC and OAC. These two goals are opposite, i.e. improve of tracking quality usually leads to degradation
of avoiding capability and vice versa. Hence, chosen values of parameters are compromise between these
two opposite goals.
Tracking performance in obstacle-free scenario has been shown of Figures 10-12, while the one in
scenarios with obstacles has been shown on Figures 13-15. Position and orientation tracking, together
with x and y error component are shown on Figures 10 and 13, control signals on Figures 11 and 14, while
two-dimensional view of robots motion have been presented on Figures 12 and 15. Dotted lines show the
paths of the virtual robots, while the solid lines correspond to the real robots. Leader is represented with
black, first follower with blue, while the second follower is represented with red color. Filled pink circles
represent obstacles, while dotted pink lines represent obstacle edge enlarged by robot dimension.
It is assumed that starting points of real and virtual leaders are close to each other, while starting
points of real and virtual followers can be arbitrary distant. Starting points of the followers are chosen
such that their trajectories collide at the early stages of formation establishing. Tracking performance is
satisfactory, as well as collision avoidance with vehicles. Unfortunately, obstacle avoidance can be
unsatisfactory in some cases, when collision avoidance and sharp maneuver are required. It can be seen
from Figure 15 that the first follower slightly touches obstacle 2. The level of noise in control signal is not
too large.

15

15

0.8
leader
follower 1
follower 2

5
0
-5

10

15

20

25

30

35

0.2

-0.2

40

10

15

20

25

30

35

40

1
0.5

0
ey [m]

y[m]

0.4

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

0.6

ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

orientation[rad]

4
leader
follower 1
follower 2

2
0
-2
-4

10

15

20
time[sec]

25

30

35

40

15

15

10

10

[rad/s]
L

[rad/s]
D

LEADER

Figure 10. Trajectory tracking performance in obstacle-free scenario nPI case.

5
0
-5
-10

10

15

20

25

30

35

-10

40

[rad/s]
L

FOLLOWER 1
[rad/s]
D

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

20

10
0

0
-20

-10
0

10

15

20

25

30

35

-40

40

30

40

20

20

[rad/s]
L

FOLLOWER 2
[rad/s]
D

40

20

10
0

0
-20

-10
-20

0
-5

30

-20

-40
Figure
nPI20case.
10
15 11.
20 Control
25
30 signals
35
40in obstacle-free
0 scenario
5
10 15
25
time[sec]

time[sec]

16

y[m]

-1

-2

-3
Figure
12.
Two-dimensional
view
of robots4 motion in 6obstacle free
nPI case.
-2
0
2
8 scenario 10
x[m]

15

1
leader
follower 1
follower 2

0.5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

15

20

25

30

35

40

leader
follower 1
follower 2

0.5
0
ey [m]

y[m]

1
leader
follower 1
follower 2

3
2

-0.5
-1

1
0

leader
follower 1
follower 2

ex [m]

x[m]

10

-1.5
0

10

15

20

25

30

35

-2

40

10

orientation[rad]

4
leader
follower 1
follower 2

2
0
-2
-4

10

15

20
time[sec]

25

30

35

Figure 13. Trajectory tracking performance in scenario with obstacles nPI case.

17

40

15

10

10

[rad/s]
L

LEADER

[rad/s]
D

15

0
-5
-10

10

15

20

25

30

35

-10

40

30

[rad/s]
L

FOLLOWER 1
[rad/s]
D

0
-10

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

10
0
-10

-20
0

10

15

20

25

30

35

-20

40

30

30
20

20
10

[rad/s]
L

FOLLOWER 2
[rad/s]
D

20

10

0
-10
-20

30

20

-30

0
-5

10
0
-10
-20

-30
Figure
14. Control
signals
obstacles
nPI
10
15
20
25
30
35 in40scenario with
0
5
10
15
20 case.
25
time[sec]

time[sec]

y[m]

1
0

-1

-2

-3
Figure
15.
view
with
obstacles10 nPI case.
-2 Two-dimensional
0
2 of robots4 motion in scenario
6
8
x[m]

3.2.

Fuzzy Logic Based Controller

Controller gains for leader robot are as follows:

18

TTC : K v K 15
OAC : K OAC 7.5
CC : K1min 0.4, K 2max 0.6, d kO 0.4m

(17)
where L in subscript is used to designate leader robot. Controller gains of the followers are chosen as:
TTC : K v K 27
OAC : K OAC 24
CC : K1min 0.4, K 2max 0.6, K 3max 0.8, d kO d kV 0.4 m

(18)
where L and F in subscript is used to designate leader and follower robot, respectively. All parameters
have been determined experimentally, as a compromise between tracking performance and object
avoiding capability. Increase of

Kv

and

K improves the tracking performance, but degrades the

avoiding capability.
Tracking performance in obstacle-free scenario has been shown of Figures 16-18, while the one in
scenario with obstacles has been shown of Figures 19-21. As can be seen from the presented figures,
proposed control structure is good solution to both, tracking and object avoiding. At the beginning,
formation has to be established. During this phase, there is large possibility of collision between
followers. As can be seen from Figures 18 and 21, proposed solution avoids collision successively. Also,
formation switching, as well as obstacle avoidance is executed successively (see Figure 21). Also, level of
noise in control signal is not large.

3.3.

Pure Pursuit Controller

Pure pursuit controller is simplified version of proposed PI. It does not have integral term and deadzone. Hence, this type of controller tries to generate control which will guide real robot directly on virtual
one. Parameters are similar to those listed in PI, and there influence on tracking and avoiding capability is
similar to PI case. Controller gains for leader robot are:
TTC : K 5, av 12.5, a 2.25
OAC : K OAC
9
L
CC : K1min 0.5, K 2max 0.6, d kOL 0.6m

(19)
while the parameters of followers are:
TTC : K 4, av 12.5, a 2.25
OAC : K OAC 12
VAC : K VAC 22.5
CC : K1min 0.5, K 2max 0.8, K 3max 0.8, d kO 0.4m, d kV 0.6m

(20)

19

15

0.8
leader
follower 1
follower 2

0.4
0.2

0
-5

0
0

10

15

20

25

30

35

-0.2

40

10

15

20

25

30

35

40

0
ey [m]

y[m]

0.5

3
2

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

0.6
ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

orientation[rad]

4
leader
follower 1
follower 2

2
0
-2
-4

10

15

20
time[sec]

25

30

35

40

Figure 16. Trajectory tracking performance in obstacle-free scenario FLC case.


15

15
10

[rad/s]
L

[rad/s]
D

LEADER

10

-5
0

10

15

20

25

30

35

-5

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-10

0
-10
-20

10

15

20

25

30

35

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

-20

40

30
20

[rad/s]
L

20
10
0
-10

-10

30

FOLLOWER 2
[rad/s]
D

10
0
-10
-20

-30
Figure
Control
signals
in40obstacle-free
scenario
15 FLC
10
1517. 20
25
30
35
0
5
10
20 case.
25
time[sec]

time[sec]

20

y[m]

-1

-2

-3
Figure
18.
view
free8 scenario 10 FLC case.
-2 Two-dimensional
0
2 of robots
4 motion in obstacle
6
x[m]

15

1
leader
follower 1
follower 2

0.5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

15

20

25

30

35

40

leader
follower 1
follower 2

0.5
0
ey [m]

y[m]

1
leader
follower 1
follower 2

3
2

-0.5
-1

1
0

leader
follower 1
follower 2

ex [m]

x[m]

10

-1.5
0

10

15

20

25

30

35

-2

40

10

orientation[rad]

4
leader
follower 1
follower 2

2
0
-2
-4

10

15

20
time[sec]

25

30

35

Figure 19. Trajectory tracking performance in scenario with obstacles FLC case.

21

40

15

15
10

[rad/s]
L

[rad/s]
D

LEADER

10

-5
0

10

15

20

25

30

35

-5

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-10

0
-10
-20

10

15

20

25

30

35

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

-20

40

30
20

[rad/s]
L

20
10
0
-10

-10

30

FOLLOWER 2
[rad/s]
D

10
0
-10
-20

-30
Figure
20.
Control
signals
scenario with
obstacles
FLC
10
15
20
25
30
35 in 40
0
5
10
15
20 case.
25
time[sec]

time[sec]

y[m]

1
0

-1

-2

-3
Figure
21.-2 Two-dimensional
view2 of robots4motion in scenario
with
0
6
8 obstacles10 FLC case.
x[m]

Tracking performance in obstacle-free scenario has been shown of Figures 21-23, while the one in
scenario with obstacles has been shown of Figures 24-26. The main advantage of this method is its
simplicity. From the other hand, level of noise in control signal is large, and motion of the robot has

22

undesired oscillations (see Figures 21 and 24). Maneuver of the first follower around obstacle 2 is critical
again, and there is slight collision between them.

3.4.

Deviated Pursuit Controller

Deviated pursuit controller is similar to the pure pursuit. Controller of this type does not guide robot
directly on the target, i.e. it guides robot in direction of overtaking the target. Hence, as lead angle
increases, the difference between paths of real and virtual robots increases. In order to ensure good
tracking, smaller values of lead angle are advisable.
Parameters of leaders controller are chosen as:
TTC : K 4, / 24, av 12.5, a 2.25
OAC : K OAC
12
L
CC : K1min 0.5, K 2max 0.6, d kOL 0.6m

(21)

15

1
leader
follower 1
follower 2

0.5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

0
ey [m]

y[m]

0.5

3
2

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

rientation[rad]

2
1
0
-1

leader
follower 1
follower 2

-2
-3

10

15

20
time[sec]

25

30

35

Figure 21. Trajectory tracking performance in obstacle-free scenario PP case.

23

40

15

10

10

[rad/s]
L

LEADER

[rad/s]
D

15

0
-5
-10

-10
0

10

15

20

25

30

35

-15

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-15

0
-10
-20
-30

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

0
-10

10

15

20

25

30

35

-30

40

30

30

20

20

10

10

0
-10
-20
-30

-20

[rad/s]
L

FOLLOWER 2
[rad/s]
D

0
-5

0
-10
-20

-30
Figure
Control
signals
in40 obstacle-free
scenario
15 PP20case.
10
1522. 20
25
30
35
0
5
10
25
time[sec]

time[sec]

y[m]

-1

-2

-3
Figure
23.
Two-dimensional
view
of robots
scenario10 PP case.
-2
0
2
4 motion in6 obstacle free
8
x[m]

24

15

1
leader
follower 1
follower 2

0.5
ex [m]

x[m]

10
5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

0
ey [m]

y[m]

0.5

3
2

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

rientation[rad]

2
1
0
-1

leader
follower 1
follower 2

-2
-3

10

15

20
time[sec]

25

30

35

40

15

15

10

10

[rad/s]
L

[rad/s]
D

LEADER

Figure 24. Trajectory tracking performance in scenario with obstacles PP case.

0
-5
-10

-10
0

10

15

20

25

30

35

-15

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-15

0
-10
-20
-30

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

0
-10

10

15

20

25

30

35

-30

40

30

30

20

20

10

10

0
-10
-20
-30

-20

[rad/s]
L

FOLLOWER 2
[rad/s]
D

0
-5

0
-10
-20

Figure
25. Control
signals
in40scenario -30with
obstacles
10
15
20
25
30
35
0
5
10
15 PP
20 case.
25
time[sec]

time[sec]

25

y[m]

1
0

-1

-2

-3
Figure
26.
Two-dimensional
view
of robots4 motion in 6scenario with
obstacles10 PP case.
-2
0
2
8
x[m]

while the parameters of the followers are:


TTC : K 5, / 24, av 16.67, a 2.67
OAC : K OAC 12
VAC : K VAC 24
CC : K1min 0.5, K 2max 0.8, K 3max 0.8, d kO 0.4m, d kV 0.6m

(22)
Tracking performance in obstacle-free scenario has been shown of Figures 28-30, while the one in
scenario with obstacles has been shown of Figures 31-33. Presented results are very similar to those
obtained in pure pursuit case. Presence of noise in control signals is large, so there are oscillations in
robot motion (see Figures 28 and 31). It can be seen from Figures 30 and 33 that paths realized by real
and virtual vehicles do not coincide, because real robot tries to intercept the virtual one directing ahead of
it, i.e. overtaking it. Unfortunately, the second follower slightly collides with obstacle 3 (see Figure 33).

3.5.

Proportional Navigation

Proportional navigation is very popular guidance scheme in control of missiles, due to its simplicity
and ease of implementation. Turn rate of the whole robot should be proportional to the angular velocity of
LOS rotation.

26

15

1.5
leader
follower 1
follower 2

0.5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

0
ey [m]

y[m]

0.5

3
2

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

1
ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

rientation[rad]

2
1
0
-1

leader
follower 1
follower 2

-2
-3

10

15

20
time[sec]

25

30

35

40

15

15

10

10

[rad/s]
L

[rad/s]
D

LEADER

Figure 28. Trajectory tracking performance in obstacle-free scenario DP case.

0
-5
-10

-10
0

10

15

20

25

30

35

-15

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-15

0
-10
-20
-30

10

15

20

25

30

35

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

0
-10

-30

40

40

20

20

[rad/s]
L

10
0
-10

0
-20

-20
-30

-20

30

FOLLOWER 2
[rad/s]
D

0
-5

-40
10
1529. 20
25
30
35
0
5
10
25
Figure
Control
signals
in40obstacle-free
scenario
15 DP20 case.
time[sec]

time[sec]

27

y[m]

-1

-2

-3
-2
0
2
8
Figure
30.
Two-dimensional
view
of robots4 motion
in 6obstacle free
scenario10 DP case.
x[m]
15

1.5
leader
follower 1
follower 2

5
0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

1
0.5

0
ey [m]

y[m]

0.5
0

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

1
ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

rientation[rad]

2
1
0
-1

leader
follower 1
follower 2

-2
-3

10

15

20
time[sec]

25

30

35

Figure 31. Trajectory tracking performance in scenario with obstacles DP case.

28

40

15

10

10

[rad/s]
L

LEADER

[rad/s]
D

15

0
-5
-10

-10
0

10

15

20

25

30

35

-15

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-15

0
-10
-20
-30

10

15

20

25

30

35

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

0
-10

-30

40

40

20

20

[rad/s]
L

10
0
-10

0
-20

-20
-30

-20

30

FOLLOWER 2
[rad/s]
D

0
-5

Figure
32. Control
signals
in40scenario -40with
obstacles
10
15
20
25
30
35
0
5
10
15 DP
20 case.
25
time[sec]

time[sec]

y[m]

1
0

-1

-2

-3
-2 Two-dimensional
0
2 of robots
4 motion in scenario
6
8
Figure
33.
view
with
obstacles10 DP case.
x[m]

Parameters of the leaders controller are chosen as follows:

29

TTC : k 3, N 4, av 20, a 2, 4
OAC : K OAC
6
L
CC : K1min 0.5, K 2max 0.6, d kOL 0.6m

(23)
while the parameters of the followers controllers are:
TTC : k 2, N 4, av 20, a 2, 4
OAC : K OAC 9
VAC : K VAC 7,5
CC : K1min 0.5, K 2max 0.6, K 3max 0.6, d kO 0.4m, d kV 0.6m

(24)
Tracking performance in obstacle-free scenario has been shown of Figures 34-36, while the one in
scenario with obstacles has been shown of Figures 37-39. Presented results show that proposed solution is
very good. Tracking is very good, collision with both, obstacles and other vehicles, is avoided, and
presence of noise in control signals is not large, comparable with the FLC case. Unfortunately, controller
based on proportional navigation law is sensitive to the disturbances. VAC and OAC act as a disturbance
on PN tracking controller. Hence, it can happen in some cases that real robot does not converge to the
desired trajectory, especially if the navigation constant is large.
15

1
leader
follower 1
follower 2

0.5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

0
ey [m]

y[m]

0.5

3
2

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

3
leader
follower 1
follower 2

rientation[rad]

2
1
0
-1
-2

10

15

20
time[sec]

25

30

35

Figure 34. Trajectory tracking performance in obstacle-free scenario PN case.

30

40

15

10

10

[rad/s]
L

LEADER

[rad/s]
D

15

0
-5
-10

-10
0

10

15

20

25

30

35

-15

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-15

0
-10
-20
-30

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

0
-10

10

15

20

25

30

35

-30

40

30

30

20

20

10

10

0
-10
-20
-30

-20

[rad/s]
L

FOLLOWER 2
[rad/s]
D

0
-5

0
-10
-20

-30

10
1535. 20
25
30
35
0
5
10
15
20 case.
25
Figure
Control
signals
in40 obstacle-free
scenario
PN
time[sec]
time[sec]

y[m]

-1

-2

-3
-2
0
2
8
Figure
36.
Two-dimensional
view
of robots4 motion
in 6obstacle free
scenario10 PN case.
x[m]

31

15

1
leader
follower 1
follower 2

0.5

0
-5

10

15

20

25

30

35

-0.5

40

10

15

20

25

30

35

40

0
ey [m]

y[m]

0.5

3
2

10

15

20

25

30

35

-0.5
-1

leader
follower 1
follower 2

1
0

leader
follower 1
follower 2

ex [m]

x[m]

10

leader
follower 1
follower 2

-1.5
-2

40

10

15

20

25

30

35

40

3
leader
follower 1
follower 2

rientation[rad]

2
1
0
-1
-2

10

15

20
time[sec]

25

30

35

40

15

15

10

10

[rad/s]
L

[rad/s]
D

LEADER

Figure 37. Trajectory tracking performance in scenario with obstacles PN case.

0
-5
-10

-10
0

10

15

20

25

30

35

-15

40

30

30

20

20

10

10

[rad/s]
L

FOLLOWER 1
[rad/s]
D

-15

0
-10
-20
-30

10

15

20

25

30

35

40

10

15

20

25

30

35

40

30

35

40

0
-10

10

15

20

25

30

35

-30

40

30

30

20

20

10

10

0
-10
-20
-30

-20

[rad/s]
L

FOLLOWER 2
[rad/s]
D

0
-5

0
-10
-20

10
1538. 20
25
30
35
0
5
10
15 PN
20
25
Figure
Control
signals
in40 scenario-30with
obstacles
case.
time[sec]
time[sec]

32

y[m]

1
0

-1

-2

-3
0
2 of robots
4 motion in scenario
6
8
10 PN case.
Figure
39.-2 Two-dimensional
view
with
obstacles
x[m]

3.6.

Comparative Analysis of Proposed Controllers

As previously mentioned, MSE (average tracking error) will be adopted as a measure of quality. MSE
values for the proposed control laws and considered scenarios are given by Table 4.
Table 4. MSE values for the proposed control strategies.

Considering the given table and result given previously on figures, it can be said that FLC is slightly
better than the other control strategies. The tracking performance is very good, as well as avoiding
capability. In this case, interaction with OAC and VAC is the best, in sense that their correction does not
decelerate the robot velocity, making its movement between the obstacles very natural. Also, noise in
control signals is very low. Proportional navigation is also very good approach, and regarding the
computational burden, it is much simpler than FLC. Presence of noise in control is similar to the FLC, but
the interaction with OAC and VAC is a little bit worse. The remaining three controllers show the similar
performance. The nPI is better solution than the PP and DP, which show the similar performance. The
main drawback of the PP and DP is very large level of noise in control signals, making the motion of the
robot oscillatory.

4. Conclusion and Future Work


Solution to the formation control in static structured environments is presented in this report. Leaderfollower approach for formation control is adopted here. It is assumed that exists high level planner which
33

generates desired trajectory for the leader, based on knowledge about obstacles position and shape.
Desired trajectories for the followers are generated using approach based on curvilinear coordinates, and
are referenced regarding the real leaders trajectory. For motion control of robots in formation, control
scheme with trajectory tracking and object avoiding capabilities is presented here. Although, controller
can redirect robot if the collision with other robots or obstacles is possible, in some cases, collision can
happen, so, simple algorithm for formation switching is proposed. In order to test formation behavior,
various control strategies are considered, which can be roughly devided into two categories: fuzzy logic
based controller and controllers inspired by missile guidance laws. Performance of control strategies is
presented using simulations in two scenarios: with and without obstacles. It is also shown that fuzzy logic
and proportional navigation based controllers ouperforms the others.
Main drawback of the proposed solution is in its inability to deal with dynamic obstacles, i.e. its
success in dynamic environments is not guaranteed. So, some future work should include implementation
of online trajectory planning algorithm as well as simulations utilizing more realistic dynamic model of
the wheeled mobile robot, instead of simple kinematic model.

34

Anda mungkin juga menyukai