URDF or SDF when working with ROS and Gazebo
I'm using ROS Melodic and Gazebo 9.6.0.
I've just started to learn ROS and Gazebo.
Reading the URDF XML specifications, I have found that there is a Gazebo tag. On its description said: "For full documentation of the Gazebo element, see Using A URDF In Gazebo."
On that tutorial, Using A URDF in Gazebo, they recommend to use SDF instead of URDF because: "a new format called the Simulation Description Format (SDF) was created for use in Gazebo to solve the shortcomings of URDF".
What do you recommend? Do I have to use URDF to describe the robot and its plugins or is it better to use SDF?
Asked by Elric on 2019-02-16 01:11:35 UTC
Answers
To my knowledge, ROS uses only URDF, which Gazebo converts to SDF as explained in this answer. If you want to control your robot with ROS and MoveIt, you will need to use URDF. I have had little or no trouble adding the gazebo-specific elements to my URDF files in the past, though.
All the robot definition files that I know of deliver URDF files. This blog post helpfully links this Discord thread, which seems to imply that URDF will at least be available in ROS2 as well.
Asked by fvd on 2019-02-19 01:59:11 UTC
Comments