Method for Setting More Precisely a Position and/or Orientation of a Device Head
20220365216 · 2022-11-17
Inventors
- Sascha KORL (Buchs, CH)
- Abel GAWEL (Greifensee, CH)
- Hermann BLUM (Zuerich, CH)
- Timothy SANDY (Zuerich, CH)
- Marco HUTTER (Flawil, CH)
- Roland SIEGWART (Schwyz, CH)
Cpc classification
B25J9/1694
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/39017
PHYSICS
G05B2219/40548
PHYSICS
International classification
Abstract
A method for setting more precisely a position and/or an orientation of a device head in a measuring environment by a distance measuring device which has a number of M, M≥1, distance measuring sensors and which is connected to the device head. A control device is communicatively connected to the distance measuring device and an on-board sensor device. The position and/or the orientation of the device head is determined by the on-board sensor device and the position and/or the orientation of the device head determined by the on-board sensor device is set more precisely by the control device.
Claims
1.-13. (canceled)
14. A method for setting more precisely a position and/or an orientation of a device head (10) in a measuring environment (11) by a distance measuring device (16) which comprises a number of M, M≥1, distance measuring sensors (18) and which is connected to the device head (10), and a control device (17) which is communicatively connected to the distance measuring device (16) and an on-board sensor device (14), comprising the steps of: determining the position and/or the orientation of the device head (10) by the on-board sensor device (14) and transmitting the position and/or the orientation of the device head (10) determined by the on-board sensor device (14) to the control device (17); a sequence of a first step, a second step, a third step, a fourth step, and a fifth step, wherein: in the first step of the sequence, the device head (10) is arranged in a measuring position (MP.sub.1, MP.sub.2, MP.sub.3) in the measuring environment (11) with pose data being determined for the measuring position (MP.sub.1, MP.sub.2, MP.sub.3); in the second step of the sequence, the distance measuring sensors (18) carry out a distance measurement and transmit respective measured distance values (d.sub.m_j1, d.sub.m_j2, d.sub.m_j3) to the control device (17); in the third step of the sequence, a geometry model (21) of the measuring environment (11) stored in the control device (17) and the pose data for the measuring position (MP.sub.1, MP.sub.2, MP.sub.3) are used to determine for the measured distance values (d.sub.m_j1, d.sub.m_j2, d.sub.m_j3) corresponding estimated distance values (d.sub.e_j1, d.sub.e_j2, d.sub.e_j3); in the fourth step of the sequence, deviations (Δ.sub.j1, Δ.sub.j2, Δ.sub.j3) between the measured distance values (d.sub.m_j1, d.sub.m_j2, d.sub.m_j3) and the corresponding estimated distance values (d.sub.e_j1, d.sub.e_j2, d.sub.e_j3) are calculated and stored as error values (Δ.sub.j1, Δ.sub.j2, Δ.sub.j3); and in the fifth step of the sequence, a number (A) of error values is compared with a minimum number (A.sub.min); wherein, for a first case where the number (A) of error values is less than the minimum number (A.sub.min), the device head (10) is moved from the measuring position (MP.sub.1, MP.sub.2) into a new measuring position (MP.sub.2, MP.sub.3) and the sequence of the first step to fifth step is carried out for the new measuring position (MP.sub.2, MP.sub.3); and wherein, for a second case where the number (A) of error values is greater than or equal to the minimum number (A.sub.min), the error values (Δ.sub.j1, Δ.sub.j2, Δ.sub.j3) are used to carry out an error minimization for the position and/or the orientation of the device head (10) and the position and/or orientation of the device head (10) determined by the on-board sensor device (14) is set more precisely by the control device (17).
15. The method as claimed in claim 14, wherein the first sequence of the first to fifth steps is carried out in a first measuring position (MP.sub.1), wherein the first measuring position (MP.sub.1) corresponds to the position and/or the orientation of the device head (10) that is determined by the on-board sensor device (14), and wherein the position and/or the orientation of the device head (10) that is determined by the on-board sensor device (14) is used as the first pose data for the first sequence.
16. The method as claimed in claim 14, wherein the sequence of the first to fifth steps is carried out twice in a first measuring position (MP.sub.1) and a second measuring position (MP.sub.2), wherein the first measuring position (MP.sub.1) corresponds to the position and/or the orientation of the device head (10) that is determined by the on-board sensor device (14), wherein the second measuring position (MP.sub.2) is different from the first measuring position (MP.sub.1), and wherein a movement of the device head (10) from the first measuring position (MP.sub.1) into the second measuring position (MP.sub.2) is recorded by a further on-board sensor device (19) in a form of first movement data.
17. The method as claimed in claim 16, wherein the second pose data for the second measuring position (MP.sub.2) are determined from the first pose data of the first measuring position (MP.sub.1) and the first movement data.
18. The method as claimed in claim 16, wherein the second pose data for the second measuring position (MP.sub.2) are determined from optimized first pose data and the first movement data and wherein the optimized first pose data is determined from the position and/or the orientation of the device head (10) that is determined by the on-board sensor device (14) by error minimization by the error values (Δ.sub.d′).
19. The method as claimed in claim 14, wherein the sequence of the first to fifth steps is carried out at least three times with movement of the device head (10) from one measuring position (MP.sub.LMP.sub.2) into a new measuring position (MP.sub.2, MP.sub.3) being recorded by a further on-board sensor device (19) in a form of movement data.
20. The method as claimed in claim 19, wherein pose data for the new measuring position (MP.sub.2, MP.sub.3) are determined from first pose data of the first measuring position (MP.sub.1) and the movement data.
21. The method as claimed in claim 19, wherein the pose data for the new measuring position (MP.sub.2, MP.sub.3) are determined from optimized first pose data and the movement data, wherein the optimized first pose data is determined from the position and/or the orientation of the device head (10) that is determined by the on-board sensor device (14) by error minimization by the error values (Δ.sub.j1, Δ.sub.j2) of the sequences of the first to fifth steps carried out.
22. The method as claimed in claim 14, wherein, in the second case where the number (A) of error values is greater than or equal to the minimum number (Δ.sub.min), within the error minimization an error measure (δ) is determined.
23. The method as claimed in claim 22, wherein the error measure (δ) is compared with a maximum error (δ.sub.max), wherein, for a third case where the error measure (δ) is greater than the maximum error (δ.sub.max), the device head (10) is moved into a new measuring position (MP.sub.4) and the sequence of the first to fifth steps is carried out for the new measuring position (MP.sub.4).
24. An apparatus (15) for setting more precisely a position and/or an orientation of a device head (10) which performs the method as claimed in claim 14.
25. The apparatus as claimed in claim 24, wherein the apparatus (15) has a distance measuring device (16) which comprises a number of M, M≥1, of distance measuring sensors (18) and which is connected to the device head (10), and a control device (17) which is communicatively connected to the distance measuring device (16) and an on-board sensor device (14) connected to the device head (10).
26. The apparatus as claimed in claim 25, wherein the apparatus (15) has a further on-board sensor device (19) which is attached to the device head (10) and which is communicatively connected to the control device (17).
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0028]
[0029]
[0030]
DETAILED DESCRIPTION OF THE DRAWINGS
[0031]
[0032] In the exemplary embodiment, the device head 10 is connected to a robot arm 12 which is mounted on a work platform 13. The robot arm 12 is designed as a multi-axis robot arm with multiple axes of rotation and the work platform 13 can be adjusted in one plane via motor-driven wheels that are mounted on two axes. The robot arm 12 consists of multiple rigid members that are connected by swivel joints or sliding joints, the swivel or sliding joints being able to be adjusted by controlled drives. The number of swivel or sliding joints required depends on the type of device head 10 and the planned application.
[0033] By combining the robot arm 12 with the work platform 13, the spatial area of the device head 10 can be increased in size. The work platform 13 makes it possible to position the device head 10 mounted on the robot arm 12 at least approximately in the measuring environment 11, the approximate positioning taking place in two dimensions in the plane. Instead of the motor-adjustable work platform 13, the robot arm 12 may be mounted on a manually adjustable work platform. A motor-adjustable work platform 13 allows the device head 10 to be positioned without an operator, whereas a manually adjustable work platform 13 has to be adjusted by the operator. Instead of the adjustable work platform 13, the robot arm 12 may be connected to a standing foot that allows the robot arm 12 to stand securely; the standing foot can be adjusted by the operator in order to increase the size of the spatial area. In principle, the device head 10 can also be used without a robot arm and/or work platform. The number of degrees of freedom of the device head 10 can vary greatly and is dependent on the type of device head 10 and the planned application. The device head 10 may be adjustable in one or more directions of translation, in one or more directions of rotation or in a combination of directions of translation and directions of rotation.
[0034] The position and/or orientation of the device head 10 is determined by means of an on-board sensor device 14 and then set more precisely by means of an apparatus 15 for setting more precisely the position and/or orientation of the device head 10. The apparatus 15 comprises a distance measuring device 16 and a control device 17, which is connected in a communicating manner to the on-board sensor device 14 and to the distance measuring device 16. The on-board sensor device 14 is used to determine the position and/or orientation of the device head 10; a LiDAR sensor device may be used for example as the on-board sensor device 14. The distance measuring device 16 comprises a number of M, M≥1 distance measuring sensors 18, the measuring directions of which differ from one another. In the exemplary embodiment, the distance measuring device 16 has three distance measuring sensors 18, which are arranged at right angles to one another. The distance measuring device 16 is connected to the device head 10 and serves to set more precisely the position and/or orientation of the device head 10 that was determined by means of the on-board sensor device 14.
[0035] In order to set the position and/or orientation of the device head 10 more precisely, the device head 10 is arranged in different measuring positions, in which the distance measuring sensors 18 of the distance measuring device 16 carry out a distance measurement. The movement of the device head 10 from one measuring position into a new measuring position is recorded by a further on-board sensor device 19, which is connected to the device head 10, in the form of movement data; the further on-board sensor device 19 is formed for example as an acceleration sensor.
[0036] The measuring environment 11 is mapped in a geometry model 21 which is shown in
[0037] The method according to the invention for setting more precisely the position and/or orientation of the device head 10 is characterized by a sequence of a first, second, third, fourth and fifth step, the sequence being carried out at least once, preferably multiple times (N times, N≥2). The device head 10 is arranged in different measuring positions and the sequence of the first to fifth steps is carried out in each measuring position. In the exemplary embodiment, the sequence of the first to fifth steps is carried out three times (N=3). The device head 10 is arranged in the measuring environment 11 in three measuring positions, which are referred to as the first measuring position MP.sub.1 (
[0038] In the first step of the first sequence, the device head 10 is arranged in the measuring environment 11 in the first measuring position MP.sub.1 (
[0039] The further steps of the method depend on the comparison of the number A of error values with the minimum number A.sub.min. If the number A of error values is less than the minimum number A.sub.min, the device head 10 is moved from the first measuring position MP.sub.1 into the second measuring position MP.sub.2 (
[0040] In the first step of the second sequence, the device head 10 is moved from the first measuring position MP.sub.1 into the second measuring position MP.sub.2 (
[0041] In the second step of the second sequence, the distance measuring sensors 18 carry out a distance measurement and transmit their measured distance values d.sub.m_j2 for j=1 . . . M to the control device 17; in the exemplary embodiment, the three distance measuring sensors 18 determine three measured distance values d.sub.m_12, d.sub.m_22, d.sub.m_32. For the second measuring position MP.sub.2, in the third step of the second sequence, corresponding estimated distance values d.sub.e_j2 for j=1 . . . M are determined for the measured distance values d.sub.m_j2 from the geometry model 21; in the exemplary embodiment, three estimated distance values d.sub.e_12, d.sub.e_22, d.sub.e_32 are determined. In the fourth step of the second sequence, the deviations Δ.sub.j2 for j=1 M between the measured distance values d.sub.m_j2, j=1 M and the corresponding estimated distance values d.sub.e_j2, =1 M are calculated and stored as error values; in the exemplary embodiment, the second sequence produces three error values Δ.sub.12, Δ.sub.22, Δ.sub.32. In the fifth step of the second sequence, the number A of error values is determined and compared with the minimum number A.sub.min. In the exemplary embodiment, the number six of error values is smaller than the minimum number A.sub.min, so that a third sequence of the first to fifth steps is carried out.
[0042] In the first step of the third sequence, the device head 10 is moved from the second measuring position MP.sub.2 into the third measuring position MP.sub.3 (
[0043] In the second step of the third sequence, the distance measuring sensors 18 carry out a distance measurement and transmit their measured distance values d.sub.m_j3 for j=1 . . . M to the control device 17; in the exemplary embodiment, the three distance measuring sensors 18 determine three measured distance values d.sub.m_13, d.sub.m_23, d.sub.m_33. For the third measuring position MP.sub.3, in the third step of the third sequence the geometry model 21 is used to determine for the measured distance values d.sub.m_j3 corresponding estimated distance values d.sub.e_j3 for j=1 M; in the exemplary embodiment, three estimated distance values d.sub.e_13, d.sub.e_23, d.sub.e_33 are determined. In the fourth step of the third sequence, the deviations Δ.sub.j3 for j=1 . . . M between the measured distance values d.sub.m_j3 and the corresponding estimated distance values d.sub.e_j3 are calculated and stored as error values; in the exemplary embodiment, the third sequence produces three error values Δ.sub.13, Δ.sub.23, Δ.sub.33. In the fifth step of the third sequence, the number A of error values is determined and compared with the minimum number A.sub.min. In the exemplary embodiment, the number A of error values after completion of the third sequence is nine, which is greater than the minimum number A.sub.min. Using the nine error values, a compensation calculation for the position and/or orientation of the device head 10 is carried out (error minimization) and the position and/or orientation of the device head 10 is set more precisely by the control device 17. The compensation calculation is performed for example by means of the method of least squares. The more precisely set position and/or orientation of the device head 10 results from the compensation calculation.
[0044] In a further development of the method, in the case that the number A of error values is greater than or equal to the minimum number A.sub.min, within the compensation calculation the control device 17 determines an error measure δ, which indicates the quality or accuracy with which the position and/or orientation of the device head 10 is set more precisely. The error measure δ is compared with a maximum error δ.sub.max, which indicates the allowed inaccuracy. If the error measure δ is greater than the maximum error δ.sub.max, the device head 10 is moved from the third measuring position MP.sub.3 into a new measuring position, in which the sequence of the first to fifth steps is carried out again; the new measuring position is referred to as the fourth measuring position MP.sub.4. The movement of the device head 10 from the third measuring position MP.sub.3 into the fourth measuring position MP.sub.4 is recorded in the form of third movement data by the further on-board sensor device 19.
[0045] In a further development of the method according to the invention, the quality of the error values Δ.sub.j1 that are determined in the sequences can be evaluated by the control device 17 by means of suitable calculation methods, and error values of poor quality can be disregarded in the compensation calculation (error minimization). Strong deviations between the measured distance values and the corresponding estimated distance values may occur if the distance measuring sensors 18 are directed at edges in the measuring environment 11, since even small angular deviations can lead to large changes in the measured distance values.