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

UR5e + ROS Melodic + MoveIt best setup for Inverse Kinematics

asked 2022-06-17 14:14:40 -0500

francirrapi gravatar image

updated 2022-06-17 14:15:50 -0500

Hi everyone,

I am using the robot to open a drawer through a Python program, and for doing this I am using a lot of points for the eef to reach every time using IK of MoveIt.

But mostly of the times the controller and planner fails (with Aborted message) and this entails to the failure or mostly to collision behaviours.

I am using the default setup of universal robots repo (calibration-devel branch of fmauch) and the ur_robot_driver (melodic branch) of Universal_Robots_ROS_Driver. As I have an attached gripper, I modified only the ur_macro.xacro file for translating the tool0 link with 0.18 on x-axis wrt flange.

Did I something wrong?? Can you suggest me any better setup, as controller/planner or ik-solver for this problem??

Thank you very much!! I would appreciate a lot your help!!!

edit retag flag offensive close merge delete

Comments

1

Which ik solver are you using now?

If anything source-based (ie: IKFast or handwritten): don't change the URDF, as it's likely you won't update the code, leading to the IK solver no longer corresponding (ie: matching) to your URDF.

Regardless of which IK solver:

I modified only the ur_macro.xacro file for translating the tool0 link with 0.18 on x-axis wrt flange.

Don't change tool0. That's not how it's supposed to work.

tool0 is used to represent an unconfigured tool frame (ie: all zeros). By definition if you change it, it cannot be tool0 any more.

Define a new frame, give it a proper name and use that as your tool frame.

gvdhoorn gravatar image gvdhoorn  ( 2022-06-18 04:02:17 -0500 )edit

Thank you very much @gvdhoorn for your answer!! Now I am using the default KDL solver, I tried some time ago even Trak-IK but did not solve the problem. Ah perfect now I understand. So in this case, as I am using KDL I can change the URDF, but not the tool0 link right?

And so for defining a new frame, I have to define it at the end of ur_macro.xacro in the same way as tool0 is defined??

francirrapi gravatar image francirrapi  ( 2022-06-18 08:35:22 -0500 )edit
1

Both KDL and TracIK are able to deal with runtime defined chains, so there shouldn't be an issue with updating your URDF/XACRO.

And so for defining a new frame, I have to define it at the end of ur_macro.xacro in the same way as tool0 is defined??

personally I would not edit anything in files in ur_description at all. Consider those read-only.

Adding EEF or additional frames can be done in a .xacro of your own, in your own package. See this for an example.

gvdhoorn gravatar image gvdhoorn  ( 2022-06-18 23:52:51 -0500 )edit

Perfect, so after the creation of this new .xacro file, with the merge of robot and gripper, I have to create a new moveit configuration with moveit setup assistant if I understood right, with the chain of robot group same as before, and the chain of gripper from his base link to which link exactly? (as it is a two finger gripper) And also, after the creation of the moveit config, which would be in this case the frame that the IK will use as EEF? (as before was the tool0 frame)

francirrapi gravatar image francirrapi  ( 2022-06-19 18:08:47 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2022-06-28 15:20:22 -0500

francirrapi gravatar image

I solved the problem by creating a new .xacro file including all macros of robot and gripper where I also added a new frame for the EEF attached to the flange link of the robot and then creating a new moveit config through moveit setup assistant. Thank you very much!!

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2022-06-17 14:14:40 -0500

Seen: 267 times

Last updated: Jun 17 '22