KinematicsBase for Non-Chain IK Solvers

213 views
Skip to first unread message

Dave Coleman

unread,
Feb 13, 2014, 10:55:31 AM2/13/14
to moveit-users
Hi all,

I'm looking at modifying the KinematicsBase in MoveIt! to allow the inverse kinematics of trees (not just a chain) kinematic structures to be solved. The biggest limitation I see so far is the assumption that each IK solver has just one tip, but instead I believe this needs to be represented as an optional vector of tips. There will also probably need to be some changes in how MoveIt reasons about default end effectors for robots that have not explicitly defined their end effectors in the Setup Assistant/SRDF.

This change is necessary for applications such as biped robots that need to take into account IK of the whole body for stability constraints. The JSK lab at UTokyo has such an IK solver that we're trying to integrate in.

I'm just trying to get some feedback before I go too far down this path.

Thanks!

Dave Coleman
Correll Robotics Lab | CU Boulder | 251.463.2345 | davetcoleman.com 

Patrick Goebel

unread,
Feb 13, 2014, 2:04:30 PM2/13/14
to moveit...@googlegroups.com
Hi Dave,

I am curious if this is related to the trouble I am having using an IKFast solver for my 6-dof arm when I add a "pseudo" gripper link that is used for planning.  So I have the real gripper link (with a single movable finger) and then I define another gripper link (with a unique name of course) in the URDF attached to the gripper base and with its origin right between the two finger pads.  The IKFast module gets constructed and compiles fine following the standard procedure, and it appears to load without error when firing up move_group.launch.  However, the solver alway fails to find any solutions even when the target pose is one that the KDL solver can solve.

--patrick

Ryan Luna

unread,
Feb 13, 2014, 6:46:45 PM2/13/14
to moveit...@googlegroups.com
+1

I attempted integration of a similar IK solver recently, and the biggest limitation encountered was the assumption of one tip and one immutable root link.  A more flexible IK API would allow the user to select which link (or links) are rooted and specify at least one other link to compute the IK solution for.  There are undoubtedly some details to flesh out in terms of the Setup Assistant, SRDF, and RViz kinematics interface, but I am all for extending KinematicsBase.

Ryan

Sachin Chitta

unread,
Feb 13, 2014, 8:22:22 PM2/13/14
to Ryan Luna, moveit-users
Hey guys,

We are aware of this issue and it has been on our radar for a while. We are currently exploring potential solutions that minimize breakages for most users. I am trying to talk, over the next week, to some of the people involved (including Kei and Dave) to understand the scope of their efforts and will get back to the mailing list with a solution soon.

Best Regards,
Sachin

Dave Coleman

unread,
Feb 27, 2014, 8:20:07 PM2/27/14
to moveit-users
For those interested, I have submitted several pull requests for this Kinematic Base feature: https://github.com/ros-planning/moveit_core/pull/149
Reply all
Reply to author
Forward
0 new messages