Hi all,
I’ve been working on SW2GZ, a SolidWorks add-in that exports an assembly directly into a ready-to-launch ROS 2 package or Gazebo (Gz Sim) model/world — no manual URDF authoring.
What it does:
- Reads masses, inertias, joint frames, and mates straight from the SolidWorks model instead of you typing them by hand
- Three export modes:
- Robot — full ROS 2 package: URDF/Xacro, launch files,
ros2_controlconfig, RViz, a spawn world - World — standalone Gz Sim world (SDF + meshes)
- Asset — a single part/sub-assembly as a reusable Gz
model://package
- Robot — full ROS 2 package: URDF/Xacro, launch files,
- Joint type/axis/limits are derived from SolidWorks mates (Lock→Fixed, Concentric→Revolute/Continuous, Angle→Revolute, Distance→Prismatic), with a manual axis pick for precision
- ROS 2 Jazzy + Gz Harmonic is ready to use today, live-tested end-to-end. Humble/Fortress, Kilted/Ionic, and Rolling/Harmonic are wired into the distro-pairing logic but still in development — not yet live-tested. Goal is full plug-and-play across all four.
It’s a modernized fork of the original solidworks_urdf_exporter (ros/solidworks_urdf_exporter) by Stephen Brawner, rebuilt for ROS 2 + Gz Sim (the original targets ROS 1 + Gazebo Classic).
Install: grab the installer from the Releases page, runs alongside the original SW2URDF add-in if you have it.
Repo: GitHub - Aryan01b/SW2GZ: Export SolidWorks assemblies straight to ROS 2 + Gazebo — no hand-written URDF. · GitHub (MIT licensed)
Still early — Robot mode joint articulation and World mode are solid and live-tested, a couple of things (World launch/bridge generation) are temporarily disabled while I fix a structural bug. Feedback, bug reports, and PRs welcome.