13 pag - art%3A10.1007%2Fs10846-015-0229-8

download 13 pag - art%3A10.1007%2Fs10846-015-0229-8

of 6

Transcript of 13 pag - art%3A10.1007%2Fs10846-015-0229-8

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    1/13

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    2/13

    132 J Intell Robot Syst (2016) 81:131–143

    The main advantages of this type of pedagogi-

    cal platforms include: direct visualization and under-

    standing of the underlying concepts of motion-control

    systems; a strong basis for controller design, flexi-

    bility 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 loca-

    tion (e.g. robotic arms) or mobile robots (such as

    wheeled or caterpillar).

    Mobile robots are defined in the literature as  auto-

    matic 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 follow-

    ing 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 dis-tributed 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 dif-

    ferent interesting challenges, which can be used in

    education to understand fundamental concepts of con-

    trol engineering. However, just a few of these areas

    have been introduced in education, mainly due to thecost 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 sys-

    tems 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

    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 environ-

    ment used to model, program and simulate different

    mobile robots. With this platform, user can design

    complex robotic setups, with one or several, similaror 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 devel-

    oped during several years by many people and withthe 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 fol-

    lowing three points: 1) An interactive simulator to

    develop advanced experiment of formation control

    with multi-robots systems; 2) an experimental envi-

    ronment to develop laboratory sessions with realmobile robots, and 3) a low-cost robotic platform com-

    posed 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 stu-

    dents 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 pre-

    sented. In Section  3 the components of the platform

    are described in detail. In Section   4   a practical ses-

    sion with the platform is described. Finally, the main

    conclusions are summarized in Section 5.

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    3/13

    J Intell Robot Syst (2016) 81:131–143 133

    2 Differential Mobile Robots

    In this section theoretical aspects of the differen-

    tial whiled mobile robots are presented: the math-

    ematical model, the aspects related to the posi-

    tion 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 dis-

    tance from the center between the wheels to the

     ICC   ( Instantaneous Center of Curvature),   L   is thedistance between the wheels, and   ω   is the angular

    velocity.

    ν   =νR  + νL

    2(1)

    νR,L   =  ω

    R ±

    L

    2

      (2)

    The two drive velocities are always two paral-

    lel 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 coor-

    dinates is given by Eq.   3, where   θ   is the heading

    direction angle of the robot [26, 27].

    ẋc   = νcos (θ )

    ẏc   = νsin (θ )

    θ̇   = ω

    (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 vari-

    ables involved in this experiment.

    Fig. 1   Point stabilization of the robot

    In order to achieve the control objective, the dis-

    tance (d ) and the angle between these two points (α)

    are calculated with Eqs. 4 and 5.

    d   =

     yp  −  yc

    2+xp  −  xc

    2(4)

    α  = tan−1yp  − 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   COM-

    PUTE   implements Eqs.  4 and 5 using the goal point

    and the current position of the robot. The block  CON-

    TROL   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 his-

    togram grid of the “vision margin” of the robot which

    is a circular area around the robot. This method allows

    Fig. 2   Control block diagram

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    4/13

    134 J Intell Robot Syst (2016) 81:131–143

    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 dur-

    ing 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

      (6)

    ω  = ωmaxsin (θ e)   (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.

    ν = νmax

    1 − h

    c

    hm

      (8)

    hc   = minhc, hm

      (9)

    Where νmax   is the maximum linear velocity,  hm   is

    a constant empirically determined to cause a reduc-

    tion 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 big-

    ger 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  hmvalue is determined empirically in order to cause a suf-

    ficient 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 improve-

    ment of  VFH . This algorithm offers several improve-

    ments that result in smoother robot trajectories and

    greater reliability.  VFH + reduces some of the param-

    eter tuning of the original   VFH   method by explic-

    itly 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 conse-

    quences 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*  com-

    putes the new position and orientation that the robot

    would have after moving for a projected step dis-

    tance. 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 communi-

    cation flow between the robots and the computer (M −

    Master; S 1 −Slave1; S 2 −Slave2; S 3 −Slave3). All

    robots receive their current absolute positions (P M ,

    P 1,  P 2,  P 3) and the desired point (reference). Once

    all robots have received their positions, the master

    robot sends its own position to the slave robots (M p(S nRef )) where   n   indicates the corresponding slave.

    The slave robots use the master’s position as a ref-

    erence to reach the formation, since the formation is

    always reached around the master robot. Meanwhile,

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    5/13

    J Intell Robot Syst (2016) 81:131–143 135

    the master robot receives its reference (M R) 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 forma-tion this distance is the radius of the circle around the

    master robot.

    d   =

     yp  −  yc  − yd 

    2+xp  − xc  −  xd 

    2(10)

    α   = tan−1yp  −  yc  −  yd 

    xp  −  xc  −  xd 

      (11)

    3  RFCP : Robots Formation Control Platform

    The RFCP is a platform developed specifically for for-

    mation 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 multi-

    robots 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 pro-

    grammers but for science students and teachers.

    The main purpose of  RFC SIM  is to simulate exper-

    iments 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. Stu-

    dents can change the robots and obstacles positions

    by dragging and dropping them during an experiment.

    The effect of these actions is different when the forma-

    tion 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 posi-

    tion 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 . Thearena is shown in the left side with a typical obsta-

    cles (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 occu-

    pied/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 obsta-

    cle in the representation depends of the distance from

    the robot to the obstacle. Large values in the   His-togram   indicate that the obstacle is very close to the

    robot. The occupied sectors around the robots are rep-

    resented 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 

    http://unilabs.dia.uned.es/mod/ejsapp/view.php?id=1157http://unilabs.dia.uned.es/mod/ejsapp/view.php?id=1157http://unilabs.dia.uned.es/mod/ejsapp/view.php?id=1157http://unilabs.dia.uned.es/mod/ejsapp/view.php?id=1157http://unilabs.dia.uned.es/mod/ejsapp/view.php?id=1157

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    6/13

    136 J Intell Robot Syst (2016) 81:131–143

    Fig. 4   EJS View of  RFC SIM 

    USB Module) and two software components (Gate-

    way 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 lab-

    oratory 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 devel-

    oped in  Visual C# . This module performs three main

    tasks: a) to process the packet received from   Swis-

    Track ; b) to send the information to the corresponding

    robot using wireless communication ( RF USB Mod-

    ule), 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 experi-

    ments 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

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    7/13

    J Intell Robot Syst (2016) 81:131–143 137

    Fig. 5   Obstacles avoidance

    with RFC SIM 

    and a wireless module for communication by radio-

    frequency. 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 expe-

    rience of formation control with the experimental

    environment (from t=0s to t=26s). The experiment is

    composed by five slave robots (marked with num-

    bers from 1 to 5) and one master robot (marked with

    the letter M) in a circular formation where the mas-

    ter robot is in the center of the circle. As it was

    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 refer-

    ence 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 cooper-

    ative 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

    Fig. 6   RFC architecture

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    8/13

    138 J Intell Robot Syst (2016) 81:131–143

    Fig. 7   Experiment of robots formation control

    are trying to reach their desired position in the for-

    mation. Slave robots take more time to reach the

    formation because their references are the old posi-

    tion of the master robot which is always changing

    during its movement. Besides, each robot considersthe rest of robots as obstacles and tries to avoid each

    other. For these reasons the trajectory to the desti-

    nation position is not always a straight line. After

    t=16s the master robot has reached its goal posi-

    tion and the slave robots have reached their posi-

    tions 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 pre-

    vious 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 havereached 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 for-

    mation 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 car-

    ried out by students is described: documenta-tion, steps to follow, and interface applications

    description.

    4.1 Documentation

    The laboratory session/experiment is hosted in UNIL-

    abs 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).

    http://unilabs.dia.uned.es/blog/index.php?entryid=3&lang=enhttp://unilabs.dia.uned.es/blog/index.php?entryid=3&lang=enhttp://unilabs.dia.uned.es/blog/index.php?entryid=3&lang=enhttp://unilabs.dia.uned.es/blog/index.php?entryid=3&lang=en

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    9/13

    J Intell Robot Syst (2016) 81:131–143 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 essen-

    tially 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 (posi-

    tion control, formation control and obstacles

    avoidance, also described in Section   2) and,

    finally, a description of the tasks to carry out eachexperiment.

    –   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 stu-

    dent must log in the UNILabs platform and select the

    session titled Moway Robots Laboratory (Virtual Lab-

    oratory with Moway Robots). Then, the student should

    download the documentation of the lab experimentand 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 move-

    ment, 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 shouldproceed 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.

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    10/13

    140 J Intell Robot Syst (2016) 81:131–143

    (c) Modify the parameters of the selected con-

    trol 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 avoid-

    ance 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 ani-mation and the graphics. Observe the Polar

    Histogram representation in the correspond-

    ing 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 strate-

    gies and their parameters ( Min Valley,   hm,

    TauL and  TauH).

    (f) Check the “Moving obstacles” option. With

    this option, obstacles start moving. This trans-

    forms the arena into a more dynamic scenario.

    Observe the behavior of the robots in these

    conditions. Change the velocity of the obsta-

    cles and observe the results.

    3.   Formation control: This experiment consist in

    adding more robots to the arena to perform forma-tion 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 master-

    slaves 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 posi-

    tions 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 happenswith 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   overthe 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 con-

    troller. 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 stu-

    dent 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 equivalentto 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 exis-

    tence 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 algo-

    rithms need to be adapted. The student selects the

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    11/13

    J Intell Robot Syst (2016) 81:131–143 141

    control law from the different predefined algo-

    rithms and observes the behavior of the robot

    through the web-cam.

    3.   Formation control: This experiment is also simi-

    lar 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 commontask. 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 studentmust 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 draw-

    back 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 instruc-

    tor 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

    for experimentation with mobile robots at postgrad-

    uate 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 mod-

    ules, related with robotics, in which this program isdivided.

    The use of the platform exposes students to hands-

    on learning, contributing to their development as engi-

    neers. At the same time, they get motivated by simu-

    lating 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, contribut-

    ing in this way to understand relevant concepts in an

    attractive environment.

    The platform is prepared to implement other exper-iments with different goals. In a near future, new chal-

    lenging 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 implemen-

    tation 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 Min-

    istry of Economy and Competitiveness (grant number

    DPI2012-31303).

    Conflict of interests   The authors declare that they have no

    conflict of interest.

    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), 88–95 (2010)

    2. Barak, M., Zadok, Y.: Robotics projects and learning con-

    cepts in science, technology and problem solving. INT. J.

    TECHNOL. DES. ED 19(3), 289–307 (2009)

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    12/13

    142 J Intell Robot Syst (2016) 81:131–143

    3. Gómez-De-Gabriel, J., Mandow, A., Fernández-Lozano, J.,

    Garcı́a-Cerezo, A.: Using LEGO NXT mobile robots with

    LabVIEW. IEEE Trans. Educ 54(1), 41–47 (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), 797–802 (2009)5. Navarro, P., Fernandez, C., Sánchez, P.: Industrial-Like

    Vehicle Platforms for Postgraduate Laboratory Courses on

    Robotics. IEEE T. on Educ. 56(1), 34–41 (2009)6. Dhaouadi, R., Sleiman, M.: Development of a modular

    mobile robot platform: Applications in motion-control edu-

    cation. IEEE T. Ind. Electron  5(4), 35–45 (2011)7. Hyeonwoo, Ch., Kim, S.: Mobile Robot Localization Using

    Biased Chirp-Spread-Spectrum Ranging. IEEE T. Ind.

    Electron 57(8), 2826–2835 (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), 596–600

    (2011)

    9. Zhengcai, C., Yingtao, Zh., Shuguo, W.: Trajectory tracking

    and point stabilization of noholonomic robot. IEEE/RSJ.

    Int. Conf. Int. Rob. Sys. (1), 1328–1333 (2010)10. Bonin-Font, F., Burguera, A., Ortiz, A., Oliver, G.: Com-

    bining obstacle avoidance with robocentric localization in a

    reactive visual navigation task. IEEE Int. Conf. Ind. Tech.

    (1), 19–24 (2012)

    11. Chaos, D., Chacón, J., López-Orozco, J.A., Dormido, S.:

    Virtual and Remote Robotic Laboratory Using EJS MAT-

    LAB and LabVIEW. Sensors 13(2), 2595–2612 (2013)

    12. Aneesh, D.: Tracking controller of mobile robot. IEEE Int.

    Conf. Elect. Inf. Tech. (1), 343–349 (2012)

    13. Lee-Johnson, C.P., Carnegie, D.A.: Mobile robot navigation

    modulated by artificial emotions. IEEE Tran. Sys. Man.

    Cyb 40(2), 469–480 (2010)

    14. Defoort, M., Veluvolu, K.C.: A Motion Planning Frame-

    work with Connectivity Management for Multiple Cooper-

    ative Robots. J. Intell. Robot. Syst  75(2), 343–357 (2014)

    15. Guinaldo, M., Farias, G., Fabregas, E., Sánchez, J.,

    Dormido-Canto, S., Dormido, S.: An interactive simulator

    for networked mobile robots. IEEE Net 26(3), 14–20 (2012)

    16. Xue, D., Yao, J., Chen, G., Yu, Y.: Formation control of net-

    worked 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 multi-

    agent systems. Ame. Cont. Conf. (1), 3186–3191

    (2010)

    18. Pinciroli, C., Trianni, V., O’Grady, R., Pini, G., Brutschy,

    A., Brambilla, M., Mathews, N., Ferrante, E., Di Caro, G.,Ducatelle, F., Stirling, T., Gutiérrez,  Á., Gambardella, L.M.,

    Dorigo, M.: ARGoS: a Modular, Multi-Engine Simulator

    for Heterogeneous Swarm Robotics, Proceedings of IROS,

    5027–5034 (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)

    20. Rohmer, E., Singh, S.P.N., Freese, M.: V-REP: A versatile

    and scalable robot simulation framework. Int. Robot. Syst.

    (IROS), 1321–1326 (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.: Leader-

    following formation control of multiple mobile robots.

    Proc. 2005 IEEE Int. Symp. Med. Conf. Cont. Aut. Int.Cont 62(1), 808–813 (2005)

    28. Borenstein, J., Koren, Y.: The vector field histogram-fast

    obstacle avoidance for mobile robots. IEEE Trans. Rob. Aut

    7(3), 278–288 (1991)

    29. Ulrich, I., Borenstein, J.: VFH+: Reliable Obstacle Avoid-

    ance for Fast Mobile Robots. In: Proceedings of the 1998

    IEEE International Conference on Robotics and Automa-

    tion. Leuven, Belgium, May 1621, 1572–1577 (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.: Swis-

    Track - A flexible open source tracking software for multi-

    agent systems. IEEE/RSJ 2008 Int. Conf. Inte. Rob. Sys.

    Nice. France (2008)

    33. Duro, N., Dormido, R., Vargas, H., Dormido-Canto, S.,

    Sánchez, J., Farias, G., Dormido, S., Esquembre, F.: An

    Integrated Virtual and Remote Control Lab: The Three-

    Tank System as a Case Study. Comp. Sci. Eng 10(4), 50–59

    (2008)

    34. Vargas, H., Sánchez, J., Dormido, S., Salzmann, C., Gillet,

    D., Esquembre, F.: Web-Enabled Remote Scientific Envi-

    ronments. Comp. Sci. Eng 11(3), 36–46 (2009)

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

    2004 and the M.S. degree in Digital Systems in 2008 from Poly-

    technic University José Antonio Echeverrı́a (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 engineer-

    ing education.

    http://www.mindstorms.lego.com/http://www.mindstorms.lego.com/http://www.moway-robot.com/http://www.moway-robot.com/http://www.k-team.com/mobile-robotics-products/khepera-iihttp://www.k-team.com/mobile-robotics-products/khepera-iihttp://fem.um.es/Ejs/http://fem.um.es/Ejs/http://fem.um.es/Ejs/http://fem.um.es/Ejs/http://www.k-team.com/mobile-robotics-products/khepera-iihttp://www.k-team.com/mobile-robotics-products/khepera-iihttp://www.moway-robot.com/http://www.moway-robot.com/http://www.mindstorms.lego.com/http://www.mindstorms.lego.com/

  • 8/19/2019 13 pag - art%3A10.1007%2Fs10846-015-0229-8

    13/13

    J Intell Robot Syst (2016) 81:131–143 143

    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 Univer-

    sity 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 Val-

    paraiso (PUCV). His current research interests include machine

    learning, simulation and control of dynamic systems, and engi-neering education.

    Sebastián Dormido-Canto  received the M.S. degree in Elec-

    tronic Engineering from Madrid Pontificia de Comillas Univer-

    sity, 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 anal-

    ysis and design of control systems via the Internet, automatic

    learning with big data and high performance interconnection

    networks for cluster of workstations.

    Marı́a 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 inter-

    ests include networked control systems, event-based control and

    networked control of multi-agent systems.

    José Sánchez  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 Com-

    puter Sciences and Automatic Control since 1993. His current

    research interests are networked control systems, event based

    control and engineering education

    Sebastián 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 Uni-

    versity, Bilbao, Spain, in 1971. In 1981, he was appointed

    Professor of Control Engineering at UNED, Madrid. His scien-

    tific activities include computer control of industrial processes,

    model-based predictive control, robust control, and model and

    simulation of continuous processes. He has authored or coau-

    thored more than 250 technical papers in international jour-

    nals and conferences. From 2001–2006 has been President of 

    the Spanish Association of Automatic Control, CEA-IFAC.

    In 2007 received a Doctor Honorary Degree from Universi-

    dad de Huelva, in 2008 the National Automatic Control prize

    from IFAC Spanish Committee and in 2014 received a Doctor

    Honorary Degree from Universidad de Almerı́a.