0
$\begingroup$

Rosanswers logo

Hi there!

I implemented a small program to test for a sequence of positions if a solution for inverse kinematics exists. I used some of the code from the tutorial. Now, I would like to set the GoalOrientationTolerance and GoalPositionTolerance as it can be done in the move_group API, however it seems like I only can set the number of attempts and the timeout.

Is there a way to initiate inverse kinematics computation with different tolerances? And what is the default tolerance?

My thanks, F4bich


Originally posted by F4bich on ROS Answers with karma: 79 on 2017-07-31

Post score: 0

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

Hey F4bich,

good to hear you are still working with this! :)

Sadly, there is no exposed interface at the moment to set the tolerance per IK request. I'm thinking about more generic interfaces for IK plugins at the moment, but nothing has been implemented yet.

The general default tolerance for IK plugins in MoveIt is 1e-5, although every plugin specifies this on their own and it also remains for the plugin to decide what that tolerance means w.r.t. the combination of position & orientation differences.

The kdl plugin reads a ros parameter "epsilon" that allows to set the tolerance during startup. TracIK does not export its epsilon as a parameter, but I'm sure they would welcome a pull-request to change that though.

As jrgnicho already proposed you could use the low-level functions of KDL/TracIK where you can pass in tolerance as a parameter.

-- Addition --

Please be aware that there is a fundamental difference between Goal*Tolerance for MoveGroup requests and epsilon/tolerance values for IK requests. MoveIt samples from the regions specified by the former and passes the sampled poses to the IK plugin to generate goal poses for planning. The latter are directly passed to the IK plugin.


Originally posted by v4hn with karma: 2950 on 2017-08-02

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$
0
$\begingroup$

Rosanswers logo

You can try link text. It takes tolerances on the cartesian pose.


Originally posted by jrgnicho with karma: 486 on 2017-08-01

This answer was NOT ACCEPTED on the original site

Post score: 1


Original comments

Comment by F4bich on 2017-08-01:
Do you know if it is possible to use this through the MoveIt! API?

Comment by jrgnicho on 2017-08-01:
Here is the link to the moveit plugin , However, it looks like the tolerance cannot be specified at the plugin level.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.