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

Revision history [back]

click to hide/show revision 1
initial version

I assume both ur5.urdf.xacro are describing the same manipulator and should produce the same Ik solver but it obviously does not!

that would not be a (entirely) correct assumption.

The files in ros-industrial/universal_robot model the kinematics of a single robot, which is almost guaranteed not to correspond to the kinematics of your specific robot.

The difference would be in the kinematic calibration data.

The files in fmauch/universal_robot have been extended to allow you to import the calibration from your robot, which will then update link length and joint offsets such that the resulting URDF corresponds 100% with the kinematic structure of your specific robot.

So while from a high-level those files model the same robot type, the URDFs which will be uploaded to robot_description are actually different.

I assume both ur5.urdf.xacro are describing the same manipulator and should produce the same Ik solver but it obviously does not!

that would not be a a(n) (entirely) correct assumption.

The files in ros-industrial/universal_robot model the kinematics of a single robot, which is almost guaranteed not to correspond to the kinematics of your specific robot.

The difference would be in the kinematic calibration data.

The files in fmauch/universal_robot have been extended to allow you to import the calibration from your robot, which will then update link length and joint offsets such that the resulting URDF corresponds 100% with the kinematic structure of your specific robot.

So while from a high-level those files model the same robot type, the URDFs which will be uploaded to robot_description are actually different.

I assume both ur5.urdf.xacro are describing the same manipulator and should produce the same Ik solver but it obviously does not!

that would not be a(n) (entirely) correct assumption.

The files in ros-industrial/universal_robot model the kinematics of a single robot, which is almost guaranteed not to correspond to the kinematics of your specific robot.

The difference would be in the kinematic calibration data.

The files in fmauch/universal_robot have been extended to allow you to import the calibration from your robot, which will then update link length and joint offsets such that the resulting URDF corresponds 100% with the kinematic structure of your specific robot.

So while from a high-level those files model the same robot type, the URDFs which will be uploaded to robot_description are actually different.


Edit:

does this mean, if I want to use a self generated IkFast plugin for Moveit to use, I should go through the ur robot ros driver to the point where I get the calibration data from the robot first. Then use that data to generate a urdf with the calibration data to use the docker image to generate the IkFast plugin before using the moveit setup assistant to generate the moveit config suit for use?

If you want the IKFast plugin to be generated while taking the calibration data of your robot into account, then: yes.

At the same time, I would like to ask how is the joint_limited situation for ur5? You and others started to discuss this issue back from 2014. Have you come to a conclusion that we do not need to limit the joints to just +-pi except for the elble? And a further question, is the vel_joint_trajectory_controller of the new ur robot driver ready for use yet?

These seem unrelated to the question you ask in your OP.

It would be better to post new questions -- after verifying these have not been asked before.