Robotics StackExchange | Archived questions

Ik of ur10 giving no results?

Hi I managed to create a file in which I set a end-effector message, in this case, the "wrist3link" of the ur10 arm and it solves the IK and the I publish the joint states in order for the robot to move to that position in gazebo. However, I'm having problems with calculating the IK. Sometimes it works, but then sometimes I set one pose and it comes as "solution not found" even though I know that pose exists in the robot workspace. This is how I'm calculating the IK. Don't know if something is wrong. I'm unexperienced with this.

end_target.position.x = 0.5;
end_target.position.y = 0.5;
end_target.position.z = 0.0;
end_target.orientation.w = 0.0;

Eigen::Affine3d end_effector_state;
tf::poseMsgToEigen(end_target, end_effector_state);
bool found_ik = kinematic_state->setFromIK(joint_model_group, end_effector_state,"wrist_3_link", 4, 1.0);

if (found_ik)
{
    kinematic_state->copyJointGroupPositions(joint_model_group, joint_values);
    for(std::size_t i=0; i < joint_names.size(); ++i)
    {
        ROS_INFO("Joint %s: %f", joint_names[i].c_str(), joint_values[i]);
    }
}
else
{
    ROS_INFO("Did not find IK solution");
}

And here is my kinematics.yaml file

manipulator:
   kinematics_solver: ur_kinematics/UR10KinematicsPlugin
   kinematics_solver_search_resolution: 0.005
   kinematics_solver_timeout: 0.005
   kinematics_solver_attempts: 4

Asked by JuanTelo on 2018-02-10 13:04:22 UTC

Comments

Your question title is "IK [..] giving wrong results", but your question text says "no solution found". Those are two different things. Please clarify which it is.

Asked by gvdhoorn on 2018-02-10 15:12:54 UTC

@gvdhoorn my apologies, I corrected it.

Asked by JuanTelo on 2018-02-10 15:26:33 UTC

Answers