pycram.robot_plans.actions.core.pick_up#

Attributes#

Classes#

ReachToPickUpAction

Let the robot reach a specific pose.

PickUpAction

Let the robot pick up an object.

GraspingAction

Grasps an object described by the given Object Designator description

Module Contents#

pycram.robot_plans.actions.core.pick_up.logger#
class pycram.robot_plans.actions.core.pick_up.ReachToPickUpAction#

Bases: pycram.robot_plans.actions.base.ActionDescription

Let the robot reach a specific pose.

object_designator: semantic_digital_twin.world_description.world_entity.Body#

Object designator_description describing the object that should be picked up

arm: pycram.datastructures.enums.Arms#

The arm that should be used for pick up

grasp_description: pycram.datastructures.grasp.GraspDescription#

The grasp description that should be used for picking up the object

_pre_perform_callbacks = []#

List to save the callbacks which should be called before performing the action.

__post_init__()#
plan() None#

Symbolic plan. Should only call motions or sub-actions.

move_gripper_to_pose(pose: pycram.datastructures.pose.PoseStamped, movement_type: pycram.datastructures.enums.MovementType = MovementType.CARTESIAN, add_vis_axis: bool = True)#

Move the gripper to a specific pose.

Parameters:
  • pose – The pose to go to.

  • movement_type – The type of movement that should be performed.

  • add_vis_axis – If a visual axis should be added to the world.

validate(result: typing_extensions.Optional[typing_extensions.Any] = None, max_wait_time: typing_extensions.Optional[datetime.timedelta] = None)#

Check if object is contained in the gripper such that it can be grasped and picked up.

classmethod description(object_designator: typing_extensions.Union[typing_extensions.Iterable[semantic_digital_twin.world_description.world_entity.Body], semantic_digital_twin.world_description.world_entity.Body], arm: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.enums.Arms], pycram.datastructures.enums.Arms] = None, grasp_description: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.grasp.GraspDescription], pycram.datastructures.grasp.GraspDescription] = None) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[ReachToPickUpAction]]#
class pycram.robot_plans.actions.core.pick_up.PickUpAction#

Bases: pycram.robot_plans.actions.base.ActionDescription

Let the robot pick up an object.

object_designator: semantic_digital_twin.world_description.world_entity.Body#

Object designator_description describing the object that should be picked up

arm: pycram.datastructures.enums.Arms#

The arm that should be used for pick up

grasp_description: pycram.datastructures.grasp.GraspDescription#

The GraspDescription that should be used for picking up the object

_pre_perform_callbacks = []#

List to save the callbacks which should be called before performing the action.

__post_init__()#
plan() None#

Symbolic plan. Should only call motions or sub-actions.

validate(result: typing_extensions.Optional[typing_extensions.Any] = None, max_wait_time: typing_extensions.Optional[datetime.timedelta] = None)#

Check if picked up object is in contact with the gripper.

classmethod description(object_designator: typing_extensions.Union[typing_extensions.Iterable[semantic_digital_twin.world_description.world_entity.Body], semantic_digital_twin.world_description.world_entity.Body], arm: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.enums.Arms], pycram.datastructures.enums.Arms] = None, grasp_description: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.grasp.GraspDescription], pycram.datastructures.grasp.GraspDescription] = None) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[PickUpAction]]#
class pycram.robot_plans.actions.core.pick_up.GraspingAction#

Bases: pycram.robot_plans.actions.base.ActionDescription

Grasps an object described by the given Object Designator description

object_designator: semantic_digital_twin.world_description.world_entity.Body#

Object Designator for the object that should be grasped

arm: pycram.datastructures.enums.Arms#

The arm that should be used to grasp

prepose_distance: float#

The distance in meters the gripper should be at before grasping the object

plan() None#

Symbolic plan. Should only call motions or sub-actions.

validate(result: typing_extensions.Optional[typing_extensions.Any] = None, max_wait_time: typing_extensions.Optional[datetime.timedelta] = None)#
classmethod description(object_designator: typing_extensions.Union[typing_extensions.Iterable[semantic_digital_twin.world_description.world_entity.Body], semantic_digital_twin.world_description.world_entity.Body], arm: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.enums.Arms], pycram.datastructures.enums.Arms] = None, prepose_distance: typing_extensions.Union[typing_extensions.Iterable[float], float] = ActionConfig.grasping_prepose_distance) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[GraspingAction]]#
pycram.robot_plans.actions.core.pick_up.ReachToPickUpActionDescription#
pycram.robot_plans.actions.core.pick_up.PickUpActionDescription#
pycram.robot_plans.actions.core.pick_up.GraspingActionDescription#