ALIGNING TWO ROBOT ARMS RELATIVE TO ONE ANOTHER

Abstract

A simulation method of specifying a relative position between a first base of a first robot manipulator and a second base of a second robot manipulator, including: determining a first working area of the first robot manipulator, wherein the first working area determines a finite plurality of tuples from possible positions of the first end effector and possible orientations of the first end effector in respective positions of the first end effector; determining, for each of a specified plurality of possible relative positions between the first base and the second base, a number of the tuples from the first working area as evaluation variables, for which a second end effector is capable of being positioned in a predefined orientation and/or at a predefined distance relative to the first end effector; and determining and outputting the relative position between the first base and the second base with a highest evaluation variable.

Claims

1. A simulation method of specifying a relative position between a first base of a first robot manipulator and a second base of a second robot manipulator, the simulation method comprising: determining a first working area of the first robot manipulator, wherein the first working area determines a finite plurality of tuples from possible positions of a first end effector and possible orientations of the first end effector at respective positions of the first end effector; determining, for each of a specified plurality of possible relative positions between the first base and the second base, a number of the tuples from the first working area as evaluation variables for which a second end effector of the second robot manipulator is capable of being positioned in a predefined orientation and/or at a predefined distance relative to the first end effector; and determining and outputting the relative position between the first base and the second base with a highest evaluation variable.

2. The simulation method according to claim 1, wherein the method comprises: using the simulation method to specify a relative position and a relative orientation between the first base of the first robot manipulator and the second base of the second robot manipulator; determining an evaluation variable for each of a specified plurality of possible relative positions and possible relative orientations between the first base and the second base; and determining and outputting the relative position and relative orientation between the first base and the second base with a highest evaluation variable.

3. The simulation method according to claim 1, wherein, in determining the evaluation variable, the method comprises making a check to determine whether a collision occurs between the first robot manipulator and the second robot manipulator.

4. The simulation method according to claim 2, wherein the method comprises predetermining the possible relative orientations and/or the possible relative positions between the first base and the second base from the specified plurality in a grid.

5. The simulation method according to claim 2, wherein the method comprises specifying the possible relative orientations and/or the possible relative positions between the first base and the second base from a given plurality by constrained nonlinear optimization.

6. The simulation method according to claim 5, wherein the method comprises: determining a second working area of the second robot manipulator, wherein the second working area determines a finite plurality of tuples from possible positions of the second end effector and possible orientations of the second end effector at respective positions of the second end effector; and determining a constraint of the constrained nonlinear optimization based on an intersection of the first working area of the first robot manipulator and the second working area of the second robot manipulator.

7. The simulation method according to claim 1, wherein the method comprises defining the predefined orientation of the second end effector relative to the first end effector by a half rotation about a reference point of the first end effector, such that the first end effector and the second end effector point symmetrically to each other.

8. A simulation computing unit to specify a relative position between a first base of a first robot manipulator and a second base of a second robot manipulator, wherein the simulation computing unit is configured to: determine a first working area of the first robot manipulator, wherein the first working area specifies a finite plurality of tuples of possible positions of a first end effector and possible orientations of the first end effector at respective positions of the first end effector; determine for each of a specified plurality of possible relative positions between the first base and the second base, a number of the tuples from the first working area as evaluation variables for which a second end effector of the second robot manipulator is capable of being positioned in a predefined orientation and/or at a predefined distance, in each case relative to the first end effector; and determine and output the relative position between the first base and the second base with a highest evaluation variable.

9. The simulation computing unit according to claim 8, wherein the simulation computing unit is configured to: be used to specify a relative position and a relative orientation between the first base of the first robot manipulator and the second base of the second robot manipulator determine an evaluation variable for each of a specified plurality of possible relative positions and possible relative orientations between the first base and the second base; and determine and output the relative position and relative orientation between the first base and the second base having a highest evaluation variable.

10. The simulation computing unit according to claim 8, wherein the simulation computing unit is a control unit of the first robot manipulator.

11. The simulation computing unit according to claim 8, wherein, in determining the evaluation variable, the simulation computing unit is configured to make a check to determine whether a collision occurs between the first robot manipulator and the second robot manipulator.

12. The simulation computing unit according to claim 9, wherein the simulation computing unit is configured to predetermine the possible relative orientations and/or the possible relative positions between the first base and the second base from the specified plurality in a grid.

13. The simulation computing unit according to claim 9, wherein the simulation computing unit is configured to specify the possible relative orientations and/or the possible relative positions between the first base and the second base from a given plurality by constrained nonlinear optimization.

14. The simulation computing unit according to claim 13, wherein the simulation computing unit is configured to: determine a second working area of the second robot manipulator, wherein the second working area determines a finite plurality of tuples from possible positions of the second end effector and possible orientations of the second end effector at respective positions of the second end effector; and determine a constraint of the constrained nonlinear optimization based on an intersection of the first working area of the first robot manipulator and the second working area of the second robot manipulator.

