Synchronous calibration system and method for zero axis and multi-degree-of-freedom robot

By introducing a synchronous calibration system and method between a multi-degree of freedom robot and the zero axis, the DH model parameters are optimized by using the error feedback of laser trackers and target balls, the problem of insufficient calibration accuracy in the prior art is solved, and higher operating accuracy and positioning accuracy are achieved.

CN119550340APending Publication Date: 2025-03-04NANJING INST OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411808100.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-10
Publication Date
2025-03-04

AI Technical Summary

Technical Problem

The prior art is difficult to accurately describe the global error model of complex interdependence between multi-degree-of-freedom robots and zero-axis, resulting in insufficient calibration accuracy and affecting the operating accuracy in industrial manufacturing.

Method used

A synchronous calibration system and method are adopted to combine the multi-degree of freedom robot with the zero axis. Through the visual measurement error feedback of the laser tracker and the target ball, the parameters in the DH model are continuously corrected and optimized, and the synchronization error model and parameter identification method are established.

Benefits of technology

The calibration accuracy of the system is greatly improved, making it more suitable for complex operating environments, reducing the deviation between the actual position and the theoretical position, and improving the positioning accuracy of the robot end effector.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119550340A_ABST
    Figure CN119550340A_ABST
Patent Text Reader

Abstract

The invention discloses a synchronous calibration system and method for a zero axis and a multi-degree-of-freedom robot, and relates to the field of industrial robot calibration. The system comprises a multi-degree-of-freedom robot, a zero axis, a laser tracker, a target ball and a target ball adapter plate. The method comprises the following steps of: by establishing a coordinate system and a conversion relation of a zero axis and the multi-degree-of-freedom robot, converting actual pose data of the zero axis and the multi-degree-of-freedom robot collected by a laser tracker and a target ball at different positions into a tail end pose of the multi-degree-of-freedom robot under a world coordinate system. A zero-axis translation error and a multi-degree-of-freedom robot rotary joint error are calculated by using multiple groups of theoretical poses and actual poses measured by a laser tracker; a Jacobian matrix is established in combination with a linearized kinematics model, error parameters are updated through multiple iterations of a gain matrix and a covariance matrix by adopting a recursive least square method, and finally stable estimated values of translation errors and rotating joint errors are obtained and applied to real-time compensation, and deviation between actual poses and theoretical poses is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of industrial robot calibration, and in particular to a synchronous calibration system and method for a zero-axis and multi-degree-of-freedom robot. Background Art

[0002] In modern industrial manufacturing, multi-degree-of-freedom robots are often used for complex operation tasks. By adding a zero axis to expand the working range, they are widely used in tasks such as welding, assembly, and handling. However, due to the complex kinematic characteristics between the zero axis and the multi-degree-of-freedom robot, as well as the diversity of a wide range of operating environments, the error calibration of the system becomes a key factor affecting the operation accuracy. Studies have shown that the posture error model is more complete than the other two error models, and the parameter identification results are relatively accurate. Existing error calibration methods mainly rely on a single type of sensor, or calibrate the multi-degree-of-freedom robot and the zero axis separately. This method usually ignores the complex interdependence between the zero axis and the multi-degree-of-freedom robot, and thus cannot accurately describe the global error model of the system. To solve these problems, it is necessary to develop an innovative synchronous error model and parameter identification method that can combine the multi-degree-of-freedom robot with the zero axis, and continuously correct and optimize the parameters in the DH model through continuous feedback of visual measurement errors, so that it can be more adapted to complex operating environments, thereby greatly improving the calibration accuracy of the system and meeting the needs of modern industrial manufacturing. Summary of the invention

[0003] In view of the deficiencies in the prior art, the present invention provides a synchronous calibration system and method for a zero-axis and multi-degree-of-freedom robot.

[0004] To achieve the above object, the present invention adopts the following technical solutions:

[0005] A synchronous calibration system for a zero axis and a multi-degree-of-freedom robot comprises a multi-degree-of-freedom robot, a zero axis, a laser tracker, a target ball and a target ball adapter plate; the zero axis comprises a guide rail bracket, a translation slide and a servo motor; the multi-degree-of-freedom robot is mounted on the translation slide and moves synchronously with the translation slide under the drive of the servo motor; the target ball adapter plate is mounted on the end of the multi-degree-of-freedom robot; the target ball is detachably connected to the end of the multi-degree-of-freedom robot through the target ball adapter plate;

[0006] A limit switch is installed on one side of the zero axis. When the translation slide on the zero axis moves to this position, the limit switch is triggered. The position of the limit switch is the zero position of the zero axis. The actual position and posture of the zero axis and the multi-degree-of-freedom robot are measured by a laser tracker and a target ball.

[0007] The present invention also proposes a synchronous calibration method for a zero-axis and a multi-degree-of-freedom robot based on a synchronous calibration system, comprising the following steps:

[0008] Step 1: Establish the world coordinate system;

[0009] Step 2: Establish the base coordinate system of the multi-degree-of-freedom robot;

[0010] Step 3: Establish the robot terminal coordinate system;

[0011] Step 4: Establish tool coordinate system;

[0012] Step 5: Keep the multi-degree-of-freedom robot in its initial position, move the translation slide, and use the encoder of the servo motor to read the theoretical position points of any 50 translation joints of the multi-degree-of-freedom robot in the world coordinate system when it translates on the zero axis, recorded as P11-P150, and use the laser tracker to measure the world coordinate system W xyz0 The spatial position of the target ball at the end of the multi-degree-of-freedom robot used to calculate the translation joint error is obtained, and 50 actual coordinate points P21-P250 of the center of the target ball are obtained;

