pycram.failures#
Exceptions#
Implementation of plan failures. |
|
Thrown when a knowledge source can not provide the information for a query. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Failure thrown by low-level modules: robot or projection PMs. |
|
Failure thrown by low-level modules: robot or projection PMs. |
|
Failure thrown by high-level modules, i.e. plans. |
|
Thrown when a sensor monitoring condition is met. |
|
Thrown when delivering plan completely gives up. |
|
Thrown when a low-level, i.e. hardware related, failure is detected in a manipulation action. |
|
Thrown when door / drawer opening / closing goal is still not reached. |
|
Thrown when container manipulation fails. |
|
Thrown when environment manipulation cannot be achieved. |
|
Thrown when environment manipulation in collision or unreachable. |
|
Thrown when fetching plan completely gives up. |
|
Thrown when a failure involving the gripper hardware occurs. |
|
Thrown when the gripper is not open when it should be open. |
|
Thrown when the gripper closed completely, despite not being expected to do so (e.g. because it should have |
|
Thrown when the gripper does not reach its goal. |
|
Thrown when the gripper is occupied by some object. |
|
High-level failure produced when looking for an object, i.e. it is not a hardware issue but one relating to |
|
Thrown when the look at goal is not reached. |
|
Thrown when executing a manipulation action results in a collision. |
|
Thrown when after executing the action, goal is still not reached. |
|
Thrown when the robot is in collision with the environment. |
|
Thrown when no inverse kinematics solution could be found |
|
Thrown when no IK solution can be found. |
|
High-level failure produced while navigating the robot, i.e. it is not a hardware issue but one relating to |
|
Navigation goal cannot be reached because the goal itself is already occupied by some other object. |
|
Low-level failure produced while navigating the robot, i.e. some kind of hardware issue. |
|
Thrown when the base moved as a result of the navigation action but the goal was not reached. |
|
Thrown when the goal pose for navigation is computed to be unreachable. |
|
Thrown when the robot cannot see an object of a given description in its surroundings. |
|
Thrown when the robot cannot find an object of a given description in its surroundings. |
|
Thrown when the robot cannot find a link of a given description |
|
Thrown when no base positioning can assure a reachable pose to place the object from. |
|
Thrown when the placing of the object fails. |
|
Thrown when the object is still in contact with the robot after placing. |
|
Thrown when the object was not placed at the target location. |
|
Thrown when no base positioning can assure a reachable pose to grasp the object from. |
|
Thrown when no IK found for particular base pose. |
|
Low-level failure produced while perceiving, i.e. some kind of hardware issue. |
|
Thrown when an attempt to find an object by perception fails -- and this can still be interpreted as the robot |
|
Thrown when an attempt to find an object by perception fails -- and this is because the object can be assumed |
|
Thrown when searching plan completely gives up. |
|
Low-level failure produced while moving the torso, i.e. some kind of hardware issue. |
|
Thrown when the torso moved as a result of a torso action but the goal was not reached. |
|
Thrown when the goal for the torso is computed to be unreachable. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Implementation of plan failures. |
|
Thrown when the navigation goal is not reached. |
|
Thrown when the tool pose is not reached. |
|
Exception raised when a Multiverse API call fails. |
|
Exception raised when an object was not found in the prospection world. |
|
Exception raised when an object with the same name already exists in the world. |
|
Exception raised when the description of an object was not found. |
|
Exception raised when two objects that are attached to each other have a mismatch in the world they belong to. |
|
Exception raised when a tf frame of an object is not found. |
|
Exception raised when multiple tip links are found for an object. |
|
Exception raised when an object mesh/description has an unsupported file extension. |
|
Exception raised when the given object description type is not defined or couldn't be resolved to a known type. |
|
Exception raised when an unsupported joint type is used. |
|
Exception raised when a link has no geometry (i.e. no visual or collision elements). |
|
Exception raised when a link geometry has no mesh or is not of type mesh. |
Module Contents#
- exception pycram.failures.PlanFailure(*args, **kwargs)#
Bases:
ExceptionImplementation of plan failures.
- exception pycram.failures.KnowledgeNotAvailable(*args, **kwargs)#
Bases:
PlanFailureThrown when a knowledge source can not provide the information for a query.
- exception pycram.failures.NotALanguageExpression(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.FailureDiagnosis(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.LowLevelFailure(*args, **kwargs)#
Bases:
FailureDiagnosisFailure thrown by low-level modules: robot or projection PMs.
- exception pycram.failures.ActionlibActionTimeout(*args, **kwargs)#
Bases:
LowLevelFailureFailure thrown by low-level modules: robot or projection PMs.
- exception pycram.failures.HighLevelFailure(*args, **kwargs)#
Bases:
FailureDiagnosisFailure thrown by high-level modules, i.e. plans.
- exception pycram.failures.SensorMonitoringCondition(*args, **kwargs)#
Bases:
PlanFailureThrown when a sensor monitoring condition is met.
- exception pycram.failures.DeliveringFailed(*args, **kwargs)#
Bases:
HighLevelFailureThrown when delivering plan completely gives up.
- exception pycram.failures.ManipulationLowLevelFailure(robot: pycram.world_concepts.world_object.Object, arms: typing_extensions.List[pycram.datastructures.enums.Arms], body: pycram.datastructures.world_entity.PhysicalBody, *args, **kwargs)#
Bases:
LowLevelFailureThrown when a low-level, i.e. hardware related, failure is detected in a manipulation action.
- robot: pycram.world_concepts.world_object.Object#
The robot that the manipulation action was performed with.
- arm: typing_extensions.List[pycram.datastructures.enums.Arms]#
The arm(s) that the manipulation action was performed with.
- body: pycram.datastructures.world_entity.PhysicalBody#
The body that the manipulation action was performed on.
- exception pycram.failures.EnvironmentManipulationGoalNotReached(*args, **kwargs)#
Bases:
ManipulationLowLevelFailureThrown when door / drawer opening / closing goal is still not reached.
- exception pycram.failures.ContainerManipulationError(robot: pycram.world_concepts.world_object.Object, arms: typing_extensions.List[pycram.datastructures.enums.Arms], body: pycram.datastructures.world_entity.PhysicalBody, container_joint: pycram.description.Joint, manipulation_type: pycram.datastructures.enums.ContainerManipulationType, *args, **kwargs)#
Bases:
ManipulationLowLevelFailure,abc.ABCThrown when container manipulation fails.
- container_joint: pycram.description.Joint#
The joint of the container that should be manipulated.
- manipulation_type: pycram.datastructures.enums.ContainerManipulationType#
The type of manipulation that should be performed on the container.
- exception pycram.failures.EnvironmentManipulationImpossible(*args, **kwargs)#
Bases:
HighLevelFailureThrown when environment manipulation cannot be achieved.
- exception pycram.failures.EnvironmentUnreachable(*args, **kwargs)#
Bases:
HighLevelFailureThrown when environment manipulation in collision or unreachable.
- exception pycram.failures.FetchingFailed(*args, **kwargs)#
Bases:
HighLevelFailureThrown when fetching plan completely gives up.
- exception pycram.failures.GripperLowLevelFailure(robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, *args, **kwargs)#
Bases:
LowLevelFailureThrown when a failure involving the gripper hardware occurs.
- robot: pycram.world_concepts.world_object.Object#
The robot that the gripper belongs to.
- arm: pycram.datastructures.enums.Arms#
The arm that the gripper belongs to.
- exception pycram.failures.GripperIsNotOpen(robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, *args, **kwargs)#
Bases:
GripperLowLevelFailureThrown when the gripper is not open when it should be open.
- exception pycram.failures.GripperClosedCompletely(*args, **kwargs)#
Bases:
GripperLowLevelFailureThrown when the gripper closed completely, despite not being expected to do so (e.g. because it should have grasped something).
- exception pycram.failures.GripperGoalNotReached(*args, **kwargs)#
Bases:
GripperLowLevelFailureThrown when the gripper does not reach its goal.
- exception pycram.failures.GripperOccupied(*args, **kwargs)#
Bases:
GripperLowLevelFailureThrown when the gripper is occupied by some object.
- exception pycram.failures.LookingHighLevelFailure(robot: pycram.world_concepts.world_object.Object, target: pycram.datastructures.pose.PoseStamped, *args, **kwargs)#
Bases:
HighLevelFailureHigh-level failure produced when looking for an object, i.e. it is not a hardware issue but one relating to the looking task, its parameters, and how they relate to the environment.
- robot: pycram.world_concepts.world_object.Object#
The robot that performed the look at action.
- target: pycram.datastructures.pose.PoseStamped#
The target pose that the robot was supposed to look at.
- exception pycram.failures.LookAtGoalNotReached(robot: pycram.world_concepts.world_object.Object, target: pycram.datastructures.pose.PoseStamped, *args, **kwargs)#
Bases:
LookingHighLevelFailureThrown when the look at goal is not reached.
- exception pycram.failures.ManipulationGoalInCollision(*args, **kwargs)#
Bases:
HighLevelFailureThrown when executing a manipulation action results in a collision.
- exception pycram.failures.ManipulationGoalNotReached(*args, **kwargs)#
Bases:
ManipulationLowLevelFailureThrown when after executing the action, goal is still not reached.
- exception pycram.failures.RobotInCollision(*args, **kwargs)#
Bases:
PlanFailureThrown when the robot is in collision with the environment.
- exception pycram.failures.IKError(pose, base_frame, tip_frame)#
Bases:
PlanFailureThrown when no inverse kinematics solution could be found
- pose: pycram.datastructures.pose.PoseStamped#
The pose for which no IK solution could be found.
- base_frame: str#
The base frame in which the pose was given.
- tip_frame: str#
The robot tip frame that should reach the pose.
- message#
- exception pycram.failures.ManipulationPoseUnreachable(*args, **kwargs)#
Bases:
ManipulationLowLevelFailureThrown when no IK solution can be found.
Bases:
HighLevelFailureHigh-level failure produced while navigating the robot, i.e. it is not a hardware issue but one relating to the navigation task, its parameters, and how they relate to the environment.
Bases:
NavigationHighLevelFailureNavigation goal cannot be reached because the goal itself is already occupied by some other object.
Bases:
LowLevelFailureLow-level failure produced while navigating the robot, i.e. some kind of hardware issue.
Bases:
NavigationLowLevelFailureThrown when the base moved as a result of the navigation action but the goal was not reached.
Bases:
NavigationLowLevelFailureThrown when the goal pose for navigation is computed to be unreachable.
- exception pycram.failures.ObjectNotVisible(*args, **kwargs)#
Bases:
HighLevelFailureThrown when the robot cannot see an object of a given description in its surroundings.
- exception pycram.failures.ObjectNotFound(object_name: str)#
Bases:
HighLevelFailureThrown when the robot cannot find an object of a given description in its surroundings.
- exception pycram.failures.LinkNotFound(link_name: str, of_object: typing_extensions.Optional[str] = None)#
Bases:
HighLevelFailureThrown when the robot cannot find a link of a given description
- link_name: str#
The name of the link that couldn’t be found
- of_object: typing_extensions.Optional[str]#
The name of the object that the link should belong to
- exception pycram.failures.ObjectUndeliverable(*args, **kwargs)#
Bases:
HighLevelFailureThrown when no base positioning can assure a reachable pose to place the object from.
- exception pycram.failures.ObjectPlacingError(obj: pycram.world_concepts.world_object.Object, placing_pose: pycram.datastructures.pose.PoseStamped, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, *args, **kwargs)#
Bases:
HighLevelFailureThrown when the placing of the object fails.
- obj: pycram.world_concepts.world_object.Object#
The object that should be placed.
- placing_pose: pycram.datastructures.pose.PoseStamped#
The target pose at which the object should be placed.
- robot: pycram.world_concepts.world_object.Object#
The robot that placed the object.
- arm: pycram.datastructures.enums.Arms#
The robot arm used to place the object.
- exception pycram.failures.ObjectStillInContact(obj: pycram.world_concepts.world_object.Object, contact_links: typing_extensions.List[pycram.description.Link], placing_pose: pycram.datastructures.pose.PoseStamped, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, *args, **kwargs)#
Bases:
ObjectPlacingErrorThrown when the object is still in contact with the robot after placing.
- contact_links: typing_extensions.List[pycram.description.Link]#
The links of the robot that are still in contact with the object.
- exception pycram.failures.ObjectNotPlacedAtTargetLocation(obj: pycram.world_concepts.world_object.Object, placing_pose: pycram.datastructures.pose.PoseStamped, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, *args, **kwargs)#
Bases:
ObjectPlacingErrorThrown when the object was not placed at the target location.
- exception pycram.failures.ObjectUnfetchable(*args, **kwargs)#
Bases:
HighLevelFailureThrown when no base positioning can assure a reachable pose to grasp the object from.
- exception pycram.failures.ObjectUnreachable(*args, **kwargs)#
Bases:
HighLevelFailureThrown when no IK found for particular base pose.
- exception pycram.failures.PerceptionLowLevelFailure(object_description: pycram.designator.ObjectDesignatorDescription, technique: pycram.datastructures.enums.DetectionTechnique, region: typing_extensions.Optional[pycram.designators.location_designator.Location] = None, *args, **kwargs)#
Bases:
LowLevelFailureLow-level failure produced while perceiving, i.e. some kind of hardware issue.
- object_description: pycram.designator.ObjectDesignatorDescription#
The object description that was used to search for the object.
- technique: pycram.datastructures.enums.DetectionTechnique#
The detection technique that was used to search for the object.
- region: typing_extensions.Optional[pycram.designators.location_designator.Location] = None#
The suggested region in which the object was searched.
- exception pycram.failures.PerceptionObjectNotFound(obj_desc: pycram.designator.ObjectDesignatorDescription, technique: pycram.datastructures.enums.DetectionTechnique, region: pycram.designators.location_designator.Location, *args, **kwargs)#
Bases:
PerceptionLowLevelFailureThrown when an attempt to find an object by perception fails – and this can still be interpreted as the robot not looking in the right direction, as opposed to the object being absent.
- exception pycram.failures.PerceptionObjectNotInWorld(*args, **kwargs)#
Bases:
PerceptionLowLevelFailureThrown when an attempt to find an object by perception fails – and this is because the object can be assumed absent or perhaps is known absent because of the setup of a simulation.
- exception pycram.failures.SearchingFailed(*args, **kwargs)#
Bases:
HighLevelFailureThrown when searching plan completely gives up.
- exception pycram.failures.TorsoLowLevelFailure(goal_validator: typing_extensions.Optional[pycram.validation.goal_validator.MultiJointPositionGoalValidator] = None, *args, **kwargs)#
Bases:
LowLevelFailureLow-level failure produced while moving the torso, i.e. some kind of hardware issue.
- goal_validator: typing_extensions.Optional[pycram.validation.goal_validator.MultiJointPositionGoalValidator] = None#
The goal validator that was used to check if the goal was reached.
- exception pycram.failures.TorsoGoalNotReached(goal_validator: typing_extensions.Optional[pycram.validation.goal_validator.MultiJointPositionGoalValidator] = None, *args, **kwargs)#
Bases:
TorsoLowLevelFailureThrown when the torso moved as a result of a torso action but the goal was not reached.
- exception pycram.failures.TorsoGoalUnreachable(goal_validator: typing_extensions.Optional[pycram.validation.goal_validator.MultiJointPositionGoalValidator] = None, *args, **kwargs)#
Bases:
TorsoLowLevelFailureThrown when the goal for the torso is computed to be unreachable.
- exception pycram.failures.Task(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.Grasping(obj: pycram.world_concepts.world_object.Object, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, grasp: typing_extensions.Optional[pycram.datastructures.enums.Grasp] = None, *args, **kwargs)#
Bases:
Task- obj: pycram.world_concepts.world_object.Object#
The object to be grasped.
- robot: pycram.world_concepts.world_object.Object#
The robot that should grasp the object.
- arm: pycram.datastructures.enums.Arms#
The arm used to grasp the object.
- grasp: typing_extensions.Optional[pycram.datastructures.enums.Grasp]#
The grasp type used to grasp the object.
- exception pycram.failures.ObjectNotGraspedError(obj: pycram.world_concepts.world_object.Object, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, grasp=None, *args, **kwargs)#
Bases:
Grasping
- exception pycram.failures.ObjectPoseMissestimation(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.SuccessfulCompletion(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.LocomotorFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.ArmFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.ObjectLost(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.SensorFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.IllPosedGoalFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.CapabilityAbsenceFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.ReachabilityFailure(obj: pycram.world_concepts.world_object.Object, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, grasp: pycram.datastructures.enums.Grasp, *args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- obj: pycram.world_concepts.world_object.Object#
The object that should be reachable.
- robot: pycram.world_concepts.world_object.Object#
The robot that should reach the object.
- arm: pycram.datastructures.enums.Arms#
The arm that should reach the object.
- grasp: typing_extensions.Optional[pycram.datastructures.enums.Grasp] = None#
The grasp/gripper orientation that should be used to reach the object.
- exception pycram.failures.ObjectNotInGraspingArea(obj: pycram.world_concepts.world_object.Object, robot: pycram.world_concepts.world_object.Object, arm: pycram.datastructures.enums.Arms, grasp, *args, **kwargs)#
Bases:
ReachabilityFailure
- exception pycram.failures.TorsoFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.ConfigurationNotReached(goal_validator: pycram.validation.goal_validator.MultiJointPositionGoalValidator, configuration_type: pycram.datastructures.enums.StaticJointState, *args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- goal_validator: pycram.validation.goal_validator.MultiJointPositionGoalValidator#
The goal validator that was used to check if the goal was reached.
- configuration_type: pycram.datastructures.enums.StaticJointState#
The configuration type that should be reached.
- exception pycram.failures.Timeout(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.EndEffectorFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.SustainedFailure(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.ReasoningError(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
- exception pycram.failures.CollisionError(*args, **kwargs)#
Bases:
PlanFailureImplementation of plan failures.
Bases:
PlanFailureThrown when the navigation goal is not reached.
The current pose of the robot.
The goal pose of the robot.
- exception pycram.failures.ToolPoseNotReachedError(current_pose: pycram.datastructures.pose.PoseStamped, goal_pose: pycram.datastructures.pose.PoseStamped, *args, **kwargs)#
Bases:
PlanFailureThrown when the tool pose is not reached.
- current_pose: pycram.datastructures.pose.PoseStamped#
The current pose of the tool.
- goal_pose: pycram.datastructures.pose.PoseStamped#
The goal pose of the tool.
- exception pycram.failures.MultiverseFailedAPIResponse(api_response: typing_extensions.List[str], api_name: pycram.datastructures.enums.MultiverseAPIName, *args, **kwargs)#
Bases:
ExceptionException raised when a Multiverse API call fails.
- api_response: typing_extensions.List[str]#
The response of the API call that failed.
- api_name: pycram.datastructures.enums.MultiverseAPIName#
The name of the API that failed.
- exception pycram.failures.ProspectionObjectNotFound(obj: pycram.world_concepts.world_object.Object)#
Bases:
KeyErrorException raised when an object was not found in the prospection world.
- obj: pycram.world_concepts.world_object.Object#
The object that was not found in the prospection world.
- exception pycram.failures.ObjectAlreadyExists(obj: pycram.world_concepts.world_object.Object)#
Bases:
ExceptionException raised when an object with the same name already exists in the world.
- obj: pycram.world_concepts.world_object.Object#
The object that already exists in the world.
- exception pycram.failures.ObjectDescriptionNotFound(object_name: str, path: str, extension: str)#
Bases:
KeyErrorException raised when the description of an object was not found.
- object_name: str#
The name of the object whose description was not found.
- path: str#
The path of the object whose description was not found.
- extension: str#
The description extension of the object whose description was not found.
- exception pycram.failures.WorldMismatchErrorBetweenAttachedObjects(obj_1: pycram.world_concepts.world_object.Object, obj_2: pycram.world_concepts.world_object.Object)#
Bases:
ExceptionException raised when two objects that are attached to each other have a mismatch in the world they belong to.
- obj_1: pycram.world_concepts.world_object.Object#
The first object that has a mismatch in the world.
- obj_2: pycram.world_concepts.world_object.Object#
The second object that has a mismatch in the world.
- exception pycram.failures.ObjectFrameNotFoundError(frame_name: str)#
Bases:
KeyErrorException raised when a tf frame of an object is not found.
- frame_name: str#
The name of the frame that was not found.
- exception pycram.failures.MultiplePossibleTipLinks(object_name: str, start_link: str, tip_links: typing_extensions.List[str])#
Bases:
ExceptionException raised when multiple tip links are found for an object.
- object_name: str#
The name of the object that has multiple tip links.
- start_link: str#
The start link of the object that has multiple tip links.
- tip_links: typing_extensions.List[str]#
The list of tip links that are found for the object.
- exception pycram.failures.UnsupportedFileExtension(object_name: str, path: str)#
Bases:
ExceptionException raised when an object mesh/description has an unsupported file extension.
- object_name: str#
The name of the object that has an unsupported file extension.
- path: str#
The path of the object description/mesh that has an unsupported file extension.
- extension: str#
The unsupported file extension of the object description/mesh.
- exception pycram.failures.ObjectDescriptionUndefined(object_name: str)#
Bases:
ExceptionException raised when the given object description type is not defined or couldn’t be resolved to a known type.
- object_name: str#
The name of the object that has an undefined description.
- exception pycram.failures.UnsupportedJointType(joint_type: pycram.datastructures.enums.JointType)#
Bases:
ExceptionException raised when an unsupported joint type is used.
- joint_type: pycram.datastructures.enums.JointType#
The unsupported joint type that was used.