You are on page 1of 10

Int. J. Modelling, Identification and Control, Vol. 25, No.

3, 2016 155

A hybrid fuzzy-sliding mode controller for a


mobile robot

Maïssa Boujelben*, Chokri Rekik and Nabil Derbel


Department of Electrical Engineering,
National school of Engineering of Sfax,
Sfax University, Tunisia
Email: boujelben.maissa@gmail.com
Email: chokri.rekik@enis.rnu.tn
Email: nabil.derbel@ieee.org
*Corresponding author

Abstract: This paper deals with the autonomous navigation problem. Its objective is the driving
of a mobile robot to the goal position without colliding with obstacles. Therefore, a new hybrid
approach based on the combination of fuzzy logic systems with sliding mode method is
proposed. More specifically, fuzzy logic is a reactive decision making method and it is devoted
to bring the robot towards the target, whereas sliding mode is used to ensure the obstacle
avoidance behaviour. The robot should follow accurately a limit cycle trajectory using a sliding
mode controller. This limit cycle trajectory allows the generation of a smooth trajectory in the
vicinity of obstacles. Through simulation results, we can conclude that the robot is able to
generate suitable trajectories in different environments, which demonstrates the efficiency and
the reliability of the proposed approach.

Keywords: autonomous navigation; mobile robot; obstacle avoidance; fuzzy logic; sliding mode;
limit cycle.

Reference to this paper should be made as follows: Boujelben, M., Rekik, C. and Derbel, N.
(2016) ‘A hybrid fuzzy-sliding mode controller for a mobile robot’, Int. J. Modelling,
Identification and Control, Vol. 25, No. 3, pp.155–164.

Biographical notes: Maïssa Boujelben received her Engineering Diploma in 2010 and Master
degree in Automatic Control in 2011 both from the Ecole Nationale d’Ingénieurs de Sfax (ENIS).
She is currently working towards her PhD in Electrical Engineering at the same university. She is
a member in Control and Energy Management Laboratory (CEM Lab) in ENIS. Her research
interests include mobile robot control, fuzzy logic, neural networks and genetic algorithms.

Chokri Rekik received his Engineering Diploma in 1999, the Diplôme d’Etudes Approfondies in
Automatic Control in 2001 and PhD in 2006, all from the Ecole Nationale d’Ingénieurs de Sfax
(ENIS). He has been an Assistant Professor in the Electrical Engineering Department of the
Ecole Nationale d’Ingénieurs de Sfax in 2006. Currently, he is a Full Professor of Automatic
Control at the Ecole Nationale d’Ingénieurs de Sfax and carrying his research activities in
Control and Energy Management Laboratory (CEM Lab) in ENIS. His research interests are:
advanced control of complex nonlinear systems, and robotic control.

Nabil Derbel received his Engineering Diploma from the Ecole Nationale d’Ingénieurs de Sfax in
1986, his Diplˆome d’Etudes Approfondies in Automatic Control from the Institut National des
Sciences Appliquées de Toulouse in 1986, his Doctorat d’Université degree from the Laboratoire
d’Automatique et d’Analyse des Systmes de Toulouse in 1989 and Doctorat d’Etat degree from
the Ecole Nationale d’Ingénieurs de Tunis. He joined the Tunisian University in 1989, where he
held different positions involved in research and education. Currently, he is a Full Professor of
Automatic Control at the Ecole Nationale d’Ingénieurs de Sfax. His current interests include:
optimal control, complex systems, fuzzy logic, neural networks and genetic algorithms. He is the
author and the co-author of more than 40 papers published in international journals and of more
than 250 papers published in international conferences. He is a member in Control and Energy
Management Laboratory (CEM Lab) in ENIS.

This paper is a revised and expanded version of a paper entitled ‘Mobile robot navigation using
fuzzy-sliding mode control in a cluttered environment’ presented at the World Congress on
Computer Applications and Information Systems (WCCAIS), Hammamet, Tunisia, 16–19
January 2015.

Copyright © 2016 Inderscience Enterprises Ltd.


156 M. Boujelben et al.

1 Introduction The main contribution in this paper is to combine


