Non-contact calibration method for robot-held sensors and sensor-fixed installations

By establishing a Cartesian coordinate system on the robot base, end flange, laser displacement sensor, and calibration block, and automatically collecting calibration data points and calculating the homogeneous transformation matrix, the problem of low accuracy in robot coordinate system calibration in existing technologies is solved, and high-precision non-contact calibration is achieved.

CN117601113BActive Publication Date: 2026-06-05SHANGHAI FANUC ROBOTICS

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHANGHAI FANUC ROBOTICS
Filing Date
2023-10-13
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

In existing technologies, robot coordinate system calibration methods are greatly affected by human teaching, resulting in low calibration accuracy. Furthermore, it is difficult to achieve parallelism between the calibration plate plane and the robot base's rectangular coordinate system, and insufficient data acquisition leads to large errors in the calibration results.

Method used

A non-contact calibration method for the optical axis coordinate system of a laser displacement sensor is adopted when the sensor is fixedly installed. A rectangular coordinate system is established on the robot base, end flange, laser displacement sensor and calibration block. Calibration data points are automatically collected, the homogeneous transformation matrix is ​​calculated, and the origin and direction of the coordinate system are calculated by combining the plane equation of the calibration block.

Benefits of technology

It achieves high-precision non-contact coordinate system calibration, avoids the influence of human teaching, has small errors, accurate calibration results, and is easy to implement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117601113B_ABST
    Figure CN117601113B_ABST
Patent Text Reader

Abstract

The application discloses a robot handheld sensor and a non-contact calibration method of sensor fixed installation, and belongs to the technical field of robots; the method comprises the following steps: S0, mounting a calibration block on a robot gripper and setting a laser displacement sensor on a tooling table; S1, respectively establishing a plurality of space orthogonal coordinate systems; S2, calculating the coordinates of a laser irradiation point of the laser displacement sensor on the calibration block; S3, judging whether the robot is collecting data for the first time, if yes, then offsetting and collecting data, and if not, then directly collecting data to obtain calibration data points; S4, calculating a homogeneous transformation matrix; and S5, calculating the coordinate values of the irradiation point and the space orthogonal coordinate system direction and the origin of the calibration block. The technical scheme has the advantages of automatic collection, higher precision, avoidance of the influence of manual teaching, small error and easy implementation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robotics, and in particular to a non-contact calibration method for a handheld laser displacement sensor for a robot and a laser displacement sensor in a fixed installation configuration. Background Technology

[0002] Currently, the main method for coordinate system calibration in industry is through mechanical constraint points. Commonly used 3-point or 4-point calibration tools select a cone tip in space as a fixed constraint point and control the robot end effector to contact the constraint point in different postures. The accuracy of this method depends on the accuracy of manual teaching.

[0003] In the existing technology, the paper "Local Calibration of Industrial Robots" proposes to use point laser non-contact method for indirect calibration, which avoids the influence of human teaching. It collects 30 data points on the base plane through laser displacement sensor and calibrates the relevant parameters between the robot base coordinate system and the laser displacement sensor based on the planar constraint relationship. However, this method uses nonlinear least squares fitting of 11 unknown parameters, such as plane parameters and coordinate transformation relationship, and depends on the optimization toolbox.

[0004] CN111590588A relates to a non-contact tool coordinate system calibration method for welding robots, and discloses a method for establishing planar constraint conditions based on a calibration plate, such as... Figure 1 , Figure 2 As shown, without relying on the optimization toolbox, the end of the welding robot 1 is controlled to offset, 9 sets of calibration data are collected, and the tool coordinate system calibration method is used to solve the coordinate values ​​of the welding laser sensor 2 irradiation point in the robot end flange coordinate system. The laser point 4 is located on the welding plane 3.

[0005] The robot user coordinate system algorithm described above has the following shortcomings:

[0006] 1. When calibrating in manual mode, too many points need to be taught manually, and the accuracy of coordinate system calibration will be affected by the manual teaching.

[0007] 2. The requirement that the calibration plate plane be parallel to the XOY plane of the robot base's Cartesian coordinate system is difficult to achieve;

[0008] 3. The amount of data collected in "A Non-Contact Tool Coordinate System Calibration Method for Welding Robots" is too small, and the influence of measurement errors such as robot position and sensor ranging during the data collection process is not considered. As a result, the calibration results have large errors and poor repeatability.

[0009] 4. The calibration method proposed in the article "Local Calibration of Industrial Robots" has too large an error in the final fitting result. Summary of the Invention

[0010] The purpose of this invention is to provide a non-contact calibration method for the optical axis coordinate system of a laser displacement sensor during fixed installation, thereby solving the above-mentioned technical problems.

[0011] The present invention also aims to provide a non-contact calibration method for the optical axis coordinate system of a handheld laser displacement sensor for robots, thereby solving the above-mentioned technical problems.

[0012] A non-contact calibration method for the optical axis coordinate system of a laser displacement sensor during fixed installation, including:

[0013] Step S0: Install a calibration block on the robot's gripper and set a laser displacement sensor on the tooling table.

[0014] Step S1: Establish a spatial rectangular coordinate system for the robot base, a spatial rectangular coordinate system for the robot end effector, a spatial rectangular coordinate system for the laser displacement sensor, and a spatial rectangular coordinate system for the calibration block on the robot base, the robot end effector flange, the laser displacement sensor, and the calibration block, respectively.

[0015] Step S2: Calculate the first set of position coordinates of the laser displacement sensor's illumination point on the calibration block in the robot base space rectangular coordinate system, and the second set of position coordinates of the laser displacement sensor's illumination point on the calibration block in the robot end-effector space rectangular coordinate system.

[0016] Step S3: Determine whether the robot is collecting data for the first time. If so, offset the spatial rectangular coordinate system of the laser displacement sensor and the spatial rectangular coordinate system of the calibration block before collecting data to obtain multiple calibration data points. If not, set the robot's operation mode to automatic mode and directly collect data to obtain multiple calibration data points.

[0017] Step S4: Assign the calibration data points to the first set of position coordinates and the second set of position coordinates of the irradiation point respectively, and calculate the homogeneous transformation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system;

[0018] Step S5: Based on the homogeneous transformation matrix and multiple spatial rectangular coordinate systems, recalculate the coordinate values ​​of the illumination point in the spatial rectangular coordinate system of the robot end effector. Based on the front plane equation, left plane equation, and bottom plane equation of the calibration block, calculate the direction of the spatial rectangular coordinate system of the calibration block and the origin of the spatial rectangular coordinate system of the calibration block.

[0019] Preferably, in step S1, the laser displacement sensor is fixedly installed on the tooling table, and the attitude and position of the laser displacement sensor's spatial rectangular coordinate system relative to the robot base's spatial rectangular coordinate system remain fixed; the origin of the laser displacement sensor's spatial rectangular coordinate system is the laser emission point of the laser displacement sensor, and the Z-axis direction of the laser displacement sensor's spatial rectangular coordinate system is the same as the laser irradiation direction of the laser displacement sensor; the calibration block is fixedly installed on the end effector of the robot, and the attitude and position of the calibration block's spatial rectangular coordinate system relative to the robot end effector's spatial rectangular coordinate system remain fixed, and the X-axis, Y-axis, and Z-axis of the calibration block's spatial rectangular coordinate system are parallel to the front side normal, left side normal, and bottom normal of the calibration block, respectively; the origin of the calibration block's spatial rectangular coordinate system is the intersection of the front side, left side, and bottom planes of the calibration block.

[0020] Preferably, the coordinate equation of the first set of position coordinate values ​​in step S2 is:

[0021]

[0022]

[0023] The coordinate equations for the second set of position coordinates are:

[0024]

[0025] Among them, P B1 P E1 P T1 These represent the position coordinates of the illumination point of the laser displacement sensor relative to the robot base spatial rectangular coordinate system, the robot end effector spatial rectangular coordinate system, and the calibration block spatial rectangular coordinate system, respectively.

[0026] The inverse matrix represents the 4x4 homogeneous transformation matrix of the robot base space Cartesian coordinate system relative to the robot end effector space Cartesian coordinate system. The 4x4 homogeneous transformation matrix represents the spatial rectangular coordinate system of the robot's end effector relative to the spatial rectangular coordinate system of the robot's base.

[0027] This represents the 4x4 homogeneous transformation matrix of the laser displacement sensor's spatial rectangular coordinate system relative to the robot base's spatial rectangular coordinate system;

[0028] This represents the 4x4 homogeneous transformation matrix of the calibration block spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system;

[0029] D1 represents the distance between the laser displacement sensor emission point and the illumination point on the calibration block;

[0030] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot base space rectangular coordinate system relative to the robot end space rectangular coordinate system, and the coordinate position of the origin of the robot base space rectangular coordinate system relative to the robot end space rectangular coordinate system, respectively.

[0031] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and the coordinate position of the origin of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, respectively.

[0032] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and the coordinate position of the origin of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, respectively.

[0033] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the calibration block space rectangular coordinate system relative to the robot end effector space rectangular coordinate system, and the coordinate position of the origin of the calibration block space rectangular coordinate system relative to the robot end effector space rectangular coordinate system, respectively.

[0034] Preferably, data acquisition in step S3 includes,

[0035] Step S31: The attitude of the robot end-effector spatial rectangular coordinate system remains unchanged. The position of the robot end-effector is shifted. The laser of the laser displacement sensor is irradiated on the front side of the calibration block. M1 calibration data points are collected and recorded as a set of front side same attitude calibration data points.

[0036] Step S32: Set different postures and collect the calibration data points to obtain N1 sets of front side same posture calibration data points, for a total of M1*N1 calibration data points;

[0037] Step S33: The position of the robot end effector in the Cartesian coordinate system remains unchanged. The robot end effector's posture is changed. The laser from the laser displacement sensor is used to illuminate the front side of the calibration block. A1 calibration data points are collected and recorded as a set of calibration data points at the same position on the front side.

