ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A answers.ros.org

ROS2 Robotarium

Hi everyone,

The other day I released the first version of my ros2_robotarium a Gazebo and ROS2 implementation of the Georgia Tech Robotarium.

This project came about from struggling to find a decent multi-robot platform that could easily be used for RL experimentation since most require a significant investment, inadequate hardware, or space requirements. For example, the Turtlebot3 is still pretty expensive if you want to do multi-agent experiments. In addition, my RL work requires a decent amount of training and it isn’t something I could really get from a physical platform. So I’ve built this platform for 3 types of users:

  • New roboticists that would like an easy-to-use ROS2 multi-robot system with a real-world physical counterpart to apply your algorithms or learn.
  • 3D simulation needs for those who feel the current Robotarium 2D simulator may be lacking.
  • Swarm Robotics researchers particularly those trying to work with machine learning and reinforcement learning algorithms.

In essence, the goal of this project is to create an easy, ready-to-use 3D multi-robot simulator that is built with ROS2 and Gazebo for simulation of Swarm Robotics algorithms and reinforcement learning experiments. Another goal of this project is to provide an easy python scripting paradigm built upon the Robotarium’s 2D Python simulator’s for those who do not know how to program using ROS. This way users of varying skill levels in programming and robotics can use this repository for experimentation or learning.

In the future, I hope to expand this by adding Gazebo tutorials to modify the testbed, different robot types for simulating, and a containerized version of the program for people who would like to do more computationally intensive work.

Let me know what you guys think!

10 Likes

This is not getting the attention it deserves. Is the physical test bed available for the public to use? Like if I wrote a cool algorithm in the simulation could we run it on the real thing?

Sometimes a gif helps get the message across.

robotarium

2 Likes

Thank you Katherine! You are awesome :+1: It actually is a physical testbed where you can submit code to and have real robots run. The issue I found while doing my research was that I couldn’t really do accurate training on the 2D MATLAB simulator they provide, nor could I use some of the more popular ML frameworks with it since the real testbed only takes MATLAB scripts.

My project is a nearly 1-to-1 replica of this system as 3D Gazebo simulation and uses Python for scripting instead of MATLAB. I reworked the backend to use ROS2, but the scripting doesn’t. Therefore, whatever scripts you produce with this you can rewrite as a MATLAB script and run it on the real thing Robotarium. The functions are analogous to the ones you find in their MATLAB tools so the only thing you need to do is translate the numpy commands to their comparable MATLAB ones.

It’s a great way to get people exposed to robotics, ROS2, Gazebo, and multi-robot systems without the investment in hardware beyond the computer they are using. I intend to provide little tutorials on modifying the testbed provided for interesting experiments with obstacles. This is a feature the original doesn’t have beyond projecting images on the surface.

In addition, I’m currently working on getting this to work on macOS and Windows so that users can use it on all 3 platforms.

1 Like

I’m curious what the market is for remote robot access for testing / evaluation - do you have any information on the traffic associated with the robotarium?

Not sure about market from a business perspective, but I know they get a lot of traffic from an academic and an educational one. I believe they are also beginning the process of incorporating the quadrotors to the project too.