planned and reactive behaviour. Planned behaviour is
In recent years, researchers have devoted a great effort
executed once a high collision possibility is detected. In this
for mobile robots control (Shao et al., 2015). Indeed,
case, the robot starts tracking the trajectory generated from
autonomous vehicles are designed to replace human
a limit cycle vector field using a sliding mode controller. In
intervention especially in dangerous or inaccessible
fact, the limit-cycle method is a local navigation method. It
environments. For that, various methods for controlling
constitutes an efficient way for obstacles avoidance since it
non-holonomic mobile robot systems safely (i.e., tacking
allows the generation of a smooth trajectory when moving
into account the presence of obstacles) to a desired position
far away from obstacles. On the other hand, a fuzzy logic
have been developed. They are generally classified into two
system, enabling a reactive behaviour, is used for steering
categories. The first category includes methods without
the robot to reach the target position.
reference trajectory. At each instant, the robot must decide
This paper is organised as follows. Section 2 presents
autonomously its movements according to the gathered
the kinematic model of Khepera II robot. The proposed
information about its local environment, without the need of
control architecture is described in Section 3. This
anticipating the trajectory of the robot. Among these
architecture is based on a behavioural decomposition of
methods we can note for example the artificial potential
tasks. In Section 4, a description of the elementary
fields (Khatib, 2010), neural networks (Janglova, 2004;
controllers as well as the computation details of the control
Rubio, 2012; Hsu et al., 2013) and fuzzy logic (Saffiotti
laws are given. In Section 5, simulation results are
et al., 1995; Selekwa et al., 2008; Boujelben et al., 2013).
introduced.
The second category contains trajectory tracking methods.
The robot should follow a predefined or a planned trajectory
(Fliess et al., 1995; Morin and Samson, 2004). Owing to the
2 Khepera II kinematic model
non-holonomic property and restricted mobility, the
trajectory tracking of this system has been one of the In this work, we have used the non-holonomic mobile robot
research topics for the last ten years (Rossomando et al., Khepera II. Figure 1 shows the schematic model of this
2014). robot.
In the literature, most path following and trajectory
tracking control methods use a proportional integrator Figure 1 The schematic model of the mobile robot Khepera II
derivative (PID) controller (Rojas and Foerster, 2006) or a
nonlinear controller (Aguiar et al., 2005). This is to decrease
the error between the current and the desired robot position.
However, taking into account only the current errors and
ignoring the information about the new generated positions
makes these methods unable to improve the control
performance. In addition, in these approaches, the robot
dynamic and kinematic constraints are rarely considered. As
a consequence, motors could easily be saturated especially
when the robot makes a sharp turn, so that stability could be
destroyed (Indiveri et al., 2006).
As a robust approach for trajectory tracking, sliding
mode control has receiving increasing attention for the
control of non-holonomic mobile robots (Saghafinia et al.,
2014; Solea et al., 2009). Sliding mode control has proved
its efficiency since
1 it is robust against disturbances and parameter variation
(Rhif, 2014; Zhen et al., 2014)
2 it offers a fast response, a good transient performance
and a stable control system (Utkin et al., 1999; Soltine The state of the robot is completely determined by the
and Li, 1991). vector p = (x, y, α)T, (x, y) is the robot position and α is the
robot orientation according to the absolute reference frame
By designing switching functions of state variables or
A = (O, X, Y). Khepera II robot is characterised by two
output variables to form sliding surfaces, sliding mode
independent driving wheels which are responsible for the
control can guarantee that when the trajectories reach the
robot motion. The robot control is performed by acting on
surfaces, the switching functions keep the trajectories on the
the speed of each wheel.
surfaces (Kaur and Janardhanan, 2014).
A hybrid fuzzy-sliding mode controller for a mobile robot 157

Figure 2 Control strategy for mobile robot navigation

The kinematic model of Khepera II robot is given by: 3.2 Action selection
⎧ VR + VL The major issue in the design of behavioural control
⎪ x = cos α
2 systems is the formulation of effective mechanisms for
⎪ coordination in order to obtain rational and coherent global
⎪ VR + VL
⎨ y = sin α (1) behaviour (Pirjanian, 1999). In this work, the action
⎪ 2
selection block (see Figure 2) is used to manage conflict
⎪ VR − VL
⎪α = situations which occur when the attraction to the target
⎩ L controller and the obstacle avoidance controller perform
where contradictory actions. In this case, a priority criterion should
be defined in order to determine the controller which has to
• VR and VL are respectively the robot right and left wheel be activated.
velocities Before explaining the adopted priority criterion, some
• L is the distance between two wheels. terminologies should be defined (see Figure 3):
• Rr and Ro are the radius of the circles surrounding the
robot and the obstacle respectively. The obstacle is
3 Control architecture considered as a circle.
In this section, a description of the proposed control • Dro is the distance between the robot centre and the
architecture is given (see Figure 2). This method allows to obstacle centre.
obtain safe, fast and smooth trajectories during the mobile
robot navigation (Boujelben et al., 2015). The control • (l) is the line that connects between the robot centre and
strategy is the following. Firstly, the initial robot position the target [the line (l) varies as the robot move].
and orientation (x, y, α), as well as the target position (xt, yt) • D is the distance between the line (l) and the obstacle.
should be known. In each iteration step, we should verify if
the robot have already reach the target position (the current • Rc = Rr + Ro + δ is the radius of the convergence circle
robot position is compared to the target position), through defined for each detected obstacle. δ is a safety margin
the trajectory computation block. If it is not the case, we for collision avoidance.
should apply two velocities VL and VR on the robot wheels.
Figure 3 Required information for the robot navigation
These two velocities are responsible for the robot motion.
They are provided either from the attraction to the target
controller or from the obstacle avoidance controller,
according to the behaviour activated from the action
selection block.

