October 23, 2018

Google Summer of Code Improvements to Setup Assistant

by Mohamad Ayman, Cairo University
Google Summer of Code Improvements to Setup Assist

For this year’s Google Summer of Code Project (GSoC) 2018, in collaboration with PickNik Robotics, Open Source Robotics Foundation (OSRF), Dave Coleman, and Andy McEvoy, the Setup Assistant 2.0 has been developed.

The focus of this research was to improve the Setup Assistant. The idea was to add more features to the Moveit! Setup Assistant as well as to simplify setting up robots for simulations and other tasks. This blog post will further explain how to simulate your Moveit! Controlled robot in Gazebo using the upgraded setup assistant and act as a tutorial

Overview

A sneak peak at the end result:
Simulation animation

Say you are using the Panda robot with MoveIt and you want to see your plan being executed in Gazebo. First open the moveit_setup_assistant and load the panda_moveit_config package. Then navigate to the ROS Control screen and add the Follow Joint Controllers for each planning group using the “Auto Add FollowJointsTrajectory Controllers …” button. Next navigate to the Simulation screen to generate a Gazebo compatible URDF; the Simulation screen adds the missing inertia and transmission elements required by Gazebo. The Simulation screen also adds the gazebo_ros_control plugin to the end of the URDF.

Outcomes

The outcomes, successes, and key metrics of improvement:

Instead of writing many configuration files manually, you can now simulate your motion planning in Rviz along side Gazebo by using a few clicks in the MoveIt Setup Assistant!

For further reading look at the GitHub issue of the project and MoveIt Tutorial. The GitHub issue for the project is here and an overview of the relationship between simulation, hardware, controllers, and transmissions is here.

Control screen

Perception screen

Simulation screen

Start screen