FusionSDF: Export Fusion 360 CAD designs to SDF

Hi all,

I created a small tool to export Fusion 360 designs to SDF. The tool is called FusionSDF and can be found at GitHub - andreasBihlmaier/FusionSDF: Export Fusion 360 designs to SDF (Simulation Description Format).

FusionSDF is inspired by existing tools, such as ExportURDF and fusion2urdf-ros2. Apart from focusing on directly exporting SDF, my goal is to make it easy to export any Fusion 360 design as SDF with as few constraints on its structure as possible. I wanted to make it fast and simple to import existing CAD models, e.g. STEP files, restructure them and add missing information, e.g. joints, physical materials and appearances (visual materials). Furthermore, FusionSDF automatically uses simplified collision objects (oriented bounding box) and calculates each links inertial properties based on geometry and physical material.
No more manual XML editing! :relieved:

Using the tool I was able to go from the official OpenManipulator CAD model (downloaded as STEP file from OnShape) to a SDF - and hence robot_description / RViz and Gazebo - in about 1h, incl. visuals, collisions, joints and inertia.

Restructured model in Fusion 360 (one component per link with all sub-components added to a rigid group each and joints added):

Displayed as RobotModel in RViz (via view_sdf_rviz):

Colliders:

Centers of mass and inertias:


SDF spawned in Gazebo:

Bundled with FusionSDF is a tool called sdfopt. It uses the headless Blender API (bpy) to decimate the meshes and convert them into the self-contained GLB format.

The next milestone is extending sdfopt to automatically substitute Fusion 360 appearance with similar Blender PBR materials for increased visual fidelity. Currently only color information (diffuse reflectivity) is preserved.

I hope some of you find the tool useful in your own robotics projects. Feedback and PRs are highly welcome! :slight_smile:

Best,
Andreas

19 Likes

This is fantastic! Thanks for sharing. I’ll have to brush up on my CAD.

1 Like

Extremely helpful !!

1 Like

Amazing!
Any chances this tool is also compatible with SolidWorks? (same as SW2URDF)

Hi @TamirL, as of now FusionSDF only supports Fusion 360. The API of Solidworks is significantly different. Adding support would be a significant effort.

Thank you for the reply!
So in case of the need to simulate a closed-loop robot (delta arm), what will be the best practice in your opinion? I found few different tactics online.

  1. Export from SW to URDF and add the “gazebo” tags for the closed-loop kinematics manually.

  2. Get the SW models to Fusion 360, then export to SDF.

what are the cons of having only SDF file rather than URDF that will be simulated to SDF once gazebo is running? I’ll be using both Gazebo and Rviz in this project.

Thanks again, Andreas!

Good work. Thank you so much for sharing.