Geometric decoupling method for line laser calibration in robotic system

Through the combination of geometric decoupling and least squares method, the rotation matrix of line lasers in the robot coordinate system is solved, and the problem of low calibration efficiency and low accuracy of line laser systems in the existing technology is achieved, and efficient and accurate line Laser calibration.

CN114654461BActive Publication Date: 2025-02-14LANGFANG MULTI INNOVATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210163120.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-22
Publication Date
2025-02-14
Estimated Expiration
2042-02-22

AI Technical Summary

Technical Problem

The prior art is difficult to quickly and accurately decouple the rotation matrix of line lasers in the robot coordinate system, resulting in low calibration efficiency and low accuracy of line laser systems.

Method used

The geometric decoupling method is used to convert nonlinear equations into linear equations, and linear programming is performed in combination with the least squares method. The position and attitude matrix of the linear laser are quickly calculated by one measurement.

Benefits of technology

It realizes fast and accurate calibration of the linear laser system, improves calculation speed and accuracy, and ensures the stability and efficiency of calibration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114654461B_ABST
    Figure CN114654461B_ABST
Patent Text Reader

Abstract

The invention discloses a geometric decoupling method for calibrating a line laser in a robot system, comprising: calculating the posture matrix of a line laser coordinate system in a robot T0 coordinate system, judging and optimizing the acquired numerical value; and calculating the position value of the line laser coordinate system in the robot T0 coordinate system. The invention uses a geometric decoupling method to solve the nonlinear coupling problem of Euler angles, and at the same time uses the translation motion of the robot to ensure that the rotation matrix of the equation group is the same to eliminate the nonlinear coupling terms in the equation group, and finally uses the least squares method to solve the linear equation group to obtain the posture matrix of the line laser and then solve the position variable; while decoupling the parameters in the posture matrix, the coupling of the posture matrix and the position matrix parameters is also decoupled. This method can collect more data according to the accuracy requirements of the user to improve the calibration accuracy without affecting the stability of the convergence.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to robot control technology and application fields, and in particular to a method for calibrating line lasers in robot system applications. Background Art

[0002] In robot application systems, with the development of external sensor applications, laser sensors in absolute measurement systems are increasingly widely used, especially line lasers, which have the advantages of more data collection, better accuracy, and higher efficiency. With the development of robot application technology, their proportion has become larger and larger, and even indispensable. The calibration of the position and posture of the line laser system in the robot coordinate system has become the most important factor in whether the line laser can be used to the maximum extent.

[0003] In the prior art, the spatial position and posture of the line laser in the robot coordinate system are generally described using a homogeneous transformation matrix equation, as shown in formula (1):

[0004]

[0005] Among them, in formula (1),

[0006] P B is the coordinate value of the laser measurement point in the robot's world coordinate system;

[0007] is the posture of the robot T0 coordinate system (i.e., the robot wrist coordinate system) in the world coordinate system;

[0008] is the position of the robot T0 coordinate system (i.e. the robot wrist coordinate system) in the robot world coordinate system;

[0009] is the posture of the line laser in the robot T0 (i.e., robot wrist coordinate system);

[0010] is the position of the line laser in the robot T0 (i.e., robot wrist coordinate system);

[0011] L x , L y , L z are the measured values ​​of the object in the local coordinate system of the line laser.

[0012] The purpose of line laser calibration is to L x , L y , L z Value, find the rotation matrix Position Matrix Seek The difficulty is how to decouple the coefficients of the rotation matrix. From rigid body kinematics, we know that the posture of a rigid body in space is represented by three Euler angles x(γ), y(β), and z(α), which form a 3×3 rotation matrix, as shown in formula (2):

[0013]

[0014] From formula (2), we can see that although the attitude matrix R has nine elements, it has only three independent variables α, β, and γ. If we want to use the following formula (3) to solve α, β, and γ, since these three unknown quantities are coupled together by the nonlinear relationship of trigonometric functions, a decoupling method must be used before solving to get the correct answer.

[0015]

[0016] Among them, in formula (3),

[0017] is the value of the X-axis coordinate of the line laser coordinate system at T0 coordinate;

[0018] is the value of the Y-axis coordinate of the line laser coordinate system at T0 coordinate;

[0019] is the value of the Z-axis coordinate of the line laser coordinate system at the T0 coordinate.

