nasa-jpl / osr-rover-code

Code that runs on the Open Source Rover
Apache License 2.0
435 stars 148 forks source link

OnShape to URDF conversion #170

Closed Achllle closed 4 months ago

Achllle commented 1 year ago

Opening this PR for visibility for those interested in a URDF from OnShape.

Got stuck when I realized onshape-to-robot does not currently permit defining joints in subassemblies.

Options:

  1. Fix onshape-to-robot to work properly (likely requires some refactoring/hacking). Ideal solution but annoying.
  2. Create duplicated assemblies with the goal of flattening the tree structure to get the joints to be at the top level. Not robust to updates, hacky.
  3. Forget about converting from OnShape and instead create a simplified representation of the OSR instead. This also makes everything faster and lighter but is a bunch of manual work.
  4. Use onshape-to-robot to create subassemblies and stick them together manually using xacro

After that is solved, we'll also need to decouple the differential pivot which creates a closed loop which URDF does not suport... Solution is to open the chain and manually publish relations. image

closes #68