A robot tcp calibration method using a floatable standard sphere
By combining a floating standard sphere and a binocular industrial camera, robot TCP calibration is automated, solving the problems of poor accuracy and difficulty in online calibration in traditional methods, and achieving efficient and accurate tool center point calibration.
Patent Information
- Application Number
- CN202211023343.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-25
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2042-08-25
AI Technical Summary
Traditional robot TCP calibration methods require manual control of point alignment, which can easily lead to poor calibration accuracy, make online calibration impossible, and may damage the tool.
Using a floating standard sphere and a binocular industrial camera, the coordinates of the sphere's center are identified through binocular stereo vision. Combined with the Levenberg-Marquardt nonlinear optimization method, TCP calibration is automatically achieved, avoiding point-to-point overlap. The floating nature of the standard sphere is used to weaken the process to point-to-surface overlap, thus protecting the tool.
It improves calibration accuracy and efficiency, is easy to operate, avoids tool damage, supports online calibration, and adapts to real-time adjustments for tool wear or bending.
Smart Images

Figure CN115533893B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to a robot tool center point calibration method, and in particular to a robot tool center point calibration method using an industrial camera and a floatable standard sphere. BACKGROUND
[0002] With the rapid development of modern industry and the concept of "Industry 4.0", people have higher and higher requirements for industrial production. As an important part of industrial production, robots are also more and more concerned due to their production efficiency, work accuracy and cost advantages. As we all know, robots need to install an actuator, i.e. a tool, at the end before work. In order to make the robot work normally, the position of the robot tool center point relative to the robot flange plate needs to be obtained, i.e. TCP calibration. In the process of industrial production, if the tool is used for a long time, the tool will be worn or bent, which will greatly affect the production quality and work efficiency of the robot. Therefore, it is of great significance to study a fast and accurate online tool center point calibration method to improve the positioning accuracy of the robot, expand the application market of the robot and improve the intelligent and flexible level of the robot.
[0003] The traditional robot TCP calibration method is mainly based on the robot body to calibrate the TCP. This calibration method requires the robot to coincide with a fixed point in space through four different positions, and the position and attitude of the flange plate relative to the robot base coordinate system are calculated through the four points to obtain the TCP calibration value. However, the above method has the problem that the coincidence of points needs to be controlled manually, and if the alignment is not accurate during the adjustment of the points, the calibration accuracy will be poor, and the tool may be damaged by colliding with the reference object during the adjustment process. Moreover, this calibration method is only suitable for offline state and cannot realize online calibration. SUMMARY
[0004] The present application overcomes the shortcomings of traditional robot TCP calibration that cannot balance calibration accuracy and calibration efficiency, and provides a robot TCP calibration method using a floatable standard sphere.
[0005] The present application uses an industrial camera with binocular positioning function and a standard sphere with known radius that can float vertically to assist robot TCP calibration, avoids damage to the tool during calibration, improves calibration efficiency, and easily realizes the automation of calibration.
[0006] The application is based on a standard sphere with a known radius that can be vertically floated, first, the coordinates of the sphere center in the robot base coordinate system under the condition of no external force are obtained by an industrial camera, the robot is controlled to make the tool center point contact the standard sphere for multiple times, the height of the standard sphere when contacted and the rotation angle information of each joint of the robot are recorded, the target function is established according to the constant and known radius of the standard sphere in combination with the structure information of the robot, and the coordinates of the tool center point in the flange coordinate system of the robot are obtained by solving the target function through the Levenberg-Marquardt nonlinear optimization method to achieve the purpose of TCP calibration.
[0007] A robot TCP calibration method using a floating standard sphere, comprising the following steps:
[0008] (1) First, the coordinates of the sphere center in the robot base coordinate system under the condition of no external force are obtained by an industrial camera.
[0009] Three cameras are placed in a regular triangle, the floating standard sphere is placed at the circumcenter of the triangle, the whole device is horizontally placed in the robot workspace, the optical axes of the cameras intersect at the sphere, a binocular stereo vision system is established through binocular calibration, the position of the sphere center in the camera coordinate system under the condition of no external force is identified and positioned, the coordinate transformation relationship between the camera coordinate system and the robot base coordinate system is established through hand-eye calibration, and then the coordinates of the sphere center in the robot base coordinate system are obtained b P s .
[0010] (2) The robot is controlled to make the tool center point contact the upper hemisphere of the standard sphere in different postures, and the height of the standard sphere when contacted and the rotation angle of each joint of the robot are recorded.
[0011] Among them, the extension line of the end tool passes through the sphere center as much as possible when contacted.
[0012] When contacted, the pose of the flange coordinate system relative to the robot base coordinate system can be represented by the rotation angle of each joint of the robot in combination with the structure of the robot and the origin of the robot base coordinate system, and the coordinates of the contact point in the robot base coordinate system, i.e. the coordinates of the tool center point in the robot base coordinate system, are represented in combination with the TCP information.
[0013] The relationship between the coordinates of the robot tool center point in the robot base coordinate system {B} b P tcp and the coordinates of the robot flange coordinate system {E} e P tcp is as follows:
[0014]
[0015] Among them, b Te is the coordinates of the origin of the robot flange coordinate system {E} in the robot base coordinate system {B}, and θ is the rotation angle of each joint of the robot, θ = {θ1, θ2, θ3, θ4, θ5, θ6} T , is the rotation matrix of the robot flange coordinate system {E} relative to the robot base coordinate system {B}, which is determined by the rotation angle of each joint of the robot and the structural parameters of the robot.
[0016] wherein the number of contact points is k (k≥3), and the contact points are in the common area of the fields of view of the two cameras.
[0017] (3) Obtain the coordinates of the contact points in the camera coordinate system through binocular stereo vision and record them.
[0018] (4) Use the condition that the distance between the contact point and the center of the standard sphere is equal to the radius to establish an objective function, and solve for the coordinates of the robot tool center point in the robot flange coordinate system by a nonlinear optimization method e P tcp = e x tcp , e y tcp , e z tcp} T , complete the calibration;
[0019] The distance between the robot tool center point and the center of the sphere in the robot base coordinate system at the time of contact is equal to the radius of the standard sphere. At the i-th contact (i = 1, 2, …, k), the coordinates of the contact point in the robot base coordinate system are b P tcp i and the coordinates of the center of the sphere are b P s i The vector composed of the two is:
[0020]
[0021] Using the constraint relationship that the radius of the standard sphere is constant, the following objective function is established:
[0022]
[0023] wherein, b P tcp i is the coordinates of the contact point in the robot base coordinate system {B}; b P s i is the coordinates of the center of the sphere in the robot base coordinate system {B} at the time of contact; is the contact pointb P tcp i the rotation matrix of the corresponding robot flange coordinate system relative to the robot base coordinate system {B}; b T e i the coordinates of the contact point in the robot base coordinate system {B}; b P tcp i the coordinates of the origin of the corresponding robot flange coordinate system {E} in the robot base coordinate system {B}; b P s the coordinates of the center of the standard sphere under the action of no external force in the robot base coordinate system {B}; D i = [00 d i ] T the coordinate transformation of the center of the standard sphere when in contact, since the standard sphere here is a floating standard sphere, at this time only the z direction has a downward offset, here d i is the height of the center of the standard sphere falling; R is the radius value of the standard sphere.
[0024] Optimized by the Levenberg-Marquardt nonlinear optimization method, when the function converges to the solution e P tcp = { e x tcp , e y tcp , e z tcp} T , and the value of the objective function at the solution is less than the threshold value ε, it indicates that the current calibration result meets the accuracy requirement, and the calibration is successful.
[0025] (5) After the robot works for a period of time, the tool may be worn or bent, causing the TCP position to be inaccurate, at this time the TCP can be corrected from the online state, the PC sends the robot joint angle information θ = {θ1, θ2, θ3, θ4, θ5, θ6} T of the robot at the time of contact in step (2), the robot runs to the corresponding angle, and judges whether the tool center point is in contact with the standard sphere, if not, the coordinates of the tool center point in the camera coordinate system are located by the binocular stereo vision system, the position deviation of the tool center point in the camera coordinate system is obtained by calculation, is sent to the robot, the tool center point is guided to contact with the standard sphere, and the robot joint angle information and the standard sphere falling height information at the time of contact are recorded.
[0026] Through the objective function established in step (4), the joint angle information and the standard sphere falling height information at the time of contact are substituted, and the new coordinates of the robot tool center point in the flange coordinate system are solved by nonlinear optimization eP tcp ={ e x tcp , e y tcp , e z tcp} T , and verify whether the calibration result meets the accuracy requirement.
[0027] The floatable standard sphere is composed of a standard sphere and a platform capable of measuring and deriving falling information, and the standard sphere is always in the same position if no external force acts on it.
[0028] The application provides a robot tool center point calibration method using a floatable standard sphere with a known radius. The method comprises the following steps: firstly, obtaining the coordinates of the ball center of the standard sphere in the robot base coordinate system under the action of no external force through binocular stereo vision; and then controlling the robot to make the robot tool center point contact with the standard sphere, so that the standard sphere falls, and the height of the standard sphere when it falls and the rotation angle information of each joint of the robot are recorded. The method uses the distance between the contact point and the ball center of the standard sphere as the condition to establish a target function, and solves the coordinates of the robot tool center point in the robot flange coordinate system through the Levenberg-Marquardt nonlinear optimization method. The method uses the floatable standard sphere with a known radius to calibrate the robot TCP, avoids the point-point coincidence process that is difficult to accurately realize under the condition of naked eye observation and manual control, and does not need the robot TCP to coincide with the same point in space multiple times. The floatability of the sphere weakens the point-point coincidence requirement to point-surface coincidence, avoids the collision between the TCP and the sphere surface, reduces the damage to the tool in the calibration process, and is simple to operate. When the robot TCP has a small deviation, the binocular stereo vision system corrects the planning point, so that the robot can still make the TCP contact with the floatable standard sphere according to the predetermined program, thereby realizing online calibration. The whole method is easy to operate, has a clever design, has high calibration accuracy, and has good popularization effect.
[0029] The application has the advantages of easy operation, high calibration accuracy, and the like. BRIEF DESCRIPTION OF DRAWINGS
[0030] Figure 1This is a schematic diagram of the robot, camera, and floating standard sphere structure with measurable descent height used in the method described in this example.
[0031] Labeling explanation: 1-Fixed robot base, 2-Six-DOF robot, 3-Tool with cutting-edge properties, 4-Industrial camera, 5-Floating standard sphere, 6-Computer, 7-Robot controller.
[0032] Figure 2 This is a schematic diagram showing the center point of the tool contacting a floating standard ball in this example.
[0033] Figure 3 This is a top view of the contact point on a standard sphere in this example. Region 1 is the common area of view of camera 1 and camera 2, Region 2 is the common area of view of camera 1 and camera 3, and Region 3 is the common area of view of camera 2 and camera 3. Detailed Implementation
[0034] The technical solution of the present invention will be further described below with reference to the accompanying drawings and embodiments.
[0035] Example
[0036] like Figure 1 The diagram shown is a schematic of the robot, camera, and floating standard sphere with measurable descent height used in an embodiment of the present invention. It includes a robot base 1, a six-degree-of-freedom robot 2, a tool with tip properties 3, an industrial camera 4, and a floating standard sphere 5.
[0037] like Figure 2 As shown, the radius of the floating standard sphere is known, it can only move vertically and cannot move in the horizontal plane, and the descent height is measurable.
[0038] like Figure 3 As shown, three cameras are placed in an equilateral triangle, and a floating standard ball is placed at the outer center of the triangle, with the contact point falling within the common field of view of the two cameras—region 1, region 2, and region 3.
[0039] Where {C} is the camera coordinate system, {B} is the robot base coordinate system established in the space where the robot base is located, and {E} is the flange coordinate system established in the space where the robot's end flange is located. The computer 6 collects the signal of the standard ball's descent height to determine whether the tool's center point contacts the standard ball. The computer is connected to the robot controller 7 via a network. When the standard ball shows a contact signal, it can send a stop signal to the robot and read the robot's corner joint information and the standard ball's descent information.
[0040] (1) Using a binocular stereo vision system established between three cameras, the coordinates of the center of a floating standard sphere in the camera coordinate system under no external force are identified and located. Then, the coordinates of the center of the sphere in the robot base coordinate system under no external force are obtained through hand-eye calibration. b P s .
[0041] The floating standard sphere and industrial camera are horizontally fixed at any position within the robot's workspace. Each time the robot tool's center point makes contact, the floating standard sphere can only move vertically downwards, and its position in the horizontal space does not change. The height of the downward descent can be directly measured and derived.
[0042] (2) Control the robot to adopt different postures so that the center point of the robot tool contacts the upper hemisphere of a standard sphere, wherein the contact points are evenly distributed within the shared area of each pair of cameras on the sphere, such as... Figure 3 As shown, when making contact, try to keep the extension line of the tool passing through the center of the ball, such as... Figure 2 As shown, the height of the standard ball's descent and the rotation angle of each joint of the robot are recorded when contact occurs, and the coordinates of the contact point in the camera coordinate system are obtained through a binocular stereo vision system.
[0043] Read the descent height of the standard ball from the floating standard ball platform. 1 Read the current joint rotation angle θ from the robot controller. 1 ={θ1 1 ,θ2 1 ,θ3 1 ,θ4 1 ,θ5 1 ,θ6 1} T ;
[0044] By using the rotation angles of each joint of the robot, the tool structure, and the origin of the robot's base coordinate system, the coordinates of the contact point in the robot's base coordinate system, i.e., the coordinates of the tool's center point in the robot's base coordinate system, can be obtained.
[0045] Control the robot tool's center point to move away from the standard sphere and adjust its posture to make contact. Figure 3 As shown in the second planned contact point, after the standard sphere senses the touch, the robot stops moving. Obtain the height d from which the standard sphere descends. 2 θ, the rotation angle information of each joint of the robot 2 ={θ1 2 ,θ2 2 ,θ3 2 ,θ4 2 ,θ5 2 ,θ6 2} T ;
[0046] Repeat the above operation to contact the third point of the planning, get the height d of the standard sphere drop 3 , the robot joint angle θ 3 = {θ1 3 , θ2 3 , θ3 3 , θ4 3 , θ5 3 , θ6 3} T .
[0047] Wherein, the number of contact points is k (k≥3), here k=3, the contact points are evenly distributed on the sphere, as shown in Figure 3 .
[0048] The coordinates of the robot tool center point in the robot base coordinate system {B} b P tcp and the coordinates of the robot flange coordinate system {E} e P tcp The relationship between them is as follows:
[0049]
[0050] Where, b T e is the origin of the robot flange coordinate system {E} in the robot base coordinate system {B}, θ is the rotation angle of each joint of the robot, θ = {θ1, θ2, θ3, θ4, θ5, θ6} T , is the rotation matrix of the robot flange coordinate system {E} relative to the robot base coordinate system {B}, which is determined by the rotation angle of each joint of the robot and the structure parameters of the robot.
[0051] (3) In the above contact process, the coordinates of the contact points in the camera coordinate system are obtained by binocular stereo vision and recorded.
[0052] (4) Using the distance between any contact point and the center of the standard sphere equal to the radius, a target function is established, and the coordinates of the robot tool center point in the robot flange coordinate system e P tcp = { e x tcp , e y tcp , e z tcp} T are obtained by nonlinear optimization method, and the calibration is completed;
[0053] The distance between the tool center point and the sphere center in the robot base coordinate system at the contact is equal to the radius of the standard sphere, and the contact point coordinates in the robot base coordinate system at the ith contact (i = 1, 2, …, k) b P tcp i The vector composed of the sphere center coordinates b P s i The vector composed of the sphere center coordinates
[0054]
[0055] The following objective function is established by using the standard sphere radius which is constant and known:
[0056]
[0057] Wherein, b P tcp i is the coordinates of the contact point in the robot base coordinate system {B}; b P s i is the coordinates of the sphere center in the robot base coordinate system {B} at the contact; is the contact point b P tcp i is the rotation matrix of the corresponding robot flange coordinate system relative to the robot base coordinate system {B}; b T e i is the contact point b P tcp i is the coordinates of the origin of the corresponding robot flange coordinate system {E} in the robot base coordinate system {B}; b P s is the coordinates of the sphere center of the standard sphere without external force in the robot base coordinate system {B}; D i = [00 d i ] T is the coordinate transformation of the sphere center of the standard sphere at the contact, because the standard sphere here is floating, only the z direction has a downward offset, and d i is the height of the downward movement of the sphere center of the standard sphere; R is the radius value of the standard sphere.
[0058] By using the Levenberg-Marquardt nonlinear optimization method in the Matlab optimization toolbox, the solution is optimized when the function converges to the solution e P tcp = { e x tcp , e y tcp ,e z tcp} T , and when the value of the objective function is less than the threshold value epsilon, it indicates that the current calibration result meets the accuracy requirement, and the calibration is successful.
[0059] (5) After the robot works for a period of time, the tool may be worn or bent, causing the TCP position to be inaccurate. At this time, the TCP can be corrected from the online state. The PC sends the joint angle information of the robot at the time of contact in step (2) to the robot T , and the robot joints operate to the corresponding angle. If the tool center point does not contact the floating standard ball, the tool center point in the camera coordinate system is located by the binocular stereo vision system, the position deviation of the tool center point in the camera coordinate system before and after the TCP changes is calculated when the robot is at the same joint angle, and the robot is sent to guide the tool center point to contact the standard ball. The joint angle information and the standard ball lowering height information at the time of contact are recorded.
[0060] When k (k>=3) points are contacted, the joint angle information and the standard ball lowering height information at the time of contact are substituted into the objective function established in step (4), and the new robot tool center point in the flange coordinate system is solved by nonlinear optimization e P tcp ={ e x tcp , e y tcp , e z tcp} T , and the calibration result is verified to meet the accuracy requirement.
[0061] Compared with the traditional four-point calibration method, the calibration result solved by the above method has good consistency with the traditional four-point calibration method. At the same time, due to the floatability of the standard ball, the present application can protect the tool well during calibration, and when the robot TCP has a small deviation, the planning point is corrected by the binocular stereo vision system, so that the robot can generally ensure that the TCP contacts the floating standard ball according to the predetermined program, thereby realizing autonomous calibration.
[0062] The above embodiments are only used to illustrate the technical solutions of the present application and not to limit the present application. Those skilled in the art can modify or equivalently replace the technical solutions of the present application without departing from the spirit and scope of the present application.
Claims
1. A robot TCP calibration method using a floating standard ball, comprising the following steps: Step 1, first obtain the coordinates of the ball center of the floatable standard ball in the robot base coordinate system under the condition of no external force by an industrial camera; the floatable standard ball is composed of a standard ball and a platform capable of measuring and deriving lowering information; the floatable standard ball can only move vertically up and down; Three cameras are arranged in an equilateral triangle, a floating standard sphere is placed at the circumcenter of the triangle, the whole device is horizontally placed in the robot workspace, the optical axes of the cameras intersect at the sphere, a binocular stereo vision system is established through binocular calibration, the position of the sphere center in the camera coordinate system under the action of no external force is identified and positioned, the coordinate transformation relationship between the camera coordinate system and the robot base coordinate system is established through hand-eye calibration, and then the coordinates of the sphere center in the robot base coordinate system are obtained Step 2, control the robot to make the robot tool center point contact the upper hemispherical surface of the standard ball in different postures, and record the height of the standard ball when it is contacted and the rotation angles of each joint of the robot; Wherein the elongated line of the end tool passes through the ball center as much as possible when contacted; The rotation angles of each joint of the robot in contact combined with the structure of the robot itself and the origin of the robot base coordinate system can represent the pose of the flange plate coordinate system relative to the robot base coordinate system, and combined with the TCP information, the coordinates of the contact point in the robot base coordinate system, i.e. the coordinates of the tool center point in the robot base coordinate system, can be represented; The coordinates of the robot tool center point in the robot base coordinate system {B} The relationship between the coordinates in the robot flange coordinate system {E} is as follows: (1) wherein, is the coordinate of the origin of the robot flange coordinate system {E} in the robot base coordinate system {B}, is the rotation angle of each joint of the robot, , is the rotation matrix of the robot flange coordinate system {E} relative to the robot base coordinate system {B}, which is determined by the rotation angles of each joint of the robot and the structural parameters of the robot. The number of contact points is , the contact points are defined in a common area of the two camera fields of view. Step 3, obtain the coordinates of the contact point in the camera coordinate system by binocular stereo vision and record them; Step 4, using the condition that the distance between the contact point and the center of the standard ball is equal to the radius, a target function is established, and the coordinates of the robot tool center point in the robot flange coordinate system are obtained by solving the nonlinear optimization method , the calibration is completed; The distance between the coordinates of the robot tool center point and the ball center in the robot base coordinate system at the time of contact is equal to the radius of the standard ball, the first contact, The vector consisting of the contact point coordinates and the ball center coordinates in the robot base coordinate system at the second contact is: (2) Using the constraint relationship that the radius of the standard ball is constant, the following objective function is established: (3) wherein, is the coordinate of the contact point in the robot base coordinate system {B}; is the coordinate of the ball center at contact in the robot base coordinate system {B}; is the coordinate of the contact point is the rotation matrix of the corresponding robot flange coordinate system relative to the robot base coordinate system {B}; is the coordinate of the contact point is the coordinate of the origin of the corresponding robot flange coordinate system {E} in the robot base coordinate system {B}; is the coordinate of the standard ball center without external force in the robot base coordinate system {B}; is the coordinate transformation of the standard ball center at contact, since this is a floatable standard ball, there is only a downward offset in the z direction at this time, here is the height of the standard ball center drop; is the radius value of the standard ball; The solution is optimized by Levenberg-Marquardt nonlinear optimization method, when the function converges to the solution , and the value of the objective function at the solution is less than the threshold value , it is indicated that the current calibration result meets the accuracy requirement, and the calibration is successful. Step 5, after the robot works for a period of time, the tool may be worn or bent, resulting in inaccurate TCP position, at this time the TCP can be corrected from the online state, the PC sends the joint angle information of the robot at the time of contact in step 2 to the robot , the robot runs to the corresponding angle, judges whether the tool center point is in contact with the standard ball, if not in contact, the coordinates of the tool center point in the camera coordinate system are located through the binocular stereo vision system, the position deviation of the tool center point in the camera coordinate system is obtained through calculation, is sent to the robot, the tool center point is guided to be in contact with the standard ball, and the joint angle information of the robot at the time of contact and the falling height information of the standard ball are recorded; Through the objective function established in step 4, the joint angle information and the standard ball drop height information at the time of contact are substituted, and through nonlinear optimization, the new coordinates of the robot tool center point in the flange coordinate system are solved , and whether the calibration result meets the accuracy requirement is verified. If no external force, the standard ball is always in the same position, if the external force, the platform and the standard ball down, the height of the drop as the basis for judging contact, that is When the contact, When the non-contact, to ensure the sufficiency of the contact, so that the robot tool center point and the standard ball contact, automatic detection of contact signal, the realization of automatic control of the calibration process.
Citation Information
Patent Citations
Robot zero point calibration method and calibration equipment thereof
CN114589692A