[0020] Therefore, it has become an urgent problem to be solved in the industry to provide a method for geometric decoupling of line laser calibration in the robot system, which can solve the linear programming calculation of the least squares method and quickly and accurately calculate the position and posture of the line laser in the robot coordinate system. Summary of the invention

[0021] The purpose of the present invention is to provide a geometric decoupling method for calibrating a line laser in a robot system. The geometric decoupling method includes converting a nonlinear equation group containing Euler angles into a linear equation group and mathematical methods such as the least squares method. A one-time measurement and a step-by-step calculation method of the position and posture matrix of the line laser are adopted. The line laser system can be calibrated simply, quickly, accurately and stably. At the same time, the geometric decoupling and the linear programming calculation of the least squares method are solved. The method has the characteristics of fast calculation and high precision, and can quickly realize online calibration.

[0022] In order to achieve the above-mentioned object, the first object of the present invention is to provide a geometric decoupling method for calibrating a line laser in a robot system, comprising: step (1), calculating the posture matrix of the line laser coordinate system in the robot T0 coordinate system Perform at least three groups of laser line measurements, and obtain the value of the center of the standard sphere calculated by at least three groups of laser lines in the line laser coordinate system, obtain the position value of each laser line in the robot T0 coordinate system in the at least three groups of laser lines, obtain the posture and position value of the robot T0 coordinate system in the robot world coordinate system in the state of each laser line in at least three groups of laser lines, wherein each group of line lasers includes the first laser line and the second laser line, and the movement of the robot in the first line laser and the second line laser is a translational movement, and calculate and obtain the posture matrix The corresponding 9 unknown quantities; step (2), judging and optimizing the values ​​obtained in step (1); and step (3), calculating the position value of the line laser coordinate system in the robot T0 coordinate system In each set of data with the same posture, the coordinates of the center of a standard ball in the robot coordinate system are extracted to form an overdetermined set of equations. The equations are simplified to become the left side with position values. The least squares method is used to calculate the system of equations, and the position value is solved by the matrix equation

[0023] Among them, in step (1), the position calculation theory of the line laser coordinate system in the robot Tool0 coordinate system is: calculate the position matrix of the line laser coordinate system in the robot T0 coordinate system represented by formula (3). In the calibration process, a calibration sphere with a standard radius of R is used. According to robot knowledge, the coordinates of the center of the standard sphere calculated by the first laser line in the robot coordinate system are:

[0024]

[0025] In formula (4),

[0026] is the posture of the robot T0 coordinate system in the robot world coordinate system;

[0027] is the position of the robot's T0 coordinate system in the robot's world coordinate system;

[0028] is the posture of the line laser in the robot's T0 coordinate system;

[0029] is the position of the line laser in the robot's T0 coordinate system;

[0030] l1 is the value of the center of the standard sphere calculated by the first laser line in the linear laser coordinate system.

[0031] The coordinates of the center of the standard sphere calculated by the second laser line in the robot coordinate system are:

[0032]

[0033] In formula (5),

[0034] is the posture of the robot T0 coordinate system in the world coordinate system;

[0035] is the position of the robot's T0 coordinate system in the world coordinate system;

[0036] is the posture of the line laser in the robot's T0 coordinate system;

[0037] is the position of the line laser in the robot's T0 coordinate system;

[0038] l2 is the value of the center of the standard sphere calculated by the second laser line in the linear laser coordinate system.

[0039] Since the position of the center of the standard calibration ball in the robot system is unchanged, equation (4) and equation (5) are equal, that is,

[0040]

[0041]

[0042] According to formula (7), if we assume equal And multiply by The inverse matrix of , formula (7) can be simplified as:

[0043]

[0044] According to the above theoretical derivation, in order to obtain formula (8), it is necessary to ensure That is to ensure that the robot's T0 posture is the same, that is, to ensure that the robot's movement in the first laser line and the second laser line is translation; the position value can be obtained through translation under the premise of ensuring that the T0 posture remains unchanged. Using the same method, measure N groups of laser lines again. To ensure that formula 8 can be solved, at least 3 groups of measurements are required. The data of multiple measurements can be solved using the least squares method.

[0045] Optionally, in step (1), five sets of laser line measurements are performed.

