Skip to main content

grasp_object

Skill class for ai.intrinsic.grasp_object skill.

A skill that plans and executes grasps of objects. This supports suction gripper, non-adaptive pinch gripper and adaptive pinch gripper. There are two workflows, one uses pose estimates (e.g., outputs of a estimate_pose skill) to plan grasps, and the other uses existing objects in the world (e.g., through passed-in PlanGraspParams.candidate_objects). The following preconditions and post-conditions depend on which workflow is taken.

The skill includes the following logic:

  • Grasp planning: ** Based on the object poses (extracted from passed in object references; or passedin pose estimates; or from a boundingbox zone and a target object category), proposes grasp and pregrasp poses. ** (Optionally) adapts grasps to increase their chance of success. ** Ranks grasps based on heuristics such as inverse kinematics feasibility, collision freeness, grasp approaching direction. ** Selects the best grasp candidates.
  • Grasp executions ** Plans and executes grasp motions. (The motion may be preplanned by the grasp planner service.) ** Opens and closes the gripper. ** Attaches the grasped object to the gripper in the belief world. ** Repeats the execution steps 1*3 for each proposed grasp, until one successfully picks up an object, which is verified by the gripper's gripping indicated signal (sometimes called part present).

Prerequisites

This skill does not have any prerequisite.

Usage Example

This skill does not have any usage example yet.

Parameters

plan_grasp_params

Grasp planning parameters.

execute_grasp_params

Grasp execution parameters.

fake_grasping

If True, don't turn on suction to pick up the object or check the gripper signal at the end of the grasp. The object will still be attached to the gripper in the world. Default to False.

gripper_type

Gripper type.

Capabilities

gripper

Resource with capability intrinsic_proto.gripper.GenericGripper

robot

Resource having all of the following capabilities:

  • Icon2Connection

  • Icon2PositionPart

Returns

attempted_grasps

Attempted grasps, including both failed and succeeded ones.

grasped_object

Object that has been grasped and is attached to the gripper.

scene_uiid

The ID of the scene used to plan the grasps, if a scene was used.

Error Code

CodeTitleRecovery Instructions
30100Plan grasp failurePlease check the error message for recovery instructions.
30200Execute grasp failurePlease check the error message for recovery instructions.
30300Invalid skill parameterizationPlease check input parameters, see https://flowstate.intrinsic.ai/docs/catalog/skills/how_to_guides/grasp_object/ for more details.
30400Generic value errorPlease check the error message for recovery instructions.
30500Generic runtime errorPlease check the error message for recovery instructions.
30501Cannot create new world objectPlease provide a valid ProductReader service.
30502Not implementedPlease check the error message for recovery instructions.