15. The simulation computing unit according to claim 8, wherein the simulation computing unit is configured to define the predefined orientation of the second end effector relative to the first end effector by a half rotation about a reference point of the first end effector, such that the first end effector and the second end effector point symmetrically to each other.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

[0029] In the drawings:

[0030] FIG. 1 shows a method of specifying a relative position and relative orientation between a first base of a first robot manipulator and a second base of a second robot manipulator according to an embodiment of the invention;

[0031] FIG. 2 shows a system to specify a relative position and relative orientation between a first base of a first robot manipulator and a second base of a second robot manipulator according to a further embodiment of the invention;

[0032] FIG. 3 shows a predetermined relative orientation and distance of the second end effector relative to the first end effector in accordance with the embodiment of the invention illustrated in FIG. 1 or the embodiment illustrated in FIG. 2;

[0033] FIG. 4 shows a relative position and a relative orientation of the first base to the second base for the relative orientation and distance of the second end effector relative to the first end effector illustrated in FIG. 3; and

[0034] FIG. 5 shows a first robot manipulator and a second robot manipulator as an alternative to the example embodiment of the invention shown in FIG. 2.

[0035] The representations in the figures are schematic and not to scale.

DETAILED DESCRIPTION

[0036] FIG. 1 shows a simulation method of specifying a relative position and a relative orientation between a first base 11 of a first robot manipulator 10 and a second base 21 of a second robot manipulator 20, wherein the simulation method includes: determining (H1) a first working area of the first robot manipulator 10 , wherein the first working area determines a finite plurality of tuples from possible positions of a first end effector 12 and possible orientations of the first end effector 12 at respective positions of the first end effector 12; determining (H2), for each of a specified plurality of possible relative positions and possible relative orientations between the first base 11 and the second base 21, a number of the tuples from the first working area as evaluation variables, for which a second end effector (22) of the second robot manipulator (20) is capable of being positioned in a predefined orientation and/or at a predefined distance relative to the first end effector (12); and determining and outputting (H3) the relative position between the first base (11) and the second base 21 with a highest evaluation variable.

[0037] FIG. 2 shows a simulation computing unit 30 to specify a relative position and relative orientation between a first base 11 of a first robot manipulator 10 and a second base 21 of a second robot manipulator 20, wherein the simulation computing unit 30 is a control unit of the first robot manipulator 10. The simulation computing unit 30 is configured to: determine a first working area of the first robot manipulator 10, wherein the first working area specifies a finite plurality of tuples of possible positions of the first end effector 12 and possible orientations of the first end effector 12 at respective positions of the first end effector 12; determine for each of a specified plurality of possible relative positions and possible relative orientations between the first base 11 and the second base 21, a number of the tuples from the first working area as evaluation variables for which a second end effector 22 of the second robot manipulator 20 is capable of being positioned in a predefined orientation and/or at a predefined distance, in each case relative to the first end effector 12; and determine and output the relative position between the first base 11 and the second base 21 with a highest evaluation variable.

[0038] FIG. 3 shows the specified orientation of the second end effector 22 relative to the first end effector 12, which is defined by a half rotation about a reference point of the first end effector 12 such that the first end effector 12 and the second end effector 22 point symmetrically to each other.

[0039] FIG. 4 shows a respective possible pose of the first robot manipulator 10 and the second robot manipulator 20 for a particular one of the plurality of possible tuples of the first end effector 12 for which the second end effector 22 of the second robot manipulator 20 is positionable in the predetermined orientation and at the predetermined distance, respectively, relative to the first end effector 12, as shown in FIG. 3. Furthermore, FIG. 4 shows the relative orientation and the relative distance of the first base 11 to the second base 21.

[0040] FIG. 5 shows a structure including a first robot manipulator 10 and second robot manipulator 20 arranged on a common base, with both robot manipulators 10, 20 shown in plan view. The descriptions of FIGS. 1 to 4 are also applicable to such a structure, particularly when the first robot manipulator 10 and the second robot manipulator 20 are arranged variably and adjustably in their distance from each other or in their relative orientation on the base.

[0041] Although the invention has been further illustrated and explained in detail by preferred embodiments, the invention is not limited by the disclosed examples, and other variations may be derived therefrom by those skilled in the art without departing from the scope of protection of the invention. It is therefore clear that a wide variety of possible variations exist. It is also clear that example embodiments mentioned are really only examples, which are not to be understood in any way as limiting, for example, the scope of protection, the possible applications, or the configuration of the invention. Rather, the foregoing description and the figure description enable the person skilled in the art to implement the example embodiments in a specific manner, whereby a person skilled in the art, being aware of the disclosed idea of the invention, can make a variety of changes, for example with respect to the function or the arrangement of individual elements mentioned in an example embodiment, without leaving the scope of protection defined by the claims and their legal equivalents, such as further explanations in the description.

LIST OF REFERENCE NUMERALS

[0042] 10 first robot manipulator [0043] 11 first base [0044] 12 first end effector [0045] 20 second robot manipulator [0046] 21 second base [0047] 22 second end effector [0048] 30 simulation computing unit [0049] H1 Determine [0050] H2 Determine [0051] H3 Determine and output