[0013] Step 6: Move the translation slide to the zero position of the zero axis and fix it. Read the theoretical pose points of any 50 robot ends in the motion space of the multi-degree-of-freedom robot in the base coordinate system, recorded as P151-P1100, and use a laser tracker to measure the pose points in the world coordinate system W. xyz0 The spatial position of the target ball at the end of the multi-degree-of-freedom robot used to calculate the rotation joint error is obtained, and 50 actual coordinate points P251-P2100 of the center of the target ball are obtained;

[0014] Step 7: In the world coordinate system W xyz0 In the robot end coordinate system W xyz2 and tool coordinate system W xyz3 The transformation matrix H1 transforms the 50 actual coordinate points P21-P250 of the target ball center used to calculate the translation joint error into the world coordinate system W xyz0 The actual position point P of the robot end used to calculate the translation joint error T 1-P T 50, convert the 50 actual coordinate points P251-P2100 of the target ball center used to calculate the rotation joint error into the world coordinate system W xyz0 The actual position point P of the robot end used to calculate the rotation joint error T 51-P T 100;

[0015] Step 8: In the world coordinate system W xyz0 In the process, the theoretical pose points P11-P150 of the translation joint in the world coordinate system are converted into the theoretical pose points P of the robot end in the world coordinate system for calculating the translation joint error. N 1-P N 50;

[0016] Convert the theoretical pose points P151-P1100 of the robot end in the base coordinate system to the world coordinate system W xyz0 In the world coordinate system W xyz0 The theoretical position point P of the robot end used to calculate the rotation joint error N 51-P N 100;

[0017] Step 9: The actual position point P of the robot end used to calculate the translation joint error T 1-P T 50 and the robot end theoretical position point P N 1-P N 50 sets of position errors of the translation joint are obtained by subtracting them in sequence;

[0018] Based on the theoretical pose point P of the robot end for calculating the rotation joint error N 51-P N 100 and the actual pose point P T 51-P T 100 get 50 sets of position errors and attitude errors of the rotary joint;

[0019] Step 10: Establish a differential kinematics model of the multi-degree-of-freedom robot;

[0020] Step 11. Use 50 sets of position errors of the translational joints and 50 sets of position errors and attitude errors of the rotational joints to recursively update the differential kinematics model by the least squares method until the error parameters of the differential kinematics model converge to a stable value, and obtain the position errors of the translational joints, the position errors and attitude errors of the robot's rotational joints. Use these error parameters to compensate for the errors of each joint in real time during the control of the multi-degree-of-freedom robot.

[0021] To optimize the above technical solutions, the specific measures taken also include:

[0022] Furthermore, step 1 is specifically as follows:

[0023] Make the translation slide at the zero position of the zero axis, change the position of the target ball four times, and use the laser tracker to read the coordinates of the center of the target ball p j 1-p j 4. Use p j 1-p j 4 Four points fit the xy plane O of the world coordinate system j , and then p j 1-p j 4Four points fit into a circle C j , and we get the circumference C j The center of the circle P j , the center P j, projected onto plane O j Get a P j ', point P j 'As the origin of the world coordinate system, the direction of the translation slide from zero position to the other side is the +x axis direction of the world coordinate system, and the xy plane O j The normal vector is in the +z axis direction; finally, the world coordinate system W is obtained xyz0 .

[0024] Furthermore, step 2 is specifically as follows:

[0025] Move the translation slide to the zero position on the zero axis, and adjust the multi-degree-of-freedom robot to the initial position. The robot is fixed on the translation slide. The translation slide is used as the base of the robot. The target ball is placed on the base of the multi-degree-of-freedom robot, and the spatial coordinates of the center of the target ball are read. The position of the target ball is changed and the above operation is repeated 4 times. The 4 coordinates read are marked as p xy 1-p xy 4. Use p xy 1-p xy 4 Four points are fitted to obtain the xy plane O of the base coordinate system of the multi-degree-of-freedom robot xy ;

[0026] The target ball is fixed on the end of the multi-degree-of-freedom robot through the target ball adapter plate. The translation slide is moved to the zero position and fixed. The multi-degree-of-freedom robot is adjusted to the initial posture. Only one axis is rotated. The spatial coordinates of the center of the target ball at this time are read out using a laser tracker. The rotation angle of one axis is adjusted and the above operation is repeated 4 times. The read coordinates are marked as p z 1-p z 4. z 1-p z 4 Four-point fitting to obtain the circumference C z And create the center P z , the center P z Projected to the xy plane O of the robot base coordinate system xy The projection point P is obtained z ′ is the origin of the base coordinate system of the multi-degree-of-freedom robot;

[0027] Place the multi-degree-of-freedom robot at zero position, rotate only the two axes, use the laser tracker to read the spatial coordinates of the center of the target ball, adjust the rotation angles of the two axes and repeat the above operation 4 times. The read coordinates of the center of the target ball are marked as p xz 1-p xz 4. xz 1-p xz 4 The four points are fitted into the xz plane O of the base coordinate system of the multi-degree-of-freedom robot xz ;

[0028] The xy plane O of the base coordinate system xy The normal vector of is the z-axis, and the xz plane O of the base coordinate system xz The normal vector of is the y-axis, and is perpendicular to the origin P of the base coordinate system. z ′ forms the base coordinate system W xyz1 .

[0029] Furthermore, step 3 is specifically as follows:

[0030] Adjust the multi-degree-of-freedom robot to its initial position, use a laser tracker to read the spatial position of the multi-degree-of-freedom robot's end flange, change the position of the target ball and repeat the above operation 4 times. The four points of the end flange are measured and recorded as P e 1-P e 4. Fitting P e 1-P e 4 Four points create plane O e As the xy plane of the robot end coordinate system; the measured point P e 1-P e 4 Projection onto plane O e , denoted as P e 1′-P e 4′, using the projection point P e 1′-P e 4′ fitting circle C e And get the center P e , with the center P e As the origin of the robot's end coordinate system, select P e 1-P e 4 The vector direction formed by any two points among the four points is the +x axis direction, plane O e The normal vector of is taken as the Z-axis direction to establish the robot end coordinate system W xyz2 .

[0031] Furthermore, step 4 is specifically as follows:

[0032] The multi-degree-of-freedom robot is adjusted to the initial position. Three target ball bases are fixedly installed on the target ball adapter plate. The target balls are placed on different target ball bases and their positions are read using a laser tracker. The above operation is repeated three times. The measured point is recorded as P. g 1-P g 3. Fitting P g 1-P g 3 Three points create plane O g ; The measured point P g 1-P g 3 Projection onto plane O g The above is written as P g 1′-P g 3′, plane O g The normal vector of is taken as the Z-axis direction, Pg 1′ is the coordinate origin of the tool coordinate system, P g 1′-P g Select any two points in 3′ to form a vector, and use the direction of the vector as the direction of the X axis to establish the tool coordinate system W xyz3 .

[0033] Furthermore, in step 10, the differential kinematics model of the multi-degree-of-freedom robot is specifically:

[0034]

[0035] In the formula, DT i represents the translation joint error and rotation joint error pair in the i-th group of data, J p (θ0) is the Jacobian matrix of the zero axis, which represents the influence of the translation joint error on the end position of the robot; DP pi represents the position error of the translation joint in the i-th group of data, J r (θ r ) is the Jacobian matrix of the revolute joint, which represents the influence of the revolute joint error on the robot end position; DP r,i+50 represents the position error of the multi-DOF robot rotation joint in the i-th group of data, DR r,i+50 represents the error of the multi-degree-of-freedom robot's rotation joint to the end posture in the i-th group of data, θ0 represents the translation amount of the translation joint, θ r Indicates the rotation angle of the revolute joint.

[0036] Further, in step 11, the recursive least squares method update of the differential kinematics model using 50 sets of position errors of the translation joints and 50 sets of position errors and posture errors of the rotation joints is specifically as follows:

[0037] Set the initial error parameter estimate to ΔP p0 and ΔP r0 are the initial position errors of the translation joint and the rotation joint of the robot, ΔR r0 is the initial posture error of the robot's rotary joint; set the initial covariance matrix P0;

[0038] For each set of translation joint position error, rotation joint position error and posture error, we can get the translation joint error and rotation joint error pair DT i , calculate the Jacobian matrix J at the current i-th iteration i ;

[0039] Calculate the gain matrix K i :

[0040]

[0041] P i-1 represents the covariance matrix obtained in the previous iteration, J i Represents the Jacobian matrix of the current iteration, i represents the number of iterations, i = 1, 2, ..., 50;

[0042] Update error parameters

[0043]

[0044] In the formula, represents the error parameter of the previous iteration, represents the updated error parameter, K i represents the gain matrix at the current i-th iteration, J i Represents the Jacobian matrix at the current i-th iteration;

[0045] When the error parameter Converge to a stable value and end the iteration.

[0046] Further, in step 8, the theoretical pose points P11-P150 of the translation joint in the world coordinate system are converted into the theoretical pose points P of the robot end for calculating the translation joint error in the world coordinate system. N 1-P N 50 specifically:

[0047] The conversion is done using the following relationship:

[0048] T2=A0T1=A0A1A2LA n

[0049] Where T2 represents the transformation matrix from the translation joint on the zero axis to the nth rotation joint; A0 represents the base coordinate system W of the multi-DOF robot xyz1 and the world coordinate system W xyz0 The transformation matrix between them, T1 represents the multi-degree-of-freedom robot end coordinate system W xyz2 Relative to the robot base coordinate system W xyz1 The theoretical pose transformation matrix, A1 represents the transformation matrix from the base axis to the first rotation joint, A2 represents the transformation matrix from the first rotation joint to the second rotation joint, A n Represents the transformation matrix from the n-1th revolute joint to the nth revolute joint.

[0050] Furthermore, in step 8, the theoretical pose points P151-P1100 of the robot end in the base coordinate system are converted to the world coordinate system W xyz0 Specifically:

[0051] The conversion is done using the following relationship:

[0052] W xyz0 =A0×W xyz1

[0053] Where W xyz0 Represents the world coordinate system, A0 represents the multi-degree-of-freedom robot base coordinate system W xyz1 and the world coordinate system W xyz0 The transformation matrix between xyz1 Represents the base coordinate system.

[0054] The beneficial effects of the present invention are as follows: the present invention can combine a multi-degree-of-freedom robot with a zero axis, and through continuous feedback of visual measurement errors, continuously correct and optimize the parameters in the DH model, so that it is more adaptable to complex operating environments, thereby greatly improving the calibration accuracy of the system and meeting the needs of modern industrial manufacturing. Using the error parameters finally obtained by iteration, the errors of each joint can be compensated in real time during the control process, thereby reducing the deviation between the actual posture and the theoretical posture, and improving the positioning accuracy of the robot end effector. BRIEF DESCRIPTION OF THE DRAWINGS

