Uses open-loop Cartesian controllers for all movement. More...
#include <approach_lift_grasp.h>
Protected Member Functions | |
virtual object_manipulation_msgs::GraspResult | approachAndGrasp (const object_manipulation_msgs::PickupGoal &pickup_goal, const manipulation_msgs::Grasp &grasp, GraspExecutionInfo &execution_info) |
Uses open-loop Cartesian controllers for all movement.
Initial check consists of non-collision-aware IK for the grasp and pre-grasp.
Execution consists of using Cartesian controllers to move directly to the pre-grasp, ignoring any possible collisions, then opening the hand to the desired pre-grasp configuration, then moving from pre-grasp to grasp again with Cartesian controllers (reactively if desired).
This is intended for crowded situations where the hand is already close to the pre-grasp and we want to just move directly there, shove things out of the way, and grasp.
Definition at line 281 of file approach_lift_grasp.h.
object_manipulation_msgs::GraspResult object_manipulator::UnsafeGraspPerformer::approachAndGrasp | ( | const object_manipulation_msgs::PickupGoal & | pickup_goal, |
const manipulation_msgs::Grasp & | grasp, | ||
GraspExecutionInfo & | execution_info | ||
) | [protected, virtual] |
Reimplemented from object_manipulator::ReactiveGraspPerformer.
Definition at line 651 of file approach_lift_grasp.cpp.