Mobile TCP calibration method for industrial robot
By setting a wrist coordinate system in an industrial robot and using an industrial camera to capture the positional changes of the tool's center point, the error of the tool coordinate system is calculated and corrected. This solves the problems of cumbersome operation and inability to directly obtain errors during TCP setting, and achieves efficient and accurate tool coordinate system calibration.
Patent Information
- Application Number
- CN202511420363.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-30
- Publication Date
- 2026-01-02
AI Technical Summary
The existing TCP configuration process is cumbersome, cannot directly obtain the error, involves a large amount of calculation, and the error cannot be compensated for in advance, which requires reprogramming when industrial robot tools are switched.
By setting a wrist coordinate system with the robot wrist as the origin, and using an industrial camera to capture the positional changes of the robot tool center point on different axes, the error of the tool center point is calculated, and the origin of the initial tool coordinate system is corrected, thus achieving the calibration of the tool coordinate system.
It simplifies the operation process, reduces the amount of calculation, improves the accuracy and efficiency of calibration, and saves time.
Smart Images

Figure CN121245802A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of industrial robots, and more specifically to a mobile TCP calibration method for industrial robots. Background Technology
[0002] TCP stands for "Tool Central Point." In practical applications, the TCP is generally not chosen as the geometric center of the robot tool, but rather as a reference point for the robot tool's operation, such as the tip of a cutting tool, the focal point of a laser, the positioning point of a gripper, or the tip of a welding torch electrode. These reference points also serve as the origin of the robot tool's coordinate system.
[0003] Mobile TCP refers to a TCP location that is bound to the robot's wrist and moves with the robot arm.
[0004] An industrial robot is a multi-degree-of-freedom programmed motion platform that manipulates workpieces using tools (such as welding torches, welding clamps, spray guns, grinding heads, cutting tools, and grippers) mounted on the end effector flange (wrist) of the robot arm. Because these tools vary in size and shape, the robot's actual working point relative to the robot coordinate system changes after each tool switch or adjustment. If programming using the robot coordinate system, the program needs to be rewritten after each tool switch or adjustment.
[0005] In engineering practice, a tool coordinate system is established with the robot's TCP (tool center point) as the origin, and TCP is used for programming. The advantage of this method is that the tool trajectory will not change due to tool switching or adjustment. When the tool changes, only the tool coordinate system needs to be reset and calibrated, without reprogramming.
[0006] Currently, TCP (Tool Center Point) settings are mostly implemented using methods such as the "four-point method" and the "five-point method." The core of these methods lies in ensuring that the robot's tool center point (the actual point corresponding to the TCP) precisely coincides with the same fixed point within the robot's workspace, regardless of its orientation. Based on the known condition that the distance between this fixed point and the robot's wrist center is always a fixed value, and the coordinates of the robot's wrist center point under different orientations, a set of homogeneous equations can be established. Solving this set of equations using numerical methods such as the least squares method allows calculation of the fixed point's position relative to the robot's wrist center point. Theoretically, this fixed point coincides with the robot's TCP (in reality, there will be some deviation, which is the main source of error in TCP point setting). Therefore, the coordinates of the robot's TCP relative to the robot's wrist center point can also be obtained simultaneously.
[0007] This method has the following problems:
[0008] ① The operation is cumbersome, requiring the robot to use various postures to make the tool's center point (the entity point corresponding to TCP) coincide with the fixed point.
[0009] ② TCP errors cannot be obtained directly. After TCP is configured, the magnitude and direction of its errors are unknown. They can only be exposed through actual use, and cannot be compensated for in advance.
[0010] ③ The computation is large, requiring numerical methods to solve. In addition, if the attitude setting is unreasonable, the coefficient matrix of the homogeneous equation will approach the singular matrix, causing nonlinear amplification of the calculation error. Summary of the Invention
[0011] This invention primarily addresses the shortcomings of current TCP configuration methods, such as cumbersome operation, inability to directly obtain TCP errors, and high computational load, by providing a TCP calibration method for industrial robots.
[0012] A mobile TCP calibration method for industrial robots, characterized by comprising the following steps:
[0013] Step 1: Set up a wrist coordinate system {R} with the robot wrist endpoint as the origin; then set up an initial tool coordinate system {T0} with TCP as the origin TCP0, and make the direction of the tool coordinate system {T0} the same as that of the robot wrist coordinate system {R}, that is, "W", "P", "R" or "φ", "θ", "ψ" are all 0; the coordinates of TCP0 in the robot wrist coordinate system {R} are (X0, Y0, Z0), where X0, Y0, and Z0 are the coordinate values of TCP0 in the robot wrist coordinate system {R}.
[0014] Step 2: The robot uses the coordinate system {T0} set in Step 1 as the reference coordinate system for motion. That is, all position and angle values in subsequent operations are coordinate values in this coordinate system. Rotate the Euler angles of the robot tool in each coordinate axis in the coordinate system to zero in the order of Z-axis, Y-axis, and X-axis.
[0015] Step 3: Take two photos of the center point of the robot tool, rotating it around the Z-axis before and after, to show its position in the XOY plane;
[0016] a. The optical path axis of the industrial camera is parallel to the Z-axis of the coordinate system {T0}, and the lens faces the positive direction of the Z-axis;
[0017] b. Take a picture of the robot tool's position using an industrial camera; the tool's center point is at point P. Z1 ;
[0018] c. Keep the reference coordinate system for motion as {T0}, with TCP0 as the center, rotate the robot tool 180° around the Z-axis of coordinate system {T0} in the XOY plane of coordinate system {T0}; that is, the Euler angles corresponding to other coordinate axes remain unchanged, only the Euler angle around the Z-axis is rotated from 0° to 180°.
[0019] d. The industrial camera remains in the same direction and position, taking a picture of the robot tool's position at this moment. The center point of the tool is P. Z2 ;
[0020] Step 4: Calculate the error δ of TCP0's X0 and Y0. X and δ Y ;
[0021] Using the measurement function of an industrial camera, measure point P respectively. Z1 With P Z2 In the XOY plane of coordinate system {T0}, the distances |ΔX| and |ΔY| in the X and Y directions;
[0022] If point P Z1 The position is relative to point P Z2 If the position is closer to the positive X-axis, then ΔX is positive; otherwise, it is negative.
[0023] If P Z1 The position is greater than P Z2 If the position is closer to the positive Y-axis, then ΔY is positive; otherwise, it is negative.
[0024] δ X and δ Y Calculate according to formula (1):
[0025]
[0026] Step 5: Take two photos of the center point of the robot tool, rotating it around the Y-axis before and after, to show its position in the XOZ plane;
[0027] The robot tool is moved to the appropriate position to prevent interference during subsequent rotation operations, and its posture is adjusted to prevent "axis over-limit" and "singularity" phenomena during subsequent rotation.
[0028] a. Align the optical path axis of the industrial camera with the Y-axis of the tool coordinate system {T0}, and align the lens with the positive direction of the Y-axis;
[0029] b. Take a picture of the robot tool's position using an industrial camera; the tool's center point is at point P. Y1 ;
[0030] c. Keep the reference coordinate system for motion as {T0}, with TCP0 as the center, rotate the robot tool 180° around the Y-axis of coordinate system {T0} in the XOZ plane of coordinate system {T0}; that is, the Euler angles corresponding to other coordinate axes remain unchanged, only the Euler angle around the Y-axis is rotated from 0° to 180°.
[0031] d. The direction and position of the industrial camera remain unchanged. Take a picture of the robot tool's position at this moment. The center point of the tool is P. Y2 ;
[0032] Step 6: Calculate the error δ of Z0 for TCP0. Z :
[0033] Using the measurement function of an industrial camera, measure P. Y1 With P Y2 In the XOZ plane of coordinate system {T0}, the distance in the Z direction is |ΔZ| (the absolute value of ΔZ);
[0034] If P Y1 The position is greater than P Y2 If the position is closer to the positive Z-axis, then ΔZ is positive; otherwise, it is negative.
[0035] δ Z Calculate according to formula (2);
[0036]
[0037] Step 7: Correct the origin TCP0 of the initial tool coordinates {T0}:
[0038] Correct the coordinates (X0, Y0, Z0) of TCP0 in coordinate system {R} to TCP1. The values X1, Y1, Z1 of TCP1 in coordinate system {R} are calculated according to equation (3).
[0039]
[0040] Step 8: Use the built-in tool coordinate system setting function in the industrial robot operating system, input the values of X1, Y1, and Z1 to obtain the calibrated TCP1;
[0041] Step 9: Adjust the position and posture of the industrial robot, and repeat steps 2-6. If necessary, recalculate the TCP error δ. X δ Y δ Z ;
[0042] Step 10: If the error meets the usage requirements, the calibration process ends; if the error does not meet the usage requirements, repeat steps 7 and 8, and repeat steps 2 to 9 again, until the error meets the usage requirements or the error no longer decreases.
[0043] Before step two, move the robot tool to a suitable position so that there will be no interference or inability to rotate during the subsequent rotation operation of the robot tool.
[0044] Advantages of this invention:
[0045] The method of this invention is simple, easy to operate, requires minimal computation, and achieves high calibration accuracy. In practical applications, it has demonstrated high calibration accuracy and saved significant time. Attached Figure Description
[0046] Figure 1 This is a schematic diagram of the robot tool coordinate system of the present invention;
[0047] Figure 2 This is a schematic diagram of the initial tool coordinate system {T0} of the present invention.
[0048] Figure 3 This is a schematic diagram of the robot's state before and after rotation according to the present invention;
[0049] Figure 4 This is a schematic diagram (front view) showing the placement of the industrial camera in this invention;
[0050] Figure 5 This is a top view showing the placement of the industrial camera in this invention.
[0051] Figure 6 This is a schematic diagram of the field of view of the industrial camera in this invention;
[0052] Figure 7 For the present invention P Z1 and P Z2 Positional Relationship Diagram
[0053] Figure 8 This is the direct coordinate setting interface for the RB20 tool of the present invention.
[0054] Wherein, 11 is the X-axis of the tool coordinate system, 12 is the Y-axis of the tool coordinate system, 12 is the Z-axis of the tool coordinate system, 4 is TCP, 21 is the tool coordinate system {T0}, 22 is the robot wrist coordinate system {R}, 31 is the state of the robot before rotation (gray), 32 is the state of the robot after rotation (black), 41 is the state of the robot after rotation (black), 42 is the state of the robot before rotation (gray), 43 is the industrial camera, 44 is the calibration ruler, 51 is the state of the robot before rotation (gray), 52 is the state of the robot after rotation (black), 53 is the optical path axis of the industrial camera, 55 is the X-axis of the industrial coordinate system {T0}, 56 is the Z-axis of the TCP0 tool coordinate system {T0}, 61 is the robot tool before rotation, 62 is the calibration ruler, 63 is the robot tool after rotation, 71 is the robot tool before rotation (gray), and 72 is the robot tool after rotation (black). Detailed Implementation
[0055] The method includes the following steps:
[0056] (1) Set the initial tool coordinate system {T0}
[0057] ① Use the "four-point method", "five-point method" or other methods to set the initial tool coordinate system TCP - TCP0, with the format: (X0, Y0, Z0), where X0, Y0, and Z0 are the coordinate values of TCP0 in the robot wrist coordinate system {R}.
[0058] ② Set the direction of the tool coordinate system {T0} to be the same as the robot wrist coordinate system {R}, that is, "W", "P", "R" or "φ", "θ", "ψ" are 0.
[0059] (2) Rotate the robot tool 180° around the Z-axis of the coordinate system {T0} set in step (1), and record the position of the center point of the robot tool before and after the rotation.
[0060] ① Move the robot tool to the appropriate position to prevent interference during subsequent rotation operations, and adjust its posture to prevent "axis over-limit" and "singularity" phenomena during subsequent rotation.
[0061] ② The robot uses the coordinate system {T0} set in step (1) as the reference coordinate system for motion, meaning that all position and angle values in subsequent operations are coordinate values in this coordinate system. Rotate the Euler angles of each coordinate axis in the robot tool coordinate system to zero in the order of Z-axis, Y-axis, and X-axis.
[0062] ③ The optical path axis of the industrial camera is parallel to the Z-axis of the coordinate system {T0}, and the lens faces the positive direction of the Z-axis;
[0063] ④ Take a picture of the robot tool's position with an industrial camera. The center point of the tool is P.Z1 ;
[0064] ⑤ Maintain the reference coordinate system for motion as {T0}. Using TCP0 as the center, rotate the robot tool 180° around the Z-axis of coordinate system {T0} in the {T0}XOY plane. That is, the Euler angles corresponding to other coordinate axes remain unchanged; only the Euler angle around the Z-axis (W or φ varies depending on the robot's setting) is rotated from 0° to 180°.
[0065] ⑥ Keeping the direction and position of the industrial camera unchanged, take a picture of the robot tool's position at this moment, where the tool's center point is P. Z2 .
[0066] (3) Calculate the error δ of X0 and Y0 of TCP0. X and δ Y .
[0067] Using industrial camera measurement software, P was measured respectively. Z1 With P Z2 In the XOY plane of coordinate system {T0}, the distances in the X and Y directions are |ΔX| (the absolute value of ΔX) and |ΔY| (the absolute value of ΔY).
[0068] If P Z1 The position is greater than P Z2 If the position is closer to the positive X-axis, then ΔX is positive; otherwise, it is negative.
[0069] If P Z1 The position is greater than P Z2 If the position is closer to the positive direction of the Y-axis, then ΔY is positive; otherwise, it is negative.
[0070] δ X and δ Y Calculate according to formula (1).
[0071]
[0072] (4) Rotate the robot tool 180° around the Y-axis of the tool coordinate system {T0} set in step (1), and record the position of the center point of the robot tool before and after the rotation.
[0073] ① Move the robot tool to the appropriate position to prevent interference during subsequent rotation operations, and adjust its posture to prevent "axis over-limit" and "singularity" phenomena during subsequent rotation.
[0074] ② The robot uses the coordinate system {T0} set in step (1) as the reference coordinate system for motion, meaning that all position and angle values in subsequent operations are coordinate values in this coordinate system. Rotate the Euler angles of each coordinate axis in the robot tool coordinate system to zero in the order of Z-axis, Y-axis, and X-axis.
[0075] ③ Align the optical path axis of the industrial camera with the Y-axis of the tool coordinate system {T0}, and align the lens with the positive direction of the Y-axis.
[0076] ④ Take a picture of the robot tool's position with an industrial camera. The center point of the tool is P. Y1 ;
[0077] ⑤ Maintain the reference coordinate system for motion as {T0}. Using TCP0 as the center, rotate the robot tool 180° around the Y-axis of coordinate system {T0} within the {T0}XOZ plane. That is, the Euler angles corresponding to other coordinate axes remain unchanged; only the Euler angle around the Y-axis (P or θ varies depending on the robot's settings) is rotated from 0° to 180°.
[0078] ⑥ Keeping the direction and position of the industrial camera unchanged, take a picture of the robot tool's current position. The center point of the tool is P. Y2 ;
[0079] (5) Calculate the error δ of Z0 for TCP0. Z .
[0080] Using industrial camera measurement software, measure P Z1 With P Z2 In the XOZ plane of coordinate system {T0}, the distance in the Z direction is |ΔZ| (the absolute value of ΔZ).
[0081] If P Y1 The position is greater than P Y2 If the position of the ΔZ is closer to the positive direction of the Z-axis, then ΔZ is positive; otherwise, it is negative.
[0082] δ Z Calculate according to formula (2).
[0083]
[0084] ⑹ Correct the TCP0 of the initial tool coordinates {T0}.
[0085] The coordinates (X0, Y0, Z0) of TCP0 in coordinate system {R} are corrected to TCP1. The values X1, Y1, Z1 of TCP1 in coordinate system {R} (X1, Y1, Z1) are calculated according to equation (⑶).
[0086]
[0087] (7) Using the built-in tool coordinate system setting function in the industrial robot operating system, input the values of X1, Y1, and Z1 to obtain the calibrated TCP.
[0088] (8) Adjust the position and orientation of the industrial robot, repeat steps (2) to (5), and re-measure and calculate the TCP error δ. X δ Y δ Z .
[0089] (9) If the error meets the usage requirements, the calibration process ends; if the error does not meet the usage requirements, repeat steps (6) and (7), and repeat (2) to (8) again until the error meets the usage requirements or the error no longer decreases.
[0090] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail. The specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0091] The RB20 general-purpose industrial robot (hereinafter referred to as GNC RB20) manufactured by Guangzhou CNC Equipment Co., Ltd. was used as the calibration object, and the YW1610 1600W pixel industrial camera and its matching industrial camera measurement software "S-EYE" manufactured by Shenzhen Yangwang Technology Co., Ltd. were used for measurement.
[0092] (1) Set the initial tool coordinate system {T0}
[0093] This case study uses a 120° three-flute cylindrical chamfering end mill as the robot tool. The tip of the cutter is used as the tool center point and the origin of the tool coordinate system—TCP.
[0094] ① The tool coordinate system setting method of GSK RB20 is adopted - "three-point method". The initial TCP0 is set. The coordinate values of TCP0 in the robot wrist coordinate system {R} are (X0, Y0, Z0), X0 = -122.36, Y0 = -98.17, Z0 = 48.06.
[0095] ② Using the GRG Banking RB20 tool coordinate system setup method – “Direct Input Method”, set the initial tool coordinate system {T0}:
[0096] A. In the "Currently set tool coordinate number" position, enter "0" (that is, set the number of the initial tool coordinate system {T0} to 0);
[0097] B. On the interface, fill in the coordinates of TCP0 obtained by the "three-point method" at the X, Y, and Z positions respectively: X0 = -122.36, Y0 = -98.17, Z0 = 48.06; fill in "0" at the W, P, and R positions respectively.
[0098] (2) Rotate the robot tool 180° around the Z-axis of the coordinate system {T0} (tool coordinate system numbered 0 in GSK RB20) set in step (1), and record the position of the center point of the robot tool (the tip of the tool in this case).
[0099] The specific operating method is as follows:
[0100] ① Set the motion coordinate system to T (i.e., the tool coordinate system), and set the tool coordinate system numbered 0 as the current tool coordinate system.
[0101] ② Move the robot's tool to an open area, about 500mm from the robot's base, with no obstacles in a spherical area with a diameter of 800mm; adjust the robot's joints to the middle area of the angle range, with the deviation from the angle centerline ≤ 30% of the angle range.
[0102] ③ Rotate Euler angles W, P, and R to zero in the following order: rotate Euler angle W to 0, rotate Euler angle P to 0, and rotate Euler angle R to 0.
[0103] ④ Place the industrial camera. The placement requirements are as follows: the lens should be 500mm ± 1.5mm away from the tool tip; the angle between the optical path axis and the Z-axis of the tool coordinate system 0 should be within ± 1.5°, and the lens should be facing the positive direction of the Z-axis.
[0104] ⑤ Place a calibration ruler near the origin of coordinate system {T0} (ensuring it does not interfere with the robot tool during subsequent rotations); adjust the magnification and focal length of the industrial camera to obtain a properly sized and clear image. Photograph the position of the robot tool and the calibration ruler at this point; the actual position of the tool tip is P. Z1 Save the image as a JPEG file with a resolution of at least 12 megapixels.
[0105] ⑥ Keep the robot's current tool coordinate system and motion coordinate system settings unchanged, rotate the robot tool 180° around the Z-axis, that is, keep the Euler angles P and R unchanged, and rotate the Euler angle W from 0 to 180.
[0106] ⑦ Keep the calibration ruler position unchanged, and keep the industrial camera position, magnification, and focal length unchanged. Capture the position of the robot tool and the calibration ruler at this moment. The actual position of the tool tip is P. Z2 Save the image as a JPEG file with a resolution of at least 12 megapixels.
[0107] (3) Use the industrial camera measurement software "S-EYE" to measure P Z1 P Z2 The distance, and calculate the error δ of TCP0's X0 and Y0. X and δ Y .
[0108] ① Use the industrial camera measurement software "S-EYE" to measure P Z1 P Z2 In the XOY plane of coordinate system {T0}, the distance in the X and Y directions.
[0109] A. Use the image of the calibration ruler to calibrate the dimensions of the two image files.
[0110] B. Align the calibration rulers in the two image files.
[0111] C. Measure the position of the tool tip P before and after rotation. Z1 P Z2 In the tool coordinate system {T0}, the distances in the X and Y directions are |ΔX| = 1.06 and |ΔY| = 0.52.
[0112] ② Calculate the error δ of TCP0's X0 and Y0. X and δ Y .
[0113] Because of P Z1 P Z2 Since the x-axis is approaching the negative direction, the sign of ΔX is negative, i.e., ΔX = -1.06; because P Y1 P Y2 Since it approaches the negative direction of the Y-axis, the sign of ΔY is negative, i.e., ΔY = -0.52.
[0114] Substituting ΔX = -1.06 and ΔY = -0.52 into equation (1), calculate the error δ of the values of X0 and Y0. X and δ Y .
[0115]
[0116] (3) Rotate the robot tool 180° around the Y-axis of the coordinate system {T0} (tool coordinate system numbered 0 in GSK RB20) set in step (1), and record the position of the center point of the robot tool (the tip of the tool in this case).
[0117] ① Reset the motion coordinate system to T (i.e., the tool coordinate system), and set the tool coordinate system numbered 0 as the current tool coordinate system.
[0118] ② Move the robot's tool to an open area, about 500mm from the robot's base, with no obstacles in a spherical area with a diameter of 800mm; adjust the robot's joints to the middle area of the angle range, with the deviation from the angle centerline ≤ 30% of the angle range.
[0119] ③ Rotate Euler angles W, P, and R to zero in the following order: rotate Euler angle W to 0, rotate Euler angle P to 0, and rotate Euler angle R to 0.
[0120] ④ Place the industrial camera. The placement requirements are as follows: the lens should be 500mm ± 1.5mm away from the tool tip; the angle between the optical path axis and the Y-axis of the tool coordinate system 0 should be within ± 1.5°, and the lens should be facing the positive direction of the Y-axis.
[0121] ⑤ Place a calibration ruler near the origin of coordinate system {T0} (ensuring it does not interfere with the robot tool during subsequent rotations); adjust the magnification and focal length of the industrial camera to obtain a properly sized and clear image. Photograph the position of the robot tool and the calibration ruler at this point; the actual position of the tool tip is P. Y1 Save the image as a JPEG file with a resolution of at least 12 megapixels.
[0122] ⑥ Keep the robot's current tool coordinate system and motion coordinate system settings unchanged, rotate the robot tool 180° around the Y-axis, that is, keep the Euler angles W and R unchanged, and rotate the Euler angle P from 0 to 180.
[0123] ⑦ Keep the calibration ruler position unchanged, and keep the industrial camera position, magnification, and focal length unchanged. Capture the position of the robot tool and the calibration ruler at this moment. The actual position of the tool tip is P. Y2 Save the image as a JPEG file with a resolution of at least 12 megapixels.
[0124] (4) Use the industrial camera measurement software "S-EYE" to measure P. Y1 P Y2 The distance, and calculate the error δ of Z0 and Y0 of TCP0. Z .
[0125] ① Use the industrial camera measurement software "S-EYE" to measure P Y1 P Y2 In the XOZ plane of coordinate system {T0}, the distance upward in the Z direction.
[0126] A. Use the image of the calibration ruler to calibrate the dimensions of the two image files.
[0127] B. Align the calibration rulers in the two image files.
[0128] C. Measure the position of the tool tip P before and after rotation. Y1 P Y2 The distance in the Z direction in the tool coordinate system {T0} is |ΔZ| = 0.54.
[0129] ② Calculate the error δ of Z0 for TCP0. Z .
[0130] Because of P Y1 P Y2 Since the direction is closer to the positive direction of the X-axis, the sign of ΔZ is positive, i.e., ΔZ = 0.54.
[0131] Substituting ΔZ = 0.54 into equation (1), calculate the error δ of the Z0 value. Z .
[0132]
[0133] ⑹ Correct the TCP0 of the initial tool coordinates {T0}.
[0134] Given X0 = -122.36, Y0 = -98.17, Z0 = 48.06 and δ X =-0.53, δ Y =-0.26, δ Z Substitute 0.27 into equation (3) to calculate.
[0135]
[0136] (7) Input X1, Y1, and Z1 into the corresponding positions in the tool coordinate system setting interface of the industrial robot to obtain the corrected TCP1.
[0137] ① Using the direct input method, enter "0" in the "Currently set tool coordinate number" position.
[0138] ② On the interface, enter the calibrated TCP coordinate values at the X, Y, and Z positions respectively: X1 = -122.89, Y1 = -98.43, Z1 = 48.33; and enter "0" at the W, P, and R positions respectively.
[0139] This completes the first round of calibration and yields the calibrated TCP.
[0140] (8) Adjust the position and posture of the industrial robot, repeat steps (2) to (5), and after re-measurement and calculation, the errors of X1, Y1, and Z1 are respectively δ X =0.08, δ Y =0.03, δ Z = -0.04. If the TCP precision requirement is ±0.1, then X1, Y1, and Z1 meet the precision requirement; if the TCP precision requirement is ±0.05, then steps (2) to (5) need to be repeated until the error meets ±0.05 or the error no longer decreases.
[0141] Notice:
[0142] ① In this case, when the TCP precision requirement is ±0.05, only δ X=0.08 out of tolerance, but considering the system's interactions, the errors δ in all three directions must be remeasured and recalculated during recalibration. X δ Y δ Z We cannot only consider one direction of deviation.
[0143] ② If, after multiple rounds of calibration, the error still shows no trend of reduction and exhibits irregular changes, it indicates that the TCP error can no longer be reduced through calibration.
Claims
1. A mobile TCP calibration method for industrial robots, characterized in that, Includes the following steps: Step 1: Set up a wrist coordinate system {R} with the robot wrist endpoint as the origin; then set up an initial tool coordinate system {T0} with TCP as the origin TCP0, and make the direction of the tool coordinate system {T0} the same as that of the robot wrist coordinate system {R}, that is, "W", "P", "R" or "φ", "θ", "ψ" are all 0; the coordinates of TCP0 in the robot wrist coordinate system {R} are (X0, Y0, Z0), where X0, Y0, and Z0 are the coordinate values of TCP0 in the robot wrist coordinate system {R}. Step 2: The robot uses the coordinate system {T0} set in Step 1 as the reference coordinate system for motion. That is, all position and angle values in subsequent operations are coordinate values in this coordinate system. Rotate the Euler angles of the robot tool in each coordinate axis in the coordinate system to zero in the order of Z-axis, Y-axis, and X-axis. Step 3: Take two photos of the center point of the robot tool, rotating it around the Z-axis before and after, to show its position in the XOY plane; a. The optical path axis of the industrial camera is parallel to the Z-axis of the coordinate system {T0}, and the lens faces the positive direction of the Z-axis; b. Take a picture of the robot tool's position using an industrial camera; the tool's center point is at point P. Z1 ; c. Keep the reference coordinate system for motion as {T0}, with TCP0 as the center, rotate the robot tool 180° around the Z-axis of coordinate system {T0} in the XOY plane of coordinate system {T0}; that is, the Euler angles corresponding to other coordinate axes remain unchanged, only the Euler angle around the Z-axis is rotated from 0° to 180°. d. The industrial camera remains in the same direction and position, taking a picture of the robot tool's position at this moment. The center point of the tool is P. Z2 ; Step 4: Calculate the error δ of TCP0's X0 and Y0. X and δ Y ; Using the measurement function of an industrial camera, measure point P respectively. Z1 With P Z2 In the XOY plane of coordinate system {T0}, the distances |ΔX| and |ΔY| in the X and Y directions; If point P Z1 The position is relative to point P Z2 If the position is closer to the positive X-axis, then ΔX is positive; otherwise, it is negative. If P Z1 The position is greater than P Z2 If the position is closer to the positive Y-axis, then ΔY is positive; otherwise, it is negative. δ X and δ Y Calculate according to formula (1): Step 5: Take two photos of the center point of the robot tool, rotating it around the Y-axis before and after, to show its position in the XOZ plane; The robot tool is moved to the appropriate position to prevent interference during subsequent rotation operations, and its posture is adjusted to prevent "axis over-limit" and "singularity" phenomena during subsequent rotation. a. Align the optical path axis of the industrial camera with the Y-axis of the tool coordinate system {T0}, and align the lens with the positive direction of the Y-axis; b. Take a picture of the robot tool's position using an industrial camera; the tool's center point is at point P. Y1 ; c. Keep the reference coordinate system for motion as {T0}, with TCP0 as the center, rotate the robot tool 180° around the Y-axis of coordinate system {T0} in the XOZ plane of coordinate system {T0}; that is, the Euler angles corresponding to other coordinate axes remain unchanged, only the Euler angle around the Y-axis is rotated from 0° to 180°. d. The direction and position of the industrial camera remain unchanged. Take a picture of the robot tool's position at this moment. The center point of the tool is P. Y2 ; Step 6: Calculate the error δ of Z0 for TCP0. Z : Using the measurement function of an industrial camera, measure P. Y1 With P Y2 In the XOZ plane of coordinate system {T0}, the distance in the Z direction is |ΔZ| (the absolute value of ΔZ); If P Y1 The position is greater than P Y2 If the position is closer to the positive Z-axis, then ΔZ is positive; otherwise, it is negative. δ Z Calculate according to formula (2); Step 7: Correct the origin TCP0 of the initial tool coordinates {T0}: Correct the coordinates (X0, Y0, Z0) of TCP0 in coordinate system {R} to TCP1. The values X1, Y1, Z1 of TCP1 in coordinate system {R} are calculated according to equation (3). Step 8: Use the built-in tool coordinate system setting function in the industrial robot operating system, input the values of X1, Y1, and Z1 to obtain the calibrated TCP1; Step 9: Adjust the position and posture of the industrial robot, and repeat steps 2-6. If necessary, recalculate the TCP error δ. X δ Y δ Z ; Step 10: If the error meets the usage requirements, the calibration process ends; if the error does not meet the usage requirements, repeat steps 7 and 8, and repeat steps 2 to 9 again, until the error meets the usage requirements or the error no longer decreases.
2. The mobile TCP calibration method for industrial robots according to claim 1, characterized in that, Before step two, move the robot tool to a suitable position so that there will be no interference or inability to rotate during the subsequent rotation operation of the robot tool.