You are on page 1of 13

J Intell Robot Syst (2016) 81:131143

DOI 10.1007/s10846-015-0229-8

Platform for Teaching Mobile Robotics


Ernesto Fabregas Gonzalo Farias
Sebastian Dormido-Canto Mara Guinaldo
Jose Sanchez Sebastian Dormido Bencomo

Received: 21 March 2014 / Accepted: 27 March 2015 / Published online: 21 April 2015
Springer Science+Business Media Dordrecht 2015

Abstract This paper describes the development of a


motivating and innovative multi-robot formation control platform for laboratory experiments with mobile
robots. The platform is composed of two components: a simulator and an environment to experiment
with low cost wheeled mobile robots. The environment constitutes a ready to use test tool that provides
to engineering students the opportunity to simulate
and test many different formation and cooperation
control strategies with a real system. Currently the
platform is used in the Systems and Control Engineering Master program offered by the National University
of Distance Education (UNED) and the Complutense
University of Madrid (UCM) in Spain. The use of the
platform exposes students to hands-on laboratory sessions, contributing to their development as engineers.
Keywords Wheeled mobile robots
Formation control Engineering education

E. Fabregas () S. Dormido-Canto M. Guinaldo


J. Sanchez S. Dormido Bencomo
Departamento de Informatica y Automatica, Universidad
Nacional de Educacion a Distancia (UNED),
c/ Juan del Rosal 16 28040, Madrid, Spain
e-mail: efabregas@bec.uned.es
G. Farias
Pontificia Universidad Catolica de Valparaso,
Av. Brasil 2147, Valparaso, Chile
e-mail: gonzalo.farias@ucv.cl

1 Introduction
In the last years, a large number of research projects
have focused on including new technologies in education. As a result, a wide variety of educational
platforms with pedagogical purposes have emerged.
These platforms include videos, simulations, virtual
laboratories, teleconferences, and remote laboratories. Many of these initiatives use robotics as a basis
for their operation taking advantage that robotics
is a multidisciplinary field that combines issues
related to electric drives, mechatronic, control systems, autonomous systems and artificial intelligence
in a single system of small dimensions. This makes of
it a very versatile and motivating field for education at
any level [13].
In recent years, a long list of these applications
can be found in the literature. For example: in [1]
and [2] an introduction to technology using robots
with students of high school without previous experience in robotics is presented. The use of robotics to
teach engineering technologies to students at undergraduate levels is described in [3] and [4], whereas [5]
presents VEGO, an industrial-like modular vehicle for
robotics education at postgraduate level. Most of these
platforms include a set of tasks that students develop
with robots. The complexity of these tasks depends
mainly on two aspects: the educational level of the
students and the physical limitations of the robots
used.

132

The main advantages of this type of pedagogical platforms include: direct visualization and understanding of the underlying concepts of motion-control
systems; a strong basis for controller design, flexibility for testing and validation of different control
schemes, and a significant reduction in setting up the
lab sessions. These platforms use different kinds of
robots, for example; robots fixed to one physical location (e.g. robotic arms) or mobile robots (such as
wheeled or caterpillar).
Mobile robots are defined in the literature as automatic machines that are equipped with sensors to
interact with the environment and navigate through
it while attempting to achieve some objectives. The
complexity of the objectives can vary significantly
from light or line following, to obstacle detection and
avoidance in a dynamic environment, advanced signal
processing, motion control, wireless communication,
image processing, formation control, and many other
advanced topics [4].
Research in mobile robotics is divided into a wide
number of subfields [6] such as: robots localization
[7], relative and absolute position estimation [8], point
stabilization [9], obstacles detection and avoidance
[10], exploration and area mapping [11], path following and tracking control [12], etc. Despite all this
development, most of the research fields have been
developed and implemented on single mobile robots.
However, much less work has been carried out on distributed or multi-robot systems, where more than one
robot are coordinated.
Current research in multi-robot systems is divided
into many areas such as: biological inspirations [13],
cooperative-mapping-exploration [14], event based
communication [15], formation control [16], motion
coordination [17], etc. These research areas have different interesting challenges, which can be used in
education to understand fundamental concepts of control engineering. However, just a few of these areas
have been introduced in education, mainly due to the
cost and the complexity of these systems since they
need a communication infrastructure to guarantee a
proper behavior. That is why is important to develop
simulations to introduce this kind of experiments in
education.
In this sense, some simulators of multi-robots systems can be found in the literature. For example, [18]
presents the free and open source simulator ARGoS.
Which is focused on the real-time simulation of large

J Intell Robot Syst (2016) 81:131143

swarms of different kinds of robots. With this tool, the


