Six-joint series robot end tool calibration method
By obtaining end point position information and calculating tool position offset in a six-joint tandem robot, combined with the optimization method of error evaluation equation, the problems of limited calibration accuracy and complex operation of end tools in the prior art are solved, and more efficient and accurate calibration results are achieved.
Patent Information
- Application Number
- CN202510442864.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-10
- Publication Date
- 2025-05-09
- Estimated Expiration
- 2045-04-10
AI Technical Summary
The existing robot end tool calibration methods have problems of limited accuracy, complex operation and high cost, especially in six-joint tandem robot applications.
A six-joint tandem robot end tool calibration method is proposed. By obtaining the end point position information, calculating the offset of the reference point position and tool position, and using error evaluation equations to optimize the calibration results, improving accuracy and reliability.
The accuracy and robustness of the six-joint tandem robot end tool calibration is significantly improved, reducing operational complexity and dependence on high-cost auxiliary devices, especially when using more than 4 sampling points.
Smart Images

Figure CN119952731A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot control technology, and in particular to a method for calibrating an end tool of a six-joint serial robot. Background Art
[0002] In the field of robotic automation, accurate calibration of end-tools is crucial to improving the accuracy and efficiency of robot operations. Traditional calibration methods usually rely on complex equipment and cumbersome operating procedures, such as the quartering method and the use of auxiliary devices such as lasers and optical cameras. These methods can achieve higher accuracy in specific situations, but are more expensive to use in a wider range of situations. Among them, the quartering method is simple to operate, but has limited accuracy; and the auxiliary device method has high accuracy, but has problems such as high cost and complex operation in actual applications, and low efficiency. Therefore, an efficient and accurate six-node robot end-point calibration method is urgently needed. Summary of the invention
[0003] The purpose of the present invention is to propose a six-joint serial robot end tool calibration method, which improves the calibration accuracy and reduces the operation complexity by optimizing the traditional calibration steps.
[0004] To achieve the above object, the present invention provides a six-joint serial robot end tool calibration method, comprising the following steps: S1. Using the reference point of the six-joint serial robot to obtain the end point position information of the six-joint serial robot; S2, based on the end point posture information of the six-joint serial robot, using the reference point of the six-joint serial robot to obtain the reference point position and the tool position offset; S3. Obtain the calibration result of the end tool of the six-joint serial robot according to the reference point position and the tool position offset.
[0005] Optionally, using the six-joint serial robot reference point to obtain the end point position information of the six-joint serial robot includes: S1-1, set the reference point of the six-joint serial robot; S1-2, according to the reference point of the six-joint serial robot, move the tool point of the six-joint serial robot to obtain the position information and posture information of the end point of the six-joint serial robot; S1-3, obtaining position information and posture information of a plurality of end points of the six-joint serial robot as the end point posture information of the six-joint serial robot; Among them, the reference point of the six-joint serial robot is a fixed sharp point of the six-joint serial robot auxiliary device in the workspace, the tool point of the six-joint serial robot is a fixed sharp point of a detachable device fixed on the end flange of the six-joint serial robot and cannot be changed in real time, and the end point of the six-joint serial robot is the center point of the end flange of the six-joint serial robot.
[0006] Optionally, obtaining the reference point position and the tool position offset by using the reference point of the six-joint serial robot based on the end point posture information of the six-joint serial robot includes: S2-1, obtaining a recording point of the end point posture information according to the end point posture information of the six-joint serial robot; S2-2, obtaining a recording point threshold of the corresponding end point posture information according to the recording point of the end point posture information; S2-3, judging whether the recording point of the end point posture information is equal to the recording point threshold of the end point posture information, if so, obtaining the tool position offset to be solved of the six-joint serial robot, and executing S2-4, otherwise, returning to S1-3; S2-4, obtaining the reference point position and the tool position offset based on the end point posture information of the six-joint serial robot, the reference point of the six-joint serial robot and the tool position offset to be solved of the six-joint serial robot; Among them, the recording point threshold is 6.
[0007] Optionally, obtaining the reference point position and the tool position offset based on the end point posture information of the six-joint serial robot, the reference point of the six-joint serial robot and the tool position offset to be solved of the six-joint serial robot includes: S2-4-1, using the end point posture information of the six-joint serial robot to obtain the tool posture corresponding to the end point posture information; S2-4-2, acquiring a first tool posture, a second tool posture, a third tool posture, a fourth tool posture, a fifth tool posture, and a sixth tool posture as continuous tool postures of the end point according to the tool posture corresponding to the end point posture information; S2-4-3, acquiring a target end point according to the first tool posture, the second tool posture, the third tool posture and the fourth tool posture; S2-4-4, determining whether the fifth tool posture, the sixth tool posture and the tool posture corresponding to the target end point are all consistent, if so, executing S2-4-5, otherwise, returning to S1-3; S2-4-5, determine whether the tool point corresponding to the fifth tool posture is consistent with the reference point of the six-joint serial robot, if so, return to S1-3, otherwise, execute S2-4-6; S2-4-6, determine whether the tool point corresponding to the sixth tool posture is consistent with the reference point of the six-joint serial robot, if so, return to S1-3, otherwise, based on the end point posture information of the six-joint serial robot, use the six-joint serial robot reference point and the tool position offset to be solved of the six-joint serial robot to obtain the reference point position deviation, and execute S2-4-7; S2-4-7, constructing an error evaluation equation according to the reference point position deviation; S2-4-8, obtaining the offset between the reference point position and the tool position according to the error evaluation equation; Among them, the first tool posture is the tool posture corresponding to the first end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot, the second tool posture is the tool posture corresponding to the second end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the first tool posture, the third tool posture is the tool posture corresponding to the third end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the second tool posture, the fourth tool posture is the tool posture corresponding to the fourth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the third tool posture, the fifth tool posture is the tool posture corresponding to the fifth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the fourth tool posture, and the sixth tool posture is the tool posture corresponding to the sixth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the fifth tool posture.
[0008] Optionally, acquiring a target end point according to the first tool posture, the second tool posture, the third tool posture, and the fourth tool posture includes: S2-4-3-1, determine whether the first tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point as the target end point according to the first tool posture, otherwise, execute S2-4-3-2; S2-4-3-2, determine whether the second tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point according to the second tool posture as the target end point, otherwise, execute S2-4-3-3; S2-4-3-3, determine whether the third tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point according to the third tool posture as the target end point, otherwise, execute S2-4-3-4; S2-4-3-4, determine whether the fourth tool posture is perpendicular to the working surface of the six-joint serial robot. If so, obtain the corresponding six-joint serial robot end point as the target end point according to the fourth tool posture. Otherwise, return to S1-3.
[0009] Optionally, the calculation formula of the reference point position deviation is as follows:
[0010] in, E i is the error vector between the observed position of the tool point and the reference point position, P 0i is the observation position of the tool point, P 0 is the reference point position, P i is the recorded end point position, R i is the recorded posture of the end point, T is the tool position offset.
[0011] Optionally, the calculation formula of the error evaluation equation is as follows:
[0012] in, Err is the sum of the squares of the error vector modulus, E i is the error vector between the observed position of the tool point and the reference point position, and is the reference point position deviation, P i is the recorded end point position, R i is the recorded posture of the end point, T is the tool position offset, and is the position transformation in the tool transformation, P 0 is the reference point position.
[0013] Optionally, obtaining the offset between the reference point position and the tool position according to the error evaluation equation includes: Perform partial derivative calculations according to the error evaluation equation to obtain an initial set of equations; Arrange the initial set of equations to obtain a target set of equations; Solving the target equation group to obtain the reference point position and the tool position offset; Wherein, the initial set of equations is:
[0014]
[0015] The target equations are: ; in, Err is the sum of the squares of the error vector modulus, T is the tool position offset, and is the position transformation in the tool transformation, R i is the recorded posture of the end point, P i is the recorded end point position, P 0 is the reference point position.
[0016] Optionally, obtaining a calibration result of an end tool of a six-joint serial robot according to the reference point position and the tool position offset includes: S3-1, obtaining a point-taking posture according to the reference point position and the tool position offset; S3-2, set the observation error value; S3-3, based on the number of the point-taking postures, using the observation error value to perform point-attaching on the reference point position to obtain a target point corresponding to the reference point position; S3-4, using the target point corresponding to the reference point position and the point-taking posture to perform reverse calculation to obtain the target sampling point; S3-5, obtaining a calculation reference point position and a calculation tool position offset according to the target sampling point; S3-6, obtaining the calibration result of the end tool of the six-joint serial robot according to the reference point position, the tool position offset, the calculated reference point position and the calculated tool position offset; Among them, the number of points of the point-taking posture is greater than or equal to 4, and the observation error value is 0.4-1mm.
[0017] Optionally, obtaining the calibration result of the end tool of the six-joint serial robot according to the reference point position, the tool position offset, the calculated reference point position and the calculated tool position offset includes: S3-6-1. According to the reference point position and the calculated reference point position, obtain the vector modulus between the reference point position and the calculated reference point position as the reference point position vector modulus; S3-6-2. Obtain a corresponding reference point position vector modulus threshold value according to the reference point position vector modulus; S3-6-3, determine whether the reference point position vector modulus is consistent with the reference point position vector modulus threshold, if so, execute S3-6-4, otherwise, return to S1; S3-6-4, according to the tool position offset and the calculated tool position offset, obtaining a vector modulus between the tool position offset and the calculated tool position offset as a tool position offset vector modulus; S3-6-5. Obtain a corresponding tool position offset vector modulus threshold value according to the tool position offset vector modulus; S3-6-6. Determine whether the tool position offset vector modulus is consistent with the tool position offset vector modulus threshold. If so, obtain the tool transformation according to the reference point position and the tool position offset as the calibration result of the end tool of the six-joint serial robot. Otherwise, return to S1.
[0018] Compared with the closest prior art, the present invention has the following beneficial effects: The present invention introduces an error evaluation equation based on the sum of the squares of the lengths of each point, and finds the minimum point of the error by optimizing the partial derivatives, thereby optimizing the accuracy of tool calibration; the present invention improves the accuracy and reliability of the tool calibration of the six-joint serial robot by combining position and posture information; the present invention is verified by actual data, and has a significant improvement in calibration accuracy compared to traditional methods, especially when more than 4 sampling points are used, the accuracy improvement is more obvious, this improvement not only improves the accuracy of tool calibration, but also maintains the simplicity of operation, does not require additional equipment investment, and has a wide range of practical value. The present invention is a six-joint serial robot end tool calibration method that significantly improves the calibration accuracy and the robustness of the calibration results, especially when more than 4 sampling points are used, while reducing the problem of inconsistent tool end points caused by posture deflection, reducing the complexity of operation, and reducing the reliance on high-cost auxiliary devices. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0020] Figure 1 This is a flow chart of a method for calibrating an end tool of a six-joint serial robot according to an embodiment of the present invention; Figure 2 A schematic diagram of the traditional four-point tool offset and reference point deviation proposed in an embodiment of the present invention; Figure 3A schematic diagram of a conventional multi-point tool offset and a reference point deviation proposed in an embodiment of the present invention; Figure 4 A schematic diagram of optimizing the tool offset and reference point deviation of four points proposed in an embodiment of the present invention; Figure 5 A schematic diagram of optimizing multi-point tool offsets and reference point deviations according to an embodiment of the present invention. DETAILED DESCRIPTION
[0021] In order to make the purpose, technical solutions and advantages of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in combination with the specific embodiments of the present invention and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0022] The terms used in the embodiments of the present invention are only used to explain the specific embodiments of the present invention and are not intended to limit the present invention.
[0023] Example 1: Figure 1 As shown, an embodiment of the present invention provides a method for calibrating an end tool of a six-joint serial robot, comprising the following steps: S1, using the reference point of the six-joint serial robot to obtain the end point position information of the six-joint serial robot; S2, based on the end point posture information of the six-joint serial robot, using the reference point of the six-joint serial robot to obtain the reference point position and the tool position offset; S3. Obtain the calibration result of the end tool of the six-joint serial robot according to the reference point position and the tool position offset.
[0024] S1 specifically includes: S1-1, set the reference point of the six-joint serial robot; S1-2, according to the reference point of the six-joint serial robot, move the tool point of the six-joint serial robot to obtain the position information and posture information of the end point of the six-joint serial robot; S1-3, obtaining position information and posture information of a plurality of end points of the six-joint serial robot as the end point posture information of the six-joint serial robot; Among them, the reference point of the six-joint serial robot is a fixed sharp point of the six-joint serial robot auxiliary device in the workspace, the tool point of the six-joint serial robot is a fixed sharp point of a detachable device fixed on the end flange of the six-joint serial robot and cannot be changed in real time, and the end point of the six-joint serial robot is the center point of the end flange of the six-joint serial robot.
[0025] S2 specifically includes: S2-1, obtaining a recording point of the end point posture information according to the end point posture information of the six-joint serial robot; S2-2, obtaining a recording point threshold of the corresponding end point posture information according to the recording point of the end point posture information; S2-3, judging whether the recording point of the end point posture information is equal to the recording point threshold of the end point posture information, if so, obtaining the tool position offset to be solved of the six-joint serial robot, and executing S2-4, otherwise, returning to S1-3; S2-4, obtaining the reference point position and the tool position offset based on the end point posture information of the six-joint serial robot, the reference point of the six-joint serial robot and the tool position offset to be solved of the six-joint serial robot; Among them, the recording point threshold is 6.
[0026] S2-4 specifically includes: S2-4-1, using the end point posture information of the six-joint serial robot to obtain the tool posture corresponding to the end point posture information; S2-4-2, acquiring a first tool posture, a second tool posture, a third tool posture, a fourth tool posture, a fifth tool posture, and a sixth tool posture as continuous tool postures of the end point according to the tool posture corresponding to the end point posture information; S2-4-3, acquiring a target end point according to the first tool posture, the second tool posture, the third tool posture and the fourth tool posture; S2-4-4, determining whether the fifth tool posture, the sixth tool posture and the tool posture corresponding to the target end point are all consistent, if so, executing S2-4-5, otherwise, returning to S1-3; S2-4-5, determine whether the tool point corresponding to the fifth tool posture is consistent with the reference point of the six-joint serial robot, if so, return to S1-3, otherwise, execute S2-4-6; S2-4-6, determine whether the tool point corresponding to the sixth tool posture is consistent with the reference point of the six-joint serial robot, if so, return to S1-3, otherwise, based on the end point posture information of the six-joint serial robot, use the six-joint serial robot reference point and the tool position offset to be solved of the six-joint serial robot to obtain the reference point position deviation, and execute S2-4-7; S2-4-7, constructing an error evaluation equation according to the reference point position deviation; S2-4-8, obtaining the offset between the reference point position and the tool position according to the error evaluation equation; Among them, the first tool posture is the tool posture corresponding to the first end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot, the second tool posture is the tool posture corresponding to the second end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the first tool posture, the third tool posture is the tool posture corresponding to the third end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the second tool posture, the fourth tool posture is the tool posture corresponding to the fourth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the third tool posture, the fifth tool posture is the tool posture corresponding to the fifth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the fourth tool posture, and the sixth tool posture is the tool posture corresponding to the sixth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the fifth tool posture.
[0027] S2-4-3 specifically includes: S2-4-3-1, determine whether the first tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point as the target end point according to the first tool posture, otherwise, execute S2-4-3-2; S2-4-3-2, determine whether the second tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point according to the second tool posture as the target end point, otherwise, execute S2-4-3-3; S2-4-3-3, determine whether the third tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point according to the third tool posture as the target end point, otherwise, execute S2-4-3-4; S2-4-3-4, determine whether the fourth tool posture is perpendicular to the working surface of the six-joint serial robot. If so, obtain the corresponding six-joint serial robot end point as the target end point according to the fourth tool posture. Otherwise, return to S1-3.
[0028] Furthermore, the calculation formula of the reference point position deviation is as follows:
[0029] in, E iis the error vector between the observed position of the tool point and the reference point position, P 0i is the observation position of the tool point, P 0 is the reference point position, P i is the recorded end point position, R i is the recorded posture of the end point, T is the tool position offset.
[0030] Furthermore, the calculation formula of the error evaluation equation is as follows:
[0031] in, Err is the sum of the squares of the error vector modulus, E i is the error vector between the observed position of the tool point and the reference point position, and is the reference point position deviation, P i is the recorded end point position, R i is the recorded posture of the end point, T is the tool position offset, and is the position transformation in the tool transformation, P 0 is the reference point position.
[0032] S2-4-8 specifically includes: Perform partial derivative calculations according to the error evaluation equation to obtain an initial set of equations; Arrange the initial set of equations to obtain a target set of equations; Solving the target equation group to obtain the reference point position and the tool position offset; Wherein, the initial set of equations is:
[0033]
[0034] The target equations are: ; in, Err is the sum of the squares of the error vector modulus, T is the tool position offset, and is the position transformation in the tool transformation, R i is the recorded posture of the end point, P i is the recorded end point position, P 0 is the reference point position.
[0035] S3 specifically includes: S3-1, obtaining a point-taking posture according to the reference point position and the tool position offset; S3-2, set the observation error value; S3-3, based on the number of the point-taking postures, using the observation error value to perform point-attaching on the reference point position to obtain a target point corresponding to the reference point position; S3-4, using the target point corresponding to the reference point position and the point-taking posture to perform reverse calculation to obtain the target sampling point; S3-5, obtaining a calculation reference point position and a calculation tool position offset according to the target sampling point; S3-6, obtaining the calibration result of the end tool of the six-joint serial robot according to the reference point position, the tool position offset, the calculated reference point position and the calculated tool position offset; Among them, the number of points of the point-taking posture is greater than or equal to 4, and the observation error value is 0.4-1mm.
[0036] S3-6 specifically includes: S3-6-1. According to the reference point position and the calculated reference point position, obtain the vector modulus between the reference point position and the calculated reference point position as the reference point position vector modulus; S3-6-2. Obtain a corresponding reference point position vector modulus threshold value according to the reference point position vector modulus; S3-6-3, determine whether the reference point position vector modulus is consistent with the reference point position vector modulus threshold, if so, execute S3-6-4, otherwise, return to S1; S3-6-4, according to the tool position offset and the calculated tool position offset, obtaining a vector modulus between the tool position offset and the calculated tool position offset as a tool position offset vector modulus; S3-6-5. Obtain a corresponding tool position offset vector modulus threshold value according to the tool position offset vector modulus; S3-6-6. Determine whether the tool position offset vector modulus is consistent with the tool position offset vector modulus threshold. If so, obtain the tool transformation according to the reference point position and the tool position offset as the calibration result of the end tool of the six-joint serial robot. Otherwise, return to S1.
[0037] Embodiment 2: In this embodiment, the robot specifically refers to a six-joint serial robot, the end point specifically refers to the center point of the robot's end flange, the tool point specifically refers to a fixed sharp point of a detachable device that is fixed on the robot's end flange and cannot be changed in real time, the reference point specifically refers to a fixed sharp point of an auxiliary device in the workspace, the tool transformation specifically refers to the posture transformation relationship of the tool point relative to the robot's end flange, and the tool calibration specifically refers to a method of measuring the tool transformation.
[0038] There are generally a variety of auxiliary device methods for the calibration of robot tools. Among them, the most basic and practical auxiliary device method (i.e., the basic method) is: (1) Fix a reference point in the robot workspace; (2) Control the robot, move the tool point to the reference point, and record the end point posture; (3) Control the robot to change the tool posture, move the tool point to the reference point, and record the end point posture; (4) Repeat step (3) and record at least four end points; (5) If there are four recorded points, calculate the sphere using the four-point method without considering the error; (6) If there are more than four recorded points, fit the sphere using the least squares method; (7) The position of the sphere center in the recorded point coordinate system is represented as the position transformation in the tool transformation; (8) If it is the four-point method, then its posture transformation is no longer performed; (9) If it is the six-point method, then one of the first four points must be P O , requiring the tool posture to be perpendicular to the work surface, and two additional points are required, and its posture is P O The posture is the same. The tool point does not move to the reference point, but moves to two points in the X and Y directions parallel to the work plane based on the reference point. P X , P Y ; (10) P O , P X , P Y Form a coordinate system with P O The posture transformation relationship between the robot end coordinate system of the point is used as the posture transformation relationship of the tool; (11) The posture transformation relationship obtained in step (10) and step (7) is combined into a complete posture transformation relationship, which becomes the tool transformation output by the 6-point method. The optimization of tool calibration described in the present invention is only aimed at the optimization of the position transformation part in the traditional method. Since the posture transformation does not need to be calibrated and optimized, the optimization only focuses on steps (1)-(8).
[0039] In addition to the above methods, there are also tool calibration methods using auxiliary devices such as lasers and optical cameras. These methods can achieve higher accuracy in specific situations, but in a wider range of situations, these auxiliary devices are expensive to obtain and use in the working environment, and are not as close to the user as the basic solution. Therefore, if the basic solution can be improved and its accuracy can be improved, it will be a better choice. For the known information, assume the position transformation in the tool coordinate transformation, and the tool position offset is T , the reference point position is P 0, the recorded end point position is P 1,P 2,…, P i ,…, P n , the recorded position of the end point is R 1, R 2,…, R i ,…, R n ,in, n ≥4.
[0040] The traditional end-tool calibration method is to directly fit the sphere, find the center of the sphere, and then indirectly find the tool. The solution is: Let the radius be r , the center of the sphere, that is, the reference point position is P 0, calculate the sum of the squares of the distances between each point and the center of the sphere and r 2 The sum of the squares of the interpolated values is used as the error estimate. To facilitate calculation, an intermediate variable is added. a .
[0041]
[0042] By variable a and the center of the ball P List the system of equations with 0 as the position variable:
[0043]
[0044] in, P 1, P 2,…, P i ,…, P n is the position of the robot end point, n ≥4, is the error vector between the position of the robot end point and the center of the sphere, Err’ for The sum of the squares of the moduli is used to evaluate the deviation of the calculated data. Err When it is minimum, it must be an extreme point, so a and P 0 Find the partial derivative and make it equal to 0, and get the system of equations:
[0045]
[0046] After sorting, we get:
[0047] Solving the system of equations, we get a , P 0, and use this to find the radius, and then use this to find T .
[0048] This embodiment proposes a six-joint serial robot end tool calibration method, which can improve the tool accuracy in the basic method, among which all six-point methods and multi-point methods can be described as 4+2-point method and (multi-2)+2-point method, and the optimization is only for 4 and (multi-2). Under normal circumstances, in order to obtain the center of the sphere through four points, it is generally hoped that the four points are evenly distributed on the four points of the sphere, that is, each point is 120º apart. However, in the actual process of point alignment, due to the error of naked eye observation, the limitation of robot posture, the requirement of work efficiency, etc., this requirement is actually not met, so the requirement must be lowered. Generally speaking, it is required as much as possible that in the process of point alignment, if there are only four points, the postures between the points are required to be more than 60º apart, which can be obtained by observing the posture angle deviation between the two points. Four points can accurately determine a sphere, which is the basic method used in the above basic method. However, in addition to position information, the six-joint serial robot also has posture information, so the position of the center of the sphere can be further refined. In addition, even if all points are truly distributed on the sphere, the tool end points of each point are not exactly the same due to the deflection of the posture, so this needs to be added to the set of equations for calculating the tool and the center of the sphere to be closer to reality.
[0049] According to the homogeneous transformation equation, we can record the end points P i , R i and waiting T , calculate the observation position of the tool point P 0i , that is, what should be observed at the point P 0, but it is actually P 0 basically does not overlap, but it is P The 0 point is very close, and its deviation can be described by the mathematical equation:
[0050] in, E i is the error vector between the observed position of the tool point and the reference point position, and is the reference point position deviation, that is, the pose data corresponding to each end point collected ( P i , R i )and T The observed position of the tool point calculated by the coordinate transformation relationship P0i With reference point position P The error vector is 0; According to each point E i The sum of the squares of the lengths of can be used as an equation to evaluate the error, namely the error evaluation equation:
[0051] in, Err is the sum of the squares of the error vector modulus, which is used to evaluate the deviation of the calculated data. Err The larger it is, the greater the deviation and the less reliable it is. Err The smaller, the more reliable. T , P 0 is an unknown number. Err The minimum, then we can make the partial derivatives of the formula 0, get the extreme point, and verify that the extreme point is Err The minimum point of , that is, the initial equation group is obtained by partial derivative calculation according to the error evaluation equation, where the initial equation group is:
[0052]
[0053] After sorting out the initial set of equations, the target set of equations is:
[0054] Solve the target equations and get T , P 0.
[0055] The verification test plan specifically includes: setting a real reference point and a real tool position offset; setting 4+ different point-taking postures according to the basic operation steps of the basic method; setting an error value observed by the naked eye, which is about 0.4-1mm; adding a random point on a spherical space within the error range to the real reference point according to the number of points corresponding to the 4+ different point-taking postures, and recording it; taking the random point corresponding to each point as the starting point, using 4+ different point-taking postures, reversely calculating a sampling point, recorded as P i ; Two methods are used, taking P i The first 4 points and all the points in the calculation reference point are calculated respectively. P x and calculate tool position offset T x; Calculate the vector modulus between the real reference point and the calculated reference point, and the vector modulus between the real tool position offset and the calculated tool position offset. Use these two as the basis for the evaluation method to obtain the calibration result of the end tool of the six-joint serial robot.
[0056] Data Validation: Set the original tool: ; To set the original reference point: ; Take a 6-point pose: n =6, and set the random number to generate ; ; Set the visual error: ; Random error generation method: ; Generate the record points near the original reference point as: .
[0057] According to the above data verification, through multiple consecutive calculations, we can obtain Figure 2-5 The tool offset and reference point deviation of traditional four-point, traditional multi-point, optimized four-point and optimized multi-point are shown. It can be seen that the optimized four-point and optimized multi-point are significantly improved compared with the traditional method.
[0058] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0059] The present invention is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0060] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0061] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable device. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0062] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, ordinary technicians in the relevant field should understand that the specific implementation methods of the present invention can still be modified or replaced by equivalents. Any modification or equivalent replacement that does not depart from the spirit and scope of the present invention should be covered within the scope of protection of the claims of the present invention.
Claims
1. A six-joint serial robot end tool calibration method, characterized in that: The specific steps include: S1, using the reference point of the six-joint serial robot to obtain the end point position information of the six-joint serial robot; S2, based on the end point posture information of the six-joint serial robot, using the reference point of the six-joint serial robot to obtain the reference point position and the tool position offset; S3. Obtain the calibration result of the end tool of the six-joint serial robot according to the reference point position and the tool position offset.
2. The method for calibrating a six-joint serial robot end tool according to claim 1, characterized in that: Using the six-joint serial robot reference point to obtain the end point pose information of the six-joint serial robot includes: S1-1, set the reference point of the six-joint serial robot; S1-2, according to the reference point of the six-joint serial robot, move the tool point of the six-joint serial robot to obtain the position information and posture information of the end point of the six-joint serial robot; S1-3, obtaining position information and posture information of a plurality of end points of the six-joint serial robot as the end point posture information of the six-joint serial robot; Among them, the reference point of the six-joint serial robot is a fixed sharp point of the six-joint serial robot auxiliary device in the workspace, the tool point of the six-joint serial robot is a fixed sharp point of a detachable device fixed on the end flange of the six-joint serial robot and cannot be changed in real time, and the end point of the six-joint serial robot is the center point of the end flange of the six-joint serial robot.
3. The method for calibrating a six-joint serial robot end tool according to claim 2, characterized in that: Based on the end point posture information of the six-joint serial robot, using the reference point of the six-joint serial robot to obtain the reference point position and the tool position offset includes: S2-1, obtaining a recording point of the end point posture information according to the end point posture information of the six-joint serial robot; S2-2, obtaining a recording point threshold of the corresponding end point posture information according to the recording point of the end point posture information; S2-3, judging whether the recording point of the end point posture information is equal to the recording point threshold of the end point posture information, if so, obtaining the tool position offset to be solved of the six-joint serial robot, and executing S2-4, otherwise, returning to S1-3; S2-4, obtaining the reference point position and the tool position offset based on the end point posture information of the six-joint serial robot, the reference point of the six-joint serial robot and the tool position offset to be solved of the six-joint serial robot; Among them, the recording point threshold is 6.
4. The method for calibrating a six-joint serial robot end tool according to claim 3, characterized in that: Acquiring the reference point position and the tool position offset based on the end point posture information of the six-joint serial robot, the reference point of the six-joint serial robot and the tool position offset to be solved of the six-joint serial robot comprises: S2-4-1, using the end point posture information of the six-joint serial robot to obtain the tool posture corresponding to the end point posture information; S2-4-2, acquiring a first tool posture, a second tool posture, a third tool posture, a fourth tool posture, a fifth tool posture, and a sixth tool posture as continuous tool postures of the end point according to the tool posture corresponding to the end point posture information; S2-4-3, acquiring a target end point according to the first tool posture, the second tool posture, the third tool posture and the fourth tool posture; S2-4-4, determining whether the fifth tool posture, the sixth tool posture and the tool posture corresponding to the target end point are all consistent, if so, executing S2-4-5, otherwise, returning to S1-3; S2-4-5, determine whether the tool point corresponding to the fifth tool posture is consistent with the reference point of the six-joint serial robot, if so, return to S1-3, otherwise, execute S2-4-6; S2-4-6, determine whether the tool point corresponding to the sixth tool posture is consistent with the reference point of the six-joint serial robot, if so, return to S1-3, otherwise, based on the end point posture information of the six-joint serial robot, use the six-joint serial robot reference point and the tool position offset to be solved of the six-joint serial robot to obtain the reference point position deviation, and execute S2-4-7; S2-4-7, constructing an error evaluation equation according to the reference point position deviation; S2-4-8, obtaining the offset between the reference point position and the tool position according to the error evaluation equation; Among them, the first tool posture is the tool posture corresponding to the first end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot, the second tool posture is the tool posture corresponding to the second end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the first tool posture, the third tool posture is the tool posture corresponding to the third end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the second tool posture, the fourth tool posture is the tool posture corresponding to the fourth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the third tool posture, the fifth tool posture is the tool posture corresponding to the fifth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the fourth tool posture, and the sixth tool posture is the tool posture corresponding to the sixth end point posture information selected when the tool point of the six-joint serial robot is moved to the reference point of the six-joint serial robot based on the fifth tool posture.
5. The method for calibrating the end tool of a six-joint serial robot according to claim 4, characterized in that: Acquiring a target end point according to the first tool posture, the second tool posture, the third tool posture, and the fourth tool posture comprises: S2-4-3-1, determine whether the first tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point as the target end point according to the first tool posture, otherwise, execute S2-4-3-2; S2-4-3-2, determine whether the second tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point according to the second tool posture as the target end point, otherwise, execute S2-4-3-3; S2-4-3-3, determine whether the third tool posture is perpendicular to the working surface of the six-joint serial robot, if so, obtain the corresponding six-joint serial robot end point according to the third tool posture as the target end point, otherwise, execute S2-4-3-4; S2-4-3-4, determine whether the fourth tool posture is perpendicular to the working surface of the six-joint serial robot. If so, obtain the corresponding six-joint serial robot end point as the target end point according to the fourth tool posture. Otherwise, return to S1-3.
6. The method for calibrating an end tool of a six-joint serial robot according to claim 4, characterized in that: The calculation formula of the reference point position deviation is as follows: in, E i is the error vector between the observed position of the tool point and the reference point position, P 0i is the observation position of the tool point, P 0 is the reference point position, P i is the position of the recorded end point, R i is the recorded posture of the end point, T is the tool position offset.
7. The method for calibrating an end tool of a six-joint serial robot according to claim 6, characterized in that: The calculation formula of the error evaluation equation is as follows: in, Err is the sum of the squares of the error vector modulus, E i is the error vector between the observed position of the tool point and the reference point position, and is the reference point position deviation, P i is the position of the recorded end point, R i is the recorded posture of the end point, T is the tool position offset, and is the position transformation in the tool transformation, P 0 is the reference point position.
8. The method for calibrating an end tool of a six-joint serial robot according to claim 7, characterized in that: Acquiring the offset between the reference point position and the tool position according to the error evaluation equation includes: Perform partial derivative calculations according to the error evaluation equation to obtain an initial set of equations; Arrange the initial set of equations to obtain a target set of equations; Solving the target equation group to obtain the reference point position and the tool position offset; Wherein, the initial set of equations is: The target equations are: ; in, Err is the sum of the squares of the error vector modulus, T is the tool position offset, and is the position transformation in the tool transformation, R i is the recorded posture of the end point, P i is the position of the recorded end point, P 0 is the reference point position.
9. The method for calibrating an end tool of a six-joint serial robot according to claim 1, characterized in that: Obtaining the calibration result of the end tool of the six-joint serial robot according to the reference point position and the tool position offset includes: S3-1, obtaining a point-taking posture according to the reference point position and the tool position offset; S3-2, set the observation error value; S3-3, based on the number of the point-taking postures, using the observation error value to perform point-attaching on the reference point position to obtain a target point corresponding to the reference point position; S3-4, using the target point corresponding to the reference point position and the point-taking posture to perform reverse calculation to obtain the target sampling point; S3-5, obtaining a calculation reference point position and a calculation tool position offset according to the target sampling point; S3-6, obtaining the calibration result of the end tool of the six-joint serial robot according to the reference point position, the tool position offset, the calculated reference point position and the calculated tool position offset; Among them, the number of points of the point-taking posture is greater than or equal to 4, and the observation error value is 0.4-1mm.
10. The method for calibrating an end tool of a six-joint serial robot according to claim 9, characterized in that: Acquiring the calibration result of the end tool of the six-joint serial robot according to the reference point position, the tool position offset, the calculated reference point position and the calculated tool position offset comprises: S3-6-1. According to the reference point position and the calculated reference point position, obtain the vector modulus between the reference point position and the calculated reference point position as the reference point position vector modulus; S3-6-2. Obtain a corresponding reference point position vector modulus threshold value according to the reference point position vector modulus; S3-6-3, determine whether the reference point position vector modulus is consistent with the reference point position vector modulus threshold, if so, execute S3-6-4, otherwise, return to S1; S3-6-4, according to the tool position offset and the calculated tool position offset, obtaining a vector modulus between the tool position offset and the calculated tool position offset as a tool position offset vector modulus; S3-6-5. Obtain a corresponding tool position offset vector modulus threshold value according to the tool position offset vector modulus; S3-6-6. Determine whether the tool position offset vector modulus is consistent with the tool position offset vector modulus threshold. If so, obtain the tool transformation according to the reference point position and the tool position offset as the calibration result of the end tool of the six-joint serial robot. Otherwise, return to S1.
Citation Information
Patent Citations
Industrial robot TCP (Tool Central Point) calibration method based on uniform attitude distribution
CN109465826A
Method and system for cutting acetabular cup based on mechanical arm
CN112790867A
Tool calibration apparatus of robot manipulator
US20170151670A1
Front-end tool pose synchronization method, electronic device and storage medium
WO2023098839A1