The Robot Management System

About

The RMS (Robot Management System) is a remote lab management tool designed to control ROS enabled robots from the web. RMS itself refers to a web-management system written in PHP that is backed by a MySQL database. RMS is written in a robot-platform independent manner allowing for the control of a variety of robots. In addition to being cross-platform, RMS allows for basic user management, interface management, and content management. RMS is developed as part of the Robot Web Tools effort.

rms.png

Who Should Use the RMS?

RMS was designed to be an easy to use, easy to mange, remote lab system for use by robotic researchers and enthusiasts. Developed in PHP, the RMS itself is not considered a light-weight system; however, by using a heavier system, tools such as user management, content management, and interface management become possible.

Does the RMS Itself Require ROS to Install?

No. The RMS was designed as a standalone system that can be easily installed on UNIX based web servers. The decision was made so that it is possible to host the RMS itself on campus, Amazon, or third-party web servers without the need of maintaining and installing ROS on that server. RMS will point to ROS servers which are running rosbridge_server in order to control the robot.

How Does the RMS Communicate with ROS?

The RMS uses the lastest version of roslibjs to communicate with ROS servers. For the ROS server to communicate back to the client, a server running rosbridge_suite should be running.

Cool Widgets! Do I Need RMS to Use Them?

No. Most of the widgets available in the system were developed as standalone widgets as part of the Robot Web Tools effort. The RMS simply wraps these widgets and provides an easy-to-use GUI to customize them to fit your needs.

Is There More to Come?

Yes! The RMS, and all of its widgets, have been, and remain, under active development. Furthermore, contributions are welcome and encouraged!

Who is Using the RMS?

While we do not track the running instances of RMS, two notable projects using the system are the RobotsFor.Me project at Worcester Polytechnic Institute, and the PR2 Remote Lab project at Robert Bosch LLC.

Installing the RMS

To get started with the system, start by following the installation tutorial. Additional tutorials are posted further down this page.

API Reference

There are two forms of the RMS API: the RMS Developer API and the RMS REST API.

RMS Developer API

This API should be referenced if you want to modify, add to, or debug the RMS system itself. There are two sets of documentation available: the RMS PHP API and the RMS JavaScript API.

RMS REST API

The RMS REST API has been in development since release 0.1.0. This API is under active development, but many features are already available. To learn more about the API, please refer to the RMS REST API Documentation.

In addition to the API itself, a client library written in C++ is available in the rmscpp package.

Tutorials

This section contains a set of useful tutorials for use with the RMS.

Installation and Basic Management

The follow is a list of tutorials that will help with installation and basic management tasks:

RMS Environment Servers

The follow is a list of tutorials that can help with setting up an RMS environment server:

Interface Design

The follow is a list of tutorials that can help get started with interface design within the RMS:

Full List

The following is a complete set of useful tutorials for use with the RMS.

  1. A Guide to Interface Development

    This tutorial servers as a guide to help get started with interface design within the RMS.

  2. The Generate Function

    In this tutorial, we explore the generate function inside of all interface scripts more closely.

  3. Install the RMS (Robot Management System)

    This tutorial helps you set up a secure LAMP (Linux Apache MySQL PHP) server and install the RMS (Robot Management System).

  4. Setting up a Secure RMS Environment Server

    This tutorial helps you set up a secure RMS environment server that can be used in an instance of the RMS (Robot Management System). Example environments include Gazebo worlds or physical robot settings.

  5. Installing a youBot RMS Gazebo Environment

    This tutorial helps you install and run a youBot Gazebo environment that can be used in an instance of the RMS (Robot Management System).

  6. Installing a PR2 RMS Gazebo Environment

    This tutorial helps you install and run a PR2 Gazebo environment that can be used in an instance of the RMS (Robot Management System).

  7. Installing a Rovio RMS Environment

    This tutorial helps you install and run a Rovio environment that can be used in an instance of the RMS (Robot Management System).

  8. Managing Website Content

    This tutorial describes how to add, edit, and delete website content on your RMS.

  9. Managing Users

    This tutorial describes how to add, edit, and delete users on your RMS.

  10. Managing Environments

    This tutorial describes how to add, edit, and delete environments on your RMS.

  11. Updating the RMS

    This tutorial describes how to update your RMS.

  12. Managing Site Settings

    This tutorial describes how to edit site-wide settings for your RMS.

  13. Installing a youBot RMS Environment

    This tutorial helps you install and run a youBot environment that can be used in an instance of the RMS (Robot Management System).

  14. Setting Up Eclipse for RMS

    This tutorial helps you set up Eclipse as an IDE for development with RMS.

interface.png

Support

Please send bug reports to the GitHub Issue Tracker. Feel free to contact me at any point with questions and comments.


wpi.png

rail.png

Wiki: rms (last edited 2013-05-02 16:54:50 by Russell Toris)