table of Contents
Planning Scene
The scene planning class mainly provides interfaces for collision detection and constraint detection. Using URDF and SRDF, you can easily set and configure the attributes of the scene planning class.
Impact checking
Self-collision detection
Self-collision detection is to detect whether the current model configuration of the robotic arm will cause certain parts to collide.
Get contact information
Artificially set the posture of the robotic arm to cause collisions in certain parts, so as to obtain contact information of possible collisions under a given configuration of the robotic arm.
Allowed collision matrix (ACM)
ACM (Allowed Collision Matrix) provides a mechanism to tell the collision detector to ignore the collision of an object, that is, even if the object collides, the collision detector does not need to report.
Constraint detection
There are two types of constraints:
- Kinematic constraints: joint constraints, position constraints, orientation constraints and visibility constraints;
- User-defined constraints: implemented through the callback mechanism.
Kinematic constraints
First, set a simple position and direction constraint for the end of the robotic arm. Then, a member function isStateConstrained of the PlanningScene class is used to detect whether the posture of a robotic arm under the constraint condition is feasible.
User-defined constraints
After defining a function, you can use a member function setStateFeasibilityPredicate of the PlanningScene class to specify the function as a callback function. Then, when the isStateFeasible function is used to detect a certain posture of the robotic arm, the function will be automatically called through the callback mechanism.