Package intrinsic_proto.grasping
Message
BaseGraspPlannerParams
Message
BoxShapedGraspAnnotationParams
Message
GraspAnnotationConstraint
Message
GraspExecutionPlannerParams
Message
GraspExecutionPlanningResult
Message
IkCollisionCheckerParams
Message
ManualGraspAnnotations
Message
MockGraspPlannerParams
Message
ParameterizedCentricGripperSpecs
Message
ParameterizedGripperSpecs
Message
ParameterizedPinchGripperSpecs
Message
ParameterizedSuctionGripperSpecs
Message
PlacementConstraintCheckerParams
Message
PlacementPoseConstraint
Message
RepeatedPoseBasedGrasps
Message
SchmalzMultiAxisGraspAnnotation
Message
SchmalzMultiAxisGraspCommand
Message
StoredGraspAnnotations
Message
StraightLineCheckerParams
Message
TopDownGraspRankerParams
Messages
message AttemptedGrasp intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasp |
intrinsic_proto.grasping.Grasp
|
The attempted grasp. |
| 2 | success |
bool
|
Whether the grasp successfully picked up an object. |
message AxisConstraint (Nested in intrinsic_proto.grasping.GraspAnnotationConstraint ) intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | axis |
repeated
intrinsic_proto.Vector3
|
The axis to filter grasp poses by, in the base frame of the object. Grasp poses are filtered out if the Z-axis of the grasp pose is not aligned and in the same direction as the axis. |
| 2 | angle_tolerance_in_radians |
optional
float
|
The angle tolerance in radians to filter grasp poses. The default value is 0.01 radians. |
message BaseGraspPlannerParams intrinsic/manipulation/grasping/grasp_planner_params.proto
Parameters to construct a BaseGraspPlanner
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasp_infos |
repeated
intrinsic_proto.grasping.PoseBasedGraspInfo
|
|
| 2 | max_num_grasps |
optional
int64
|
Maximum number of grasps to return. |
| 3 | grasp_frame_z_offset_m |
optional
float
|
Grasp frame z-axis offset in its positive direction. Used to locally adjust the grasp point. E.g., 0.02 means grasp is 2cm further along the z-axis (usually means it's 2cm deeper into the object or closer to the object). |
| 4 | retract_dist_m |
optional
float
|
The distance between grasp and pregrasp frames. |
| 6 | tool_frame |
intrinsic_proto.world.TransformNodeReference
|
The tool frame to use for the grasp. |
| 7 | robot_name |
string
|
The robot to perform this grasp. |
| 8 | rankers_params |
optional
intrinsic_proto.grasping.GraspRankersParams
|
Ranker specific parameters. |
| 10 | grasp_bbox_zone |
optional
intrinsic_proto.manipulation.OrientedBoundingBoxWorkspace
|
Use this to specify target picking zone and perform zone-based grasp
planning. This is only used if |
| 11 | adapters_params |
optional
intrinsic_proto.grasping.GraspAdaptersParams
|
Adapter specific parameters. |
| 12 | max_num_recent_grasps |
optional
int32
|
The maximum number of recently executed grasps to consider in planning. |
| 13 | category |
string
|
The object category used by The value of this field must match the category of the grasp target in use.
For example, if |
message BoundingBoxConstraint (Nested in intrinsic_proto.grasping.GraspAnnotationConstraint ) intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | oriented_bounding_boxes |
repeated
intrinsic_proto.geometry.OrientedBoundingBox3
|
|
| 2 | exclude_poses_in_box |
optional
bool
|
Only select grasp poses outside the box, defaults to false. |
message BoxShapedGraspAnnotationParams intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | obj_dims_in_meters |
optional
intrinsic_proto.Vector3
|
Dimensions of the box shaped object in its x, y, z axes. Used to compute grasp poses with respect to the target object. |
| 2 | obj_t_obj_center |
optional
intrinsic_proto.Pose
|
The pose of object's center in its mesh frame. Useful when the mesh frame isn't at the center of the box. Used to compute grasp poses with respect to the target object. Defaults to the identity pose. |
| 3 | num_rotations |
optional
int32
|
Number of grasps to add on each surface. These are grasp poses at the
center position of a surface, rotated around the z-axis, evenly spread in
360 degrees. E.g., if |
| 4 | surfaces |
repeated
int32
|
The object surfaces to which to add grasps. Defaults to all surfaces if
unspecified or empty. Used to compute grasp poses with respect
to the target object. |
message DebugInfo (Nested in intrinsic_proto.grasping.GraspPlan ) intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | timing_info |
map<string, double>
|
|
| 2 | scene_uuid |
optional
string
|
Scene ID if this grasp plan is computed from a perception scene. |
message DisableAnnotation intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | annotation_idx |
int32
|
message DiversityRankerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | min_score |
optional
float
|
The score to return if a grasp is too close to a recently failed grasp. Defaults to 0.001 when unspecified. Set this to 0 will effectively cause the grasp to be filtered. |
| 2 | distance_threshold_in_meters |
optional
float
|
The translation distance used to decide
whether a grasp G1 is too close to a grasp G2 in |
| 3 | distance_threshold_z_in_meters |
optional
float
|
Similar to distance_threshold, but only used to check
the distance in the z axis. dist(G1_z, G2_z)) <
distance_threshold_z must be true for returning
|
| 4 | name |
optional
string
|
Name of the ranker. Default to diversity_grasp_ranker. |
message FingerGrasp intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasp |
intrinsic_proto.grasping.Grasp
|
|
| 2 | open_position |
double
|
FingerGrasp specific |
| 3 | close_position |
double
|
|
| 4 | max_effort |
double
|
Max force. |
message Grasp intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasp_id |
string
|
|
| 2 | grasp_motion_spec |
intrinsic_proto.motion_planning.v1.PoseEquality
|
|
| 3 | grasp_command |
intrinsic_proto.grasping.GraspCommand
|
|
| 4 | postgrasp_motion_spec |
intrinsic_proto.motion_planning.v1.PoseEquality
|
|
| 5 | object_pose |
intrinsic_proto.grasping.ObjectPose
|
|
| 6 | history |
repeated
intrinsic_proto.grasping.Grasp.GraspHistory
|
|
| 7 | object_category |
string
|
|
| 8 | pregrasp_motion_spec |
intrinsic_proto.motion_planning.v1.PoseEquality
|
|
| 9 | score |
double
|
The score of the grasp. Range: [0, 1]. A higher score means a higher probability of execution success. |
| 10 | object_name |
optional
string
|
The name of the target object to grasp in the world. |
| 11 | visibility |
optional
float
|
Confidence of detection, in range [0, 1]. |
| 12 | pregrasp_ik_solution |
intrinsic_proto.icon.JointVec
|
An IK solution for the pregrasp pose. |
| 13 | grasp_ik_solution |
intrinsic_proto.icon.JointVec
|
An IK solution for the grasp pose. |
| 14 | possible_placement_pose |
optional
intrinsic_proto.motion_planning.v1.PoseEquality
|
A possible placement pose only if
PlacementConstraints.placement_pose_constraint is specified and the
constraint is feasible.
This provides a feasible placement pose for the grasp for the user when
|
message GraspAdaptersParams intrinsic/manipulation/grasping/grasp_adapter_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | top_down_adapter_params |
optional
intrinsic_proto.grasping.TopDownAdapterParams
|
Parameters for top-down adapter. |
message GraspAnnotationConstraint intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 3 | min_finger_contact_area |
optional
float
|
The minimum contact area between the finger and the object, expressed as a percentage of the finger area (width x length). Annotations with the contact area below this will be filtered out. Defaults to 0.0. Must be within [0.0, 1.0]. This will be satisfied for each finger and will be ignored if not using a ParameterizedPinchGripper. |
|
oneof Constraint
|
|||
| 1 | bounding_box_constraint |
intrinsic_proto.grasping.GraspAnnotationConstraint.BoundingBoxConstraint
|
The bounding box to filter grasp poses, in base frame of the object. |
| 2 | axis_constraint |
intrinsic_proto.grasping.GraspAnnotationConstraint.AxisConstraint
|
Axis constraint to filter grasp poses. |
message GraspAnnotations intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
|
oneof grasp_annotations
|
|||
| 1 | box_shaped_grasp_annotations |
intrinsic_proto.grasping.BoxShapedGraspAnnotationParams
|
|
| 2 | manual_grasp_annotations |
intrinsic_proto.grasping.ManualGraspAnnotations
|
|
| 4 | stored_annotations |
intrinsic_proto.grasping.StoredGraspAnnotations
|
|
message GraspAnnotationsEdit intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
|
oneof edit
|
|||
| 1 | disable_annotation |
intrinsic_proto.grasping.DisableAnnotation
|
|
message GraspAnnotationsEdits intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | edits |
repeated
intrinsic_proto.grasping.GraspAnnotationsEdit
|
message GraspCommand intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
|
oneof grasp_command
|
|||
| 1 | grasp_request |
intrinsic_proto.eoat.GraspRequest
|
|
| 2 | pinch_gripper_command |
intrinsic_proto.gripper.PinchGripperCommand
|
|
message GraspConstraint (Nested in intrinsic_proto.grasping.GraspTarget ) intrinsic/manipulation/grasping/grasp.proto
Define a message to use it with "optional".
| Field | Type | Description | |
|---|---|---|---|
|
oneof grasp_constraint_type
|
|||
| 1 | poses |
intrinsic_proto.grasping.GraspTarget.Poses
|
|
| 2 | geometric_constraint |
intrinsic_proto.motion_planning.v1.GeometricConstraint
|
|
message GraspExecutionPlan intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | traj_to_pregrasp |
optional
intrinsic_proto.icon.JointTrajectoryPVA
|
Trajectory to move from starting position to pregrasp position/pose. If unspecified, then traj_to_grasp moves from starting position to grasp position/pose via pregrasp position/pose in a single trajectory. |
| 2 | traj_to_grasp |
intrinsic_proto.icon.JointTrajectoryPVA
|
If traj_to_pregrasp is specified, then this trajectory moves from pregrasp position/pose to grasp position/pose; otherwise this moves from start to grasp via pregrasp in a single trajectory. |
| 3 | traj_to_postgrasp |
intrinsic_proto.icon.JointTrajectoryPVA
|
Trajectory to move from grasp position to post position/pose. |
message GraspExecutionPlannerParams intrinsic/manipulation/grasping/grasp_execution_planner_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | robot_name |
string
|
The robot to execute a grasp. |
| 2 | path_planning_time_out_in_sec |
optional
int64
|
The timeout in second for the path planning. If not set, use default value set in MotionPlannerService. |
| 3 | blend_pregrasp_and_grasp_trajs |
optional
bool
|
If True, the robot moves from starting position to grasp position via pregrasp position in a single trajectory. Default to False. |
| 4 | pregrasp_motion_path_constraints |
optional
intrinsic_proto.motion_planning.v1.PathConstraint
|
The path constraints applied to the motion segment from start to the pregrasp pose. |
| 5 | grasp_motion_path_constraints |
optional
intrinsic_proto.motion_planning.v1.PathConstraint
|
The path constraints applied to the motion segment from the pregrasp pose to the grasp pose. |
| 6 | postgrasp_motion_path_constraints |
optional
intrinsic_proto.motion_planning.v1.PathConstraint
|
The path constraints applied to the motion segment from the grasp pose to the postgrasp pose. |
| 7 | pregrasp_motion_dynamic_cartesian_limits |
optional
intrinsic_proto.motion_planning.v1.DynamicCartesianLimits
|
The DynamicCartesianLimits applied to the motion segment from start to the pregrasp pose. |
| 8 | grasp_motion_dynamic_cartesian_limits |
optional
intrinsic_proto.motion_planning.v1.DynamicCartesianLimits
|
The DynamicCartesianLimits applied to the motion segment from the pregrasp pose to the grasp pose. |
| 9 | postgrasp_motion_dynamic_cartesian_limits |
optional
intrinsic_proto.motion_planning.v1.DynamicCartesianLimits
|
The DynamicCartesianLimits applied to the motion segment from the grasp pose to the postgrasp pose. |
| 10 | collision_excluded_eoat |
optional
string
|
DEPRECATED: Use |
| 11 | collision_excluded_eoat_parts |
repeated
intrinsic_proto.world.ObjectReference
|
If specified, ignore collisions between the given EOAT (end-of-arm tool) parts and the target object at grasp pose. This isn't part of the path constraints because the target object is often unknown at construction time. |
message GraspExecutionPlanningResult intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasp_id |
string
|
The ID of the grasp that we were asked to plan for. |
| 4 | planning_time_in_seconds |
double
|
The total time took to plan this grasp execution. |
| 5 | debug_message |
optional
string
|
Message to give more details to this grasp execution planning. |
|
oneof planning_result
|
|||
| 2 | grasp_execution_plan |
intrinsic_proto.grasping.GraspExecutionPlan
|
The actual plan if planning is successful. |
| 3 | failure_reason |
intrinsic_proto.grasping.GraspExecutionPlanningResult.FailureReason
|
Cause of planning failure. |
message GraspHistory (Nested in intrinsic_proto.grasping.Grasp ) intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | name |
string
|
|
| 2 | result |
intrinsic_proto.grasping.HeuristicResult
|
message GraspPlan intrinsic/manipulation/grasping/grasp.proto
Direct mapping to the GraspPlan type.
| Field | Type | Description | |
|---|---|---|---|
| 1 | filtered_grasps |
repeated
intrinsic_proto.grasping.Grasp
|
|
| 2 | grasps |
repeated
intrinsic_proto.grasping.Grasp
|
|
| 3 | unexamined_grasps |
repeated
intrinsic_proto.grasping.Grasp
|
|
| 4 | debug_info |
optional
intrinsic_proto.grasping.GraspPlan.DebugInfo
|
Optional debug information. |
message GraspPlannerParams intrinsic/manipulation/grasping/grasp_planner_params.proto
| Field | Type | Description | |
|---|---|---|---|
|
oneof params
|
|||
| 1 | base_grasp_planner_params |
intrinsic_proto.grasping.BaseGraspPlannerParams
|
|
| 2 | mock_grasp_planner_params |
intrinsic_proto.grasping.MockGraspPlannerParams
|
|
message GraspRankersParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 2 | height_ranker_params |
optional
intrinsic_proto.grasping.HeightRankerParams
|
Parameters for height based ranker. |
| 3 | ik_collision_checker_params |
optional
intrinsic_proto.grasping.IkCollisionCheckerParams
|
Parameters for IK-collision checker. IK and collision parameters specified here are also used for the StraightLineChecker if the latter is enabled. |
| 4 | visibility_ranker_params |
optional
intrinsic_proto.grasping.VisibilityRankerParams
|
Parameters for visibility based ranker. |
| 5 | top_down_grasp_ranker_params |
optional
intrinsic_proto.grasping.TopDownGraspRankerParams
|
Parameters for TopDownGraspRanker. |
| 6 | straight_line_checker_params |
optional
intrinsic_proto.grasping.StraightLineCheckerParams
|
Parameters for StraightLineChecker. This uses the same IK and
collision settings specified in |
| 7 | ranker_weights |
map<string, float>
|
Weights for the rankers. Weight values have to be non-negative. If the map is empty and a visibility ranker is used, then the visibility ranker's weight is set to 10, and others set to 1; if the map is empty and no visibility rankers are used, then all weights are 1. |
| 8 | diversity_ranker_params |
optional
intrinsic_proto.grasping.DiversityRankerParams
|
Parameters for diversity grasp ranker. |
| 9 | placement_constraint_checker_params |
optional
intrinsic_proto.grasping.PlacementConstraintCheckerParams
|
Parameters for placement constraint checker. |
message GraspTarget intrinsic/manipulation/grasping/grasp.proto
The object to grasp and grasp constraints
| Field | Type | Description | |
|---|---|---|---|
| 3 | grasp_constraint |
optional
intrinsic_proto.grasping.GraspTarget.GraspConstraint
|
|
|
oneof target_type
|
|||
| 1 | object_category |
string
|
|
| 2 | object_reference |
intrinsic_proto.world.ObjectReference
|
|
| 4 | pose_estimates |
intrinsic_proto.grasping.PoseEstimatesTarget
|
|
message HeightRankerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | min_grasp_height |
float
|
Minimum expected height (in meters) of an object when grasping, expressed in root frame. |
| 2 | max_grasp_height |
float
|
Maximum expected height (in meters) of an object when grasping, expressed in root frame. |
| 3 | name |
optional
string
|
Name of the ranker. Default to height_grasp_ranker. |
message HeuristicResult intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | score |
double
|
Score range between 0.0 and 1.0. |
| 2 | description |
optional
string
|
|
| 3 | pregrasp_ik_solution |
optional
intrinsic_proto.icon.JointVec
|
An IK solution for the pregrasp pose. Only populated if straightline checker is enabled and if an IK solution is available. Unspecified otherwise. |
| 4 | grasp_ik_solution |
optional
intrinsic_proto.icon.JointVec
|
An IK solution for the grasp pose. Only populated if straightline checker is enabled and if an IK solution is available. Unspecified otherwise. |
message IkCollisionCheckerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | joint_limits |
optional
intrinsic_proto.JointLimitsUpdate
|
Joint limits used in grasp/pregrasp pose IK checks. |
| 2 | check_collision_at_grasp_pose |
optional
bool
|
Whether to check collisions at grasp pose. On top of this, if
|
| 3 | require_same_branch_ik |
optional
bool
|
Whether to require grasp pose to have same kinematic branch as starting robot joint positions. |
| 4 | max_num_solutions |
optional
int32
|
Passed to |
| 6 | name |
optional
string
|
Name of the ranker. Default to ik_collision_checker. |
| 8 | collision_excluded_eoat_parts |
repeated
intrinsic_proto.world.ObjectReference
|
Reference(s) to EOAT (end-of-arm tool) parts to allow collision with the target object at grasp pose. Has no effect if unspecified. |
| 9 | pinch_gripper_params |
optional
intrinsic_proto.grasping.PinchGripperParams
|
Parameters for pinch gripper used for collision checks. If specified, pinch gripper collisions will be checked at grasp pose. Do not set this field if the gripper is not a pinch gripper type. |
message InsertionConstraint intrinsic/manipulation/grasping/grasp_placement_constraint.proto
The insertion constraint to be satisfied at grasp planning.
| Field | Type | Description | |
|---|---|---|---|
| 1 | moving_frame |
intrinsic_proto.world.TransformNodeReference
|
Moving frame that will be aligned with the target frame(s) at placement. This typically is a tool or tip frame. |
| 2 | target_frames |
repeated
intrinsic_proto.world.TransformNodeReference
|
The representative frames during insertion to check for reachability. This can be a set of insertion waypoints that define the "boundary" of the insertion motion(s) that should be checked. If insertion is a linear motion, the start and end frames can be used. If insertion consists of one or more force skills: for moving to contact, use the start and end frames; for skills involving pattern search, include representative boundary points of the pattern and optionally the start point, e.g. the -X, X, -Y, Y, O points as illustrated below on the boundary of the following pattern bounding box. Y
Optionally specify other representative points within the motion range, but keep in mind that any new point will consume additional planning time. |
| 3 | collision_settings |
optional
intrinsic_proto.world.CollisionSettings
|
Local collision settings when checking force constraints. If not defined, it will use the global collision settings if defined or the default collision settings with zero margin if none are set. |
message ManualGraspAnnotation intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | obj_t_ref |
optional
intrinsic_proto.Pose
|
The reference frame pose in the object frame. E.g., this can be the object center frame. If unspecified, use the object frame as the reference frame. |
| 2 | ref_t_annotation |
intrinsic_proto.Pose
|
The annotation pose in the object frame. |
| 3 | num_rotations |
optional
int32
|
Number of rotations to add at this annotation around its z-axis,
evenly spread in 360 degrees. E.g., if |
| 4 | score |
optional
float
|
Score of this grasp annotation that reflects the preference of picking locations. E.g., a surface center pose might have a higher score than a pose near an edge, since center grasps are more stable. Default value: 1.0. |
message ManualGraspAnnotations intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | annotations |
repeated
intrinsic_proto.grasping.ManualGraspAnnotation
|
message MeshBytesData (Nested in intrinsic_proto.grasping.MeshData ) intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | mesh_bytes |
bytes
|
The mesh data as bytes. |
| 2 | file_type |
string
|
The file type of the mesh bytes, e.g.: "glb", "obj", "stl". |
message MeshData intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
|
oneof mesh_data
|
|||
| 1 | triangle_mesh |
intrinsic_proto.geometry.TriangleMesh
|
The triangle mesh with of the part with both faces and vertices specified within. The expectation is three dimensional vertices and triangles for the faces. Specified in row major order. |
| 2 | mesh_path |
string
|
The path to a mesh. |
| 3 | mesh_bytes |
intrinsic_proto.grasping.MeshData.MeshBytesData
|
The mesh bytes with the file type. |
| 4 | triangle_mesh_v1 |
intrinsic_proto.geometry.v1.TriangleMesh
|
The triangle mesh with of the part with both faces and vertices specified within. The expectation is three dimensional vertices and triangles for the faces. Specified in row major order. |
message MetricWeights intrinsic/manipulation/grasping/grasp_annotator.proto
The weights of the metrics to use for scoring annotation. Weights should be non-negative, and are used to compute the weighted geometric mean of the respective metrics. Only specified metrics are used for scoring annotation.
| Field | Type | Description | |
|---|---|---|---|
| 1 | distance_to_center_of_mass_weight |
optional
float
|
The weight of the distance to center of mass metric. When unspecified, the metric is not used for scoring annotation. |
| 2 | distance_to_bounding_box_corner_weight |
optional
float
|
The weight of the distance to bounding box corner metric. When unspecified, the metric is not used for scoring annotation. |
message MockGraspPlannerParams intrinsic/manipulation/grasping/grasp_planner_params.proto
Parameters to construct a MockGraspPlanner
| Field | Type | Description | |
|---|---|---|---|
| 1 | plan_to_return |
optional
intrinsic_proto.grasping.GraspPlan
|
message ObjectPose intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | reference |
intrinsic_proto.world.TransformNodeReference
|
|
| 2 | pose |
intrinsic_proto.Pose
|
message ParameterizedCentricGripperSpecs intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | opening_radius_in_meters |
float
|
The maximum opening radius of the gripper in meters. |
| 2 | closing_radius_in_meters |
float
|
The minimum closing radius of the gripper in meters, must be less than the opening radius. |
| 3 | finger_length_in_meters |
float
|
The length of the gripper fingers in meters. |
| 4 | finger_thickness_in_meters |
optional
float
|
The thickness of fingers in meters, defaults to 0.01 meters. |
| 5 | num_rotations |
optional
int32
|
The number of rotations to search for grasp annotations. The default value is 8. |
| 6 | min_search_increment_in_meters |
optional
float
|
Minimum increment in meter to search for along the axis of the cylinder. The default value is 0.005, must be greater than 0.001. |
| 7 | gripper_origin_t_tool_frame |
optional
intrinsic_proto.Pose
|
The transform to apply to the centric gripper relative to its origin. By default, the gripper z-axis points towards the object. |
message ParameterizedGripperSpecs intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
|
oneof gripper_specs
|
|||
| 1 | suction_gripper_specs |
intrinsic_proto.grasping.ParameterizedSuctionGripperSpecs
|
The specifications for a parameterized suction type gripper. |
| 2 | pinch_gripper_specs |
intrinsic_proto.grasping.ParameterizedPinchGripperSpecs
|
The specifications for a parameterized pinch type gripper. |
| 3 | centric_gripper_specs |
intrinsic_proto.grasping.ParameterizedCentricGripperSpecs
|
The specifications for a parameterized centric type gripper. |
message ParameterizedPinchGripperSpecs intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | opening_in_meters |
float
|
The opening of the gripper in meters. |
| 2 | finger_width_in_meters |
float
|
The width of the finger in meters. |
| 3 | finger_length_in_meters |
float
|
The length of the finger in meters. |
| 4 | antipodal_threshold_in_radians |
optional
float
|
The antipodal threshold in radians. If the two surface normals on the object is larger than the threshold, the pose is considered as antipodal. The default value is 3.0 radians. |
| 5 | gripper_origin_t_tool_frame |
optional
intrinsic_proto.Pose
|
The transform to apply to the pinch gripper relative to its origin. By default, the gripper z-axis points towards the object, y-axis is algined to the gripper opening direction, and x-axis is aligned to the gripper finger width. |
| 6 | min_closing_distance_in_meters |
optional
float
|
The minimum closing distance of the gripper in meters. Should be a non-negative value less than the opening of the gripper. By default, the value is assumed to be 0.0, i.e., the gripper closes completely. |
| 7 | collision_mesh |
optional
intrinsic_proto.grasping.MeshData
|
The additional collision mesh of the gripper. The mesh is assumed to be relative to the tool frame. |
message ParameterizedSuctionGripperSpecs intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | radius_in_meters |
float
|
The radius of the suction cup in meters. |
| 2 | surface_roughness_threshold_in_meters |
optional
float
|
The surface roughness threshold of the suction cup in meters. This is a measure of the "flatness" of the contact surface. Defaults to a lower bounded value of 0.003 meters, enter a larger value for more aggressive filtering. |
| 3 | suction_cup_coordinates |
repeated
intrinsic_proto.Vector2
|
The 2D coordinates of the suction cup locations in meters in the x-y plane of the tool frame where z = 0. |
| 4 | rotation_increment_in_radians |
optional
float
|
The rotation increment to search for grasp annotations in radians. The default value is pi/4 radians. |
| 5 | max_rotation_in_radians |
optional
float
|
The maximum rotation to stop searching for grasp annotations in radians. The default value is pi radians. |
| 6 | gripper_origin_t_tool_frame |
optional
intrinsic_proto.Pose
|
The transform to apply to the suction gripper relative to its origin. By default, the gripper z-axis points towards the object. |
message PinchGripperParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | eoat_reference |
intrinsic_proto.world.ObjectReference
|
Reference to the pinch gripper object. |
| 2 | open_position |
repeated
double
|
Joint positions for fully opening the gripper fingers. |
| 3 | close_position |
repeated
double
|
Joint positions for fully closing the gripper fingers. |
message PlacementConstraintCheckerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | placement_constraints |
intrinsic_proto.grasping.PlacementConstraints
|
Placement constraints to consider during grasp planning. |
| 2 | name |
optional
string
|
Name of the ranker. Default to placement_constraint_checker. |
message PlacementConstraints intrinsic/manipulation/grasping/grasp_placement_constraint.proto
Placement constraints to consider during grasp planning. Any specified constraints will be satisfied.
| Field | Type | Description | |
|---|---|---|---|
| 1 | placement_pose_constraint |
optional
intrinsic_proto.grasping.PlacementPoseConstraint
|
The placement pose constraint to be satisfied during grasp planning. |
| 2 | insertion_constraint |
optional
intrinsic_proto.grasping.InsertionConstraint
|
The insertion constraint to be satisfied during grasp planning. This checks the reachability of specified waypoints during insertion. For example, if the insertion is a linear motion, the two waypoints before and after the motion can be checked here; or if it's one or more force skills, some representative waypoints can be checked here. |
message PlacementPoseConstraint intrinsic/manipulation/grasping/grasp_placement_constraint.proto
The placement constraint of the exact placement pose to be satisfied during grasp planning.
| Field | Type | Description | |
|---|---|---|---|
| 1 | moving_frame |
intrinsic_proto.world.TransformNodeReference
|
Moving frame that will be aligned with the target frame at placement. This typically is the object reference frame, but can also be a tool or tip frame. |
| 2 | target_frame |
intrinsic_proto.world.TransformNodeReference
|
Target frame to align the moving frame with at placement. This should be the target frame before any force skills (if any) at placement, i.e. the beginning frame of any force skills at the end of placement. |
| 3 | target_frame_margins |
optional
intrinsic_proto.Point
|
The margins allowed in the [x, y, z] directions around the target frame. Must be non-negative. Set it to 0 for directions where no margin is needed. Currently only support margin in one of the [X, Y, Z] directions. Only specify this when specifying just the exact target frame does not fulfill the purpose, as it increases planning time. |
| 4 | disable_requiring_same_branch_ik |
optional
bool
|
Whether to require the IK of placement pose to have the same kinematic branch. Default to false. |
message PlateConfig (Nested in intrinsic_proto.grasping.SchmalzMultiAxisGraspAnnotation ) intrinsic/manipulation/grasping/schmalz_multi_axis_grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | from_geometry_origin_to_plate_frame |
intrinsic_proto.Pose
|
The plate pose in the geometry origin frame. |
| 2 | suction_cups_to_activate |
repeated
uint32
|
Indices of the suction cups to activate. |
message PoseBasedGrasp intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasp_id |
string
|
|
| 2 | grasp_frame |
intrinsic_proto.world.TransformNodeReference
|
For convenience, this frame is a child frame of the |
| 3 | pre_grasp_frame |
intrinsic_proto.world.TransformNodeReference
|
For convenience, this frame is a child frame of the |
| 4 | object |
intrinsic_proto.world.ObjectReference
|
The target object to pick |
| 5 | object_frame |
intrinsic_proto.world.TransformNodeReference
|
Object reference frame Will remove after b/296861796 is fixed. |
| 6 | pregrasp_ik_solution |
intrinsic_proto.icon.JointVec
|
An IK solution for the pregrasp pose. Only populated if straightline checker is enabled. |
| 7 | grasp_ik_solution |
intrinsic_proto.icon.JointVec
|
An IK solution for the grasp pose. Only populated if straightline checker is enabled. |
| 8 | possible_placement_pose |
intrinsic_proto.motion_planning.v1.PoseEquality
|
The placement pose only if PlacementPoseConstraint is specified and met.
The |
message PoseBasedGraspInfo intrinsic/manipulation/grasping/grasp.proto
Predefined grasp related information.
| Field | Type | Description | |
|---|---|---|---|
| 1 | obj_t_grasp |
intrinsic_proto.Pose
|
Grasp pose in the object frame. |
| 2 | score |
double
|
The estimated probability of success for this grasp assuming object pose is accurate, in the range [0, 1]. |
| 3 | grasp_label_in_set |
string
|
The label of this grasp in the given grasp set. |
message PoseEstimatesTarget intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | estimates |
repeated
intrinsic_proto.perception.v1.PoseEstimateInRoot
|
Pose estimates for objects in the scene. |
| 3 | object_category |
intrinsic_proto.assets.Id
|
The id of the Scene Object asset for which the pose estimates belong to. The asset must be installed in the solution. |
message Poses (Nested in intrinsic_proto.grasping.GraspTarget ) intrinsic/manipulation/grasping/grasp.proto
Define a list of poses to use it in oneof.
| Field | Type | Description | |
|---|---|---|---|
| 1 | poses |
repeated
intrinsic_proto.Pose
|
message RepeatedFingerGrasps intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | finger_grasps |
repeated
intrinsic_proto.grasping.FingerGrasp
|
message RepeatedGrasps intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | grasps |
repeated
intrinsic_proto.grasping.Grasp
|
message RepeatedPoseBasedGrasps intrinsic/manipulation/grasping/grasp.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | pose_based_grasps |
repeated
intrinsic_proto.grasping.PoseBasedGrasp
|
message SamplingOptions intrinsic/manipulation/grasping/grasp_annotator.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | centered_samples |
optional
bool
|
Add additional samples (on top of num_samples) along the center lines of each face. Number of additonal samples are computed based on object dimensions and spacing. Defaults to true. |
| 2 | min_sample_distance_in_meters |
optional
float
|
Minimum distance between samples in meters, defaults to 0.005m. |
message SchmalzMultiAxisGraspAnnotation intrinsic/manipulation/grasping/schmalz_multi_axis_grasp.proto
Catesian-pose based grasp annotation for Schmalz multi-axis grippers that specifies the plate poses and suction cups to activate. This gripper has 6 linear axis motors driving 4 plates, where each plate has 36 cups (total of 144). And each cups can be manually actuated. See https://docs.google.com/document/d/1caMlP20Ia8-a2r-beM5nnug-1SJEOSPyoctiyNvT2vg for more details.
| Field | Type | Description | |
|---|---|---|---|
| 1 | plate_configs |
repeated
intrinsic_proto.grasping.SchmalzMultiAxisGraspAnnotation.PlateConfig
|
List of plate configs for the four gripper plates,
in the ordering of numbers in schmalz_multi_axis_gripper.sdf
(e.g., the plate with |
| 2 | score |
optional
double
|
Score of this grasp annotation that reflects the preference among different grasps. This is because certain grasps are more likely to succeed than others. Default value: 1.0. |
message SchmalzMultiAxisGraspCommand intrinsic/manipulation/grasping/schmalz_multi_axis_grasp.proto
Grasp command for a Schmalz multi-axis gripper. Includes information for
target joint positions, the suction cups to activate, as
well as the target suction feedback for determining grasp success.
This is different from the SchmalzMultiAxisGraspAnnotation proto in that
this uses joint values instead of Cartesian poses.
| Field | Type | Description | |
|---|---|---|---|
| 1 | geometry_id |
string
|
The product part name of the geometry. Call it |
| 2 | gripper_id |
string
|
Name of the gripper object in the world. Call it |
| 3 | from_geometry_origin_to_gripper_tcp |
intrinsic_proto.Pose
|
The pose of the gripper TCP in the geometry's (i.e., the object's) origin frame. |
| 4 | joint_values |
repeated
double
|
Target positions of the 6 linear joints. |
| 5 | suction_cups_to_activate |
repeated
uint32
|
Indices of the suction cups to activate. Value has to be in the range of [0, 143]. |
| 6 | grasp_success_threshold |
optional
float
|
Grasp success threshold (e.g., percentage of suction cups that feels suction among those to activate). Default value: 1.0. |
message StoredGraspAnnotations intrinsic/manipulation/grasping/grasp_annotations.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | asset_id |
optional
string
|
The asset id of the object to which these annotations apply. Can be left out in situations where the asset_id can be inferred. Specifically, if the plan_targets for PlanGrasp either use the pose estimates or the grasp zone, then the asset_id will be inferred from those. Once b/462510961 is fixed, this field will be deprecated. |
| 2 | annotations_id |
optional
string
|
The annotations_id of the stored annotations. Defaults to "default". |
message StraightLineCheckerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 3 | name |
optional
string
|
Name of the ranker. Default to straight_line_checker. |
| 4 | traj_planning_timeout_sec |
optional
int32
|
Time limit to compute trajectory. Default to 10 seconds. |
| 5 | check_full_trajectory |
optional
bool
|
If true, check the full trajectory from the robot's current joint position to pregrasp pose and then to grasp pose. Otherwise, only check the straightline segment from pregrasp pose to grasp pose. |
message TopDownAdapterParams intrinsic/manipulation/grasping/grasp_adapter_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | target_angle_in_radians |
optional
float
|
|
| 2 | max_tilt_angle_in_radians |
optional
float
|
|
| 3 | append_to_grasp_id |
optional
string
|
|
| 4 | replace_adapted_grasps |
optional
bool
|
message TopDownGraspRankerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | top_down_score_threshold |
float
|
Used to filter out grasps based on how "top down" their approaching
directions are. Grasps whose normalized top-down value is less
than this will have a score of 0. E.g., When this is 0.5, all horizontal
and bottom-up pointed grasps are scored 0; if 0.75, then all grasps lower
than 45 degrees top-down are scored 0. See |
| 2 | name |
optional
string
|
Name of the ranker. Default to top_down_grasp_ranker. |
message VisibilityRankerParams intrinsic/manipulation/grasping/grasp_ranker_params.proto
| Field | Type | Description | |
|---|---|---|---|
| 2 | visibility_threshold |
float
|
Minimum detection visibility in range [0,1] for a grasp to be considered valid. |
| 3 | name |
optional
string
|
Name of the ranker. Default to visibility_grasp_ranker. |
Enums
enum FailureReason intrinsic/manipulation/grasping/grasp.proto
| Name | Number | Description |
|---|---|---|
UNSET |
0 | |
PREGRASP_MOTION_PLAN_FAILED |
1 | |
GRASP_MOTION_PLAN_FAILED |
2 | |
POSTGRASP_MOTION_PLAN_FAILED |
3 | |
START_POSITION_IN_COLLISION |
4 |