[0055] Figure 1 It is a schematic diagram of the zero-axis and multi-degree-of-freedom robot synchronous calibration system of the present invention;

[0056] Figure 2 It is a schematic diagram of the zero position of the zero axis and multi-degree-of-freedom robot of the present invention;

[0057] Figure 3 It is a schematic diagram of the kinematic model of the zero-axis and multi-degree-of-freedom robot. DETAILED DESCRIPTION

[0058] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0059] Embodiment 1

[0060] The present invention proposes a synchronous calibration system for zero-axis and multi-degree-of-freedom robots, such as Figure 1 As shown, it includes a multi-degree-of-freedom robot 2, a zero axis, a laser tracker 301, a target ball 302, a target ball adapter plate, etc. The multi-degree-of-freedom robot is installed on the zero axis, and the target ball adapter plate is installed at the end of the multi-degree-of-freedom robot. The zero axis includes a guide rail bracket 101, a translation slide 102 and a servo motor 103. The multi-degree-of-freedom robot is fixedly mounted on the translation slide and moves synchronously with the translation slide under the drive of the servo motor.

[0061] A limit switch 104 is installed at the proximal end of the zero axis. When the translation slide on the zero axis moves to this position, the limit switch is triggered, so that the control system recognizes this position as the zero position of the zero axis. Figure 2 The zero axis and the actual position of the robot can be measured by a laser tracker and a target ball.

[0062] Embodiment 2

[0063] The present invention proposes a synchronous calibration method for a zero axis and a multi-degree-of-freedom robot based on the synchronous calibration system of the first embodiment, comprising the following steps:

[0064] Step 1: Establish a world coordinate system; Step 1 is as follows:

[0065] Make the translation slide at the zero position of the zero axis, change the position of the target ball four times, and use the laser tracker to read the coordinates of the center of the target ball p j 1-p j 4. Use p j 1-p j 4 Four points fit the xy plane O of the world coordinate system j , and then p j 1-p j 4Four points fit into a circle C j , and we get the circumference C j The center of the circle P j , the center P j , projected onto plane O j Get a P j ', point P j 'As the origin of the world coordinate system, the direction of the translation slide from zero position to the other side is the +x axis direction of the world coordinate system, and the xy plane O j The normal vector is in the +z axis direction; finally, the world coordinate system W is obtained xyz0 .

[0066] Step 2: Establish the base coordinate system of the multi-degree-of-freedom robot; Step 2 is specifically as follows:

[0067] Move the translation slide to the zero position on the zero axis, and adjust the multi-degree-of-freedom robot to the initial position. The robot is fixed on the translation slide. The translation slide is used as the base of the robot. The target ball is placed on the base of the multi-degree-of-freedom robot, and the spatial coordinates of the center of the target ball are read. The position of the target ball is changed and the above operation is repeated 4 times. The 4 coordinates read are marked as p xy 1-p xy 4. Use p xy 1-p xy 4 Four points are fitted to obtain the xy plane O of the base coordinate system of the multi-degree-of-freedom robot xy ;

[0068] The target ball is fixed on the end of the multi-degree-of-freedom robot through the target ball adapter plate. The translation slide is moved to the zero position and fixed. The multi-degree-of-freedom robot is adjusted to the initial posture. Only one axis is rotated. The spatial coordinates of the center of the target ball at this time are read out using a laser tracker. The rotation angle of one axis is adjusted and the above operation is repeated 4 times. The read coordinates are marked as p z 1-p z 4. z 1-p z 4 Four-point fitting to obtain the circumference C z And create the center P z , the center P z Projected to the xy plane O of the robot base coordinate system xy The projection point P is obtained z ′ is the origin of the base coordinate system of the multi-degree-of-freedom robot;

[0069] Place the multi-degree-of-freedom robot at zero position, rotate only the two axes, use the laser tracker to read the spatial coordinates of the center of the target ball, adjust the rotation angles of the two axes and repeat the above operation 4 times. The read coordinates of the center of the target ball are marked as p xz 1-p xz 4. xz 1-p xz 4 The four points are fitted into the xz plane O of the base coordinate system of the multi-degree-of-freedom robot xz ;

[0070] The xy plane O of the base coordinate system xy The normal vector of is the z-axis, and the xz plane O of the base coordinate system xz The normal vector of is the y-axis, and is perpendicular to the origin P of the base coordinate system. z ′ forms the base coordinate system W xyz1 .

[0071] Step 3: Establish the robot end coordinate system; Step 3 is as follows:

[0072] Adjust the multi-degree-of-freedom robot to its initial position, use a laser tracker to read the spatial position of the multi-degree-of-freedom robot's end flange, change the position of the target ball and repeat the above operation 4 times. The four points of the end flange are measured and recorded as P e 1-P e 4. Fitting P e 1-P e 4 Four points create plane O e As the xy plane of the robot end coordinate system; the measured point P e 1-P e 4 Projection onto plane O e , denoted as P e 1′-P e 4′, using the projection point Pe 1′-P e 4′ fitting circle C e And get the center P e , with the center P e As the origin of the robot's end coordinate system, select P e 1-P e 4 The direction of the vector formed by any two points among the four points is the +x axis direction, plane O e The normal vector of is taken as the Z-axis direction to establish the robot end coordinate system W xyz2 .

[0073] Step 4: Establish tool coordinate system; Step 4 is as follows:

[0074] The multi-degree-of-freedom robot is adjusted to the initial position. Three target ball bases are fixedly installed on the target ball adapter plate. The target balls are placed on different target ball bases and their positions are read using a laser tracker. The above operation is repeated three times. The measured point is recorded as P. g 1-P g 3. Fitting P g 1-P g 3 Three points create plane O g ; The measured point P g 1-P g 3 Projection onto plane O g The above is written as P g 1′-P g 3′, plane O g The normal vector of is taken as the Z-axis direction, P g 1′ is the coordinate origin of the tool coordinate system, P g 1′-P g Select any two points in 3′ to form a vector, and use the direction of the vector as the direction of the X axis to establish the tool coordinate system W xyz3 .

[0075] Step 5: Keep the multi-degree-of-freedom robot in its initial position, move the translation slide, and use the encoder of the servo motor to read the theoretical position points of any 50 translation joints of the multi-degree-of-freedom robot in the world coordinate system when it translates on the zero axis, recorded as P11-P150, and use the laser tracker to measure the world coordinate system W xyz0 The spatial position of the target ball at the end of the multi-degree-of-freedom robot used to calculate the translation joint error is obtained, and 50 actual coordinate points P21-P250 of the center of the target ball are obtained;

[0076] Step 6. Move the translation slide to the zero position of the zero axis and fix it. Use the operating handle or APP to read the theoretical pose points of any 50 robot ends in the motion space of the multi-degree-of-freedom robot in the base coordinate system, recorded as P151-P1100, and use the laser tracker to measure the theoretical pose points in the world coordinate system W. xyz0The spatial position of the target ball at the end of the multi-degree-of-freedom robot used to calculate the rotation joint error is obtained, and the 50 actual coordinate points P251-P2100 of the center of the target ball are obtained.

[0077] The multi-DOF robot base coordinate system W xyz1 and the world coordinate system W xyz0 The transformation matrix between them is recorded as A0; the coordinate transformations from the robot base to the first joint, and then from the first joint to the second joint until the last joint are combined to obtain the multi-degree-of-freedom robot terminal coordinate system W xyz2 Relative to the robot base coordinate system W xyz1 The theoretical pose transformation matrix T1 = A1A2LA n ; A1 represents the transformation matrix from the base axis to the first revolute joint, A2 represents the transformation matrix from the first revolute joint to the second revolute joint, A n Represents the transformation matrix from the n-1th rotation joint to the nth rotation joint. In the synchronous calibration system including the zero axis, the end position of the robot is T2=A0T1=A0A1A2LA n T2 represents the transformation matrix from the translation joint on the zero axis to the nth rotation joint. The multi-freedom robot end coordinate system W xyz2 and the target ball adapter plate coordinate system W xyz3 The transformation matrix between them is H1, and the coordinates of the spatial point measured by the laser tracker are in the world coordinate system W xyz0 It can be expressed as T=T2H1=A0T1H1.

[0078] Step 7: In the world coordinate system W xyz0 In the robot end coordinate system W xyz2 and tool coordinate system W xyz3 The transformation matrix H1 transforms the 50 actual coordinate points P21-P250 of the target ball center used to calculate the translation joint error into the world coordinate system W xyz0 The actual position point P of the robot end used to calculate the translation joint error T 1-P T 50, convert the 50 actual coordinate points P251-P2100 of the target ball center used to calculate the rotation joint error into the world coordinate system W xyz0 The actual position point P of the robot end used to calculate the rotation joint error T 51-P T 100;

[0079] Step 8: In the world coordinate system W xyz0 In the equation, T2 = A0T1 = A0A1A2LA nThe theoretical pose points P11-P150 of the translation joint in the world coordinate system are converted into the theoretical pose points P of the robot end in the world coordinate system for calculating the translation joint error. N 1-P N 50; where T2 represents the transformation matrix from the translation joint on the zero axis to the nth rotation joint; A0 represents the base coordinate system W of the multi-DOF robot xyz1 and the world coordinate system W xyz0 The transformation matrix between them, T1 represents the multi-degree-of-freedom robot end coordinate system W xyz2 Relative to the robot base coordinate system W xyz1 The theoretical pose transformation matrix, A1 represents the transformation matrix from the base axis to the first rotation joint, A2 represents the transformation matrix from the first rotation joint to the second rotation joint, A n Represents the transformation matrix from the n-1th revolute joint to the nth revolute joint.

[0080] By W xyz0 =A0×W xyz1 Convert the theoretical pose points P151-P1100 of the robot end in the base coordinate system to the world coordinate system W xyz0 In the world coordinate system W xyz0 The theoretical position point P of the robot end used to calculate the rotation joint error N 51-P N 100; where W xyz0 Represents the world coordinate system, A0 represents the multi-degree-of-freedom robot base coordinate system W xyz1 and the world coordinate system W xyz0 The transformation matrix between xyz1 Represents the base coordinate system.

[0081] Step 9: The actual position point P of the robot end used to calculate the translation joint error T 1-P T 50 and the robot end theoretical position point P N 1-P N 50 sets of position errors of the translation joint are obtained by subtracting them in sequence;

[0082] Based on the theoretical pose point P of the robot end for calculating the rotation joint error N 51-P N 100 and the actual pose point P T 51-P T 100 get 50 sets of position errors and attitude errors of the rotary joint;

[0083] Step 10: Establish a differential kinematics model of the multi-degree-of-freedom robot;

[0084] (a): Definition of error and kinematic model