[0046] Optionally, step (1) includes: (1-1), measuring and obtaining the value of the center of the standard sphere calculated by the five groups of laser lines in the linear laser coordinate system, measuring and obtaining the position value of each laser line in the five groups of laser lines in the robot T0 coordinate system, measuring and obtaining the posture and position value of the robot T0 coordinate system in the robot world coordinate system under the state of each laser line in the five groups of laser lines, wherein the posture of the robot T0 coordinate system in the robot world coordinate system under the first laser line of the first group is The posture of the robot T0 coordinate system under the first laser line of the second group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the third group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the fourth group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the fifth group in the robot world coordinate system is: (1-2) Set the center difference of each group of standard spheres calculated by the first laser line in the laser coordinate system minus the center difference of the standard sphere calculated by the second laser line in the laser coordinate system as the center difference, and obtain the center difference of the standard sphere measured by the first two laser lines: l12, the center difference of the standard sphere measured by the second two laser lines: l34, the center difference of the standard sphere measured by the third two laser lines: l56, the center difference of the standard sphere measured by the fourth two laser lines: l78, the center difference of the standard sphere measured by the fifth two laser lines: l81, the center difference of the standard sphere measured by the fifth two laser lines: l93, the center difference of the standard sphere measured by the fifth two laser lines: l177, the center difference of the standard sphere measured by the fifth two laser lines: l188, the center difference of the standard sphere measured by the fifth two laser lines: l194, the center difference of the standard sphere measured by the fifth two laser lines: l20 The center difference of the sphere is l910; (1-3) the position value of the second laser line in each group of laser lines in the robot T0 coordinate system is set to subtract the position value of the first laser line in the robot T0 coordinate system, and the difference P21 of the T0 position values ​​of the first two laser lines, the difference P43 of the T0 position values ​​of the second two laser lines, the difference P65 of the T0 position values ​​of the third two laser lines, the difference P87 of the T0 position values ​​of the fourth two laser lines, and the difference P109 of the T0 position values ​​of the fifth two laser lines; (1-4), setting formula (a) and formula (b)

[0047]

[0048]

[0049] Reset

[0050]

[0051] Among them, in formula (c), l12 T 、l34 T 、l56 T 、l78 T 、l910 Tare the transposed matrices of the first to fifth groups of sphere center vector difference matrices respectively;

[0052] (1-5) Setting

[0053]

[0054] (1-6), according to formula (d), construct the matrix and obtain formula (e), formula (f) and formula (g):

[0055]

[0056]

[0057]

[0058] Wherein, the subscripts 1, 2, and 3 in formula (e), formula (f), and formula (g) represent the first, second, and third elements of the corresponding vectors, respectively; and (1-7), according to steps (1-1) to (1-6), the 9 unknown quantities in formula (b) are calculated as follows:

[0059]

[0060]

[0061]

[0062] (1-8) Calculate the posture matrix of the line laser coordinate system in the robot T0 coordinate system

[0063] Among them, in (1-3), and is the position of the robot's T0 coordinate system in the robot's world coordinate system; therefore is the difference between the T0 position values ​​of the two laser lines in the world coordinate system. Since both laser lines and T0 are translational motions, the position difference is the same. Then, by setting And formula (8) The difference in position values ​​of the robot's T0 coordinate system in the world coordinate system is equal to the difference in position values ​​of the two laser lines T0.

[0064] Optionally, step (2) includes: (2-1) determining the orthogonality of the angles between the three column vectors in equation (b); and (2-2) normalizing the three column vectors obtained after completing step (2-1).

[0065] Optionally, in step (2-1), the angles between the three column vectors in formula (b) are orthogonalized using formula (k):

[0066]

[0067] When the difference between the calculated angle and 90° is within the range of ±0.1°, the attitude matrix of the line laser coordinate system obtained in step (1) in the robot T0 coordinate system is determined as The accuracy requirement is met; when the difference between the calculated angle and 90° exceeds the range of ±0.1°, the laser line in step (1) is remeasured and calculated until the difference between the calculated angle and 90° is within the range of ±0.1°.

[0068] Optionally, if the difference between the calculated angle and 90° is within the range of ±0.05°, the posture matrix of the line laser coordinate system obtained in step (1) in the robot T0 coordinate system is determined as Meet the accuracy requirements.