[0038] Step S34: Set different positions and collect the calibration data points to obtain F1 sets of calibration data points at the same position on the front side, for a total of A1*F1 calibration data points;

[0039] Step S35: The attitude of the robot end-effector in the Cartesian coordinate system remains unchanged. The position of the robot end-effector is shifted, and the laser of the laser displacement sensor is used to illuminate the left side of the calibration block. O1 calibration data points are collected and recorded as a set of left-side same-attitude calibration data points.

[0040] Step S36: Illuminate the rear side, right side and bottom side of the calibration block with the laser of the laser displacement sensor and collect data to obtain Q1 sets of calibration data points of the same posture on the left side, for a total of O1*Q1 calibration data points;

[0041] Where M1, N1, A1, F1, O1, and Q1 are all positive integers greater than or equal to 1.

[0042] Preferably, each of the calibration data points includes,

[0043] The attitude and position of the robot's end effector spatial Cartesian coordinate system relative to the robot's base spatial Cartesian coordinate system, and the distance between the laser emission point and the irradiation point.

[0044] Preferably, step S4 includes,

[0045] Step S41: Read the point data;

[0046] Step S42: Calculate the initial value of the laser line direction of the laser displacement sensor;

[0047] Step S43: Correct the error in the direction of the laser line;

[0048] Step S44: Calculate the Euler angles and attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and substitute them into the updated point coordinates;

[0049] Step S45: Calculate the initial value of the laser emission origin position;

[0050] Step S46: Perform the first error correction on the laser emission origin position;

[0051] Step S47: Perform a second error correction on the laser emission origin position based on the size of the calibration block;

[0052] Step S48: Calculate the position matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and substitute it into the updated point coordinates;

[0053] Step S49: Calculate the homogeneous transformation matrix based on the attitude rotation matrix and the position matrix.

[0054] Preferably, the initial values ​​of the laser line direction and the initial values ​​of the laser emission origin position are obtained by solving the least squares solution of the corresponding linear equation system.

[0055] Preferably, the error correction of the laser line direction in step S43 is performed iteratively using a non-homogeneous objective function about the laser line direction.

[0056] Preferably, the first error correction and the second error correction are performed iteratively using a non-homogeneous objective function with respect to the laser emission origin position.

[0057] Preferably, in step S5, the front plane equation is established based on the front coordinate values ​​of the calibration block;

[0058] The equation of the left plane is established based on the left coordinate values ​​of the calibration block;

[0059] The equation of the bottom plane is established based on the bottom coordinate values ​​of the calibration block.

[0060] A non-contact calibration method for the optical axis coordinate system of a handheld laser displacement sensor used by a robot, including:

[0061] Step G0: Install a laser displacement sensor on the robot's gripper and set a calibration block on the tooling table.

[0062] Step G1: Establish a spatial rectangular coordinate system for the robot base, a spatial rectangular coordinate system for the robot end effector, a spatial rectangular coordinate system for the laser displacement sensor, and a spatial rectangular coordinate system for the calibration block on the robot base, the robot end effector flange, the laser displacement sensor, and the calibration block, respectively.

[0063] Step G2: Calculate the position coordinates of the laser displacement sensor's illumination point on the calibration block in the robot base's Cartesian coordinate system.

[0064] Step G3: Determine whether the robot is collecting data for the first time. If so, offset the spatial rectangular coordinate system of the laser displacement sensor and the spatial rectangular coordinate system of the calibration block before collecting data to obtain multiple calibration data points. If not, set the robot's operation mode to automatic mode and directly collect data to obtain multiple calibration data points.

[0065] Step G4: Assign the calibration data points to the illumination points respectively, and calculate the homogeneous transformation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end-effector spatial rectangular coordinate system;

[0066] Step G5: Based on the homogeneous transformation matrix and multiple spatial rectangular coordinate systems, recalculate the coordinates of the illumination point in the spatial rectangular coordinate system of the robot base. Based on the front plane equation, left plane equation, and upper surface plane equation of the calibration block, calculate the direction of the spatial rectangular coordinate system of the calibration block and the origin of the spatial rectangular coordinate system of the calibration block.

[0067] Preferably, in step G1, the laser displacement sensor is fixedly installed on the end effector of the robot, and the attitude and position of the laser displacement sensor's spatial rectangular coordinate system relative to the robot's end effector's spatial rectangular coordinate system remain fixed; the origin of the laser displacement sensor's spatial rectangular coordinate system is the laser emission point of the laser displacement sensor, and the Z-axis direction of the laser displacement sensor's spatial rectangular coordinate system is the same as the laser irradiation direction of the laser displacement sensor; the calibration block is fixedly installed in the robot's workspace, and the attitude and position of the calibration block's spatial rectangular coordinate system relative to the robot's base spatial rectangular coordinate system remain fixed, and the X-axis, Y-axis, and Z-axis of the calibration block's spatial rectangular coordinate system are parallel to the normal directions of the front side, left side, and top surface of the calibration block, respectively; the origin of the calibration block's spatial rectangular coordinate system is the intersection of the planes of the front side, left side, and top surface of the calibration block.

[0068] Preferably, the equation for the position coordinates of the irradiation point in step G2 is:

[0069]

[0070] Among them, P B2 This represents the position coordinates of the illumination point of the laser displacement sensor relative to the spatial rectangular coordinate system of the robot base;

[0071] The 4x4 homogeneous transformation matrix represents the spatial rectangular coordinate system of the robot's end effector relative to the spatial rectangular coordinate system of the robot's base.

[0072] This represents the 4x4 homogeneous transformation matrix of the laser displacement sensor's spatial rectangular coordinate system relative to the robot's end effector's spatial rectangular coordinate system;

[0073] D2 represents the distance between the laser displacement sensor emission point and the illumination point on the calibration block;

[0074] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and the coordinate position of the origin of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, respectively.

[0075] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, and the coordinate position of the origin of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, respectively.

[0076] Preferably, data acquisition in step G3 includes,

[0077] Step G31: The attitude of the robot end-effector spatial rectangular coordinate system remains unchanged. The position of the robot end-effector is shifted. The laser of the laser displacement sensor is used to illuminate the upper surface of the calibration block. M2 calibration data points are collected and recorded as a set of upper surface same attitude calibration data points.

[0078] Step G32: Set different attitudes and collect the calibration data points to obtain N2 sets of calibration data points of the upper surface in the same attitude, for a total of M2*N2 calibration data points;

[0079] Step G33: The position of the robot end effector in the Cartesian coordinate system remains unchanged. The robot end effector's posture is controlled to change. The laser from the laser displacement sensor is used to illuminate the upper surface of the calibration block. A2 calibration data points are collected and recorded as a set of calibration data points at the same position on the upper surface.

[0080] Step G34: Set different positions and collect the calibration data points to obtain F2 sets of calibration data points at the same position on the upper surface, for a total of A2*F2 calibration data points;

[0081] Step G35: The attitude of the robot end effector in the Cartesian coordinate system remains unchanged. The position of the robot end effector is shifted, and the laser of the laser displacement sensor is used to illuminate the right side of the calibration block. O2 calibration data points are collected and recorded as a set of right-side same-attitude calibration data points.

[0082] Step G36: Illuminate the front side, left side and rear side of the calibration block with the laser of the laser displacement sensor and collect data to obtain Q2 sets of calibration data points of the same attitude on the right side, for a total of O2*Q2 calibration data points;

[0083] Among them, M2, N2, A2, F2, O2, and Q2 are all positive integers greater than or equal to 1.

[0084] Preferably, each of the calibration data points includes,

[0085] The attitude and position of the robot's end effector spatial Cartesian coordinate system relative to the robot's base spatial Cartesian coordinate system, and the distance between the laser emission point and the irradiation point.

[0086] Preferably, step G4 includes,

[0087] Step G41: Read the location data;

[0088] Step G42: Calculate the initial value of the laser line direction of the laser displacement sensor;

[0089] Step G43: Correct the error in the direction of the laser line;

[0090] Step G44: Calculate the Euler angles and attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, and substitute them into the updated point coordinates;

[0091] Step G45: Calculate the initial value of the laser emission origin position;

[0092] Step G46: Perform the first error correction on the laser emission origin position;

[0093] Step G47: Perform a second error correction on the laser emission origin position based on the size of the calibration block;

[0094] Step G48: Calculate the position matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, and substitute it into the updated point coordinates;

[0095] Step G49: Calculate the homogeneous transformation matrix based on the attitude rotation matrix and the position matrix.

[0096] Preferably, the initial values ​​of the laser line direction and the initial values ​​of the laser emission origin position are obtained by solving the least squares solution of the corresponding linear equation system.

[0097] Preferably, the error correction of the laser line direction in step G43 is performed iteratively using a non-homogeneous objective function with respect to the laser line direction.

[0098] Preferably, the first error correction and the second error correction are performed iteratively using a non-homogeneous objective function with respect to the laser emission origin position.

[0099] Preferably, in step G5, the upper surface plane equation is established based on the upper surface coordinate values ​​of the calibration block;

[0100] The front plane equation is established based on the front coordinate values ​​of the calibration block;

[0101] The equation of the left plane is established based on the left coordinate values ​​of the calibration block.

[0102] The beneficial effects of this invention are as follows: by adopting the above technical solutions, a non-contact calibration method for the optical axis coordinate system of the laser displacement sensor during fixed installation and a non-contact calibration method for the optical axis coordinate system of the laser displacement sensor when the robot holds the laser displacement sensor are proposed. The data acquisition is automated, the accuracy is higher, the influence of human teaching is avoided, the error is small, and it is easy to implement. Attached Figure Description

[0103] Figure 1 This is a calibration diagram of a welding robot in the existing technology;

[0104] Figure 2 This is a flowchart of the welding positioning steps for welding robots in existing technologies;

