(19)
(11) EP 2 268 459 B9

(12) CORRECTED EUROPEAN PATENT SPECIFICATION
Note: Bibliography reflects the latest situation

(15) Correction information:
Corrected version no 1 (W1 B1)
Corrections, see
Claims DE

(48) Corrigendum issued on:
21.03.2012 Bulletin 2012/12

(45) Mention of the grant of the patent:
09.11.2011 Bulletin 2011/45

(21) Application number: 08749900.0

(22) Date of filing: 30.04.2008
(51) International Patent Classification (IPC): 
B25J 9/16(2006.01)
G05B 19/401(2006.01)
(86) International application number:
PCT/EP2008/055304
(87) International publication number:
WO 2009/132703 (05.11.2009 Gazette 2009/45)

(54)

A METHOD AND A SYSTEM FOR DETERMINING THE RELATION BETWEEN A ROBOT COORDINATE SYSTEM AND A LOCAL COORDINATE SYSTEM LOCATED IN THE WORKING RANGE OF THE ROBOT

VERFAHREN UND SYSTEM ZUR BESTIMMUNG DER BEZIEHUNG ZWISCHEN EINEM ROBOTERKOORDINATENSYSTEM UND EINEM LOKALEN KOORDINATENSYSTEM, DAS IM ARBEITSBEREICH DES ROBOTERS POSITIONIERT IST

PROCÉDÉ ET SYSTÈME PERMETTANT DE DÉTERMINER LA RELATION ENTRE UN SYSTÈME DE COORDONNÉES DE ROBOT ET UN SYSTÈME DE COORDONNÉES LOCAL SITUÉ DANS LA PLAGE DE FONCTIONNEMENT DU ROBOT


(84) Designated Contracting States:
AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

(43) Date of publication of application:
05.01.2011 Bulletin 2011/01

(73) Proprietor: ABB Technology AB
721 83 Västerås (SE)

(72) Inventor:
  • FIXELL, Peter
    S-724 75 Västerås (SE)

(74) Representative: Reyier, Ann-Mari et al
Bjerkéns Patentbyra KB Box 128
721 05 Västerås
721 05 Västerås (SE)


