SolidWorks to URDF Exporter

Authored and maintained by Stephen Brawner. Past supporters include PickNik Consulting, Verb Surgical, Open Robotics, and Willow Garage.

Latest Release

SolidWorks 2021

https://github.com/ros/solidworks_urdf_exporter/releases/tag/1.6.1

SolidWorks 2020

https://github.com/ros/solidworks_urdf_exporter/releases/tag/1.6.0

SolidWorks 2019 on 2018 SP 5

https://github.com/ros/solidworks_urdf_exporter/releases/tag/1.5.1

SolidWorks Version Requirements

  1. The minimum required version of SolidWorks for use with this add-in is 2018 Service Pack 5. SolidWorks 2017 or earlier may work. See this issue.

Usage

See the ROS Wiki and associated tutorials.

Development

  1. Install Visual Studio 2017
  2. Install .NET desktop development
    1. From Visual Studio: Tools > Get Tools and Features...
    2. Check .NET desktop development package
    3. Select Modify
  3. Install the SolidWorks API tools
  4. Launch Visual Studio with admin privileges. Right click and select Run as Administrator
  5. Open sw2urdf/SW2URDF.sln
  6. Enable Debugging
    1. Right click SW2URDF in the Solution Explorer
    2. Click the Debug Tab
    3. Ensure Configuration: is set to Debug
    4. Ensure Start external program: is pointing to the SolidWorks executable. For example C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\SLDWORKS.exe

Converting mesh format from 3dxml to dae

Executing the following command will convert the format of the exported mesh from 3DXML to DAE, and rewrite the URDF, allowing you to display colored meshes in visualization tools like RViz:

pip3 install scikit-robot -U
convert-urdf-mesh <URDF_PATH> --output <OUTPUT_URDF_PATH>

Trouble Shooting

  1. AxImp.exe error - Check the installation of the .Net Tools. If there is no error, install the Windows 10 SDK.
  2. Resourse.resx error - Check if sw2urdf/SW2URDF/Resources.resx exists and is empty. If empty, delete this file then right click the SW2URDF in the Solution Explorer and select Properties. Navigate to the Resources tab and click the button to create a new file.