Deployment of Remotely-Accessible Robotics Laboratory

—Robotna č ka is an autonomous drawing mobile robot, designed for teaching beginners in the Logo programming language. It can also be used as an experimental platform, in our case in a remotely accessible robotic laboratory with the possibility to control the robots via the Internet. In addition to a basic version of the robot a version equipped with a gripper is available too, one with a wireless camera, and one with additional ultrasonic distance sensors. The laboratory is available on-line permanently and provides a simple way to incorporate robotics in teaching mathematics, programming and other subjects. The laboratory has been in use several years. We provide description of its functionality and summarize our experience.


INTRODUCTION
The importance of robotics and automation systems is obvious and still increasing.In order to achieve sustainable and steady progress of the technology, supply of qualified workers is essential.As the interest of young people on STEM (Science, Technology, Engineering and Mathematics) areas is decreasing, it is important to promote the technology, and maximize possibilities for hands-on experience and small scientific and technological projects.At the same time, researchers and teachers at universities and other higher education institutions need suitable platforms, which allow them to easily set up student projects as well as develop and test their research contributions.
Very popular approaches to achieve these goals are robotics competitions.An example is the robot football, which significantly contributes to the research in areas of multiagent systems, sensor technologies, navigation, coordination, localization, vision, and other fields.There are many other robotics contests, see for instance [1] for an overview article.The contests have a particular engineering goal set by the rules.This restricts a researcher or a teacher in a free experimentation.Robotics construction sets pose a good alternative to the contests.Construction sets typically contain multitudes of tuned and well-fitting parts, sensors and actuators, which put a flexible and open tool for experimentation right on a desk of a student or a researcher.
Our approach is to provide yet another alternative, an open educational and research toolkit based on an extensible and modular drawing robot Robotnačka [2].Several instances of Robotnačka are exposed for free use by lec-turers, hobbyists, and researchers in the robotics laboratory accessible through the Internet [3].The robots in the robotics laboratory are running 24 hours, 7 days a week.They are autonomous, powered by a rechargeable battery, and controlled remotely using a built-in Bluetooth modem.The robots are performing in the maintenance-free operation.In the following sections, we review the functionality, implementation, and use of the remotely-controlled robotics laboratory, the maintenance-free operation, and describe future projects in a laboratory.
The project is a result of the fruitful cooperation of three institutions.The Institute of Control and Industrial Informatics at the Slovak University of Technology in Bratislava is where tens of engineering students are educated in the robotics.Robotic contest Istrobot is organized here on an annual basis, ranging in a several different categories.The Department of Informatics Education at the Comenius University is over a decade involved in developing and working with professional Logo educational programming environment for schools [4].Finally, the company MicroStep-MIS has a long time experience in developing sensors and automation systems.Students and employees from all the three institutions met together their efforts in developing a mobile drawing robot compatible with the Imagine Logo [4] (as a part of a joint laboratory [3]).Further development has resulted in more general use of this robot platform, and additional modular extensions.The robots were installed for a perpetual operation in a remotely accessible robotics laboratory.Since the publication of the first paper about the lab in 2006 [5], significant improvements were installed, based on many student projects.One of them is a robot simulator.We describe it in the sections III and IV below.

II. HARDWARE
Remotely accessible robotics laboratory [5] consists of several autonomous mobile robots called Robotnačka and a laboratory infrastructure which is a necessary part of it.Robots were developed to be compatible with the Imagine Logo [4] programming environment to enable the robot programming using the simple "turtle graphics" commands.Its purpose was to support a programming education of young people.
The latest version of the robot consists of standard accessible parts and can be mass-produced.Some of the Robotnačka robots were adapted to their virtual life in a remotely accessible laboratory.

A. Mobile Robots
The mobile autonomous robot Robotnačka is shown in Fig. 1, left.It is a very accurate mobile two-wheel differential driven robot controlled by an 8-bit RISC microcontroller Atmel AT89S8252.
It allows easy re-programming using an ISP (in-system programming) interface.Connecting an extra sensor, actuator, or interface boards is possible using serial peripheral interface (SPI).An example of such periphery is an intelligent gripper (see Fig. 1, right), controlled by its own microcontroller which allows to pick and place operations.The communication with the workstation can be established through a cable serial port or a Bluetooth wireless connection.The robot has a built-in battery recharging circuitry, which operates autonomously and indicates the recharging status with two LEDs.
It can be remotely controlled over a Bluetooth radio connection from a workstation.The robot is propelled by two stepper motors.The distance travelled per one step is less than 0.2 mm.The robot is equipped with six IR sensors mounted on the bottom, allowing the robot to recognise guiding marks on the floor surface.A wireless network camera can be mounted at the top of the robot.
The power source of the robot is a 6V/2.3Ahlead acid maintenance-free battery and lasts for about 2-3 hours of continuous operation.The battery is recharged from an external power source using a built-in charger.
The programming of the robots is designed to be easy to understand and comprehend.For instance, the following portion of a C++ program makes the remote robot to draw a square (if the pen is inserted).