[0105] Figure 3 This is a flowchart illustrating the steps of a non-contact calibration method for the optical axis coordinate system of a laser displacement sensor during fixed installation, as described in a preferred embodiment of the present invention.

[0106] Figure 4 This is a schematic diagram of step S3 in a preferred embodiment of the present invention;

[0107] Figure 5 This is a schematic diagram of step S4 in a preferred embodiment of the present invention;

[0108] Figure 6 This is a flowchart illustrating the calculation method for the non-contact calibration of the sensor optical axis coordinate system during the fixed installation of the laser displacement sensor in a preferred embodiment of the present invention.

[0109] Figure 7This is a layout diagram of a non-contact calibration method for the optical axis coordinate system of a laser displacement sensor during fixed installation, according to a preferred embodiment of the present invention.

[0110] Figure 8 This is a schematic diagram of a non-contact calibration method for the optical axis coordinate system of a laser displacement sensor during fixed installation, as described in a preferred embodiment of the present invention.

[0111] Figure 9 This is a schematic diagram of the calibration block kit in a preferred embodiment of the present invention;

[0112] Figure 10 This is a schematic diagram of the design of the upper surface of the calibration block in a preferred embodiment of the present invention;

[0113] Figure 11 This is a first structural schematic diagram of the laser displacement sensor fixture in a preferred embodiment of the present invention;

[0114] Figure 12 This is a schematic diagram of the design of the upper surface of the laser displacement sensor in a preferred embodiment of the present invention;

[0115] Figure 13 This is a flowchart illustrating the steps of a non-contact calibration method for the optical axis coordinate system of a robot holding a laser displacement sensor, as described in a preferred embodiment of the present invention.

[0116] Figure 14 This is a schematic diagram of step G3 in a preferred embodiment of the present invention;

[0117] Figure 15 This is a schematic diagram of step G4 in a preferred embodiment of the present invention;

[0118] Figure 16 This is a flowchart illustrating the calculation method for a non-contact calibration of the sensor optical axis coordinate system when a robot holds a laser displacement sensor, according to a preferred embodiment of the present invention.

[0119] Figure 17 This is a layout diagram of a robot holding a laser displacement sensor to perform laser displacement sensor optical axis calibration in a preferred embodiment of the present invention;

[0120] Figure 18 This is a schematic diagram of the structure of the robot holding the laser displacement sensor in a preferred embodiment of the present invention;

[0121] Figure 19 This is a schematic diagram of the second structure of the laser displacement sensor fixture in a preferred embodiment of the present invention.

[0122] In the attached diagram: 1. Welding robot; 2. Welding laser sensor; 3. Welding plane; 4. Laser spot; 5. Calibration block; 51. Upper surface of calibration block; 6. Laser displacement sensor; 61. Upper surface of laser displacement sensor; 7. Tooling table; 81. Robot base; 82. Robot end flange; 9. Calibration block kit; 91. Mechanical mounting interface plate; 92. Calibration block connecting rod; 10. Laser displacement sensor kit; 11. Laser displacement sensor fixture; 111. Laser sensor mounting interface; 112. Mechanical mounting interface; 12. Magnetic mounting plate; 13. Connecting rod; 14. Stainless steel anti-slip base. Detailed Implementation

[0123] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0124] It should be noted that, unless otherwise specified, the embodiments and features described in the present invention can be combined with each other.

[0125] The present invention will be further described below with reference to the accompanying drawings and specific embodiments, but this is not intended to limit the scope of the invention.

[0126] Non-contact calibration methods for fixed sensor installation, such as Figure 3 , Figure 7 As shown, including,

[0127] Step S0: Install a calibration block 5 on the robot's gripper and set a laser displacement sensor 6 on the tooling table 7.

[0128] Step S1: Establish a spatial rectangular coordinate system B1 for the robot base, a spatial rectangular coordinate system E1 for the robot end effector, a spatial rectangular coordinate system U1 for the laser displacement sensor, and a spatial rectangular coordinate system T1 for the calibration block on the robot base 81, the robot end effector flange 82, the laser displacement sensor 6, and the calibration block 5, respectively.

[0129] Step S2: Calculate the first set of position coordinates of the laser displacement sensor 6 on the calibration block 5 in the robot base space rectangular coordinate system B1, and the second set of position coordinates of the laser displacement sensor 6 on the calibration block 5 in the robot end space rectangular coordinate system E1.

[0130] Step S3: Determine whether the robot is collecting data for the first time. If so, offset the laser displacement sensor spatial rectangular coordinate system U1 and the calibration block spatial rectangular coordinate system T1, and then collect data to obtain multiple calibration data points. If not, set the robot's operation mode to automatic mode and directly collect data to obtain multiple calibration data points.

[0131] Step S4: Match the calibration data points with the first set of position coordinates and the second set of position coordinates of the irradiation point, and calculate the homogeneous transformation matrix of the laser displacement sensor spatial rectangular coordinate system U1 relative to the robot base spatial rectangular coordinate system B1.

[0132] Step S5: Based on the homogeneous transformation matrix and multiple spatial rectangular coordinate systems, recalculate the coordinates of the illumination point in the spatial rectangular coordinate system E1 of the robot end effector. Based on the front plane equation, left plane equation, and bottom plane equation of calibration block 5, calculate the direction of the spatial rectangular coordinate system of calibration block 5 and the origin of the spatial rectangular coordinate system of calibration block 5.

[0133] Specifically, a calibration method for a robot holding a calibration block is provided, which is applied to non-contact automatic coordinate system calibration. This method offers high calibration accuracy and automation. A laser displacement sensor 6 is fixedly installed, and the robot holds a square calibration block 5. A robot point acquisition program is written to automatically collect data points on the surface of the calibration block 5, establish the planar constraint relationship of the five surfaces of the calibration block 5 excluding the clamping surface, and calibrate the laser displacement sensor 6 relative to the user coordinate system of the robot base 81, as well as the calibration block 5 relative to the tool coordinate system of the robot end effector. This method avoids the influence of human teaching, has small errors, and is easy to implement.

[0134] In a preferred embodiment, in step S1, the laser displacement sensor 6 is fixedly installed on the tooling table 7, and the attitude and position of the laser displacement sensor spatial rectangular coordinate system U1 relative to the robot base spatial rectangular coordinate system B1 are kept fixed; the origin of the laser displacement sensor spatial rectangular coordinate system U1 is the laser emission point of the laser displacement sensor 6, and the Z-axis direction of the laser displacement sensor spatial rectangular coordinate system U1 is the same as the laser irradiation direction of the laser displacement sensor 6; the calibration block 5 is fixedly installed on the end of the robot, and the attitude and position of the calibration block spatial rectangular coordinate system T1 relative to the robot end spatial rectangular coordinate system E1 are kept fixed, and the X-axis, Y-axis, and Z-axis of the calibration block spatial rectangular coordinate system T1 are parallel to the front side normal, left side normal, and bottom normal of the calibration block 5, respectively; the origin of the calibration block spatial rectangular coordinate system T1 is the intersection of the front side, left side, and bottom planes of the calibration block 5.

[0135] In a preferred embodiment, the coordinate equation of the first set of position coordinate values ​​in step S2 is:

[0136]

[0137]

[0138] The coordinate equations for the second set of position coordinates are:

[0139]

[0140]

[0141] Among them, P B1 P E1 P T1 These represent the position coordinates of the laser displacement sensor 6 relative to the robot base spatial rectangular coordinate system B1, the robot end effector spatial rectangular coordinate system E1, and the calibration block spatial rectangular coordinate system T1, respectively.

[0142] The inverse matrix represents the 4x4 homogeneous transformation matrix of the robot's base Cartesian coordinate system B1 relative to the robot's end effector Cartesian coordinate system E1. Represents the 4x4 homogeneous transformation matrix of the robot's end effector spatial rectangular coordinate system E1 relative to the robot's base spatial rectangular coordinate system B1;

[0143] The 4x4 homogeneous transformation matrix represents the spatial rectangular coordinate system U1 of the laser displacement sensor relative to the spatial rectangular coordinate system B1 of the robot base.

[0144] This represents the 4x4 homogeneous transformation matrix of the calibration block spatial rectangular coordinate system T1 relative to the robot end effector spatial rectangular coordinate system E1;

[0145] D1 represents the distance between the emission point of the laser displacement sensor 6 and the illumination point on the calibration block 5;

[0146] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of robot base space rectangular coordinate system B1 relative to robot end space rectangular coordinate system E1, and the coordinate position of the origin of robot base space rectangular coordinate system B1 relative to robot end space rectangular coordinate system E1, respectively.

[0147] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system U1 relative to the robot base spatial rectangular coordinate system B1, and the coordinate position of the origin of the laser displacement sensor spatial rectangular coordinate system U1 relative to the robot base spatial rectangular coordinate system B1, respectively.

[0148] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot end effector spatial rectangular coordinate system E1 relative to the robot base spatial rectangular coordinate system B1, and the coordinate position of the origin of the robot end effector spatial rectangular coordinate system E1 relative to the robot base spatial rectangular coordinate system B1, respectively.

[0149] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of calibration block space rectangular coordinate system T1 relative to robot end space rectangular coordinate system E1, and the coordinate position of the origin of calibration block space rectangular coordinate system T1 relative to robot end space rectangular coordinate system E1, respectively.

[0150] In a preferred embodiment, such as Figure 4 , Figure 7 As shown, data acquisition in step S3 includes,

[0151] Step S31: The attitude of the robot end-effector spatial rectangular coordinate system E1 remains unchanged. The position of the robot end-effector is shifted, and the laser of the laser displacement sensor 6 is irradiated on the front side of the calibration block 5. M1 calibration data points are collected and recorded as a set of front side same attitude calibration data points.

[0152] Step S32: Set different postures and collect calibration data points to obtain N1 sets of front side calibration data points in the same posture, for a total of M1*N1 calibration data points;

