pycram.robot_plans.actions.core.placing#

Attributes#

Classes#

PlaceAction

Places an Object at a position using an arm.

Module Contents#

class pycram.robot_plans.actions.core.placing.PlaceAction#

Bases: pycram.robot_plans.actions.base.ActionDescription

Places an Object at a position using an arm.

object_designator: semantic_digital_twin.world_description.world_entity.Body#

Object designator_description describing the object that should be place

target_location: pycram.datastructures.pose.PoseStamped#

Pose in the world at which the object should be placed

arm: pycram.datastructures.enums.Arms#

Arm that is currently holding 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 the object is placed at the target location.

validate_loss_of_contact()#

Check if the object is still in contact with the robot after placing it.

validate_placement_location()#

Check if the object is placed at the target location.

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]) pycram.datastructures.partial_designator.PartialDesignator[typing_extensions.Type[PlaceAction]]#
pycram.robot_plans.actions.core.placing.PlaceActionDescription#