[0085] T is used to represent the homogeneous transformation of the robot end relative to the robot base coordinate system, and the actual posture measurement value P of the multi-degree-of-freedom robot T and the theoretical pose value P N , define the end positioning error as: ΔT = P T -P N ;

[0086] The error of the translation joint includes position error and posture error, where the position error ΔPp = [x T -x N ,y T -y N ,z T -z N ] T , attitude error ΔRp=R T -R N , the error of the translation joint is DT p =[DP p ,DR p ] T Similarly, the error of the rotation joint includes position error ΔPr and attitude error ΔRr, and the error of the rotation joint is DT r =[DP r ,DR r ] T .

[0087] The error of the translation joint is mainly caused by the motion error of the translation joint. In theory, no posture error is introduced and only the position error is considered. xyz0 The actual position point P of the robot end used to measure the translation joint error T 1-P T 50 and the robot end theoretical position point P N 1-P N 50, the position error vector DP of the translation joint can be obtained p [i]=P T [i]-P N [i](i=1,...,50).

[0088] When measuring the end position of the rotary joint, the zero axis position is fixed and measured in the multi-degree-of-freedom robot motion space. xyz0 The actual position point P of the robot end used to measure the rotation joint error T 51-P T 100 and the robot end theoretical position point P N 51-P N 100, the position error DP of the rotary joint can be obtained r [i]=PT [i]-P N [i] (i = 51, ..., 100) and the posture error DR of the rotation joint r [i] = R T [i]-R N [i](i=51,...,100).

[0089] The differential kinematics model of the multi-degree-of-freedom robot is as follows:

[0090]

[0091] In the formula, DT i represents the translation joint error and rotation joint error pair in the i-th group of data, J p (θ0) is the Jacobian matrix of the zero axis, which represents the influence of the translation joint error on the end position of the robot; DP pi represents the position error of the translation joint in the i-th group of data, J r (θ r ) is the Jacobian matrix of the revolute joint, which represents the influence of the revolute joint error on the robot end position; DP r,i+50 represents the position error of the multi-DOF robot rotation joint in the i-th group of data, DR r,i+50 represents the error of the multi-degree-of-freedom robot's rotation joint to the end posture in the i-th group of data, θ0 represents the translation amount of the translation joint, θ r Indicates the rotation angle of the revolute joint.

[0092] Step 11. Use 50 sets of position errors of the translational joints and 50 sets of position errors and posture errors of the rotational joints to recursively update the differential kinematics model by the least squares method until the error parameters of the differential kinematics model converge to a stable value, and obtain the position errors of the translational joints, the position errors and posture errors of the robot's rotational joints. Use these error parameters to compensate for the errors of each joint in real time during the control of the multi-degree-of-freedom robot, thereby reducing the deviation between the actual posture and the theoretical posture and improving the positioning accuracy of the robot's end effector.

[0093] The differential kinematics model is updated by recursive least squares method using 50 sets of position errors of translation joints and 50 sets of position errors and attitude errors of rotation joints as follows:

[0094] Set the initial error parameter estimate to ΔP p0 and ΔP r0 are the initial position errors of the translation joint and the rotation joint of the robot, ΔR r0 is the initial posture error of the robot's rotary joint; set the initial covariance matrix P0;

[0095] For each set of translation joint position error, rotation joint position error and posture error, we can get the translation joint error and rotation joint error pair DT i , calculate the Jacobian matrix J at the current i-th iteration i ;

[0096] Calculate the gain matrix K i :

[0097]

[0098] P i-1 represents the covariance matrix obtained in the previous iteration, J i Represents the Jacobian matrix of the current iteration, i represents the number of iterations, i = 1, 2, ..., 50;

[0099] Update error parameters

[0100]

[0101] In the formula, represents the error parameter of the previous iteration, represents the updated error parameter, K i represents the gain matrix at the current i-th iteration, J i Represents the Jacobian matrix at the current i-th iteration;

[0102] When the error parameter Converge to a stable value and end the iteration.

[0103] The above are only preferred embodiments of the present invention, and the protection scope of the present invention is not limited to the above embodiments. All technical solutions under the concept of the present invention belong to the protection scope of the present invention. It should be pointed out that for ordinary technicians in this technical field, some improvements and modifications without departing from the principle of the present invention should be regarded as the protection scope of the present invention.

Claims

1. A synchronous calibration system for zero-axis and multi-degree-of-freedom robots, characterized in that: It includes a multi-degree-of-freedom robot, a zero axis, a laser tracker, a target ball and a target ball adapter plate; the zero axis includes a guide rail bracket, a translation slide and a servo motor; the multi-degree-of-freedom robot is installed on the translation slide and moves synchronously with the translation slide under the drive of the servo motor; the target ball adapter plate is installed at the end of the multi-degree-of-freedom robot; the target ball is detachably connected to the end of the multi-degree-of-freedom robot through the target ball adapter plate; A limit switch is installed on one side of the zero axis. When the translation slide on the zero axis moves to this position, the limit switch is triggered. The position of the limit switch is the zero position of the zero axis. The actual position and posture of the zero axis and the multi-degree-of-freedom robot are measured by a laser tracker and a target ball.