experiments can be carried out in 2D and 3D, but only
on Mac and Linux platforms.
Meanwhile, Webots [19] is a development environment used to model, program and simulate different
mobile robots. With this platform, user can design
complex robotic setups, with one or several, similar
or different robots. Webots has been well documented
and continuously maintained for over 18 years. It is
currently used by over 1174 universities and research
centers worldwide. This tool is available for all typical
operating systems with a commercial license around
2300 CFH with academic discount.
Morover, V-REP [20] is, as its authors said, the
swiss army knife among robot simulators. This tool is
based on a distributed architecture: each object/model
can be individually controlled. V-REP has been developed during several years by many people and with
the collaboration of important companies like Toshiba
or Nokia.
This paper describes the components of the Robots
Formation Control Platform (RFCP); a web based
tool for simulation and real experimentation with
mobile robots with pedagogical purposes. The main
contribution of this work is summarized in the following three points: 1) An interactive simulator to
develop advanced experiment of formation control
with multi-robots systems; 2) an experimental environment to develop laboratory sessions with real
mobile robots, and 3) a low-cost robotic platform composed of Moway robots [24]. This platform is much
cheaper than previously mentioned platforms, as well
as other well-known alternatives such as Khepera [25]
and LEGO Mindstorms kit [21]. It also allows students to conduct experiments with mobile robots in a
dynamic environment. For example, they can change
some parameters of the simulation in a simple way
without reprogramming the simulation: number of
robots, number of obstacles, controller parameters,
etc. With this platform, students can learn, understand,
and apply a large number of theoretical concepts by
completing hands-on laboratory sessions.
The structure of this paper has been organized
as follows. In Section 2 the contents related to the
mobile robots and their position control are presented. In Section 3 the components of the platform
are described in detail. In Section 4 a practical session with the platform is described. Finally, the main
conclusions are summarized in Section 5.

J Intell Robot Syst (2016) 81:131143

133

2 Differential Mobile Robots


In this section theoretical aspects of the differential whiled mobile robots are presented: the mathematical model, the aspects related to the position control, and the obstacles avoidance method
implemented.
2.1 Kinematic Model and Position Control
A differential wheeled robot is a mobile robot whose
movement is based on two separately driven wheels
placed on each side of its body. Equations 1 and
2 show the instant linear velocity (), which is a
result of the linear velocities of the left driven wheel
(L ) and the right driven wheel (R ). R is the distance from the center between the wheels to the
ICC (Instantaneous Center of Curvature), L is the
distance between the wheels, and is the angular
velocity.
R + L
2

L
= R
2

=
R,L

(1)

In order to achieve the control objective, the distance (d) and the angle between these two points ()
are calculated with Eqs. 4 and 5.
d=




yp yc

(2)
= tan1

The two drive velocities are always two parallel vectors and, at the same time, perpendicular
to the wheels axis. Furthermore, the wheels are
assumed to roll without slipping. These conditions
impose some restrictions known as non-holonomic
constraints. The robot can change its direction by
varying the relative rotation of the wheels, so it does
not need an additional steering movement to turn,
in respect to the ICC must be the same for both
wheels.
The kinematic model of the robot in cartesian coordinates is given by Eq. 3, where is the heading
direction angle of the robot [26, 27].

xc = cos ( )
yc = sin ( )

Fig. 1 Point stabilization of the robot


2
+ xp xc

yp yc
xp xc


(5)

Figure 2 shows the control diagram. The values of


(d) and () are calculated in the block COMPUTE.
The robot tries to minimize the orientation error, e =
, but, at the same time, tries to make zero the
distance to the desired point (d = 0). This experiment
is known as point stabilization. The block COMPUTE implements Eqs. 4 and 5 using the goal point
and the current position of the robot. The block CONTROL represents the control action that is computed
by manipulating and .
The VFH (Vector Field Histogram) [28] algorithm
is used to avoid obstacles. The method includes a histogram grid of the vision margin of the robot which
is a circular area around the robot. This method allows

(3)

The control objective is defined as how to achieve


a desired point P (xp , yp ) from the current position
(xc , yc ). Figure 1 describes an example of the variables involved in this experiment.

(4)

Fig. 2 Control block diagram

134

J Intell Robot Syst (2016) 81:131143

a fast, continuous, and smooth motion of the robot


avoiding obstacles in a dynamical environment. In this
way, the speed is the maximum in the absence of
obstacles. The robot tries to maintain this speed during the trajectory unless being forced to slow down by
the VFH algorithm to the instantaneous speed and to
change the angular velocity according to Eqs. 6 and 7.
=


1

max

= max sin (e )

(6)
(7)

Where max is the maximal allowable angular


velocity for the robot that will be achieved when the
orientation error, e = 90 , and  is defined in
Eqs. 8 and 9.


hc

