Page 20 - Fister jr., Iztok, Andrej Brodnik, Matjaž Krnc and Iztok Fister (eds.). StuCoSReC. Proceedings of the 2019 6th Student Computer Science Research Conference. Koper: University of Primorska Press, 2019
P. 20
into the fixture, but the same contact is forbidden collision object for each robot link), the gripper (with in-
during other motions. Hence, collision rules must be terchangeable geometric models corresponding to different
maintained dynamically. degrees of opening), the workpieces, as well as all other ob-
jects in the cell. While the geometry of each collision object
• The configuration of the robot and the work cell may is characterized by a triangle mesh representation, given in
vary over time, e.g., when the robot grasps or releases an STL file, a configuration is described by a homogeneous
the workpiece. These configuration changes must be transformation matrix for each collision object. This ma-
managed, and pre-computation techniques must be han- trix can be computed by forward kinematics from the robot
dled with care. configuration.
• Since process planning and path planning methods Collision rules between pairs of collision objects define whe-
rely on iteratively checking a vast number of candidate ther the contact of the two objects is considered as a collision
robot motions, the computational efficiency of collision or not. By default, the contact of the neighboring robot
detection is crucial. links, as well as the contact between the robot base and the
static work cell elements are allowed. These default rules can
Various generic-purpose libraries are available today for col- be overridden dynamically depending on the task executed
lision detection, such as the Proximity Query Package (PQP) by the robot.
[2] or the Flexible Collision Library (FCL) [4]. These li-
braries offer collision and distance queries for static configu- 2.1 Sampling-based Collision Detection
rations of free-form 3D solid objects (although FCL handles
some restricted forms of continuous collision queries as well). Sampling-based collision detection is the most common ap-
Hence, they must be extended substantially to respond to proach in robotics to check robot movements. The contin-
the above challenges. uous movement c(t) is sampled by looking at a finite set of
static configurations c(ti), with i = 1, ..., n. Since the mo-
This paper presents a library for efficient collision detection tion is given in the joint configuration space, the sampling
for industrial robots. The library is built on the top of the rate is controlled by angle δ that specifies the maximum dis-
generic-purpose PQP collision detection engine, and extends tance between neighboring samples c(ti) and c(ti+1), using
it with various kinematic and geometric calculation methods the maximum norm over different joints. The movement is
to serve the needs of robotic process planning and path plan- classified as collision-free if and only if every static sample
ning. On the top of these collision detection techniques, the is collision-free.
library contains an implementation of the Rapidly-exploring
Random Trees (RRT) single-query probabilistic path plan- A critical issue is the choice of parameter δ: using a low
ning algorithm [3], as well as the Probabilistic Roadmaps value is computationally demanding, whereas increasing δ
(PRM) multi-query path planner [1], which use the continu- also increases the risk of missing a collision. The proper
ous collision queries as a so-called local planner (i.e., check- value must be determined for each application individually.
ing the direct movement of the industrial robot between two
configurations). The paper gives an overview of the im- Since typical path planning algorithms cannot exploit any
plemented collision detection techniques and demonstrates information on the location of collisions, the checking of con-
their computational efficiency in industrial case studies. tinuous movements can be interrupted upon finding the first
collision. This implies that the performance of the algorithm
2. COLLISION DETECTION FOR ARTIC- on colliding motions can be improved significantly by the
ULATED INDUSTRIAL ROBOTS proper ordering of the collision queries.
As pointed out above, collision detection for industrial robots As a heuristic, the probability of collision rises with the dis-
requires extending general-purpose collision libraries in two tance from known collision-free configurations. Accordingly,
main directions: (1) robot motions specified in the joint con- the implemented algorithm checks the start and end con-
figuration space must be mapped into the Cartesian space figurations first, whereas in the iterative step, it bisects the
using forward kinematic calculations; and (2) continuous previous motion sections until the distance decreases below
collision detection for the robot motion must be reduced to the given threshold δ. Furthermore, when checking a given
checking an appropriate series of static robot configurations. static configuration, collision queries for different pairs of
collision objects are ordered by the probability of collision,
A static configuration c of an m-axis industrial robot can be estimated based on historic records. In contrast, all collision
characterized by a vector of m joint angles in the form of queries must be executed on collision-free movements.
c = (α0, ..., αm) ∈ C, where C is the configuration space of
the robot, defined by its joint limits. As usual, we focus on 2.2 Conservative Advancement
linear movements in the joint configuration space. Accord-
ingly, the movement between start configuration c0 and end Instead of the above heuristic method for checking contin-
configuration c1 is interpolated by c(t) = c0(1−t)+c1t, t ∈ uous movements, another approach that provides a formal
[0, 1]. This movement is considered free of collisions if every guarantee of collision-free continuous movements is strongly
static configuration c(t) is collision-free for t ∈ [0, 1]. preferred. Such an approach is the so-called Conservative
Advancement (CA) method [6], which achieves this by us-
Collision detection must capture every so-called collision ob- ing distance queries on static configurations. The approach
ject in the work cell, including the robot (with a separate exploits that if, in a collision-free configuration c1, the dis-
tance between two collision objects is d, and the relative
displacement of these objects in configuration c2 compared
StuCoSReC Proceedings of the 2019 6th Student Computer Science Research Conference 20
Koper, Slovenia, 10 October
during other motions. Hence, collision rules must be terchangeable geometric models corresponding to different
maintained dynamically. degrees of opening), the workpieces, as well as all other ob-
jects in the cell. While the geometry of each collision object
• The configuration of the robot and the work cell may is characterized by a triangle mesh representation, given in
vary over time, e.g., when the robot grasps or releases an STL file, a configuration is described by a homogeneous
the workpiece. These configuration changes must be transformation matrix for each collision object. This ma-
managed, and pre-computation techniques must be han- trix can be computed by forward kinematics from the robot
dled with care. configuration.
• Since process planning and path planning methods Collision rules between pairs of collision objects define whe-
rely on iteratively checking a vast number of candidate ther the contact of the two objects is considered as a collision
robot motions, the computational efficiency of collision or not. By default, the contact of the neighboring robot
detection is crucial. links, as well as the contact between the robot base and the
static work cell elements are allowed. These default rules can
Various generic-purpose libraries are available today for col- be overridden dynamically depending on the task executed
lision detection, such as the Proximity Query Package (PQP) by the robot.
[2] or the Flexible Collision Library (FCL) [4]. These li-
braries offer collision and distance queries for static configu- 2.1 Sampling-based Collision Detection
rations of free-form 3D solid objects (although FCL handles
some restricted forms of continuous collision queries as well). Sampling-based collision detection is the most common ap-
Hence, they must be extended substantially to respond to proach in robotics to check robot movements. The contin-
the above challenges. uous movement c(t) is sampled by looking at a finite set of
static configurations c(ti), with i = 1, ..., n. Since the mo-
This paper presents a library for efficient collision detection tion is given in the joint configuration space, the sampling
for industrial robots. The library is built on the top of the rate is controlled by angle δ that specifies the maximum dis-
generic-purpose PQP collision detection engine, and extends tance between neighboring samples c(ti) and c(ti+1), using
it with various kinematic and geometric calculation methods the maximum norm over different joints. The movement is
to serve the needs of robotic process planning and path plan- classified as collision-free if and only if every static sample
ning. On the top of these collision detection techniques, the is collision-free.
library contains an implementation of the Rapidly-exploring
Random Trees (RRT) single-query probabilistic path plan- A critical issue is the choice of parameter δ: using a low
ning algorithm [3], as well as the Probabilistic Roadmaps value is computationally demanding, whereas increasing δ
(PRM) multi-query path planner [1], which use the continu- also increases the risk of missing a collision. The proper
ous collision queries as a so-called local planner (i.e., check- value must be determined for each application individually.
ing the direct movement of the industrial robot between two
configurations). The paper gives an overview of the im- Since typical path planning algorithms cannot exploit any
plemented collision detection techniques and demonstrates information on the location of collisions, the checking of con-
their computational efficiency in industrial case studies. tinuous movements can be interrupted upon finding the first
collision. This implies that the performance of the algorithm
2. COLLISION DETECTION FOR ARTIC- on colliding motions can be improved significantly by the
ULATED INDUSTRIAL ROBOTS proper ordering of the collision queries.
As pointed out above, collision detection for industrial robots As a heuristic, the probability of collision rises with the dis-
requires extending general-purpose collision libraries in two tance from known collision-free configurations. Accordingly,
main directions: (1) robot motions specified in the joint con- the implemented algorithm checks the start and end con-
figuration space must be mapped into the Cartesian space figurations first, whereas in the iterative step, it bisects the
using forward kinematic calculations; and (2) continuous previous motion sections until the distance decreases below
collision detection for the robot motion must be reduced to the given threshold δ. Furthermore, when checking a given
checking an appropriate series of static robot configurations. static configuration, collision queries for different pairs of
collision objects are ordered by the probability of collision,
A static configuration c of an m-axis industrial robot can be estimated based on historic records. In contrast, all collision
characterized by a vector of m joint angles in the form of queries must be executed on collision-free movements.
c = (α0, ..., αm) ∈ C, where C is the configuration space of
the robot, defined by its joint limits. As usual, we focus on 2.2 Conservative Advancement
linear movements in the joint configuration space. Accord-
ingly, the movement between start configuration c0 and end Instead of the above heuristic method for checking contin-
configuration c1 is interpolated by c(t) = c0(1−t)+c1t, t ∈ uous movements, another approach that provides a formal
[0, 1]. This movement is considered free of collisions if every guarantee of collision-free continuous movements is strongly
static configuration c(t) is collision-free for t ∈ [0, 1]. preferred. Such an approach is the so-called Conservative
Advancement (CA) method [6], which achieves this by us-
Collision detection must capture every so-called collision ob- ing distance queries on static configurations. The approach
ject in the work cell, including the robot (with a separate exploits that if, in a collision-free configuration c1, the dis-
tance between two collision objects is d, and the relative
displacement of these objects in configuration c2 compared
StuCoSReC Proceedings of the 2019 6th Student Computer Science Research Conference 20
Koper, Slovenia, 10 October