WO2008031664A1 - A method and a device for avoiding collisions between an industrial robot and an object - Google Patents

A method and a device for avoiding collisions between an industrial robot and an object Download PDF

Info

Publication number
WO2008031664A1
WO2008031664A1 PCT/EP2007/057617 EP2007057617W WO2008031664A1 WO 2008031664 A1 WO2008031664 A1 WO 2008031664A1 EP 2007057617 W EP2007057617 W EP 2007057617W WO 2008031664 A1 WO2008031664 A1 WO 2008031664A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
time
zones
collision
left until
Prior art date
Application number
PCT/EP2007/057617
Other languages
English (en)
French (fr)
Inventor
Morten Strandberg
Original Assignee
Abb Research Ltd.
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 Abb Research Ltd. filed Critical Abb Research Ltd.
Priority to CN2007800332359A priority Critical patent/CN101512453B/zh
Publication of WO2008031664A1 publication Critical patent/WO2008031664A1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • 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/39084Parts handling, during assembly
    • 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/39088Inhibit movement in one axis if collision danger
    • 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/39091Avoid collision with moving obstacles
    • 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/39097Estimate own stop, brake time, then verify if in safe distance

Definitions

  • the present invention relates to a method and a device for avoiding collisions between components of a multi-axial industrial robot and at least one other object.
  • An object can be a physical part or an assembly of parts constituting a solid. Different types of objects may co-exist in the robot work cell.
  • the object can either be moving or stationary. Moving objects are, for example, mechanical units such as robots, external axes of the robot, and positioners. Examples of stationary objects are rotation table, fixtures, and maintenance equipment. Collisions in a robot work cell may occur either between moving objects or between a moving object and a stationary object.
  • US6 212 444 proposes to set a common area in which an operating area of a robot and an operating area of an apparatus, such as another multi-axial robot performing an operation cooperatively with the robot, overlap each other.
  • a first entrance-forbidding signal is output to the apparatus forbidding the apparatus to enter the common area when a predeter- mined reference point on the robot is within the common area
  • a second entrance forbidding signal is output to the robot forbidding the reference point of the robot to enter the common area when the movable part of the apparatus is within the common area.
  • the other moving object is forbidden to enter the common area if a predetermined reference point, usually located at the tip of the mechanical arm of the robot or at a joint, is within the common area.
  • a reference point on the robot is forbidden to enter the common area if the other moving object is within the common area.
  • protective zones enclosing the moving objects or parts of the objects.
  • the protective zones surround the mechanical arms of the robot and/or its tool. Protective zones are, for example, described in the follow- ing patent documents: US2005/0090930, JP2003-334777, and JP08-141978.
  • US2005/0090930 describes a method where bounding boxes of various geometrical shapes are attached around parts of objects possibly to cover their whole bodies. Interferences between the boxes are checked by an algorithm, which judges whether the boxes overlap.
  • protective envelops are used to model bodies of moving objects, whose positions are recorded together with their closest inter- distance at said positions, as well as size extensions of the envelops of the moving objects as functions of their speed. An in- terpolation of the recorded distances together with at least one predicted distance is accomplished and the minimum of the obtained interpolation curve is compared with the sum of the thicknesses of the envelops of the objects of concern.
  • JP08- 141978 is described a method where a double protective en- velop is used around robot tools.
  • US6678582 describes a method for collision avoidance between a manipulator and at least one other object.
  • the method comprises: calculating a stopping time for the robot on the basis of actual and past joint positions of a multi-axial robot and velocities and accelerations of each robot joint, forecasting a configuration of a trajectory of the components of the robot at the stopping time, checking the predicted configuration through distance/interference algorithms for interference of the robot com- ponents with components of the other object, and stopping the robot and/or the other object in case a collision is imminent.
  • the stopping time is the time it will take to stop the robot from the present state of the robot. Predicted configurations are determined at the estimated stopping time. It is assumed that the ro- bot continues to move with its present acceleration, from its present velocity and position.
  • a shortcoming with the disclosed method is that large errors may arise in the predicted configurations, as they are only based on past and present joint positions, velocities and accelerations. For example, if the robot drastically changes its moving direction, there will be a large er- ror in the predicted configuration of the robot. Assuming that predicted configurations of several multi-axial robots at their respective stopping time are checked between each other, collisions between the robots could still occur since their predicted configurations are only based on past and present parameters. This brings about that large margins have to be used in order to avoid collisions between the robots.
  • the object of the present invention is to provide an alternative to existing methods and devices for avoiding collisions, which provides a possibility to improve the prediction of future collisions and thereby reducing the margins necessary for avoiding collisions.
  • this object is achieved by a method as defined in claim 1 .
  • Such a method comprises repeatedly: estimating the time left until a collision occurs between the robot and the object, determining a stopping time for the robot, comparing the estimated time left until collision and the stopping time for the robot, and stopping the robot or the object in case the estimated time left until collision is close to the stopping time for the robot.
  • the time left until a collision occurs between the robot and the object is estimated and compared with the stopping time of the robot, instead of, as in the prior art, comparing predicted configurations of the robot and the other object at the stopping time of the robot.
  • the other object is either a stationary object or a moving object, such as another multi-axial robot.
  • the distance between the robot and the ob- ject is increasing there is no imminent risk of a collision and the time left until collision will become infinite.
  • An advantage of this approach is that a longer look-ahead time is achieved, which enables an earlier detection of a risk of collision and thus an improved estimation of when the robot should be stopped.
  • a longer look-ahead time enhances the chance to detect imminent collisions and provides more time to decide what to do to prevent the collision and to stop the robot before the collision occurs.
  • Another advantage achieved with the invention is that the margins necessary for avoiding collisions can be reduced.
  • the method com- prises calculating the shortest distances between the components of the robot and the object at a plurality of future points in time and, on the basis thereof, estimating the time left until a collision occurs between the robot and the object.
  • the method further comprises receiving information, such as information on future joint angles and information on a planned path for the robot. Said shortest distances between the components of the robot and the object are determined based on the planned robot path.
  • a control system of an industrial robot includes a path planner, which plans the path of the robot.
  • the path planner is adapted to receive movement instructions from an application program and, on the basis thereof, determine how the robot should move in order to execute the movement instruction.
  • the path planner plans how the instructed movement should be performed by carrying out an interpolation of the movement.
  • the interpolation includes dividing the instructed movement into a plurality of small increments, and computing the joint angles for all axes of the robot for each increment.
  • the joint angles are then converted into motor references.
  • the path planner trans- mits the computed motor references to drive modules of the robot.
  • the path of the robot is planned a specified time interval ahead of the current position of the robot.
  • information on the future path i.e. the actual planned path
  • This information is already available in the path planner unit of the robot control system. Collisions are detected based on the programmed path.
  • the actual planned path is used in order to predict whether a collision is imminent, instead of an estimated path calculated based on past movements, as in the prior art. This embodiment improves the accuracy of the estimation of whether a collision is imminent or not.
  • the future points in time are consecutively selected during a defined look-ahead time interval.
  • the look-ahead time interval depends on how far ahead the path is planned, i.e. the look-ahead time of the path planner, which depends on the control system of the robot.
  • the method comprises performing an extrapolation of the stored shortest distances, until the distance between the robot and the object be- comes zero, and on the basis thereof determining the time left until a collision between the robot and the object.
  • the shortest distances calculated based on the information from the path planner, form a shortest distance curve.
  • the shortest distances curve is extrapolated using the calculated shortest distances at different future times.
  • the extrapolated part of the curve is used to calculate the time left until collision.
  • the look-ahead time then becomes the sum of the look-ahead time of the path planner and the extrapolated part of the curve. This embodiment further increases the look-ahead time and thus further enhances the chance to detect imminent collisions and provides more time to stop the robot before a collision occurs.
  • the method comprises: defining one or more protective zones attached to and enclosing the components of the robot, defining one or more protective zones attached to and enclosing the object, calculating the shortest distance between the zone(s) of the robot and the zone(s) of the object at a plurality of future points in time, and based thereon estimating the time left until a collision occurs between the zones.
  • a protective zone is defined as a vol- ume of an arbitrary or predefined geometry enclosing the whole or a part of the object/robot, which is to be protected from collisions.
  • protective zones may surround the mechanical arms of the robot, the tool, or the workpiece carried by the robot.
  • the protective zones are attached to the moving ob- ject, which means that they follow the movement of the object. This embodiment detects imminent collisions between predefined zones of the robot and the other object.
  • the protective zones can be one, two or three-dimensional and have an arbitrary shape.
  • the method comprises: defining at least two protective zones enclosing the components of the robot, calculating the shortest distance between the zones of the robot at a plurality of future points in time, and based thereon estimating the time left until a collision occurs between the zones of the robot.
  • This embodiment enables detection of imminent collisions between predefined zones enclosing components of the robot. For example, this embodiment makes it possible to detect imminent collisions between a tool, or a work object carried by the robot and other parts such as arms of the robot. This embodiment is particularly advantageous if the robot carries a large work object, such as a car body side, and there is a risk that the work object comes into collision with the robot itself.
  • said other object is a multi-axial industrial robot and the method comprises: defining at least two protective zones enclosing the components of the first multi-axial robot, defining at least two protective zones enclosing the components of the second multi-axial robot, forming pairs of zones consisting of one zone of the first robot and one zone of the second robot, calculating, for each pair of zones, the shortest distance between the zones at a plurality of future points in time, and storing the calculated shortest dis- tances in a buffer for each pair of zones, and based thereon estimating the time left until a collision occurs between the zones.
  • This embodiment enables detection of imminent collisions between predefined zones enclosing different parts of two multi- axial industrial robots.
  • the method further comprises calculating a shortest distance between the components of the robot and the object, determining whether the calculated shortest distance is smaller than a threshold value and in that case estimating the time left until collision occurs, otherwise no estimation of the time left until collision is done.
  • a collision is only forthcoming if the distance between the robot and the object is decreasing, and as long as the distances between them are large enough there is no risk of an imminent collision.
  • the time left until collision is only estimated if the shortest distance between the components of the robot and the object is shorter than a threshold value. Hence, needless computation is avoided and processor load is decreased.
  • the robot or the object is stopped in case the estimated time left until collision is shorter than the stopping time multiplied by a safety factor set by the user.
  • the robot and/or the ob- ject shall be ordered to stop in case the estimated time left until collision is close to the stopping time for the robot. If the robot is ordered to stop when the time left until collision is equal to the stopping time, there is a risk, due to calculation errors, that a collision will occur before the robot is stopped. Hence, to ensure that there is enough time to stop the robot, the time left until col- lision should be larger than the stopping time.
  • the robot is ordered to stop in case the estimated time left until collision is shorter than the stopping time multiplied by a safety factor.
  • the safety factor provides a safety margin for stopping the robot.
  • This embodiment enables the user to set the safety factor and thus to determine the safety margin for stopping the robot.
  • it can be useful to give the safety factor a value smaller than one for instance, when two robot trajectories presenting a low risk of collision have to be programmed in the vicinity of each other.
  • the safety factor is set at a value below one, the collision avoidance detection for that pair of zones is turned off.
  • the collision avoidance system can be temporarily turned off for a given pair of zones and then turned on again later with the help of robot command instructions.
  • the method further comprises calculating a shortest distance between the components of the robot and the object, determining whether the cal- culated shortest distance is smaller than a defined minimum value and in case the shortest distance is smaller than the minimum value reducing the speed of the robot by a given percentage.
  • a reduction of the speed of the robot results in a reduction of the stopping time of the robot, and thus the robot is permitted to come closer to the object until the collision avoidance system stops the robot.
  • This embodiment also reduces the risk for false alarms from the collision avoidance system and thereby avoids unnecessary stops of the robot.
  • the object is achieved by a computer program product directly loadable into the internal memory of a computer or a processor, comprising software code portions for performing the steps of the method according to the appended set of method claims, when the pro- gram is run on a computer.
  • the computer program is provided either on a computer-readable medium or through a network.
  • the object is achieved by a computer readable medium having a program re- corded thereon, when the program is to make a computer perform the steps of the method according to the appended set of method claims, and the program is run on the computer.
  • this object is achieved by a device as defined in claim 14.
  • Such a device comprises: a computation unit adapted to estimate the time left until a collision occurs between the robot and the object, to compute a stopping time for the robot, and to compare the estimated time left until collision and the stopping time for the robot, and to generate an order to stop the robot or the object in case the estimated time left until collision is close to the stopping time for the robot.
  • Fig. 1 shows an example of a robot work cell including two multi-axial robots and a device for avoiding collisions according to an embodiment of the invention.
  • Fig. 2 shows a planned robot path.
  • Fig. 3 shows a shortest-distance curve for a pair of zones and illustrates how the time left until collision is calculated according to an embodiment of the invention.
  • Fig. 4 shows flow diagram of a method for avoiding collisions according to an embodiment of the invention.
  • a work cell including two multi-axial robots 1 ,2 and a stationary object 3, as shown in figure 1 .
  • the collision avoidance device and method according to the invention can be used for any work cell including two or more objects, such as any combination of multi-axial robots, stationary or movable objects.
  • a work cell may include one or more multi-axial robots.
  • a work cell may include one or more stationary or moving objects.
  • the robots 1 ,2 are connected to a common control unit 5.
  • the control unit 5 is, for example, a conventional robot control system including necessary hardware, such as one or more proces- sor units, memory means, and input and output means, and software for carrying out normal robot control tasks.
  • the control unit comprises program storage 7 for storing applications programs comprising program instructions written in a robot language, a program executor 8 adapted to execute the stored application programs, and a path planner unit 9 adapted to receive instructions from the program executor 8 and on the basis thereof determine how the robot or robots should move in order to execute movement instructions of the application program.
  • control unit 5 includes a path planner entity 9 which can plan the path in synchronized or independent mo- tion for both robots 1 , 2 based respectively on separate application programs including linked movement instructions between both robots or separate application programs excluding such instructions for each robot.
  • the control unit 5 also comprises a stop unit 10 adapted to stop the robot or the robots upon order.
  • a collision avoidance unit 1 1 which monitors collisions between the robots 1 , 2 and the object 3 in the work cell, is located in the control unit 5.
  • the collision avoidance unit 1 1 comprises a buffer unit 12 including a plurality of buffers for storing computed shorter distances between objects in the work cell, a computation unit 13 adapted to estimate the time left until a collision occurs between the objects and to compute stopping times for the robots, and to compare the estimated time left until collision and the stopping time for the robots.
  • the collision avoidance unit 1 1 is adapted to send a stop order to the stop unit 10 in case the estimated time left until collision is close to the stopping time of the robot.
  • the computation unit 13 monitors the robot 1 ,2 in order to detect whether a collision between the robot and the other objects in the work cell is imminent, and if a collision is imminent the computation unit generates an order to stop one of the robots, or both robots, which order is forwarded to the stop unit 10.
  • the stop unit 10 receives the stop order from the computation unit 13, the robot or both the robots are braked until their movements are stopped.
  • the robots are kept on their path during the braking.
  • the collision avoidance unit 1 1 can be made as a separate hardware unit adapted to receive instructions from the path planner units of the robots 1 , 2. This is particularly advan- tageous in a robot system where the robots are provided with individual control units with separate path planner units.
  • the collision avoidance unit 1 1 receives information on the planned path from the separate path planner units and communicates the stop order(s) to the robot control unit(s) concerned in order to avoid a collision.
  • the stop signal from the computer unit 13 is commu- nicated to the safety system.
  • the collision avoidance unit 1 1 further comprises a memory 16 for storing data rendered by defining protective zones attached to and enclosing the objects in the work cell.
  • One or more pro- tective zones can be defined for each object.
  • one protective zone 20 is defined for the stationary object 3 in figure 1
  • two protective zones 21 , 22 are defined for the robot 1
  • four protective zones 24 - 27 are defined for the robot 2.
  • a protective zone may enclose one or more components of the robot, for example as for robot 2 in figure 1
  • one protective zone may enclose each arm of the robot.
  • a tool or a work object carried by the robot may be enclosed by its own protected zone. Zones are defined as volumes of arbitrary geometries.
  • the volumes can range from simple geometric primitives, such as cylinders, spheres and boxes, to more general representations such as complex polyhedra and triangulated surface patches.
  • Stationary objects and shared workspace areas may simply be enclosed in geometrical volumes.
  • An object may be enclosed by a model of its whole body, a model of its surface, by virtual walls or by points only.
  • simple CAD models of objects can be loaded into the robot control unit and be used as protective zones around objects.
  • the computation unit 13 is adapted to calculate the shortest dis- tances between the protective zones of the objects of the work cell at a plurality of future points in time and on the basis thereof estimating the time left until a collision occurs between the protective zones in the work cell.
  • the shortest distance is, for example, calculated by means of the well known Gilbert Johnsson Keerthi (GJK) algorithm.
  • GJK Gilbert Johnsson Keerthi
  • the shortest distances di-d 9 not all distances are shown in the figure
  • the other protective zones in the work cell are calculated, possibly also the shortest distances between protective zones enclosing the same robot.
  • robot 2 carries a large and extensive work object, surrounded by the protective zone 24, which may come into a collision with the other components of the robot, surrounded by the zones 25-27.
  • the shortest distances d 5 -d 7 between zone 24, enclosing the work object, and the zones 25-27, enclosing the other components of the robot are calculated.
  • the zones 21 , 22, 24 - 27 are movable zones, and the zone 20 is a stationary one. All possible pairs of zones in the work cell are determined. For example, if the work cell includes four protective zones, the number of possible pair of zones is six. In the example shown in figure 1 , the work cell includes seven protective zones and accordingly there are 21 possible pairs of zones.
  • Each pair of zones is provided with its own buffer for storing the consecutive values of the shortest distances between the pair of zones. For each zone there exists a description file that contains information about the type, shape, dimensions, orientation, possible attachment of the zone to the object including the refer- ence coordinate system for the attachment of the zone to the object and a geometrical model of the zone.
  • Figure 2 shows an example of a programmed robot path 30 to be followed by a robot.
  • the arrow in the figure illustrates where the robot is positioned on the path at the present time.
  • the path planner unity 9 calculates the future path of the robot by performing an interpolation of a movement instructed by the robot program. The instructed movement is divided into a plurality of small increments and the path planner computes joint angles for all axes of the robot for each increment.
  • the figure illustrates past points P -4 - P -1 and future points P 1 - P 10 on the path.
  • the path planner has planned the future points P 1 - P 10 in advance based on one or more program instructions in the robot program.
  • the path planner has computed joint angles for ten future points.
  • the time between each calculated future point is ⁇ t.
  • the total time planned in advance by the path planner is called the look-ahead time t !a of the path planner.
  • Figure 3 shows a diagram illustrating the shortest distance d sd between a pair of zones versus time t.
  • the shortest distance between two zones is calculated in real time based on future joint angles from the path planner, a kinematic model of the robot, and geometric models of the protective zones.
  • the configuration of the robot during the look-ahead time of the path planner can be determined based on the kinematic model of the robot and the joint angles from the path planner.
  • the future configuration of the robot geometric models of the protective zones has been determined, it is possible to calculate positions on surfaces of the protective zones and on the basis thereof determining the distances between the protective zones.
  • An iterative algorithm finds the shortest distance between the surfaces of the zones.
  • the shortest distance between the zones is determined for each point P 1 -P 1 O from the path planner and is stored in the buffer unit 13.
  • the positions of each pair of protective zones is predicted by calculating the positions of each moving object from a flow of joint angles supplied by at least one control unit for a given time of look ahead.
  • the path planner calculates joint angles for the robot at ten future points.
  • the buffer function has a time window and only contains a predetermined number of values.
  • the buffer contains ten distance values for ten consecutive points in the time.
  • the buffer may contain only fu- ture points in time P 1 - P 10 .
  • Figure 3 shows the shortest distance values d sd stored in the buffer plotted as a function of time t. In this example, the shortest distance between the protective zones is decreasing.
  • the stored distance values in the buffer are used to predict the time left until collision.
  • the curve 32 is extrapolated until it intersects with the time axis. By then the distance between the zones is zero.
  • the extrapolation is obtained, for example, by a linear or a 2 nd degree of interpolation curve.
  • the point in time when the distance between the zones is zero is the estimated time left until collision t c .
  • the time left until collision t c is equal to the sum of the look-ahead time of the path planner t !a and the time t e of extrapolated part of the curve 32.
  • the shortest distances between each zone pair and the time left until collision are only calculated if the distance be- tween the protective zones is smaller than a predefined value d h , also denoted a horizon distance. As long as the distance between the protective zones is larger than the horizon distance, no computation of the time left until collision is made. A conservative approximation of the shortest distances is calculated with trees of bounding boxes around each protective zone. Thus, a horizon distance d h is defined, below which the shortest dis- tance between each pair of protective zones as well as the time left until collision will be estimated at regular time intervals.
  • Data that must be communicated in real time to the collision avoidance unit are joint values. These are used as input to the kinematic models of the robots in order to calculate the positions of the components of the robot. The stopping times of the robots have to be calculated as well. These are obtained in real time based on a dynamic model for each robot and information contained in the path planner entity 9. Other data created and used in real time are distance computations stored for each zone pair in a buffer over a give time interval, an extrapolation function between the distances for each pair of zone in the time interval and a root of each of the extrapolation functions.
  • Figure 4 is a flow chart illustration of a method and a computer program product according to an embodiment of the present in- vention. It shall be understood that each block of the flow chart can be implemented by computer program instructions.
  • the algorithm described by the steps 44-64 is looped through for each pair of zones, until all pairs of zones have been taken care of, block 43.
  • the shortest distance d sd between each pair of zones, or its approximation, is calculated, block 44, excluding stationary zone pairs.
  • Each calculated shortest distance d sd is stored in a buffer belonging to the pair of zones, block 46.
  • Each buffer already comprises a plurality of shortest distances calculated during previous iterations. The newly calculated distance overwrites the oldest calculated distance in the buffer.
  • the calculated shortest distance d sd for the present pair of zones is compared with the horizon distance d h .
  • the time left until collision tc for the pair of zones is determined based on the shortest distance values stored in the buffer and by means of an extrapolation operation, block 56.
  • Information on axes positions are received from the path planner entity 9, block 58, and based thereon a stopping time t s for the robot is calcu- lated, block 60.
  • the time left until collision is compared with the stopping time, block 62, and if the time left until collision is smaller than the stopping time multiplied by a parameter denoted a safety factor ⁇ , the robot or the object or both are ordered to stop, block 64.
  • the safety factor ⁇ must be larger than one in order to provide a safety margin.
  • the parameter ⁇ is defined such that at least one of the robot control systems shall order the robot to stop their movements if the predicted shortest time until collision is equal to or less than ⁇ times the stopping time of one of the robots involved in the impending collision.
  • the robot operator is allowed to set or adjust the value of the safety factor ⁇ for each pair of zones.
  • the operator is also allowed to set the safety factor ⁇ to a value less than one.
  • the safety factor ⁇ is set to a value below one, the collision avoidance detection for that pair of zones is turned off. This is, for instance, advantageous if it is known to the operator that the path of the robot is close to, or coincides with, the object, and thus the robot should be allowed to come very close to, or even be in contact with, the ob- ject, without running the risk of being stopped by the collision avoidance system.
  • the calculated shortest distance is compared with a defined minimum value d min , and in case the calculated shortest distance d sd is smaller than the minimum value, the speed of the robot is reduced by a given percentage, for example in the order of 20- 30% reduction of the speed. Reducing the speed of the robot means that the stop time t s of the robot is reduced and thereby increasing the allowed time left until collision t c according to equation 2.
  • the speed of the moving objects to which the protective zones are attached and monitored shall be reduced by given percentage.
  • the method comprises interpolating the 3 - 10 latest shortest distances recorded within the time interval by a linear or quadratic function. From the extrapolation of the obtained curve, estimate the time left until collision of pairs of objects. Send a command for moving objects to stop on path if the predicted time left until collision is less than ⁇ times their respective stopping time. Order an emergency stop for the robots, possibly off the programmed path.
  • the predictions of the time left until collision are obtained with very high accuracy below a predefined threshold for the look-ahead time interval, whereas above the threshold they are obtained with lower accuracy.
  • the predictions of the time left until collision are obtained with very high accuracy below a predefined threshold d h for the shortest distance between the pairs or zones, whereas above the threshold they are obtained with lower accuracy.
  • the present invention is not limited to the embodiments disclosed but may be varied and modified within the scope of the following claims.
  • the time left until collision as the time until the shortest distance curve intersects the time axis, i.e. the time when the distance between the robot and the object is zero

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Forklifts And Lifting Vehicles (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
PCT/EP2007/057617 2006-09-14 2007-07-24 A method and a device for avoiding collisions between an industrial robot and an object WO2008031664A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007800332359A CN101512453B (zh) 2006-09-14 2007-07-24 避免工业机器人与物体之间碰撞的方法和设备

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP06120615A EP1901150B1 (de) 2006-09-14 2006-09-14 Verfahren und Vorrichtung zur Vermeidung von Kollisionen zwischen einem Industrieroboter und einem Objekt
EP06120615.7 2006-09-14

Publications (1)

Publication Number Publication Date
WO2008031664A1 true WO2008031664A1 (en) 2008-03-20

Family

ID=37728303

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2007/057617 WO2008031664A1 (en) 2006-09-14 2007-07-24 A method and a device for avoiding collisions between an industrial robot and an object

Country Status (6)

Country Link
EP (1) EP1901150B1 (de)
CN (1) CN101512453B (de)
AT (1) ATE412929T1 (de)
DE (1) DE602006003435D1 (de)
ES (1) ES2316012T3 (de)
WO (1) WO2008031664A1 (de)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015120008A1 (en) * 2014-02-05 2015-08-13 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
KR20190022435A (ko) * 2017-03-27 2019-03-06 핑안 테크놀로지 (션젼) 컴퍼니 리미티드 로봇의 장애물 회피 제어 시스템, 방법, 로봇 및 저장매체
US10421187B2 (en) 2017-01-26 2019-09-24 Fanuc Corporation Robot program modification device, robot control device, robot simulation device, and robot program modification method
CN113165173A (zh) * 2018-10-01 2021-07-23 Abb瑞士股份有限公司 机器人***的安全操作
JP2022510082A (ja) * 2018-10-18 2022-01-26 テクニシェ ウニヴェルジテーツ ミュンヘン モジュール式ロボット用の衝突防止安全措置
WO2022107683A1 (ja) * 2020-11-18 2022-05-27 ファナック株式会社 自己干渉判定装置
US11517377B2 (en) 2015-02-25 2022-12-06 Mako Surgical Corp. Systems and methods for predictively avoiding tracking interruptions involving a manipulator
WO2023095546A1 (ja) * 2021-11-25 2023-06-01 株式会社日立製作所 ロボットシステム及びロボット制御装置

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008016604B4 (de) * 2008-04-01 2014-07-17 Kuka Laboratories Gmbh Verfahren und Vorrichtung zur Eigenkollisionsüberwachung eines Manipulators
DE102009006256B4 (de) 2009-01-27 2019-01-03 Deutsches Forschungszentrum für künstliche Intelligenz GmbH Verfahren zur Vermeidung von Kollisionen gesteuert beweglicher Teile einer Anlage
DE102009040145A1 (de) * 2009-09-04 2011-03-10 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Stillsetzen eines Manipulators
CN102323822B (zh) * 2011-05-09 2013-07-03 无锡引域智能机器人有限公司 一种避免工业机器人碰撞工人的方法
EP2780764B1 (de) * 2011-11-16 2022-08-03 X Development LLC System und verfahren zur 3d-projektionsabbildung mit robotergesteuerten objekten
US9832352B2 (en) 2011-11-16 2017-11-28 Autofuss System and method for 3D projection mapping with robotically controlled objects
EP2829371A1 (de) * 2012-03-22 2015-01-28 Kabushiki Kaisha Yaskawa Denki Arbeitsroboter und robotersystem
DE102012010856A1 (de) * 2012-05-31 2013-12-05 Kuka Roboter Gmbh Verfahren und Mittel zur Überwachung einer Roboteranordnung
US9694497B2 (en) 2012-07-10 2017-07-04 Siemens Aktiengesellschaft Robot arrangement and method for controlling a robot
CN104812535A (zh) * 2012-10-11 2015-07-29 Abb技术有限公司 自动产生用于将机器人从停止位置返回预设重启位置的无碰撞返回程序的方法和设备
JP5835254B2 (ja) * 2013-03-15 2015-12-24 株式会社安川電機 ロボットシステム、及び、ロボットシステムの制御方法
CN104070522B (zh) * 2013-03-27 2016-10-05 中绿农农业发展有限公司 用于工业机器人的能够自动识别及避免碰撞的方法及装置
CN103386684B (zh) * 2013-08-21 2016-02-24 福州大学 一种防止机器人产生意外碰撞的装置及设计方法
CN104416581A (zh) * 2013-08-27 2015-03-18 富泰华工业(深圳)有限公司 具有报警功能的机械手
US9555545B2 (en) * 2014-05-21 2017-01-31 Bot & Dolly, Llc Systems and methods for time-based parallel robotic operation
CN106660215B (zh) * 2014-07-02 2021-09-17 西门子公司 预警***和机器人***
US9403275B2 (en) 2014-10-17 2016-08-02 GM Global Technology Operations LLC Dynamic obstacle avoidance in a robotic system
CN104626208A (zh) * 2015-01-07 2015-05-20 北京卫星环境工程研究所 航天器机械臂辅助装配安全工作空间建立及干涉预警方法
DE202015000333U1 (de) 2015-01-15 2016-04-21 Kuka Roboter Gmbh Fahrgeschäft mit Roboteranordnung
JP6200456B2 (ja) * 2015-06-29 2017-09-20 ファナック株式会社 工作機械とロボット間の干渉チェックシステム
EP3115857A1 (de) * 2015-07-09 2017-01-11 Siemens Aktiengesellschaft Trajektorienbestimmungsverfahren für nebenzeitbewegungen
CN105269556B (zh) * 2015-09-20 2018-03-16 深圳市得意自动化科技有限公司 机器人的运动前瞻方法
DE102016005026B3 (de) * 2016-04-24 2017-05-18 Sami Haddadin System und Verfahren zum Steuern eines Roboters
US11429105B2 (en) 2016-06-10 2022-08-30 Duke University Motion planning for autonomous vehicles and reconfigurable motion planning processors
CN106166749B (zh) * 2016-06-29 2018-09-18 北京控制工程研究所 一种空间移动多臂机器人的移动轨迹规划方法
EP3287243A1 (de) * 2016-08-24 2018-02-28 Siemens Aktiengesellschaft Verfahren zur kollisionsdetektion und autonomes system
EP3287861A1 (de) 2016-08-24 2018-02-28 Siemens Aktiengesellschaft Verfahren zum testen eines autonomen systems
US10545480B2 (en) 2016-11-07 2020-01-28 Lincoln Global, Inc. System and method for manufacturing and control thereof
CN107029971B (zh) * 2017-04-27 2019-11-26 安徽江淮汽车集团股份有限公司 一种汽车内喷漆工艺机器人防碰撞方法
CN107336230B (zh) * 2017-05-09 2020-05-05 浙江工业大学 一种基于投影和距离判断的工业机器人碰撞预测方法
DE102017123295A1 (de) 2017-10-06 2019-04-11 Pilz Gmbh & Co. Kg Sicherheitssystem zur Absicherung eines kooperativen Betriebs von Menschen, Robotern und Maschinen
CN107717996B (zh) * 2017-11-14 2018-08-24 北京镁伽机器人科技有限公司 具有测距停止功能的多关节机器人和测距停止方法
EP3498433A1 (de) 2017-12-14 2019-06-19 Universal Robots A/S Dynamische sicherheitstrajektorien in einem robotersystem
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 (zh) 2018-02-06 2023-11-21 美商即時機器人股份有限公司 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備
WO2019183141A1 (en) 2018-03-21 2019-09-26 Realtime Robotics, Inc. Motion planning of a robot for various environments and tasks and improved operation of same
CN110570687B (zh) * 2018-06-06 2021-04-27 杭州海康机器人技术有限公司 Agv的控制方法、装置及存储介质
CN109093622B (zh) * 2018-08-20 2021-10-01 珠海格力智能装备有限公司 机械手的监控方法和装置
US11254004B2 (en) * 2018-08-30 2022-02-22 Veo Robotics, Inc. System identification of industrial robot dynamics for safety-critical applications
JP6863945B2 (ja) * 2018-10-24 2021-04-21 ファナック株式会社 ロボットの制御方法
DE102018133472B3 (de) * 2018-12-21 2020-03-12 Franka Emika Gmbh Bewegungsüberwachung eines Robotermanipulators
WO2020137176A1 (ja) * 2018-12-28 2020-07-02 京セラドキュメントソリューションズ株式会社 制御装置
JP7147571B2 (ja) * 2019-01-15 2022-10-05 オムロン株式会社 経路生成装置、経路生成方法、及び経路生成プログラム
JP7143776B2 (ja) * 2019-01-31 2022-09-29 オムロン株式会社 制御システム、及び、制御システムの制御方法
EP3709106B1 (de) * 2019-03-11 2021-01-06 Sick Ag Absichern einer maschine
JP7511259B2 (ja) 2019-04-17 2024-07-05 リアルタイム ロボティクス, インコーポレーテッド モーション計画グラフ生成ユーザインターフェース、システム、方法、および物品
JP7479064B2 (ja) 2019-06-03 2024-05-08 リアルタイム ロボティクス, インコーポレーテッド 動的障害物を有する環境における動作計画を容易にする装置、方法及び物品
JP7368025B2 (ja) 2019-08-23 2023-10-24 リアルタイム ロボティクス, インコーポレーテッド 加速度とジャークの制限を維持しながら速度を最適化するロボットの動作計画
US11577392B2 (en) 2019-08-30 2023-02-14 Intrinsic Innovation Llc Splitting transformers for robotics planning
US11747787B2 (en) 2019-08-30 2023-09-05 Intrinsic Innovation Llc Combining transformers for robotics planning
EP3792716B1 (de) 2019-09-13 2022-11-09 Siemens Aktiengesellschaft Numerische steuerung mit pufferung von lagesollwerten
CN111176274B (zh) * 2019-12-26 2023-03-28 西门子(深圳)磁共振有限公司 多轴运动***的防碰撞方法、***和存储介质
TW202146189A (zh) 2020-01-22 2021-12-16 美商即時機器人股份有限公司 於多機器人操作環境中之機器人之建置
DE102020104359B4 (de) 2020-02-19 2022-04-14 Franka Emika Gmbh Arbeitsraumbegrenzung für einen Robotermanipulator
CN112247993B (zh) * 2020-04-15 2022-02-18 牧今科技 具有碰撞避免机制的机器人***及其操作方法
CN111504328B (zh) * 2020-05-22 2022-07-08 梅卡曼德(北京)机器人科技有限公司 机器人运动规划方法、路径规划方法、抓取方法及其装置
CN113291845A (zh) * 2020-09-27 2021-08-24 中冶长天国际工程有限责任公司 一种堆取料机的防碰撞方法及***
US20240009845A1 (en) * 2020-12-02 2024-01-11 Realtime Robotics, Inc. Systems, methods, and user interfaces employing clearance determinations in robot motion planning and control
WO2022153374A1 (ja) * 2021-01-12 2022-07-21 川崎重工業株式会社 経路生成装置、経路生成方法及び経路生成プログラム
CN118302275A (zh) * 2021-09-29 2024-07-05 盖奥托自动化股份公司 用于机器人化***的在直接教学期间的安全控制的方法和相关的机器人化***
CN113799143B (zh) * 2021-11-18 2022-04-19 广东隆崎机器人有限公司 一种多机器人在工作区域内的安全协作方法及装置
CN114327919B (zh) * 2022-03-14 2022-05-24 北京航天驭星科技有限公司 空间目标碰撞预警方法及***
CN116638515A (zh) * 2023-05-31 2023-08-25 重庆日联科技有限公司 一种用于铅房内机器人x光检测***的防撞保护方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0743579A2 (de) * 1995-05-15 1996-11-20 Siemens Aktiengesellschaft Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters
US6166504A (en) * 1998-12-22 2000-12-26 Denso Corporation Control apparatus for robot having an arm moving within allowable working area
EP1366867A2 (de) * 2002-05-30 2003-12-03 KUKA Roboter GmbH Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1304178C (zh) * 2004-05-24 2007-03-14 熊勇刚 一种多机械臂机器人关节间的碰撞检测方法
CN1796046B (zh) * 2004-12-30 2010-05-26 鸿富锦精密工业(深圳)有限公司 数控机床碰撞自动侦测***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0743579A2 (de) * 1995-05-15 1996-11-20 Siemens Aktiengesellschaft Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters
US6166504A (en) * 1998-12-22 2000-12-26 Denso Corporation Control apparatus for robot having an arm moving within allowable working area
EP1366867A2 (de) * 2002-05-30 2003-12-03 KUKA Roboter GmbH Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BERGEN VAN DEN G: "A FAST AND ROBUST GJK IMPLEMENTATION FOR COLLISION DETECTION OF CONVEX OBJECTS", JOURNAL OF GRAPHICS TOOLS, ASSOCIATION FOR COMPUTING MACHINERY, NEW YORK, US, vol. 4, no. 2, 1999, pages 7 - 25, XP001024748, ISSN: 1086-7651 *
FREUND E ET AL: "EIN ALGORITHMS ZUR KOLLISIONSERKUNNUNG UND -VERMEIDUNG BEI ROBOTERNMIT ZYLINDERFORMIGEM ARBEITSRAUM", ROBOTERSYSTEME, SPRINGER VERLAG. BERLIN, DE, vol. 6, no. 1, 1 March 1990 (1990-03-01), pages 1 - 10, XP000104118 *
KARA A ET AL: "Intelligent control of a robotic aid system for the physically disabled", PROCEEDINGS OF THE INTERNATIONAL SYMPOSIUM ON INTELLIGENT CONTROL. ARLINGTON, AUG. 13 -15, 1991, NEW YORK, IEEE, US, 13 August 1991 (1991-08-13), pages 359 - 364, XP010048659, ISBN: 0-7803-0106-4 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015120008A1 (en) * 2014-02-05 2015-08-13 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
US9993222B2 (en) 2014-02-05 2018-06-12 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
US10849591B2 (en) 2014-02-05 2020-12-01 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
US11517377B2 (en) 2015-02-25 2022-12-06 Mako Surgical Corp. Systems and methods for predictively avoiding tracking interruptions involving a manipulator
US10421187B2 (en) 2017-01-26 2019-09-24 Fanuc Corporation Robot program modification device, robot control device, robot simulation device, and robot program modification method
KR20190022435A (ko) * 2017-03-27 2019-03-06 핑안 테크놀로지 (션젼) 컴퍼니 리미티드 로봇의 장애물 회피 제어 시스템, 방법, 로봇 및 저장매체
KR102170928B1 (ko) * 2017-03-27 2020-10-29 핑안 테크놀로지 (션젼) 컴퍼니 리미티드 로봇의 장애물 회피 제어 시스템, 방법, 로봇 및 저장매체
US11059174B2 (en) 2017-03-27 2021-07-13 Ping An Technology (Shenzhen) Co., Ltd. System and method of controlling obstacle avoidance of robot, robot and storage medium
CN113165173A (zh) * 2018-10-01 2021-07-23 Abb瑞士股份有限公司 机器人***的安全操作
JP2022510082A (ja) * 2018-10-18 2022-01-26 テクニシェ ウニヴェルジテーツ ミュンヘン モジュール式ロボット用の衝突防止安全措置
WO2022107683A1 (ja) * 2020-11-18 2022-05-27 ファナック株式会社 自己干渉判定装置
WO2023095546A1 (ja) * 2021-11-25 2023-06-01 株式会社日立製作所 ロボットシステム及びロボット制御装置

Also Published As

Publication number Publication date
ATE412929T1 (de) 2008-11-15
DE602006003435D1 (de) 2008-12-11
CN101512453A (zh) 2009-08-19
CN101512453B (zh) 2011-11-02
EP1901150A1 (de) 2008-03-19
ES2316012T3 (es) 2009-04-01
EP1901150B1 (de) 2008-10-29

Similar Documents

Publication Publication Date Title
EP1901150B1 (de) Verfahren und Vorrichtung zur Vermeidung von Kollisionen zwischen einem Industrieroboter und einem Objekt
US11396099B2 (en) Safe operation of machinery using potential occupancy envelopes
US6678582B2 (en) Method and control device for avoiding collisions between cooperating robots
EP1901151B1 (de) Verfahren und Vorrichtung zur Vermeidung von Kollisionen zwischen einem Industrieroboter und einem Objekt
Ragaglia et al. Trajectory generation algorithm for safe human-robot collaboration based on multiple depth sensor measurements
US20200398428A1 (en) Motion planning for multiple robots in shared workspace
US8315738B2 (en) Multi-arm robot system interference check via three dimensional automatic zones
EP2230054A1 (de) Roboterbewegungsregulierverfahren, robotersystem und roboterbewegungsreguliervorrichtung
US11602852B2 (en) Context-sensitive safety monitoring of collaborative work environments
US20210379763A1 (en) Motion planning and task execution using potential occupancy envelopes
Scalera et al. Optimal scaling of dynamic safety zones for collaborative robotics
US20240123618A1 (en) Point set interference check method and system
EP4196323A1 (de) Sicherheitssysteme und -verfahren für roboteroperationen
US20170282370A1 (en) Position monitoring of a kinematic linkage
US20230410430A1 (en) Spatial modeling based on point collection and voxel grid
US20230173682A1 (en) Context-sensitive safety monitoring of collaborative work environments
Stengel et al. An approach for safe and efficient human-robot collaboration
US20240165806A1 (en) Motion planning and task execution using potential occupancy envelopes
US20230286156A1 (en) Motion planning and control for robots in shared workspace employing staging poses
Park Structured beam projection for semiautomatic teleoperation
US20240190002A1 (en) Object interference check method
US20230226693A1 (en) Projecting safety-related monitoring for a multi-axis kinematic system with multiple movable segments
Knöchelmann et al. Trajectory Optimization Methods for Robotic Cells Considering Energy Efficiency and Collisions
WO2023196240A1 (en) Motion planning and control for robots in shared workspace employing look ahead planning

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780033235.9

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07802400

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07802400

Country of ref document: EP

Kind code of ref document: A1