A method of avoiding collisions between a robot and at least one other
object, e.g. another robot is disclosed in which the user does not need
to make any provisions in a robot program for avoiding collisions, e.g.
defining common work-areas. Furthermore, the inventive method allows for
automatic configuration of the workcell from a collision avoidance
standpoint. It determines automatically which components have potential
collisions with which other components. Since the inventive method is
based on predicting the configurations of the moving components over a
period of time sufficient enough to allow the machines to stop safely and
checks for interference, a priori knowledge of trajectories is not
required. If a collision is predicted the machines are commanded to a
stop on or off their paths. In this way the inventive collision avoidance
method can also be used as a safeguard with other explicit methods.