pycram.failures

Contents

pycram.failures#

Exceptions#

PlanFailure

Implementation of plan failures.

KnowledgeNotAvailable

Thrown when a knowledge source can not provide the information for a query.

NotALanguageExpression

Implementation of plan failures.

FailureDiagnosis

Implementation of plan failures.

LowLevelFailure

Failure thrown by low-level modules: robot or projection PMs.

ActionlibActionTimeout

Failure thrown by low-level modules: robot or projection PMs.

HighLevelFailure

Failure thrown by high-level modules, i.e. plans.

SensorMonitoringCondition

Thrown when a sensor monitoring condition is met.

DeliveringFailed

Thrown when delivering plan completely gives up.

ManipulationLowLevelFailure

Thrown when a low-level, i.e. hardware related, failure is detected in a manipulation action.

EnvironmentManipulationGoalNotReached

Thrown when door / drawer opening / closing goal is still not reached.

ContainerManipulationError

Thrown when container manipulation fails.

EnvironmentManipulationImpossible

Thrown when environment manipulation cannot be achieved.

EnvironmentUnreachable

Thrown when environment manipulation in collision or unreachable.

FetchingFailed

Thrown when fetching plan completely gives up.

GripperLowLevelFailure

Thrown when a failure involving the gripper hardware occurs.

GripperIsNotOpen

Thrown when the gripper is not open when it should be open.

GripperClosedCompletely