[0069] Optionally, in step (2-2), the steps include: (2-2-1), respectively setting the three column vectors in equation (b) to obtain equation (1);

[0070]

[0071] Normalize the three column vectors in step (2-2-1) to obtain formula (m);

[0072]

[0073] Calculating A=X in formula (m) to obtain formula (n) and obtaining the first column elements of formula (b); and

[0074]

[0075] (2-2-4) According to step (2-2-3), calculate the vector B and vector C in formula (m) respectively, obtain the second column element and the third column element of formula (b), and obtain the posture matrix of the line laser coordinate system in the robot T0 coordinate system

[0076]

[0077] Preferably, in step (3), it includes: (3-1) constructing an overdetermined set of equations (o):

[0078]

[0079] Among them, in formula (o) is the posture of the line laser in the robot's T0 coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the first group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the second group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the third group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the fourth group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the fifth group in the robot world coordinate system; is the position value of the line laser in the robot T0 coordinate system; l1 is the value of the center of the standard sphere calculated by the first laser line of the first group in the online laser coordinate system, l3 is the value of the center of the standard sphere calculated by the first laser line of the second group in the online laser coordinate system, l5 is the value of the center of the standard sphere calculated by the first laser line of the third group in the online laser coordinate system, l7 is the value of the center of the standard sphere calculated by the first laser line of the fourth group in the online laser coordinate system, l9 is the value of the center of the standard sphere calculated by the first laser line of the first group in the online laser coordinate system; (3-2), simplify equation (o) to obtain equation group (p);

[0080]

[0081] (3-3), calculate the equation group (p) and construct the matrices (q) and (r);

[0082]

[0083]

[0084] (3-4), simplify the equation system (p) through matrices (q) and (r) to obtain the matrix equation (s); and

[0085]

[0086] (3-5) Calculate the position of the line laser coordinate system in the robot T0 coordinate system using the matrix equation (t)

[0087]

[0088] Optionally, in step (3-1), an overdetermined set of equations (o) is constructed by extracting one from each set of data with the same posture.

[0089] Optionally, in step (3-3) and step (3-5), calculation is performed by the least squares method.

[0090] The beneficial effects of the present invention are: (1) the nonlinear coupling problem of Euler angles is solved by using the method of geometric decoupling, and at the same time, the nonlinear coupling terms in the equation group are eliminated by using the translational motion of the robot to ensure that the rotation matrix of the equation group is the same. Finally, the least squares method is used to solve the linear equation group to obtain the attitude matrix of the line laser and then solve the position variable. While decoupling the parameters in the attitude matrix, the coupling between the attitude matrix and the position matrix parameters is also decoupled. More data can be collected according to the user's accuracy requirements to improve the calibration accuracy without affecting the convergence stability. (2) It has high calculation accuracy, fast calculation speed, and can ensure the stability of convergence, and can simply, quickly and accurately realize line laser calibration. BRIEF DESCRIPTION OF THE DRAWINGS

[0091] Figure 1 The figure is a schematic diagram of the steps of the geometric decoupling method for calibrating a line laser in a robot system according to the present invention. DETAILED DESCRIPTION

[0092] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present invention, and should not be construed as limiting the present invention.

[0093] First, please refer to Figure 1 As a non-limiting embodiment, the geometric decoupling method of the line laser calibration in the robot system of the present invention first calculates the posture matrix of the line laser coordinate system in the robot T0 coordinate system in step S1. Perform at least three groups of laser line measurements, and obtain the value of the center of the standard sphere calculated by at least three groups of laser lines in the line laser coordinate system, obtain the position value of each laser line in the robot T0 coordinate system in the at least three groups of laser lines, obtain the posture and position value of the robot T0 coordinate system in the robot world coordinate system in the state of each laser line in at least three groups of laser lines, wherein each group of line lasers includes the first laser line and the second laser line, and the movement of the robot in the first line laser and the second line laser is a translational movement, and calculate and obtain the posture matrix Then, in step S2, the value obtained in step S1 is judged and optimized. Finally, in step S3, the position value of the line laser coordinate system in the robot T0 coordinate system is calculated. In each set of data with the same posture, the coordinates of the center of a standard ball in the robot coordinate system are extracted to form an overdetermined set of equations. The equations are simplified to become the left side with position values. The least squares method is used to calculate the system of equations, and the position value is solved by the matrix equation

