Rosanswers logo

Hi all,

I'm using object_manipulator, as part of the Object Manipulation Pipeline, to approach an object, grasp it, and pick it up.

I would like to approach from a horizontal/sideways direction (to get the object right into the palm), then after sensing/grasping, lift the object in the vertical direction.

In MYROBOT_hand_description.yaml I have specified the grasping approach direction as +x, and the gripper moves horizontally towards the object.

hand_approach_direction: [1.0,0.0,0.0]

Then in my Service call to the pickup action of object_manipulator, I specify the pickup direction of +z :

direction.header.frame_id = "base_link";
direction.vector.x = 0;
direction.vector.y = 0;
direction.vector.z = 1;
pickup_goal.lift.direction = direction;
pickup_goal.lift.desired_distance = 0.15;
pickup_goal.lift.min_distance = 0.08;

However, after grasping, the gripper reverses the interpolated IK move along the -x direction, then I think it tries to plan the kinematics for the next move...

  • Can I make it retract along a different direction to the approach direction?

  • Or, can I disable the reverse interpolated move, and go straight to planning the 'lift' phase?

Much appreciated.

Originally posted by dbworth on ROS Answers with karma: 1103 on 2013-02-27

Post score: 2


1 Answer 1


Rosanswers logo

Probably you encounter this problem in simulation only. I had the same problem and solved it by just changing the mass value in my objects urdf file to a much smaller value.

If you really want to solve this problem you have to tune you controller-gains. Probably you find this config in you arms <arm_name_gazebo>/config folder.

Originally posted by fivef with karma: 2756 on 2013-04-15

This answer was ACCEPTED on the original site

Post score: 1


Your Answer

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