Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

REAL TIME OBSTACLE AVOIDANCE FOR COMPUTER CONTROLLED ROBOTS

IP.com Disclosure Number: IPCOM000006063D
Original Publication Date: 1991-Apr-01
Included in the Prior Art Database: 2001-Nov-29
Document File: 2 page(s) / 116K

Publishing Venue

Motorola

Related People

Scott Potter: AUTHOR [+2]

Abstract

The use of robotic stations in product assembly is becoming increasingly popular. In normal operation a robot will move safely from point to point in its workspace as it executes operations such as picking parts from a feeder and placing them on a circuit board. The robot will sequentially move through a series of carefully taught points to achieve this and therefore avoids collisions with stationary tooling. This sequence can be interrupted for several reasons including a mistaught robot point as well as starting a normal sequence with the robot positioned in a dangerous location.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 50% of the total text.

Page 1 of 2

0 M

MOTOROLA INC. Technical Developments Volume 12 April 1991

REAL TIME OBSTACLE AVOIDANCE FOR COMPUTER CONTROLLED ROBOTS.

by Scott Potter and Barry Groman

   The use of robotic stations in product assembly is becoming increasingly popular. In normal operation a robot will move safely from point to point in its workspace as it executes operations such as picking parts from a feeder and placing them on a circuit board. The robot will sequentially move through a series of carefully taught points to achieve this and therefore avoids collisions with stationary tooling. This sequence can be interrupted for several reasons including a mistaught robot point as well as starting a normal sequence with the robot positioned in a dangerous location.

  In each of these cases the robot will move directly from its current location to the desired location. If either the current location or the desired location have been accidentally altered then the robot's trajectory may be interrupted by a fixed obstacle. When this happens the robot and its end effector as well as the fixed tooling can be damaged.'

  The obstacles avoidance algorithms which are presented here allow for a robot collision to be detected and prevented before the robot move is even started. These general algorithms are easily customized to work with specialized robot grippers and workstation tooling. Once models of the gripper and obstacles are taught and stored in the computer, the presence of the obstacle avoidance procedures is invisible to the user. The computations involved in the obstacle avoidance algorithms proposed here are fast enough that robot performance is not affected.

  In order for obstacle avoidance to be accomplished, the location, size, and shape of all obstacles must be defined in the computer which manages the robot. All obstacles are represented in the robot's Cartesian coordinate system. The obstacle spatial representation is accomplished by reducing each obstacle in the robots workspace into conjunctions of simple geometries such as three dimensional rectangles. These rectangles are again

0 M010r01a. 1°C. 19%

simplified by breaking each one down into its composite planes which make up the rectangle. For example a single rectangle actually contains six individual planes (a top and bottom and four sides). The following information is stored in the computer in order to represent a single plane segment which is defined by four points in space. A diagram illustrating the obstacle representation scheme is shown in figure 1.

  To simplify the procedure of defining the obstacles, a method for automatically obtaining the detailed spatial information was devised. This method only requires that an operator manually move the robot to each of two opposite corners of the obstacle and teach each of these points. The computer then reads the current location of the robot and with the information from the two points calculates enough information to define the six plane...