2. A synchronous calibration method for a zero axis and a multi-degree-of-freedom robot based on the synchronous calibration system of claim 1, characterized in that: The following steps are involved: Step 1: Establish the world coordinate system; Step 2: Establish the base coordinate system of the multi-degree-of-freedom robot; Step 3: Establish the robot terminal coordinate system; Step 4: Establish tool coordinate system; Step 5: Keep the multi-degree-of-freedom robot in its initial position, move the translation slide, and use the encoder of the servo motor to read the theoretical position points of any 50 translation joints of the multi-degree-of-freedom robot in the world coordinate system when it translates on the zero axis, recorded as P11-P150, and use the laser tracker to measure the world coordinate system W xyz0 The spatial position of the target ball at the end of the multi-degree-of-freedom robot used to calculate the translation joint error is obtained, and 50 actual coordinate points P21-P250 of the center of the target ball are obtained; Step 6: Move the translation slide to the zero position of the zero axis and fix it. Read the theoretical pose points of any 50 robot ends in the motion space of the multi-degree-of-freedom robot in the base coordinate system, recorded as P151-P1100, and use a laser tracker to measure the pose points in the world coordinate system W. xyz0 The spatial position of the target ball at the end of the multi-degree-of-freedom robot used to calculate the rotation joint error is obtained, and 50 actual coordinate points P251-P2100 of the center of the target ball are obtained; Step 7: In the world coordinate system W xyz0 In the robot end coordinate system W xyz2 and tool coordinate system W xyz3 The transformation matrix H1 transforms the 50 actual coordinate points P21-P250 of the target ball center used to calculate the translation joint error into the world coordinate system W xyz0 The actual position point P of the robot end used to calculate the translation joint error T 1-P T 50, convert the 50 actual coordinate points P251-P2100 of the target ball center used to calculate the rotation joint error into the world coordinate system W xyz0 The actual position point P of the robot end used to calculate the rotation joint error T 51-P T 100; Step 8: In the world coordinate system W xyz0 In the process, the theoretical pose points P11-P150 of the translation joint in the world coordinate system are converted into the theoretical pose points P of the robot end in the world coordinate system for calculating the translation joint error. N 1-P N 50; Convert the theoretical pose points P151-P1100 of the robot end in the base coordinate system to the world coordinate system W xyz0 In the world coordinate system W xyz0 The theoretical position point P of the robot end used to calculate the rotation joint error N 51-P N 100; Step 9: The actual position point P of the robot end used to calculate the translation joint error T 1-P T 50 and the robot end theoretical position point P N 1-P N 50 sets of position errors of the translation joint are obtained by subtracting them in sequence; Based on the theoretical pose point P of the robot end for calculating the rotation joint error N 51-P N 100 and the actual pose point P T 51-P T 100 get 50 sets of position errors and attitude errors of the rotary joint; Step 10: Establish a differential kinematics model of the multi-degree-of-freedom robot; Step 11. Use 50 sets of position errors of the translational joints and 50 sets of position errors and attitude errors of the rotational joints to recursively update the differential kinematics model by the least squares method until the error parameters of the differential kinematics model converge to a stable value, and obtain the position errors of the translational joints, the position errors and attitude errors of the robot's rotational joints. Use these error parameters to compensate for the errors of each joint in real time during the control of the multi-degree-of-freedom robot.

3. The synchronous calibration method for the zero axis and multi-degree-of-freedom robot according to claim 2, characterized in that: Step 1 is as follows: Make the translation slide at the zero position of the zero axis, change the position of the target ball four times, and use the laser tracker to read the coordinates of the center of the target ball p j 1-p j 4. Use p j 1-p j 4 Four points fit the xy plane of the world coordinate system O j , and then p j 1-p j 4Four points fit into a circle C j , and we get the circumference C j The center of the circle P j , the center P j , projected onto plane O j Get a P j ', point P j 'As the origin of the world coordinate system, the direction of the translation slide from zero position to the other side is the +x axis direction of the world coordinate system, and the xy plane O j The normal vector is in the +z axis direction; finally, the world coordinate system W is obtained xyz0 .

4. The synchronous calibration method for the zero axis and multi-degree-of-freedom robot according to claim 2, characterized in that: Step 2 is as follows: Move the translation slide to the zero position on the zero axis, and adjust the multi-degree-of-freedom robot to the initial position. The robot is fixed on the translation slide. The translation slide is used as the base of the robot. The target ball is placed on the base of the multi-degree-of-freedom robot, and the spatial coordinates of the center of the target ball are read. The position of the target ball is changed and the above operation is repeated 4 times. The 4 coordinates read are marked as p xy 1-p xy 4. Use p xy 1-p xy 4 Four points are fitted to obtain the xy plane O of the base coordinate system of the multi-degree-of-freedom robot xy ; The target ball is fixed on the end of the multi-degree-of-freedom robot through the target ball adapter plate. The translation slide is moved to the zero position and fixed. The multi-degree-of-freedom robot is adjusted to the initial posture. Only one axis is rotated. The spatial coordinates of the center of the target ball at this time are read out using a laser tracker. The rotation angle of one axis is adjusted and the above operation is repeated 4 times. The read coordinates are marked as p z 1-p z 4. z 1-p z 4 Four-point fitting to obtain the circumference C z And create the center P z , the center P z Projected to the xy plane O of the robot base coordinate system xy The projection point P is obtained z ˊAs the origin of the base coordinate system of the multi-degree-of-freedom robot; Place the multi-degree-of-freedom robot at zero position, rotate only the two axes, use the laser tracker to read the spatial coordinates of the center of the target ball, adjust the rotation angles of the two axes and repeat the above operation 4 times. The read coordinates of the center of the target ball are marked as p xz 1-p xz 4. xz 1-p xz 4 The four points are fitted into the xz plane O of the base coordinate system of the multi-degree-of-freedom robot xz ; The xy plane O of the base coordinate system xy The normal vector of is the z-axis, and the xz plane O of the base coordinate system xz The normal vector of is the y-axis, and is perpendicular to the origin P of the base coordinate system. z ˊComposition of the base coordinate system W xyz1 .