[0153] Step S33: The position of the robot end-effector spatial rectangular coordinate system E1 remains unchanged. The robot end-effector posture is controlled to change. The laser of the laser displacement sensor 6 is irradiated on the front side of the calibration block 5 to collect A1 calibration data points, which are recorded as a set of front side calibration data points at the same position.

[0154] Step S34: Set different positions and collect calibration data points to obtain F1 group of calibration data points at the same position on the front side, for a total of A1*F1 calibration data points;

[0155] Step S35: The attitude of the robot end-effector spatial rectangular coordinate system E1 remains unchanged. The position of the robot end-effector is shifted so that the laser of the laser displacement sensor 6 is irradiated on the left side of the calibration block 5. O1 calibration data points are collected and recorded as a set of left side same attitude calibration data points.

[0156] Step S36: Illuminate the rear side, right side and bottom side of the calibration block 5 with the laser of the laser displacement sensor 6 and collect data to obtain Q1 sets of calibration data points on the left side in the same posture, for a total of O1*Q1 calibration data points.

[0157] Where M1, N1, A1, F1, O1, and Q1 are all positive integers greater than or equal to 1.

[0158] Specifically, M1 is 16, N1 is 5, totaling 80 calibration data points; A1 is 10, F1 is 1, totaling 10 calibration data points; O1 is 16, Q1 is 4, totaling 64 data points, for a total of 154 calibration data points, or 154 sets. And D1 data; Step S5 requires recalculating the coordinate values ​​of 154 illumination points in the robot end space rectangular coordinate system E1, establishing the front plane equation based on the 90 coordinate values ​​of the front side of calibration block 5, and calculating the plane normal, establishing the left plane equation based on the 16 coordinate values ​​of the left side, and establishing the bottom plane equation based on the 16 coordinate values ​​of the bottom surface. The front side, left side, and bottom surface normals are respectively used as the X, Y, and Z axes of the calibration block space rectangular coordinate system T1, and the plane intersection point is calculated based on the three plane equations, which is the origin of the calibration block space rectangular coordinate system T1.

[0159] In a preferred embodiment, each calibration data point includes,

[0160] The attitude and position of the robot's end effector spatial rectangular coordinate system E1 relative to the robot's base spatial rectangular coordinate system B1, as well as the distance between the laser emission point and the irradiation point.

[0161] In a preferred embodiment, such as Figure 5 , Figure 7 As shown, step S4 includes,

[0162] Step S41: Read the point data;

[0163] Step S42: Calculate the initial value of the laser line direction of the laser displacement sensor 6;

[0164] Step S43: Correct the laser line direction for errors;

[0165] Step S44: Calculate the Euler angles and attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system U1 relative to the robot base spatial rectangular coordinate system B1, and substitute them into the updated point coordinates;

[0166] Step S45: Calculate the initial value of the laser emission origin position;

[0167] Step S46: Perform the first error correction on the laser emission origin position;

[0168] Step S47: Perform a second error correction on the laser emission origin position based on the dimensions of calibration block 5;

[0169] Step S48: Calculate the position matrix of the laser displacement sensor spatial rectangular coordinate system U1 relative to the robot base spatial rectangular coordinate system B1, and substitute it into the updated point coordinates;

[0170] Step S49: Calculate the homogeneous transformation matrix based on the attitude rotation matrix and the position matrix.

[0171] In a preferred embodiment, the initial values ​​of the laser line direction and the initial values ​​of the laser emission origin position are obtained by solving the least squares solution of the corresponding linear equations.

[0172] In a preferred embodiment, the error correction of the laser line direction in step S43 is performed iteratively using a non-homogeneous objective function with respect to the laser line direction.

[0173] In a preferred embodiment, the first and second error corrections are iteratively performed using a non-homogeneous objective function with respect to the origin position of the laser emission point.

[0174] In a preferred embodiment, in step S5, the front plane equation is established based on the front coordinate values ​​of the calibration block 5.

[0175] Establish the equation of the left plane based on the left coordinate values ​​of calibration block 5;

[0176] The equation of the bottom plane is established based on the coordinate values ​​of the bottom surface of calibration block 5.

[0177] In the first embodiment, the robot calibration device, such as Figures 7 to 12 , Figure 19 As shown, including,

[0178] The robot is located on one side of tooling table 7. The robot includes...

[0179] Robot base 81;

[0180] Robot end flange 82 connects to robot base 81;

[0181] Calibration block 5 is mounted on the robot's gripper.

[0182] The laser displacement sensor 6 is fixed on the tooling table 7. A coordinate system is established on the upper surface 61 of the laser displacement sensor. The laser displacement sensor 6 forms an illumination point by irradiating the calibration block 5 with a laser. By writing a robot point acquisition program, the data points on the surface of the calibration block 5 are automatically acquired, and the planar constraint relationship of the five surfaces of the calibration block 5 other than the clamping surface is established. The laser displacement sensor 6 is calibrated for the user coordinate system of the robot base 81, achieving automation and high acquisition accuracy.

[0183] Specifically, calibration block kit 9 ​​is connected to the robot's gripper, and calibration block kit 9 ​​includes...

[0184] A coordinate system is established on the upper surface 51 of the calibration block;

[0185] Mechanical mounting interface board 91 connects to the robot's gripper;

[0186] Multiple calibration block connecting rods 92 are located at the four corners of the calibration block 5. One end of the calibration block connecting rod 92 is connected to the mechanical mounting interface plate 91, and the other end of the calibration block connecting rod 92 is connected to the calibration block 5.

[0187] More specifically, the laser displacement sensor kit 10 includes,

[0188] The laser displacement sensor fixture 11 includes a laser sensor mounting interface 111 and a mechanical mounting interface 112.

[0189] The magnetic mounting plate 12 is located below the laser displacement sensor fixture 11;

[0190] Multiple connecting rods 13 are located at the four corners of the magnetic mounting plate 12. One end of the connecting rod 13 is connected to the magnetic mounting plate 12, and the other end of the connecting rod 13 is connected to a stainless steel anti-slip base 14.

[0191] like Figure 6 The workflow shown was repeated five times, and the results are shown in the table below. The repeatability of the calibration method is as follows: the laser user coordinate system direction error is 0.2°, and the position error is 0.3mm. Among them, the repeatability error along the laser direction, i.e., the Y direction, is <0.02mm. The calibration block 5 tool coordinate system direction error is 0.01°, and the position error is 0.01mm. The measured length and width of calibration block 5 are 0.01mm different from the standard dimensions of calibration block 5 (length 80.208mm, width 70.185mm).

[0192]

[0193]

[0194]

[0195] Specifically, the collected data is shown in the table below.

[0196]

[0197]

[0198]

[0199] To be more specific, The specific solution method is as follows:

[0200]

[0201] unknowns in the solution That is, the homogeneous transformation matrix of the laser displacement sensor's spatial rectangular coordinate system U1 relative to the robot base's spatial rectangular coordinate system B1 is solved in two steps. The first step is to solve for the 3*3 rotation matrix. The second step is to solve for the 3*1 position translation. In the formula It can be calculated from the collected data (x,y,z,w,p,r).

[0202]

[0203] (1) Solve Third column

[0204]

[0205] For a set of points P with the same pose i P j robot end-effector posture Same, position Unlike other vectors, the vector formed by two points is represented as follows:

[0206]

[0207] Any six points P1…P6 with the same orientation and coplanarity can be paired to form three vectors. These three non-zero vectors are coplanar, and the determinant of the matrix formed by them is 0.

[0208]

[0209] Expanding the determinant and simplifying, we get:

[0210]

[0211] This expression is a... A linear equation with three unknowns.

[0212] Repeat the above process, randomly select six points with the same orientation to construct a linear equation by making the six points coplanar, and solve at least three unrelated equations simultaneously to obtain a system of linear equations: The solution can be obtained When there are more than three equations and the coefficient matrix A is not a square matrix, then the inverse matrix A will be... -1 By replacing it with the pseudo-inverse pinv(A), the least squares solution of the system of equations is obtained.

[0213] (2)Amendment error;

[0214] Choose any three different postures For each pose, select two points to form a vector representing the same pose. Three non-zero vectors are coplanar, and the determinant of the matrix they form is 0.

[0215]

[0216] Because the three vectors in this formula correspond to the attitude The expression is different and cannot be simplified as in (1). The left side of the expression is about The nonlinear polynomial is denoted as f(z1,z2,z3).

[0217] Repeat the above process, randomly selecting three different postures, and for each posture, selecting two points to form a vector. Construct a polynomial using the coplanarity of these three vectors, and denote the error objective function as .

[0218] z1 2 +z2 2 +z3 2 =1

[0219] The result obtained in (1) is Initially, an iterative method, such as gradient descent, is used to solve the nonlinear least squares problem that minimizes the above objective function.

[0220] The specific implementation steps of the gradient descent algorithm

[0221] Step 1, apply the objective function to... Differentiating, we obtain the gradient function.

[0222] Step 2, set the initial iteration step size;

[0223] Step 3: Substitute the initial value z0 into the objective function S(z1, z2, z3);

[0224] Step 4: Substitute the initial value z0 into the gradient function and update z0′=z0+step*grad(z0) along the gradient direction;

[0225] Step 5: Substitute the updated value z0′ into the objective function. If S(z0′) < S(z0), the updated value is correct. Keep z0′ and continue to Step 6. Otherwise, modify the iteration step size step = step / 2 and return to Step 4 to update z0′ again.

[0226] Step 6: Determine whether the termination condition has been met. If |z0′-z0|<ε1 or |S(z0′)-S(z0)|<ε2, terminate the iteration and continue to Step 7. Otherwise, let z0=z0′ and return to Step 3 to continue the iteration.

[0227] Step 7: Output the updated z0′.

[0228] (3) Solve

[0229] Attitude matrix With Euler angles Correspondingly, when r = 0,

[0230]

[0231] The third column Based on the results obtained in (2) Solve for w and p, then substitute them into the above equation to obtain the solution.

