Robot hand-eye calibration method based on matrix solution
By using matrix solution method and standard ball reference in robot hand-eye calibration, kinematic parameter errors are corrected and compensated, the problem of hand-eye calibration error is solved and the calibration accuracy is improved.
Patent Information
- Application Number
- CN202210769073.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-01
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2042-07-01
AI Technical Summary
In the prior art, there are errors in the calibration process of robot hand-eye, which affects calibration accuracy, especially the absolute motion error introduced by kinematic parameter errors.
Using a matrix-based solution method, by installing a visual measurement device scanner at the end of the robot, using a fixed standard ball as the object detection reference, constructing a motion matrix and correcting the initialization parameters of the hand-eye calibration, establishing a kinematic parameter error model to compensate and Least squares identification error.
It effectively reduces errors in the hand-eye calibration process, improves calibration accuracy, and is suitable for precision hand-eye calibration.
Smart Images

Figure CN115091456B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of machine vision, and in particular to a robot hand-eye calibration method based on matrix solution. Background Art
[0002] In recent years, with the rapid development of science and technology, robots have gradually entered our social life, such as in intelligent assembly, autonomous navigation, reverse engineering, welding engineering and other fields, and have been widely used. Visually guided industrial robot technology is increasingly used in efficient and high-quality processing. System calibration accuracy is the primary factor to ensure processing quality, and hand-eye calibration is a key step in the calibration process. When identifying hand-eye parameters, the traditional method needs to use the mutual conversion relationship between the robot base coordinate system, the robot terminal coordinate system, and the measuring device coordinate system to identify the hand-eye parameters. However, the position of the TCP read in the teach pendant in the robot base coordinate system is inconsistent with the actual position. The difference is the robot absolute motion error introduced in the hand-eye calibration process. Most industrial robots are multi-degree-of-freedom articulated robots for the industrial field. Due to the weak rigidity of the system itself, its terminal positioning accuracy is limited. In the case of long-term use without regular calibration and calibration, the absolute positioning accuracy can reach the millimeter level. Most studies have shown that the main source of the robot's absolute motion error is the kinematic parameter error, that is, the error between the nominal value of the geometric parameters of the industrial robot link and the actual value after processing and manufacturing.
[0003] At present, there are two main methods to improve the absolute motion accuracy of joint serial industrial robots by calibrating the joint motion parameter errors: one is an open-loop calibration method, which uses laser trackers and other measuring equipment to directly or indirectly measure the robot end distance error for robot kinematic calibration. Although this method can achieve good calibration results, the detection equipment is expensive, the equipment is complicated to use, and the user's skills and environment (temperature, dust, etc.) are required to be high, and it is difficult to automate the calibration process. The other is a closed-loop calibration method, which does not require measuring the actual posture of the robot end, but establishes constraints, and then forms a closed equation by the robot motion. Although this method is more conducive to automatic calibration, it is easy to introduce measurement errors again when constructing constraints, affecting the calibration accuracy.
[0004] Therefore, how to reduce the error in the robot hand-eye calibration process to improve the calibration accuracy is an urgent problem to be solved. Summary of the invention
[0005] In view of this, it is necessary to provide a robot hand-eye calibration method based on matrix solution to reduce the error in the robot hand-eye calibration process in the prior art and to improve the calibration accuracy.
[0006] In order to achieve the above object, the present invention provides a robot hand-eye calibration method based on matrix solution, wherein a visual measurement device scanner is installed at the end of the robot, and a standard ball fixed in space is used as a target detection reference object, comprising:
[0007] Control the robot carrying the scanner to perform axial translation along the robot's terminal coordinate system while measuring the standard ball, respectively construct the first motion matrix of TCP in the base coordinate system, the second motion matrix of the center of the standard ball in the scanner coordinate system, and the third motion matrix of the center of the standard ball in the terminal coordinate system, and determine the rotation matrix in the hand-eye calibration initialization parameters according to the first, second and third motion matrices;
[0008] Control the robot to perform repositioning movement around the TCP, calculate the coordinates of the TCP in the scanner coordinate system, and determine the translation matrix in the hand-eye calibration initialization parameters according to the coordinates;
[0009] Using the robot DH model and the differential transformation of the posture error, a robot kinematic parameter error model is established, and based on the robot kinematic parameter error model, the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters are corrected to obtain a corrected rotation matrix and a corrected translation matrix;
[0010] The robot kinematic parameter error identification model is established according to the inherent position constraints of the system, and the overdetermined equation group of the robot kinematic parameter error identification is constructed according to the data of multiple sampling points;
[0011] The kinematic parameter errors in the overdetermined equations are solved, and based on the kinematic parameter errors, a differential compensation method is used to compensate the robot's nominal posture transformation matrix and the hand-eye calibration initialization parameters.
[0012] Furthermore, the control robot carries the scanner to perform axial translation along the terminal coordinate system while measuring the standard ball, and respectively constructs a first motion matrix of the TCP in the base coordinate system, a second motion matrix of the center of the standard ball in the scanner coordinate system, and a third motion matrix of the center of the standard ball in the terminal coordinate system, including:
[0013] When the robot carrying the scanner performs translational motion along each first coordinate axis of the terminal coordinate system, the axial translation path of each second coordinate axis of the robot in the base coordinate system is obtained, and the axial translation path is linearly fitted and normalized to construct the first motion matrix of TCP in the base coordinate system. B H;
[0014] When the robot carries the scanner and performs axial translation along each first coordinate axis of the terminal coordinate system, the scanner takes a corresponding photo of the standard ball every time it reaches a target point. The coordinates of the center of the standard ball measured in each axial translation path are linearly fitted and normalized, and the second motion matrix of the center of the standard ball in the scanner coordinate system is constructed according to the principle of relative motion. S H;
[0015] When the robot carries the scanner and performs axial translation along each first coordinate axis of the terminal coordinate system, based on the first pose transformation relationship Get the unit translation vector of the center of the standard ball along the coordinate axis of the terminal coordinate system to construct the third motion matrix of the center of the standard ball in the terminal coordinate system T H;
[0016] The step of determining the rotation matrix in the hand-eye calibration initialization parameters according to the first, second and third motion matrices includes:
[0017] According to the first motion matrix B H. Second motion matrix S H. Third motion matrix T H and the second posture conversion relationship Determine the transformation matrix in the hand-eye calibration initialization parameters
[0018] Further, the control robot performs repositioning movement around the TCP, calculates the coordinates of the TCP in the scanner coordinate system, and determines the translation matrix in the hand-eye calibration initialization parameters according to the coordinates, including:
[0019] When controlling the robot to carry the scanner to reposition around the TCP, the laser scanner in different positions is used to shoot the standard sphere fixed in space, and the sphere is fitted according to the fixed distance between the center of the standard sphere and the TCP to solve the coordinate Q of the TCP in the scanner coordinate system;
[0020] According to the coordinate Q of TCP in the scanner coordinate system and the transformation matrix in the hand-eye calibration initialization parameters Determine the translation matrix in the hand-eye calibration initialization parameters
[0021] Furthermore, the robot kinematic parameter error model includes the robot's posture error differential operator in the base coordinate system: B Δ;
[0022] The robot kinematic parameter error model is established by using the robot DH model and the position and posture error differential transformation, including:
[0023] According to the robot DH model transformation theory, the nominal position transformation matrix of the adjacent joints of the robot is obtained
[0024] Based on the kinematic errors of the robot's joints, the nominal pose transformation matrix of the robot's adjacent joints is Perform full differential and multiplication inverse operations to obtain the posture error matrix of adjacent joints of the robot
[0025] Based on the pose error matrix of adjacent joints of the robot Determine the pose transformation matrix from the terminal coordinate system to the base coordinate system after error compensation in, is the robot nominal pose transformation matrix;
[0026] Based on the conversion relationship between differential operators and matrices, the pose error matrix Convert to the base coordinate system and obtain the position error differential operator of the robot in the base coordinate system B Δ.
[0027] Furthermore, the method of correcting the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters based on the robot kinematic parameter error model to obtain a corrected rotation matrix and a corrected translation matrix includes:
[0028] Based on the posture error differential operator B Δ performs error compensation on the rotation matrix and translation matrix in the hand-eye calibration initialization parameters to obtain a corrected rotation matrix and the corrected translation matrix
[0029] Furthermore, the inherent position constraint of the system includes that after kinematic parameter error compensation is performed on the robot nominal posture transformation matrix and the hand-eye calibration initialization parameters, the position of the center of the standard ball measured by the scanner in the base coordinate system remains unchanged;
[0030] The robot kinematic error identification model is established according to the inherent position constraint conditions of the system, including:
[0031] Obtain the coordinates of the center of the standard ball in the base coordinate system measured at least four different robot positions after kinematic error compensation B p j +Δ B p j , where j is the number of different machine poses;
[0032] According to the inherent position constraint of the system, the coordinate positions of the center of the standard ball measured under every two different robot postures are equal, and the robot kinematic error identification model G is established. j1 (ΔX) = G j2 (ΔX).
[0033] Furthermore, the method further comprises:
[0034] Acquire the plurality of sampling point data according to a preset robot posture transformation sampling path;
[0035] The preset robot posture transformation sampling path determination process includes:
[0036] Construct multiple robot posture samples based on the angle value of each joint angle of the robot;
[0037] Deleting invalid posture samples from the plurality of robot posture samples based on a preset scanner position condition and a preset TCP posture condition to generate a plurality of robot valid posture samples;
[0038] The plurality of effective robot posture samples are simulated and processed, and the preset robot posture transformation sampling path is generated.
[0039] The present invention first performs an initial calibration on the hand-eye parameters, and based on the calibration strategy of the robot terminal coordinate system axial translation and the robot repositioning movement, respectively solves the expressions of the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters; then uses the robot posture error differential operator caused by the kinematic error to establish the robot kinematic parameter error model, and corrects the hand-eye calibration initialization parameters in the form of matrix compensation; then according to the inherent position constraint of the system, establishes the robot kinematic parameter error identification model; finally, the least squares method is used to calculate the kinematic parameter errors in the overdetermined equation group of the robot kinematic parameter error identification, and compensates the hand-eye calibration accuracy. Since the influence of the robot kinematic error on the hand-eye calibration accuracy is fully considered, and the correction and compensation are fundamentally performed, it is very suitable for precise hand-eye calibration, and the calibration error is reduced while the calibration accuracy is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 A schematic flow chart of an embodiment of a robot hand-eye calibration method based on matrix solution provided by the present invention;
[0041] Figure 2 A schematic diagram of hand-eye calibration of an eye-on-hand robot used in one embodiment of the present invention;
[0042] Figure 3 A calibration schematic diagram of a rotation matrix for determining initialization parameters of hand-eye calibration provided by an embodiment of the present invention;
[0043] Figure 4 A calibration schematic diagram of a translation matrix for determining initialization parameters of hand-eye calibration provided by an embodiment of the present invention;
[0044] Figure 5A schematic diagram of a kinematic calibration sampling method based on robot posture screening provided in one embodiment of the present invention. DETAILED DESCRIPTION
[0045] The preferred embodiments of the present invention are described in detail below in conjunction with the accompanying drawings, wherein the accompanying drawings constitute a part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not used to limit the scope of the present invention.
[0046] In the description of the present invention, "multiple" means two or more, unless otherwise clearly and specifically limited. Reference to "embodiment" in this article means that the specific features, structures or characteristics described in conjunction with the embodiment may be included in at least one embodiment of the present invention. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0047] The present invention provides a robot hand-eye calibration method based on matrix solving. In order to solve the problem that the traditional hand-eye calibration method will introduce robot kinematic errors and thus affect the calibration accuracy, the present invention utilizes the robot kinematic parameter errors to correct the hand-eye calibration initialization parameter expression in the form of matrix compensation, and then establishes a robot kinematic error identification model based on the inherent constraint that the compensated detection feature points remain unchanged in the robot base coordinate system, thereby achieving high-precision hand-eye calibration.
[0048] Before describing the embodiments, the following definitions are given for the relevant terms:
[0049] Base coordinate system: that is, the base coordinate system of the robot; end coordinate system: that is, the end joint coordinate system of the robot, which is also the sixth joint coordinate system of the robot; the i-th joint coordinate system: that is, the i-th joint coordinate system of the robot; scanner coordinate system: that is, the measuring device coordinate system. The measuring device used in the present invention is a laser surface scanner, so it is a scanner coordinate system.
[0050] TCP: Tool center point at the end of the robot.
[0051] See also Figure 1 , Figure 1 A flowchart of an embodiment of a robot hand-eye calibration method based on matrix solution provided by the present invention is provided. A specific embodiment of the present invention discloses a robot hand-eye calibration method based on matrix solution, wherein a visual measurement device scanner is installed at the end of the robot, and a standard ball fixed in space is used as a target detection reference object, including:
[0052] Step S101: Control the robot to carry the scanner to perform axial translation along the robot terminal coordinate system while measuring the standard ball, respectively construct the first motion matrix of TCP in the base coordinate system, the second motion matrix of the center of the standard ball in the scanner coordinate system, and the third motion matrix of the center of the standard ball in the terminal coordinate system, and determine the rotation matrix in the hand-eye calibration initialization parameters according to the first, second and third motion matrices;
[0053] Step S102: Control the robot to perform repositioning movement around the TCP, calculate the coordinates of the TCP in the scanner coordinate system, and determine the translation matrix in the hand-eye calibration initialization parameters according to the coordinates;
[0054] Step S103: using the robot DH model and the differential transformation of the posture error, a robot kinematic parameter error model is established, and based on the robot kinematic parameter error model, the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters are corrected to obtain a corrected rotation matrix and a corrected translation matrix;
[0055] Step S104: establishing a robot kinematic parameter error identification model according to the inherent position constraint conditions of the system, and constructing an overdetermined set of equations for robot kinematic parameter error identification according to multiple sampling point data;
[0056] Step S105: solving the kinematic parameter errors in the overdetermined equations, and using a differential compensation method based on the kinematic parameter errors to compensate for the robot's nominal posture transformation matrix and the hand-eye calibration initialization parameters.
[0057] First of all, it should be noted that in order to facilitate the understanding of the present invention, please refer to Figure 2 , Figure 2 This is a schematic diagram of hand-eye calibration of an eye-on-hand robot used in an embodiment of the present invention, wherein 1 represents the robot, 2 represents the standard sphere, 3 represents the flange, 4 represents the laser surface scanner, 5 represents the TCP, and 6 represents the center of the scanner lens; {B} represents the base coordinate system, {T} represents the terminal coordinate system, and {S} represents the scanner coordinate system.
[0058] A laser surface scanner is selected as the measuring equipment, which is rigidly installed on the end of the robot through a flange. The installation orientation is adjusted so that the central axis of the scanner's laser beam is parallel to the X-axis direction of {T}. A matte standard ball is selected as the target reference to be detected and fixedly placed within the shooting range of the scanner. During the calibration process, real-time communication is achieved between the scanner and the robot. When the robot reaches a target path point, it waits for 1 second on the spot. During this period, the scanner automatically triggers the photo-taking function to obtain some spherical point cloud data of the standard ball measured under different robot postures.
[0059] This paper discloses a robot hand-eye automatic calibration method based on matrix solution, including initial hand-eye calibration, robot posture error differential modeling, posture sampling, error identification and compensation.
[0060] It can be understood that a laser surface scanner installed at the end of the robot is selected as the detection equipment, and a standard ball is used as the target reference object to be detected. First, the hand-eye parameters are initially calibrated. Based on the axial translation along {T} and the repositioning motion around TCP, the motion matrix of the target measuring point is constructed to solve the expressions of the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters respectively; then, the robot kinematic error model is established by combining the DH model and differential transformation theory, and then based on the inherent position constraints of the system, an error identification model is established. Finally, the least squares method is used to calculate the kinematic parameter errors in the overdetermined equation group of the robot kinematic parameter error identification to compensate for the hand-eye calibration accuracy.
[0061] The present invention solves the problems of complicated operation and expensive equipment of the existing methods by selecting a laser surface scanner installed at the end of the robot as the detection equipment and a standard ball as the target reference object to be detected, and has strong practicality. Based on the calibration strategy of the axial translation of the robot's end coordinate system and the robot's repositioning movement, the expressions of the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters are solved respectively; then, the robot's kinematic parameter error model is established using the robot's posture error differential operator caused by the kinematic error, and the hand-eye calibration initialization parameters are corrected in the form of matrix compensation; then, according to the inherent position constraints of the system, a robot kinematic parameter error identification model is established; finally, the least squares method is used to calculate the kinematic parameter errors in the overdetermined equation group of the robot kinematic parameter error identification to compensate for the hand-eye calibration accuracy. Since the influence of the robot's kinematic error on the hand-eye calibration accuracy is fully considered, and correction and compensation are fundamentally performed, it is very suitable for precise hand-eye calibration, which reduces the calibration error and improves the calibration accuracy.
[0062] In one embodiment of the present invention, the robot carrying the scanner is controlled to perform axial translation along the terminal coordinate system while measuring the standard ball, and a first motion matrix of the TCP in the base coordinate system, a second motion matrix of the center of the standard ball in the scanner coordinate system, and a third motion matrix of the center of the standard ball in the terminal coordinate system are respectively constructed, including:
[0063] When the robot carrying the scanner performs translational motion along each first coordinate axis of the terminal coordinate system, the axial translation path of each second coordinate axis of the robot in the base coordinate system is obtained, and the axial translation path is linearly fitted and normalized to construct the first motion matrix of TCP in the base coordinate system. B H;
[0064] When the robot carries the scanner and performs axial translation along each first coordinate axis of the terminal coordinate system, the scanner takes a corresponding photo of the standard ball every time it reaches a target point. The coordinates of the center of the standard ball measured in each axial translation path are linearly fitted and normalized, and the second motion matrix of the center of the standard ball in the scanner coordinate system is constructed according to the principle of relative motion. S H;
[0065] When the robot carries the scanner and performs axial translation along each first coordinate axis of the terminal coordinate system, based on the first pose transformation relationship Get the unit translation vector of the center of the standard ball along the coordinate axis of the terminal coordinate system to construct the third motion matrix of the center of the standard ball in the terminal coordinate system T H;
[0066] The robot carries the scanner to perform axial translation along the end coordinate system. Figure 3 , Figure 3 A calibration diagram of a rotation matrix for determining initialization parameters for hand-eye calibration provided by an embodiment of the present invention.
[0067] Among them, the first coordinate axis refers to the X, Y and Z axes of the terminal coordinate system {T}. Specifically, the hand-eye robot moves equidistantly from point a to point d along the negative direction of the X axis of the terminal coordinate system {T}. During the movement of the robot, each time it reaches a target point, the scanner takes a picture of the standard sphere to obtain spherical point cloud data. This process is repeated 3 times.
[0068] Among them, the second coordinate axis refers to the X, Y and Z axes of the base coordinate system {B}. When the robot moves linearly along the {T} coordinate axis, the three paths generated under the base coordinate system {B} are obtained, and the unit translation vectors λ1, λ2, λ3 of the robot end TCP point under {B} are obtained after linear fitting. Then, the first motion matrix of the robot end tool center point TCP under {B} is constructed. B H=[λ1,λ2,λ3], where the direction of λ1 is the same as λ ad The direction of λ is the same as ad is the trajectory motion vector corresponding to point a to point d. Similarly, the directions of λ2 and λ3 can be determined.
[0069] According to the principle of relative motion, when the robot carries the scanner and moves along the negative direction of the {T}X, Y, and Z axes and shoots the standard ball, it can be regarded as the robot is stationary and the standard ball moves along the positive direction of the coordinate axis. Through posture transformation, the unit translation vector of the ball center along the X, Y, and Z axes under {T} can be obtained. Then construct the third motion matrix of the center of the standard ball under {T}: Without considering the robot error, TH is an identity matrix parallel to the {T} axis, where It is the nominal rotation matrix from the base coordinate system {B} to {T} when the robot performs linear motion.
[0070] By fitting the spherical center coordinates for each collected measuring point data, and linearly fitting the spherical center coordinates obtained under the three trajectories and normalizing them, the unit translation vectors β1, β2, β3 of the standard sphere center in the scanner coordinate system can be obtained, and then the second motion matrix of the standard sphere center in the scanner coordinate system {S} can be constructed. S H=[β1,β2,β3], where the directions of β1,β2 and β3 are the same. ad In the same direction, β ad The motion vector of the center of the standard ball collected by the robot moving from point a to point d can be used to determine the directions of λ2 and λ3 in the same way.
[0071] Determining the rotation matrix in the hand-eye calibration initialization parameters according to the first, second and third motion matrices includes:
[0072] According to the first motion matrix B H. Second motion matrix S H. Third motion matrix T H and the second posture conversion relationship Determine the transformation matrix in the hand-eye calibration initialization parameters
[0073] Specifically, the rotation matrix of the hand-eye calibration in the embodiment of the present invention is the second posture transformation relationship from the scanner coordinate system {S} to the terminal coordinate system {T} The rotation matrix in the hand-eye calibration initialization parameters represented by the constructed first, second and third motion matrices is:
[0074]
[0075] In one embodiment of the present invention, controlling the robot to perform repositioning movement around the TCP, calculating the coordinates of the TCP in the scanner coordinate system, and determining the first translation matrix in the hand-eye calibration initialization parameters according to the coordinates, includes:
[0076] When controlling the robot to carry the scanner to reposition around the TCP, the laser scanner in different positions is used to shoot the standard sphere at a fixed position in space, and the sphere is fitted according to the fixed distance between the center of the standard sphere and the TCP to solve the coordinate Q of the TCP in the scanner coordinate system;
[0077] According to the coordinate Q of TCP in the scanner coordinate system and the transformation matrix in the hand-eye calibration initialization parameters Determine the translation matrix in the hand-eye calibration initialization parameters
[0078] Among them, controlling the robot to carry the scanner around the TCP to perform repositioning movements can be found in Figure 4 , Figure 4 A calibration schematic diagram of a translation matrix for determining initialization parameters for hand-eye calibration provided by an embodiment of the present invention.
[0079] Specifically, the robot's motion mode is adjusted to repositioning, and the repositioning center is set to TCP. Then the robot is controlled to carry the scanner and perform repositioning around the TCP point with variable postures. At the same time, the laser scanner is used to shoot the standard ball fixed in space at different postures, and then the coordinates of the center of the standard ball corresponding to each measuring point in the scanner coordinate system {S} are calculated using the least squares method. Then the coordinates of TCP in {S} are calculated: the scanner is rigidly connected to the flange at the end of the robot, so the coordinates of TCP are It is a fixed value in the scanner coordinate system {S}. The center of the standard ball measured by the laser surface scanner at different positions is distributed on a spherical surface with the TCP point as the center and a radius of R. R is the distance from the center of the fixed standard ball to the TCP. Therefore, the coordinate Q can be solved by the least squares method.
[0080] It is understandable that is the translation matrix from the scanner coordinate system {S} to the terminal coordinate system {T}, and the coordinates of TCP under {T} are The coordinates of TCP in the scanner coordinate system are: According to the coordinate transformation relationship, q and Q should satisfy:
[0081]
[0082] Further calculations reveal that the expression of the translation matrix in the hand-eye calibration initialization parameters is:
[0083]
[0084] In one embodiment of the present invention, the robot kinematic parameter error model includes the robot's posture error differential operator in the base coordinate system: B Δ;
[0085] Using the robot DH model and the differential transformation of the posture error, the robot kinematic parameter error model is established, including:
[0086] According to the robot DH model transformation theory, the nominal position transformation matrix of the adjacent joints of the robot is obtained
[0087] Based on the kinematic errors of the robot's joints, the nominal pose transformation matrix of the robot's adjacent joints is Perform full differential and multiplication inverse operations to obtain the posture error matrix of adjacent joints of the robot
[0088] Pose error matrix based on adjacent joints of the robot Determine the pose transformation matrix from the terminal coordinate system to the base coordinate system after error compensation in, is the robot nominal pose transformation matrix;
[0089] Based on the conversion relationship between differential operators and matrices, the pose error matrix Convert to the base coordinate system and obtain the position error differential operator of the robot in the base coordinate system B Δ.
[0090] The robot kinematic parameter error model is the differential model of the robot's posture error in the base coordinate system {B}, more specifically, the differential operator of the robot's posture error in the base coordinate system: B Δ.
[0091] First of all, it should be noted that the coordinate systems of adjacent joints of the industrial robot are assumed to be {0}, {1}, …, {6}. According to the nominal kinematic parameters of the robot and the rigid body posture transformation theory, the coordinate systems of adjacent links can be transformed into each other through a finite number of translations and rotations. represents the transformation from the i-1 joint coordinate system to the i joint coordinate system. According to the robot DH model transformation theory, the homogeneous transformation matrix of the nominal pose of adjacent joints of the robot can be obtained:
[0092]
[0093] Among them, a i-1 is the robot link length, α i-1 is the connecting rod torsion angle, d i is the connecting rod offset, θ i is the joint angle;
[0094] The kinematic vector formed by all joints of the robot is q = [a T α T d T θ T ], when there is a robot joint kinematic error Δa i-1 , Δα i-1 , Δd i , Δθ i When, yes Perform full differentiation to obtain the posture error matrix of adjacent joints of the robot It is expressed as:
[0095]
[0096] It is understandable that in any posture The pose error matrix The differential operator in the coordinate systems {M} and {N} satisfies the formula:
[0097]
[0098] Therefore, the pose error matrix of the adjacent joints of the robot is Multiply both sides of the expression on the left The inverse matrix of the kinematic error Δa is i-1 , Δα i-1 , Δd i , Δθ i The differential operator and:
[0099]
[0100] in, Substituting formula 7 into formula 5, the posture error matrix of the robot's adjacent joint coordinate system can be obtained by deformation:
[0101]
[0102] Each joint of the robot may have parameter errors, so the homogeneous transformation matrix between two adjacent joints has a differential term of posture error transformation. When the robot has six joints, the actual transformation matrix from the robot's end coordinate system {T} to the base coordinate system {B} should be:
[0103]
[0104] In the formula, is the robot nominal pose transformation matrix, is the pose error matrix from the robot's end coordinate system {T} to the base coordinate system {B}. Substituting formula 8 into formula 9, expanding and ignoring the second-order differential term, we can get It is expressed as:
[0105]
[0106] in, is the nominal pose transformation matrix from the robot's i-th joint coordinate system to the base coordinate system {B}, is the nominal posture transformation matrix from the robot end coordinate system {T} to the robot i-th joint coordinate system; according to the transformation relationship between the differential operator and the matrix, the robot posture error By converting to the coordinate system {B}, we can obtain the differential operator of the posture error in the robot base coordinate system {B}:
[0107]
[0108] In one embodiment of the present invention, the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters are corrected based on the robot kinematic parameter error model to obtain the corrected rotation matrix and the corrected translation matrix, including:
[0109] Based on the pose error differential operator B Δ performs error compensation on the rotation matrix and translation matrix in the hand-eye calibration initialization parameters to obtain the corrected rotation matrix and the corrected translation matrix
[0110] It is understandable that the fundamental reason for introducing robot posture error in the initial hand-eye calibration process is that when the robot moves linearly along the negative direction of the X, Y, and Z axes of {T}, due to the existence of the robot's kinematic error, the motion matrix of the actual standard ball center at {T} T H is not a unit matrix strictly parallel to the {T} coordinate axis, so T H represents the expression of the rotation matrix in the hand-eye initialization parameters It needs to be corrected. In the calibration process, that is, in formula 1, when constructing the motion matrix T The pose rotation matrix used when H It is obtained by solving the forward kinematics of the robot DH nominal model, and there is an error between it and its actual value; so in order to obtain a value that is closer to the actual value, T H, the nominal pose rotation matrix needs to be calculated using the robot kinematic error To make corrections:
[0111]
[0112] Combining Formula 1 and Formula 12, we can get the expression of the hand-eye rotation matrix after the robot kinematic error compensation:
[0113]
[0114] in, B δ、 B d are the rotation and translation vectors of the posture error caused by the robot kinematic error under {B}, and the differential operator of the posture error matrix in the corresponding base coordinate system is:
[0115] Combining Formula 3 and Formula 13, we can get the expression of the hand-eye translation matrix after robot kinematic error compensation:
[0116]
[0117] In one embodiment of the present invention, the inherent position constraint of the system includes that after the kinematic parameter error compensation is performed on the robot nominal posture transformation matrix and the hand-eye calibration initialization parameters, the position of the center of the standard ball measured by the scanner in the base coordinate system remains unchanged;
[0118] The robot kinematic error identification model is established according to the inherent position constraints of the system, including:
[0119] Obtain the coordinates of the center of the standard ball in the base coordinate system measured at least four different robot positions after kinematic error compensation B p j +Δ B p j , where j is the number of different robot postures;
[0120] The robot kinematic error identification model G is established based on the constraint that at least two coordinate positions are equal. j1 (ΔX) = G j2 (ΔX).
[0121] It is understandable that The position coordinates of the center point of the standard ball under {B} after compensation of the robot joint motion error are obtained:
[0122]
[0123]
[0124] in, is the translation matrix from the robot's end coordinate system {T} to the base coordinate system {B}, and sd is the coordinate of TCP in the scanner coordinate system when the robot performs repositioning motion The column vector Substituting Formula 13 into Formula 16, the position coordinates of the center point of the standard ball under {B} after the robot kinematic error compensation can be further expressed as:
[0125]
[0126] It can be understood that due to the existence of robot kinematic errors, the coordinates of the center point of the standard ball under {B} are B P i are not equal, but the coordinates of the measuring points after error compensation B p j +Δ B p j should be equal, thus the robot kinematic error identification model can be obtained:
[0127] G j1 (ΔX) = G j2(ΔX) (18),
[0128] Furthermore, based on the n measurement point data obtained by executing the sampling path, an overdetermined set of equations for robot kinematic parameter error identification is established:
[0129] Then, the least squares method is used to solve the 24 kinematic parameter errors. The identified 24 kinematic parameter errors are substituted into Formula 13 and Formula 14 to further correct the initialization parameters of hand-eye calibration. The 24 kinematic parameter errors are added to the nominal kinematic parameters of the robot and then substituted into Formula 17. This allows the robot's nominal pose transformation matrix and the hand-eye calibration initialization parameters to be corrected while achieving high-precision hand-eye calibration.
[0130] In one embodiment of the present invention, the method further comprises:
[0131] Acquire multiple sampling point data according to the preset robot posture transformation sampling path;
[0132] The process of determining the preset robot posture transformation sampling path includes:
[0133] Construct multiple robot posture samples based on the angle value of each joint angle of the robot;
[0134] Based on a preset scanner position condition and a preset TCP posture condition, invalid posture samples in a plurality of robot posture samples are deleted to generate a plurality of robot valid posture samples;
[0135] Simulate multiple robot valid posture samples and generate preset robot posture transformation sampling paths.
[0136] It can be understood that, through a uniform sampling method based on robot posture screening, the sampling path can be planned offline in advance, that is, a preset robot posture transformation sampling path is generated, and then the automatic shooting function of the scanner is used to realize the automation of the calibration process.
[0137] Specifically, within the range of joint variation, for example, at intervals of five degrees, each joint angle of the robot is taken, and then permutations and combinations are performed to construct different robot pose samples. Figure 5 , Figure 5 A schematic diagram of kinematic calibration sampling based on robot posture screening provided by an embodiment of the present invention, such as Figure 5 (a) Scanner lens center position in the robot base coordinate system {B} B P SLCi (x SLCi ,y SLCi ,z SLCi ) must meet the following requirements: min <(x SLCi-a) 2 +(y SLCi -b) 2 +(z SLCi -c) 2 <d max , which allows to remove robot poses that are beyond the scanner capture distance, where d min ,d max are the maximum and minimum measuring distances of the scanner, and the depth of field l of the scanner. s and focal length d f Related, min =d f -l s , d max =d f +l s .
[0138] like Figure 5 (b) The position and posture of the TCP point at the end of the robot must satisfy the following requirements: the angle α between px (the direction vector of the X-axis vector of the robot's end coordinate system corresponding to different TCP points in the base coordinate system) and PC (the vector from the center of the scanning lens to the center of the fixed standard ball) is less than α max , that is, cosα=px·PC / ||px|||PC||>cosα max , 0°<α<π / 2, focus measurement range b f *a f and focal length d f is the constraint condition, α max =arctan(0.5a f / d f ).
[0139] After the robot sampling posture is screened through the above steps, the retained valid sample posture is imported into the RobotStudio offline programming software for simulation, the motion interference path points are removed, and the overall sampling path is generated as the preset sampling path.
[0140] Those skilled in the art will appreciate that all or part of the processes of the above-mentioned embodiments can be implemented by instructing related hardware through a computer program, and the program can be stored in a computer-readable storage medium, wherein the computer-readable storage medium is a disk, an optical disk, a read-only storage memory, or a random access memory, etc.
[0141] The above are only preferred specific implementations of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by any technician familiar with the technical field within the technical scope disclosed by the present invention should be covered within the protection scope of the present invention.
Claims
1. A robot hand-eye calibration method based on matrix solution, installing a visual measurement device scanner at the end of the robot, using a standard ball fixed in space as a target detection reference, characterized in that: include: Control the robot to carry the scanner to perform axial translation along the terminal coordinate system while measuring the standard ball, respectively construct the first motion matrix of TCP in the base coordinate system, the second motion matrix of the center of the standard ball in the scanner coordinate system, and the third motion matrix of the center of the standard ball in the terminal coordinate system, and determine the rotation matrix in the hand-eye calibration initialization parameters according to the first, second and third motion matrices; Control the robot to perform repositioning movement around the TCP, calculate the coordinates of the TCP in the scanner coordinate system, and determine the translation matrix in the hand-eye calibration initialization parameters according to the coordinates; Using the robot DH model and the differential transformation of the posture error, a robot kinematic parameter error model is established, and based on the robot kinematic parameter error model, the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters are corrected to obtain a corrected rotation matrix and a corrected translation matrix; The robot kinematic parameter error identification model is established according to the inherent position constraints of the system, and the overdetermined equation group of the robot kinematic parameter error identification is constructed according to the data of multiple sampling points; Solve the kinematic parameter errors in the overdetermined equations, specifically: The least squares method is used to solve the 24 kinematic parameter errors, and the identified 24 kinematic parameter errors are substituted into the corrected rotation matrix and the corrected translation matrix to further correct the initialization parameters of the hand-eye calibration. The 24 kinematic parameter errors are added to the nominal kinematic parameters of the robot, and then substituted into the position coordinate formula of the center point of the standard ball in the base coordinate system after the robot kinematic error compensation, so that the robot nominal posture transformation matrix and the hand-eye calibration initialization parameters can be corrected.
2. The robot hand-eye calibration method based on matrix solution according to claim 1, characterized in that: The control robot carries the scanner to perform axial translation along the terminal coordinate system while measuring the standard ball, and respectively constructs a first motion matrix of the TCP in the base coordinate system, a second motion matrix of the center of the standard ball in the scanner coordinate system, and a third motion matrix of the center of the standard ball in the terminal coordinate system, including: When the robot carrying the scanner performs translational motion along each first coordinate axis of the terminal coordinate system, the axial translation path of each second coordinate axis of the robot in the base coordinate system is obtained, and the axial translation path is linearly fitted and normalized to construct the first motion matrix of TCP in the base coordinate system. ; When the robot carries the scanner and performs axial translation along each first coordinate axis of the terminal coordinate system, the scanner takes a corresponding photo of the standard ball every time it reaches a target point. The coordinates of the center of the standard ball measured in each axial translation path are linearly fitted and normalized, and the second motion matrix of the center of the standard ball in the scanner coordinate system is constructed according to the principle of relative motion. ; When the robot carries the scanner and performs axial translation along each first coordinate axis of the terminal coordinate system, based on the first pose transformation relationship Get the unit translation vector of the center of the standard ball along the coordinate axis of the terminal coordinate system to construct the third motion matrix of the center of the standard ball in the terminal coordinate system ,in, It is the nominal rotation matrix from the base coordinate system to the end coordinate system when the robot performs linear motion; The step of determining the rotation matrix in the hand-eye calibration initialization parameters according to the first, second and third motion matrices includes: According to the first motion matrix , the second motion matrix , the third motion matrix And the second posture transformation relationship Determine the transformation matrix in the hand-eye calibration initialization parameters .
3. The robot hand-eye calibration method based on matrix solution according to claim 2 is characterized in that: The control robot performs repositioning movement around the TCP, calculates the coordinates of the TCP in the scanner coordinate system, and determines the translation matrix in the hand-eye calibration initialization parameters according to the coordinates, including: When controlling the robot to carry the scanner around the TCP for repositioning, the laser scanner in different positions is used to shoot the standard sphere fixed in space, and the sphere is fitted according to the fixed distance between the center of the standard sphere and the TCP to solve the coordinates of the TCP in the scanner coordinate system. ; According to the coordinates of TCP in the scanner coordinate system And the transformation matrix in the hand-eye calibration initialization parameters Determine the translation matrix in the hand-eye calibration initialization parameters .
4. The robot hand-eye calibration method based on matrix solution according to claim 1, characterized in that: The robot kinematic parameter error model includes the robot's position error differential operator in the base coordinate system: ; The robot kinematic parameter error model is established by using the robot DH model and the position and posture error differential transformation, including: According to the robot DH model transformation theory, the nominal position transformation matrix of the adjacent joints of the robot is obtained ; Based on the kinematic errors of the robot's joints, the nominal pose transformation matrix of the robot's adjacent joints is Perform full differential and multiplication inverse operations to obtain the posture error matrix of adjacent joints of the robot ; Based on the pose error matrix of adjacent joints of the robot , determine the pose transformation matrix from the terminal coordinate system to the base coordinate system after error compensation ,in, is the robot nominal pose transformation matrix; Based on the conversion relationship between differential operators and matrices, the pose error matrix Convert to the base coordinate system and obtain the position error differential operator of the robot in the base coordinate system .
5. The robot hand-eye calibration method based on matrix solution according to claim 4 is characterized in that: The method of correcting the rotation matrix and the translation matrix in the hand-eye calibration initialization parameters based on the robot kinematic parameter error model to obtain a corrected rotation matrix and a corrected translation matrix includes: Based on the posture error differential operator Perform error compensation on the rotation matrix and translation matrix in the hand-eye calibration initialization parameters to obtain a corrected rotation matrix. and the corrected translation matrix .
6. The robot hand-eye calibration method based on matrix solution according to claim 1, characterized in that: The inherent position constraint of the system includes that after the kinematic parameter error compensation is performed on the robot nominal posture transformation matrix and the hand-eye calibration initialization parameters, the position of the center of the standard ball measured by the scanner in the base coordinate system remains unchanged; The robot kinematic error identification model is established according to the inherent position constraint conditions of the system, including: Obtain the coordinates of the center of the standard ball in the base coordinate system measured at least four different robot positions after kinematic error compensation ,in, is the number of different robot poses; According to the inherent position constraint conditions of the system, the coordinates of the center of the standard ball measured by each two robot postures are equal, and the robot kinematic error identification model is established. .
7. The robot hand-eye calibration method based on matrix solution according to claim 1, characterized in that: The method further comprises: Acquire the plurality of sampling point data according to a preset robot posture transformation sampling path; The preset robot posture transformation sampling path determination process includes: Construct multiple robot posture samples based on the angle value of each joint angle of the robot; Deleting invalid posture samples from the plurality of robot posture samples based on a preset scanner position condition and a preset TCP posture condition to generate a plurality of robot valid posture samples; The plurality of effective robot posture samples are simulated and processed, and the preset robot posture transformation sampling path is generated.
Citation Information
Patent Citations
Robot kinematics calibration method based on vision measurement and distance error model
CN105773609A
Robot self-calibration method based on vision-assisted positioning
CN107214703A