(8)
= max 1
hm


hc = min hc , hm

(9)

Where max is the maximum linear velocity, hm is


a constant empirically determined to cause a reduction in the speed in presence of obstacles, and hc is the
value of the histogram. If hc > 0 then an obstacle lies
ahead of the robot. Large values of hc means a bigger obstacle lies ahead or an obstacle is very close to
the robot. In both cases it is likely to require a change
of the direction, and to reduce the speed to allow the
steering wheels to turn into the new direction. The hm
value is determined empirically in order to cause a sufficient reduction in speed. The robot reduces the speed
with Eqs. 8 and 9 in advance of a steering maneuver. In
this way, speed can be further reduced proportionally
to the angular velocity [28].
Meanwhile, the VFH+ [29] method is and improvement of VFH. This algorithm offers several improvements that result in smoother robot trajectories and
greater reliability. VFH+ reduces some of the parameter tuning of the original VFH method by explicitly compensating the robot width and the threshold
hysteresis. The algorithm selects the most suitable
direction (candidate direction) based on the masked
polar histogram and a cost function. But, the algorithm
sometimes mades undesirable choice.
To improve the behavior of this algorithm, authors
created VFH* [30]. This method analyzes the consequences of heading towards each candidate direction
before making a final choice for the new direction

Fig. 3 Communication flow diagram

of motion. For each candidate direction, VFH* computes the new position and orientation that the robot
would have after moving for a projected step distance. At every projected position, VFH+ is again
used to construct a new polar histogram based on
the map information. This histogram is then analyzed
for candidate directions, called projected candidate
directions.
2.2 Robots Formation Control
The formation control is carried out in a master-slaves
way. Each robot needs to know its current position
(xc , yc ) and the desired point P (xp , yp ) to reach the
formation (see Fig. 1). Figure 3 shows the communication flow between the robots and the computer (M
Master; S1 Slave1 ; S2 Slave2 ; S3 Slave3 ). All
robots receive their current absolute positions (PM ,
P1 , P2 , P3 ) and the desired point (reference). Once
all robots have received their positions, the master
robot sends its own position to the slave robots (Mp
(SnRef )) where n indicates the corresponding slave.
The slave robots use the masters position as a reference to reach the formation, since the formation is
always reached around the master robot. Meanwhile,

J Intell Robot Syst (2016) 81:131143

135

the master robot receives its reference (MR ) from the


student who conducts the experiment.
The master robot implements Eqs. 4 and 5 to
compute its control law. The slave robots implement
Eqs. 10 and 11 where the point (xd , yd ) represents the
distance from the master to the corresponding slave
in the formation. For example, in a circular formation this distance is the radius of the circle around the
master robot.

d =


2 
2
yp yc yd + xp xc xd


yp yc yd
= tan1
x p xc xd

(10)
(11)

3 RFCP: Robots Formation Control Platform


The RFCP is a platform developed specifically for formation control experiments with mobile robots. This
platform consists of two main parts: the RFC SIM
which is a tool for performing computer simulation
experiments and the RFC EXP which is a real multirobots environment for laboratory sessions.
3.1 RFC SIM: Robots Formation Control Simulator
The RFC SIM is a simulator developed using Easy
Java Simulations (EJS) which is a free software tool
for rapid creation of simulations in Java [31]. This tool
has high level graphic capabilities and an increased
degree of interactivity. EJS is different from most
other authoring tools in the sense that it was designed
to make programming easier not for professional programmers but for science students and teachers.
The main purpose of RFC SIM is to simulate experiments of formation control and obstacle avoidance
with mobile robots. The GUI of the simulator is shown
in Fig. 4. This window is divided into five main panels.
With panel No.1 students can save experiments, load
experiments, get some help, manage the execution
of the simulation, select the formation (free, circular,
line) and establish the number of robots and obstacles
for the experiments. Panel No. 2 shows the scenario
of the experiments with the obstacles, the robots and
a trace of the trajectory followed by each robot. Students can change the robots and obstacles positions
by dragging and dropping them during an experiment.