3.1 Behaviour-based decomposition


Recent successful approaches have been based on a
behavioural decomposition of tasks (Emery and Balch,
2001; Tunstel et al., 2002). In fact, due to the growing of the
domain of intelligent and autonomous systems, the
development of control techniques becomes a very
complicated task. So, decomposing control problems into
modular and more manageable subsystems constitutes a
solution that helps to easily elaborate the control law. In this
case, the control of the overall system often requires
subsystems coordination techniques. This is known as the We suppose that the target sends a virtual field defining the
action selection problem. risk area around the obstacle. If the robot is included in this
field, then there is a possible collision. In this case, the
158 M. Boujelben et al.

obstacle is treated as annoying and the obstacle avoidance subsets which are: NL: negative large; NM: negative
controller should be activated. In other words, annoying medium; NS: negative small; Z: zero; PS: positive
obstacles may be determined if the line (l) crosses the small; PM: positive medium; PL: positive large. The
convergence circle, i.e., mathematically: D ≤ Rc. Otherwise, used membership functions are Gaussian as shown in
the attraction to the target controller is activated and the Figures 5 and 6.
navigation is performed safely.
2 Rules basis: this part consists in elaborating relations
between fuzzy input variables and fuzzy output
variables. Thus, for each combination of the input
4 Elementary controllers variables, an action is associated to the output variables.
The objective of this paper is to control the robot, The control rule base contains the following rules:
autonomously, from its initial position to a desired one if (d is Ai) and (ϕ is Bi) then (VR = yi and VL = zi) with
without colliding obstacles. For that, we have decomposed i = 1, 2..., r, where r is the rule numbers. Tables 1 and 2
this task into two elementary Behaviours/controllers: summarise the obtained fuzzy rules for the two wheels
Attraction to the target controller and obstacle avoidance velocities.
controller. This helps to achieve the overall objective in a
simple way. 3 Fuzzy controller outputs: fuzzy controller outputs are
the robot right and left wheels velocities (VR and VL).
4.1 Attraction to the target controller They are expressed as follows:
r
The attraction to the target controller aims to guide the robot
from its initial position to the target location. This controller ∑α y
i =1
i i

is activated when the virtual field is without obstacles. To VR = r


(5)
obtain the left and right wheels velocities allowing to orient ∑α j
the robot to the target, a fuzzy logic controller has been j =1
used. Indeed, fuzzy logic is a widely used technique for the r
design of a robust controller satisfying autonomous
navigation problems (Antonelle and Chiaverini, 2004; ∑β z
i =1
i i

Rekik et al., 2008; Boujelben et al., 2012). The controller VL = r


(6)
inputs are the distance d separating the robot centre to the ∑β
j =1
j

target position and the angle ϕ between the robot orientation


and the target (see Figure 4). Equations (2) and (3) show the with αi and βi are the level activation of the rule i.
expressions of d and ϕ variables.
Figure 4 Representation of the parameters d and ϕ (see online
d= ( xt − x ) 2
+ ( yt − y )
2
(2) version for colours)

ϕ = θt − α (3)

with:
yt − y
θt = arctan (4)
xt − x
Three main steps are used for the synthesis of a fuzzy logic
controller.
1 Fuzzy partition of input variables: this step consists of
specifying the variation domain of the variables d and
ϕ. In our application, the distance d varies from 0 cm to
70 cm (which is the maximum distance of the platform
used in our research laboratory), and the angle ϕ is
chosen in the interval [− π2 , π2 ]. Then, controller inputs
are converted into information that the inference
mechanism can be easily use to activate and apply
rules. From our experiments, we have associated five
fuzzy subsets for the distance d, which are: VS: very
small; S: small; M: medium; L: large; VL: very large,
and for the angle ϕ, we have associated seven fuzzy
A hybrid fuzzy-sliding mode controller for a mobile robot 159