[0094] The calculation theory of step S1 is: the position matrix of the calculated line laser coordinate system in the robot T0 coordinate system is expressed by formula (3). In the calibration process, a calibration sphere with a standard radius of R is used. According to robot knowledge, the coordinates of the center of the standard sphere calculated by the first laser line in the robot coordinate system are:

[0095]

[0096] In formula (4),

[0097] is the posture of the robot T0 coordinate system in the robot world coordinate system;

[0098] is the position of the robot's T0 coordinate system in the robot's world coordinate system;

[0099] is the posture of the line laser in the robot's T0 coordinate system;

[0100] is the position of the line laser in the robot's T0 coordinate system;

[0101] l1 is the value of the center of the standard sphere calculated by the first laser line in the linear laser coordinate system.

[0102] The coordinates of the center of the standard sphere calculated by the second laser line in the robot coordinate system are:

[0103]

[0104] In formula (5),

[0105] is the posture of the robot T0 coordinate system in the world coordinate system;

[0106] is the position of the robot's T0 coordinate system in the world coordinate system;

[0107] is the posture of the line laser in the robot's T0 coordinate system;

[0108] is the position of the line laser in the robot's T0 coordinate system;

[0109] l2 is the value of the center of the standard sphere calculated by the second laser line in the linear laser coordinate system.

[0110] Since the position of the center of the standard calibration ball in the robot system is unchanged, equation (4) and equation (5) are equal, that is,

[0111]

[0112]

[0113] According to formula (7), if we assume equal And multiply by The inverse matrix of , formula (7) can be simplified as:

[0114]

[0115] According to the above theoretical derivation, if we want to obtain formula (8), due to the assumption equal When teaching each pair of laser lines, for example, the first laser line and the second laser line, to ensure To ensure that the robot's T0 posture is the same, that is, to ensure that the robot's movement on the first laser line and the second laser line is translation; the position value can be obtained through translation under the premise of ensuring that the T0 posture remains unchanged. Using the same method, measure N groups of laser lines again. In order to ensure that equation (8) is solvable, at least 3 groups of measurements are required. The data of multiple measurements can be used to solve equation group (8) using the least squares method.

[0116] Therefore, for the convenience of mathematical representation, as a non-limiting implementation method, the following settings are made taking 5 groups as an example.

[0117] First, measure and obtain the value of the center of the standard sphere calculated by five groups of laser lines in the linear laser coordinate system, according to the group order and laser line sequence of the first group of first laser lines, the first group of second laser lines, the second group of first laser lines, and the second group of second laser lines, which are l1, l2, l3, l4, l5, l6, l7, l8, l9, and l10 respectively.

[0118] Measure and obtain the position value of each laser line in the robot T0 coordinate system in the five groups of laser lines, and measure and obtain the posture and position value of the robot T0 coordinate system in the robot world coordinate system under the state of each laser line in the five groups of laser lines. Among them, the posture of the robot T0 coordinate system in the robot world coordinate system under the first laser line of the first group is The posture of the robot T0 coordinate system under the first laser line of the second group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the third group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the fourth group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the fifth group in the robot world coordinate system is:

[0119] Set the value of the center of the standard sphere calculated by the first laser line in the linear laser coordinate system minus the value of the center of the standard sphere calculated by the second laser line in the linear laser coordinate system as the center difference value, for example l12=l1-l2, thereby obtaining the center difference value l12 of the standard sphere measured by the first two laser lines, the center difference value l34 of the standard sphere measured by the second two laser lines, the center difference value l56 of the standard sphere measured by the third two laser lines, the center difference value l78 of the standard sphere measured by the fourth two laser lines, and the center difference value l910 of the standard sphere measured by the fifth two laser lines.

[0120] Set the position value of the second laser line in each group of laser lines in the robot T0 coordinate system minus the position value of the first laser line in the robot T0 coordinate system, for example Obtain the difference P21 of the T0 position values ​​of the first two laser lines, the difference P43 of the T0 position values ​​of the second two laser lines, the difference P65 of the T0 position values ​​of the third two laser lines, the difference P87 of the T0 position values ​​of the fourth two laser lines, and the difference P109 of the T0 position values ​​of the fifth two laser lines.

[0121]

[0122] make is equal to formula (3), that is:

[0123]

[0124] make

[0125]

[0126] Among them, in formula (c), l12 T 、l34 T 、l56 T 、l78 T 、l910 T are the transposed matrices of the first to fifth groups of sphere center vector difference matrices respectively;

[0127] make

[0128]

[0129] According to formula (d), reconstruct the matrix:

[0130]

[0131]

[0132]

[0133] The subscripts 1, 2, and 3 in formula (e), formula (f), and formula (g) represent the first, second, and third elements of the corresponding vectors, respectively.

[0134] According to formula (a) to formula (g), the 9 unknown quantities in formula (3) can be calculated as follows:

[0135]

[0136]

[0137]

[0138] The 9 unknown quantities in formula (3) calculated by formula (h), (i), and (j) have various reasons for errors in the process of numerical measurement and calculation. For example, the posture of robot T0 cannot be consistent when measuring the two laser lines in each group; or the effective numerical lengths intercepted by the calculated numerical values ​​are different, etc. Therefore, after calculating the 9 unknown quantities in formula (3), the calculated numerical values ​​need to be judged and optimized.

[0139] The line laser coordinate system generated by the three column vectors in equation (3) should theoretically be a standard normalized orthogonal coordinate system. However, due to the reasons for the errors mentioned above, its orthogonality and normalization need to be checked and judged to determine the correctness of the calculated equation (3).

[0140] As another non-limiting implementation, in step (2-1), the orthogonality of the three column vectors in formula (3) is determined using the angle between the three column vectors.

[0141]

[0142] Formula (k) is used to determine whether the three column vectors are orthogonal. If the difference between the calculated angle and 90° is within ±0.05°, the accuracy requirement is met; otherwise, re-measure and recalculate. Of course, the accuracy range can be appropriately relaxed according to the accuracy requirements, such as ±0.1°.

[0143] As another non-limiting implementation, when the calculated values ​​are normalized, the three column vectors in equation (3) are set respectively to obtain equation (1);

[0144]

[0145] The following is the normalization calculation of the three column vectors:

[0146] make

[0147] but

[0148]

[0149] Similarly, vector B and vector C are used to calculate the elements of the second and third columns of formula (3) respectively.

[0150] At this point, through the above three steps of measurement, calculation, and optimization, the posture matrix of the line laser coordinate system in the robot T0 coordinate system is calculated:

[0151]

[0152] In this non-limiting embodiment, in the aforementioned In the matrix calculation, the position term of the line laser in the robot T0 coordinate system is eliminated by ensuring that the posture of the robot T0 of each group of two laser lines is the same. In decoupling While removing 9 unknown quantities in the matrix, the coupling between attitude parameters and position parameters is also decoupled.

[0153] From formula (7), we know that a set of measurements with the same robot posture eliminates the coupling between posture parameters and position parameters. Under the premise of matrix, it is necessary to reconstruct the matrix calculation

[0154] For calculation It is necessary to extract one from each group of data with the same posture to form an overdetermined system of equations:

[0155]

[0156] Among them, in formula (o) is the posture of the line laser in the robot's T0 coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the first group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the second group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the third group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the fourth group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the fifth group in the robot world coordinate system; is the position value of the line laser in the robot T0 coordinate system; l1 is the value of the center of the standard sphere calculated by the first laser line of the first group in the online laser coordinate system, l3 is the value of the center of the standard sphere calculated by the first laser line of the second group in the online laser coordinate system, l5 is the value of the center of the standard sphere calculated by the first laser line of the third group in the online laser coordinate system, l7 is the value of the center of the standard sphere calculated by the first laser line of the fourth group in the online laser coordinate system, l9 is the value of the center of the standard sphere calculated by the first laser line of the first group in the online laser coordinate system.

[0157] Simplify the equation system (o), the left side contains the unknown term Item:

[0158]

[0159] Next, the least square method is used to calculate the equation group (24). For the convenience of mathematical representation, the following matrix is ​​constructed:

[0160]

[0161]

[0162] According to the coefficient matrices (q) and (r), the equation system (p) is simplified to the matrix equation:

[0163]

[0164] Using the least squares method, the matrix equation is solved

[0165]

