Only released in EOL distros:  

pr2_object_manipulation: active_realtime_segmentation | fast_plane_detection | manipulation_worlds | object_recognition_gui | object_segmentation_gui | pick_and_place_demo_app | pr2_create_object_model | pr2_grasp_adjust | pr2_gripper_grasp_controller | pr2_gripper_grasp_planner_cluster | pr2_gripper_reactive_approach | pr2_gripper_sensor_action | pr2_gripper_sensor_controller | pr2_gripper_sensor_msgs | pr2_handy_tools | pr2_interactive_gripper_pose_action | pr2_interactive_manipulation | pr2_interactive_object_detection | pr2_manipulation_controllers | pr2_marker_control | pr2_navigation_controllers | pr2_object_manipulation_launch | pr2_object_manipulation_msgs | pr2_pick_and_place_demos | pr2_tabletop_manipulation_launch | pr2_wrappers | rgbd_assembler | robot_self_filter_color | segmented_clutter_grasp_planner | simple_Jtranspose_controller | tabletop_collision_map_processing | tabletop_object_detector | tabletop_vfh_cluster_detector | vfh_recognition | vfh_recognizer_db | vfh_recognizer_fs

Package Summary

The pr2_grasp_adjust package provides an interface for finding grasp poses near a given input pose. The api includes a service server and an action server.

pr2_object_manipulation: active_realtime_segmentation | fast_plane_detection | manipulation_worlds | object_recognition_gui | object_segmentation_gui | pick_and_place_demo_app | pr2_create_object_model | pr2_grasp_adjust | pr2_gripper_grasp_controller | pr2_gripper_grasp_planner_cluster | pr2_gripper_reactive_approach | pr2_gripper_sensor_action | pr2_gripper_sensor_controller | pr2_gripper_sensor_msgs | pr2_handy_tools | pr2_interactive_gripper_pose_action | pr2_interactive_manipulation | pr2_interactive_object_detection | pr2_manipulation_controllers | pr2_marker_control | pr2_navigation_controllers | pr2_object_manipulation_launch | pr2_object_manipulation_msgs | pr2_pick_and_place_demos | pr2_pick_and_place_tutorial | pr2_tabletop_manipulation_launch | pr2_wrappers | rgbd_assembler | robot_self_filter_color | segmented_clutter_grasp_planner | tabletop_collision_map_processing | tabletop_object_detector | tf_throttle

Package Summary

The pr2_grasp_adjust package provides an interface for finding grasp poses near a given input pose. The api includes a service server and an action server.

Overview

alt text

This package provides an interface for a grasp adjustment algorithm that finds suitable grasp poses near an input pose. This can be used to confirm or refine a pre-existing candidate grasp, such as one given by other grasp planners in the ROS grasp pipeline. Alternatively, the algorithm can be used to find grasps near the current gripper pose as the gripper moves around nearby objects.

Video

ROS API

API Stability

The ROS API is currently UNREVIEWED and UNSTABLE.

ROS Parameters

The default configuration of this package relies on several parameters being loaded onto the ROS parameter server. Currently this is done when the node is launched from grasp_adjust_server.launch. Users who wish to modify the default values can edit this file.

Many users may wish to modify some of these values temporarily and repeatedly during program run time. This can be done through the dynamic reconfigure server.

Some parameters belong in the private namespace of the node, others belong in a config/ or debug/ namespace below the private namespace, as given for each parameter below.

Parameters

load_debug_server (bool, default: False)
  • Tells the node whether to create the dynamic reconfigure server for debug settings.

Parameters

config/centroid_weight (double, default: 10.0)
  • The cost for distance between the local cloud centroid and the center-front of the gripper palm.
config/symmetry_weight (double, default: 0.3)
  • The cost for asymmetry of the point cloud between the gripper finger tips.
config/collision_weight (double, default: 1.0)
  • The cost (per point) for collisions between the point cloud and the gripper model.
config/normal_weight (double, default: -0.3)
  • The cost (per point) for normals that are aligned with the gripper frame's principal axes. Note that this value should be negative to reward a good grasp (low cost).
config/point_weight (double, default: -0.01)
  • The weight for enclosing additional points in the space between the robot finger tips.
config/point_bonus (double, default: -1.0)
  • Should probably be deprecated.
config/search_mode (int, default: 0)
  • Sets the search mode. Full grid search = 0; local search = 1.
config/search_6_dof (bool, default: True)
  • Sets whether to use a full 6-dof gradient descent on the gripper pose, or to only vary position + yaw about the world vertical (base_footprint).
config/grid_step_num (int, default: 1)
  • The number of steps in either direction from the input pose to use to populate the search grid. For example, for grid_step_num = 1, the grid will be 3x3; for a value of 2, the grid will be 5x5.
config/search_window (int, default: 2)
  • On each gradient step, the number of steps to search in either direction before choosing the optimal step value.
config/full_gradient_descents (int, default: 5)
  • The number of seed grasps on which to perform a full gradient descent, until each one reaches a local minimum.
config/angular_step_size (double, default: 0.1 radians)
  • The size of each angular step.

Parameters

debug/run_continuous (bool, default: False)
  • If this is set, the algorithm will run continuously. This is for debugging, as the return result is dsipalyed in rviz but otherwise discarded.

Wiki: pr2_grasp_adjust (last edited 2011-05-12 16:37:50 by aleeper)