Moveit config + Analytical Solver for GoFa-12

Hello compas_fab !

I am looking for some guidance on how to produce a moveit configuration for the GoFa 12kg on the base of the already existing [abb_crb15000_5_95_moveit_config].

I saw @gonzalocasas signature on the repo: can you give me a hint?

Thanks for your feedback,

Hi Marco!

Nice to hear about your work on this! The GoFa model we use is the one from ROS-Industrial’s abb_experimental package: abb_experimental/abb_crb15000_support at kinetic-devel · ros-industrial/abb_experimental · GitHub.

To create moveit configs for the 10 and 12kg models we need to first get a hold of the URDF files for them (or get the parameters and create those urdfs ourselfs), and also get the meshes. I just created an issue on the ROS-I repo to ask about availability.

Once that is done, creating the moveit config is a 5’ task, it basically comes down to launching MoveIt’s setup assistant with our docker image. In this repo there’s an example of how to launch it, there’s two docker-compose files, one for the normal moveit launch and the other for launching it with setup assistant to generate the configs. It will mount the local folder so once you run it, you get the config package ready to go.

Regarding the creation of an analytical solver, that should be very easy, there are two basic types of analytical solvers in compas_fab, one is offset_wrist kinematics and the other is the spherical_wrist one. The GoFas are offset wrist, right? So we can create the correct one with DH params (which again we need to find, or figure out ourselves if we cannot find a proper source of info). This file shows how we create a bunch of these solvers for specific robot models just by defining their DH parameters.

So to summarize, the full thing to add support for these robots would be:

  • We need the URDF + meshes for these robots
  • Once we get them, we create a pull request to ROS-Industrial’s abb_experimental
  • We can then also create the moveit config, which I would create as a repo in our organization because ROS-I doesn’t like to include default moveit config packages anymore on the support repos.
  • After that, we will update our docker images to include these new models
  • In parallel, after we have the model details, we can create a pull request to add the analytical solver to compas_fab.

The only “difficult” part is getting the URDF model in the first place, the rest is mostly a list of short tasks that can all be done in a day. I’m up for helping with any of them!


Many thanks for making time Gonzalo, this is very helpful!
While waiting for abb-experimental, I’ll start digging in :pick:

Cheers back!