The effect of these actions is different when the formation mode is free. In the first case, the student can set
a new formation by dragging and dropping the robots.
In other cases drag and drop robots can be used as a
disturbance in order to test a control strategy.
Panel No. 3 allows students to define the properties
of the selected obstacle avoidance algorithm (VFH,
VFH+ or VFH*). For example, the properties of the
histogram and the vision margin size of the robots.
Panel No. 4 is a panel to define physical properties of
the robots (minimum turning radius and control law)
and obstacles (size, velocity and security margin size
around them). Panel No. 5 is a tabbed panel with two
tabs. In the first tab two graphics are shown: the position of the robots and the control law signals. In the
second tab, a polar histogram of the master robot is
shown. Figure 5 depicts an experiment of obstacles
avoidance (VFH+ algorithm) with the RFC SIM. The
arena is shown in the left side with a typical obstacles (A, B, C, D) configuration. The robot can see
the obstacles situated inside the vision margin (gray
circumference). On each step of simulation the robot
builts a Histogram where the obstacles represent occupied/free sectors of its environment. In the example
of Fig. 5, the obstacles (A, B and C) are included in
the Histogram because these obstacles are inside the
vision margin. The corresponding level of each obstacle in the representation depends of the distance from
the robot to the obstacle. Large values in the Histogram indicate that the obstacle is very close to the
robot. The occupied sectors around the robots are represented with red color and the free sectors with green
color. With the values of the occupied/free sectors the
robot can calculate its velocity to avoid the obstacles
and reach the destination point (represented with a red
cross). The simulator is available in: http://unilabs.dia.
uned.es/mod/ejsapp/view.php?id=1157.
3.2 RFC EXP: Robots Formation Control
Experimental Environment
The other part of the platform is the RFC EXP. This is
the experimental environment that has been developed
to carry out formation control strategies experiments
with mobile robots in the laboratory. To develop this
kind of experiments, the robots need to know their
absolute positions and to communicate between them.
The setup is composed of five hardware components
(PC, Moway robots, CCD Camera, IP Camera and RF

136

J Intell Robot Syst (2016) 81:131143

Fig. 4 EJS View of RFC SIM

USB Module) and two software components (Gateway Module and SwisTrack) that are deeply related.
Figure 6 shows the architecture and the relations
between these elements.
The PC has a CCD Camera connected via FireWire
port. This camera is installed on the ceiling of the laboratory and it obtains live images of the experiments.
These images are processed by SwisTrack which is an
open source software tool developed at the Polytechnic
Federal School of Lausanne (EPFL) for the tracking
of robots [32]. This application computes the absolute
position of each robot and builds a data packet with
this information. This packet is sent via TCP/IP port
to the Gateway Module which is an application developed in Visual C#. This module performs three main
tasks: a) to process the packet received from SwisTrack; b) to send the information to the corresponding

robot using wireless communication (RF USB Module), and c) to receive and respond the request from
the RFC SIM. The RF USB Module is a hardware
component for the wireless communication between
the robots and the PC using radio-frequency. Students
can interact with the robots through Internet using
RFC SIM and visualize the behavior of the experiments using the video streaming of the IP Camera
[33, 34].
The most important components of this setup
are the Moway robots. They are autonomous small
wheeled mobile robots designed mainly to perform
practical applications, teaching robotics, technology,
electronics, and control. The main components of
these robots are: two independent servo motors, a
light sensor, a temperature sensor, two infrared line
sensors, four LED diodes, a three-axis accelerometer

J Intell Robot Syst (2016) 81:131143

137

Fig. 5 Obstacles avoidance


with RFC SIM

and a wireless module for communication by radiofrequency. All these peripherals are connected to a
PIC micro-controller that governs the robot [24].
3.3 Experimental Results with the Platform
Figure 7 shows a sequence representing an experience of formation control with the experimental
environment (from t=0s to t=26s). The experiment is
composed by five slave robots (marked with numbers from 1 to 5) and one master robot (marked with
the letter M) in a circular formation where the master robot is in the center of the circle. As it was

Fig. 6 RFC architecture

explained before, slave robots use the position of the


master robot as reference to keep the formation around
it. The experiment starts at t=0s when the student
clicks on the video streaming to change the reference of the master robot (represented by the red small
cross). Master robot tries to reach the new position
and the formation is lost during the maneuver. In
this case the formation is carried out in no cooperative way, i.e., the master robot does not take into
account the position of the slave robots during the
experiment.
After seven seconds (t=7s), the master robot is
near to reach the reference while the slave robots

138

J Intell Robot Syst (2016) 81:131143

Fig. 7 Experiment of robots formation control

are trying to reach their desired position in the formation. Slave robots take more time to reach the
formation because their references are the old position of the master robot which is always changing
during its movement. Besides, each robot considers
the rest of robots as obstacles and tries to avoid each
other. For these reasons the trajectory to the destination position is not always a straight line. After
t=16s the master robot has reached its goal position and the slave robots have reached their positions in the formation. At this time the reference of
the master robot is changed again to carry out the
experiment with a different reference. As in the previous case, at t=19s the master robot is near to reach
its desired position while the slave robots are far
from their desired positions. At t=26s all robots have
reached their positions, so the formation is reached
again.
Figure 8 shows the collected data of the robot
positions during the experiment. The position of the
master robot is represented with red starts and the
slave robots are represented with different color dotted
lines. The axes of the coordinates are in centimeters
and the black dotted lines represents the circle formation around the master robot position. As can be

