Robotics StackExchange | Archived questions

Is there an Intermediate Representation of URDF and SDF?

When going from a URDF or SDF file to a simulated world, it is often useful for there to be an Intermediate Representation (IR). Benefits include:

  1. Decoupling the XML parsers from the methods that create the actual simulation objects.
  2. Performing some computation to fill in missing details in the IR like certain frame transformations, which joints form kinematic loops, etc.
  3. Identifying errors in the URDF and SDF specification so the system can fail fast.

Does an IR already exist between the URDF and SDF parsers and a Gazebo simulation? If so, where can I find it?

Asked by liangfok on 2016-10-19 12:46:39 UTC

Comments

Answers

Some of your points are addressed in libsdformat, and some are addressed by the end user of a format.

For example, libsdformat is independent of simulation and it will identify errors in SDF so that the system can fail fast.

However, knowledge of kinematic loops and the need to break such loops depends on the use case. Gazebo does not care about breaking kinematic loops, but moveit probably does.

You could write an IR that captures your needs, but the IR would be useful to a small(er) set of applications.

Asked by nkoenig on 2016-10-19 13:34:45 UTC

Comments