CA2120534C - Real time collision detection - Google Patents

Real time collision detection Download PDF

Info

Publication number
CA2120534C
CA2120534C CA002120534A CA2120534A CA2120534C CA 2120534 C CA2120534 C CA 2120534C CA 002120534 A CA002120534 A CA 002120534A CA 2120534 A CA2120534 A CA 2120534A CA 2120534 C CA2120534 C CA 2120534C
Authority
CA
Canada
Prior art keywords
voxels
value
voxel
collision
strength
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CA002120534A
Other languages
French (fr)
Other versions
CA2120534A1 (en
Inventor
Michael A. Greenspan
Nestor Burtnyk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Research Council of Canada
Original Assignee
National Research Council of Canada
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Research Council of Canada filed Critical National Research Council of Canada
Publication of CA2120534A1 publication Critical patent/CA2120534A1/en
Application granted granted Critical
Publication of CA2120534C publication Critical patent/CA2120534C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39082Collision, real time collision avoidance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40442Voxel map, 3-D grid map
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40447Bitmap based
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40492Model manipulator by spheres for collision avoidance

Abstract

A method is provided for detecting a collision between a robot and one or more obstacles before it occurs. The robot is modeled by spheres in a voxelized workspace. Each voxel within the workspace is assigned a value which corresponds to its distance from the closest obstacle. A collision is determined to be imminent if the voxel value at the centre of a sphere is less than the radius of the sphere in voxels.

Description

~~zv~~
heal Time Collision Detection Field of the Invention The invention relates to collision avoidance and more particularly, relates to methods of detecting a collision between an object and a device having one or more moveable elements before the collision occurs.
Background of the Invention In the field of robotics, much interest has been generated over the years in methods of collision avoidance between a robot and obstacles in its environment.
Methods of collision avoidance have at their core, a method of collision detection. In 1o general, to prevent a collision, the intersection of a set of moveable elements with a set of obstacles must be determined before the collision actually occurs. After it has been determined that a collision state is imminent, action can be taken to redirect the robot to avoid the collision.
Two broad categories of collision detection methods are: those methods that encode the occupancy of obstacles in a spatial index, and those that do not.
Methods relating to the latter category, while satisfactory for on-line path planning, tend to be too slow to be effective for reel-time collision avoidance. Typically a collision is detected by analytically calculating the distance between a set of geometric primitives describing a moveable element, and a set of geometric primitives describing obstacles.
Determination of the collision status of the moveable element therefore requires the intersection calculation to be performed a number of times, equal to the product of the number of geometric primitives describing the moveable element and the number of geometric primitives describing the obstacles.
Lozano-Perez in a paper entitled "Spatial Planning: A Configuration Space Approach," IEEE Transactions on Computers, vol. C-32, no. 2, Feb. 1983 teaches a method of the second category heretofore mentioned. Lozano-Perez models both the moveable elements and the obstacles as polyhedra, and analytically calculates the intersections of planes.
IChatib, O., in a paper entitled "Real-Time Obstacle Avoidance for 3o Manipulators and Mobile Robots," published in The International Jaurnat of Robotics Research, vol: 5 no. 1, Spring 1986, models moveable elements as a set of points and ~~v~~~t line segments and presents the analytical distance formulae for a number of geometric primitives, including a parallelepiped, a cylinder, and a cane. Dodds, G., in a paper entitled "Robotic Collision Control", IEEE Colloquium on controllers for Robotic Applications - Concepts and Implementations, Digest no. 1v7, 1989, pp. 2/1 -models moveable elements as spheres, and the obstacles as polyhedra; it has been suggested by others to model the moveable elements and obstacles as polyhedra, cylinders or spheres.
One technique that improves the processing speed of collision detection is to encode the occupancy of the obstacles in a spatial index. An example of this is the use of voxels. Voxels are discrete volume elements in the form of cubes. In some known schemes, all the voxels that are occupied by an obstacle are assigned a predetermined vaiue, for example zero, while all other voxels are given another value. To determine whether a certain point in space is occupied by an obstacle, it is sufl6cient to perform a simple table lookup, locating the corresponding voxel and checking its value.
Advantageously, this method obviates the need to perform an analytic calculation of the distance between the geometric primitives describing the moveable elements and the geometric primitives describing the obstacles. Rather, the geometric primitives describing the moveable elements need only be compared to the values of the voxels that are quick to identify.
2o Duffy et al. in a paper entitled " Real-Time Collision Avoidance System for Multiple Robots Operating in a Shared Workspace", IEEE Proceedings, Vol. 36, Pt.
E, No 6 Nov. 1989, pp. 478-484 describe a system wherein both the moveable element and the obstacles are represented as sets ofvoxels, and a specialized digital hardware system was constructed to determined the overlap of these sets as the element moves thorough space.
Although the prior art methods for collision avoidance and detection appear to perform their intended function, some of these methods are too slow for real-time applications.
Therefore, it is an object of the invention to provide a method for collision 3o detection that can determine a collision state in a timely manner.

~~'~~~ 3'~
Furthermore, it is an object of the invention to provide a method of collision detection wherein the speed of detection is independent of the number of obstacles in the environment.
In accordance with an aspect of the invention, in a device having one or more moveable elements residing within a finite space, a method of detecting a collision state between an object within the finite space and a model of the one or more moveable elements, comprising the steps of (a) determining relative strengths of a set of discrete points throughout the space, the relative strength of any point being a measure of the distance from that point to the object; (b) storing values representative to of the relative strengths in a memory; (c) determining values of relative strengths of a set of reference points which approximate a volume occupied by the model of the one or more moveable elements, the relative strength of each point being a measure of the distance around that point that is occupied by the model of the one or more moveable elements; (e) storing values representive of the relative strengths of the set of reference points in a memory and identifying a corresponding discrete point for each reference point; and, (fj comparing the stored values representative of the relative strengths of the reference points with the stored values representative of the relative strengths of the corresponding discrete points in the space, a collision state being detected when the ratio of any of the compared values representative of the relative strengths of the 2o reference points and the values representative of the relative strengths of the corresponding discrete points in the space is greater than 1.
In accordance with another aspect of the invention in a device having a plurality of relatively moveable elements, there is provided a method of detecting a collision state between an object and a model of one of the moveable elements before a collision occurs, comprising the steps of determining the value of the strength of each of a plurality of voxels within a finite space, the strength of any voxel being an ..
indicator of the distance from that voxel to the object; identifying the voxel address at the center of one or more spheres which approximates a volume occupied by the model of the moveable element; and, comparing the values of the strengths of the 3o voxels at the centers of the one or more spheres with a number of adjacent voxels that correspond to the respective radii of the one or more spheres, a collision state being detected when a compared value of the strength of the voxel at the centre of a sphere is less than the value of the radii of that sphere.
~~. ~, ~ ~. J
Brief Description of the Drawings Exemplary embodiments of the invention will be described in conjunction with the drawings, in which:
FIG. 1 is a two dimensional view of a 3 degree of freedom planar robot manipulator including obstacles in a workspace shown in a positive x-y quadrant of a Cartesian coordinate system;
FIG. 2 is a two dimensional view of the manipulator of FIG. 1. shown in an different position;
FIG. 3 is a two dimensional view of a spherical approximation of the to manipulator of FIG. 1.
FIG. 4 is an grid of values which correspond to the distance of the manipulator from the top of the diamond shaped obstacle shown in FIG. 3;
FIG. S is a two dimensional view showing the manipulator in two positions with reference to an angle 81 representing an unconstrained range of movement;
FIG. 6 is a two dimensional view of the manipulator of FIG. 3 with varying sized spheres shown as circles around the periphery of the manipulator;
FIG. 7 is an isometric view of a robot manipulator positioned above a table supporting a workpiece;
FIG. 8 is an isometric view of the manipulator of FIG. 7 modeled by spheres having an end-effector positioned above the table modeled by voxels supporting a workpiece; and, FIG. 9 is a side view outline of the manipulator, supporting table, and workpiece shown in FIG. 8 in a voxelized workspace.
Detailed Description The robot workspace is a finite space in which a robot may move. The workspace includes the robot and obstacles that are to be avoided by the robot.
Referring to FIG. 1, a two dimensional (2-D) workspace is shown by way of example, and for the purposes of illustration. A three degree of freedom (d.o.f.) planar robotic manipulator 10 and end-effector 12 are positioned on an x-y plane representing the 2-D workspace. The end-effector 12 is shown at position (x~,y~ between obstacles 14 and 16. The method.in accordance with the invention models the robotic manipulator and simulates and pre-calculates moves before the robotic manipulator 10 actually moves; calculations are performed to determine one or more collision-free locations the manipulator or the end-effector I2 may be moved to. In FIG. 2, another configuration of the manipulator 10 is shown, however, the end-effector 12 is also at 1o position (xee,yee) between obstacles 14 and 16.
The basic modeling structures used in the process of collision detection are illustrated in FIG. 3. The workspace 30 is.mapped into a grid of elements and the manipulator 10 and end-effector I2 are modeled as a set of circles 34. The grid is mapped to an array of memory elements. Each grid element is assigned an integer value as shown in FIG. 4 stored in the memory array indicating its distance to an obstacle in grid units. The grid elements in FIG. 3 are of a coarser resolution than those in FIG. 4. that contain values representing the area around the top edge of the diamond shaped obstacle 14. Grid elements with a value 0 represent space occupied by the obstacle, while elements with a value n, n = { I, 2, 3, ... }, are a distance of m grid 2o elements away from the closest obstacle, where n 5 m< n+1. The value nmay be thought of as a value representing a relative strength between elements. With the above described representations determining the collision status of a particular ,configuration of the manipulator 10 is performed in the following manner. The centres of the circles are calculated and the value of the grid element at each circle centre is then compared to the radius of that circle (measured In units of grid elements). For each circle, if the circle radius is less than the grid element value at the centre of the circle, then the configuration is free of collision. Otherwise, if any circle centre in the configuration has a radius greater than the value at that circle's centre, the manipulator is in collision with the closest obstacle.
3o To determine a collision-free state for a given end-e9fector coordinate, for example end-effector 12 in the figures shown, it is necessary to determine the unconstrained motion of the manipulator with respect to some variable.13y way of example, one choice of variable is the range of movement of one of the manipulator 10 joints. There may exist other suitable parameters, depending on the kinematic linkage of the manipulator. For example, in FIG. 5 the end-effector coordinate is (xee9Yee) ~d the parameter is 81. The value of 81 is incremented over its entire range, and the collision status is evaluated at each iteration. Once the range for collision-free movement is established, the midpoint of the collision-free range of A 1 is preferably chosen as the next value of the parameter.
In FIG. 6 differcnt sized circles 63, 66, and 68 are used to approximate a volume of the manipulator close to .its outer surface. As the circles become smaller and closely match the outer surface contour of the manipulator this volume approximation may be considered an approximation of the surface area of the manipulator. The volume approximated by the circles corresponds in location to a layer extending along the surface of the manipulator, the thickness of the layer being equal or less than the 1o diameter of the one or more circles. Advantageously, the interior of the manipulator is left unfilled; computing circles for the interior space would not yield additional information about whether a path is collision free. Alternatively, the volume or surface area of the manipulator could be represented by a set of reference points instead of a set of circles. In that case the relative strength of each point would be a measure of the distance around that point occupied by the manipulator.
Figs. 1 to 6 are by way of example illustrative of the basic data structures used in the process of collision detection. However, since robots move in a 3-D
space, in the preferred embodiment of the invention; the workspace is represented by discrete 3 dimensional elements; the circles in the above examples are replaced by spheres; as well, the grid is in the form of a three dimensional grid known as a voxel map. The elements may be represented as discrete points or by various forms of polyhedra. In a preferred embodiment, the discrete elements are represented by cubes or voxels.
Voxels are the 3-D analogy to pixels in a 2-D digital image. Each voxel occupies a discrete addressable location; each voxel has an associated memory location that can be assigned an attribute represented by an integer value. Each voxel is initialized to a predetermined value representing an empty unit of space. To avoid uncertainty, the initialization value is different from those values used as a distance measurement from an object and different from the value representing an occupied unit of space.
Each obstacle is discretized and the associated voxels are assigned a zero value, representing 3o an occupied unit of space. After all obstacles have been voxelized, each non-obstacle voxel is assigned a value that represents the distance from that voxel to the closest obstacle. The assigned value of any voxel is a measure of its distance to the surface of the nearest obstacle. For example, a voxel adjacent to an obstacle voxel, is assigned a value of I; voxels 2 voxels away from an obstacle voxel, are assigned a value 2, and so on.
Referring to FIG. 7 a teleoperated robot 70 is shown having a manipulator 72 and an end-effector 74 positioned above a table 76 and workpiece 78. In FIG. 8 the table 76 and workpiece 78 are represented as voxels 87. For the sake of clarity, only a portion of the workspace is shown in the form of voxels in FIG. 8. The robot 70 is modeled by spheres 81 which overlap one another to ensure that the region near the outer layer of the manipulator is completely modeled by the spheres. In FIG.
9, the workspace is shown represented by voxels 87. A solid outline 90 of the teleoperated robot is shown inside a dashed outline 92. The dashed outline 92 is delineated to show the area contained by the spheres 81; only some ofthe spheres used to model the to manipulator are shown in FIG. 9. Ideally, in order to accurately determine within a small range if a collision will occur for a particular modeled position of the manipulator, it is preferable to have the dashed outline 92 be as close as possible but not inside the solid outline 90. Of course there are trade-oils in accomplishing this.
For example, the size and density of the spheres may be varied. If the spheres are made smaller and are tightly packed with some overlapping, the spheres can closely approximate the solid outline 90. However, as the number of spheres increase, the time.
it takes to determine a collision state will also increase. When larger loosely packed spheres are used to approximate the manipulator, the dashed outline is further apart from the solid outline; the result of whether a collision is imminent is calculated more 2o . quickly, however the result is more crude; the manipulator is not able to move as close to an object as when the dashed outline closely mirrors or is just outside the solid outline.
In one embodimentof the invention, each voxel is a cube with 2 cm. width.
This allows an 8 cubic meter reachable space of a robot's manipulator to be encoded in a voxel map containing 106 voxels. When obstacles are added to the environment, they are coded into the voxel map by a process known as voxelization. The voxel map is then expanded to encode the distances of each voxel to the nearest obstacle.
The process of voxelization is defined below in pseudo code.
The robot's manipulator is represented by a spherical model. Various sized spheres are positioned throughout the volume of each moveable element or link to approximate the surface of the manipulator. It is preferable for the model to completely enclose the manipulator and not to extend more than 1/2 of the voxel resolution (i.e., 1 cm) past the surface. The model should use the least number of spheres that can satisfy these constraints. In the current implementation, approximately 300 spheres are used to model the manipulator within the 1 cm. resolution.
Voxelization Method The following voxelization method identifies voxels addresses that are contained within an object in the workspace.
For a polygon P located and oriented at some position and orientation in a 3D
space, the voxels occupied by P within the space can be determined as follows:
1. Map the polygon P to a 2-D reference plane.
2. Rotate the polygon by 6x around the x-axis and by 8z around the z-axis so that it is parallel to the x-z plane. Let the rotated polygon be P'.
3. Translate the rotated polygon P' by ~x along the x-axis and 0z along the z-axis so l0 that every vertex of the translated P' has a positive x and z component that is greater than zero. Let the translated polygon P' be P".
4. Flood fill a discrete grid in the positive x-z quadrant. Starting with the grid element at coordinate (0,0) as a seed, apply a flood fill colouring algorithm to distinguish between the inside and outside of P". Note that from step 2 it is known that P" does not reside in the seed element, so the grid elements exterior to the polygon will be coloured.
5. For every non-coloured gird element, translate and then rotate the coordinate of the elements by (-fix;-dz) and (-8z,-Ax ). The voxels at these new coordinates are the voxels occupied by P within the 3-D space.
This method is used to voxelize the surface of a polyhedra by successively voxelizing the constituent polygon of the polyhedra. Note that in step 1., the rotations can occur around any 2 orthogonal axes,,mapping the polygon.P to an arbitrary 2-D plane.
, Although voxels are the preferred representation of discrete points or volumes in space, other representations of discrete points may be envisaged.
Voxel Expansion Method 3o The voxel expansion method assigns relative strengths to voxels in the form of integer values so that the value of any voxel is a measure of its distance to the nearest s obstacle. This expansion process is generally performed after the workspace has been voxelized. The method increments through the voxel map six times in six separate directions: ~ x, ~y, fz. When an obstacle voxel is encountered, a counter is reset to the value zero. At each subsequent voxel, the counter is incremented, and the current voxel value is compared to the counter value. If the counter value is less than the current voxel value, the voxel value is set to the counter value. After 6 passes through the voxel map, the value of each voxel will be a predetermined integer value representing an obstacle voxel, or an integer indicating the distance to an obstacle voxel.
to Collision Detection Method Let 0 be a set of obstacles within a 3D space. Let D be a spherical approximation of a device within the some 3D space such that D = {(Ci, Ri); i = 1,n}, where (Ci,Ri) are the respective centers and radii of the n spheres comprising the approximation, and the device is completely contained within D.
The collision between O and D can be detected by the following steps:
2o 1. Voxelize the obstacles in O.
2. Expand the voxel space so that the value of a voxel is the integral value of the distance of that voxel from the closest obstacle voxel.
3. For i = 1 to n, compare the value Vi of the voxel at the sphere center Ci with Ri. If .
some Vi<Ri, then D is in collision with some obstacle in 0. Otherwise, D is not in collision with any obstacles in O.
Collision Avoidance Method A
Let D be a spherical approximation of a servo-controlled device, which can be positioned within a space shared by a set of obstacles O. Let P be the next position of the device D. A method which will ensure the collision free motion of D within the space ts:
1 Voxelize the obstacles in O.

2. Read next position P from the servo-controller. Detect the collision status,ofD with O if in position P.
3. If D is collision-free from O when in position P, then move. D to P.
Otherwise, do not move D to P. Repeat steps 2 and 3.
Note that the next desired position of the device D must be close enough to the current position of the device D so that the change in voxel occupancy of any sphere in D does not exceed one voxel.
t0 Cowlision Avoidance Method B
Let D be a spherical approximation of a servo-controlled device, which can be positioned within a space shared by a set of obstacles O. Let P be the next position of the device D as input from the servo-controller. If the configuration of D is under constrained by the position P, then there will exist a range of configurations of D' which will satisfy P. A method which will ensure the collision free motion of D within the space is:
1 Voxelize the obstacles in O.
2. Read next position P from the servo-controller. For a set of configurations of D
which position the device at P, detect the collision status of D with O. Order the configurations within the set by the closeness of collision with O.
3. If the configuration of D which is furthest from collision is collision-free, then move D to P in this configuration. Otherwise, do not move D to P. Repeat steps 2 and 3.
Note that the next desired position of the device D must be close enough to the current position of the device D so that the change in voxel occupancy of any sphere in D does not exceed one voxel.
The above representations provide the framework for a straightforward collision detection method. The forward kinematic solution is applied to each link of the spherical manipulator model, and the center of each sphere is compared to the voxel corresponding to its location. If the value of the voxel is not greater than the radius of the sphere, then .the manipulator in its modeled position is deemed to be in collision with some obstacle.

.~,:~;~~J~
Results show that single collision test of the entire manipulator takes 4 msec on SGI 4D35 Iris workstation, and 15 rnsec on a 50 MHz PC 486. Advantageously, this time performance is independent of the number of obstacles in environment.
A tradeoff which has been made to achieve this high performance is resolution.
The resulting path can be planned only within a certain clearance of the obstacles in the environment, equal to the voxel size (i.e. 2 cm). However, this restriction is reasonable for gross motion planning.
m

Claims (9)

1. In a device having one or more moveable elements residing within a finite space, a method of detecting a collision state between an object within the finite space and a model of the one or more moveable elements, comprising the steps of:
(a) determining relative strengths of a set of discrete points throughout the space, the relative strength of any point being a measure of the distance from that point to the object;
(b) storing values representative of the relative strengths in a memory;
(c) determining values of relative strengths of a set of reference points which approximate a volume occupied by the model of the one or more moveable elements, the relative strength of each point being a measure,of the distance around that point that is occupied by the model of the one or more moveable elements;
(d) storing values representive of the relative strengths of the set of reference points in a memory;
(e) identifying a corresponding discrete point for each reference point; and, (f) comparing the stored values representative of the relative strengths of the reference points with the stored values representative of the relative strengths of the corresponding discrete points in the space, a collision state being detected when the ratio of any of the compared values representative of the relative strengths of the reference points and the values representative of the relative strengths of the corresponding discrete points in the space is greater than 1.
2. The method defined in claim 1 further comprising the step of redirecting the moveable element if a collision state is detected.
3. The method as defined in claim 1 further comprising the step of:

(i) repeating steps (e) to (f) for incrementally different positions of the model of the one or more moveable elements to determine a plurality of collision free states until a collision state is detected.
4. The method defined in claim 1 wherein each discrete point comprises a voxel.
5. In a device having at least one relatively moveable element, a method of detecting a collision state between an object and a model of the device comprising the steps of:
a) determining the value of the strength of each of a plurality of voxels within a finite space, the strength of any voxel being an indicator of the distance from that voxel to the object;
b) identifying the voxel strength at the center of one or more spheres which approximate a volume occupied by the model of the one or more moveable elements;
and, c) comparing the values of the strengths of the voxels at the centers of the one or more spheres with a number of adjacent voxels that correspond to the respective radii of the one or more spheres, a collision state being detected when a compared value of the strength of the voxel at the centre of a sphere is less than the value of the radius of that sphere.
6. The method according to claim 5 further comprising the step of preventing the at least one moveable element from moving closer to the object when the ratio of the value of the strength of the voxel at the center of the sphere divided by the number of adjacent voxels that correspond to the radius of the sphere is less than one.
7. The method as defined in claim 5 further comprising the step of:
(i) repeating steps (b) and (c) for incrementally different positions of the model of the one or more moveable elements to determine a plurality of collision free states, until a collision state is detected.
8. The method according to claim 5 wherein the step of determining the value of the strength of each of a plurality of voxels within the finite space comprises the steps of:

a) assigning all voxels located a distance from the object a value which corresponds to the distance in units of voxels from the object, wherein a first set of voxels next to an object are assigned a value of one, and a second set of voxels next to the first set of voxels are assigned a value of two, and so on, such that a set of voxels less than n+1 voxels and greater than or equal to n voxels from the object are assigned a value of n.
9. The method according to claim 5 wherein the volume approximated by the one or more spheres corresponds in location to a layer extending along the surface of the moveable element, the thickness of the layer being equal or less than the diameter of the one or more spheres.
CA002120534A 1993-03-17 1994-03-16 Real time collision detection Expired - Lifetime CA2120534C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/032,314 1993-03-17
US08/032,314 US5347459A (en) 1993-03-17 1993-03-17 Real time collision detection

Publications (2)

Publication Number Publication Date
CA2120534A1 CA2120534A1 (en) 1994-09-18
CA2120534C true CA2120534C (en) 2004-05-04

Family

ID=21864272

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002120534A Expired - Lifetime CA2120534C (en) 1993-03-17 1994-03-16 Real time collision detection

Country Status (2)

Country Link
US (1) US5347459A (en)
CA (1) CA2120534C (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108663990A (en) * 2018-04-16 2018-10-16 华中科技大学 A kind of Multi-axis Machining interference detection and processing method based on two-stage voxelization model

Families Citing this family (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5611025A (en) * 1994-11-23 1997-03-11 General Electric Company Virtual internal cavity inspection system
US5548694A (en) * 1995-01-31 1996-08-20 Mitsubishi Electric Information Technology Center America, Inc. Collision avoidance system for voxel-based object representation
JP2915826B2 (en) * 1995-07-11 1999-07-05 富士通株式会社 Interference check device
US5761391A (en) * 1996-05-22 1998-06-02 Fujitsu Ltd. Arithmetic unit for calculating distance between objects
US6004016A (en) * 1996-08-06 1999-12-21 Trw Inc. Motion planning and control for systems with multiple mobile objects
JP3288250B2 (en) * 1997-03-25 2002-06-04 ファナック株式会社 Robot controller
US5837994C1 (en) * 1997-04-02 2001-10-16 Gentex Corp Control system to automatically dim vehicle head lamps
US6130421A (en) * 1998-06-09 2000-10-10 Gentex Corporation Imaging system for vehicle headlamp control
US6587573B1 (en) * 2000-03-20 2003-07-01 Gentex Corporation System for controlling exterior vehicle lights
US7653215B2 (en) 1997-04-02 2010-01-26 Gentex Corporation System for controlling exterior vehicle lights
US6631316B2 (en) * 2001-03-05 2003-10-07 Gentex Corporation Image processing system to control vehicle headlamps or other vehicle equipment
US6861809B2 (en) * 1998-09-18 2005-03-01 Gentex Corporation Headlamp control to prevent glare
US6049171A (en) * 1998-09-18 2000-04-11 Gentex Corporation Continuously variable headlamp control
US5999881A (en) * 1997-05-05 1999-12-07 General Electric Company Automated path planning
US6014145A (en) * 1997-07-07 2000-01-11 International Business Machines Corporation Navagation with optimum viewpoints in three-dimensional workspace interactive displays having three-dimensional objects with collision barriers
DE19810341C2 (en) * 1998-03-10 2000-10-12 Deutsch Zentr Luft & Raumfahrt Method for automatic collision avoidance of a manipulator in a work space limited by obstacles
US6099573A (en) * 1998-04-17 2000-08-08 Sandia Corporation Method and apparatus for modeling interactions
US6407748B1 (en) 1998-04-17 2002-06-18 Sandia Corporation Method and apparatus for modeling interactions
JP3415438B2 (en) 1998-05-12 2003-06-09 富士通株式会社 Interference checking apparatus and method
JP2000200361A (en) * 1998-08-07 2000-07-18 Sega Enterp Ltd Image processor and information recording medium
US6873944B1 (en) 2000-10-11 2005-03-29 Ford Global Technologies, Llc Method of real time collision detection between geometric models
US7114157B2 (en) * 2001-11-27 2006-09-26 Kuka Roboter Gmbh System controlling exclusive access by control programs to system resources
JP2003236787A (en) * 2002-02-18 2003-08-26 Kawasaki Heavy Ind Ltd Drivingly controlling method and drivingly controlling device
US6678582B2 (en) * 2002-05-30 2004-01-13 Kuka Roboter Gmbh Method and control device for avoiding collisions between cooperating robots
US7191104B2 (en) * 2002-07-11 2007-03-13 Ford Global Technologies, Llc Method of real-time collision detection between solid geometric models
JP4513568B2 (en) * 2002-07-18 2010-07-28 株式会社安川電機 Robot controller
JP2004199496A (en) * 2002-12-19 2004-07-15 Sony Corp Information processor and method, and program
JP3975959B2 (en) * 2003-04-23 2007-09-12 トヨタ自動車株式会社 Robot operation regulating method and apparatus, and robot equipped with the same
DE10361132B4 (en) * 2003-06-18 2013-02-28 Elan Schaltelemente Gmbh & Co. Kg Method for monitoring the movement of a moving in several degrees of freedom moving danger object of a handling device, such as handling mass and / or movable mass
EP2368600B1 (en) * 2003-08-12 2016-09-21 Loma Linda University Medical Center Modular patient support system
DE102004027944B4 (en) * 2004-06-08 2012-02-16 Kuka Laboratories Gmbh Method for protecting a robot against collisions
AU2004322424B2 (en) * 2004-07-19 2010-12-09 Societe De Materiel Industriel Et D'equipement-Smie Process and system for avoiding collisions for moveable machines
US8364454B2 (en) * 2004-07-27 2013-01-29 Ford Motor Company System and method of dynamic clearance checking using a geometric model
WO2006086021A2 (en) * 2004-10-25 2006-08-17 University Of Dayton Method and system to provide improved accuracies in multi-jointed robots through kinematic robot model parameters determination
JP2006151125A (en) * 2004-11-26 2006-06-15 Omron Corp On-vehicle image processing device
DE102006007623B4 (en) * 2006-02-18 2015-06-25 Kuka Laboratories Gmbh Robot with a control unit for controlling a movement between an initial pose and an end pose
US7668621B2 (en) * 2006-07-05 2010-02-23 The United States Of America As Represented By The United States Department Of Energy Robotic guarded motion system and method
US7584020B2 (en) * 2006-07-05 2009-09-01 Battelle Energy Alliance, Llc Occupancy change detection system and method
US8355818B2 (en) * 2009-09-03 2013-01-15 Battelle Energy Alliance, Llc Robots, systems, and methods for hazard evaluation and visualization
US7211980B1 (en) 2006-07-05 2007-05-01 Battelle Energy Alliance, Llc Robotic follow system and method
US7587260B2 (en) * 2006-07-05 2009-09-08 Battelle Energy Alliance, Llc Autonomous navigation system and method
US8073564B2 (en) * 2006-07-05 2011-12-06 Battelle Energy Alliance, Llc Multi-robot control interface
US8965578B2 (en) 2006-07-05 2015-02-24 Battelle Energy Alliance, Llc Real time explosive hazard information sensing, processing, and communication for autonomous operation
US7801644B2 (en) * 2006-07-05 2010-09-21 Battelle Energy Alliance, Llc Generic robot architecture
US8271132B2 (en) 2008-03-13 2012-09-18 Battelle Energy Alliance, Llc System and method for seamless task-directed autonomy for robots
US7620477B2 (en) * 2006-07-05 2009-11-17 Battelle Energy Alliance, Llc Robotic intelligence kernel
US7974738B2 (en) * 2006-07-05 2011-07-05 Battelle Energy Alliance, Llc Robotics virtual rail system and method
ATE459030T1 (en) * 2006-09-14 2010-03-15 Abb Research Ltd METHOD AND DEVICE FOR AVOIDING COLLISIONS BETWEEN AN INDUSTRIAL ROBOT AND AN OBJECT
EP1972416B1 (en) * 2007-03-23 2018-04-25 Honda Research Institute Europe GmbH Robots with occlusion avoidance functionality
EP1972415B1 (en) * 2007-03-23 2019-01-02 Honda Research Institute Europe GmbH Robots with collision avoidance functionality
EP1974869A1 (en) * 2007-03-26 2008-10-01 Honda Research Institute Europe GmbH Apparatus and method for generating and controlling the motion of a robot
US8046102B2 (en) * 2007-05-17 2011-10-25 Fanuc Robotics America, Inc. Control method for synchronous high speed motion stop for multi-top loaders across controllers
US7831391B2 (en) * 2007-06-12 2010-11-09 Palo Alto Research Center Incorporated Using segmented cones for fast, conservative assessment of collision risk
DE102007032540B4 (en) * 2007-07-12 2015-05-21 Siemens Aktiengesellschaft Method for controlling the movement of a moving part of an X-ray image recording system and X-ray image recording system coupled to video cameras
DE102007059480B4 (en) 2007-12-11 2018-07-05 Kuka Roboter Gmbh Method and device for pose monitoring of a manipulator
EP2104046A1 (en) 2008-03-17 2009-09-23 Volkswagen AG Method and device for computer-aided testing of the constructability of a product
CN101546435B (en) * 2008-03-24 2012-03-28 鸿富锦精密工业(深圳)有限公司 System and method for detecting article collision
DE102008016604B4 (en) * 2008-04-01 2014-07-17 Kuka Laboratories Gmbh Method and device for self-collision monitoring of a manipulator
DE102008057142B4 (en) * 2008-04-29 2016-01-28 Siemens Aktiengesellschaft Method for computer-aided motion planning of a robot
US9144904B2 (en) 2008-05-21 2015-09-29 Fanuc Robotics America Corporation Method and system for automatically preventing deadlock in multi-robot systems
US8315738B2 (en) * 2008-05-21 2012-11-20 Fanuc Robotics America, Inc. Multi-arm robot system interference check via three dimensional automatic zones
US8650272B2 (en) * 2008-07-16 2014-02-11 Hewlett-Packard Development Company, L.P. Distributed transaction processing system having resource managers that collaborate to decide whether to commit or abort a transaction in response to failure of a transaction manager
US9643316B2 (en) * 2009-10-27 2017-05-09 Battelle Memorial Institute Semi-autonomous multi-use robot system and method of operation
US8059024B2 (en) * 2009-12-17 2011-11-15 Honeywell International Inc. Inference of turbulence hazard from proximity to radar turbulence measurement
FR2954518B1 (en) * 2009-12-18 2012-03-23 Aripa Service Innovation Ind "ANTICOLLISION SYSTEM FOR THE DISPLACEMENT OF AN OBJECT IN A CONCEALED ENVIRONMENT."
WO2011101988A1 (en) * 2010-02-22 2011-08-25 トヨタ自動車株式会社 Risk degree calculation device
WO2012027390A2 (en) * 2010-08-23 2012-03-01 Irobot Corporation Remote vehicle missions and systems for supporting remote vehicle missions
JP4951111B2 (en) * 2010-11-04 2012-06-13 株式会社東芝 Design support apparatus, design support method, and program
DE102012103830B4 (en) 2011-05-05 2022-05-25 Fanuc Robotics America Corp. Method and computer-readable media for automatic connection of deadlocks in multiple robot systems
WO2013101273A1 (en) * 2011-12-30 2013-07-04 St. Jude Medical, Atrial Fibrillation Division, Inc. System and method for detection and avoidance of collisions of robotically-controlled medical devices
JP5857803B2 (en) * 2012-03-07 2016-02-10 株式会社デンソーウェーブ Industrial machine interference determination device, interference determination method, computer program, and recording medium
US8879139B2 (en) 2012-04-24 2014-11-04 Gentex Corporation Display mirror assembly
US8983135B2 (en) 2012-06-01 2015-03-17 Gentex Corporation System and method for controlling vehicle equipment responsive to a multi-stage village detection
WO2013188523A1 (en) 2012-06-12 2013-12-19 Gentex Corporation Vehicle imaging system providing multi-stage aiming stability indication
US10163261B2 (en) 2014-03-19 2018-12-25 Matterport, Inc. Selecting two-dimensional imagery data for display within a three-dimensional model
US10139985B2 (en) 2012-06-22 2018-11-27 Matterport, Inc. Defining, displaying and interacting with tags in a three-dimensional model
US9786097B2 (en) * 2012-06-22 2017-10-10 Matterport, Inc. Multi-modal method for interacting with 3D models
JP6069923B2 (en) * 2012-07-20 2017-02-01 セイコーエプソン株式会社 Robot system, robot, robot controller
US8964024B2 (en) 2012-08-02 2015-02-24 Gentex Corporation System and method for controlling exterior vehicle lights responsive to detection of a semi-truck
WO2014122995A1 (en) * 2013-02-06 2014-08-14 三菱電機株式会社 Interference check device
CN105555606B (en) 2013-08-19 2018-06-12 金泰克斯公司 For the vehicle imaging systems and method differentiated between light for vehicle and the red stop light of flicker
US9317758B2 (en) 2013-08-19 2016-04-19 Gentex Corporation Vehicle imaging system and method for distinguishing reflective objects from lights of another vehicle
SE537534C2 (en) * 2013-08-27 2015-06-02 Cognibotics Ab Method and system for determining at least one property of a manipulator
AU2014326772B2 (en) 2013-09-24 2017-07-20 Gentex Corporation Display mirror assembly
WO2015050996A1 (en) 2013-10-01 2015-04-09 Gentex Corporation System and method for controlling exterior vehicle lights on motorways
US9434327B2 (en) 2013-11-15 2016-09-06 Gentex Corporation Imaging system including dynamic compensation for color attenuation for vehicle windscreens
US9511715B2 (en) 2014-01-31 2016-12-06 Gentex Corporation Backlighting assembly for display for reducing cross-hatching
US9452531B2 (en) * 2014-02-04 2016-09-27 Microsoft Technology Licensing, Llc Controlling a robot in the presence of a moving object
WO2015120008A1 (en) * 2014-02-05 2015-08-13 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
WO2015143333A1 (en) 2014-03-21 2015-09-24 Gentex Corporation Tri-modal display mirror assembly
KR101894262B1 (en) 2014-04-01 2018-09-04 젠텍스 코포레이션 Automatic display mirror assembly
US10037124B2 (en) 2014-07-08 2018-07-31 Honeywell International Inc. Vertical profile display including weather icons
US10495783B2 (en) 2014-07-08 2019-12-03 Honeywell International Inc. Vertical profile display including weather blocks
US9710218B2 (en) 2014-07-08 2017-07-18 Honeywell International Inc. Vertical profile display including hazard band indication
WO2016044746A1 (en) 2014-09-19 2016-03-24 Gentex Corporation Rearview assembly
WO2016073848A1 (en) 2014-11-07 2016-05-12 Gentex Corporation Full display mirror actuator
EP3218227B1 (en) 2014-11-13 2018-10-24 Gentex Corporation Rearview mirror system with a display
KR101997815B1 (en) 2014-12-03 2019-07-08 젠텍스 코포레이션 Display mirror assembly
USD746744S1 (en) 2014-12-05 2016-01-05 Gentex Corporation Rearview device
JP6137155B2 (en) * 2014-12-09 2017-05-31 トヨタ自動車株式会社 Interference avoidance method, control device, and program
US9744907B2 (en) 2014-12-29 2017-08-29 Gentex Corporation Vehicle vision system having adjustable displayed field of view
US9720278B2 (en) 2015-01-22 2017-08-01 Gentex Corporation Low cost optical film stack
JP2018513810A (en) 2015-04-20 2018-05-31 ジェンテックス コーポレイション Rear view assembly with decoration
EP3288720A4 (en) * 2015-05-01 2018-04-25 Titan Medical Inc. Instrument collision detection and feedback
EP3297870B1 (en) 2015-05-18 2020-02-05 Gentex Corporation Full display rearview device
DE102015007395A1 (en) 2015-06-08 2016-12-08 Kuka Roboter Gmbh Method and system for operating and / or monitoring a machine, in particular a robot
WO2016209877A1 (en) 2015-06-22 2016-12-29 Gentex Corporation System and method for processing streamed video images to correct for flicker of amplitude-modulated lights
USD798207S1 (en) 2015-10-30 2017-09-26 Gentex Corporation Rearview mirror assembly
EP3368375B1 (en) 2015-10-30 2020-03-04 Gentex Corporation Rearview device
CN108349435B (en) 2015-10-30 2021-06-15 金泰克斯公司 Switching board
USD797627S1 (en) 2015-10-30 2017-09-19 Gentex Corporation Rearview mirror device
USD800618S1 (en) 2015-11-02 2017-10-24 Gentex Corporation Toggle paddle for a rear view device
AT518498B1 (en) 2016-03-29 2018-09-15 B & R Ind Automation Gmbh Position monitoring of a kinematics
USD845851S1 (en) 2016-03-31 2019-04-16 Gentex Corporation Rearview device
US10078333B1 (en) * 2016-04-17 2018-09-18 X Development Llc Efficient mapping of robot environment
USD817238S1 (en) 2016-04-29 2018-05-08 Gentex Corporation Rearview device
US10025138B2 (en) 2016-06-06 2018-07-17 Gentex Corporation Illuminating display with light gathering structure
WO2017214581A1 (en) 2016-06-10 2017-12-14 Duke University Motion planning for autonomous vehicles and reconfigurable motion planning processors
USD809984S1 (en) 2016-12-07 2018-02-13 Gentex Corporation Rearview assembly
USD854473S1 (en) 2016-12-16 2019-07-23 Gentex Corporation Rearview assembly
EP3562710A4 (en) 2016-12-30 2019-11-13 Gentex Corporation Full display mirror with on-demand spotter view
CN106695800B (en) * 2017-03-02 2019-06-11 广州视源电子科技股份有限公司 Manipulator motion path generating method and system
CN110312641A (en) 2017-03-17 2019-10-08 金泰克斯公司 Dual display reversing camera system
EP3385494A1 (en) * 2017-04-05 2018-10-10 Sandvik Mining and Construction Oy Apparatus and method for controlling boom of mine vehicle
US10766140B2 (en) * 2017-04-13 2020-09-08 Battelle Memorial Institute Teach mode collision avoidance system and method for industrial robotic manipulators
JP6879464B2 (en) * 2017-08-02 2021-06-02 オムロン株式会社 Interference determination method, interference determination system and computer program
JP6848761B2 (en) * 2017-08-08 2021-03-24 トヨタ自動車株式会社 Distance evaluation method between objects and interference evaluation method between relatively moving objects
JP6895082B2 (en) * 2017-11-09 2021-06-30 オムロン株式会社 Interference determination method, interference determination system and computer program
JP6680752B2 (en) * 2017-11-28 2020-04-15 ファナック株式会社 Control device that limits the speed of the robot
WO2019139815A1 (en) 2018-01-12 2019-07-18 Duke University Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects
TWI822729B (en) 2018-02-06 2023-11-21 美商即時機器人股份有限公司 Method and apparatus for motion planning of a robot storing a discretized environment on one or more processors and improved operation of same
PL3769174T3 (en) 2018-03-21 2022-10-24 Realtime Robotics, Inc. Motion planning of a robot for various environments and tasks and improved operation of same
US11000950B2 (en) 2018-06-01 2021-05-11 X Development Llc Robotic motion planning
CN108858162B (en) * 2018-06-28 2020-10-30 广州视源电子科技股份有限公司 Position determination method and device for four-axis mechanical arm
US11285607B2 (en) * 2018-07-13 2022-03-29 Massachusetts Institute Of Technology Systems and methods for distributed training and management of AI-powered robots using teleoperation via virtual spaces
US20210178591A1 (en) * 2018-08-23 2021-06-17 Realtime Robotics, Inc. Collision detection useful in motion planning for robotics
CN109465835A (en) * 2018-09-25 2019-03-15 华中科技大学 The safety predicting method in advance of both arms service robot operation under a kind of dynamic environment
US11154986B2 (en) 2019-01-24 2021-10-26 Intrinsic Innovation Llc Local replanning of robot movements
WO2020157862A1 (en) * 2019-01-30 2020-08-06 日本電気株式会社 Obstacle avoidance control device, obstacle avoidance control system, obstacle avoidance control method, and recording medium
CN110682286B (en) * 2019-05-28 2020-07-28 广东省智能制造研究所 Real-time obstacle avoidance method for cooperative robot
CN114206698A (en) 2019-06-03 2022-03-18 实时机器人有限公司 Apparatus, method and article of manufacture for facilitating motion planning in an environment with dynamic obstacles
US11673265B2 (en) 2019-08-23 2023-06-13 Realtime Robotics, Inc. Motion planning for robots to optimize velocity while maintaining limits on acceleration and jerk
CN110696000B (en) * 2019-11-21 2020-12-01 河北工业大学 Obstacle avoidance method for mechanical arm heuristic sensing
US11526823B1 (en) 2019-12-27 2022-12-13 Intrinsic Innovation Llc Scheduling resource-constrained actions
TW202146189A (en) 2020-01-22 2021-12-16 美商即時機器人股份有限公司 Configuration of robots in multi-robot operational environment
JP7375587B2 (en) * 2020-02-05 2023-11-08 株式会社デンソー Trajectory generation device, multi-link system, and trajectory generation method
DE102020104364B3 (en) * 2020-02-19 2021-05-27 Franka Emika Gmbh Control of a robot manipulator when it comes into contact with a person
EP4114623A4 (en) * 2020-03-06 2024-03-20 Edda Technology Inc Method and system for obstacle avoidance in robot path planning using depth sensors
JP2023518071A (en) * 2020-03-18 2023-04-27 リアルタイム ロボティクス, インコーポレーテッド Digital Representation of Robot Operation Environment Useful for Robot Motion Planning
DE102020203636A1 (en) 2020-03-20 2021-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Determination of safety areas around an automated machine
US11724387B2 (en) 2020-04-03 2023-08-15 Fanuc Corporation Fast robot motion optimization with distance field
US11518024B2 (en) 2021-02-10 2022-12-06 Intrinsic Innovation Llc Extensible underconstrained robotic motion planning
US20220398818A1 (en) * 2021-06-11 2022-12-15 The Boeing Company Computer-automated separation rules compliance analysis
WO2023013126A1 (en) * 2021-08-02 2023-02-09 ソニーグループ株式会社 Information processing device, trained model, and information processing method
US11878424B2 (en) 2021-12-06 2024-01-23 Fanuc Corporation Point set interference check

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE456048B (en) * 1982-02-24 1988-08-29 Philips Norden Ab SET AND DEVICE FOR DETERMINING THE RISK OF COLLISION FOR TWO INBOARD'S LOVELY BODIES
US4922430A (en) * 1987-10-30 1990-05-01 U.S. Philips Corporation Method and apparatus for controlling the movement of a guided object
GB2214037A (en) * 1987-12-18 1989-08-23 Ibm Solid modelling system
US5047916A (en) * 1988-03-25 1991-09-10 Kabushiki Kaisha Toshiba Method and apparatus of free space enumeration for collision avoidance
US5038302A (en) * 1988-07-26 1991-08-06 The Research Foundation Of State University Of New York Method of converting continuous three-dimensional geometrical representations into discrete three-dimensional voxel-based representations within a three-dimensional voxel-based system
US4985856A (en) * 1988-11-10 1991-01-15 The Research Foundation Of State University Of New York Method and apparatus for storing, accessing, and processing voxel-based data
US5056031A (en) * 1988-11-12 1991-10-08 Kabushiki Kaisha Toyota Chuo Kenyusho Apparatus for detecting the collision of moving objects
US5150452A (en) * 1989-07-28 1992-09-22 Megamation Incorporated Method and apparatus for anti-collision and collision protection for multiple robot system
US5255354A (en) * 1990-06-08 1993-10-19 Xerox Corporation Comparison of image shapes based on near neighbor data
US5150026A (en) * 1990-11-19 1992-09-22 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Obstacle avoidance for redundant robots using configuration control

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108663990A (en) * 2018-04-16 2018-10-16 华中科技大学 A kind of Multi-axis Machining interference detection and processing method based on two-stage voxelization model
CN108663990B (en) * 2018-04-16 2019-11-22 华中科技大学 A kind of Multi-axis Machining interference detection and processing method based on two-stage voxelization model

Also Published As

Publication number Publication date
US5347459A (en) 1994-09-13
CA2120534A1 (en) 1994-09-18

Similar Documents

Publication Publication Date Title
CA2120534C (en) Real time collision detection
Shaffer et al. A real-time robot arm collision avoidance system
Balasubramaniam et al. Collision-free finishing toolpaths from visibility data
US5056031A (en) Apparatus for detecting the collision of moving objects
Bobrow A direct minimization approach for obtaining the distance between convex polyhedra
Peidro et al. A method based on the vanishing of self-motion manifolds to determine the collision-free workspace of redundant robots
Greenspan et al. Obstacle count independent real-time collision avoidance
GB2227106A (en) Detecting collision
Feddema et al. Rapid world modeling: fitting range data to geometric primitives
Zeghloul et al. SMAR: A robot modeling and simulation system
Gat Towards principled experimental study of autonomous mobile robots
Tarokh Real time forward kinematics solutions for general Stewart platforms
Ruffaldi et al. Voxel-based haptic rendering using implicit sphere trees
US11878424B2 (en) Point set interference check
Kondo et al. Collision avoidance using a free space enumeration method based on grid expansion
US7092862B2 (en) Apparatus and method for determining whether objects will collide
Jetton et al. Systematic Generation of 5-Axis Manufacturing Machines
Xavier Implicit convex-hull distance of finite-screw-swept volumes
Sithamparanathan et al. Pose Estimation of a Robot Arm from a Single Camera
US20240123618A1 (en) Point set interference check method and system
Ma et al. A scheme integrating neural networks for real-time robotic collision detection
Lau et al. Large a collision detection framework for deformable objects
Leu et al. Robot motion simulation and planning based on solid modeling
Porges Analysis and applications of reachability and capability maps for robotic manipulators
Shi et al. Real-time grasp planning with environment constraints

Legal Events

Date Code Title Description
EEER Examination request
MKEX Expiry

Effective date: 20140317