5. The synchronous calibration method for the zero axis and multi-degree-of-freedom robot according to claim 2, characterized in that: Step 3 is as follows: Adjust the multi-degree-of-freedom robot to its initial position, use a laser tracker to read the spatial position of the multi-degree-of-freedom robot's end flange, change the position of the target ball and repeat the above operation 4 times. The four points of the end flange are measured and recorded as P e 1-P e 4. Fitting P e 1-P e 4 Four points create plane O e As the xy plane of the robot end coordinate system; the measured point P e 1-P e 4 Projection onto plane O e , denoted as P e 1′-P e 4′, using the projection point P e 1′-P e 4′ fitting circle C e And get the center P e , with the center P e As the origin of the robot's end coordinate system, select P e 1-P e 4 The vector direction formed by any two points among the four points is the +x axis direction, plane O e The normal vector of is taken as the Z-axis direction to establish the robot end coordinate system W xyz2 .

6. The synchronous calibration method for the zero axis and multi-degree-of-freedom robot according to claim 2, characterized in that: Step 4 is as follows: The multi-degree-of-freedom robot is adjusted to the initial position. Three target ball bases are fixedly installed on the target ball adapter plate. The target balls are placed on different target ball bases and their positions are read using a laser tracker. The above operation is repeated three times. The measured point is recorded as P. g 1-P g 3. Fitting P g 1-P g 3 Three points create plane O g ; The measured point P g 1-P g 3 Projection onto plane O g The above is written as P g 1′-P g 3′, plane O g The normal vector of is taken as the Z-axis direction, P g 1′ is the coordinate origin of the tool coordinate system, P g 1′-P g Select any two points in 3′ to form a vector, and use the direction of the vector as the direction of the X axis to establish the tool coordinate system W xyz3 .

7. The synchronous calibration method for a zero axis and a multi-degree-of-freedom robot according to claim 2, characterized in that: In step 10, the differential kinematics model of the multi-degree-of-freedom robot is specifically: In the formula, DT i represents the translation joint error and rotation joint error pair in the i-th group of data, J p (θ0) is the Jacobian matrix of the zero axis, which represents the influence of the translation joint error on the end position of the robot; DP pi represents the position error of the translation joint in the i-th group of data, J r (θ r ) is the Jacobian matrix of the revolute joint, which represents the influence of the revolute joint error on the robot end position; DP r,i+50 represents the position error of the multi-DOF robot rotation joint in the i-th group of data, DR r,i+50 represents the error of the multi-degree-of-freedom robot's rotation joint to the end posture in the i-th group of data, θ0 represents the translation amount of the translation joint, θ r Indicates the rotation angle of the revolute joint.

8. The synchronous calibration method for the zero axis and multi-degree-of-freedom robot according to claim 7, characterized in that: In step 11, the recursive least squares method is used to update the differential kinematics model using 50 sets of position errors of the translation joints and 50 sets of position errors and posture errors of the rotation joints as follows: Set the initial error parameter estimate to ΔP p0 and ΔP r0 are the initial position errors of the translation joint and the rotation joint of the robot, ΔR r0 is the initial posture error of the robot's rotary joint; Set the initial covariance matrix P0; For each set of translation joint position error, rotation joint position error and posture error, we can get the translation joint error and rotation joint error pair DT i , calculate the Jacobian matrix J at the current i-th iteration i ; Calculate the gain matrix K i : P i-1 represents the covariance matrix obtained in the previous iteration, J i Represents the Jacobian matrix of the current iteration, i represents the number of iterations, i = 1, 2, ..., 50; Update error parameters In the formula, represents the error parameter of the previous iteration, represents the updated error parameter, K i represents the gain matrix at the current i-th iteration, J i Represents the Jacobian matrix at the current i-th iteration; When the error parameter Converge to a stable value and end the iteration.

9. The synchronous calibration method for a zero axis and a multi-degree-of-freedom robot according to claim 2, characterized in that: In step 8, the theoretical pose points P11-P150 of the translation joint in the world coordinate system are converted into the theoretical pose points P of the robot end in the world coordinate system for calculating the translation joint error. N 1-P N 50 specifically: The conversion is done using the following relationship: T2=A0T1=A0A1A2 AT n Where T2 represents the transformation matrix from the translation joint on the zero axis to the nth rotation joint; A0 represents the base coordinate system W of the multi-DOF robot xyz1 and the world coordinate system W xyz0 The transformation matrix between them, T1 represents the multi-degree-of-freedom robot end coordinate system W xyz2 Relative to the robot base coordinate system W xyz1 The theoretical pose transformation matrix, A1 represents the transformation matrix from the base axis to the first rotation joint, A2 represents the transformation matrix from the first rotation joint to the second rotation joint, A n Represents the transformation matrix from the n-1th revolute joint to the nth revolute joint.

10. The synchronous calibration method for a zero axis and a multi-degree-of-freedom robot according to claim 2, characterized in that: In step 8, the theoretical pose points P151-P1100 of the robot end in the base coordinate system are converted to the world coordinate system W xyz0 Specifically: The conversion is done using the following relationship: IN xyz0 =A0×W xyz1 Where W xyz0 Represents the world coordinate system, A0 represents the multi-degree-of-freedom robot base coordinate system W xyz1 and the world coordinate system W xyz0 The transformation matrix between xyz1 Represents the base coordinate system.