A six-axis universal robot calibration method
By introducing the Levenberg-Marquard algorithm into the robot calibration method, considering the influence of multiple parameters and mechanical coupling, the problem of insufficient calibration accuracy in the prior art is solved, and a higher calibration accuracy is achieved.
Patent Information
- Application Number
- CN202210527027.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-16
- Publication Date
- 2025-05-06
- Estimated Expiration
- 2042-05-16
AI Technical Summary
The existing robot calibration methods fail to effectively consider parameter errors caused by component manufacturing accuracy and assembly accuracy, resulting in a decrease in robot control accuracy.
The six-axis universal robot calibration method based on the Levenberg-Marquard algorithm is adopted to improve calibration accuracy by considering the link parameters, acceleration ratio parameters, joint zero points parameters, mechanical coupling of 5 and 6 axes, and tool coordinates.
The robot calibration accuracy is effectively improved, the error factors generated during installation are fully considered, and the best calibration parameters are obtained through iterative calculations.
Smart Images

Figure CN115026809B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot control technology, and in particular to a six-axis universal robot calibration method based on a Levenberg-Marquard algorithm. Background Art
[0002] The application of industrial robots in industrial production has become more and more extensive, and the requirements for their accuracy are getting higher and higher. However, due to the limitations of the manufacturing accuracy of industrial robot parts and assembly accuracy, it is inevitable that there are certain errors in the various parameters of industrial robots. However, the current robot calibration process does not take into account the impact of these errors, resulting in reduced accuracy of robot control. Therefore, a corresponding calibration method is urgently needed to measure parameter errors in order to improve the control accuracy of the robot. Summary of the invention
[0003] The purpose of the present invention is to provide a six-axis universal robot calibration method based on the Levenberg-Marquard algorithm, which takes into account the influence of connecting rod parameters, acceleration ratio parameters, joint zero point parameters, mechanical coupling of 5-axis and 6-axis and tool coordinates during the calibration process, thereby effectively improving the calibration accuracy of the robot.
[0004] To achieve the above object, the technical solution adopted by the present invention is:
[0005] A six-axis universal robot calibration method based on the Levenberg-Marquard algorithm comprises the following steps:
[0006] Step 1: Set up a general six-axis robot and fix the target ball at a suitable position at the end of the robot;
[0007] Step 2: Set the maximum number of iterations m, initialize the number of iterations i to 0, and set the minimum value ε;
[0008] Step 3: Use the teaching pendant to generate n different joint spatial postures, where n is not less than 50, and at least one pair of joint angles in two adjacent groups of corresponding joint angles differs by no less than 15°;
[0009] Step 4: Use the DH method to obtain the end position of the n joint space poses, obtain the Jacobian matrix J of the calibration parameters, and use a laser tracker to measure the end position;
[0010] Step 5: Construct the transformation matrix of the solution position and the measurement position according to the SVD method, use the transformation matrix to obtain the new solution position, and obtain the position coordinate error vector:
[0011] Step 6: According to the distance between the Jacobian matrix and the corresponding points, find: Hessian matrix H = (J T·J+μ·I), error vector g=J T L, update calibration parameter η i+1 =η i +H -1 g, iteration count plus 1, i++;
[0012] Step 7: Determine whether the modulus of the error vector is less than the minimum value ε. If it is less than the minimum value, derive the calibration parameters directly.
[0013] Step 8. If the modulus of the error vector is greater than the minimum value ε, determine whether the current error is smaller than the previous error. If it is smaller, set μ = μ / 10. If it is larger than the previous error, set μ = μ × 10, and bring in the calibration parameters to continue solving the end position.
[0014] In step 4, the terminal position is obtained using the DH method as follows:
[0015] Establish the connecting rod coordinate system: z0, z1, z2, z3, z4, z5 are the rotation axes of joints 1, 2, 3, 4, 5, and 6; the origin of system 1 is offset by L1 along the x1 direction and L2 along the z0 direction relative to the origin of system 0, and the z1 axis rotates from the z0 axis around the x0 axis We get: the origin of system 2 is offset by L3 along the x2 direction relative to the origin of system 1, and the x2 axis rotates from the x1 axis around the z1 axis. We get: the origin of system 3 is offset by L4 along the x3 direction relative to the origin of system 2, and the z3 axis rotates from the z2 axis around the x2 axis. We get: the origin of system 4 is offset by L5 along the z3 direction relative to the origin of system 3, and the z4 axis rotates from the z3 axis around the x3 axis. Get; z5 axis rotates from z4 axis around x4 axis It is obtained that the origin of system 6 is offset by L6 along the z5 axis relative to the origin of system 5;
[0016] Determine the calibration parameters as follows:
[0017]
[0018] When there is mechanical coupling between the 5th and 6th axes, the influence coefficient is set to r 56 , the calibration parameters of the 5th and 6th axes are updated as follows:
[0019]
[0020]
[0021] Based on the above correction parameters, the end position of the six-axis robot is:
[0022]
[0023]
[0024] When mechanical coupling exists, A6 includes parameter k5 in A5:
[0025]
[0026]
[0027] The relationship between the actual rotation of the 6-axis and the designed rotation is: R a =R d +r 56
[0028]
[0029] in:
[0030]
[0031] The Jacobian matrix of the tool coordinate system is:
[0032]
[0033] In step 4, the Jacobian matrix of the calibration parameters is:
[0034] The p-th pose Jacobian matrix is:
[0035]
[0036] The complete Jacobian matrix is:
[0037]
[0038] In step 5, the pose of the transformation matrix is obtained as follows:
[0039] (1) Randomly select n points in the robot joint workspace and solve the position of the tool system relative to the robot base as follows:
[0040]
[0041] (2) The actual positions of these n points are measured by a laser tracker, and the actual positions of the n points relative to the laser tracker are described as:
[0042]
[0043] (3) Find the centroid of n points:
[0044] (4) Calculate the relative offset of each point set relative to the centroid coordinates:
[0045]
[0046]
[0047] (5) From point set Constructing the co-matrix
[0048] (6) Perform SVD decomposition on the co-matrix:
[0049]
[0050] (7) The rotation matrix is R 3×3 =VU T , the translation matrix is T 3×1 =μ s -Rμ m , then the transformation matrix from the laser tracker's measured position to the robot's solved position is:
[0051]
[0052] In step 5, the new solution position is obtained using the transformation matrix:
[0053] Right now:
[0054]
[0055] In step 5, the position coordinate error vector is obtained as:
[0056]
[0057] The effective value of the coordinate error of the n points is:
[0058]
[0059] After adopting the above scheme, the present invention analyzes the DH parameters and calibration parameters of the six-axis universal robot, and comprehensively considers the mechanical coupling of the 5th and 6th axes and the influence of the tool coordinates, and finally determines 22 calibration parameters; in the process of solving the calibration parameters, the present invention establishes a kinematic forward solution model of the six-axis universal robot based on the calibration parameters finally determined, solves the robot terminal posture, and obtains the Jacobian matrix of the calibration parameters; then constructs a conversion matrix based on the SVD method to obtain the position coordinate error; finally, the Jacobian matrix and coordinate error of the calibration parameters are processed using the Levenberg-Marquard algorithm, and the optimal calibration parameters are obtained by iteration. The present invention fully considers the error factors generated when the robot is installed, and adds them as calibration parameters to the calibration process, thereby effectively improving the calibration accuracy of the robot. BRIEF DESCRIPTION OF THE DRAWINGS
[0060] Figure 1 This is a schematic diagram of the structure of a six-axis collaborative robot;
[0061] Figure 2 This is a schematic diagram of the mechanism of a six-axis collaborative robot;
[0062] Figure 3 This is a calibration flow chart of the present invention. DETAILED DESCRIPTION
[0063] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine different embodiments or examples described in this specification and the features of different embodiments or examples, unless they are contradictory.
[0064] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In the description of the present invention, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0065] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.
[0066] The present invention discloses a six-axis universal robot calibration method based on the Levenberg-Marquard algorithm, which comprises:
[0067] 1. Analysis of DH parameters and calibration parameters;
[0068] Reference Figure 1 and Figure 2As shown, the link coordinate system (0-6) is established, all of which are right-handed coordinate systems. z0, z1, z2, z3, z4, z5 are the rotation axes of joints 1, 2, 3, 4, 5, and 6; the origin of system 1 is offset by L1 along the x1 direction and L2 along the z0 direction relative to the origin of system 0, and the z1 axis rotates from the z0 axis around the x0 axis. We get: the origin of system 2 is offset by L3 along the x2 direction relative to the origin of system 1, and the x2 axis rotates from the x1 axis around the z1 axis. We get: the origin of system 3 is offset by L4 along the x3 direction relative to the origin of system 2, and the z3 axis rotates from the z2 axis around the x2 axis. We get: the origin of system 4 is offset by L5 along the z3 direction relative to the origin of system 3, and the z4 axis rotates from the z3 axis around the x3 axis. Get; z5 axis rotates from z4 axis around x4 axis It is obtained that the origin of system 6 is offset by L6 along the z5-axis direction relative to the origin of system 5.
[0069] Since the zero position setting of axis 1 and axis 6 has no effect on the robot algorithm solution, their zero point deviation is set to 0; the zero point deviations of axis 2, 3, 4, and 5 are θ o2 ,θ o3 ,θ o4 ,θ o5 ;The reduction ratio correction factors of each axis are k1, k2, k3, k4, k5, and k6.
[0070] Therefore, the DH parameters and calibration parameters are constructed as follows:
[0071]
[0072] Table 1
[0073] Since there is mechanical coupling between the 5th and 6th axes, the influence coefficient is set to r 56 ;
[0074]
[0075] Table 2
[0076] In summary, the six-axis general-purpose robot has a total of 22 calibration parameters.
[0077] The end position of the six-axis robot is:
[0078]
[0079]
[0080] When mechanical coupling exists, A6 includes parameter k5 in A5:
[0081]
[0082] At the same time, due to the mechanical coupling between the 5th and 6th axes, an additional coupling ratio correction parameter r is added. 56 It should be noted that the initial value of the correction parameter should be zero, not the design coupling ratio. In actual operation, after calibration, in the coupling ratio setting of the teach pendant, the coupling ratio value should be the design value plus the coupling ratio correction parameter.
[0083]
[0084] The relationship between the actual rotation of the 6-axis and the designed rotation is:
[0085] R a =R d +r 56
[0086]
[0087] in:
[0088]
[0089] The Jacobian matrix of the tool coordinate system is:
[0090]
[0091] Second, the SVD method is used to calculate the conversion matrix from the laser tracker's measured posture to the robot's solved posture;
[0092] (1) Randomly select n points in the robot joint workspace and use the above method to solve the general robot end position and posture to obtain the position of the tool system relative to the robot base:
[0093]
[0094] (2) The actual positions of these n points are measured by a laser tracker, and the actual positions of the n points relative to the laser tracker are described as:
[0095]
[0096] (3) Find the centroid of n points:
[0097]
[0098]
[0099] (4) Calculate the relative offset of each point set relative to the centroid coordinates:
[0100]
[0101]
[0102] (5) From point set Constructing the co-matrix
[0103]
[0104] (6) Perform SVD decomposition on the co-matrix:
[0105]
[0106] (7) The rotation matrix is R 3×3 =VU T , the translation matrix is T 3×1 =μ s -Rμ m , then the transformation matrix from the laser tracker's measured position to the robot's solved position is:
[0107]
[0108] 3. Solve the optimal calibration parameters based on the Levenberg-Marquard algorithm;
[0109] After the analysis of the first and second parts above, the optimal calibration parameters of the robot are solved as follows:
[0110] (1) Set up a general six-axis robot and fix the target ball at a suitable position at the end of the robot;
[0111] (2) Set the maximum number of iterations m, initialize the number of iterations i to 0, and set the minimum value ε = 0.001;
[0112] (3) Use the teaching pendant to generate n different joint spatial postures, where n is not less than 50, and at least one pair of joint angles in two adjacent groups of corresponding joint angles differs by no less than 15°;
[0113] (4) Using the DH method to obtain the end positions of the n joint spatial postures, and using a laser tracker to measure the end positions;
[0114] (5) constructing the transformation matrix of the solution position and the measurement position according to the SVD method;
[0115] (6) Use the transformation matrix to obtain the new solution position:
[0116] Right now:
[0117]
[0118] (7) The position coordinate error vector (dimension 3n rows, 1 column) is obtained as:
[0119]
[0120] The effective value of the coordinate error of the n points is:
[0121]
[0122] (8) Obtain the Jacobian matrix of the calibration parameters:
[0123] The p-th pose Jacobian matrix is:
[0124]
[0125] The complete Jacobian matrix is:
[0126]
[0127] (9) According to the Jacobian matrix and the distance between corresponding points, the Hessian matrix H = (J T ·J+μ·I), error vector g=J T L, update calibration parameter η i+1 =η i +H -1 g, iteration count value plus 1, i++;
[0128] (10) Determine whether the modulus of the error vector is less than the minimum value ε. If so, derive the calibration parameters directly.
[0129] (11) If the modulus of the error vector is greater than the minimum value ε, determine whether the current error is smaller than the previous error. If it is smaller, set μ = μ / 10. If it is larger, set μ = μ × 10, and substitute the calibration parameters to continue solving the end position.
[0130] In summary, the present invention analyzes the DH parameters and calibration parameters of the six-axis universal robot, and comprehensively considers the mechanical coupling of the 5th and 6th axes and the influence of the tool coordinates, and finally determines 22 calibration parameters; in the process of solving the calibration parameters, the present invention establishes a six-axis universal robot kinematics forward solution model based on the calibration parameters finally determined, solves the robot terminal posture, and obtains the Jacobian matrix of the calibration parameters; then constructs a transformation matrix based on the SVD method to obtain the position coordinate error; finally, the Jacobian matrix and coordinate error of the calibration parameters are processed using the Levenberg-Marquard algorithm, and the optimal calibration parameters are obtained by iteration. The present invention fully considers the error factors generated when the robot is installed, and adds them as calibration parameters to the calibration process, thereby effectively improving the calibration accuracy of the robot.
[0131] It is obvious to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential features of the present invention. Therefore, from any point of view, the embodiments should be regarded as exemplary and non-restrictive, and the scope of the present invention is defined by the appended claims rather than the above description, and it is intended that all changes falling within the meaning and scope of the equivalent elements of the claims are included in the present invention. Any figure mark in the claims should not be regarded as limiting the claims involved. In addition, it is obvious that the word "comprising" does not exclude other units or, and the singular does not exclude the plural. Multiple units or devices stated in the system claim may also be implemented by one unit or device through software or hardware. The words first, second, etc. are used to indicate names, and do not indicate any particular order.
[0132] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solution of the present invention can be modified or replaced by equivalents without departing from the spirit and scope of the technical solution of the present invention.
Claims
1. A six-axis universal robot calibration method based on the Levenberg-Marquard algorithm, characterized in that: The following steps are involved: Step 1: Set up a general six-axis robot and fix the target ball at a suitable position at the end of the robot; Step 2: Set the maximum number of iterations m, initialize the number of iterations i to 0, and set the minimum value ; Step 3: Use the teaching pendant to generate n different joint spatial postures, where n is not less than 50, and at least one pair of joint angles in two adjacent groups of corresponding joint angles differs by no less than 15°; Step 4: Use the DH method to obtain the terminal poses of the n joint space poses and obtain the Jacobian matrix of the calibration parameters. , and measuring the end position using a laser tracker; In step 4, the terminal position is obtained using the DH method as follows: Establish the connecting rod coordinate system: z0, z1, z2, z3, z4, z5 are the rotation axes of joints 1, 2, 3, 4, 5, and 6; the origin of system 1 is offset by L1 along the x1 direction and L2 along the z0 direction relative to the origin of system 0, and the z1 axis rotates from the z0 axis around the x0 axis We get: the origin of system 2 is offset by L3 along the x2 direction relative to the origin of system 1, and the x2 axis rotates from the x1 axis around the z1 axis. We get: the origin of system 3 is offset by L4 along the x3 direction relative to the origin of system 2, and the z3 axis rotates from the z2 axis around the x2 axis. We get: the origin of system 4 is offset by L5 along the z3 direction relative to the origin of system 3, and the z4 axis rotates from the z3 axis around the x3 axis - Get; z5 axis rotates from z4 axis around x4 axis It is obtained that the origin of system 6 is offset by L6 along the z5 axis relative to the origin of system 5; Determine the calibration parameters as follows: When there is mechanical coupling between the 5th and 6th axes, the influence coefficient is set to , the calibration parameters of the 5th and 6th axes are updated as follows: Based on the above calibration parameters, the end position of the six-axis robot is: When mechanical coupling exists, Include Parameters in Then we have: The relationship between the actual rotation of the 6-axis and the designed rotation is: The Jacobian matrix of the tool coordinate system is: ; In step 4, the Jacobian matrix of the calibration parameters is: The complete Jacobian matrix is: ; Step 5: Construct the transformation matrix of the solution position and the measurement position according to the SVD method, use the transformation matrix to obtain the new solution position, and obtain the position coordinate error L: In step 5, the pose of the transformation matrix is obtained as follows: (1) Randomly select n points in the robot joint workspace and solve the position of the tool system relative to the robot base as follows: (2) The actual positions of these n points are measured by a laser tracker, and the actual positions of the n points relative to the laser tracker are described as: (3) Find the centroid of n points: (4) Calculate the relative offset of each point set relative to the centroid coordinates: (5) From the point set , Constructing the co-matrix ; (6) Perform SVD decomposition on the co-matrix: (7) The rotation matrix is , the translation matrix is , then the transformation matrix from the laser tracker's measured position to the robot's solved position is: ; In step 5, the new solution position is obtained using the transformation matrix: ,Right now: ; In step 5, the position coordinate error L is obtained as: The effective value of the coordinate error of the n points is: ; Step 6: Find the Hessian matrix based on the distance between the Jacobian matrix and the corresponding points: , the error vector , Update calibration parameters , the iteration count value increases by 1, ; Step 7: Determine whether the modulus length of the error vector is less than the minimum value , if it is less than the minimum value, the calibration parameters are directly derived; Step 8: If the magnitude of the error vector is greater than the minimum value , determine whether the current mode length is smaller than the previous mode length. If it is smaller, set μ=μ / 10. If it is larger, set μ=μ×10, and bring in the calibration parameters to continue solving the end position.
Citation Information
Patent Citations
Identification and compensation method of industrial robot structure parameter bias
CN107443382A
Parameter measurement and identification method and device of mechanical arm, terminal, and storage medium
CN108527373A