seen the trajectories of the robots depend on two main


factors: the orientation of the robot at the beginning
of the movement; and the detection and avoidance
of obstacles in the trajectories. In some cases
when a robot is near to the desired position,
the linear velocity of the robot is too small in
comparison with the angular velocity because the
distance to the goal is too small, that is why
the robot turns around the destination point until
it stops.

4 How the System is Used in a Laboratory Session


In this section, a practical laboratory session carried out by students is described: documentation, steps to follow, and interface applications
description.
4.1 Documentation
The laboratory session/experiment is hosted in UNILabs which is a network formed by many universities
to share their laboratory resources (http://unilabs.
dia.uned.es/blog/index.php?entryid=3&lang=en).

J Intell Robot Syst (2016) 81:131143

139

Fig. 8 Experiment of
robots formation control
data

This platform has been developed in our Department


using Moodle. Each student of the Master Program
must create a user to access to their corresponding
laboratory sessions.
Each laboratory session/experiment has its own
documentation. This documentation consists essentially of the following elements:

Practice Guide: As its name suggests, is a guide


for the students. It contains an introduction to
the laboratory, the objectives of the sessions
(to design a position control for the robots), a
description of the system (the group of robots
in this case); a mathematical model of the
system (differential wheeled mobile robots
described in Section 2), the experiments (position control, formation control and obstacles
avoidance, also described in Section 2) and,
finally, a description of the tasks to carry out each
experiment.
Tasks Protocol: This document describes the
steps to follow in each experimental session.
Applications Interfaces: This document
describes the interfaces of both applications
(simulator and remote lab).
References: It contains the bibliography related to
the theoretical contents involved in the laboratory
sessions.

4.2 Virtual Laboratory


To start a virtual session with the simulator, the student must log in the UNILabs platform and select the
session titled Moway Robots Laboratory (Virtual Laboratory with Moway Robots). Then, the student should
download the documentation of the lab experiment
and study the content starting from the Practice Guide
document. Once this is completed, the student must
follow step by step the Tasks Protocol and perform the
experiments described in this document:
1. Position control of the robot: This experiment is
intended to familiarize students with the dynamics
of the robot and how this constraints its movement, for example, the limitations of motion that
introduces a very large turning radius. It also
aims to familiarize students with some predefined
position control algorithms. The student should
proceed as follows:
(a) Select a predefined control algorithm, change
several times the destination of the robot, and
observe its behavior using the animations and
the graphics.
(b) Change the physical properties of the robot
(e.g. turning radius) and observe the influence
of these parameters on the movement of the
robot.

140

J Intell Robot Syst (2016) 81:131143

(c) Modify the parameters of the selected control and observe the influence in the position
control.
(d) Repeat these three previous steps with other
control algorithms.
2. Position control of the robot with obstacles
avoidance: This experiment consists in adding
obstacles to the already described scenario. The
main objective is to introduce the obstacles avoidance algorithms in the position control of the
robots in a dynamical environment. The student
should proceed as follows:
(a) Select a predefined control strategy and add
obstacles to the arena (as it is explained in the
Applications Interfaces document).
(b) Change several times the destination of the
robot and observe its behavior using the animation and the graphics. Observe the Polar
Histogram representation in the corresponding tab.
(c) Uncheck the Obstacles avoidance option,
change the destination of the robot and
observe its behavior.
(d) Check the Obstacles avoidance option and
observe the behavior of the robot for each
obstacle avoidance algorithm (VFH, VFH+
and VFH*).
(e) Compare the results for the different strategies and their parameters (Min Valley, hm,
TauL and TauH).
(f) Check the Moving obstacles option. With
this option, obstacles start moving. This transforms the arena into a more dynamic scenario.
Observe the behavior of the robots in these
conditions. Change the velocity of the obstacles and observe the results.
3. Formation control: This experiment consist in
adding more robots to the arena to perform formation control. The main objective is to coordinate
a group of robots to reach a common task. In this
case, the experiments are carried out in a masterslaves architecture using the communication flow
diagram of Section 2.2. Other important aspect is
the level of cooperation in the formation. That
is, if the master take into account or not the positions of the slaves. The student should proceed as
follows:

(a) Add more robots to the arena.