[0232] (4) Solve

[0233] For a set of points P with the same pose i P j ,

[0234]

[0235] The result obtained from (3) Substituting the known quantities into the equation, the above expression becomes a known constant.

[0236] For a set of points P with different poses i P j ,

[0237]

[0238] Only in the formula For the unknown quantity to be solved, a vector is formed by any two points with the same orientation. and a vector composed of different attitude points. Three non-zero vectors are coplanar, and the determinant of the matrix they form is 0.

[0239]

[0240] In the formula For known constants, For containing A 3x1 vector, each component of which is about A first-order polynomial, therefore the above expression is a polynomial about A linear equation with three unknowns.

[0241] Repeat the above process, randomly selecting two vectors with the same orientation and one vector with a different orientation. Construct a linear equation by ensuring that the three vectors are coplanar. Solve the system of at least three unrelated equations to obtain a system of linear equations. The solution can be obtained When there are more than three equations and the coefficient matrix A is not a square matrix, then the inverse matrix A will be... -1 Replace with the pseudo-inverse pinv(A).

[0242] (5)Amendment error;

[0243] Choose any three vectors with different orientations. Three non-zero vectors are coplanar, and the determinant of the matrix they form is 0.

[0244]

[0245] All terms of the 3x3 determinant on the left side of the above equation are about A first-order polynomial, therefore the left side is about The nonlinear polynomial is denoted as f(a,b,c).

[0246] Repeat the above process, selecting any three points with different orientations to form a vector. Construct a polynomial by ensuring the three vectors are coplanar, and repeat this process n times. Denote the error objective function as .

[0247]

[0248] The result obtained in (4) is Initially, an iterative method, such as gradient descent, is used to solve the nonlinear least squares problem that minimizes the above objective function.

[0249] (6) Adjust again based on the dimensions of calibration block 5 error;

[0250] The result obtained from (3) Substitute these values ​​into the known quantities to recalculate the position of the data point in the robot's end effector space Cartesian coordinate system E1.

[0251]

[0252] The 16 points to the left of calibration block 5 lie on the same plane, assuming the equation of this plane is Ax + By + Cz + 1 = 0. Assign the coordinates of these 16 points... Substituting each value separately, we obtain the following information: Solving the system of linear equations, we obtain the three unknowns in the plane equations.

[0253] The average distance from the 16 points on the right side of calibration block 5 to the plane is,

[0254]

[0255] This distance is the average distance between the left and right sides of calibration block 5, denoted as the measured length *l* of calibration block 5. Similarly, based on 16 points on each of the front and rear sides, the measured width *w* of calibration block 5 is calculated. The actual dimensions of calibration block 5 are known quantities; in this example, the length is 80.208 mm and the width is 70.185 mm. Therefore, the objective function for error is...

[0256] S2(a,b,c)=(l-80.208) 2 +(w-70.185) 2

[0257] The result obtained in (5) is Initially, an iterative method, such as gradient descent, is used to solve the nonlinear least squares problem that minimizes the above objective function.

[0258] More specifically, the specific solution method for the user coordinate system of calibration block 5 is as follows: based on the obtained... Recalculate the coordinates of the 154 illumination points in the robot's end effector space Cartesian coordinate system E1.

[0259]

[0260] Based on the plane normal of calibration block 5, the coordinate system direction is calculated. The 16 points on the bottom surface of calibration block 5 lie on the same plane, and the equation of this plane is assumed to be A1x + B1y + C1z = 1. The coordinates of the 16 points are... Substitute them into the equations to obtain information about... The system of linear equations,

[0261]

[0262] Solving the equation of a plane for three unknowns The normal vector of the plane after normalization is

[0263] Repeat the above process to establish the equation of the left plane based on the 16 points on the left, and calculate the normal to the left plane. Based on the 90 points on the front side, establish the equation of the front plane and calculate the normal direction of the front plane. The plane normals of the front, left, and top surfaces are respectively taken as the X, Y, and Z axes of the calibration block spatial rectangular coordinate system T1.

[0264] Calculate the origin of the coordinate system based on the plane equation of calibration block 5, and then solve the equations of the upper surface, left side, and front side planes simultaneously.

[0265]

[0266] Find the intersection points of the planes This serves as the origin of the calibration block 5 coordinate system, i.e., the position of the origin of the calibration block spatial rectangular coordinate system T1 relative to the robot end effector spatial rectangular coordinate system E1.

[0267] Non-contact calibration methods for robot handheld sensors, such as Figure 13 , Figure 17 As shown, including,

[0268] Step G0: Install a laser displacement sensor 6 on the robot's gripper and set a calibration block 5 on the tooling table 7.

[0269] Step G1: Establish a spatial rectangular coordinate system B2 for the robot base, a spatial rectangular coordinate system E2 for the robot end effector, a spatial rectangular coordinate system U2 for the laser displacement sensor, and a spatial rectangular coordinate system T2 for the calibration block on the robot base 81, the robot end effector flange 82, the laser displacement sensor 6, and the calibration block 5, respectively.

[0270] Step G2: In the robot base space rectangular coordinate system B2, calculate the position coordinates of the laser displacement sensor 6 on the irradiation point on the calibration block 5.

[0271] Step G3: Determine whether the robot is collecting data for the first time. If so, offset the laser displacement sensor spatial rectangular coordinate system U2 and the calibration block spatial rectangular coordinate system T2 before collecting data to obtain multiple calibration data points. If not, set the robot's operation mode to automatic mode and directly collect data to obtain multiple calibration data points.

[0272] Step G4: Assign the calibration data points to the illumination points respectively, and calculate the homogeneous transformation matrix of the laser displacement sensor spatial rectangular coordinate system U2 relative to the robot end-effector spatial rectangular coordinate system E2.

[0273] Step G5: Based on the homogeneous transformation matrix and multiple spatial rectangular coordinate systems, recalculate the coordinates of the illumination point in the spatial rectangular coordinate system B2 of the robot base. Based on the front plane equation, left plane equation, and upper surface plane equation of calibration block 5, calculate the direction of the spatial rectangular coordinate system of calibration block 5 and the origin of the spatial rectangular coordinate system of calibration block 5.

[0274] Specifically, this invention provides a calibration method for a robot-held laser displacement sensor 6, applied to non-contact automatic coordinate system calibration. This method offers high calibration accuracy and automation. A robot point acquisition program is written to automatically collect data points on the surface of the calibration block 5, establishing the coordinate system of the laser displacement sensor 6 relative to the robot base 81, and the coordinate system of the calibration block 5 relative to the robot end effector. This avoids the influence of manual teaching, has small errors, and is easy to implement.

[0275] In a preferred embodiment, in step G1, the laser displacement sensor 6 is fixedly installed on the end effector of the robot. The attitude and position of the laser displacement sensor spatial rectangular coordinate system U2 relative to the robot end effector spatial rectangular coordinate system E2 remain fixed. The origin of the laser displacement sensor spatial rectangular coordinate system U2 is the laser emission point of the laser displacement sensor 6, and the Z-axis direction of the laser displacement sensor spatial rectangular coordinate system U2 is the same as the laser irradiation direction of the laser displacement sensor 6. The calibration block 5 is fixedly installed in the robot's workspace. The attitude and position of the calibration block spatial rectangular coordinate system T2 relative to the robot base spatial rectangular coordinate system B2 remain fixed. The X-axis, Y-axis, and Z-axis of the calibration block spatial rectangular coordinate system T2 are parallel to the front side normal, left side normal, and top surface normal of the calibration block 5, respectively. The origin of the calibration block spatial rectangular coordinate system T2 is the intersection of the front side, left side, and top surface planes of the calibration block 5.

[0276] In a preferred embodiment, the equation for the position coordinates of the irradiation point in step G2 is:

[0277]

[0278] Among them, P B2 This indicates the position coordinates of the illumination point of the laser displacement sensor 6 relative to the robot base's Cartesian coordinate system B2;

[0279] Represents the 4x4 homogeneous transformation matrix of the robot's end effector spatial rectangular coordinate system E2 relative to the robot's base spatial rectangular coordinate system B2;

[0280] The 4x4 homogeneous transformation matrix represents the spatial rectangular coordinate system U2 of the laser displacement sensor relative to the spatial rectangular coordinate system E2 of the robot end effector.

[0281] D2 represents the distance between the emission point of the laser displacement sensor 6 and the illumination point on the calibration block 5;

[0282] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot end effector spatial rectangular coordinate system E2 relative to the robot base spatial rectangular coordinate system B2, and the coordinate position of the origin of the robot end effector spatial rectangular coordinate system E2 relative to the robot base spatial rectangular coordinate system B2, respectively.

[0283] and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system U2 relative to the robot end effector spatial rectangular coordinate system, and the coordinate position of the origin of the laser displacement sensor spatial rectangular coordinate system U2 relative to the robot end effector spatial rectangular coordinate system E2, respectively.

[0284] In a preferred embodiment, such as Figure 14 , Figure 17 As shown, data acquisition in step G3 includes,

[0285] Step G31: The attitude of the robot end-effector spatial rectangular coordinate system E2 remains unchanged. The position of the robot end-effector is shifted, and the laser of the laser displacement sensor 6 is irradiated onto the upper surface of the calibration block 5. M2 calibration data points are collected and recorded as a set of upper surface same attitude calibration data points.

[0286] Step G32: Set different attitudes and collect calibration data points to obtain N2 sets of calibration data points on the upper surface in the same attitude, for a total of M2*N2 calibration data points;

[0287] In step G33, the position of the robot end-effector spatial rectangular coordinate system E2 remains unchanged, and the robot end-effector posture is controlled to change. The laser of the laser displacement sensor 6 is irradiated onto the upper surface of the calibration block 5, and A2 calibration data points are collected and recorded as a set of calibration data points at the same position on the upper surface.

