Ask Your Question

Revision history [back]

The KDL solver really is only is suitable for use with >= 6 DOF chains. It might find solutions for chains with less DOF (say, when target axes are collinear to main axes), but there is no real support for this so far (unless I missed some new developments). See also this discussion on the MoveIt! user group about a 5DOF arm and this one, too. One thing you could try is generating a MoveIt! ikfast plugin, which should be able to support < 6DOF. You could also give the "approximate IK" and "position only" options for KDL a shot that are talked about in the two links I gave above (more info here).

Another option of course is coding something yourself, either by modifying the KDL based solver, deriving your own analytical solution and putting it into a KinematicsBasePlugin or by using some other libs (for example RBDL).

The KDL solver really is only is suitable for use with >= 6 DOF chains. It might find solutions for chains with less DOF (say, when target axes are collinear to main axes), but there is no real support for this so far (unless I missed some new developments). See also this discussion on the MoveIt! user group about a 5DOF arm and this one, too. One thing you could try is generating a MoveIt! ikfast plugin, which should be able to support < 6DOF. You could also give the "approximate IK" and "position only" options for KDL a shot that are talked about in the two links I gave above (more info here).

Another option of course is coding something yourself, either by modifying the KDL based solver, deriving your own analytical solution and putting it into a KinematicsBasePlugin or by using some other libs (for example RBDL).