(b) Select the formation type (Line, Circle or
Free).
(c) Change the destination point of the master
robot and observe the behavior of the system.
(d) Drag and drop a slave robot to introduce a
disturbance into the formation. What happens
with the formation?
(e) Drag and drop the master robot to introduce a
disturbance into the formation. What happens
with the formation?
(f) Check the Cooperative option and change
the destination point of the master robot.
What happens?
(g) Change the Kf value (cooperative level
parameter) and change the destination point
of the master robot. What happens with the
formation? Describe the influence of Kf over
the behavior of the master robot.
4. Control design: This task includes the design
and implementation of an algorithm to control the
position of the robots. Since the subject belongs
to a Master Program the student should be able
of designing a control algorithm to control the
position of the robot. The implementation consists
in programming in Java code the proposed controller. The developed code can be tested using the
simulator and the tab Custom Controller.
4.3 Remote Laboratory
To start a remote session with the laboratory, the student must log in the UNILabs platform and select
the Practice titled Moway Robots Laboratory (Remote
Laboratory with Moway Robots). Once the student has
completed the virtual session she/he is ready to face
with the real experiment according to the following
Tasks Protocol:
1. Position control of the robot: This is equivalent
to the experiment performed with the virtual lab.
2. Position control of the robot with obstacles
avoidance: This experiment is also similar to the
experiment in virtual mode. However, the real
equipment has some constraints such as the existence of sensors to detect obstacles only at the
front of the robot. Hence, robots have to turn left
and right to detect the obstacles, and the algorithms need to be adapted. The student selects the

J Intell Robot Syst (2016) 81:131143

control law from the different predefined algorithms and observes the behavior of the robot
through the web-cam.
3. Formation control: This experiment is also similar to the experiment in virtual mode. As in virtual
mode, the main objective of the experiment is to
coordinate a group of robots to reach a common
task. The following procedure is followed:
(a) Add more robots to the arena (the robots are
added by the instructor which is in the lab).
(b) Select the formation type (Line, Circle or
Free).
(c) Change the destination point of the master
robot and observe the behavior of the system.
(d) The instructor takes a slave robot and places
it at a different position as a way to simulate
a disturbance to the formation. The student
must observe the behavior of the formation.
(e) The previous result is repeated but with the
master robot.
(f) Check the Cooperative option and change
the destination point of the master robot.
What happens?
(g) Modify the value of Kf (cooperative level
parameter) and change the destination point
of the master robot. What happens with the
formation? Describe the influence of Kf over
the master robot behavior.
4. Control design: In this task, the students test the
controller design in the simulation phase over the
real system. To do so, the student needs to send
the code to the instructor to load the program
in the robot. This can be considered as a drawback of the platform, but we are working to sort
this out. The data of the experiments are stored
in the server and the student can download them
later.
Once the virtual and remote sessions are completed,
the student has to send a report to the instructor with all the results obtained in the laboratory
session.

5 Conclusions and Future Works


In this paper the platform RFCP has been presented.
This tool is a low-cost and interactive environment

141

for experimentation with mobile robots at postgraduate level. This platform is used in the Systems
and Control Engineering Master Program offered
by the National University of Distance Education of
Spain (UNED) and Complutense University of Madrid
(UCM). RFCP is used in one of the eight modules, related with robotics, in which this program is
divided.
The use of the platform exposes students to handson learning, contributing to their development as engineers. At the same time, they get motivated by simulating and experimenting with mobile robots, possibly
because they feel they are dealing with real and novel
problems. Furthermore, they can test their results and
quickly detect and correct their mistakes, contributing in this way to understand relevant concepts in an
attractive environment.
The platform is prepared to implement other experiments with different goals. In a near future, new challenging experiments will be proposed: new control
strategies, other obstacles avoidance algorithms and
to incorporate another kind of robots to the platform.
At the same time, some drawbacks of the platform
should be alleviated, for example: a) the implementation of the robot controller in remote mode (from
the client side); b) the connection of the robots to a
PC to charge the battery and to load the code; c) the
introduction of disturbances over the system in remote
mode.

6 Compliance with Ethical Standards


Funding: This study was funded by the Spanish Ministry of Economy and Competitiveness (grant number
DPI2012-31303).

Conflict of interests
conflict of interest.

The authors declare that they have no

References
1. Jimenez, E., Bravo, E., Bacca, E.: Tool for experimenting
with concepts of mobile robotics as applied to childrens
education. IEEE Trans. Educ 53(1), 8895 (2010)
2. Barak, M., Zadok, Y.: Robotics projects and learning concepts in science, technology and problem solving. INT. J.
TECHNOL. DES. ED 19(3), 289307 (2009)