Figure 5 Membership functions for the distance d (in cm) We have used a Sugeno fuzzy system of order zero, and we
(see online version for colours) have chosen five linguistic variables for the fuzzy rule
consequences (Z: zero; S: small; M: medium; L: large;
VL: very large). Then, based on simulations and
experimentation tests, we have attributed a numerical value
to each linguistic variable (see Figure 7).

Figure 7 Numerical values for linguistic variables

4.2 Obstacle avoidance controller


The aim of this controller is to help the robot to avoid
Figure 6 Membership functions for the angle ϕ (in rad) (see
encountered obstacles during the robot navigation. The
online version for colours) obstacle avoidance behaviour is performed through a path
following controller. In the literature, the main goal of the
path following controller is to ensure that the robot follows
the predefined reference path in the appropriate orientation.
For that, most path following approaches use a PID
controller that minimise the errors between the actual robot
position and the desired one (Carona et al., 2008; Adouane,
2009). In this work, the robot should follow accurately a
limit cycle trajectory using a sliding mode control.

4.2.1 Limit cycle trajectory


The limit cycle trajectory is defined by the following
differential equation (Kim and Kim, 2003; Jie et al., 2006):
⎧⎪ xr = ayr + xr ( Rc2 − xr2 − yr2 )
⎨ (7)
⎪⎩ y r = −axr + yr ( Rc − xr − yr )
2 2 2
Table 1 Inference table for the right velocity

ϕ Here, (xr, yr) determine the coordinates enabling the robot to


VR follow the convergence circle which radius is Rc, and a is a
NL NM NS Z PS PM PL scalar defining the motion direction: clockwise or
d VS S S Z Z S M L counter-clockwise [see equation (8)]. The robot should
S M S S S M L VL determine the appropriate obstacle avoidance direction
depending on the robot position with respect to the obstacle.
M L M S M L VL VL
L L L M L VL VL VL ⎧1 : clockwise (CW)
a= ⎨ (8)
VL VL VL VL VL VL VL VL ⎩−1 : counter clockwise (CCW)
Kim and Kim (2003) have demonstrated that the circle of Rc
Table 2 Inference table for the left velocity
radius is a periodic orbit. This periodic orbit is called a limit
ϕ cycle. Figure 8 shows the limit cycle trajectories, for Rc = 1
VL and for several initial configurations. According to this
NL NM NS Z PS PM PL figure, it is noted that the trajectories from all points (xr, yr),
d VS L M S Z Z S S even those located inside the circle, move towards this
S VL L M S S S M circle.
M VL VL L M S M L
L VL VL VL L M L L
VL VL VL VL VL VL VL VL
160 M. Boujelben et al.

Figure 8 The shape of the limit cycles, (a) clockwise (b) counter-clockwise (see online version for colours)

(a) (b)

To determine the motion direction, a specific reference 2009). Then, decision is made according to the sign of yro:
frame S = (C, Xo, Yo), related to the obstacle, should be if yro ≥ 0 then apply clockwise limit cycle direction, else
defined (cf., Figure 9). The XO axis of this frame connects apply counter-clockwise direction.
the centre of the obstacle C (characterised by (xo, yo) −1
coordinates) to the target. This axis is oriented towards the ⎛ xro ⎞ ⎛ cos β − sin β 0 xo ⎞ ⎛x⎞
target. β is defined as the angle between the X-axis and the ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ yro ⎟ = ⎜ sin β cos β 0 yo ⎟ ⎜ y⎟ (9)
Xo-axis. The YO axis is determined according to the ⎜0 ⎟ ⎜ 0 0 1 0⎟ ⎜0 ⎟
trigonometric convention. ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎝1 ⎠ / S ⎝ 0 0 0 1⎠ ⎝1 ⎠/ A
Figure 9 The specific reference frame (C, Xo, Yo)
4.2.2 Sliding mode control
The objective of this part is to determine a sliding mode
controller (Lee et al., 2009), so that the robot can follow the
limit cycle trajectory in the vicinity of obstacle. Path
following is formulated as having a mobile robot following
a virtual target which is assumed to move exactly
along a pre-defined path with a specified velocity profile
(Solea et al., 2009). Here, the linear and the angular
velocities of this virtual target are expressed according to
equations (10) and (11).