[0288] Step G34: Set different positions and collect calibration data points to obtain F2 sets of calibration data points at the same positions on the upper surface, for a total of A2*F2 calibration data points;

[0289] In step G35, the attitude of the robot end-effector spatial rectangular coordinate system E2 remains unchanged. The position of the robot end-effector is shifted so that the laser of the laser displacement sensor 6 is irradiated on the right side of the calibration block 5, and O2 calibration data points are collected and recorded as a set of right side same attitude calibration data points.

[0290] Step G36: Illuminate the front, left and rear sides of the calibration block 5 with the laser of the laser displacement sensor 6 and collect data to obtain Q2 sets of calibration data points on the right side in the same posture, for a total of O2*Q2 calibration data points.

[0291] Among them, M2, N2, A2, F2, O2, and Q2 are all positive integers greater than or equal to 1.

[0292] Specifically, M2 was 16, N2 was 5, for a total of 80 calibration data points; A2 was 10, F2 was 1, for a total of 10 calibration data points; O2 was 16, Q2 was 4, for a total of 64 data points, resulting in a total of 154 calibration data points, or 154 sets. And D2 data; Step G5 requires recalculating the coordinate values ​​of 154 illumination points in the robot base space rectangular coordinate system B2. Based on the 90 coordinate values ​​of the upper surface 51 of calibration block 5, establish the front plane equation and calculate the plane normal, constraining its direction to be upward, consistent with the Z-axis principal direction of the robot base space rectangular coordinate system B2. Based on the 16 coordinate values ​​of the front side, establish the front plane equation, constraining its normal direction to be consistent with the X-axis principal direction of the robot base space rectangular coordinate system B2. Based on the 16 coordinate values ​​of the left side, establish the left plane equation, constraining its normal direction to be consistent with the Y-axis principal direction of the robot base space rectangular coordinate system B2. Calculate the plane intersection point based on the three plane equations of the upper surface, front side, and left side, which is the origin of the calibration block space rectangular coordinate system T2.

[0293] In a preferred embodiment, each calibration data point includes,

[0294] The attitude and position of the robot's end effector spatial rectangular coordinate system E2 relative to the robot's base spatial rectangular coordinate system B2, as well as the distance between the laser emission point and the irradiation point.

[0295] In a preferred embodiment, such as Figure 7 , Figure 15 As shown, step G4 includes,

[0296] Step G41: Read the location data;

[0297] Step G42: Calculate the initial value of the laser line direction of the laser displacement sensor 6;

[0298] Step G43: Correct the laser line direction for errors;

[0299] Step G44: Calculate the Euler angles and attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system U2 relative to the robot end-effector spatial rectangular coordinate system E2, and substitute them into the updated point coordinates;

[0300] Step G45: Calculate the initial value of the laser emission origin position;

[0301] Step G46: Perform the first error correction on the laser emission origin position;

[0302] Step G47: Perform a second error correction on the laser emission origin position based on the dimensions of calibration block 5;

[0303] Step G48: Calculate the position matrix of the laser displacement sensor spatial rectangular coordinate system U2 relative to the robot end effector spatial rectangular coordinate system E2, and substitute it into the updated point coordinates;

[0304] Step G49: Calculate the homogeneous transformation matrix based on the attitude rotation matrix and the position matrix.

[0305] In a preferred embodiment, the initial values ​​of the laser line direction and the initial values ​​of the laser emission origin position are obtained by solving the least squares solution of the corresponding linear equations.

[0306] In a preferred embodiment, the error correction of the laser line direction in step G43 is performed iteratively using a non-homogeneous objective function with respect to the laser line direction.

[0307] In a preferred embodiment, the first and second error corrections are iteratively performed using a non-homogeneous objective function with respect to the origin position of the laser emission point.

[0308] In a preferred embodiment, in step G5, the upper surface plane equation is established based on the upper surface coordinate values ​​of the calibration block 5.

[0309] Establish the equation of the front plane based on the front coordinate values ​​of calibration block 5;

[0310] The equation of the left plane is established based on the left coordinate values ​​of calibration block 5.

[0311] In the second embodiment, the robot calibration device, such as Figure 9 , Figures 17 to 19 As shown, including,

[0312] The robot is located on one side of tooling table 7. The robot includes...

[0313] Robot base 81;

[0314] Robot end flange 82 connects to robot base 81;

[0315] Laser displacement sensor 6 is mounted on the robot's gripper;

[0316] The calibration block 5 is fixed on the tooling table 7. The laser displacement sensor 6 forms an illumination point by irradiating the calibration block 5 with a laser. By writing a robot point acquisition program, the data points on the surface of the calibration block 5 are automatically acquired, and the planar constraint relationship of the five surfaces of the calibration block 5 other than the clamping surface is established. The calibration laser displacement sensor 6 is aligned with the user coordinate system of the robot base 81, achieving automation and high acquisition accuracy.

[0317] Specifically, the calibration block kit 9 ​​is connected to the tooling table 7, and the calibration block kit 9 ​​includes...

[0318] Mechanical mounting interface board 91, connecting tooling table 7;

[0319] Multiple calibration block connecting rods 92 are located at the four corners of calibration block 5. One end of calibration block connecting rod 2 is connected to mechanical mounting interface plate 91, and the other end of calibration block connecting rod 92 is connected to calibration block 5.

[0320] More specifically, the laser displacement sensor kit 10 includes,

[0321] The laser displacement sensor fixture 11 includes a laser sensor mounting interface 111 and a mechanical mounting interface 112.

[0322] like Figure 16 The workflow shown was repeated five times, and the results are shown in the table below. The repeatability of the calibration method is as follows: laser tool coordinate system direction error 0.08°, position error 0.08mm (where the repeatability error along the laser direction, i.e., the x-direction, is <0.01mm); calibration block 55 user coordinate system direction error 0.009°, position error 0.01mm. The measured length and width of calibration block 55 differ from the standard dimensions of 80.208mm (length) and 70.185mm (width) by 0.01mm.

[0323]

[0324]

[0325]

[0326] Specifically, the collected data is shown below.

[0327]

[0328]

[0329]

[0330]

[0331] To be more specific, Specific solution method

[0332]

[0333] unknowns in the solution This refers to the homogeneous transformation matrix of the laser displacement sensor's Cartesian coordinate system U2 relative to the robot's end effector's Cartesian coordinate system E2. It is solved in two steps: the first step is to solve for the 3x3 rotation matrix. The second step is to solve for the 3*1 position translation. In the formula It can be calculated from the collected data (x,y,z,w,p,r).

[0334]

[0335] (1) Solve Third column

[0336]

[0337] For a set of points P with the same pose i P j robot end-effector posture Same, position Unlike other vectors, the vector formed by two points is represented as follows:

[0338]

[0339] Any six points P1…P6 with the same orientation and coplanarity can be paired to form three vectors. These three non-zero vectors are coplanar, and the determinant of the matrix formed by them is 0.

[0340]

[0341] Expanding the determinant and simplifying, we get:

[0342]

[0343] This expression is a... A linear equation with three unknowns.

[0344] Repeat the above process, randomly select six points with the same orientation to construct a linear equation by making the six points coplanar, and solve at least three unrelated equations simultaneously to obtain a system of linear equations: The solution can be obtained When there are more than three equations and the coefficient matrix A is not a square matrix, then the inverse matrix A will be... -1 By replacing it with the pseudo-inverse pinv(A), the least squares solution of the system of equations is obtained.

[0345] (2)Amendment error;

[0346] Choose any three different postures For each pose, select two points to form a vector representing the same pose. Three non-zero vectors are coplanar, and the determinant of the matrix they form is 0.

[0347]

[0348] Because the three vectors in this formula correspond to the attitude The expression is different and cannot be simplified as in (1). The left side of the expression is about The nonlinear polynomial is denoted as f(z1,z2,z3).

[0349] Repeat the above process, randomly selecting three different postures, and for each posture, selecting two points to form a vector. Construct a polynomial using the coplanarity of these three vectors, and denote the error objective function as .

[0350]

[0351] The result obtained in (1) is Initially, an iterative method, such as gradient descent, is used to solve the nonlinear least squares problem that minimizes the above objective function.

[0352] The specific implementation steps of the gradient descent algorithm

[0353] Step 1, apply the objective function to... Differentiating, we obtain the gradient function.

[0354] Step 2, set the initial iteration step size;

[0355] Step 3: Substitute the initial value z0 into the objective function S(z1,z2,z3);

[0356] Step 4: Substitute the initial value z0 into the gradient function and update z0′=z0+step*grad(z0) along the gradient direction;

[0357] Step 5: Substitute the updated value z0′ into the objective function. If S(z0′) < S(z0), the updated value is correct. Keep z0′ and continue to Step 6. Otherwise, modify the iteration step size step = step / 2 and return to Step 4 to update z0′ again.

[0358] Step 6: Determine whether the termination condition has been met. If |z0′-z0|<ε1 or |S(z0′)-S(z0)|<ε2, terminate the iteration and continue to Step 7. Otherwise, let z0=z0′ and return to Step 3 to continue the iteration.

[0359] Step 7: Output the updated z0′.

[0360] (3) Solve

[0361] Attitude matrix With Euler angles Correspondingly, when r = 0,

[0362]

[0363] The third column Based on the results obtained in (2) Solve for w and p, then substitute them into the above equation to obtain the solution.

[0364] (4) Solve

[0365] For a set of points P with the same pose i P j ,

[0366]

[0367] The result obtained from (3) Substituting the known quantities into the equation, the above expression becomes a known constant.

[0368] For a set of points P with different poses i P j ,

[0369]

[0370] Only in the formula The unknown quantity to be solved.

[0371] A vector formed by any two points with the same orientation. and a vector composed of different attitude points. Three non-zero vectors are coplanar, and the determinant of the matrix they form is 0.

[0372]

[0373] In the formula For known constants, For containing A 3x1 vector, each component of which is about A first-order polynomial, therefore the above expression is a polynomial about A linear equation with three unknowns.

