Why?

For cutter/gripper, we need to simulate the execution of end effectors inside a simulation (a physics accurate one, so not RViz, but even RViz requires URDFs).

Reference

See the files here (https://github.com/VADER-CMU/vader_sim/commit/15a8a370b06ceb4e33b0c33166184ba616e812d8)

Recipe

(As of March 2025):

Clean up the model

Define Coordinate Systems and Axes

In the URDF exporter, it will ask you for axes and coordinate systems of each link. This refers to SolidWorks’ Coordinate Systems and Axis (not just sketch object!).

Take a bit of extra time to do this. I found making a sketch where I want the origins to be & adjusting the Coord System to have Z axis pointing in conventional ways (as rotational axis of joint, or perpendicular to mounting zone) works well. I defined an axis by sketching out a point + line and then creating a 90 deg tilted plane based on that, then drawing a line on that as a Z axis.

Make sure you know which Coord systems (for every link, not necessarily every component) & axes (for non-fixed joints) correspond to which components.

Export to URDF

Use Tools → Export to URDF… with your model.