vr = ( xr )2 + ( yr ) (10)

wr = α r (11)
with:

⎛ y ⎞
αr = arctan ⎜ r ⎟ (12)
⎝ xr ⎠
As we have mentioned, the obstacle reference frame is an
accurate means that allows the robot to follow either the Consider Figure 10 that illustrates the strategy used to solve
clockwise or the counter clockwise direction. To obtain the path following problem. pr = (xr, yr, αr) is the reference
required direction, we should apply, firstly, a reference position (i.e., the desired position to be reached). Let us
frame change in order to transform the robot coordinates define p = (x, y, α) as the current robot position (i.e., the real
(x, y) expressed in the absolute reference frame A, towards position) at this moment. A tracking error position
the specific reference frame (S). The obtained coordinates pe = (xe, ye, αe) is defined as the difference between the
are denoted (xro, yro). To achieve this transformation, we use reference position pr and the current position p.
the homogenous transformation of equation (9) (Adouane,
A hybrid fuzzy-sliding mode controller for a mobile robot 161

Figure 10 Tracking error Here, αe = −arctan(vrye) is chosen as a switching function


candidate (Lee et al., 2009). The global reaching condition
is given by V ≤ 0, which is always satisfied because
vrye sin(arctan(vrye)) ≥ 0.
Proof: x ∈ R, f(x) = x sin(arctan(x))
• x = 0, f(0) = 0
• x ∈ [0, +∞[, arctan(x) ∈ [0, π2 ]
⇒ sin(arctan(x)) ≥ 0 ⇒ f(x) ≥ 0
• x ∈] −∞, 0], arctan (x) ∈ [− π2 , 0]
⇒ sin(arctan(x)) ≤ 0 ⇒ f(x) ≥ 0.
The vector of sliding surfaces is then:
⎡ s1 ⎤ ⎡ xe ⎤
s=⎢ ⎥=⎢ ⎥ (18)
⎣ s2 ⎦ ⎣α e + arctan(vr ye ) ⎦
If s1 converges to zero, trivially xe converges to zero. The
convergence of s2 to zero require that αe becomes equal
vr and wr are the reference linear and angular velocities used to −arctan(vrye) and ye converges to zero.
to force the error position pe to converge to zero. Clearly, if For the reaching law, we have used a constant rate
pe converges to zero then p converges to pr. reaching given by equation (19) which directly specifies the
The error position pe is expressed as: dynamics of switching surfaces.

⎛ xe ⎞ ⎛ cos α sin α 0 ⎞ ⎛ xr − x ⎞ si = − ki sat( si ); i = (1, 2) (19)


⎜ ⎟ ⎜ ⎟⎜ ⎟
⎜ ye ⎟ = ⎜ − sin α cos α 0 ⎟ ⎜ yr − y ⎟ (13) This law forces the switching function to reach the
⎜α ⎟ ⎜ 0 0 1 ⎟⎠ ⎜⎝ αr − α ⎟⎠ switching surface at a constant rate | si |= −ki . In addition,
⎝ e⎠ ⎝
replacing the switching function by a saturation function
Sliding mode control is used to generate the adequate linear introduces a boundary layer around the switch surface and
and angular velocities q = (v, w)T (v is the linear velocity of prevents the chattering associated with the use of sign
the robot and w is its angular velocity) allowing the robot to function (Gonzalez et al., 2014). The chattering is a harmful
follow the limit-cycle path. The mobile robot motion is then oscillation phenomenon because it leads to low control
controlled according to equations (14) and (15) (Lee et al., accuracy.
2009). The expression of control law can be directly obtained
Lw by computing the time derivative of (18) along the reaching
VR = v + (14) mode trajectory, i.e.,
2
⎡ xe ⎤
Lw ⎡ s1 ⎤ ⎡ −k1sat ( s1 ) ⎤ ⎢
VL = v − (15) s = ⎢ ⎥ = ⎢ ⎥ ∂γ ∂γ ⎥
⎣ s2 ⎦ ⎢⎣ −k2 sat ( s2 ) ⎥⎦ ⎢⎢α e + ∂v vr + ∂y y e ⎥⎥
2
⎣ r e ⎦
The time derivative of equation (13) is: (20)
⎡ ye w − v + vr cos αe ⎤
⎛ xe ⎞ ⎛ ye w − v + vr cosαe ⎞ =⎢ ∂ γ ∂ γ ⎥
⎜ ⎟ ⎜ ⎟ ⎢ wr − w + vr + ( − xe w + vr sin αe )⎥
⎜ ye ⎟ = ⎜ − xe w + vr sinαe ⎟ (16)
⎣⎢ ∂vr ∂ye ⎥⎦
⎜ α ⎟ ⎜ wr − w ⎟
⎝ e⎠ ⎝ ⎠
Thus, we have:
Khepera II robot is represented by a multiple-input
nonlinear system [equation (1)]. Consequently, the design of ⎡ ye w + vr cos αe + k1sat ( s1 ) ⎤
⎡v ⎤ ⎢ ⎥
a switching function is a difficult problem. To simplify this ⎢ ⎥=⎢ ∂γ ∂γ (21)
problem, considering xe = 0 is the first switching surface. In ⎣ w⎦ ⎢ wr + vr + ( vr sin αe ) + k2sat ( s2 )⎥⎥
⎣ ∂vr ∂ye ⎦
this case, let us define V = 12 ye2 as the Lyapunov candidate
where γ = arctan(vrye),
function. The time derivative of V gives:
∂γ ye ∂γ vr
V = ye y˙e = ye ( − xe w + vr sinα e ) = and =
(17) ∂vr 1 + ( vr ye )2 ∂ye 1 + ( vr ye )2
= − xe ye w − vr ye sin ( arctan(vr ye ) )
162 M. Boujelben et al.

5 Simulation results Figure 12 Tracking errors

Before showing the efficiency of the proposed control


approach, we will demonstrate the robustness of our sliding
mode controller used for solving path following problems.
For that, and without loss of generality, the case of counter
clockwise motion direction is considered in this simulation
as a reference trajectory. The robot is assumed to start from
the position ( x, y, α ) = (0.5, 0, π4 ), making an initial error
(xe, ye, αe) = (−0.35, 0.35, −0.02) with respect to the
reference trajectory. Figure 11 presents the path following
result. From this figure, we can observe that the robot is
approaching quickly from the desired trajectory despite the
initial error position. Figure 12 shows that the tracking
errors converge on average to zero. In addition, Lee et al.
(2009) have proved the superiority of the sliding mode
control compared to a PID control. In fact, sliding mode
control presents a good tracking performance and a small
tracking error.
In the following, some simulation results are devoted to
evaluate the reactivity of the proposed control approach
for a mobile robot in presence of obstacles. Firstly,
Figure 13 Simulation result: robot motion in presence of an
in Figure 13, we will present the robot motion in presence
obstacle using the proposed action selection
of an obstacle using the proposed action selection mechanism (see online version for colours)
mechanism (i.e., the obstacle avoidance controller is
activated when D ≤ Rc). Referring to Figure 13, the robot
starts from the position (x, y, α) = (0, 0, π / 4) and should
reach the target located in the position (xt, yt) = (20, 20).
Initially, the line (l) crosses the convergence circle. An
annoying obstacle is then detected. The robot moves in the
counter clockwise direction (see Figure 9) to avoid it. Since
the robot is outside the risk zone, the attraction to the target
controller is activated until it reaches the target.

Figure 11 Simulation result: path following using sliding mode


control (see online version for colours)

In the literature, standard approaches activate the obstacle


avoidance controller only when the robot is inside the
convergence circle (i.e., Dro ≤ Rc) (Zhang et al., 2006;
Boujelben et al., 2014). Figure 14 presents this simulation
case. Comparing Figures 13 and 14, we notice that the
trajectory given by the proposed action selection mechanism
looks reasonably smooth and permits to decrease the
covered distance when reaching the target. The
improvement of covered distance is about 3%. This
illustrates the advantage of using the proposed action
selection mechanism especially for cluttered environments.
A hybrid fuzzy-sliding mode controller for a mobile robot 163

Figure 14 Simulation result: robot motion in presence of an based on a behavioural decomposition of tasks. So, we have
obstacle using the standard action selection used two elementary controllers reflecting the main
mechanism (see online version for colours)
behaviours for solving navigation problems, which are the
attraction to the target controller and the obstacle avoidance
controller. A fuzzy system is used to conceive the attraction
to the target controller, since it presents a reactive and
efficient method for the development of autonomous mobile
robots. A path following approach is used to perform the
obstacle avoidance controller: the robot should follow
accurately the limit cycle trajectories which constitute an
obstacle escape criterion. A sliding mode control is
proposed for the achievement of this objective. The
controller’s activation is carried out in a reactive way: if it
exists, at least, one obstacle which can causes a collision as
the robot moves towards the target, then activate the
obstacle avoidance controller. Otherwise, the attraction to
the target controller is activated. Several simulation tests
were carried out to evaluate the performance of the
proposed control method for various environment
configurations.

Finally, we will prove the robustness of our proposed


approach used for mobile robots control. For that, a References
simulation result which presents the robot motion in a
cluttered environment is carried out (cf., Figure 15). Adouane, L. (2009) ‘Orbital obstacle avoidance algorithm for
reliable and on-line mobile robot navigation’, Conf. on
According to this figure, it is clear that the robot is able to Autonomous Robot Systems and Competitions, Portugal.
reach the target and to avoid obstacles. For obstacle
Aguiar, A.P., Hespanha, J.P. and Kokotovic, P.V. (2005)
avoidance, the robot follows the convergence circle of each ‘Path-following for nonminimum phase systems removes
detected obstacle in the appropriate direction (clockwise or performance limitations’, IEEE Trans. on Automatic Control,
counter clockwise). In addition, the generated trajectory is Vol. 50, No. 2, pp.234–239.
suitable and smooth. This demonstrates the efficiency of the Antonelle, G. and Chiaverini, S. (2004) ‘Experiments of fuzzy lane
proposed control strategy, even in a cluttered environment. following for mobile robots’, American Control Conf.,
pp.1079–1084.
Figure 15 Simulation result: robot motion in a cluttered Boujelben, M., Rekik, C. and Derbel, N. (2012) ‘Hierarchical
environment (see online version for colours) fuzzy controller for a nonholonomic mobile robot’,
Mediterranean Conf. on Control and Automation (MED),
pp.341–347, Spain.
Boujelben, M., Rekik, C. and Derbel, N. (2013) ‘Hierarchical
fuzzy controller to avoid mobile obstacle for a mobile robot’,
Int. Multi-Conf on Systems, Signals and Devices (SSD),
Hammamet, Tunisia.
Boujelben, M., Rekik, C. and Derbel, N. (2014) ‘A multi-agent
architecture with hierarchical fuzzy controller for a mobile
robot’, Int. J. of Robotics and Automation, Vol. 30, No. 3,
pp.289–298.
Boujelben, M., Rekik, C. and Derbel, N. (2015) ‘Mobile robot
navigation using fuzzy-sliding mode control in a cluttered
environment’, World Congress on Computer Applications
and Information Systems (WCCAIS), Hammamet, Tunisia.
Carona, R., Aguiar, A.P. and Gaspar, J. (2008) ‘Control of
unicycle type robots: tracking, path following and point
stabilization’, Jornadas de Engenharia Electrnica e
Telecomunicaes e de Computadores, pp.180–185, Lisbon,
Portugal.
Emery, R. and Balch, T. (2001) ‘Behavior-based control of a
non-holonomic robot in pushing tasks’, Proc. IEEE Int. Conf.
on Robotics and Automation, pp.2381–2388, Seoul, Korea.
6 Conclusions Fliess, M., Lvine, J., Martin, P. and Rouchon, P. (1995) ‘Flatness
and defect of non-linear systems: introductory theory and
In this paper, a new reactive control method for a mobile examples’, Int. J. of Control, Vol. 61, No. 6, pp.1327–1361.
robot navigation is presented. The control architecture is
164 M. Boujelben et al.

Gonzlez, I., Salazar, S. and Lozano, R. (2014) ‘Chattering-free Rojas, R. and Foerster, A.G. (2006) ‘Holonomic control of a robot
sliding mode altitude control a quad-rotor aircraft: real-time with an omnidirectional drive’, künstliche Intelligenz.
application’, J. Intelligent Robot Syst., Vol. 73, Nos. 1–4, Rossomando, F.G., Soria, C. and Carelli, R. (2014) ‘Sliding
pp.137–155. mode neuro adaptive control in trajectory tracking for
Hsu, C.F., Lin, C.M. and Yeh, R.G. (2013) ‘Supervisory adaptive mobile robots’, J. Intelligent Robot System, Vol. 74, Nos. 3–4,
dynamic RBF-based neural-fuzzy control system design for pp.931–944.
unknown nonlinear systems’, Appl. Softw. Comput., Vol. 13, Rubio, J.J. (2012) ‘Modified optimal control with a back
No. 4, pp.1620–1626. propagation network for robotic arms’, IET Control Theory
Indiveri, G., Paulus, J. and Oger, P.G.P. (2006) ‘Motion control of and Appl., Vol. 6, No. 14, pp.2216–2225.
Swedish wheeled mobile robots in the presence of actuator Saffiotti, A., Konolige, K. and Ruspini, E.H. (1995) ‘A multi
saturation’, Proc 10th annual RoboCup International valued-logic approach to integrating planning and control’,
Symposium. Artificial Intelligence, Vol. 76, Nos. 1–2, pp.481–526.
Janglova, D. (2004) ‘Neural networks in mobile robot motion’, Saghafinia, A., Ping, H.W. and Uddin, M.N. (2014) ‘Fuzzy
Int. J. of Advanced Robotic Systems, Vol. 1, No. 1, pp.15–22. sliding mode control based on boundary layer theory for
Jie, M.S., Baek, J.H., Hong, Y.S. and Lee, K.W. (2006) ‘Real time chattering-free and robust induction motor drive’, Int. J. Adv.
obstacle avoidance for mobile robot using limit-cycle and Manuf. Technol., Vol. 71, Nos. 1–4, pp.57–68.
vector field method’, Knowledge-Based Intelligent Selekwa, M.F., Dunlap, D., Shi, D. and Collins, E. (2008)
Information and Engineering Systems, Vol. 4251, No. 1, ‘Robot navigation in very cluttered environments by
pP.866–873. preference-based fuzzy behaviours’, Proc. Robotics and
Kaur, S. and Janardhanan, S. (2014) ‘Second order sliding mode Autonomous Systems, pp.231–246.
controller and online path planning for space rovers’, Int. J. Shao, N., Li, H., Wu, X. and Li, G. (2015) ‘Distributed
of Modelling, Identification and Control, Vol. 21, No. 3, containment control and state observer design for multi-agent
pp.321–329. robotic system’, Int. J. of Modelling, Identification and
Khatib, O. (1986) ‘Real time obstacle avoidance for manipulators Control, Vol. 23, No. 3, pp.193–203.
and mobile robot’, International Journal of Robotics and Solea, R., Filipescu, A. and Nunes, U. (2009) ‘Sliding-mode
Research, Vol. 5, No. 1, pp.90–98. control for trajectory-tracking of a wheeled mobile
Kim, D. and Kim, J. (2003) ‘A real-time limit-cycle navigation robot in presence of uncertainties’, Asian Control Conf.,
method for fast mobile robots and its application to robot pp.1701–1706.
soccer’, Robotics and Autonomous Systems, Vol. 42, No. 1, Soltine, J.J.E. and Li, W. (1991) Applied Nonlinear Control,
pp.17–30. Prentice-Hall, Englewood Cliffs, New Jersey.
Lee, J.H., Lin, C., Lim, H. and Lee, J.M. (2009) ‘Sliding mode Tunstel, E., Oliveira, M.A.A. and Berman, S. (2002) ‘Fuzzy
control for trajectory tracking of mobile robot in the RFID behavior hierarchies for multi-robot control’, Int. J. of
sensor space’, Int. J. of Control, Automation, and Systems, Intelligent Syst., Vol. 17, No. 5, pp.449–470.
Vol. 7, No. 3, pp.429–435.
Utkin, V.I., Guldner, J. and Shi, J. (1999) Sliding Mode Control in
Morin, P. and Samson, C. (2004) ‘Trajectory tracking for Electromechanical Systems, Taylor & Francis, London.
non-holonomic vehicles: overview and case study’, 4th Inter
Workshop on Robot Motion Control (RoMoCo), pp.139–153. Zhang, H., Liu, S. and Yang, S.X. (2006) ‘A hybrid
robot navigation approach based on partial planning and
Pirjanian, P. (1999) Behavior Coordination emotion-based behavior coordination’, Int. Conf. Intelligent
Mechanisms – State-of-the-art, Tech. Rep. IRIS-99-375. Robots and Systems, pp.1183–1188, Beijing, China.
Rekik, C., Djemel, M. and Derbel, N. (2008) ‘A discussion on Zhen, R., Chen, J., Wu, X., Zhu, Q. and Nouri, H. (2014) ‘Sliding
the optimal control of a robot manipulator by a hybrid mode control of uncertain switch systems with time-delay and
genetic-fuzzy controller’, Int. J. of Robotics and Automation, disturbance’, Int. J. of Modelling, Identification and Control,
Vol. 23, No. 3, pp.150–159. Vol. 21, No. 4, pp.362–369.
Rhif, A. (2014) ‘Sliding mode-multimodel stabilising control
using single and several sliding surfaces: simulation on an
autonomous underwater vehicle’, Int. J. of Modelling,
Identification and Control, Vol. 22, No. 2, pp.126–138.

You might also like