Robotics Operating System (ROS)

Multi-Agent Robotic Platform

Realization of control algorithms in the physical world necessitates a readily deployable system. The Cortes and Martinez labs at UCSD currently possess ten TurtleBot platforms to be integrated into a multi-agent robotic network. The open source ROS has been chosen as the software platform to enable the network structure, relying on a publisher-subscriber model to allow for inter-robot communication and coordination.The objective of the ROS TurtleBot project is to provide a stable system to which distributed control algorithms can be readily deployed for testing and validation on hardware. There are a plethora of interesting algorithms that could potentially be deployed using the TurtleBot network, such as cooperative task completion. Of particular interest to the group is cooperative simultaneous localization and mapping (SLAM).

The open-source Robot Operating System, otherwise known as ROS, is a Linux based framework for robotic control. Advantages include the publisher-subscriber nature of communication, which allows for interesting distributed algorithms. The group uses the C++ version of the system. For more information, visit the ROS website.

Screenshot of monitor while working with ROS

The publisher-subscriber nature of ROS allows for a master computer to communicate with other computers that serve at the robotic processing units. In the set-up described here, the master computer shares information by publishing on specific topics, which each robot can selectively choose to listen to.

High Level System Diagram: Blue and green cells indicate computational processes that happen on the master computer and individual robots, respectively.