142
3. Gomez-De-Gabriel, J., Mandow, A., Fernandez-Lozano, J.,
Garca-Cerezo, A.: Using LEGO NXT mobile robots with
LabVIEW. IEEE Trans. Educ 54(1), 4147 (2011)
4. Chew, M., Demidenko, S., Huang, L., Messom, C., Sen,
G., Watts, M.: Simple Mobile Robots for Introduction into
Engineering. IEEE IMTC. P. (1), 797802 (2009)
5. Navarro, P., Fernandez, C., Sanchez, P.: Industrial-Like
Vehicle Platforms for Postgraduate Laboratory Courses on
Robotics. IEEE T. on Educ. 56(1), 3441 (2009)
6. Dhaouadi, R., Sleiman, M.: Development of a modular
mobile robot platform: Applications in motion-control education. IEEE T. Ind. Electron 5(4), 3545 (2011)
7. Hyeonwoo, Ch., Kim, S.: Mobile Robot Localization Using
Biased Chirp-Spread-Spectrum Ranging. IEEE T. Ind.
Electron 57(8), 28262835 (2010)
8. Xing, X., Byung-Jae, C.h.: Position estimation algorithm
based on natural landmark and fish-eyes lens for indoor
mobile robot. Int. Conf. Comm. Sen. Net. (1), 596600
(2011)
9. Zhengcai, C., Yingtao, Zh., Shuguo, W.: Trajectory tracking
and point stabilization of noholonomic robot. IEEE/RSJ.
Int. Conf. Int. Rob. Sys. (1), 13281333 (2010)
10. Bonin-Font, F., Burguera, A., Ortiz, A., Oliver, G.: Combining obstacle avoidance with robocentric localization in a
reactive visual navigation task. IEEE Int. Conf. Ind. Tech.
(1), 1924 (2012)
11. Chaos, D., Chacon, J., Lopez-Orozco, J.A., Dormido, S.:
Virtual and Remote Robotic Laboratory Using EJS MATLAB and LabVIEW. Sensors 13(2), 25952612 (2013)
12. Aneesh, D.: Tracking controller of mobile robot. IEEE Int.
Conf. Elect. Inf. Tech. (1), 343349 (2012)
13. Lee-Johnson, C.P., Carnegie, D.A.: Mobile robot navigation
modulated by artificial emotions. IEEE Tran. Sys. Man.
Cyb 40(2), 469480 (2010)
14. Defoort, M., Veluvolu, K.C.: A Motion Planning Framework with Connectivity Management for Multiple Cooperative Robots. J. Intell. Robot. Syst 75(2), 343357 (2014)
15. Guinaldo, M., Farias, G., Fabregas, E., Sanchez, J.,
Dormido-Canto, S., Dormido, S.: An interactive simulator
for networked mobile robots. IEEE Net 26(3), 1420 (2012)
16. Xue, D., Yao, J., Chen, G., Yu, Y.: Formation control of networked multi-agent systems. Cont. Theo. App 4(10), 2168
2176 (2010)
17. Kostic, D., Adinandra, S., Caarls, J., Nijmeijer, H.:
Collision-free motion coordination of unicycle multiagent systems. Ame. Cont. Conf. (1), 31863191
(2010)
18. Pinciroli, C., Trianni, V., OGrady, R., Pini, G., Brutschy,
A., Brambilla, M., Mathews, N., Ferrante, E., Di Caro, G.,
Gambardella, L.M.,
Ducatelle, F., Stirling, T., Gutierrez, A.,
Dorigo, M.: ARGoS: a Modular, Multi-Engine Simulator
for Heterogeneous Swarm Robotics, Proceedings of IROS,
50275034 (2011)
19. Guyot, L., Heiniger, N., Michel, O., Rohrer, F.: Teaching
robotics with an open curriculum based on the epuck robot,
simulations and competitions. In: Proceedings of the 2nd
International Conference on Robotics in Education. Vienna,
Austria (2011)

J Intell Robot Syst (2016) 81:131143


