pycram.robot_plans.actions.composite.transporting#
Attributes#
Classes#
Transports an object to a position using an arm |
|
Transports an object to a position using an arm without moving the base of the robot |
|
Navigate to standing_position, then turn towards the object and pick it up. |
|
Navigate to standing_position, then turn towards the object and pick it up. |
|
To transport an object to a target location by choosing the closest |
Module Contents#
- class pycram.robot_plans.actions.composite.transporting.TransportAction#
Bases:
pycram.robot_plans.actions.base.ActionDescriptionTransports an object to a position using an arm
- object_designator: semantic_digital_twin.world_description.world_entity.Body#
Object designator_description describing the object that should be transported.
- target_location: pycram.datastructures.pose.PoseStamped#
Target Location to which the object should be transported
- arm: typing_extensions.Optional[pycram.datastructures.enums.Arms]#
Arm that should be used
- place_rotation_agnostic: typing_extensions.Optional[bool] = False#
If True, the robot will place the object in the same orientation as it is itself, no matter how the object was grasped.
- _pre_perform_callbacks = []#
List to save the callbacks which should be called before performing the action.
- __post_init__()#
- inside_container() List[semantic_digital_twin.world_description.world_entity.Body]#
- 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], target_location: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped], arm: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.enums.Arms], pycram.datastructures.enums.Arms] = None, place_rotation_agnostic: typing_extensions.Optional[bool] = False) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[TransportAction]]#
- class pycram.robot_plans.actions.composite.transporting.PickAndPlaceAction#
Bases:
pycram.robot_plans.actions.base.ActionDescriptionTransports an object to a position using an arm without moving the base of the robot
- object_designator: semantic_digital_twin.world_description.world_entity.Body#
Object designator_description describing the object that should be transported.
- target_location: pycram.datastructures.pose.PoseStamped#
Target Location to which the object should be transported
- arm: pycram.datastructures.enums.Arms#
Arm that should be used
- grasp_description: pycram.datastructures.grasp.GraspDescription#
Description of the grasp to pick up the target
- _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)#
- 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], target_location: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped], arm: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.enums.Arms], pycram.datastructures.enums.Arms] = None, grasp_description=GraspDescription) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[PickAndPlaceAction]]#
- class pycram.robot_plans.actions.composite.transporting.MoveAndPlaceAction#
Bases:
pycram.robot_plans.actions.base.ActionDescriptionNavigate to standing_position, then turn towards the object and pick it up.
- standing_position: pycram.datastructures.pose.PoseStamped#
The pose to stand before trying to pick up the object
- object_designator: semantic_digital_twin.world_description.world_entity.Body#
The object to pick up
- target_location: pycram.datastructures.pose.PoseStamped#
The location to place the object.
- arm: pycram.datastructures.enums.Arms#
The arm to use
- keep_joint_states: bool#
Keep the joint states of the robot the same during the navigation.
- plan()#
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(standing_position: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped], object_designator: typing_extensions.Union[typing_extensions.Iterable[semantic_digital_twin.world_description.world_entity.Body], semantic_digital_twin.world_description.world_entity.Body], target_location: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped], arm: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.enums.Arms], pycram.datastructures.enums.Arms] = None, keep_joint_states: typing_extensions.Union[typing_extensions.Iterable[bool], bool] = ActionConfig.navigate_keep_joint_states) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[MoveAndPlaceAction]]#
- class pycram.robot_plans.actions.composite.transporting.MoveAndPickUpAction#
Bases:
pycram.robot_plans.actions.base.ActionDescriptionNavigate to standing_position, then turn towards the object and pick it up.
- standing_position: pycram.datastructures.pose.PoseStamped#
The pose to stand before trying to pick up the object
- object_designator: semantic_digital_twin.world_description.world_entity.Body#
The object to pick up
- arm: pycram.datastructures.enums.Arms#
The arm to use
- grasp_description: pycram.datastructures.grasp.GraspDescription#
The grasp to use
- keep_joint_states: bool#
Keep the joint states of the robot the same during the navigation.
- _pre_perform_callbacks = []#
List to save the callbacks which should be called before performing the action.
- __post_init__()#
- plan()#
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(standing_position: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped], object_designator: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped], 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.enums.Grasp], pycram.datastructures.enums.Grasp] = None, keep_joint_states: typing_extensions.Union[typing_extensions.Iterable[bool], bool] = ActionConfig.navigate_keep_joint_states) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[MoveAndPickUpAction]]#
- class pycram.robot_plans.actions.composite.transporting.EfficientTransportAction#
Bases:
pycram.robot_plans.actions.base.ActionDescriptionTo transport an object to a target location by choosing the closest available arm using simple Euclidean distance.
- object_designator: semantic_digital_twin.world_description.world_entity.Body#
- target_location: pycram.datastructures.pose.PoseStamped#
- _choose_best_arm(robot: semantic_digital_twin.world_description.world_entity.Body, obj: semantic_digital_twin.world_description.world_entity.Body) pycram.datastructures.enums.Arms#
Function to find the closest available arm.
- plan() None#
The main plan for the transport action, optimized for a stationary robot.
- 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], target_location: typing_extensions.Union[typing_extensions.Iterable[pycram.datastructures.pose.PoseStamped], pycram.datastructures.pose.PoseStamped]) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[EfficientTransportAction]]#
- pycram.robot_plans.actions.composite.transporting.TransportActionDescription#
- pycram.robot_plans.actions.composite.transporting.PickAndPlaceActionDescription#
- pycram.robot_plans.actions.composite.transporting.MoveAndPlaceActionDescription#
- pycram.robot_plans.actions.composite.transporting.MoveAndPickUpActionDescription#
- pycram.robot_plans.actions.composite.transporting.EfficientTransportActionDescription#