# US 10,766,139 B2 · Method for avoiding collisions between two robots

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,766,139 B2
- Document ID: US10766139B2
- Status: Granted
- Kind: B2
- Application number: 15/549,889
- Filed: 2015-02-13
- Published: 2018-02-01
- Granted: 2020-09-08
- Earliest claimed: 2015-02-13
- Assignees: ABB Schweiz AG
- Applicants: ABB Schweiz AG
- Inventors: Anders Lager
- Web page: https://patentgrep.com/patent/US10766139B2

## CPC

- B25J 9/1676: {Avoiding collision or forbidden zones}
- G05B 2219/39135: For multiple manipulators operating at same time, avoid collision
- G05B 2219/40497: Collision monitor controls planner in real time to replan if collision
- G05B 2219/45063: Pick and place manipulator
- B25J: MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES ({manipulators specially adapted for use in surgery A61B34/70; manipulators used in cleaning hollow articles B08B9/04}; manipulators associated with rolling mills B21B39/20; manipulators associated with forging machines B21J13/10; {manipulators associated with picking-up and placing mechanisms B23P19/007}; means for holding wheels or parts thereof B60B30/00; {vehicles with ground-engaging propulsion means, e.g. walking members B62D57/02, B62D57/032; devices for picking-up and depositing articles or materials between conveyors B65G47/90, B65G47/91; manipulators with gripping or holding means for transferring packages B65H67/065}; cranes B66C; {manipulators used in the protection or supervision of pipe-line installations F17D5/00; walking equipment adapted for nuclear steam-generators F22B37/006}; manipulators specially adapted for, or associated with, nuclear reactors G21C; {apparatus used for handling wafers during manufacture or treatment of semiconductor H10P72/50})
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)

## Abstract

A method for avoiding collisions between two robots providing first movement information related to a first robot movement; determining for a plurality of second robot movements whether they involve a risk for collision between the first and second robots; and executing one of the second robot movements. Information about a movement of one robot enables a robot controller of another robot with an overlapping work area to select among available robot movements an appropriate one that does not involve a risk for collision between the two robots.

## Claims

### Claim 1

A method for avoiding collisions between two robots in a robot system comprising a first robot having a first work area and a second robot having a second work area, the first work area overlapping with the second work area to thereby define an overlapping work area, the method comprising the steps of:
providing first movement information related to a first robot movement which is being executed by the first robot;
retrieving the first movement information;
determining for a plurality of second robot movements by the second robot whether the second robot movements involve a risk for collision between the first and second robots using the first movement information related to the first robot executing the first robot movement; and
executing one of the second robot movements which has been determined to involve no risk for collision between the first and second robots
wherein the first and second robots are configured to carry out a pick and place task such that at each point of time a number of available robot movements is related to a number of respective items or empty places that are within or are about to be within the work area of the respective robot, and the plurality of second robot movements is selected among the available robot movements.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the method allows the first and second robots to simultaneously operate within the overlapping work area.

### Claim 3 (depends on 1)

The method according to claim 1, wherein the first movement information comprises at least one position of the first robot.

### Claim 4 (depends on 3)

The method according to claim 3, wherein the first movement information comprises a first start position and a first end position.

### Claim 5 (depends on 4)

The method according to claim 4, wherein the first movement information further comprises a path between the first start position and the first end position.

### Claim 6 (depends on 1)

The method according to claim 1, wherein the method further comprises the step of saving the first movement information in a digital memory.

### Claim 7 (depends on 6)

The method according to claim 6, wherein the method further comprises the step of removing the first movement information from the digital memory.

### Claim 8 (depends on 2)

The method according to claim 2, wherein the first movement information comprises at least one position of the first robot.

### Claim 9 (depends on 2)

The method according to claim 2, wherein the first and second robots are configured to carry out a pick and place task such that at each point of time the number of available robot movements is related to the number of respective items or empty places that are within or are about to be within the work area of the respective robot, and the plurality of second robot movements is selected among the available robot movements.

### Claim 10 (depends on 2)

The method according to claim 2, wherein the method further comprises the step of saving the first movement information in a digital memory.

### Claim 11 (depends on 1)

The method according to claim 1, further comprising:
retrieving the first movement information whenever one of the second robot movements has been determined to involve a risk for collision and before another of the second robot movements is evaluated for risk of collision, wherein said retrieval is repeated until one of the second robot movements has been determined to involve no risk for collision.

### Claim 12 (depends on 1)

The method according to claim 1, wherein said determining whether the second robot movements involve a risk for collision comprises calculating a minimum distance between the first and second robot movements and comparing the minimum distance with a predetermined threshold value.

### Claim 13 (depends on 4)

The method according to claim 4, wherein:
each second robot movement comprises a second start position and a second end position; and
said determining whether the second robot movements involve a risk for collision comprises determining a smallest distance between the first start and end positions and the second start and end positions of the respective second robot movement in a specified direction within the overlapping work area.

### Claim 14

A method for avoiding collisions between two robots in a robot system comprising a first robot having a first work area and a second robot having a second work area, the first work area overlapping with the second work area to thereby define an overlapping work area, the method comprising the steps of:
providing first movement information related to a first robot movement which is to be executed by the first robot;
retrieving the first movement information;
determining for a plurality of second robot movements by the second robot whether the second robot movements involve a risk for collision between the first and second robots; and
executing one of the second robot movements,
wherein the first and second robots are configured to carry out a pick and place task such that at each point of time a number of available robot movements is related to a number of respective items or empty places that are within or are about to be within the work area of the respective robot, and the plurality of second robot movements is selected among the available robot movements,
wherein the plurality of second robot movements comprises all available robot movements.

### Claim 15

A robot system configured to carry out a pick and place task, the robot system comprising:
a first robot having a first work area and a second robot having a second work area, the first work area overlapping with the second work area to thereby define an overlapping work area, and
at least one robot controller for controlling movements of the first and second robots, wherein the robot controller is configured to execute a method comprising the steps of:
providing first movement information related to a first robot movement which is being executed by the first robot;
retrieving the first movement information;
determining for a plurality of second robot movements by the second robot whether the second robot movements involve a risk for collision between the first and second robots using the first movement information related to the first robot executing the first robot movement; and
executing one of the second robot movements which has been determined to involve no risk for collision between the first and second robots
wherein the first and second robots are configured to carry out a pick and place task such that at each point of time a number of available robot movements is related to a number of respective items or empty places that are within or are about to be within the work area of the respective robot, and the plurality of second robot movements is selected among the available robot movements.

### Claim 16 (depends on 15)

The robot system according to claim 15, comprising a first controller for controlling movement of the first robot, a second controller for controlling movement of the second robot, and a communications interface to which the first and second controllers have access;
wherein the first robot controller provides said first movement information to said communications interface, and the second robot controller retrieves the first movement information from said communications interface.
