Professional Documents
Culture Documents
3, 2016 155
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.
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.
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
ϕ = θ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 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).
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 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.
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.