[0166] The geometric decoupling method for calibrating the line laser in the robot system of the present invention is verified on the ABB IRB 6700 robot and the LMI 2340 line laser. The method can calibrate the line laser system simply, quickly, accurately and stably, and at the same time solves the geometric decoupling and the linear programming calculation of the least squares method. It has the characteristics of fast calculation and high precision, and can quickly realize online calibration.

[0167] It can be seen that the present invention uses the method of geometric decoupling to solve the nonlinear coupling problem of Euler angles, and uses the translational motion of the robot to ensure that the rotation matrix of the equation group is the same to eliminate the nonlinear coupling terms in the equation group, and finally uses the least squares method to solve the linear equation group to obtain the posture matrix of the line laser and then solve the position variable; while decoupling the parameters in the posture matrix, the coupling between the posture matrix and the position matrix parameters is also decoupled. This method can collect more data according to the user's accuracy requirements to improve the calibration accuracy without affecting the stability of the convergence.

[0168] Although the preferred embodiments of the present invention have been described in detail herein, it is to be understood that the present invention is not limited to the specific structures and steps described and shown in detail herein, and other variations and modifications may be implemented by those skilled in the art without departing from the spirit and scope of the present invention.

Claims

1. A geometric decoupling method for line laser calibration in a robot system, characterized in that: include: (1) Calculate the posture matrix of the line laser coordinate system in the robot T0 coordinate system Perform at least three groups of laser line measurements, and obtain the value of the center of the standard sphere calculated by the at least three groups of laser lines in the linear laser coordinate system, obtain the position value of each laser line in the at least three groups of laser lines in the robot T0 coordinate system, obtain the posture and position value of the robot T0 coordinate system in the robot world coordinate system under the state of each laser line in the at least three groups of laser lines, wherein each group of laser lines includes a first laser line and a second laser line, and the movement of the robot in the first laser line and the second laser line is a translational movement, and calculate and obtain the posture matrix The corresponding 9 unknown quantities; (2) judging and optimizing the value obtained in step (1); and (3) Calculate the position value of the line laser coordinate system in the robot T0 coordinate system In each set of data with the same posture, the coordinates of the center of a standard ball in the robot coordinate system are extracted to form an overdetermined set of equations. The set of equations is simplified to become the left side containing the position value The least squares method is used to calculate the equation system, and the position value is solved by the matrix equation In step (1), five sets of laser line measurements are performed; Step (1) comprises: (1-1), measure and obtain the value of the center of the standard sphere calculated by the five groups of laser lines in the linear laser coordinate system, measure and obtain the position value of each laser line in the five groups of laser lines in the robot T0 coordinate system, measure and obtain the posture and position value of the robot T0 coordinate system in the robot world coordinate system under the state of each laser line in the five groups of laser lines, wherein the posture of the robot T0 coordinate system in the robot world coordinate system under the first laser line of the first group is The posture of the robot T0 coordinate system under the first laser line of the second group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the third group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the fourth group in the robot world coordinate system is: The posture of the robot T0 coordinate system under the first laser line of the fifth group in the robot world coordinate system is: (1-2) Set the value of the center of the standard sphere calculated by the first laser line in the laser coordinate system minus the value of the center of the standard sphere calculated by the second laser line in the laser coordinate system as the center difference value, and obtain the center difference value of the standard sphere measured by the first two laser lines as l12, the center difference value of the standard sphere measured by the second two laser lines as l34, the center difference value of the standard sphere measured by the third two laser lines as l56, the center difference value of the standard sphere measured by the fourth two laser lines as l78, and the center difference value of the standard sphere measured by the fifth two laser lines as l910; (1-3) Set the position value of the second laser line in each group of laser lines in the robot T0 coordinate system minus the position value of the first laser line in the robot T0 coordinate system, and obtain the difference P21 of the T0 position values ​​of the two laser lines in the first group, the difference P43 of the T0 position values ​​of the two laser lines in the second group, the difference P65 of the T0 position values ​​of the two laser lines in the third group, the difference P87 of the T0 position values ​​of the two laser lines in the fourth group, and the difference P109 of the T0 position values ​​of the two laser lines in the fifth group; (1-4), setting formula (a) and formula (b) Reset Among them, in formula (c), l12 T 、l34 T 、l56 T 、l78 T 、l910 T are the transposed matrices of the first to fifth groups of sphere center vector difference matrices respectively; (1-5) Setting (1-6), according to formula (d), construct the matrix and obtain formula (e), formula (f) and formula (g): Wherein, the subscripts 1, 2, and 3 in formula (e), formula (f), and formula (g) represent the first, second, and third elements of the corresponding vectors, respectively; and (1-7), according to steps (1-1) to (1-6), the 9 unknown quantities in formula (b) are calculated as follows: (1-8) Calculate the posture matrix of the line laser coordinate system in the robot T0 coordinate system 2. The geometric decoupling method for line laser calibration in a robot system according to claim 1, characterized in that: Step (2) comprises: (2-1) Determine the orthogonality of the angles between the three column vectors in equation (b); and (2-2) Normalize the three column vectors obtained in step (2-1).

