CA1208747A - System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedom - Google Patents
System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedomInfo
- Publication number
- CA1208747A CA1208747A CA000457582A CA457582A CA1208747A CA 1208747 A CA1208747 A CA 1208747A CA 000457582 A CA000457582 A CA 000457582A CA 457582 A CA457582 A CA 457582A CA 1208747 A CA1208747 A CA 1208747A
- Authority
- CA
- Canada
- Prior art keywords
- robot
- gripper
- cube
- coordinate
- compensate
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired
Links
- 238000000034 method Methods 0.000 claims description 29
- 238000005259 measurement Methods 0.000 claims description 4
- 238000012804 iterative process Methods 0.000 description 6
- 230000000332 continued effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 description 1
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 239000012636 effector Substances 0.000 description 1
- 230000003455 independent Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
Classifications
-
- D—TEXTILES; PAPER
- D21—PAPER-MAKING; PRODUCTION OF CELLULOSE
- D21G—CALENDERS; ACCESSORIES FOR PAPER-MAKING MACHINES
- D21G3/00—Doctors
- D21G3/005—Doctor knifes
Landscapes
- Magnetic Bearings And Hydrostatic Bearings (AREA)
- Paper (AREA)
- Rolls And Other Rotary Bodies (AREA)
- Support Of The Bearing (AREA)
- Joints Allowing Movement (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
Abstract:
A system for automatically compensating for inaccuracies of a robot in all degrees of freedom. The system includes moving a measuring body (32) held by the robot gripper in response to a command representative of a previously determined nomi-nal position within a measuring fixture (31) known to the robot controller, determining by means of sensing means (S1-S6) differences between pairs of sensed values and using said diffe-rence values to iteratively compensate for the error in respec-tive angular coordinate direction .beta., .alpha. and .gamma. and thereafter using the received pairs of equal sensor values to iteratively compensate for the error in respective ortogonal coordinate direction x, y and z. Alternatively, the errors in respective coordinate directions .beta., .alpha.,.gamma., x, y and z may be successively calculated and the calculated error values used to successively compensate for the errors in the associated coordinate direc-tions.
A system for automatically compensating for inaccuracies of a robot in all degrees of freedom. The system includes moving a measuring body (32) held by the robot gripper in response to a command representative of a previously determined nomi-nal position within a measuring fixture (31) known to the robot controller, determining by means of sensing means (S1-S6) differences between pairs of sensed values and using said diffe-rence values to iteratively compensate for the error in respec-tive angular coordinate direction .beta., .alpha. and .gamma. and thereafter using the received pairs of equal sensor values to iteratively compensate for the error in respective ortogonal coordinate direction x, y and z. Alternatively, the errors in respective coordinate directions .beta., .alpha.,.gamma., x, y and z may be successively calculated and the calculated error values used to successively compensate for the errors in the associated coordinate direc-tions.
Description
~26!~
SW 9~3005 Sys-tem for automatically calibrating the_space coordinates of a robot gripper in six degrees of freedom.
The invention relates to a system for automatically compensat-ing positioning errors of a robot gripper i~ all degrees of freedom in a robot or like systemO
In robot applications the robot gripper is under computer control programmed to successively and repeatedly be position-ed and operated in predetermined positions within the work envelope of the robot. Reference is made to IBM Robot System/l, General Information Manual and User's Guide which describes such a robot system in detail.
At the start up of a new work process it is necessary to let the gripper start from an exactly defined home posi-tion. Then during operation of the robot, errors in the positioning of the gripper may occur due to errors in some or all of the six coordinate directions. Therefore, cali'bration and compen-sation of the robot gripper in all coordinate directions is necessary at suitable time intervals.
Such calibrations have prior been performed by means of sepa-rate measurements for each coordinate direction and in different points depending on the coordinate direction to be measured. Then, from the values received corrections are made in ~he separate coordinate directions. Such measurements are very time consuming. Besides, as the direction coordinates depend on each other repeated measurements must be performed to get satisfactory exactness.
~,r~, ~2~
U.S. Pat.No. 4.362.977 describes such a method and apparatus for calibration of a robo-t and using the results of the cali-bration to compensate for inaccuracies of the robot. The method includes moving the robot gripper to a set of nominal positions, commanded by the robot controller or measured by position en-coders built into the robot, and determining the associated actual positions by measuring the robot position with an inde-pendent accurate measuring means or by aligning the robot end effector with an accurate calibration mask. The calibration results are stored and subsequently used to compensate for robot inaccuracy so that the robot moves to the actual desired positions.
The invention as claimed is intended to remedy the above men-tioned drawbacks. It solves the problem by iteratively compen-sating for the errors in the different coordinate directions of movement of the robot gripper. This is performed by letting the robot gripper position a measuring body in a calibrating position within a measuring fixture which is fixedly mounted to the robot Erame. The measuring body may, for example, con-sist of three cube surfaces which are exactly defined in rela-tion to the gripper definition point. The measuring fixture may, for example, consist of an array of sensing means which are positioned in three surfaces of the measuring fixture corresponding to the above mentioned three surfaces of the measuring body. The difference in two suitably chosen sensor values are used for iteratively compensating the robot gripper in an associated angular coordinate direction (~). This process is repeated for each angular coordinate direction (a ànd ~).
Thereafter, the pairs of equal sensor values are compared with nominal values in order to iteratively compensate the robot gripper in the ortogonal coordinate directions. Alternatively, the errors in respective coordinate directions ~,a,~,x, y and z may be sucessively calculated and the calculated error values used to sucessively compensate for the errors in the different coordinate directions.
l~Q~7~
Two alternative ways of carrying out the invention, which is defined in the attached claims, are described in detail below with reference to the attached drawings which illustrate only one specific embodiment, in which Figure lA is an isometric view of a robot system with a robot gripper movable in six degrees of freedom, Figure lB-D shows the three degrees of freedom of the robot hand, Figure 2 is an isometric view of a robot system pro-vided with a calibration device in accordance with the invention, Figure 3 is an isometric view of the calibration device, Figure ~ is an isometric view showing the fixed part of the calibration device, Figure 5 is a schematic view showing the coordinate systems used to describe positions in space, Figure 6 is an isometric view of the measuring cube with an inserted cube coordinate system, Figure 7 is an isometric view of the measuring body, Figure 8 is a flow diagram illustrating the operation of . the invention according to a first alternative.
Figure 9 is a flow diagram illustrating the operation of the invention according to a second alternative.
Figure 1 is an isometric view of a robot system. A robot gripper (1) operates under computer control within the work ~., .
~æ~7 envelope 2 (shown ln phantom) of the robot. The gripper is movable in six coordinate directions, a, ~, ~, x, y and z, where a is the yaw coordina-te, ~ is -the pitch coordinate and ~ is the circum gyrate coordinate. Tools and ~aterials are positioned on a work table 3 fixedly mounted to the robot frame 4. These tools and materials are positioned on -the work table in exactly defined positions to allow the robot gripper to find and handle them. The work space of the robot is de-fined by a robot coordinate system tx,y,z).
At the start up of a new work process the gripper must first be calibrated and compensated, that means, to be positioned in a start position which is exactly defined in the robot coordinate system. From that position the robot gripper can start to operate under computer program control. Besides, during the work process of the robot, errors in the positioning of the gripper may occur due to drift in some or all of the six coordinate directions. Then, malfunction of the robo-t opera-tion may occur if the gripper does not Eind the tool or mate-rial needed. Therefore, compensation of the robot coordinates at suitable time intervals is a requisi-te.
Fig. 2 shows an isometric view of a robot provided wlth a calibration device 21 shown in schematic form. The calibra-tion device consists of two main par-ts (see also fig. 3), a first part 31 fixed to the robot frame and a second part, a cube Eormed measuring body 32 which is gripped by the gripper.
This second part may be positioned in a suitable position within the work envelope of the robot. In calibration mode the gripper grips the second part and moves it into the calibrat-ing position within said first part of the calibration device.
Preferably, the second part is springingly mounted in a posi-tion within said first part 31. The second part is described more in detail below.
As shown in fig. 3 and 4 the ixed part of the calibration device consists oE -three walls AAF, BBF and CCF of a cube 31.
The fixed part is provided with sensing means S1-S6 (indicated in phantom) ~or determining the position in space of said second part 32, the measuring body, during calibration.
The positions, P1-P6, of the sensors S may be as indicated in fig. 4 or in other suitable positions. Six such sensors are used to define the position in space of the measuring body.
Preferably the distribution is two in surface (wall) AAF, two in surface (wall) BBF and two in surface (wall) CCF. The sensors are placed perpendicular to respective surfaces in positions defined for S1-S2 in the x-y-plane, for S3 ~ S4 in the x-z-plane and for S5-S6 in the y-z-plane of the robot coordinate system as indica-ted in phantom in fig. 4. Said first calibra-tion part 31 is fixedly moun-ted to the robot frame in such a way that its coordinate axis x, y, z is exactly parallel to or coinciding with (fig. 5) respective coordinate axis x, y and z in fig. 1.
Fig. 5a shows the relations between the differen-t coordina-te systems used. A home coordinate system (XHO, YHO, ZHO) for the measuring body, the measuring cube, is indicated in dashed lines in fig. 5a. When the measuring body is brought into home position all the sensors indicate predetermined values.
Accordingly, the robot gripper is in an exactly defined start position. Fig. 5a also shows the cube central home coordinate system (xCHO, yCHO, zCHO), that is, a coordinate system coincid-ing with the cube central coordinate system, when the cube is in its home position. The central cube coordinate system (xC, yC, zC) has its origo in the central point of the measuring cube and has its axes perpendicular to the cube surfaces.
.
Fig. 6 shows the intersectional points PEE, PDD and PFF
between the positive cube central coordinate x-axis, y-axis ~go8~7 and z-axis and -the imaginary cube surfaces EE, DD and FF, respectively. The joint point PJJ is situated on the yC-axis of the cube.
Fig. 7 is a separate view of the measuring cube. The cube is provided with an intermediate wall 33 having a guiding profile 34 for guiding the cube definition point 35 to coincide with the gripper definition point 35 when the gripper grips the cube.
The automatic compensating process is described below with reference to the flow diagrams in Fig. ~ and Fig. 9, which illustrate two alternative me-thods for performing the inven-tion.
At the start of compensating mode the robot gripper grips under computer program control the measuring body 32 and moves into a calibrating position within the measuring fixt~re 31. Alter-natively, the robot gripper grips the measuring body 32 in a premeasuring position within the measuring Eixture 31.
Accor~ing to a first al-ternative of the invention the compensat-ing process is performed by the following main steps a-g;
a) The sensor values Sl and S2 are read and compared with each other. If Sl is equal to S2 the process is continued with the main step b). If S1 is not equal to S2 an iterative process is started. If Sl is greater than S2 the robot gripper is order-ed to moved(rotate)in the ~ coordinate direction. If S2 is greater than Sl the robot gripper is ordered to move (rotate) in the +~ coordinate direction. This iterative process is con-tinued ~ntil Sl is equal to S2 whereupon, b) The sensor values S3 and S4 are read and compared with each other. If S3 is equal to S2 the process is continued with the main step c). If S3 is not equal to S4 an iterative process is started. If S3 is grea-ter than S4 the robot gripper is ordered to move (rotate) in the -a coordinate direction. If S4 is greater than S3 the robot gripper is ordered to move (rotate) in the +a coordinate direction. This iterative process is continued until S3 is equal to S4 whereupon;
c) The sensor values S5 and S6 are read an~ compared with each other. If S5 is equal to S6 the process is continued with the main step d). If S5 is not equal to S6 an iterative process is started. If S5 is greater than S6 the robot gripper is order~
ed to move (rotate) in the -~ coordinate direction. If S6 is greater than S5 the robot gripper is ordered to move (rotate) in the +~ coordinate direction. This iterative process is con-tinued until S5 is equal to S6 whereupon;
d) The sensor value Sl (or S2, which now is equal to Sl) is read and compared with a predetermined, nominal value, NY
(2 in the example). If Sl is equal to NY the process continues with the main step e). If Sl is not equal to NY an intera~tive process is started. If Sl is greater than NY the robot gripper is ordered to move in -the -y coordinate direction~ If NY is greater than Sl the robot gripper is ordered -to move in the +y coordinate direction. This process is con-tinued until Sl is equal to NY whereupon;
e) The sensor value S3 (or S4, which now is equal to S3) is read and compared with a predetermined, nominal value, NZ
(2 in the example). If S3 is equal to NZ the process is continued with the main step f ) . If S3 is not equal to NZ an itera~tive process is started. If S3 is greater than NZ the robot gripper is ordered to move in the -z coordinate direction. If NZ is greater than S3 the robot gripper is oredered to moved in the +z coordinate direction. This process is continued until S3 is equal to NZ whereupon;
~x~
f) The sensor value S5 (or S6, which now is equal to S5) is read and compared with a predetermined, nominal value, NX
(2 in the example). If Sl is equal to NX the robot gripper is completely compensated for the errors in all coordinate direc-tions and the process is continued by the main step g). If S5 is not equal to NX an itera~tive process is started. If S5 is greater than NX the robot gripper is ordered to move in the -x coordinate direction. If NX is yreater than S5 the robot gripper is ordered -to move in the +x coordinate direc-tion. This process is continued until S5 is equal to NX where-upon the robot gripper is completely compensated for the errors in all coordinate directions.
g) The robot is returned from compensating mode to normal operating mode.
According to a second alternative of the invention the com-pensating process is performed by the following main steps k-q);
k) The sensor values Sl and S2 are read and compared with each other. If Sl is equal to S2 the process is continued with the main step 1). If Sl is greater than S2 the error in the coordinate direction is calcula-ted by the formula ~1 = arctg [(Sl-S2) dl ], where dl is the distance between Pl and P2. Then, -the robot gripper is ordered to rotate -~. If S2 is greater than Sl the error in the P coordinate direction is calculated by means of the formula ~2 = arctg 1 (S2-Sl) dl]. Then, the robot gripper is ordered to rotate +~.
1) The sensor values S3 and S4 are read and compared with each other. If S3 is equal to S4 the process is continued with the main step m). If S3 is greater than S4 the error in the a coordinate direction is calculated by the formula ~a 1 = arctg [(S3-S4) - d2], where d2 is the distance between P3 and P4. Then, the robot gripper is ordered to rotate ~al.
If S4 is greater than S3 the error in -the a coordinate direction is calculated by the formula ~a2 = arctg 1(s4-S3) ~ d2]. Then, the robot gripper is oredered to rotate +~a2.
m) The sensor values S5 and S6 are read and compared with each other. I~ S5 is equal -to S6 the process is continued with the main step n). If S5 is greater han S6 the error in the coordinate direction is calculated by the formula ~1 = arctg [(S5-S6) d3], where d3 is the distance between P5 and P6. Then, the robot gripper is ordered to rotate -~1.
If S6 is greater than S5 the error in the ~ coordinate direction is calculated by the formula A~2 = arctg [(S6-S5) d3]. Then, the robot gripper is ordered to rotate +~2.
n) The sensor value Sl (or S2, which now is equal to Sl) is read and compared with a predetermined, nominal value, NY, (2 in the example). If S1 is equal to NY the process is con-tinued with the main step o). If Sl is greater than N~ the robot gripper is ordered to move -~yl = -(Sl-NY) in the coordi-nate direction. If NY is greater than Sl the robot gripper is ordered to ~love +~y2 = + (NY-Sl) in the y coordinate direction.
o) The sensor value S3 (or S4, which now is equal to S3) is read and compared with a predetermined, nominal value, NZ, (2 in the example). If S3 is equal to NZ to process is con--tinued by the main step p). If S3 is greater than NZ the robot gripper is ordered to move -~Zl = -(S3-NZ) in the Z coordinate direction. If NZ is greater than S3 the robot gripper is ordered to move ~2 = +(NZ-S3) in the Z coordinate direc-tion.
p) The sensor value S5 (or S6, which now is equal to S5) is read and compared with a predetermined, nominal value, NX, (2 in the example). If S5 is equal to NX the robot gripper is completely compensated in all coordinate direction and the process is continued by the main step q). If S5 is greater than NX the robot gripper is ordered to move -~xl=-(Sl-NX) in the x coordinate direction. If NX is greater than S5 the robot 10 ~
gripper is ordered to move +~x2=+(NX-S5) in the x coordinate direction.
q) The robot is returned ~rom compensating mode to normal operating mode.
SW 9~3005 Sys-tem for automatically calibrating the_space coordinates of a robot gripper in six degrees of freedom.
The invention relates to a system for automatically compensat-ing positioning errors of a robot gripper i~ all degrees of freedom in a robot or like systemO
In robot applications the robot gripper is under computer control programmed to successively and repeatedly be position-ed and operated in predetermined positions within the work envelope of the robot. Reference is made to IBM Robot System/l, General Information Manual and User's Guide which describes such a robot system in detail.
At the start up of a new work process it is necessary to let the gripper start from an exactly defined home posi-tion. Then during operation of the robot, errors in the positioning of the gripper may occur due to errors in some or all of the six coordinate directions. Therefore, cali'bration and compen-sation of the robot gripper in all coordinate directions is necessary at suitable time intervals.
Such calibrations have prior been performed by means of sepa-rate measurements for each coordinate direction and in different points depending on the coordinate direction to be measured. Then, from the values received corrections are made in ~he separate coordinate directions. Such measurements are very time consuming. Besides, as the direction coordinates depend on each other repeated measurements must be performed to get satisfactory exactness.
~,r~, ~2~
U.S. Pat.No. 4.362.977 describes such a method and apparatus for calibration of a robo-t and using the results of the cali-bration to compensate for inaccuracies of the robot. The method includes moving the robot gripper to a set of nominal positions, commanded by the robot controller or measured by position en-coders built into the robot, and determining the associated actual positions by measuring the robot position with an inde-pendent accurate measuring means or by aligning the robot end effector with an accurate calibration mask. The calibration results are stored and subsequently used to compensate for robot inaccuracy so that the robot moves to the actual desired positions.
The invention as claimed is intended to remedy the above men-tioned drawbacks. It solves the problem by iteratively compen-sating for the errors in the different coordinate directions of movement of the robot gripper. This is performed by letting the robot gripper position a measuring body in a calibrating position within a measuring fixture which is fixedly mounted to the robot Erame. The measuring body may, for example, con-sist of three cube surfaces which are exactly defined in rela-tion to the gripper definition point. The measuring fixture may, for example, consist of an array of sensing means which are positioned in three surfaces of the measuring fixture corresponding to the above mentioned three surfaces of the measuring body. The difference in two suitably chosen sensor values are used for iteratively compensating the robot gripper in an associated angular coordinate direction (~). This process is repeated for each angular coordinate direction (a ànd ~).
Thereafter, the pairs of equal sensor values are compared with nominal values in order to iteratively compensate the robot gripper in the ortogonal coordinate directions. Alternatively, the errors in respective coordinate directions ~,a,~,x, y and z may be sucessively calculated and the calculated error values used to sucessively compensate for the errors in the different coordinate directions.
l~Q~7~
Two alternative ways of carrying out the invention, which is defined in the attached claims, are described in detail below with reference to the attached drawings which illustrate only one specific embodiment, in which Figure lA is an isometric view of a robot system with a robot gripper movable in six degrees of freedom, Figure lB-D shows the three degrees of freedom of the robot hand, Figure 2 is an isometric view of a robot system pro-vided with a calibration device in accordance with the invention, Figure 3 is an isometric view of the calibration device, Figure ~ is an isometric view showing the fixed part of the calibration device, Figure 5 is a schematic view showing the coordinate systems used to describe positions in space, Figure 6 is an isometric view of the measuring cube with an inserted cube coordinate system, Figure 7 is an isometric view of the measuring body, Figure 8 is a flow diagram illustrating the operation of . the invention according to a first alternative.
Figure 9 is a flow diagram illustrating the operation of the invention according to a second alternative.
Figure 1 is an isometric view of a robot system. A robot gripper (1) operates under computer control within the work ~., .
~æ~7 envelope 2 (shown ln phantom) of the robot. The gripper is movable in six coordinate directions, a, ~, ~, x, y and z, where a is the yaw coordina-te, ~ is -the pitch coordinate and ~ is the circum gyrate coordinate. Tools and ~aterials are positioned on a work table 3 fixedly mounted to the robot frame 4. These tools and materials are positioned on -the work table in exactly defined positions to allow the robot gripper to find and handle them. The work space of the robot is de-fined by a robot coordinate system tx,y,z).
At the start up of a new work process the gripper must first be calibrated and compensated, that means, to be positioned in a start position which is exactly defined in the robot coordinate system. From that position the robot gripper can start to operate under computer program control. Besides, during the work process of the robot, errors in the positioning of the gripper may occur due to drift in some or all of the six coordinate directions. Then, malfunction of the robo-t opera-tion may occur if the gripper does not Eind the tool or mate-rial needed. Therefore, compensation of the robot coordinates at suitable time intervals is a requisi-te.
Fig. 2 shows an isometric view of a robot provided wlth a calibration device 21 shown in schematic form. The calibra-tion device consists of two main par-ts (see also fig. 3), a first part 31 fixed to the robot frame and a second part, a cube Eormed measuring body 32 which is gripped by the gripper.
This second part may be positioned in a suitable position within the work envelope of the robot. In calibration mode the gripper grips the second part and moves it into the calibrat-ing position within said first part of the calibration device.
Preferably, the second part is springingly mounted in a posi-tion within said first part 31. The second part is described more in detail below.
As shown in fig. 3 and 4 the ixed part of the calibration device consists oE -three walls AAF, BBF and CCF of a cube 31.
The fixed part is provided with sensing means S1-S6 (indicated in phantom) ~or determining the position in space of said second part 32, the measuring body, during calibration.
The positions, P1-P6, of the sensors S may be as indicated in fig. 4 or in other suitable positions. Six such sensors are used to define the position in space of the measuring body.
Preferably the distribution is two in surface (wall) AAF, two in surface (wall) BBF and two in surface (wall) CCF. The sensors are placed perpendicular to respective surfaces in positions defined for S1-S2 in the x-y-plane, for S3 ~ S4 in the x-z-plane and for S5-S6 in the y-z-plane of the robot coordinate system as indica-ted in phantom in fig. 4. Said first calibra-tion part 31 is fixedly moun-ted to the robot frame in such a way that its coordinate axis x, y, z is exactly parallel to or coinciding with (fig. 5) respective coordinate axis x, y and z in fig. 1.
Fig. 5a shows the relations between the differen-t coordina-te systems used. A home coordinate system (XHO, YHO, ZHO) for the measuring body, the measuring cube, is indicated in dashed lines in fig. 5a. When the measuring body is brought into home position all the sensors indicate predetermined values.
Accordingly, the robot gripper is in an exactly defined start position. Fig. 5a also shows the cube central home coordinate system (xCHO, yCHO, zCHO), that is, a coordinate system coincid-ing with the cube central coordinate system, when the cube is in its home position. The central cube coordinate system (xC, yC, zC) has its origo in the central point of the measuring cube and has its axes perpendicular to the cube surfaces.
.
Fig. 6 shows the intersectional points PEE, PDD and PFF
between the positive cube central coordinate x-axis, y-axis ~go8~7 and z-axis and -the imaginary cube surfaces EE, DD and FF, respectively. The joint point PJJ is situated on the yC-axis of the cube.
Fig. 7 is a separate view of the measuring cube. The cube is provided with an intermediate wall 33 having a guiding profile 34 for guiding the cube definition point 35 to coincide with the gripper definition point 35 when the gripper grips the cube.
The automatic compensating process is described below with reference to the flow diagrams in Fig. ~ and Fig. 9, which illustrate two alternative me-thods for performing the inven-tion.
At the start of compensating mode the robot gripper grips under computer program control the measuring body 32 and moves into a calibrating position within the measuring fixt~re 31. Alter-natively, the robot gripper grips the measuring body 32 in a premeasuring position within the measuring Eixture 31.
Accor~ing to a first al-ternative of the invention the compensat-ing process is performed by the following main steps a-g;
a) The sensor values Sl and S2 are read and compared with each other. If Sl is equal to S2 the process is continued with the main step b). If S1 is not equal to S2 an iterative process is started. If Sl is greater than S2 the robot gripper is order-ed to moved(rotate)in the ~ coordinate direction. If S2 is greater than Sl the robot gripper is ordered to move (rotate) in the +~ coordinate direction. This iterative process is con-tinued ~ntil Sl is equal to S2 whereupon, b) The sensor values S3 and S4 are read and compared with each other. If S3 is equal to S2 the process is continued with the main step c). If S3 is not equal to S4 an iterative process is started. If S3 is grea-ter than S4 the robot gripper is ordered to move (rotate) in the -a coordinate direction. If S4 is greater than S3 the robot gripper is ordered to move (rotate) in the +a coordinate direction. This iterative process is continued until S3 is equal to S4 whereupon;
c) The sensor values S5 and S6 are read an~ compared with each other. If S5 is equal to S6 the process is continued with the main step d). If S5 is not equal to S6 an iterative process is started. If S5 is greater than S6 the robot gripper is order~
ed to move (rotate) in the -~ coordinate direction. If S6 is greater than S5 the robot gripper is ordered to move (rotate) in the +~ coordinate direction. This iterative process is con-tinued until S5 is equal to S6 whereupon;
d) The sensor value Sl (or S2, which now is equal to Sl) is read and compared with a predetermined, nominal value, NY
(2 in the example). If Sl is equal to NY the process continues with the main step e). If Sl is not equal to NY an intera~tive process is started. If Sl is greater than NY the robot gripper is ordered to move in -the -y coordinate direction~ If NY is greater than Sl the robot gripper is ordered -to move in the +y coordinate direction. This process is con-tinued until Sl is equal to NY whereupon;
e) The sensor value S3 (or S4, which now is equal to S3) is read and compared with a predetermined, nominal value, NZ
(2 in the example). If S3 is equal to NZ the process is continued with the main step f ) . If S3 is not equal to NZ an itera~tive process is started. If S3 is greater than NZ the robot gripper is ordered to move in the -z coordinate direction. If NZ is greater than S3 the robot gripper is oredered to moved in the +z coordinate direction. This process is continued until S3 is equal to NZ whereupon;
~x~
f) The sensor value S5 (or S6, which now is equal to S5) is read and compared with a predetermined, nominal value, NX
(2 in the example). If Sl is equal to NX the robot gripper is completely compensated for the errors in all coordinate direc-tions and the process is continued by the main step g). If S5 is not equal to NX an itera~tive process is started. If S5 is greater than NX the robot gripper is ordered to move in the -x coordinate direction. If NX is yreater than S5 the robot gripper is ordered -to move in the +x coordinate direc-tion. This process is continued until S5 is equal to NX where-upon the robot gripper is completely compensated for the errors in all coordinate directions.
g) The robot is returned from compensating mode to normal operating mode.
According to a second alternative of the invention the com-pensating process is performed by the following main steps k-q);
k) The sensor values Sl and S2 are read and compared with each other. If Sl is equal to S2 the process is continued with the main step 1). If Sl is greater than S2 the error in the coordinate direction is calcula-ted by the formula ~1 = arctg [(Sl-S2) dl ], where dl is the distance between Pl and P2. Then, -the robot gripper is ordered to rotate -~. If S2 is greater than Sl the error in the P coordinate direction is calculated by means of the formula ~2 = arctg 1 (S2-Sl) dl]. Then, the robot gripper is ordered to rotate +~.
1) The sensor values S3 and S4 are read and compared with each other. If S3 is equal to S4 the process is continued with the main step m). If S3 is greater than S4 the error in the a coordinate direction is calculated by the formula ~a 1 = arctg [(S3-S4) - d2], where d2 is the distance between P3 and P4. Then, the robot gripper is ordered to rotate ~al.
If S4 is greater than S3 the error in -the a coordinate direction is calculated by the formula ~a2 = arctg 1(s4-S3) ~ d2]. Then, the robot gripper is oredered to rotate +~a2.
m) The sensor values S5 and S6 are read and compared with each other. I~ S5 is equal -to S6 the process is continued with the main step n). If S5 is greater han S6 the error in the coordinate direction is calculated by the formula ~1 = arctg [(S5-S6) d3], where d3 is the distance between P5 and P6. Then, the robot gripper is ordered to rotate -~1.
If S6 is greater than S5 the error in the ~ coordinate direction is calculated by the formula A~2 = arctg [(S6-S5) d3]. Then, the robot gripper is ordered to rotate +~2.
n) The sensor value Sl (or S2, which now is equal to Sl) is read and compared with a predetermined, nominal value, NY, (2 in the example). If S1 is equal to NY the process is con-tinued with the main step o). If Sl is greater than N~ the robot gripper is ordered to move -~yl = -(Sl-NY) in the coordi-nate direction. If NY is greater than Sl the robot gripper is ordered to ~love +~y2 = + (NY-Sl) in the y coordinate direction.
o) The sensor value S3 (or S4, which now is equal to S3) is read and compared with a predetermined, nominal value, NZ, (2 in the example). If S3 is equal to NZ to process is con--tinued by the main step p). If S3 is greater than NZ the robot gripper is ordered to move -~Zl = -(S3-NZ) in the Z coordinate direction. If NZ is greater than S3 the robot gripper is ordered to move ~2 = +(NZ-S3) in the Z coordinate direc-tion.
p) The sensor value S5 (or S6, which now is equal to S5) is read and compared with a predetermined, nominal value, NX, (2 in the example). If S5 is equal to NX the robot gripper is completely compensated in all coordinate direction and the process is continued by the main step q). If S5 is greater than NX the robot gripper is ordered to move -~xl=-(Sl-NX) in the x coordinate direction. If NX is greater than S5 the robot 10 ~
gripper is ordered to move +~x2=+(NX-S5) in the x coordinate direction.
q) The robot is returned ~rom compensating mode to normal operating mode.
Claims (11)
1. System for automatically compensating positioning errors of a robot gripper in all degrees of freedom in a robot or like system, characterized by the steps of moving a measuring body (32) held by the robot gripper (1) in response to a command representative of a predetermined nominal position within a measuring fixture (31) known to the robot controller, determining, by actual measurement by means of sensors (S1-S6), the difference between a first pair of sensor values (S1-S2) and using said difference value for moving the robot gripper (1) in order to compensate for an error in an associated first angular coordinate direction (.beta.), successively repeating this process using each further pairs of sensor values (S3-S4; 55-56) in order to compensate for errors in respective associated angular coordinate directions (.alpha.,.gamma. ), comparing said first pair of equal sensor values (S1, S2) with a first nominal value (NY) representative of said predetermined nominal position of the measuring body, using the difference value for moving the robot gripper in order to compensate for an error in an associated first ortogonal coordinate direction (y), successively repeating this process using each further pairs of sensor values (S3-S4, S5-S6) in order to compensate for errors in respective associated ortogonal coordinate direction (z, x).
2. System according to claim 1, characterized in that the measuring body (32) consists of a number of surfaces (AA, BB, CC), the positions of which are exactly defined in relation to the gripper (1).
3. System according to claim 2, characterized in that the surfaces (AA, BB, CC) are perpendicular to each other.
4. System according to claim 1, characterized in that the measuring body (32) is in the form of three cube surfaces and is held by the gripper so that the gripper definition point coincides with the cube central point (35).
5. System according to claim 4, characterized in that the measuring body (32) is provided with an intermediate wall (33) having a guiding profile (34) for guiding the cube defi-nition point (35) to coincide with the gripper definition point.
6. System according to claim 1, charaeterized in that the measuring fixture (31) consists of a number of surfaces (AAF, BBF, CCF), the positions of which are exactly defined in relation to the robot coordinate system, the surfaces being provided with said sensing means (S1-S6) in a predetermined pattern.
7. System according to claim 6, characterized in that the surfaces (AAF, BBF, CCF) are perpendicular to each other.
8. System according to claim 6, characterized in that the measuring fixture (31) is in the form of three cube surfaces (AAF, BBF, CCF).
9. System according to claim 8, characterized in that the distribution of sensing means (S1-S6) are two (S3-S4) in a first cube surface (AAF), two (S1-S2) in a second cube surface (BBF) and two (S5-S6) in a third cube surface (CCF).
10. System according to claim 7, 8 or 9, characterized in that said difference values are used to iteratively compen-sate for the error in respective coordinate direction .beta., .alpha.,.gamma. , x, y, z
11. System according to claim 7, 8 or 9, characterized in that said difference values are used to calculate the errors in respective coordinate directions ( .beta., .alpha.,.gamma. , x, y, z) and in that the robot gripper is moved in order to successively compensate for the calculated errors in respective coordinate direction
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE8304700A SE438341B (en) | 1983-08-31 | 1983-08-31 | LAGERDON FOR AN AXEL TAPE, SPECIAL FOR A SCHABERAGGREGT THAT IS TURNED TO A WORKHOUSE IN ANY OSCILLATING AXIAL MOVEMENTS |
SE8304700 | 1983-08-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1208747A true CA1208747A (en) | 1986-07-29 |
Family
ID=20352354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA000457582A Expired CA1208747A (en) | 1983-07-22 | 1984-06-27 | System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedom |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0135791A3 (en) |
CA (1) | CA1208747A (en) |
FI (1) | FI73261C (en) |
SE (1) | SE438341B (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2318504A (en) * | 1938-12-09 | 1943-05-04 | Frederick W Lodding | Doctor operating mechanism for rolls and cylinders |
GB1085191A (en) * | 1966-01-03 | 1967-09-27 | Goudsche Machf Nv | Drum drier with a scraper blade |
GB1222832A (en) * | 1968-02-15 | 1971-02-17 | Kenyon Engineering Controls Lt | Improvements in reciprocating oscillators |
US3750228A (en) * | 1970-06-18 | 1973-08-07 | Essco Inc Green Bay | Oscillating doctor-blade mechanism |
US4181378A (en) * | 1978-06-14 | 1980-01-01 | Beloit Corporation | Doctor bearing integral pressure lubrication |
-
1983
- 1983-08-31 SE SE8304700A patent/SE438341B/en not_active IP Right Cessation
-
1984
- 1984-06-27 CA CA000457582A patent/CA1208747A/en not_active Expired
- 1984-08-18 EP EP84109866A patent/EP0135791A3/en not_active Withdrawn
- 1984-08-29 FI FI843411A patent/FI73261C/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
FI73261C (en) | 1987-09-10 |
FI843411A0 (en) | 1984-08-29 |
SE438341B (en) | 1985-04-15 |
SE8304700L (en) | 1985-03-01 |
FI73261B (en) | 1987-05-29 |
FI843411A7 (en) | 1985-03-01 |
EP0135791A3 (en) | 1987-02-04 |
SE8304700D0 (en) | 1983-08-31 |
EP0135791A2 (en) | 1985-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0136413B1 (en) | System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedom | |
EP0132616B1 (en) | System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedom | |
US4815006A (en) | Method and device for calibrating a sensor on an industrial robot | |
EP0275428B2 (en) | Method for calibrating a coordinate measuring machine and the like | |
EP0431572B1 (en) | Numerical control device for a machine tool | |
US4725965A (en) | Method for calibrating a SCARA robot | |
EP1885524B1 (en) | Kinematic singular point compensation systems and methods | |
HK1003801B (en) | Numerical control device for a machine tool | |
EP0358765B1 (en) | Automatic setting of tool tip point | |
US4722063A (en) | Method of calculating actual arm lengths and compensating for angular errors | |
CN1286157A (en) | Mfg. system and method | |
US6745101B2 (en) | Deflection compensation for numerical controlled manufacturing | |
EP0279926B1 (en) | Method for determining position within the measuring volume of a coordinate measuring machine and the like and system therefor | |
CA1208747A (en) | System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedom | |
Schroer | RoboCal—the IPK robot calibration package | |
Freeman | A novel means of software compensation for robots and machine tools | |
JPH0561648B2 (en) | ||
CA1204864A (en) | System for automatically calibrating the space coordinates of a robot gripper in six degrees of freedom | |
US5731679A (en) | Off-line programming system for control of industrial robots | |
JP3201170B2 (en) | Exploration distance setting method for industrial robots | |
Robinson et al. | An automated robot calibration system | |
Kugler | Nd: Yag lasers and robots‐cutting automotive parts on theproduction floor | |
JP2811177B2 (en) | Position correction method for articulated robots | |
Albright et al. | Data Specification and Structure to Build a Complete Modelfor Robot Calibration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MKEX | Expiry |