JeroenDM / moveit_opw_kinematics_plugin

An attempt at writing a MoveIt! plugin for opw_kinematics.
http://wiki.ros.org/moveit_opw_kinematics_plugin
Apache License 2.0
7 stars 7 forks source link

Extract parameters from robot description instead of reading them from kinematics.yaml #3

Open JeroenDM opened 6 years ago

JeroenDM commented 6 years ago

In the current version, all input parameters needed for the opw_kinematics solver are specified in the kinematics.yaml like this;

manipulator:
  kinematics_solver: moveit_opw_kinematics_plugin/MoveItOPWKinematicsPlugin
  kinematics_solver_geometric_parameters:
    a1:  0.025
    a2: -0.035
    b:   0.000
    c1:  0.400
    c2:  0.315
    c3:  0.365
    c4:  0.080
  kinematics_solver_joint_offsets: [0.0, -1.57079632679, 0, 0, 0, 0]

And the plugin reads the parameters during initialization. I should be straightforward to extract these from the robot description using the RobotModel API from MoveIt!.

But then there should also be a check whether the robot is compatible.

simonschmeisser commented 5 years ago

Having a tool that spits out the params as written above would be a great start!

JeroenDM commented 5 years ago

I can't resist working on this issue. It should be quite possible for robots adhering to the ros-industrial guidelines:

The joint origins should be oriented with the Z-axis up, and the X-axis forward, when the robot is in the zero position.

I will share the code as soon as I have something that seems to work.

(Altough adding this config file by default to the robot support package could be a more logical / robust approach maybe...)

JeroenDM commented 5 years ago

I'm making a little bit of progress. I'm writing it in a separate ros package for the moment.