Thrown when the gripper closed completely, despite not being expected to do so (e.g. because it should have

GripperGoalNotReached

Thrown when the gripper does not reach its goal.

GripperOccupied

Thrown when the gripper is occupied by some object.

LookingHighLevelFailure

High-level failure produced when looking for an object, i.e. it is not a hardware issue but one relating to

LookAtGoalNotReached

Thrown when the look at goal is not reached.

ManipulationGoalInCollision

Thrown when executing a manipulation action results in a collision.

ManipulationGoalNotReached

Thrown when after executing the action, goal is still not reached.

RobotInCollision

Thrown when the robot is in collision with the environment.

IKError

Thrown when no inverse kinematics solution could be found

ManipulationPoseUnreachable

Thrown when no IK solution can be found.

NavigationHighLevelFailure

High-level failure produced while navigating the robot, i.e. it is not a hardware issue but one relating to

NavigationGoalInCollision

Navigation goal cannot be reached because the goal itself is already occupied by some other object.

NavigationLowLevelFailure

Low-level failure produced while navigating the robot, i.e. some kind of hardware issue.

NavigationGoalNotReached

Thrown when the base moved as a result of the navigation action but the goal was not reached.

NavigationPoseUnreachable

Thrown when the goal pose for navigation is computed to be unreachable.

ObjectNotVisible

Thrown when the robot cannot see an object of a given description in its surroundings.

ObjectNotFound

Thrown when the robot cannot find an object of a given description in its surroundings.

LinkNotFound

Thrown when the robot cannot find a link of a given description

ObjectUndeliverable

Thrown when no base positioning can assure a reachable pose to place the object from.

ObjectPlacingError

Thrown when the placing of the object fails.

ObjectStillInContact

Thrown when the object is still in contact with the robot after placing.

ObjectNotPlacedAtTargetLocation

Thrown when the object was not placed at the target location.

ObjectUnfetchable

Thrown when no base positioning can assure a reachable pose to grasp the object from.

ObjectUnreachable

Thrown when no IK found for particular base pose.

PerceptionLowLevelFailure

Low-level failure produced while perceiving, i.e. some kind of hardware issue.

PerceptionObjectNotFound

Thrown when an attempt to find an object by perception fails -- and this can still be interpreted as the robot

PerceptionObjectNotInWorld

Thrown when an attempt to find an object by perception fails -- and this is because the object can be assumed

SearchingFailed

Thrown when searching plan completely gives up.

TorsoLowLevelFailure

Low-level failure produced while moving the torso, i.e. some kind of hardware issue.

TorsoGoalNotReached

Thrown when the torso moved as a result of a torso action but the goal was not reached.

TorsoGoalUnreachable

Thrown when the goal for the torso is computed to be unreachable.

Task

Implementation of plan failures.

Grasping

ObjectNotGraspedError

Looking

ObjectPoseMissestimation

Implementation of plan failures.

SuccessfulCompletion

Implementation of plan failures.

LocomotorFailure

Implementation of plan failures.

ArmFailure

Implementation of plan failures.

ObjectLost

Implementation of plan failures.

SensorFailure

Implementation of plan failures.

IllPosedGoalFailure

Implementation of plan failures.

CapabilityAbsenceFailure

Implementation of plan failures.

ReachabilityFailure

Implementation of plan failures.

ObjectNotInGraspingArea

TorsoFailure

Implementation of plan failures.

ConfigurationNotReached

Implementation of plan failures.

Timeout

Implementation of plan failures.

EndEffectorFailure

Implementation of plan failures.

ObjectUnavailable

Implementation of plan failures.

SustainedFailure

Implementation of plan failures.

ReasoningError

Implementation of plan failures.

CollisionError

Implementation of plan failures.

NavigationGoalNotReachedError

Thrown when the navigation goal is not reached.

ToolPoseNotReachedError

Thrown when the tool pose is not reached.

MultiverseFailedAPIResponse

Exception raised when a Multiverse API call fails.

ProspectionObjectNotFound

Exception raised when an object was not found in the prospection world.

ObjectAlreadyExists

Exception raised when an object with the same name already exists in the world.

ObjectDescriptionNotFound

Exception raised when the description of an object was not found.

WorldMismatchErrorBetweenAttachedObjects

Exception raised when two objects that are attached to each other have a mismatch in the world they belong to.

ObjectFrameNotFoundError

Exception raised when a tf frame of an object is not found.

MultiplePossibleTipLinks

Exception raised when multiple tip links are found for an object.

UnsupportedFileExtension

Exception raised when an object mesh/description has an unsupported file extension.

ObjectDescriptionUndefined

Exception raised when the given object description type is not defined or couldn't be resolved to a known type.

UnsupportedJointType

Exception raised when an unsupported joint type is used.

LinkHasNoGeometry

Exception raised when a link has no geometry (i.e. no visual or collision elements).

LinkGeometryHasNoMesh

Exception raised when a link geometry has no mesh or is not of type mesh.

Module Contents#

exception pycram.failures.PlanFailure(*args, **kwargs)#

Bases: Exception

Implementation of plan failures.

exception pycram.failures.KnowledgeNotAvailable(*args, **kwargs)#

Bases: PlanFailure

Thrown when a knowledge source can not provide the information for a query.

exception pycram.failures.NotALanguageExpression(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.FailureDiagnosis(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.LowLevelFailure(*args, **kwargs)#

Bases: FailureDiagnosis

Failure thrown by low-level modules: robot or projection PMs.

exception pycram.failures.ActionlibActionTimeout(*args, **kwargs)#

Bases: LowLevelFailure

Failure thrown by low-level modules: robot or projection PMs.

exception pycram.failures.HighLevelFailure(*args, **kwargs)#

Bases: FailureDiagnosis

Failure thrown by high-level modules, i.e. plans.

exception pycram.failures.SensorMonitoringCondition(*args, **kwargs)#

Bases: PlanFailure

Thrown when a sensor monitoring condition is met.

exception pycram.failures.DeliveringFailed(*args, **kwargs)#

Bases: HighLevelFailure

Thrown 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: LowLevelFailure

Thrown 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: ManipulationLowLevelFailure

Thrown 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.ABC

Thrown 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: HighLevelFailure

Thrown when environment manipulation cannot be achieved.

exception pycram.failures.EnvironmentUnreachable(*args, **kwargs)#

Bases: HighLevelFailure

Thrown when environment manipulation in collision or unreachable.

exception pycram.failures.FetchingFailed(*args, **kwargs)#

Bases: HighLevelFailure

Thrown 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: LowLevelFailure

Thrown 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: GripperLowLevelFailure

Thrown when the gripper is not open when it should be open.

exception pycram.failures.GripperClosedCompletely(*args, **kwargs)#

Bases: GripperLowLevelFailure

Thrown 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: GripperLowLevelFailure

Thrown when the gripper does not reach its goal.

exception pycram.failures.GripperOccupied(*args, **kwargs)#

Bases: GripperLowLevelFailure

Thrown 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: HighLevelFailure

High-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: LookingHighLevelFailure

Thrown when the look at goal is not reached.

exception pycram.failures.ManipulationGoalInCollision(*args, **kwargs)#

Bases: HighLevelFailure

Thrown when executing a manipulation action results in a collision.

exception pycram.failures.ManipulationGoalNotReached(*args, **kwargs)#

Bases: ManipulationLowLevelFailure

Thrown when after executing the action, goal is still not reached.

exception pycram.failures.RobotInCollision(*args, **kwargs)#

Bases: PlanFailure

Thrown when the robot is in collision with the environment.

exception pycram.failures.IKError(pose, base_frame, tip_frame)#

Bases: PlanFailure

Thrown 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: ManipulationLowLevelFailure

Thrown when no IK solution can be found.

exception pycram.failures.NavigationHighLevelFailure(*args, **kwargs)#

Bases: HighLevelFailure

High-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.

exception pycram.failures.NavigationGoalInCollision(*args, **kwargs)#

Bases: NavigationHighLevelFailure

Navigation goal cannot be reached because the goal itself is already occupied by some other object.

exception pycram.failures.NavigationLowLevelFailure(*args, **kwargs)#

Bases: LowLevelFailure

Low-level failure produced while navigating the robot, i.e. some kind of hardware issue.

exception pycram.failures.NavigationGoalNotReached(*args, **kwargs)#

Bases: NavigationLowLevelFailure

Thrown when the base moved as a result of the navigation action but the goal was not reached.

exception pycram.failures.NavigationPoseUnreachable(*args, **kwargs)#

Bases: NavigationLowLevelFailure

Thrown when the goal pose for navigation is computed to be unreachable.

exception pycram.failures.ObjectNotVisible(*args, **kwargs)#

Bases: HighLevelFailure

Thrown when the robot cannot see an object of a given description in its surroundings.

exception pycram.failures.ObjectNotFound(object_name: str)#

Bases: HighLevelFailure

Thrown 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: HighLevelFailure

Thrown when the robot cannot find a link of a given description

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: HighLevelFailure

Thrown 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: HighLevelFailure

Thrown 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: ObjectPlacingError

Thrown when the object is still in contact with the robot after placing.

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: ObjectPlacingError

Thrown when the object was not placed at the target location.

exception pycram.failures.ObjectUnfetchable(*args, **kwargs)#

Bases: HighLevelFailure

Thrown when no base positioning can assure a reachable pose to grasp the object from.

exception pycram.failures.ObjectUnreachable(*args, **kwargs)#

Bases: HighLevelFailure

Thrown 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: LowLevelFailure

Low-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: PerceptionLowLevelFailure

Thrown 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: PerceptionLowLevelFailure

Thrown 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: HighLevelFailure

Thrown when searching plan completely gives up.

exception pycram.failures.TorsoLowLevelFailure(goal_validator: typing_extensions.Optional[pycram.validation.goal_validator.MultiJointPositionGoalValidator] = None, *args, **kwargs)#

Bases: LowLevelFailure

Low-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: TorsoLowLevelFailure

Thrown 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: TorsoLowLevelFailure

Thrown when the goal for the torso is computed to be unreachable.

exception pycram.failures.Task(*args, **kwargs)#

Bases: PlanFailure

Implementation 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.Looking(*args, **kwargs)#

Bases: Task

exception pycram.failures.ObjectPoseMissestimation(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.SuccessfulCompletion(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.LocomotorFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.ArmFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.ObjectLost(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.SensorFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.IllPosedGoalFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.CapabilityAbsenceFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation 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: PlanFailure

Implementation 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: PlanFailure

Implementation of plan failures.

exception pycram.failures.ConfigurationNotReached(goal_validator: pycram.validation.goal_validator.MultiJointPositionGoalValidator, configuration_type: pycram.datastructures.enums.StaticJointState, *args, **kwargs)#

Bases: PlanFailure

Implementation 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: PlanFailure

Implementation of plan failures.

exception pycram.failures.EndEffectorFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.ObjectUnavailable(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.SustainedFailure(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.ReasoningError(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.CollisionError(*args, **kwargs)#

Bases: PlanFailure

Implementation of plan failures.

exception pycram.failures.NavigationGoalNotReachedError(current_pose: pycram.datastructures.pose.PoseStamped, goal_pose: pycram.datastructures.pose.PoseStamped, *args, **kwargs)#

Bases: PlanFailure

Thrown when the navigation goal is not reached.

current_pose: pycram.datastructures.pose.PoseStamped#

The current pose of the robot.

goal_pose: pycram.datastructures.pose.PoseStamped#

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: PlanFailure

Thrown 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: Exception

Exception 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: KeyError

Exception 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: Exception

Exception 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: KeyError

Exception 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: Exception

Exception 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: KeyError

Exception raised when a tf frame of an object is not found.

frame_name: str#

The name of the frame that was not found.

Bases: Exception

Exception raised when multiple tip links are found for an object.

object_name: str#

The name of the object that has multiple tip links.

The start link of the object that has multiple tip links.

The list of tip links that are found for the object.

exception pycram.failures.UnsupportedFileExtension(object_name: str, path: str)#

Bases: Exception

Exception 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: Exception

Exception 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: Exception

Exception raised when an unsupported joint type is used.

joint_type: pycram.datastructures.enums.JointType#

The unsupported joint type that was used.

exception pycram.failures.LinkHasNoGeometry(link_name: str)#

Bases: Exception

Exception raised when a link has no geometry (i.e. no visual or collision elements).

The name of the link that has no geometry.

exception pycram.failures.LinkGeometryHasNoMesh(link_name: str, geometry_type: str)#

Bases: Exception

Exception raised when a link geometry has no mesh or is not of type mesh.

The name of the link that has no mesh.

geometry_type: str#

The type of the link geometry.