20. Rohmer, E., Singh, S.P.N., Freese, M.: V-REP: A versatile
and scalable robot simulation framework. Int. Robot. Syst.
(IROS), 13211326 (2013)
21. NXT LEGO Mindstorms Robots http://www.mindstorms.
lego.com (2012)
22. Benedettelli, D., Ceccarelli, N., Garulli, A., Giannitrapani,
A.: Experimental validation of a decentralized control law
for multi-vehicle collective motion. IEEE/RSJ Int. Conf.
Int. Rob. Sys. (2007)
23. Benedettelli, D., Casini, M., Garulli, A., Giannitrapani, A.,
Vicino, A.: A LEGO Mindstorms experimental setup for
multi-agent systems (2009)
24. Bizintek Innova, Moway Robots. http://www.moway
-robot.com (2012)
25. KTeam Mobile Robotics, Khepera Robots. http://www.
k-team.com/mobile-robotics-products/khepera-ii (2012)
26. Chwa, D., Hong, S., Song, B.: Robuts posture stabilization
of wheeled mobile robots in polar coordinates. In: Proc.
17th Int. Sym. Math. Theo. Net. Sys. Kyoto. Japan (2006)
27. Jinyan, Sh., Guangming, X., Junzhi, Y., Long, W.: Leaderfollowing formation control of multiple mobile robots.
Proc. 2005 IEEE Int. Symp. Med. Conf. Cont. Aut. Int.
Cont 62(1), 808813 (2005)
28. Borenstein, J., Koren, Y.: The vector field histogram-fast
obstacle avoidance for mobile robots. IEEE Trans. Rob. Aut
7(3), 278288 (1991)
29. Ulrich, I., Borenstein, J.: VFH+ : Reliable Obstacle Avoidance for Fast Mobile Robots. In: Proceedings of the 1998
IEEE International Conference on Robotics and Automation. Leuven, Belgium, May 1621, 15721577 (1998)
30. Ulrich, I., Borenstein, J.: VFH*: Local obstacle avoidance
with look-ahead verification. International Conference on
Robotics and Automation (ICRA 2000), 2505?2511, San
Francisco, CA (2000)
31. F Esquembre, Easy Java Simulations (EJS) http://fem.um.
es/Ejs/ (2012)
32. Lochmatter, T., Roduit, P., Cianci, C., Correll, N.: SwisTrack - A flexible open source tracking software for multiagent systems. IEEE/RSJ 2008 Int. Conf. Inte. Rob. Sys.
Nice. France (2008)
33. Duro, N., Dormido, R., Vargas, H., Dormido-Canto, S.,
Sanchez, J., Farias, G., Dormido, S., Esquembre, F.: An
Integrated Virtual and Remote Control Lab: The ThreeTank System as a Case Study. Comp. Sci. Eng 10(4), 5059
(2008)
34. Vargas, H., Sanchez, J., Dormido, S., Salzmann, C., Gillet,
D., Esquembre, F.: Web-Enabled Remote Scientific Environments. Comp. Sci. Eng 11(3), 3646 (2009)

Ernesto Fabregas received the B.S. in Automatic Control in


2004 and the M.S. degree in Digital Systems in 2008 from Polytechnic University Jose Antonio Echeverra (CUJAE), Havana,
Cuba, and the Ph.D. degree in Computer Sciences from UNED,
Madrid, in 2013. His current research interests include control
of mobile robots, virtual and remote laboratories and engineering education.

J Intell Robot Syst (2016) 81:131143


Gonzalo Farias received the degree in Computer Science from
the De la Frontera University, Temuco, Chile, in 2001 and
the Ph.D. in Control Engineering from the Spanish University for Distance Education (UNED) in 2010 and the Ph.D in
Computer Science from the Complutense University of Madrid
(UCM) in 2013. Since 2012, he has been with the Electrical
Engineering School at Pontificia Universidad Catolica de Valparaiso (PUCV). His current research interests include machine
learning, simulation and control of dynamic systems, and engineering education.

Sebastian Dormido-Canto received the M.S. degree in Electronic Engineering from Madrid Pontificia de Comillas University, Madrid, Spain, in 1994 and the Ph.D. degree in Sciences
from UNED, Madrid, in 2001. He is Associate Professor in
the UNED Department of Computer Sciences and Automatic
Control since 2003. His current research interests are the analysis and design of control systems via the Internet, automatic
learning with big data and high performance interconnection
networks for cluster of workstations.

Mara Guinaldo received the M.S. degree in Physics and


the B.S. degree in Computer Engineer from the University of
Salamanca, Spain, in 2008 and the Ph.D. degree in Computer
Sciences from UNED, Madrid, in 2013. Her research interests include networked control systems, event-based control and
networked control of multi-agent systems.

143
Jose Sanchez received the M.S. degree in computer sciences
from Polytechnic University, Madrid, Spain, in 1994 and the
Ph.D. degree in sciences from UNED, Madrid, in 2001. He has
been an Assistant Professor in the UNED Department of Computer Sciences and Automatic Control since 1993. His current
research interests are networked control systems, event based
control and engineering education

Sebastian Dormido Bencomo received the B.S. degree in


physics from Complutense University, Madrid, Spain, in 1968
and the Ph.D. degree in science from Basque Country University, Bilbao, Spain, in 1971. In 1981, he was appointed
Professor of Control Engineering at UNED, Madrid. His scientific activities include computer control of industrial processes,
model-based predictive control, robust control, and model and
simulation of continuous processes. He has authored or coauthored more than 250 technical papers in international journals and conferences. From 20012006 has been President of
the Spanish Association of Automatic Control, CEA-IFAC.
In 2007 received a Doctor Honorary Degree from Universidad de Huelva, in 2008 the National Automatic Control prize
from IFAC Spanish Committee and in 2014 received a Doctor
Honorary Degree from Universidad de Almera.

You might also like