3. The geometric decoupling method for line laser calibration in a robot system according to claim 2, characterized in that: In step (2-1), use formula (k) to determine the orthogonality of the angles between the three column vectors in formula (b): When the difference between the calculated angle and 90° is within the range of ±0.1°, it is determined that the posture matrix of the line laser coordinate system obtained in step (1) in the robot T0 coordinate system meets the accuracy requirement; When the difference between the calculated angle and 90° exceeds the range of ±0.1°, the laser line in step (1) is remeasured and calculated until the difference between the calculated angle and 90° is within the range of ±0.1°.

4. The geometric decoupling method for line laser calibration in a robot system according to claim 3, characterized in that: If the difference between the calculated angle and 90° is within the range of ±0.05°, it is determined that the posture matrix of the line laser coordinate system obtained in step (1) in the robot T0 coordinate system meets the accuracy requirement.

5. The geometric decoupling method for line laser calibration in a robot system as claimed in claim 3, characterized in that: In step (2-2), it includes: (2-2-1), set the three column vectors in equation (b) respectively, and get equation (l); X=(x1x2x3) T <h2 style=";text-align:left;direction:ltr">Y = (y1y2y3)<h2 style=";text-align:left;direction:ltr"> T z=(z1z2 z3) T (l) (2-2-2) Normalize the three column vectors in step (2-2-1) to obtain formula (m); A=X (2-2-3), calculating A=X in formula (m) to obtain formula (n), and obtaining the first column element of formula (b); and (2-2-4) According to step (2-2-3), calculate the vector B and vector C in formula (m) respectively, obtain the second column element and the third column element of formula (b), and obtain the posture matrix of the line laser coordinate system in the robot T0 coordinate system 6. The geometric decoupling method for line laser calibration in a robot system according to claim 5, characterized in that: In step (3), it includes: (3-1) Construct an overdetermined system of equations (o): Among them, the equation (o) is the posture of the line laser in the robot T0 coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the first group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the second group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the third group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the fourth group in the robot world coordinate system, is the position value of the robot T0 coordinate system under the first laser line of the fifth group in the robot world coordinate system; is the position value of the line laser in the robot T0 coordinate system; l1 is the value of the center of the standard sphere calculated by the first laser line of the first group in the online laser coordinate system, l3 is the value of the center of the standard sphere calculated by the first laser line of the second group in the online laser coordinate system, l5 is the value of the center of the standard sphere calculated by the first laser line of the third group in the online laser coordinate system, l7 is the value of the center of the standard sphere calculated by the first laser line of the fourth group in the online laser coordinate system, l9 is the value of the center of the standard sphere calculated by the first laser line of the first group in the online laser coordinate system; (3-2), simplify equation (o) to obtain equation system (p); (3-3), calculate the equation group (p) and construct the matrices (q) and (r); (3-4), simplify the equation system (p) through matrices (q) and (r) to obtain the matrix equation (s); and (3-5) Calculate the position of the line laser coordinate system in the robot T0 coordinate system using the matrix equation (t) 7. The geometric decoupling method for line laser calibration in a robot system according to claim 6, characterized in that: In step (3-1), the overdetermined set of equations (o) is constructed by extracting one from each set of data with the same posture.

8. The geometric decoupling method for line laser calibration in a robot system according to claim 6, characterized in that: In steps (3-3) and (3-5), calculations are performed using the least squares method.

Citation Information

Patent Citations

  • Point laser ray calibration method and system used for robot assembling

    CN109773686A

  • Moving target direction angle acquisition method and terminal equipment

    CN110579738A