how to move the arm base if 5DOF arm can't reach target pose

asked 2020-08-13 23:28:16 -0500

xibeisiber gravatar image

updated 2020-08-14 01:00:37 -0500

Hi all,

I have a 5DOF arm with a movable base (x,y,z,r,p,y can vary in certain range). Given a target pose (TP) of the end effector, if direct ik solution can't be found, I want to move the base to a certain pose and try to find the ik solution again. The problem is that how to select the pose of the base so that in this new pose of base, the arm does have an ik solution for the end-effector to reach the target pose (TP).

For 6DOF this is relatively easy, just move the base close enough to the target pose(TP), but for 5DOF the pose of base has to be evaluated..

One option would be that I found a close pose (TPapp) of the eef to the TP, and find the transformation matrix so that this close pose TPapp is transformed to TP, meanwhile, the pose of base is transformed to a new pose. But the possible problem is that although TPapp is close to TP, the new pose of base is often far from the original base pose, which can be out of the range of movable range of base.

Thanks for any suggestions!

edit retag flag offensive close merge delete

Comments

What about using an IK solver which can solve for all involved joints? So instead of considering a separate 5 dof chain and a 6 dof base, consider solving for an 11 dof system. That could make this a bit simpler.

KDL and/or TracIK might be able to do this.

gvdhoorn gravatar image gvdhoorn  ( 2020-08-14 02:48:26 -0500 )edit

@gvdhoorn. Thanks for your reply. That would be an option.

Now I'm also considering to get an reverse-inverse kinematics.... that is: let the end effector be on the TP, and set the original as the target_pose of the base, solve this new ik, get a close solution. that will be the pose the base needs to be.. However, this is too roundabout, and the ik algorithm needs to fit this "new arm model".

xibeisiber gravatar image xibeisiber  ( 2020-08-14 05:43:16 -0500 )edit

I believe the typical name for what you describe would be inverse placement.

gvdhoorn gravatar image gvdhoorn  ( 2020-08-14 05:54:27 -0500 )edit

thanks very much! previously I thought there should be some research about this but didn't get much results. Just now I find a paper based on this keyword.

xibeisiber gravatar image xibeisiber  ( 2020-08-14 06:38:01 -0500 )edit

@gvdhoorn. Hi, I checked the inverse reachability. It works well when the the movement of base has no constraints. But if it has, such as, the base can only move a bit for x,y,z, but are free for r,p,y, the inverse reachability method is not satisfying.

With regard to solving for an 11 dof system you mentioned, I want to set the joint of base to be a floating joint, although moveit supports floating joint, but KDL cann't parse it and hence is unable to solve the 11DOF ik problem?

xibeisiber gravatar image xibeisiber  ( 2020-08-18 21:07:58 -0500 )edit