ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Kinematic chain for Husky + UR5

asked 2017-06-27 08:02:46 -0500

ipa-hsd gravatar image

After spending time with MoveIt!, I am trying to integrate ur5 with husky.

<joint name="husky_ur5_joint" type="fixed">
  <parent link="base_link" />
  <child link = "ur5_arm_base_link" />
  <origin xyz="0.205 0.0 0.6" rpy="0.0 0.0 3.142" />

This is how I am combining both of them in the URDF. While using the MoveIt setup assistant, I selected the kinematic chain starting from ur5_arm_base_link to ur5_arm_ee_link. This can be seen in the SRDF file :

<group name="manipulator">
    <chain base_link="ur5_arm_base_link" tip_link="ur5_arm_ee_link" />

But when I am moving the manipulator group P2P, I have to give the target pose in base_link and not in ur5_arm_base_link. I want to eliminate the errors induced while calculating the transformations between the two, so I want the target pose to be in ur5_arm_base_link. Why is the kinematic chain being considered starting from base_link and how can I eliminate that?

edit retag flag offensive close merge delete


Is this a custom attempt, or are you using the Clearpath provided packages? If the latter, it's very important to check which IK plugin you are using, as Clearpath worked on some changes to the default IK plugin for that setup which could be affecting what you're seeing.

gvdhoorn gravatar image gvdhoorn  ( 2017-06-27 08:35:37 -0500 )edit

The combination is a custom attempt. I am using KDL kinematics plugin. I am not sure if this is a Husky issue, because before this I had mounted the UR5 on a table, and I saw the same behavior.

ipa-hsd gravatar image ipa-hsd  ( 2017-06-27 08:44:03 -0500 )edit

while this does not address your question: you should very likely move to tracIK, it improves a lot over KDL with the ur5 setup

v4hn gravatar image v4hn  ( 2017-06-27 09:02:23 -0500 )edit

Could you post a link for tracIK if possible? I tried setting group->setPoseReferenceFrame("ur5_arm_base_link") and this works

ipa-hsd gravatar image ipa-hsd  ( 2017-06-27 09:17:52 -0500 )edit

Now I am unable to plan Cartesian paths (only about 5% is planned). But the position is reachable with P2P. How is this possible?

ipa-hsd gravatar image ipa-hsd  ( 2017-06-27 10:37:54 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2017-09-11 05:50:21 -0500

ipa-hsd gravatar image

OK finally understood the issue, since it kept coming back again and again.

So the planning frame is usually the root of the URDF model (unless a virtual joint is defined in the SRDF model). The virtual joint defined for husky_ur5 SRDF is

<virtual_joint name="virtual_joint" type="fixed" parent_frame="base_link" child_link="base_footprint" />

Hence the planning is done wrt base_link

More details here:!msg...

edit flag offensive delete link more

Question Tools



Asked: 2017-06-27 08:02:46 -0500

Seen: 466 times

Last updated: Sep 11 '17