Skip to content
This repository has been archived by the owner on Nov 13, 2017. It is now read-only.

Default MoveIt! setup forgets to load kinematics into /move_group namespace #629

Open
pbeeson opened this issue Dec 9, 2015 · 5 comments

Comments

@pbeeson
Copy link

pbeeson commented Dec 9, 2015

Whenever you use the MoveIt! Setup Wizard to set up a new package with move groups, it makes all the launch files. But forgets an important portion.

When run out of the box, kinematics.yaml gets loaded in /robot_description_kinematics/. But, the moveit kinemaitcs plugins themselves are run under the /move_group namespace, so they expect to get parameters at /move_group//parameter1, etc. Whenever you change any non-'kinematics_solver' parameters in the kinematic.yaml, the KDL plugin (for instance) looks for things like 'kinematics_solver_timeout' in /move_group/left_arm/kinematics_solver_timeout as an example. But the MoveIt setup doesn't include loaded the kinematics.yaml into /move_group namespace. This is an oversight that could be VERY confusing to people.

Simple solution: Add the following to the move_group.launch file created for the robot.

 <group ns="move_group">
    <rosparam command="load" file="$(find PACKAGE_NAME)/config/kinematics.yaml"/>
  </group>
@ceesietopc
Copy link

@pbeeson Thank you for pointing this out! I've been spending the last days trying to figure out why I could not control my robotic arm. I tried MoveIt! commander's set_pose_target and sending the MoveActionGoal myself, but it did not work and the only feedback I got was "Unable to construct goal representation".

Only when I tried to explicitly call the /compute_ik service, I received a warning that the necessary components were not loaded. Adding your snippet to my launch file fixed the problems for all methods I tried before.

Any reason why this is not part of the default move_group.launch? It would greatly increase the "works-out-of-the-box"-aspect for cartesian setpoints.

@v4hn
Copy link
Contributor

v4hn commented Feb 26, 2017

If this is really still an issue, it would be a pretty severe one and it just should not be there.
I never noticed problems with this until now.

@ceesietopc Could you create an issue for this in the new repository?
I'm not able to verify this at the moment.

The proposed fix is a workaround and would upload the parameters in two different locations and we should avoid this upstream.
Also I'm not sure which code exactly too look into here.
A couple of links to the respective lines of code would probably help to understand this..

@v4hn
Copy link
Contributor

v4hn commented Feb 26, 2017

@pbeeson I just noticed you're associated with TRAClabs.
Do you know if the trac plugin circumvents this problem?

@pbeeson
Copy link
Author

pbeeson commented Feb 26, 2017 via email

@ceesietopc
Copy link

I will try to validate and create an issue for this in the new repository later this week.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants