Robot non-singular hand-eye calibration method based on sequential rotation mechanism

Through the singular hand-eye calibration method based on the sequential rotation mechanism, the problem of singular phenomena in hand-eye calibration of substation inspection robots is solved, the calibration accuracy and noise resistance are improved, and higher safety and robustness are achieved.

CN119141527AInactive Publication Date: 2024-12-17STATE GRID SHANDONG ELECTRIC POWER CO
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411180987.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-27
Publication Date
2024-12-17
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

The hand-eye calibration method of existing substation patrol robots has a singular phenomenon when the angle value of the rotation part of the unknown hand-eye matrix is ​​equal to or close to the π radian, causing the calibration accuracy to deviate from the true value and poor anti-interference ability to noise, which cannot effectively solve this problem.

Method used

Using the singular rotation mechanism without singular hand-eye calibration method, by collecting measurement data, if the rotation angle value is equal to or close to the π radian, perform a virtual rotation operation to avoid singularity, use a user-defined matrix to adjust the rotation matrix, and solve it in combination with the linear least squares method. Unknown rotation and translation part values ​​of the hand-eye matrix.

Benefits of technology

The safety and robustness of the hand-eye calibration method of the substation inspection robot is improved, the singularity of modifying the Rodriguez parameters is avoided, the anti-interference ability to noise is enhanced, and the calibration accuracy is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119141527A_ABST
    Figure CN119141527A_ABST
Patent Text Reader

Abstract

The invention discloses a robot non-singular hand-eye calibration method based on a sequential rotation mechanism, relates to the technical field of visual calibration and robots, analyzes a hand-eye calibration analytic solution method based on modified Rodrigues parameters proposed by R.Y.Tsai, discovers inherent defects for the first time, and provides a method for calibrating the robot non-singular hand-eye calibration based on the R.Y.Tsai and the robot non-singular hand-eye calibration based on the R.Y.Tsai. Comprising the following steps: a user performs a virtual rotation motion on a rotation axis akBi of RBi obtained by actual measurement according to own preference, a corresponding rotation matrix is marked as Ruser, and at the moment, a vector group akBi is changed into Ruser kBi; and as long as the user matrix Ruser is properly selected, the rotation angle value of the rotation matrix determined by the measurement vector group {kAi, Ruser kBi} is no longer equal to the pi radian. According to the method, the inherent defects of hand-eye calibration analytic solutions proposed by R.Y.Tsai based on similar parameters are well overcome, and the safety and robustness of the transformer substation inspection robot hand-eye calibration analytic solution method based on modified Rodrigues parameters are improved to a certain extent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the field of vision calibration and robot technology, in particular to a robot non-singular hand-eye calibration method based on a sequential rotation mechanism. Background Art

[0002] In the existing calibration technology of industrial robots and cameras, specific calibration plates are required, such as checkerboard calibration plates, dot calibration plates, etc., and the robot must be controlled in a variety of different postures (for a 6-axis robot, at least four, but generally in order to achieve higher calibration accuracy, basically 15-20 postures are used) to control the camera to shoot the calibration plate. Due to different postures, the images of the calibration plate shot by the camera are different. Accurately finding the calibration plate in the image brings great difficulty to improving the calibration accuracy. Adjusting the robot posture requires the use of manual teaching methods. Calibration of a system takes a lot of time and effort. Especially for the hand-eye vision system of the substation inspection robot, the coordinate relationship between the tool coordinate system of the substation inspection robot and the coordinate system of the camera it holds is usually called the "hand-eye matrix". The process of solving the above matrix is ​​the so-called "hand-eye calibration". The solution accuracy of the unknown hand-eye matrix will directly affect the precision and safety of the visual operation task of the substation inspection robot.

[0003] In the 1980s, RYTsai et al. first proposed the concept of hand-eye calibration. Based on modifying the Rodriguez parameter, they gave a classic analytical solution to the hand-eye calibration problem. This method is still used as a classic method in the field of hand-eye calibration of substation inspection robots. However, modifying the Rodriguez parameter itself has an insurmountable defect: it can only be used to parameterize rotation matrices whose angle values ​​are not equal to π radians. Therefore, when the angle value of the rotation part of the unknown hand-eye matrix is ​​equal to π radians, the hand-eye matrix value estimated by the hand-eye calibration method based on this type of parameter will seriously deviate from its true value (here it is called a singular phenomenon), resulting in the failure of the hand-eye calibration task of the substation inspection robot.

[0004] In addition, under the influence of external measurement noise, the present invention finds that when the rotation angle value of the unknown hand-eye matrix rotation part is closer to π radians, the hand-eye matrix estimated by the hand-eye calibration analytical solution proposed by RYTsai will also have a large error. That is, in this case, the hand-eye calibration method has poor noise resistance. However, the existing literature has not found the singular phenomenon inherent in the hand-eye calibration analytical solution method for substation inspection robots proposed by RYTsai in the above two situations.

[0005] Therefore, it is urgent to study the solution method of the unknown hand-eye matrix applicable to the rotation angle value of any angle including π radians, avoid modifying the singularity of the Rodriguez parameters themselves, and improve the safety and robustness of the analytical solution method of the hand-eye calibration of the substation inspection robot. Summary of the invention

[0006] To solve the above problems, the purpose of the present invention is to provide a robot non-singular hand-eye calibration method based on the sequential rotation mechanism, which better compensates for the inherent shortcomings of the hand-eye calibration analytical solution proposed by RYTsai based on similar parameters, and to a certain extent improves the safety and robustness of the substation inspection robot hand-eye calibration analytical solution method based on modified Rodriguez parameters.

[0007] In order to achieve the above object, the present invention is implemented through the following technical solutions:

[0008] A robot non-singular hand-eye calibration method based on a sequential rotation mechanism comprises the following steps:

[0009] Step 1: Collect the measurement data set for hand-eye calibration i ,B i}, and extract the rotation angle value θ of the unknown hand-eye matrix rotation part X ; said A i is the transition matrix of the robot tool coordinate system between two adjacent movements, the B i It is the relative pose matrix of the camera coordinate system held by the robot arm between two adjacent movements;

[0010] Step 2, if θ X Equal to or close to π radians, the following steps are used to obtain the rotation and translation values ​​of the unknown hand-eye matrix:

[0011] Step 3: The user adjusts the R value obtained by actual measurement according to his / her own preference. Bi Axis of rotation a k Bi Perform a virtual rotation motion, and the corresponding rotation matrix is ​​denoted as R user , at this moment the vector group a k Bi will become R user k Bi ;

[0012] Step 4: The vector group R obtained by virtual rotation user k Bi Rotate to match known measurement data a R Ai The axis of rotation a k Ai The rotation matrix required for the corresponding coincidence The rotation angle value may no longer be equal to RX The corresponding rotation angle value;

[0013] Step 5: As long as the user matrix R user Choose appropriately, the measurement vector set {k Ai ,R user k Bi The rotation matrix angle value determined by} is no longer equal to π radians;

[0014] Step 6, use R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain Lian Li With R user Solve for the rotation part of the unknown hand-eye matrix, R X Substitute R Ai t X +t Ai =R X t Bi +t X , get the unknown hand-eye matrix translation column vector t X The linear least squares estimate of ;

[0015] Among them, R Ai , R Bi , R X A i , B i and the rotation matrix of X, t Ai ,t Bi ,t X The matrix A i With B i and the position column vector of X.

[0016] Preferably, if θ X If it is not equal to or far from π radians, the unknown hand-eye matrix is ​​solved according to RYTsai's hand-eye calibration algorithm.

[0017] Preferably, in step 3, the user adjusts the R obtained by actual measurement according to his / her own preference. Bi Axis of rotation a k Bi Perform a virtual rotation motion, and the corresponding rotation matrix is ​​denoted as R user Specifically, according to the sequential rotation mechanism, three types of user matrices in the coordinate values ​​of X, Y and Z directions are defined, and there is at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians.

[0018] Preferably, according to the sequential rotation mechanism, three types of user matrices are defined in the coordinate values ​​X, Y and Z directions, and at least one user matrix satisfies the rotation angle value between 0 and 2π / 3 radians. The specific steps include:

[0019] Step 31, according to the sequential rotation mechanism, define the first type of user matrix: 1 R user =Rot(k x ,θ); where k x is the unit direction vector of the coordinate axis X; θ is any angle value between 0 and π radians; Rot(k x ,θ) is the rotation around k x The rotation matrix obtained by rotating θ radians;

[0020] Step 32, according to the sequential rotation mechanism, define the second type of user matrix: 2 R user =Rot(k y ,θ); where k y is the unit direction vector of the coordinate axis Y; θ is any rotation angle between 0 and π radians; Rot(k y ,θ) is the rotation around k y The rotation matrix obtained by rotating θ radians;

[0021] Step 33, according to the sequential rotation mechanism, define the third type of user matrix: 3 R user =Rot(k z ,θ); where k z is the unit direction vector of the coordinate axis Z; θ is any angle between 0 and π radians; Rot(k z ,θ) is the rotation around k z The rotation matrix obtained by rotating θ radians;

[0022] In the above three types of user-defined matrices There is at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians.

[0023] Preferably, in step 6, R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain The specific steps include:

[0024] According to the analytical solution method of hand-eye calibration based on modifying Rodriguez parameters proposed by RYTsai, the vector group1 R user k Bi Replace the original vector group k Bi , find the solution such that the vector group k Ai and 1 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value

[0025] According to the analytical solution method of hand-eye calibration based on modifying Rodriguez parameters proposed by RYTsai, the vector group 2 R user k Bi Replace the original vector group k Bi , solve for the vector group k Ai Rotate to 2 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value

[0026] Group vectors 3 R user k Bi As the original vector group k Bi , according to the hand-eye calibration analytical solution method proposed by RYTsai, the vector group k is solved Ai Rotate to 3 R user k Bi The rotation matrix determined by the coincidence And extract the corresponding angle value

[0027] from and as well as Choose an angle between 0 and 2π / 3 radians from the three and record it as And record the corresponding rotation matrix

[0028] Preferably, step 1 specifically includes the following steps:

[0029] Step 11: In the field of view of the camera, control the robot arm to perform two different movements and record A i and B i ;

[0030] Step 12, repeat step 11 k times to obtain k groups of measurement data {A i ,B i}, and extract the corresponding rotation axis unit direction vector {k Ai ,k Bi} and the angle value {θ Ai ,θ Bi}.

[0031] Preferably, step 1 further comprises the following steps:

[0032] Step 13, according to the corresponding relationship between the modified Rodriguez parameters and the rotation matrix, construct A in sequence i With B i The corresponding modified Rodriguez parameter P Ai =2sin(θ Ai / 2)k Ai With P Bi =2sin(θ Bi / 2)k Bi ;

[0033] Step 14: Construct an overdetermined linear system [P Ai +P Bi ] × P' X =P Ai -P Bi , use the linear least squares method to solve the vector P' X The value of; where [·] × is the antisymmetric matrix corresponding to the vector;

[0034] Step 15: The vector P' corresponding to the unknown hand-eye matrix X Bring in P X =2P' X (1+||P' X || 2 ) -0.5 Then, we can solve P X The value of .

[0035] Step 16, according to vector P X With θ X =2·atan||P X || 2 , get the rotation angle value θ of the unknown hand-eye matrix X .

[0036] Preferably, according to P X The value of P X The corresponding rotation matrix R X .

[0037] Preferably, in the above three types of user-defined matrices There is at least one user matrix that satisfies the rotation angle value between 0 and radians. The proof process is as follows:

[0038] If the vector group k Ai Rotate to j R user k Bi The rotation matrix required for the coincidence is but

[0039] According to the properties of the rotation matrix, the user-defined matrix The traces are:

[0040]

[0041] In formulas (I) to (III), r ij Represents R X The element in row i and column j, according to R X The constraints between the internal elements can be sorted out.

[0042] According to the properties of the rotation matrix trace, at least one of the three user matrices has a non-negative trace, that is, There is at least one user matrix with a rotation angle between 0 and 2π / 3 radians.

[0043] The above-mentioned robot non-singular hand-eye calibration method based on sequential rotation mechanism is applied when the classic hand-eye calibration method proposed by RYTsai has a singular phenomenon. In the classic hand-eye calibration method proposed by RYTsai, the vector P' is solved X It is one of the key steps. Obviously, when the rotation angle of the unknown hand-eye matrix is ​​equal to π radians, the vector P' X The value of cannot be accurately obtained by the hand-eye calibration algorithm proposed by RYTsai, which will cause the hand-eye matrix estimated by RYTsai to deviate seriously from its true value, that is, the hand-eye calibration singularity phenomenon will occur. The reason for this phenomenon is the singularity of modifying the Rodriguez parameter itself.

[0044] Compared with the prior art, the present invention has the following advantages:

[0045] The present invention discovers for the first time the inherent defects of the classic hand-eye calibration analytical solution method proposed by RYTsai, and elaborates on its singularity. On this basis, the present invention proposes a non-singular hand-eye calibration method based on a sequential rotation mechanism, which can be applied to the problem of solving unknown hand-eye matrices with angle values ​​of any value including π radians. The non-singular hand-eye calibration method proposed in the present invention can effectively avoid modifying the singularity of the Rodriguez parameters themselves, and to a certain extent improves the scope of application and safety of the analytical solution method for hand-eye calibration of substation inspection robots proposed by RYTsai, and has excellent anti-interference ability. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] Figure 1 It is a schematic diagram of a non-singular hand-eye calibration method for a substation inspection robot based on modified Rodriguez parameters;

[0047] Figure 2 Schematic diagram of the non-singular hand-eye calibration method for substation inspection robots based on the sequential rotation mechanism. DETAILED DESCRIPTION

[0048] The purpose of the present invention is to provide a robot non-singular hand-eye calibration method based on a sequential rotation mechanism. The present invention is further described below in conjunction with specific embodiments.

[0049] Example 1

[0050] A robot non-singular hand-eye calibration method based on a sequential rotation mechanism comprises the following steps:

[0051] Firstly, the analytical solution of hand-eye calibration based on modified Rodriguez parameters proposed by RYTsai is analyzed, and its inherent defects are found for the first time;

[0052] Given a rotation matrix R X , and its corresponding modified Rodriguez parameter is, P X =2sin(θ X / 2)[k x k y k z ] T Among them, θ X With the vector [k x k y k z ] T R X The rotation angle value and the unit direction vector of the rotation axis.

[0053] Collect the homogeneous coordinate transformation matrix A of the robot tool coordinate system and the camera coordinate system between two adjacent movements i With B iAccording to the above method, A i With B i The modified Rodriguez parameter P corresponding to the rotation part Ai With P Bi .

[0054] Obtain the overdetermined linear equations [P Ai +P Bi ] × ·P' X =P Ai -P Bi P' X .in,[·] × is the antisymmetric matrix corresponding to the vector, ||·|| is the modulus operator of the vector;

[0055] According to P X =2P' X (1+||P' X || 2 ) -0.5 , construct vector P' X The corresponding Rodriguez parameter P X , and then we can get P X The corresponding rotation matrix R X ;

[0056] R X Substituting into the equation R Ai t X +t Ai =R X t Bi +t X , solve the hand-eye matrix translation column vector t X The linear least squares estimate of Ai , R Bi and R X A i , B i and the rotation matrix of X, t Ai With t Bi and t X The matrix A i With B i and the position column vector of X;

[0057] Considering P' X =P X / (2cos(θ X / 2)), where θ X Refers to the rotation angle value of the unknown hand-eye matrix, P X =2sin(θ X / 2)[k xk y k z ] T Substitute P' X =P X / (2cos(θ X / 2)) we can get, .P' X =tan(θ X / 2)[k x k y k z ] T Obviously, when θ X =π radians, tan(θ X / 2) will tend to infinity. And since [k x k y k z ] T is a unit vector, then the vector P' X The value of will also tend to infinity.

[0058] However, in the classic hand-eye calibration method proposed by RYTsai, solving the vector P' X It is one of the key steps. Obviously, when the rotation angle of the unknown hand-eye matrix is ​​equal to π radians, the vector P' X The value of cannot be accurately obtained by the hand-eye calibration algorithm proposed by RYTsai, which will cause the hand-eye matrix estimated by RYTsai to deviate seriously from its true value, that is, the hand-eye calibration singularity phenomenon will occur. The reason for this phenomenon is the singularity of modifying the Rodriguez parameter itself.

[0059] Based on the sequential rotation mechanism, a hand-eye calibration method for substation inspection robot without singularity is proposed.

[0060] According to θ X =2·atan||P X || 2 , extract the rotation angle value θ of the unknown hand-eye matrix X , where atan is the inverse tangent operator and ||·|| is the modulus operator of the vector.

[0061] When θ X When far away from π radians, the analytical solution method proposed by RYTsai is used to solve the hand-eye calibration problem of the substation inspection robot.

[0062] When θ X When the angle is close to or equal to π radians, a non-singular analytical solution method for hand-eye calibration of substation inspection robot is proposed based on the sequential rotation mechanism.

[0063] The user can adjust the actual measured R according to his / her own preferences. Bi Axis of rotationa k Bi Perform a virtual rotation motion, and the corresponding rotation matrix is ​​denoted as R user , at this moment the vector group a k Bi will become R user k Bi .

[0064] Then the vector group R obtained by virtual rotation is user k Bi Rotate to match known measurement data a R Ai The axis of rotation a k Ai The rotation matrix required for the corresponding coincidence The rotation angle value may no longer be equal to R X The corresponding rotation angle value.

[0065] As long as the user matrix R user Choose appropriately, the measurement vector set {k Ai ,R user k Bi The rotation matrix angle value determined by} is no longer equal to π radians.

[0066] Using R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain Lian Li With R user Solve for the rotation part of the unknown hand-eye matrix, R X Substitute R Ai t X +t Ai =R X t Bi +t X , we can get the linear least squares estimate of the unknown hand-eye matrix translation column vector t X .

[0067] Example 2

[0068] A robot non-singular hand-eye calibration method based on sequential rotation mechanism, such as Figure 1 As shown, the following steps are included:

[0069] Step 1: Collect the measurement data set for hand-eye calibration i ,B i}, and extract the rotation angle value θ of the unknown hand-eye matrix rotation partX ;

[0070] Step 11: within the field of view of the camera, control the robot arm to perform two different movements, and record the transition matrix A of the robot arm tool coordinate system between the two adjacent movements. i And the relative pose matrix B of the camera coordinate system held by the robot arm between two adjacent movements i ;

[0071] Step 12, repeat step 1 k times to obtain k sets of measurement data {A i ,B i}, and extract the corresponding rotation axis unit direction vector {k Ai ,k Bi} and the angle value {θ Ai ,θ Bi};

[0072] Step 13, according to the corresponding relationship between the modified Rodriguez parameters and the rotation matrix, construct A in sequence i With B i The corresponding modified Rodriguez parameter P Ai =2sin(θ Ai / 2)k Ai With P Bi =2sin(θ Bi / 2)k Bi ;

[0073] Step 14: Construct an overdetermined linear system [P Ai +P Bi ] × P' X =P Ai -P Bi , use the linear least squares method to solve the vector P' X The value of

[0074] Step 15: The vector P' corresponding to the unknown hand-eye matrix X Bring in P X =2P' X (1+||P' X || 2 ) -0.5 Then, we can solve P X The value of

[0075] Step 16, according to vector P X With θ X =2·atan||P X || 2 , we can get the rotation angle value θ of the unknown hand-eye matrix X ;

[0076] Step 2, if θ X If it is not equal to or far from π radians, the unknown hand-eye matrix is ​​solved according to RYTsai's hand-eye calibration algorithm;

[0077] Step 3, if θ X is equal to or close to π radians, such as Figure 2 As shown in the figure, a non-singular hand-eye calibration method for substation inspection robot based on sequential rotation mechanism is proposed, and the rotation and translation values ​​of the unknown hand-eye matrix are obtained;

[0078] Step 31, according to the sequential rotation mechanism, define the first type of user matrix: 1 R user =Rot(k x ,θ); where k x is the unit direction vector of the coordinate axis X; θ is any angle value between 0 and π radians; Rot(k x ,θ) is the rotation around k x The rotation matrix obtained by rotating θ radians;

[0079] Step 32, according to the sequential rotation mechanism, define the second type of user matrix: 2 R user =Rot(k y ,θ); where k y is the unit direction vector of the coordinate axis Y; θ is any rotation angle between 0 and π radians; Rot(k y ,θ) is the rotation around k y The rotation matrix obtained by rotating θ radians;

[0080] Step 33, according to the sequential rotation mechanism, define the third type of user matrix: 3 R user =Rot(k z ,θ); where k z is the unit direction vector of the coordinate axis Z; θ is any angle between 0 and π radians; Rot(k z ,θ) is the rotation around k z The rotation matrix obtained by rotating θ radians;

[0081] Here is a theorem: "In the above three types of user-defined matrices There exists at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians. The proof process is as follows:

[0082] If the vector group k Ai Rotate to j R user k Bi The rotation matrix required for the coincidence is but

[0083] According to the properties of the rotation matrix, the user-defined matrix The traces are:

[0084]

[0085] In formulas (I) to (III), r ij Represents R X The element in row i and column j, according to R X The constraints between the internal elements can be sorted out.

[0086] According to the properties of the rotation matrix trace, at least one of the three user matrices has a non-negative trace, that is, There is at least one user matrix with a rotation angle between 0 and 2π / 3 radians.

[0087] Step 34, according to the hand-eye calibration analytical solution method based on modifying Rodriguez parameters proposed by RYTsai, the vector group 1 R user k Bi Replace the original vector group k Bi , find the solution such that the vector group k Ai and 1 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value

[0088] Step 35, similarly, according to the hand-eye calibration analytical solution method proposed by RYTsai, use the vector group 2 R user k Bi Replace the original vector group k Bi , solve for the vector group k Ai Rotate to 2 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value

[0089] Step 36: Group the vectors 3 R user k Bi As the original vector group k Bi , according to the hand-eye calibration analytical solution method proposed by RYTsai, the vector group k is solved Ai Rotate to 3 R user k BiThe rotation matrix determined by the coincidence And extract the corresponding angle value

[0090] Step 37, from and as well as Choose an angle between 0 and 2π / 3 radians from the three and record it as And record the corresponding rotation matrix

[0091] because and G R user All are known, then the unknown hand-eye matrix rotation part is: R X Substitute R Ai t X +t Ai =R X t Bi +t X , we can get the unknown hand-eye matrix translation column vector t X The value of .

[0092] Example 3

[0093] A robot non-singular hand-eye calibration method based on a sequential rotation mechanism comprises the following steps:

[0094] Step 1: Collect the measurement data set for hand-eye calibration i ,B i}, and extract the rotation angle value θ of the unknown hand-eye matrix rotation part X ; said A i is the transition matrix of the robot tool coordinate system between two adjacent movements, the B i It is the relative pose matrix of the camera coordinate system held by the robot arm between two adjacent movements;

[0095] Step 11: In the field of view of the camera, control the robot arm to perform two different movements and record A i and B i ;

[0096] Step 12, repeat step 11 k times to obtain k groups of measurement data {A i ,B i}, and extract the corresponding rotation axis unit direction vector {k Ai ,k Bi} and the angle value {θ Ai ,θ Bi}.

[0097] Step 13, according to the corresponding relationship between the modified Rodriguez parameters and the rotation matrix, construct A in sequence i With B i The corresponding modified Rodriguez parameter P Ai =2sin(θ Ai / 2)k Ai With P Bi =2sin(θ Bi / 2)k Bi ;

[0098] Step 14: Construct an overdetermined linear system [P Ai +P Bi ] × P' X =P Ai -P Bi , use the linear least squares method to solve the vector P' X The value of; where [·] × is the antisymmetric matrix corresponding to the vector;

[0099] Step 15: The vector P' corresponding to the unknown hand-eye matrix X Bring in P X =2P' X (1+||P' X || 2 ) -0.5 Then, we can solve P X The value of P X The value of P X The corresponding rotation matrix R X

[0100] Step 16, according to vector P X With θ X =2·atan||P X || 2 , get the rotation angle value θ of the unknown hand-eye matrix X .

[0101] Step 2, if θ X If it is not equal to or far from π radians, the unknown hand-eye matrix is ​​solved according to RYTsai's hand-eye calibration algorithm;

[0102] If θ X Equal to or close to π radians, the following steps are used to obtain the rotation and translation values ​​of the unknown hand-eye matrix:

[0103] Step 3: The user adjusts the R value obtained by actual measurement according to his / her own preference. Bi Axis of rotation a k Bi Perform a virtual rotation motion, and the corresponding rotation matrix is ​​denoted as Ruser , at this moment the vector group a k Bi will become R user k Bi ;

[0104] Specifically, according to the sequential rotation mechanism, three types of user matrices in the coordinate values ​​of X, Y and Z directions are defined, and there is at least one user matrix satisfying the rotation angle value between 0 and 2π / 3 radians; the specific steps include:

[0105] Step 31, according to the sequential rotation mechanism, define the first type of user matrix: 1 R user =Rot(k x ,θ); where k x is the unit direction vector of the coordinate axis X; θ is any angle value between 0 and π radians; Rot(k x ,θ) is the rotation around k x The rotation matrix obtained by rotating θ radians;

[0106] Step 32, according to the sequential rotation mechanism, define the second type of user matrix: 2 R user =Rot(k y ,θ); where k y is the unit direction vector of the coordinate axis Y; θ is any rotation angle between 0 and π radians; Rot(k y ,θ) is the rotation around k y The rotation matrix obtained by rotating θ radians;

[0107] Step 33, according to the sequential rotation mechanism, define the third type of user matrix: 3 R user =Rot(k z ,θ); where k z is the unit direction vector of the coordinate axis Z; θ is any angle between 0 and π radians; Rot(k z ,θ) is the rotation around k z The rotation matrix obtained by rotating θ radians;

[0108] In the above three types of user-defined matrices There is at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians.

[0109] Step 4: The vector group R obtained by virtual rotation user k Bi Rotate to the known measurement data aR Ai The axis of rotation a k Ai The rotation matrix required for the corresponding coincidence The rotation angle value may no longer be equal to R X The corresponding rotation angle value;

[0110] Step 5: As long as the user matrix R user Choose appropriately, the measurement vector set {k Ai ,R user k Bi The rotation matrix angle value determined by} is no longer equal to π radians;

[0111] Step 6, use R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain Lian Li With R user Solve for the rotation part of the unknown hand-eye matrix, R X Substitute R Ai t X +t Ai =R X t Bi +t X , get the unknown hand-eye matrix translation column vector t X The linear least squares estimate of ;

[0112] Among them, R Ai , R Bi , R X A i , B i and the rotation matrix of X, t Ai ,t Bi ,t X The matrix A i With B i and the position column vector of X;

[0113] Among them, R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain The specific steps include:

[0114] According to the analytical solution method of hand-eye calibration based on modifying Rodriguez parameters proposed by RYTsai, the vector group 1 R user k BiReplace the original vector group k Bi , find the solution such that the vector group k Ai and 1 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value

[0115] According to the analytical solution method of hand-eye calibration based on modifying Rodriguez parameters proposed by RYTsai, the vector group 2 R user k Bi Replace the original vector group k Bi , solve for the vector group k Ai Rotate to 2 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value

[0116] Group vectors 3 R user k Bi As the original vector group k Bi , according to the hand-eye calibration analytical solution method proposed by RYTsai, the vector group k is solved Ai Rotate to 3 R user k Bi The rotation matrix determined by the coincidence And extract the corresponding angle value

[0117] from and as well as Choose an angle between 0 and 2π / 3 radians from the three and record it as And record the corresponding rotation matrix

[0118] Preferably, among the above three types of user-defined matrices (j=1, 2, 3), there is at least one user matrix satisfying the angle value between 0 and radians, and the proof process is as follows:

[0119] If the vector group k Ai Rotate to j R user k Bi The rotation matrix required for the coincidence is but

[0120] According to the properties of the rotation matrix, the user-defined matrix The traces are:

[0121]

[0122] In formulas (I) to (III), r ij Represents R X The element in row i and column j, according to R X The constraints between the internal elements can be sorted out.

[0123] According to the properties of the rotation matrix trace, at least one of the three user matrices has a non-negative trace, that is, There is at least one user matrix with a rotation angle between 0 and 2π / 3 radians.

Claims

1. A robot non-singular hand-eye calibration method based on sequential rotation mechanism, characterized by: The following steps are involved: Step 1: Collect the measurement data set for hand-eye calibration i ,B i }, and extract the rotation angle value θ of the unknown hand-eye matrix rotation part X ; said A i is the transition matrix of the robot tool coordinate system between two adjacent movements, the B i It is the relative pose matrix of the camera coordinate system held by the robot arm between two adjacent movements; Step 2, if θ X Equal to or close to π radians, the following steps are used to obtain the rotation and translation values ​​of the unknown hand-eye matrix: Step 3: The user adjusts the R value obtained by actual measurement according to his / her own preference. Bi Axis of rotation a k Bi Perform a virtual rotation motion, and the corresponding rotation matrix is ​​denoted as R user , at this moment the vector group a k Bi will become R user k Bi ; Step 4: The vector group R obtained by virtual rotation user k Bi Rotate to match known measurement data a R Ai The axis of rotation a k Ai The rotation matrix required for the corresponding coincidence The rotation angle value may no longer be equal to R X The corresponding rotation angle value; Step 5: As long as the user matrix R user Choose appropriately, the measurement vector set {k Ai ,R user k Bi The rotation matrix angle value determined by} is no longer equal to π radians; Step 6, use R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain Lian Li With R user Solve for the rotation part of the unknown hand-eye matrix, R X Substitute R Ai t X +t Ai =R X t Bi +t X , get the unknown hand-eye matrix translation column vector t X The linear least squares estimate of ; Among them, R Ai , R Bi , R X A i , B i and the rotation matrix of X, t Ai ,t Bi ,t X The matrix A is i With B i and the position column vector of X.

2. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 1, characterized in that: If θ X If it is not equal to or far from π radians, the unknown hand-eye matrix is ​​solved according to RYTsai's hand-eye calibration algorithm.

3. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 1 is characterized in that: In step 3, the user adjusts the actual measured R according to his / her own preferences. Bi Axis of rotation a k Bi Perform a virtual rotation motion, and the corresponding rotation matrix is ​​denoted as R user Specifically, according to the sequential rotation mechanism, three types of user matrices in the coordinate values ​​of X, Y and Z directions are defined, and there is at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians.

4. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 3 is characterized by: According to the sequential rotation mechanism, three types of user matrices are defined in the coordinate values ​​of X, Y and Z directions, and the specific steps of defining at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians include: Step 31, according to the sequential rotation mechanism, define the first type of user matrix: 1 R user =Rot(k x ,θ); where k x is the unit direction vector of the coordinate axis X; θ is any angle value between 0 and π radians; Rot(k x ,θ) is the rotation around k x The rotation matrix obtained by rotating θ radians; Step 32, according to the sequential rotation mechanism, define the second type of user matrix: 2 R user =Rot(k y ,θ); where k y is the unit direction vector of the coordinate axis Y; θ is any rotation angle between 0 and π radians; Rot(k y ,θ) is the rotation around k y The rotation matrix obtained by rotating θ radians; Step 33, according to the sequential rotation mechanism, define the third type of user matrix: 3 R user =Rot(k z ,θ); where k z is the unit direction vector of the coordinate axis Z; θ is any angle between 0 and π radians; Rot(k z ,θ) is the rotation around k z The rotation matrix obtained by rotating θ radians; In the above three types of user-defined matrices There is at least one user matrix that satisfies the rotation angle value between 0 and 2π / 3 radians.

5. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 1 is characterized by: In step 6, use R user k Bi Replace the original R Bi , R Ai With R user k Bi Directly substitute into the hand-eye calibration algorithm proposed by RYTsai to obtain The specific steps include: According to the analytical solution method of hand-eye calibration based on modifying Rodriguez parameters proposed by RYTsai, the vector group 1 R user k Bi Replace the original vector group k Bi , find the solution such that the vector group k Ai and 1 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value According to the analytical solution method of hand-eye calibration based on modifying Rodriguez parameters proposed by RYTsai, the vector group 2 R user k Bi Replace the original vector group k Bi , solve for the vector group k Ai Rotate to 2 R user k Bi The rotation matrix required for the coincidence And extract the corresponding angle value Group vectors 3 R user k Bi As the original vector group k Bi , according to the hand-eye calibration analytical solution method proposed by RYTsai, the vector group k is solved Ai Rotate to 3 R user k Bi The rotation matrix determined by the coincidence And extract the corresponding angle value from and as well as Choose an angle between 0 and 2π / 3 radians from the three and record it as And record the corresponding rotation matrix 6. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 1, characterized in that: Step 1 specifically includes the following steps: Step 11: In the field of view of the camera, control the robot arm to perform two different movements and record A i and B i ; Step 12, repeat step 11 k times to obtain k groups of measurement data {A i ,B i }, and extract the corresponding rotation axis unit direction vector {k Ai ,k Bi } and the angle value {θ Ai ,θ Bi }.

7. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 6, characterized in that: Step 1 also includes the following steps: Step 13, according to the corresponding relationship between the modified Rodriguez parameters and the rotation matrix, construct A in sequence i With B i The corresponding modified Rodriguez parameter P Ai =2sin(θ Ai / 2)k Ai With P Bi =2sin(θ Bi / 2)k Bi ; Step 14: Construct an overdetermined linear system [P Ai +P Bi ] × P' X =P Ai -P Bi , use the linear least squares method to solve the vector P′ X The value of; where [·] × is the antisymmetric matrix corresponding to the vector; Step 15: The vector P′ corresponding to the unknown hand-eye matrix X Bring in P X =2P' X (1+||P′ X || 2 ) -0.5 Then, we can solve P X The value of . Step 16, according to vector P X With θ X =2·a tan||P X || 2 , get the rotation angle value θ of the unknown hand-eye matrix X .

8. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 6, characterized in that: According to P X The value of P X The corresponding rotation matrix R X .

9. The robot non-singular hand-eye calibration method based on sequential rotation mechanism according to claim 4, characterized in that: In the above three types of user-defined matrices There is at least one user matrix that satisfies the rotation angle value between 0 and radians. The proof process is as follows: If the vector group k Ai Rotate to j R user k Bi The rotation matrix required for the coincidence is but According to the properties of the rotation matrix, the user-defined matrix The traces are: In formulas (I) to (III), r ij Represents R X The element in row i and column j, according to R X The constraints between the internal elements can be sorted out. According to the properties of the rotation matrix trace, at least one of the three user matrices has a non-negative trace, that is, There is at least one user matrix with a rotation angle between 0 and 2π / 3 radians.

10. The application of the robot non-singular hand-eye calibration method based on sequential rotation mechanism as claimed in claim 1, characterized in that: Used when strange phenomena occur in the classic hand-eye calibration method proposed by RYTsai.

Citation Information

Cited By

  • Method for detecting hand-eye calibration analysis solution singularity of robot

    CN120563631A