(56) References cited: : 
WO-A-03/037575
DE-A1- 10 203 002
WO-A-2004/108364
US-A- 5 177 563
   
       
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description

    FIELD OF THE INVENTION



    [0001] The present invention relates to a method and a device for determining the relation between a local coordinate system located in the working range of an industrial robot and a robot coordinate system. The invention is, for example, suitable for determining the relation between a work piece coordinate system, or a fixture coordinate system, and a robot coordinate system.

    PRIOR ART



    [0002] A basic problem in robot installations and commissioning of robot cells is the identification of the relation of the robot to a work piece to be processed by the robot. The robot is supposed to perform work on the work piece and the work piece is located in the working range of the robot. The same problem arises in cases when the robot holds the work piece to be processed and a tool is located in the working range of the robot. In that case the relation between the tool and the robot must be identified.

    [0003] Document WO 2004/108364A discloses prior art solutions.

    [0004] The reason for the work piece identification is to define a local coordinate system in the work piece that can be used for programming the robot to perform work on the work piece. There are two major advantages with this approach: the programming will be done in the coordinates of the work piece, which will give better understanding by the programmer. An alternative would be to program the robot in the robot base coordinate system. However, this will be less easy to understand for the programmer. If the programming is done in the work piece coordinate system the programming will be easy to reuse if the relation between the robot and the work piece is changed for some reason, such as moving the installation. The reuse will simply just include a new identification of the relation between the robot coordinate system and the work piece coordinate system. Further, use of offline generated programs will be supported in an easy and accurate way.

    OBJECTS AND SUMMARY OF THE INVENTION



    [0005] The object of the present invention is to provide a method for determining the relation between a local coordinate system located in the working range of the robot and the robot coordinate system, which method is simple, quick and accurate.

    [0006] This object is achieved by a method as defined in claim 1.

    [0007] Such a method comprises: Attaching a first calibration object in a fixed relation to the robot, determining the position of the first calibration object in relation to the robot, locating at least three second calibration objects in the working range of the robot, wherein at least one of calibration objects is a male calibration object having a protruding part shaped as a sphere, and at least one of the calibration objects is a female calibration object comprising at least two nonparallel, inclining surfaces arranged to receive the sphere so that the sphere is in contact with the surfaces in at least one reference position, determining at least one reference position for each of the second calibration objects in the local coordinate system,
    1. A) moving the robot in a compliant way until the sphere is in mechanical contact with the surfaces of the female calibration object,
    2. B) reading the position of the robot in the robot coordinate system when the sphere is in mechanical contact with the surfaces, repeating the steps A-B for the other two calibration objects, and calculating the relation between the local coordinate system and the robot coordinate system based on the position of the first calibration object in relation to the robot, the reference positions of the second calibration objects in the local coordinate system, and the positions of the robot when the sphere is in mechanical contact with the surfaces of the second calibration objects.


    [0008] The invention supports an automatic, quick, easy, and accurate identification of positions to be used for calculating the local coordinate system. The method is suitable for being carried out automatically by the robot itself. The robot can be programmed to move the first calibration object to the second calibration object, and further until the sphere is in mechanical contact with the surfaces, and accordingly the sphere is positioned in the reference position.

    [0009] The robot is provided with a self searching capability, for example, using force control or soft servo, which moves the robot in a compliant way until the sphere is in mechanical contact with the surfaces of the female calibration object. When having an automatic identifying function, which is easy and quick to use, there is a possibility to repeatedly identify the relation between the work piece and the robot looking for long time changes as well as deviations due to temperature changes. This method according to the invention is useful for initial identification of the relation as well as keeping track on and compensate for long-term changes and temperature drift.

    [0010] According to the invention, at least one of the calibration objects is a male calibration object having a protruding part shaped as a sphere and at least one of the calibration objects is a female calibration object comprising at least two nonparallel, inclining surfaces arranged to receive the sphere so that the sphere is in contact with the surfaces in at least one reference position. When the male and female calibration objects are combined they will give an accurate and repeatable position of the sphere in relation to the surfaces in at least two degrees of freedom. The reference position of the calibration object is defined as the position of the sphere when it is in contact with the surfaces of the female calibration object. In case the female calibration object has only two surfaces, there exists a plurality of reference positions positioned along a straight line. In this case at least two reference positions should be measured in order to determine the line. In case the calibration object has three non- parallel, inclining surfaces there exists only one reference position and the position of the sphere can be determined in relation to the surfaces of the female calibration object in three degrees of freedom. In this case it is enough to measure the one and only reference position.

    [0011] As the surfaces are inclined, the number of possible positions in which the sphere is in contact with the surfaces is reduced. Advantageously, the inclination of the surfaces is in the interval of 20-80°, and preferably in the interval of 30-60°. If the inclination is too steep, the measuring becomes uncertain and if the inclination is too flat it is difficult to find the position in which the sphere is in contact with the surfaces.

    [0012] By determining the reference positions in the local coordinate system as well as in the robot coordinate system it is easy to determine the relation between the robot coordinate system and the local coordinate system.

    [0013] The first calibration object is, for example attached to the robot, or to a tool carried by the robot.

    [0014] According to an embodiment of the invention, at least one of the calibration objects comprises three nonparallel, inclining surfaces arranged to receive the sphere so that the sphere is in contact with all three surfaces at the reference position. When the sphere is combined with the three inclining surfaces, there is only one position in which the sphere is in contact with all three surfaces and a single, accurate position of the sphere in relation to the surfaces is defined. The sphere is allowed to rotate freely in all dimensions and the only thing that effects the accuracy of the position information is the accuracy of the sphere. This embodiment provides an accurate and repeatable position of the male calibration object in relation to the female calibration object.

    [0015] According to an embodiment of the invention, the sphere is attached to the robot, the other calibration objects are shaped as grooves with two inclining surfaces, and at least three grooves are located in the robot work area such that their longitudinal directions are non parallel, and the method comprises moving the robot in a compliant way until the sphere has been in mechanical contact with both surfaces on all three grooves and the positions of the robot has been stored for all three grooves, and calculating the relation between the local coordinate system and the robot coordinate system based on the positions of the robot when the sphere is in mechanical contact with the surfaces of the grooves.

    [0016] According to an embodiment of the invention, the robot is automatically moved by means of force control. The force control makes it possible for the robot to automatically locate the position in which the sphere is in contact with the surfaces and accordingly to automatically find the reference point. With force control is meant that the force or torque between the first calibration object and the robot is measured in at least two directions and the movement of the robot is made in dependence on the measured force or torque. The force or torque is measured in at least three degrees of freedom in case the calibration object is provided with three inclining surfaces. The sphere is in the reference position when there is a force or a torque in three directions. Force control is an active and sensitive control. According to an embodiment of the invention, the robot is automatically moved by means of a soft servo. A soft servo is robot control without a position loop. The soft servo makes it possible for the robot to automatically locate the position in which the sphere is in contact with the surfaces and accordingly to automatically find the reference point.

    [0017] Another object of the present invention is to provide a system for determining the relation between a local coordinate system located in the working range of the robot and the robot coordinate system.

    [0018] This object is also achieved by a system as defined in claim 7.

    [0019] Such a system comprises: a first calibration object adapted to be attached in a fixed relation to the robot, three second calibration objects to be positioned in the working range of the robot, wherein at least one of calibration objects is a male calibration object having a protruding part shaped as a sphere, and at least one of the calibration objects is a female calibration object comprising at least two nonparallel, inclining surfaces arranged to receive the sphere so that the sphere is in contact with the surfaces in at least one reference position, and means for automatically moving the robot in a compliant way until the sphere is in mechanical contact with the surfaces of the calibration object, and a computing unit configured to receive and store the position of the robot when the sphere is in mechanical contact with the surfaces, and to calculate the relation between the local coordinate system and the robot coordinate system based on a known relation between the first calibration object and the robot, the reference positions in the local coordinate system, and the position of the robot when the sphere is in mechanical contact with the surfaces.

    [0020] The calibration object is easy to use and easy to attach to the robot tool, to a fixture, or to a work object.

    [0021] For example, the calibration object is shaped as a truncated inner corner of a cube. This shape is easy to manufacturing as mechanical tolerances are non-critical. Independent of the manufacturing, there will only be one reference position.

    [0022] The method and the system according to the invention is, for example, suitable for determining the relation between a coordinate system of a fixture for holding a work piece to be processed by the robot and the robot coordinate system.

    BRIEF DESCRIPTION OF THE DRAWINGS



    [0023] The invention will now be explained more closely by the description of different embodiments of the invention and with reference to the appended figures.

    Fig. 1 shows a system for determining the relation between a local coordinate system and a robot coordinate system according to an embodiment of the invention.

    Fig. 2a shows an example of a female calibration object.

    Fig. 2b shows a male calibration object in the form of a sphere received by the female calibration object shown in figure 2a and the sphere in the reference position.

    Fig. 2c shows a cross section A-A through the sphere and the female calibration object shown in figure 2b.

    Fig. 3 illustrates the robot moving the sphere between the female calibration objects during calibration.

    Fig. 4 shows another example of the female calibration object.

    Fig. 5 shows a flow diagram illustrating an example of a method according to the invention.


    DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION



    [0024] Figure 1 shows a system for determining the relation between a local coordinate system xl,yl,zl, and a robot coordinate system xr,yr,zr according to an embodiment of the invention. In this example, the robot coordinate system is located in the base of the robot and is denoted the base coordinate system of the robot. In this example, the local coordinate system is a work piece coordinate system and is related to a work piece 2 to be processed by the robot and which is fixedly hold by a fixture 3.

    [0025] The robot 1 is provided with a robot controller 5 including at least one processor, memory and communication means. In this example, the robot controller 5 is utilized for carrying out most of the steps in the method according to the invention. The robot 1 comprises a tool flange 7 for attaching a tool 8. A first calibration object 10 in the form of a male calibration object including a sphere 10 is fixedly attached to the tool 8, and accordingly fixedly attached to the robot, during the calibration. The sphere 10 is attached to the robot tool 8 using a shaft or other structure. In an alternative embodiment, the first calibration object 10 can be attached to the tool flange 7.The tool centre point (TCP) of the sphere 10 must be known in the robot coordinate system. The TCP of the sphere can, for example, be identified by a one time measurement for fixed installations, or every time the calibration is to be carried out using built in methods in the robot controller for flexible installations.

    [0026] In this embodiment, a force sensor 12 for measuring forces in three orthogonal directions is provided between the tool flange 7 and the tool 8, and accordingly between the calibration object 10 and the robot 1. The robot is programmed to be moved by means of force control. This means that the movement of the robot depends on the measuring signal from the force sensor 12.

    [0027] The system further comprises three second calibration objects 14, 15, 16 positioned in the working range of the robot, in this case positioned on the fixture 3 holding the work piece 2. Each of the second calibration objects 14-16 is a female calibration object comprising three non-parallel inclining surfaces arranged to receive the sphere 10 so that the sphere is in contact with all three surfaces at the same time when the sphere is in a unique and defined position relative the second calibration object. In the following, the position at which the sphere is in contact with all three surfaces at the same time is denoted a reference position.

    [0028] The female calibration object 14 is shown in more detail in figure 2a-2c. The female calibration object comprises three non- parallel inclining surfaces 20, 21, 22. The inclinations of the surfaces are preferably in the interval of 30-60° in relation to the longitudinal axes of the tube. For example, the shape of the upper end of the second calibration object has a form of a truncated inner corner of a cube. One upper end of the female calibration object is formed as a tube having an opening for receiving the sphere and the other lower end is designed for positioning the calibration object on the fixture 3. The tube is tapering in a direction away from the opening. The upper end of the calibration object has a mainly triangular cross section. The tube has three inner surfaces 20,21,22 inclining towards each other along the longitudinal axis of the tube. Only at one position along the longitudinal axis of the tube, the cross-section is such that the distances between the surfaces correspond to the cross section of the sphere 10. Accordingly, the sphere fits exactly in the tube at one single position, in which the sphere is in contact with all three surfaces 20-22. The reference position is defined to be the centre point 25 of the sphere when the sphere is contact with all three surfaces. Figure 2c shows the sphere and the surfaces when the sphere is located in the reference position.

    [0029] The three second calibration objects 14, 15, 16 are preferably located in the local coordinate system so as to form corners of a triangle and preferably represent a single solution to the coordinate transformation. The robot controller 5 is configured to receive and store the positions of the robot when the sphere 10 is in mechanical contact with all three surfaces 20, 21, 22 of the second calibration objects 14, 15, 16 and comprises software for calculating the relation between the local coordinate system and the robot coordinate system based on the robot positions when the sphere is in contact with the surfaces of the calibration objects.

    [0030] For example, the second calibration objects 14, 15, 16 can be included in the fixture as a part of the installation. The position of the sphere needs to be identified when manufacturing the fixture; a one time measurement. The reference positions of the second calibration objects are measured in the local coordinate system and saved. The reference position is defined as the centre point of the sphere when the sphere is located in the second calibration object. The reference position for a second calibration objects are determined beforehand and in relation to the local coordinate system.

    [0031] The method must be automatic and accurate in finding the exact location of the sphere in the second calibration object. For a standard robot positioning this will be very difficult. In order to achieve an automatic location of the sphere, a soft and compliant control of the robot is needed. In order to achieve such a soft and compliant control of the robot it is possible to use force control including a force/torque sensor, as shown in figure 1. If force control is not included in the robot installation, it is possible to use a compliant server in order to move the robot into mechanical contact with the calibration object, but still be compliant to find the exact accurate position of the sphere. Once the sphere is in correct position in the calibration object, the position data can be read within the robot controller 5 and used together with the reference values for calculations of the relation between the robot coordinate system and the local coordinate system.

    [0032] Figure 3 illustrates the robot moving the sphere 10 between the female calibration objects 14-16 during calibration. When the sphere is in the reference position of the female calibration object, the position of the robot is read and stored. The reference positions Pos 1, Pos 2 and Pos 3 of the female calibration objects are determined in the local coordinate system based on initial measurements of the fixture. The coordinates for the sphere 10 in the robot coordinate system can easily be identified automatically or semi-automatically by using one of the second calibration objects on the fixture. The robot is moved, for example with soft servo, into different orientations in order to find the accurate position. The TCP is calculated with built-in mathematics in the robot software. When the TCP of the sphere is known, it is easy to determine reference positions Pos 1, 2 and 3 on the fixture in the robot coordinate system based on the measured robot positions. The positions of the reference point in the robot coordinate system can be used together with the pre-determined positions of the reference positions determined in the local coordinate system in order to identify the relation between the robot coordinate system and the local coordinate system.

    [0033] Figure 4 shows an alternative embodiment of the present invention. In this embodiment three second calibration objects 30, 31, 32 are provided close to the working object in the robot working range. Each calibration object comprises a groove having two non-parallel inclining surfaces 33,34. In this case the single location position information is decreased to a line position information and needs to be combined in different ways to generate useful data. One possible solution is to determine a line based on the two surfaces of each groove. At least two reference positions on each groove are measured and a line between the positions is calculated. The lines between the surfaces can be used for identification of significant parts of the work piece and can easily be used for identifying the correct coordinate system of the work piece. The line based on the two surfaces is determined by two position measurements with a sphere 10. The relation between the local coordinate system and the robot coordinate determined based on the determined lines.

    [0034] Figure 5 shows a flow chart illustration of a method according to an embodiment of the present invention. It will be understood that each block of the flow chart can be implemented by computer program instructions.

    [0035] In the following example, the first calibration object carried by the robot is a sphere and the three second calibration objects located in the working range of the robot is of the type shown in figure 2a-c including three non-parallel, inclining surfaces. At first, the location of the sphere in relation to the robot has to be determined. This means that the tool centre point (TCP) of the sphere is determined in relation to a tool coordinate system. The tool coordinate system is known in relation to the base coordinate system of the robot. When the tool centre point of the sphere has been determined, the TCP of the sphere is known in the base coordinate system of the robot, block 40. The tool centre point is determined by any known method, for example, the method previously described with reference to figure 3. The reference positions of all three calibration objects have to be determined in the local coordinate system before the calibration begins, block 42. The positions are, for example, identified in the local coordinate system using a high accuracy measuring device, such as a laser tracker, touch probe or a CMM. The measuring device will identify the centre of a sphere, with exactly the same diameter as the sphere 10 received by the female calibration object, in the local coordinate system. The location of the sphere relative to the robot and the reference positions is preferably determined beforehand, i.e. before the actual calibration begins. The relation between the sphere and the robot and the measured reference positions are stored in the robot controller.

    [0036] When the actual calibration begins, the robot is moved to a position close to one of the female calibration objects, block 44. Thereafter, the robot is moved so that the sphere is in contact with all calibration surfaces of the female calibration object, block 46. This can, for example, be done by first moving the robot is so that the sphere is into contact with one of the surfaces, and there after moving the robot along the surface without loosing contact with the first surface until the sphere comes into contact with the next surface. Thereafter the robot is moved along the two surfaces without loosing contact with the surfaces until the sphere comes into contact with the third surface. When the sphere is in contact with all three surfaces of the female calibration object, the robot movement is stopped and the current robot position is stored in the robot controller, block 50. The robot position is the positions of the axes of the robot. The method steps described in block 46, 48 and 50 is repeated for the other two female calibration objects. When the sphere is in contact with all three surfaces of the calibration object, the sphere is in the reference position, and the position of the robot is read and stored. When the robot position for all three reference positions have been read and stored, the robot controller calculates the relation between the robot coordinate system and the local coordinate system, block 56. At first, the reference positions are determined in the robot coordinate system based the measured robot positions and the position of the sphere in relation to the robot. Thereafter, the relation between the coordinate systems is calculated based on the reference positions determined in the robot coordinate system and the reference positions determined in the local coordinate system by means of ordinary coordinate transformations.

    [0037] In this example, the robot coordinate system is the base coordinate system of the robot and the local coordinate system is the work piece coordinate system. The relation between the robot coordinate system and the local coordinate system can be used for programming the robot for performing work on the work piece.

    [0038] The present invention is not limited to the embodiments disclosed but may be varied and modified within the scope of the following claims. For example, the second calibration object can be included in the work pieces. This will provide a possibility to identify each and every one of the work pieces and thereby reducing the need of high precision fixtures. In an alternative embodiment, it is possible to have more than three second calibration objects located in the working range of the robot. In an alternative embodiment, a female calibration object including at least two inclined surfaces is attached in a fixed relation to the robot, and a plurality of male calibration objects shaped as spheres is positioned in the working range of the robot. The calculation of the relation can be made in an external computer.


    Claims

    1. A method for determining the relation between a local coordinate system located in the working range of an industrial robot (1) and a robot coordinate system, wherein the method comprises:

    attaching a first calibration object (10) in a fixed relation to the robot,

    determining the position of the first calibration object in relation to the robot, characterised in

    locating at least three second calibration objects (14,15,16;30,31,32) in the working range of the robot, wherein at least one of the calibration objects is a male calibration object having a protruding part shaped as a sphere, and at least one of the calibration objects is a female calibration object comprising at least two nonparallel, inclining surfaces (20,21,22;33,34) arranged to receive the sphere so that the sphere is in contact with the surfaces in at least one reference position, wherein the inclination of the surfaces is in the interval of 20-80°,

    determining at least one reference position for each of the second calibration objects in the local coordinate system,

    A) moving the robot in a compliant way until the sphere is in mechanical contact with said surfaces of the female calibration object,

    B) reading the position of the robot when the sphere is in mechanical contact with said surfaces,

    repeating the steps A-B for the other second calibration objects, and

    calculating the relation between the local coordinate system and the robot coordinate system based on the position of the first calibration object in relation to the robot, the reference positions of the second calibration objects in the local coordinate system, and the positions of the robot when the sphere is in mechanical contact with the surfaces of the second calibration objects.


     
    2. The method according to claim 1, wherein at least one of the calibration objects (14, 15, 16) comprises three nonparallel, inclining surfaces arranged to receive the sphere (10) so that the sphere is in contact with all three surfaces at the reference position.
     
    3. The method according to claim 1, wherein the sphere (10) is attached to the robot (1), the other calibration objects (30,31,32) are shaped as grooves with two inclining surfaces (33,34), and at least three grooves are located in the robot work area such that their longitudinal directions are non parallel, and the method comprises moving the robot in a compliant way until the sphere has been in mechanical contact with both surfaces on all three grooves and the positions of the robot has been stored for all three grooves, and calculating the relation between the local coordinate system and the robot coordinate system based on the positions of the robot when the sphere is in mechanical contact with the surfaces of said grooves.
     
    4. The method according to any of the previous claims, wherein the robot is automatically moved by means of force control.
     
    5. The method according to any of the claims 1-4, wherein the robot is automatically moved by means of a soft servo.
     
    6. A system for determining the relation between a local coordinate system located in the working range of an industrial robot (1) and a robot coordinate system, wherein the system comprises:

    a first calibration object (10) to be attached in a fixed relation to the robot, the system characterised by comprising

    three second calibration objects. (14, 15, 16; 31, 31, 32) to be positioned in the working range of the robot, wherein at least one of the calibration objects is a male calibration object having a protruding part shaped as a sphere, and at least one of the calibration objects is a female calibration object comprising at least two nonparallel, inclining surfaces (20,21,22;33,34) arranged to receive the sphere so that the sphere is in contact with the surfaces at a reference position, wherein the inclination of the surfaces is in the interval of 20-80°, and

    means (12) for automatically moving the robot in a compliant way until the sphere is in mechanical contact with the said surfaces of the female calibration object, and

    a computing unit (5) configured to receive and store the position of the robot when the sphere is in mechanical contact with said surfaces, and to calculate the relation between the local coordinate system and the robot coordinate system based on a known relation between the first calibration object and the robot, the reference positions in the local coordinate system, and the position of the robot when the sphere is in mechanical contact with said surfaces.


     
    7. The system according to claim 6, wherein at least one of the calibration objects (14, 15, 16) comprises three nonparallel, inclining surfaces (20,21,22) arranged to receive the sphere so that the sphere is in contact with all three surfaces at the reference position.
     
    8. The system according to claim 6 or 7, wherein the calibration object is shaped as a truncated inner corner of a cube.
     
    9. The system according to claim 6, wherein the sphere is attached to the robot, the other calibration object is shaped as a groove with two inclining surfaces, and at least three grooves are located in the robot work area such that their longitudinal directions are non parallel.
     
    10. The system according to any of the claims 6-9, wherein said means for automatically moving the robot comprises a force sensor (12) adapted to measure forces in at least two directions, which force sensor is located between the first calibration object (10) and the robot (1), and a control unit (5) configured to move the robot in dependence of force measurements from the force sensor.
     
    11. The system according to any of the claims 6-10, wherein said means for automatically moving the robot comprises a soft servo.
     
    12. The system according to any of the claims 6-11, wherein the second calibration objects (14,15,16; 30,31,32) are located on a work piece (2) to be processed by the robot or on a fixture (3) holding the work piece.
     
    13. Use of the method according to claims 1-5 and the system according to claims 6-13 for determining the relation between a coordinate system of a fixture for holding a work piece to be processed by the robot and the robot coordinate system.
     


    Ansprüche

    1. Ein Verfahren zur Bestimmung des Zusammenhangs zwischen einem lokalen Koordinatensystem, welches sich im Arbeitsbereich eines industriellen Roboters (1) befindet, und einem Roboterkoordinatensystem, wobei das Verfahren Folgendes umfasst:

    Anbringen eines ersten Kalibrierobjektes (10) in einer festen Verbindung zum Roboter,

    Positionsbestimmung des ersten Kalibrierobjektes relativ zum Roboter,

    Ortsbestimmung von zumindest drei zweiten Kalibrierobjekten (14, 15, 16; 30, 31, 32) im Arbeitsbereich des Roboters, wobei zumindest eines der Kalibrierobjekte ein männliches Kalibrierobjekt ist, welches ein abstehendes Teil in Form einer Sphäre aufweist, und zumindest eines der Kalibrierobjekte ein weibliches Kalibrierobjekt ist, welches zumindest zwei nicht parallele, geneigte Oberflächen (20, 21, 22; 33, 34) aufweist, welches derartig angebracht sind, dass die Sphäre aufgenommen wird, sodass die Sphäre in Kontakt mit der Oberfläche in zumindest einer Referenzposition steht, wobei der Neigungswinkel der Oberflächen in einem Intervall von 20 bis 80° ausgebildet ist,

    Festlegung von zumindest einer Referenzposition für jeden der zweiten Kalibrierobjekte in dem lokalen Koordinatensystem,

    A) Bewegen des Roboters in einer entsprechenden Weise das die Sphäre in mechanischem Kontakt mit besagter Oberfläche des weiblichen Kalibrierobjektes steht,

    B) Auslesen der Position des Roboters, wenn die Sphäre in mechanischem
    Kontakt mit besagter Oberfläche steht,

    Wiederholen der Schritte A bis B für die weiteren zweiten Kalibrierobjekte, und Berechnung des Zusammenhangs zwischen dem lokalen Koordinatensystem und dem Roboterkoordinatensystem basierend auf der Position des ersten Kalibrierobjektes relativ zum Roboter, den Referenzpositionen der zweiten Kalibrierobjekte im Lokalkoordinatensystem und der Position des Roboters wenn die Sphäre in mechanischem Kontakt mit der Oberfläche der zweiten Kalibrierobjekte steht.


     
    2. Verfahren nach Anspruch 1, wobei zumindest eines der Kalibrierobjekte (14, 15, 16) drei nicht parallele, geneigte Oberflächen umfasst, welche derart angebracht sind die Sphäre auszunehmen, sodass die Sphäre in Kontakt mit allen drei Oberflächen an der Referenzposition steht.
     
    3. Verfahren nach Anspruch 1, wobei die Sphäre (10) an dem Roboter angebracht ist, die anderen Kalibrierobjekte (30, 31, 32) als Rillen mit zwei geneigten Oberflächen (33, 34) ausgebildet sind und zumindest drei Rillen sich im Arbeitsbereich des Roboters derartig befinden, dass deren longitudinale Ausrichtung nicht parallel sind, und das Verfahren das Bewegen des Roboters in einer entsprechenden Weise bis die Sphäre in mechanischem Kontakt mit beiden Oberflächen aller drei Rillen steht und die Positionen des Roboters für alle drei Rillen gespeichert sind, und das Berechnen des Zusammenhanges zwischen dem lokalen Koordinatensystem und dem Roboterkoordinatensystem basierend auf der Position des Roboters, wenn die Sphäre in mechanischem Kontakt mit den Oberflächen besagter Rillen steht, umfasst.
     
    4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Roboter automatisch durch den Einsatz einer Steuerkraft bewegt wird.
     
    5. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 4, wobei der Roboter durch eine weiche Servoeinrichtung bewegt wird.
     
    6. Ein System zur Bestimmung des Zusammenhanges zwischen einem lokalen Koordinatensystem im Arbeitsbereich eines industriellen Roboters (1) und eines Roboterkoordinatensystems, wobei das System umfasst:

    ein erstes Kalibrierobjekt (10) zum Anbringen in einer festen Verbindung mit dem Roboter,

    drei zweite Kalibrierobjekte (14, 15,16; 30, 31 ,32) zum Positionieren in dem Arbeitsbereich des Roboters, wobei zumindest eines der Kalibrierobjekte ein männliches Kalibrierobjekt ist, welches einen abstehenden als Sphäre ausgebildeten Teil aufweist, und zumindest eines der Kalibrierobjekte ein weibliches Kalibrierobjekt ist, welches zumindest zwei nicht parallele, geneigte Oberfläche (20, 21, 22; 33, 34) aufweist, welche zum Aufnehmen der Sphäre angebracht sind, sodass die Sphäre in Kontakt mit der Oberfläche an einer Referenzposition steht, wobei die Neigung der Oberfläche in einem Intervall von 20 bis 80° liegt und

    Mittel (12) zum automatischen Bewegen des Roboters in einer entsprechenden Weise, bis die Sphäre in mechanischem Kontakt mit besagter Oberfläche des weiblichen Kalibrierobjektes steht, und

    eine Rechnereinheit (5), welche zum Empfangen und Speichern der Positionen des Roboters, wenn die Sphäre in mechanischem Kontakt mit besagter Oberfläche steht, und zum Berechnen des Zusammenhangs zwischen dem lokalen Koordinatensystem und dem Roboterkoordinatensystem, basierend auf einer bekannten Beziehung zwischen dem ersten Kalibrierobjekt und dem Roboter, den Referenzpositionen im lokalen Koordinatensystem und der Position des Roboters, wenn die Sphäre in mechanischem Kontakt mit besagter Oberfläche steht, konfiguriert ist.


     
    7. Das System nach Anspruch 6, wobei zumindest eine der Kalibrierobjekte (14,15, 16) drei nicht parallele, geneigte Oberflächen (20, 21, 22) umfasst, welche zum Aufnehmen der Sphäre so angebracht sind, dass die Sphäre in Kontakt mit allen drei Oberflächen an der Referenzposition steht.
     
    8. Das System nach Anspruch 6 oder 7, wobei das Kalibrierobjekt in Form einer abgeschnittenen inneren Ecke eines Würfels ausgebildet ist.
     
    9. Das System nach Anspruch 6, wobei die Sphäre an dem Roboter angebracht ist, das andere Kalibrierobjekt als Rille mit zwei geneigten Oberflächen ausgebildet ist und zumindest drei Rillen so im Arbeitsbereich des Roboters angebracht sind, dass deren longitudinale Ausrichtungen nicht parallel sind.
     
    10. Das System, nach einem der Ansprüche 6 bis 9, wobei besagte Mittel zum automatischen Bewegen des Roboters einen Kraftsensor (12) umfassen, die derart ausgebildet sind, die Kräfte in zumindest zwei Richtungen zu messen, wobei der Kraftsensor zwischen dem ersten Kalibrierobjekt (10) und dem Roboter (1) vorgesehen ist, und eine Kontrolleinheit (5), welche zum Bewegen des Roboters in Abhängigkeit der Kraftmessungen des Kraftsensors konfiguriert ist.
     
    11. Das System nach einem der Ansprüche 6 bis 10, wobei besagte Mittel zum automatischen Bewegen des Roboters eine weiche Servoeinrichtung umfassen.
     
    12. Das System nach einem der Ansprüche 6 bis 11, wobei das zweite Kalibrierobjekt (14,15,16; 30, 31, 32) an einem Werkstück (2), welches von dem Roboter bearbeitet wird, oder an einer Befestigung (3), welche das Werkstück hält, vorgesehen ist.
     
    13. Benutzung des Verfahrens nach einem der Ansprüche 1 bis 5 und des Systems nach einem der Ansprüche 6 bis 13 zur Bestimmung des Zusammenhanges zwischen einem Koordinatensystem für eine Befestigung zum Halten eines Werkstückes, welches von einem Roboter bearbeitet wird, und dem Roboterkoordinatensystem.
     


    Revendications

    1. Procédé permettant de déterminer la relation entre un système de coordonnées local situé dans la plage de fonctionnement d'un robot industriel (1) et un système de coordonnées du robot, dans lequel le procédé comprend les étapes consistant à :

    attacher un premier objet d'étalonnage (10) dans une relation fixe au robot,

    déterminer la position du premier objet d'étalonnage en relation avec le robot, caractérisé en les étapes consistant à

    localiser au moins trois seconds objets d'étalonnage (14, 15, 16 ; 30, 31, 32) dans la plage de travail du robot, dans lequel au moins un des objets d'étalonnage est un objet d'étalonnage mâle ayant une partie protubérante de forme sphérique, et au moins un des objets d'étalonnage est un objet d'étalonnage femelle comprenant aux moins deux surfaces inclinées non parallèles (20, 21, 22 ; 33, 34) agencées pour recevoir la sphère de façon à ce que la sphère soit en contact avec les surfaces dans au moins une position de référence, où l'inclinaison des surfaces est dans l'intervalle de 20 à 80°,

    déterminer au moins une position de référence pour chacun des seconds objets d'étalonnage dans le système de coordonnées local,

    A) déplacer le robot de manière conforme jusqu'à ce que la sphère soit en contact mécanique avec lesdites surfaces de l'objet d'étalonnage femelle,

    B) lire la position du robot lorsque la sphère est en contact mécanique avec lesdites surfaces,

    répéter les étapes A) et B) pour les autres seconds objets d'étalonnage, et

    calculer la relation entre le système de coordonnées local et le système de coordonnées du robot en se fondant sur la position du premier objet d'étalonnage en relation avec le robot, les positions de référence des seconds objets d'étalonnage dans le système de coordonnées local, et les positions du robot lorsque la sphère est en contact mécanique avec les surfaces des seconds objets d'étalonnage.


     
    2. Procédé selon la revendication 1, dans lequel au moins un des objets d'étalonnage (14, 15, 16) comprend trois surfaces inclinées non parallèles agencées pour recevoir la sphère (10) afin que la sphère soit en contact mécanique avec les trois surfaces à la position de référence.
     
    3. Procédé selon la revendication 1, dans lequel la sphère (10) est attachée au robot (1), les autres objets d'étalonnage (30, 31, 32) ont la forme de rainures avec deux surfaces inclinées (33, 34) et au moins trois rainures sont situées dans la zone de travail du robot de telle sorte que leurs directions longitudinales sont non parallèles, et le procédé comprend l'étape consistant à déplacer le robot de manière conforme jusqu'à ce que la sphère ait été en contact mécanique avec les deux surfaces sur chacune des trois rainures et que les positions du robot aient été stockées pour chacune des trois rainures, et calculer la relation entre le système de coordonnées local et le système de coordonnées du robot en se basant sur les positions du robot lorsque la sphère est en contact mécanique avec les surfaces desdites rainures.
     
    4. Procédé selon l'une quelconque des revendications précédentes, dans lequel le robot est déplacé automatiquement au moyen d'une commande de force.
     
    5. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel le robot est automatiquement déplacé au moyen d'un asservissement souple.
     
    6. Système de détermination de la relation entre un système de coordonnées local situé dans la plage de travail d'un robot industriel (1) et un système de coordonnées du robot, dans lequel le système comprend :

    un premier objet d'étalonnage (10) à attacher dans une relation fixe au robot, le système étant caractérisé en ce qu'il comprend

    trois seconds objets d'étalonnage (14, 15, 16 ; 30, 31, 32) devant être positionnés dans la plage de travail du robot, dans desquels au moins l'un des objets d'étalonnage est une objet d'étalonnage mâle
    ayant une partie protubérante de forme sphérique, et au moins l'un des objets d'étalonnage est un objet d'étalonnage femelle comprenant au moins deux surfaces inclinées non parallèles (20, 21, 22 ; 33, 34) agencées pour recevoir la sphère de telle sorte que la sphère soit en contact avec les surfaces dans une position de référence, où l'inclination des surfaces est dans l'intervalle de 20° à 80°, et

    un moyen (12) permettant de déplacer automatiquement le robot de façon conforme jusqu'à ce que la sphère soit en contact mécanique avec lesdites surfaces de l'objet d'étalonnage semelle, et

    une unité de calcul (5) configurée pour recevoir et stocker la position du robot lorsque la sphère est en contact mécanique avec lesdites surfaces, et pour calculer la relation entre le système de coordonnées local et le système de coordonnées du robot en se basant sur une relation connue entre le premier objet d'étalonnage et le robot, les positions de référence dans le système de coordonnées local, et la position du robot lorsque la sphère est en contact mécanique avec lesdites surfaces.


     
    7. Système selon la revendication 6, dans lequel au moins l'un des objets d'étalonnage (14, 15, 16) comprend trois surfaces inclinées non parallèles (20, 21, 22) agencées pour recevoir la sphère de telle sorte que la sphère soit en contact avec les trois surfaces en position de référence.
     
    8. Système selon la revendication 6 ou 7, dans lequel l'objet d'étalonnage a une forme de coin interne tronqué d'un cube.
     
    9. Système selon la revendication 6, dans lequel la sphère est attachée au robot, l'autre objet d'étalonnage a la forme d'une rainure avec deux surfaces inclinées, et au moins trois rainures sont situées dans la plage de travail du robot de telle sorte que leurs directions longitudinales sont non parallèles.
     
    10. Système selon l'une quelconque des revendications 6 à 9, dans lequel ledit moyen pour déplacer automatiquement le robot comprend un capteur de force (12) adapté à la mesure de forces dans au moins deux directions, lequel capteur de force est situé entre le premier objet d'étalonnage (10) et le robot (1), et une unité de commande (5) étant configurée pour déplacer le robot en fonction de mesures de force du capteur de force.
     
    11. Système selon l'un quelconque des revendications 6 à 10, dans lequel ledit moyen pour déplacer automatiquement le robot comprend un asservissement souple.
     
    12. Système selon l'une quelconque des revendications 6 à 11, dans lequel les seconds objets d'étalonnage (14, 15, 16 ; 30, 31, 32) sont situés sur une pièce de fabrication (2) à traiter par le robot ou sur un dispositif de serrage (3) maintenant la pièce de fabrication.
     
    13. Utilisation du procédé selon les revendications 1 à 5 et de système selon les revendications 6 à 13, pour déterminer la relation entre un système de coordonnées d'un dispositif de serrage pour maintenir une pièce de travail devant être traitée par le robot et le système de coordonnées du robot.
     




    Drawing














    Cited references

    REFERENCES CITED IN THE DESCRIPTION



    This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

    Patent documents cited in the description