[0374] Repeat the above process, randomly selecting two vectors with the same orientation and one vector with a different orientation. Construct a linear equation by ensuring that the three vectors are coplanar. Solve the system of at least three unrelated equations to obtain a system of linear equations. The solution can be obtained When there are more than three equations and the coefficient matrix A is not a square matrix, then the inverse matrix A will be... -1 Replace with the pseudo-inverse pinv(A).

[0375] (5)Amendment error;

[0376] Choose any three vectors with different orientations. Three non-zero vectors are coplanar, and the determinant of the matrix they form is 0.

[0377]

[0378] All terms of the 3x3 determinant on the left side of the above equation are about A first-order polynomial, therefore the left side is about The nonlinear polynomial is denoted as f(a,b,c).

[0379] Repeat the above process, selecting any three points with different orientations to form a vector. Construct a polynomial by ensuring the three vectors are coplanar, and repeat this process n times. Denote the error objective function as .

[0380]

[0381] The result obtained in (4) is Initially, an iterative method, such as gradient descent, is used to solve the nonlinear least squares problem that minimizes the above objective function.

[0382] (6) Adjust again based on the dimensions of calibration block 5 error;

[0383] The result obtained from (3) Substitute these values ​​into the known quantities to recalculate the positions of the data points in the base coordinate system.

[0384]

[0385] The 16 points to the left of calibration block 5 lie on the same plane, assuming the equation of this plane is Ax + By + Cz + 1 = 0. Assign the coordinates of these 16 points... Substituting each value separately, we obtain the following information: Solving the system of linear equations, we obtain the three unknowns in the plane equations.

[0386] The average distance from the 16 points on the right side of calibration block 5 to the plane is,

[0387]

[0388] This distance is the average distance between the left and right sides of calibration block 5, denoted as the measured length *l* of calibration block 5. Similarly, based on 16 points on each of the front and rear sides, the measured width *w* of calibration block 5 is calculated. The actual dimensions of calibration block 5 are known (length 80.208 mm, width 70.185 mm in this example), therefore, the objective function for error is...

[0389] S2(a, b, c) = (l - 80.208) 2+(w-70.185) 2

[0390] The result obtained in (5) is Initially, an iterative method, such as gradient descent, is used to solve the nonlinear least squares problem that minimizes the above objective function.

[0391] The specific solution method for the user coordinate system in calibration block 5, and the obtained... And recalculate the coordinates of the 154 illumination points in the robot base space Cartesian coordinate system B2.

[0392]

[0393] Based on the coordinate system direction calculated using the plane normal of calibration block 5, 90 points on the upper surface 51 of the calibration block lie on the same plane. Assume the equation of this plane is A1x + B1y + C1z = 1. Then, calculate the coordinates of these 90 points. Substitute them into the equations to obtain information about... The system of linear equations,

[0394]

[0395] Solving the equation of a plane for three unknowns The normal vector of the plane after normalization is Constrain its direction to the principal Z-axis direction of the base coordinate system. Consistent, even if C1>0, the calculated surface normal is

[0396] Repeat the above process to establish the equation of the left plane based on the 16 points on the left, and calculate the normal to the left plane. Direction relative to the principal Y-axis of the base coordinate system Consistent. Based on the 16 points on the front side, establish the equation of the front plane and calculate the normal to the front plane. Direction and the principal X-axis direction of the base coordinate system Consistent. The plane normals of the front, left, and top surfaces are respectively taken as the X, Y, and Z axes of the calibration block's spatial rectangular coordinate system T2.

[0397] Calculate the origin of the coordinate system based on the plane equation of calibration block 5, and then solve the equations of the upper surface, left side, and front side planes simultaneously.

[0398]

[0399] Find the intersection points of the planes As the origin of the rectangular coordinate system T2 in the calibration block space.

[0400] In summary, this application provides a non-contact calibration method for robot-held sensors and fixed-mounted sensors, applicable to all six-degree-of-freedom industrial robots. It overcomes the shortcomings of existing technologies and proposes an automated, higher-precision non-contact coordinate system calibration method. Specifically, in the robot-held calibration block method, the laser displacement sensor is fixedly mounted, and the robot holds a square calibration block. In the robot-held sensor calibration method, the robot holds a laser displacement sensor based on the square calibration block. A robot point acquisition program is written to automatically collect data points on the calibration block surface, establish the planar constraint relationships of the five surfaces of the calibration block (excluding the clamping surface), and calibrate the laser displacement sensor relative to the user coordinate system of the robot base, as well as the calibration block relative to the tool coordinate system of the robot end effector. This method offers higher precision, automated data acquisition, avoids the influence of human teaching, has smaller errors, and is easy to implement.

[0401] The above description is merely a preferred embodiment of the present invention and does not limit the implementation and protection scope of the present invention. Those skilled in the art should realize that any equivalent substitutions and obvious changes made based on the description and illustrations of the present invention should be included within the protection scope of the present invention.

Claims

1. A non-contact calibration method for fixed installation of sensors, characterized in that, include, Step S0: Install a calibration block on the robot's gripper and set a laser displacement sensor on the tooling table. Step S1: Establish a spatial rectangular coordinate system for the robot base, a spatial rectangular coordinate system for the robot end effector, a spatial rectangular coordinate system for the laser displacement sensor, and a spatial rectangular coordinate system for the calibration block on the robot base, the robot end effector flange, the laser displacement sensor, and the calibration block, respectively. Step S2: Calculate the first set of position coordinates of the laser displacement sensor's illumination point on the calibration block in the robot base space rectangular coordinate system, and the second set of position coordinates of the laser displacement sensor's illumination point on the calibration block in the robot end-effector space rectangular coordinate system. Step S3: Determine whether the robot is collecting data for the first time. If so, offset the spatial rectangular coordinate system of the laser displacement sensor and the spatial rectangular coordinate system of the calibration block before collecting data to obtain multiple calibration data points. If not, set the robot's operation mode to automatic mode and directly collect data to obtain multiple calibration data points. Step S4: Assign the calibration data points to the first set of position coordinates and the second set of position coordinates of the irradiation point respectively, and calculate the homogeneous transformation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system; Step S5: Based on the homogeneous transformation matrix and multiple spatial rectangular coordinate systems, recalculate the coordinate values ​​of the illumination point in the spatial rectangular coordinate system of the robot end effector. Based on the front plane equation, left plane equation, and bottom plane equation of the calibration block, calculate the direction of the spatial rectangular coordinate system of the calibration block and the origin of the spatial rectangular coordinate system of the calibration block.

2. The non-contact calibration method for fixed installation of sensors according to claim 1, characterized in that, In step S1, the laser displacement sensor is fixedly installed on the tooling table. The attitude and position of the laser displacement sensor's spatial rectangular coordinate system relative to the robot base's spatial rectangular coordinate system remain fixed. The origin of the laser displacement sensor's spatial rectangular coordinate system is the laser emission point of the laser displacement sensor, and the Z-axis direction of the laser displacement sensor's spatial rectangular coordinate system is the same as the laser irradiation direction of the laser displacement sensor. The calibration block is fixedly installed on the end effector of the robot. The attitude and position of the calibration block's spatial rectangular coordinate system relative to the robot end effector's spatial rectangular coordinate system remain fixed. The X-axis, Y-axis, and Z-axis of the calibration block's spatial rectangular coordinate system are parallel to the normal directions of the front, left, and bottom surfaces of the calibration block, respectively. The origin of the calibration block's spatial rectangular coordinate system is the intersection of the front, left, and bottom surfaces of the calibration block.

3. The non-contact calibration method for fixed installation of sensors according to claim 1, characterized in that, The coordinate equation of the first set of position coordinate values ​​in step S2 is: The coordinate equations for the second set of position coordinates are: Among them, P B1 P E1 P T1 These represent the position coordinates of the illumination point of the laser displacement sensor relative to the robot base spatial rectangular coordinate system, the robot end effector spatial rectangular coordinate system, and the calibration block spatial rectangular coordinate system, respectively. The inverse matrix represents the 4x4 homogeneous transformation matrix of the robot base space Cartesian coordinate system relative to the robot end effector space Cartesian coordinate system. The 4x4 homogeneous transformation matrix represents the spatial rectangular coordinate system of the robot's end effector relative to the spatial rectangular coordinate system of the robot's base. This represents the 4x4 homogeneous transformation matrix of the laser displacement sensor's spatial rectangular coordinate system relative to the robot base's spatial rectangular coordinate system; This represents the 4x4 homogeneous transformation matrix of the calibration block spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system; D1 represents the distance between the laser displacement sensor emission point and the illumination point on the calibration block; and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot base space rectangular coordinate system relative to the robot end space rectangular coordinate system, and the coordinate position of the origin of the robot base space rectangular coordinate system relative to the robot end space rectangular coordinate system, respectively. and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and the coordinate position of the origin of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, respectively. and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and the coordinate position of the origin of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, respectively. and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the calibration block space rectangular coordinate system relative to the robot end effector space rectangular coordinate system, and the coordinate position of the origin of the calibration block space rectangular coordinate system relative to the robot end effector space rectangular coordinate system, respectively.