B. Lab Hardware
The environment for an operation in the laboratory consists of a whiteboard with ceramic surface, which can be decorated with guiding marks used in specific tasks (polygons, mazes, unloading areas, etc.) Sides of the whiteboard are made of the aluminium profiles creating a rugged construction suitable also for cameras and light sources.The arena is surrounded by plastic walls.
A top-view camera with a wide zoom overlooking the whole arena is mounted 1.6 meter over the whiteboard, see Fig. 2. In addition, a second camera is mounted on the side of the whiteboard providing a side-view image.
To allow the operation of robots via the Internet, certain infrastructure is necessary.Connections are provided by the server (HP ProLiant ML110) accessible at the address http://vlab.robotika.sk.
The robots in the laboratory are automatically recognized and connected by the server, which monitors their operation, and provides extensive functionality for both user control and protected administrator maintenance.
Also a night operation of the laboratory is possible by means of a network-controlled light source that can be turned on and off on a demand.
The server also monitors an amount of the energy available for the robots.Batteries are recharged automatically in two docking stations (see Fig. 3), where power supply is provided using two elastic contacts on the bottom.
During its normal operation, the robot monitors the battery power level.When the voltage falls below an indicated threshold, it notifies the server.The server chooses to wait until the user finishes the current operation, or possibly interrupts the current user and using an image from the calibrated camera navigates the robot towards a determined recharging station.If there are any blocking robots in the way, they are automatically moved away, or avoided, if they do not respond.The parking software automatically turns on illumination light and adjusts the camera settings.
After the robot is docked, the parking software monitors the power level, and in the case of a missing contact, attempts to remedy the situation by turning and redocking.

SPECIAL FOCUS PAPER DEPLOYMENT OF REMOTELY-ACCESSIBLE ROBOTICS LABORATORY
If all the fail, the administrator is notified by an e-mail so that a possible manual docking could be performed.

III. OPERATION
The robots are exposed freely on the Internet.A potential user can choose which of the available robots should be controlled.If more than one user attempts to control the same robot, rule of first comes, first served is applied.There is also a possibility to make a specific time reservation for a robot control.After that, a user is provided with a login and password which enables him to gain an access for the time slot reserved.Alternatively, more users can connect to the same robot in a simultaneous session.They can exchange text messages, and alternate freely in controlling and monitoring of the robot.However, the default mode is an exclusive access to prevent unwanted collisions.Users can control the robots remotely using an Internet browser with Java technology enabled.Their movements can be viewed by the three cameras (top-view, side-view, and from camera mounted on the top of the robot) in the browser with an ActiveX plug-in installed, see Fig. 4. When the user is successfully connected to the specified robot, he can control its movements by a specified amount of steps in four directions, or he can control the speed of both wheels independently (thus enabling the circular motion).For the robot with a gripper, opening/closing and lifting the gripper is also possible.
User can also read values from the optical sensors and the current value of the battery voltage.Very simple sequential control is also available.
It is possible to modify the colours of the user interface, calibrate and adjust the camera parameters and the user is able to control the light in the lab.
In addition, Internet users can control the robots and view the camera image from the laboratory directly from Imagine Logo programming environment, Java applications, or any application higher-level programming language utilizing the provided DLL or ActiveX software components.The server software allows an easy control of the camera image and bandwidth settings, as well as a calibrated image compensating the distortion by camera lenses.
With its open architecture, the laboratory has unlimited possibilities to be used, both in a research educational projects [6] for primary and secondary schools, as well as the research and project platform for both undergraduate and graduate students.
This means, that any child, sitting in a front of the computer anywhere in the World, with the Internet connection and Imagine Logo running, can connect to these robots, control them directly from Imagine Logo and see its turtle on the screen moving the same way as the robot that he or she can monitor in a window.Consequently, this brings the robots down to every classroom at no cost and the children can experience their first programming interactions with robots.In fact, during the last years, we have had many students and teachers from secondary schools connecting to our site.This setup can also be employed in the distance learning programs.The laboratory is used for several undergraduate semester and diploma projects, e.g.analysis of the power sources for mobile robots, platform for development of multi-agent architectures, as well as for experiments of graduate students with evolutionary and behaviour-based robotics.
We use the laboratory regularly for student exercises in the robotics course Algorithms for AI Robotics at the Faculty of Mathematics, Physics and Informatics.The students have developed multiple projects in their project exercises, which turn out to be very interesting.
For instance, one robot has been extended with 5 ultrasonic distance sensors, and a sensor control board.The software and hardware implementation, as well as the interface with the original board was developed in a student project.Another student used this feature to study various algorithms for probabilistic localization and mapping.He has defended his bachelor thesis on the topic, and recently also followed-up diploma thesis.Another example of an excellent student of the programming languages designed his own functional programming language based on Pascal syntax (called Objection) as his semester programming project.He chose to implement a library for Objection language to control the robots in our laboratory.Two groups of students designed alternative applets that allow controlling the robots in a different ways.Numerous students contributed to a simulated version, which now also has a gripper, and supports distance sensors and obstacles in the environment.The simulated version is always on-line even if the real robots are in maintenance.We have also used the laboratory setup in our research work: in studies of artificial evolution of finite state automata [7].We are happy to acknowledge that after six years of the operation, intensive use, and permanent installation, the robots are still performing very well.In ed-  SPECIAL FOCUS PAPER DEPLOYMENT OF REMOTELY-ACCESSIBLE ROBOTICS LABORATORY educational projects, robots from the laboratory can be attached to the turtle objects in the Logo programming language of a student sitting anywhere around the world.
In combination with the top-view camera, the laboratory can be used as an educational tool in lessons of mathematics, physics, and programming.For instance, the software is able to detect polygon shapes, and provides a creative environment where solving constructive geometry tasks are possible in a novel and exciting way.With the ability to move objects in the arena, the robots are a perfect platform for experiments with computer vision and artificial intelligence.The robots can work as a physical instantiation and testing platform for planning and reasoning algorithms.Robots are used also for the Robotics -an introductory bachelor's course at the Faculty of Electrical Engineering and Information Technology STU.
Other example of a project allows to control the robots with joystick, or a computer mouse and even by moving user's head using a camera and image recognition software.
Another important way to promote the use of the robotics technology is through numerous presentations and exhibitions for the public audience.