4. The non-contact calibration method for fixed installation of sensors according to claim 1, characterized in that, Data acquisition in step S3 includes, Step S31: The attitude of the robot end-effector spatial rectangular coordinate system remains unchanged. The position of the robot end-effector is shifted. The laser of the laser displacement sensor is irradiated on the front side of the calibration block. M1 calibration data points are collected and recorded as a set of front side same attitude calibration data points. Step S32: Set different postures and collect the calibration data points to obtain N1 sets of front side same posture calibration data points, for a total of M1*N1 calibration data points; Step S33: The position of the robot end effector in the Cartesian coordinate system remains unchanged. The robot end effector's posture is changed. The laser from the laser displacement sensor is used to illuminate the front side of the calibration block. A1 calibration data points are collected and recorded as a set of calibration data points at the same position on the front side. Step S34: Set different positions and collect the calibration data points to obtain F1 sets of calibration data points at the same position on the front side, for a total of A1*F1 calibration data points; Step S35: The attitude of the robot end-effector in the Cartesian coordinate system remains unchanged. The position of the robot end-effector is shifted, and the laser of the laser displacement sensor is used to illuminate the left side of the calibration block. O1 calibration data points are collected and recorded as a set of left-side same-attitude calibration data points. Step S36: Illuminate the rear side, right side and bottom side of the calibration block with the laser of the laser displacement sensor and collect data to obtain Q1 sets of calibration data points of the same posture on the left side, for a total of O1*Q1 calibration data points; Where M1, N1, A1, F1, O1, and Q1 are all positive integers greater than or equal to 1.

5. The non-contact calibration method for fixed installation of sensors according to claim 4, characterized in that, Each of the calibration data points includes, The attitude and position of the robot's end effector spatial Cartesian coordinate system relative to the robot's base spatial Cartesian coordinate system, and the distance between the laser emission point and the irradiation point.

6. The non-contact calibration method for fixed installation of sensors according to claim 1, characterized in that, Step S4 includes, Step S41: Read the point data; Step S42: Calculate the initial value of the laser line direction of the laser displacement sensor; Step S43: Correct the error in the direction of the laser line; Step S44: Calculate the Euler angles and attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and substitute them into the updated point coordinates; Step S45: Calculate the initial value of the laser emission origin position; Step S46: Perform the first error correction on the position of the laser emission origin; Step S47: Perform a second error correction on the laser emission origin position based on the size of the calibration block; Step S48: Calculate the position matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and substitute it into the updated point coordinates; Step S49: Calculate the homogeneous transformation matrix based on the attitude rotation matrix and the position matrix.

7. The non-contact calibration method for fixed installation of a sensor according to claim 6, characterized in that, The initial values ​​of the laser line direction and the initial value of the laser emission origin position are obtained by solving the least squares solution of the corresponding linear equation system.

8. The non-contact calibration method for fixed installation of a sensor according to claim 6, characterized in that, The error correction of the laser line direction in step S43 is performed iteratively by using a non-homogeneous objective function about the laser line direction.

9. The non-contact calibration method for fixed installation of a sensor according to claim 6, characterized in that, The first error correction and the second error correction are performed iteratively using a non-homogeneous objective function with respect to the origin position of the laser emission point.

10. The non-contact calibration method for fixed installation of a sensor according to claim 1, characterized in that, In step S5, the front plane equation is established based on the front coordinate values ​​of the calibration block; The equation of the left plane is established based on the left coordinate values ​​of the calibration block; The equation of the bottom plane is established based on the bottom coordinate values ​​of the calibration block.

11. A non-contact calibration method for robot handheld sensors, characterized in that, include, Step G0: Install a laser displacement sensor on the robot's gripper and set a calibration block on the tooling table. Step G1: Establish a spatial rectangular coordinate system for the robot base, a spatial rectangular coordinate system for the robot end effector, a spatial rectangular coordinate system for the laser displacement sensor, and a spatial rectangular coordinate system for the calibration block on the robot base, the robot end effector flange, the laser displacement sensor, and the calibration block, respectively. Step G2: Calculate the position coordinates of the laser displacement sensor's illumination point on the calibration block in the robot base's Cartesian coordinate system. Step G3: Determine whether the robot is collecting data for the first time. If so, offset the spatial rectangular coordinate system of the laser displacement sensor and the spatial rectangular coordinate system of the calibration block before collecting data to obtain multiple calibration data points. If not, set the robot's operation mode to automatic mode and directly collect data to obtain multiple calibration data points. Step G4: Assign the calibration data points to the illumination points respectively, and calculate the homogeneous transformation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end-effector spatial rectangular coordinate system; Step G5: Based on the homogeneous transformation matrix and multiple spatial rectangular coordinate systems, recalculate the coordinates of the illumination point in the spatial rectangular coordinate system of the robot base. Based on the front plane equation, left plane equation, and upper surface plane equation of the calibration block, calculate the direction of the spatial rectangular coordinate system of the calibration block and the origin of the spatial rectangular coordinate system of the calibration block.

12. The non-contact calibration method for robot handheld sensors according to claim 11, characterized in that, In step G1, the laser displacement sensor is fixedly installed on the end effector of the robot. The attitude and position of the laser displacement sensor's spatial rectangular coordinate system relative to the robot's end effector's spatial rectangular coordinate system remain fixed. The origin of the laser displacement sensor's spatial rectangular coordinate system is the laser emission point of the laser displacement sensor, and the Z-axis direction of the laser displacement sensor's spatial rectangular coordinate system is the same as the laser irradiation direction of the laser displacement sensor. The calibration block is fixedly installed in the robot's workspace. The attitude and position of the calibration block's spatial rectangular coordinate system relative to the robot's base spatial rectangular coordinate system remain fixed. The X-axis, Y-axis, and Z-axis of the calibration block's spatial rectangular coordinate system are parallel to the normal directions of the front, left, and top surfaces of the calibration block, respectively. The origin of the calibration block's spatial rectangular coordinate system is the intersection of the planes of the front, left, and top surfaces of the calibration block.

13. The non-contact calibration method for a robot handheld sensor according to claim 11, characterized in that, The equation for the position coordinates of the irradiation point in step G2 is: Among them, P B2 This represents the position coordinates of the illumination point of the laser displacement sensor relative to the spatial rectangular coordinate system of the robot base; The 4x4 homogeneous transformation matrix represents the spatial rectangular coordinate system of the robot's end effector relative to the spatial rectangular coordinate system of the robot's base. This represents the 4x4 homogeneous transformation matrix of the laser displacement sensor's spatial rectangular coordinate system relative to the robot's end effector's spatial rectangular coordinate system; D2 represents the distance between the laser displacement sensor emission point and the illumination point on the calibration block; and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, and the coordinate position of the origin of the robot end effector spatial rectangular coordinate system relative to the robot base spatial rectangular coordinate system, respectively. and It is by The 3*3 order attitude matrix and 3*1 order position matrix obtained by transformation matrix decomposition represent the attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, and the coordinate position of the origin of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, respectively.

14. The non-contact calibration method for a robot handheld sensor according to claim 11, characterized in that, Data acquisition in step G3 includes, Step G31: The attitude of the robot end-effector spatial rectangular coordinate system remains unchanged. The position of the robot end-effector is shifted. The laser of the laser displacement sensor is used to illuminate the upper surface of the calibration block. M2 calibration data points are collected and recorded as a set of upper surface same attitude calibration data points. Step G32: Set different attitudes and collect the calibration data points to obtain N2 sets of calibration data points of the upper surface in the same attitude, for a total of M2*N2 calibration data points; Step G33: The position of the robot end effector in the Cartesian coordinate system remains unchanged. The robot end effector's posture is controlled to change. The laser from the laser displacement sensor is used to illuminate the upper surface of the calibration block. A2 calibration data points are collected and recorded as a set of calibration data points at the same position on the upper surface. Step G34: Set different positions and collect the calibration data points to obtain F2 sets of calibration data points at the same position on the upper surface, for a total of A2*F2 calibration data points; Step G35: The attitude of the robot end effector in the Cartesian coordinate system remains unchanged. The position of the robot end effector is shifted, and the laser of the laser displacement sensor is used to illuminate the right side of the calibration block. O2 calibration data points are collected and recorded as a set of right-side same-attitude calibration data points. Step G36: Illuminate the front side, left side and rear side of the calibration block with the laser of the laser displacement sensor and collect data to obtain Q2 sets of calibration data points of the same attitude on the right side, for a total of O2*Q2 calibration data points; Among them, M2, N2, A2, F2, O2, and Q2 are all positive integers greater than or equal to 1.

15. The non-contact calibration method for a robot handheld sensor according to claim 14, characterized in that, Each of the calibration data points includes, The attitude and position of the robot's end effector spatial Cartesian coordinate system relative to the robot's base spatial Cartesian coordinate system, and the distance between the laser emission point and the irradiation point.

16. The non-contact calibration method for a robot handheld sensor according to claim 11, characterized in that, Step G4 includes, Step G41: Read the location data; Step G42: Calculate the initial value of the laser line direction of the laser displacement sensor; Step G43: Correct the error in the direction of the laser line; Step G44: Calculate the Euler angles and attitude rotation matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, and substitute them into the updated point coordinates; Step G45: Calculate the initial value of the laser emission origin position; Step G46: Perform the first error correction on the laser emission origin position; Step G47: Perform a second error correction on the laser emission origin position based on the size of the calibration block; Step G48: Calculate the position matrix of the laser displacement sensor spatial rectangular coordinate system relative to the robot end effector spatial rectangular coordinate system, and substitute it into the updated point coordinates; Step G49: Calculate the homogeneous transformation matrix based on the attitude rotation matrix and the position matrix.

17. The non-contact calibration method for a robot handheld sensor according to claim 16, characterized in that, The initial values ​​of the laser line direction and the initial value of the laser emission origin position are obtained by solving the least squares solution of the corresponding linear equation system.

18. The non-contact calibration method for a robot handheld sensor according to claim 16, characterized in that, The error correction of the laser line direction in step G43 is performed iteratively using a non-homogeneous objective function with respect to the laser line direction.

19. The non-contact calibration method for a robot handheld sensor according to claim 16, characterized in that, The first error correction and the second error correction are performed iteratively using a non-homogeneous objective function with respect to the origin position of the laser emission point.

20. The non-contact calibration method for a robot handheld sensor according to claim 11, characterized in that, In step G5, the equation of the upper surface plane is established based on the coordinate values ​​of the upper surface of the calibration block; The front plane equation is established based on the front coordinate values ​​of the calibration block; The equation of the left plane is established based on the left coordinate values ​​of the calibration block.