IV. VIRTUAL ROBOTS
As the hardware maintenance is a time-consuming task, sometimes the real robots are not accessible.In such instances, two virtual robots are available for the user.They are matching as much as possible their original counterparts.They are able to draw (note that this function was cancelled on real robots due to the inability to provide reliable whiteboard pens), although their size and the speed of their movements is actually realistic.
The visual control interface and the software API are the same and therefore there is a minimal difference for a potential user (see Fig. 5).

V. IMPLEMENTATION
The robots are connected (through the Bluetooth interface) to the laboratory server -a low-profile PC workstation running GNU/Linux with our own open-source robotics server software that provides control via the Internet, camera image calibration, access for users in registered timeslots with an automatic on-line registration system.The system is implemented in C++ and the webscripts are running on PHP/mysql platform with Apache web server.The communication with the robots through the Internet uses standard TCP/IP protocol on dedicated ports.Image processing functionality is implemented with the help of an OpenCV library.The server-side software supports both simultaneous operations for multiple users as well as an exclusive access for the connected user on request.
Locations of the robots are determined according to the colour marks placed on tops of the robots.The parking software detects the colour regions and their relative orientation in the image, while it attempts to filter-out irrelevant information (the administrator can adjust various sensitivity settings so that an accurate operation is reached at various daylight conditions as well as with artificial illumination at night).Since the camera is not permanently attached to the drawing surface, but rather mounted on an independent stand, the software automatically detects the position and zooming aspect of the camera relative to the surface in order to calculate proper locations and thus the distances and angles in the position commands given to the robots when approaching the recharging station.
All parts of the server side software are open-source and publicly available at the project website [3].Interested developers are encouraged to contact us and join the development team.

VI. POSSIBLE USE AND FUTURE WORK
Robots and remotely-accessible laboratory were used in robotics related courses at the universities [8], [9] and also as a supplementary teaching aid for secondary schools.Main volume of users is currently a group of students working on their master and bachelor theses.The lab can be used (but was not yet tested) for a distance education.Current usage of the lab is more or less stable and we would like to find new users and cooperation.
The development of the robots running in the robotics laboratory during the last years brought a lot of ideas and inspirations for the future work to us.First of all, we are permanently working on improving its current state.A diploma thesis that combines behaviour-based architecture with a vision input has been defended.We are considering an online contest, and entertainment activities and software packages.
At the same time, we are working on new robot bases (non-drawing), which will provide higher autonomy and CPU power, and thus combined allow to create an extensive environment for AI and a computer vision experimentation, as well as using robots in primary and secondary school curricula.VII.CONCLUSION Drawing robots Robotnačka are installed in the robotics laboratory and available through the Internet for public use.Teachers at various levels may consider using our laboratory in their lessons -from mathematics, physics and programming at the levels of primary and secondary schools, to the programming, control, hardware, computer vision, artificial intelligence courses at the undergraduate or graduate level.Without previous advertisement of the laboratory that is still under development, there already were hundreds of visitors who logged into the laboratory.
This article focuses on the technical challenge of maintenance-free operation of the robots in the laboratory, which is achieved through a combination of hardware SPECIAL FOCUS PAPER DEPLOYMENT OF REMOTELY-ACCESSIBLE ROBOTICS LABORATORY (built-in recharger, mechanical setup recharging stations) and software solutions (Linux server with robot daemon and parking software).
As far as we are concerned, there are very few other perpetual robot installations throughout the world.Our goal is to continue and improve the operation of the remotely-controlled laboratory and serve with our best efforts to teachers and students communities at various educational levels, where the use of robotics might be useful in educational process.We encourage potential developers to join our development team.

Figure 4 .
Figure 4. Robot moving to its charger.Figure3.Remote access web interface.

Figure 3 .
Figure 4. Robot moving to its charger.Figure3.Remote access web interface.