Calibration method, calibration device and calibration system

CN117754591BActive Publication Date: 2026-09-15SHENZHEN LINGYUN VISION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311864040.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-29
Publication Date
2026-09-15
Estimated Expiration
2043-12-29

AI Technical Summary

Technical Problem

[0002]传统TCP标定方法(Total Convolutional Profile,TCP)为使用标定针尖对位的四点法或六点法(通过物体上几个已知点来估计参数),需要人工操作控制机械手的末端执行器作业点以4个或以上不同的姿态触碰标定针尖进行标定,标定过程中需要用人眼判断作业点是否对准针尖,操作难度大,且人眼观察精度有限,导致TCP标定的精度不高,影响实际作业精度

Benefits of technology

[0016] The calibration method, calibration device, calibration system, computer equipment, and non-volatile computer-readable storage medium of this application obtain the calibration posture of the robot arm when the contact probe of the contact detection device contacts each contact point on the target plane. Compared with human eye operation and observation to achieve the robot arm contacting each contact point on the target plane, the contact force at the contact point is difficult to control, which leads to deformation of the contact position and reduced calibration accuracy. The contact detection device achieves contact detection of each contact point by the contact probe. When the contact probe just touches the contact point, it will issue a prompt, thereby achieving accurate contact detection between the contact probe and the contact point.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117754591B_ABST
    Figure CN117754591B_ABST
Patent Text Reader

Abstract

The application discloses a calibration method, a calibration device and a calibration system, which are used for calibrating a calibration position coordinate of a center point of an executor mounted on a manipulator in a flange coordinate system of the manipulator. The method comprises the following steps: acquiring calibration poses of the manipulator when contact probes of a contact detection device contact respective contact points of a target plane, the contact detection device being arranged on the flange, the positions of the contact probes being coincident with the center point of the executor, and the contact detection device being used for sending prompt information when the contact probes contact the target plane; respectively calculating pose conversion relationships between a manipulator coordinate system and the flange coordinate system corresponding to respective calibration poses according to the calibration poses corresponding to the respective contact points; and calculating the calibration position coordinate according to the pose conversion relationships corresponding to the respective calibration poses and the coplanar relationship of the respective contact points. The accuracy of the acquired calibration poses of the manipulator can be improved, and thus the accuracy of a calibration result is improved. The method avoids the problem that it is difficult to realize accurate contact under the condition of observation by human eyes and manual control, and improves calibration efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotic arms, and more specifically, to a calibration method, calibration device, and calibration system. Background Technology

[0002] Traditional TCP calibration methods (Total Convolutional Profile, TCP) use a four-point or six-point method to align the calibration needle tip (estimate parameters by using several known points on the object). This requires manual operation to control the end effector of the robot arm to touch the calibration needle tip in four or more different postures for calibration. During the calibration process, the human eye needs to judge whether the working point is aligned with the needle tip, which is difficult to operate and the accuracy of human observation is limited, resulting in low TCP calibration accuracy and affecting the accuracy of actual operation. Summary of the Invention

[0003] This application provides a calibration method, calibration device, calibration system, computer equipment, and a non-volatile computer-readable storage medium. The calibration method involves acquiring the robot's calibration posture when the contact probe of the contact detection device contacts each contact point on the target plane. Based on the calibration posture corresponding to each contact point, the pose transformation relationship between the robot's coordinate system and the flange coordinate system corresponding to each calibration posture is calculated. Finally, based on the pose transformation relationship corresponding to each calibration posture and the accurate coplanarity of each contact point, the calibration position coordinates of the actuator's center in the flange coordinate system are accurately determined, thus completing TCP calibration.

[0004] The calibration method of this application is used to calibrate the calibration position coordinates of the center point of the actuator installed on the robot arm in the flange coordinate system of the robot arm. The method includes: obtaining the calibration posture of the robot arm when the contact probe of the contact detection device contacts each contact point of the target plane (calibration plate), the contact detection device is disposed on the flange, the position of the contact probe coincides with the center point of the actuator, and the contact detection device is used to issue a prompt message when the contact probe contacts the target plane; calculating the posture transformation relationship between the robot arm coordinate system and the flange coordinate system corresponding to each of the calibration postures according to the calibration postures corresponding to each contact point; and calculating the calibration position coordinates according to the posture transformation relationship corresponding to each of the calibration postures and the coplanar relationship of each contact point.

[0005] In some embodiments, the calibration pose includes position coordinates and attitude angles, and the pose transformation relationship includes a translation matrix and a rotation matrix. The step of calculating the pose transformation relationship corresponding to each calibration pose based on the calibration pose corresponding to each contact point includes: calculating the translation matrix corresponding to the calibration pose based on the position coordinates of the calibration pose; and calculating the rotation matrix corresponding to the calibration pose based on the attitude angles of the calibration pose.

[0006] In some embodiments, calculating the calibration position coordinates based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point includes: establishing a first functional relationship between the calibration position coordinates and the contact point coordinates of each contact point in the robot coordinate system based on the pose transformation relationship corresponding to each calibration pose; establishing a second functional relationship between the normal vector of the target plane and the contact point coordinates of any three non-collinear contact points; establishing a third functional relationship between the normal vector and the contact point vector formed by any two contact point coordinates based on the coplanar relationship of each contact point; and calculating the calibration position coordinates based on the first functional relationship, the second functional relationship, and the third functional relationship.

[0007] In some embodiments, the number of contact points is 6, and the 3 contact points used to calculate the normal vector are different from the contact points that form the contact vector.

[0008] In some embodiments, calculating the calibration position coordinates based on the first functional relationship, the second functional relationship, and the third functional relationship includes: determining the initial position coordinates of the actuator's center point when it is installed on the flange according to the actuator's physical dimensions; and calculating the calibration position coordinates based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship, and the third functional relationship.

[0009] In some embodiments, the method further includes: calculating the predicted coordinates of each contact point in the robot coordinate system based on the pose transformation relationship corresponding to each of the calibration poses and the calibrated calibration position coordinates; calculating the root mean square error of the distance between the predicted coordinates corresponding to each contact point and the target plane; determining that the calibration position coordinates calibration is completed if the root mean square error is less than a preset error; and using the calibrated calibration position coordinates as the initial position coordinates if the root mean square error is greater than the preset error, and re-entering the step of calculating the calibration position coordinates based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship, and the third functional relationship.

[0010] In some embodiments, at least three of the contacts are not collinear.

[0011] In some embodiments, the contact detection device includes a ball bar, which includes a mounting portion, a probe, and the contact probe, wherein the probe is disposed on the mounting portion and the contact probe is disposed at the end of the probe away from the mounting portion.

[0012] The calibration device of this application embodiment is used to calibrate the calibration position coordinates of the center point of the actuator installed on the robot arm in the flange coordinate system of the robot arm. The device includes: an acquisition module, used to acquire the calibration posture of the robot arm when the contact probe of the contact detection device contacts each contact point of the target plane (calibration plate), the contact detection device is disposed on the flange, the position of the contact probe coincides with the center point of the actuator, and the contact detection device is used to issue a prompt message when the contact probe contacts the target plane; a first calculation module, used to calculate the posture transformation relationship between the robot arm coordinate system and the flange coordinate system corresponding to each calibration posture according to the calibration posture corresponding to each contact point; and a second calculation module, used to calculate the calibration position coordinates according to the posture transformation relationship corresponding to each calibration posture and the coplanar relationship of each contact point.

[0013] The calibration system of this application includes a calibration position coordinate system for calibrating the center point of the actuator installed on the robot arm in the flange coordinate system of the robot arm. The calibration system includes: a calibration device including a target plane; a contact detection device disposed on the flange, wherein the position of the contact probe coincides with the center point of the actuator, and the contact detection device is used to issue a prompt message when the contact probe contacts the target plane; and a processor for executing the calibration method described in any of the above embodiments.

[0014] The computer device according to the embodiments of this application includes a processor, a memory, and a computer program, wherein the computer program is stored in the memory and executed by the processor, and the computer program includes instructions for performing the calibration method described in any of the above embodiments.

[0015] The embodiments of this application provide a non-volatile computer-readable storage medium containing a computer program, which, when executed by a processor, causes the processor to perform the calibration method described in any of the above embodiments.

[0016] The calibration method, calibration device, calibration system, computer equipment, and non-volatile computer-readable storage medium of this application obtain the calibration posture of the robot arm when the contact probe of the contact detection device contacts each contact point on the target plane. Compared with human eye operation and observation to achieve the robot arm contacting each contact point on the target plane, the contact force at the contact point is difficult to control, which leads to deformation of the contact position and reduced calibration accuracy. The contact detection device achieves contact detection of each contact point by the contact probe. When the contact probe just touches the contact point, it will issue a prompt, thereby achieving accurate contact detection between the contact probe and the contact point.

[0017] Then, based on the calibration poses corresponding to each contact point, the pose transformation relationship between the robot coordinate system and the flange coordinate system corresponding to each calibration pose is calculated. Finally, based on the pose transformation relationship corresponding to each calibration pose and the accurate coplanar relationship of each contact point, the calibration position coordinates of the actuator center in the flange coordinate system are accurately determined, thus completing the TCP calibration.

[0018] Additional aspects and advantages of embodiments of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of embodiments of this application. Attached Figure Description

[0019] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the description of the embodiments taken in conjunction with the following drawings, wherein:

[0020] Figure 1 This is a schematic diagram illustrating an application scenario of the calibration method of some embodiments of this application;

[0021] Figure 2 This is a flowchart illustrating the calibration method of some embodiments of this application;

[0022] Figure 3 This is a flowchart illustrating the calibration method of some embodiments of this application;

[0023] Figure 4 This is a flowchart illustrating the calibration method of some embodiments of this application;

[0024] Figure 5 This is a flowchart illustrating the calibration method of some embodiments of this application;

[0025] Figure 6 This is a flowchart illustrating the calibration method of some embodiments of this application;

[0026] Figure 7 This is a flowchart illustrating the calibration method of some embodiments of this application;

[0027] Figure 8 This is a schematic diagram of a calibration device according to certain embodiments of this application;

[0028] Figure 9 This is a schematic diagram of the structure of a computer device according to certain embodiments of this application;

[0029] Figure 10 This is a schematic diagram illustrating the connection state of a non-volatile computer-readable storage medium and a processor in certain embodiments of this application. Detailed Implementation

[0030] The embodiments of this application are described in detail below. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the embodiments of this application, and should not be construed as limiting the embodiments of this application.

[0031] To facilitate understanding of this application, the following explanations are provided for the terms used in this application:

[0032] 1. Robotic arm: An industrial robot with a structure and function similar to a human arm. It consists of multiple joints and connectors and can perform various tasks and actions in three-dimensional space.

[0033] 2. TCP calibration method (Total Convolutional Profile, TCP): refers to the mapping relationship between the pixel coordinate system of the surface of a 3D object and the world coordinate system. Generally, in a 3D space, there is a one-to-one correspondence between the pixel coordinates of the object surface and the coordinates in the world coordinate system.

[0034] 3. Ballbar: A contact sensor with a precision ball at its end. When the ball contacts the object being measured, it emits a photoelectric signal. It is commonly used in Computer Numerical Control (CNC) machining, where machine tools are controlled by a computer numerical control system. Before CNC machining, it is used for edge finding and tool setting on the workpiece. Ballbars are also called "edge finders," "contact probes," or "photoelectric centering rods." Ballbars generally have high accuracy, reaching up to 1µm. When calibrating using the TCP calibration method, if the ballbar probe is installed at the actual work point, it can indicate the center point of the robot's end effector tool.

[0035] 4. Gauss-Newton iteration method (GN): An iterative method for finding regression parameters in a nonlinear regression model by performing least squares.

[0036] 5. Levenberg-Marquarelt (LM): A least-squares estimation method for regression parameters in nonlinear regression.

[0037] With the advent of the era of intelligent manufacturing, 3D vision-guided technology has been widely applied in industries such as automotive, 3C, logistics, food, and pharmaceuticals. Through vision-guided robotic arms, robots can be accurately controlled to complete routine tasks such as picking, welding, palletizing, mounting, dispensing, and high-precision assembly, increasing production line capacity while significantly reducing labor costs. In this six-axis robotic arm, the origin of the tool coordinate system is located at the flange center. However, different end effectors are required for different tasks. Therefore, in practical use, tool center point calibration is necessary, which determines the transformation relationship between the new tool coordinate system and the base world coordinate system.

[0038] Traditional TCP calibration methods use a four-point (or six-point) method with calibration pin tip alignment to measure the center point (TCP) position of the robot tool. When using the four-point (or six-point) method, the center point of the robot's end effector is usually manually controlled to touch the calibration pin tip in four or more different postures for calibration. During the calibration process, the center point and pin tip need to be visually confirmed to be aligned. Due to the need for fine adjustment, the operation is difficult and the accuracy of human observation is limited, resulting in low TCP calibration accuracy, which affects the accuracy and calibration efficiency of actual operations.

[0039] To address the aforementioned technical problems, this application provides a calibration method.

[0040] The application scenarios of this calibration method are explained below, such as... Figure 1 As shown, the calibration method provided in this application can be applied to, for example... Figure 1 In the application scenario shown, the calibration method is applied in a calibration system 1000, which is used to calibrate the calibration position coordinates of the center point of the actuator installed on the robot 400 in the flange coordinate system of the robot 400. The calibration system 1000 includes a calibration device 100, a contact detection device 200, and a processor (not shown in the figure).

[0041] Optionally, the calibration device includes a target plane 100, which is used to contact the detection device 200. The target plane 100 can be a plane of an object with high precision flatness, such as a calibration plate, a ceramic plate, or a marble tabletop for measuring.

[0042] Optionally, the contact detection device 200 includes a ball bar 200, which includes a mounting part 203, a probe 201, and a contact probe 202. The probe 201 is disposed on the mounting part 203, and the contact probe 202 is disposed on the end of the probe 201 away from the mounting part 203. When the contact probe 202 contacts the handle plane 100, it will issue a prompt message.

[0043] The calibration method of this application will be described in detail below:

[0044] Please see Figure 1 and Figure 2 This application provides a calibration method, which is illustrated by taking the calibration position coordinates of the center point of the actuator installed on the robot arm in the flange coordinate system as an example. The calibration method includes:

[0045] Step 011: Obtain the calibrated pose of the robot when the contact probe of the contact detection device contacts each contact point on the target plane. The contact detection device is set on the flange, and the position of the contact probe coincides with the center point of the actuator. The contact detection device is used to issue a prompt message when the contact probe contacts the target plane.

[0046] The device includes multiple contacts; the target plane can be a calibration plate; the contact detection device is used to issue a prompt when the contact probe contacts the target plane. The contact detection device can be any device that provides tactile feedback when it contacts the calibration plate, such as a tactile sensor. The contact detection device is installed on the flange of the robot arm. The contact detection device includes a contact probe, and the position of the contact probe coincides with the center point of the actuator.

[0047] Optionally, the contact detection device includes a ballbar, which includes a mounting part, a probe, and a contact probe. The probe is located on the mounting part, and the contact probe is located at the end of the probe away from the mounting part.

[0048] Specifically, the contact detection device includes a ballbar, which comprises a mounting part, a probe, and a contact probe. The probe is located on the mounting part, and the contact probe is located at the end of the probe furthest from the mounting part. Because the contact probe of the ballbar is very small, during installation, the contact probe can be aligned with the center point of the robotic actuator to indicate the center point of the robotic actuator, thereby improving calibration accuracy.

[0049] With the ballbar's contact probes contacting various points on the target plane, the calibration pose of the manipulator at each contact point is acquired. When the manipulator touches different contact points, its actuators will have different positions and postures, i.e., different poses. By controlling the manipulator's movement, the contact probes of the ballbar, mounted on the manipulator's flange, are controlled to touch various contact points on the target plane, and the pose information of the manipulator at each contact point is recorded. When the contact probes touch the target plane, a prompt message is issued, eliminating the need for visual observation to determine whether the contact probes have touched the target plane. The pose of the manipulator corresponding to that contact point is recorded only after a contact is confirmed.

[0050] Step 012: Based on the calibration pose corresponding to each contact point, calculate the pose transformation relationship between the robot coordinate system and the flange coordinate system corresponding to each calibration pose.

[0051] For details, please continue reading Figure 1 Establish the flange coordinate system and the base coordinate system of the robot arm. The flange coordinate system describes the position and orientation of the actuator (such as a gripper, tool, etc.) relative to the robot. When controlling the robot arm's movement so that the contact probe of the contact detection device set on the flange of the robot arm touches various contact points on the target plane, the actuator of the robot arm undergoes orientation changes during the movement and operation of contacting different contact points. Therefore, the coordinates and orientations of the corresponding base coordinate systems of each contact point are also different.

[0052] It is understandable that, since the flange coordinate system describes the position and orientation of the actuator relative to the robot, there is a correspondence between the flange coordinate system and the robot's (base) coordinate system. Different contact points correspond to different calibration poses. Based on the calibration poses corresponding to each contact point, the pose transformation relationship between the robot's coordinate system and the flange coordinate system corresponding to each calibration pose is calculated. For example, by obtaining the calibration poses corresponding to three contact points, the pose transformation relationship between the robot's coordinate system and the flange coordinate system corresponding to the three calibration poses is calculated using pose calculation algorithms such as Least Squares and Singular Value Decomposition.

[0053] Optionally, among all contacts, at least three contacts are not collinear.

[0054] Specifically, in order to improve the accuracy of the pose transformation relationship between the manipulator coordinate system and the flange coordinate system corresponding to each calibration pose, at least three non-collinear contact points should exist among each contact point.

[0055] Step 013: Calculate the coordinates of the calibration position based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point.

[0056] Specifically, each contact point is located on the same target plane (such as a calibration plate), and the contact points are coplanar. The calibration position coordinates are calculated based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point.

[0057] Thus, by acquiring the robot's calibration pose when the contact probe of the contact detection device contacts each contact point on the target plane, and then calculating the pose transformation relationship between the robot's coordinate system and the flange coordinate system corresponding to each calibration pose, the calibration position coordinates are calculated based on the pose transformation relationship and the coplanarity of each contact point. By having the contact probe of the contact detection device touch each contact point, and the detection device issuing a prompt when it contacts the target plane, the calibration pose of each contact point is acquired, improving the accuracy of the acquired robot's calibration pose and thus improving the accuracy of the calibration results. By calculating the pose transformation relationship between the robot's coordinate system and the flange coordinate system corresponding to each calibration pose, and by calculating the calibration position coordinates based on the pose transformation relationship and the coplanarity of each contact point, more accurate calibration results are obtained, further improving the calibration precision.

[0058] Compared with existing methods that rely on manual operation and visual observation, this method avoids the problem of difficulty in achieving precise contact when the probe touches the target plane under visual observation and manual control conditions. It also eliminates the need to spend a lot of time determining whether the needle tip is aligned with the contact point, thus improving calibration efficiency.

[0059] Please see Figure 3 In some embodiments, the calibrated pose includes position coordinates and attitude angles, and the pose transformation relationship includes translation matrix and rotation matrix. Step 012: Based on the calibrated pose corresponding to each contact point, calculate the pose transformation relationship corresponding to each calibrated pose, including:

[0060] Step 0121: Calculate the translation matrix corresponding to the calibration attitude based on the position coordinates of the calibration attitude;

[0061] Step 0122: Calculate the rotation matrix corresponding to the calibration attitude based on the attitude angles of the calibration attitude.

[0062] Specifically, after establishing the coordinate system of the robot arm and the flange of the robot arm in the flange coordinate system, the robot arm is translated along the straight lines of the X, Y, and Z axes of the coordinate system to represent its position in space, and rotated around the X, Y, and Z axes of the coordinate system by a certain angle to represent its attitude in space. Then, by determining the position coordinates of the attitude, the translation matrix corresponding to the attitude can be calculated, and based on the attitude angles of the attitude, the rotation matrix corresponding to the attitude can be calculated.

[0063] It is understandable that each contact point has its own corresponding translation and rotation matrices. This is because any transformation, whether translation, rotation, or a combination of both, can be considered to be performed relative to the origin of the robot's coordinate system. For example, suppose the contact probe contacts contact points A and B on the target plane. Contact points A and B are not at the same point. Since contact points A and B have different positions and orientations, their relative relationships (positions, orientations, etc. in space) with the robot's (base) coordinate system are also different. Therefore, each contact point has its own corresponding translation and rotation matrices.

[0064] Please see Figure 4 In some embodiments, step 013: calculating the calibration position coordinates based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point, including:

[0065] Step 0131: Based on the pose transformation relationship corresponding to each calibration pose, establish the first functional relationship between the calibration position coordinates and the contact point coordinates of each contact point in the robot coordinate system;

[0066] Step 0132: Establish a second functional relationship between the normal vector of the target plane and the coordinates of any three non-collinear contact points;

[0067] Step 0133: Based on the coplanar relationship of each contact point, establish a third function relationship between the normal vector and the contact vector formed by the coordinates of any two contact points;

[0068] Step 0134: Calculate the coordinates of the calibration position based on the first functional relationship, the second functional relationship, and the third functional relationship.

[0069] Specifically, based on the translation and rotation matrices corresponding to the calibration poses of each contact point, a first functional relationship is established between the calibration position coordinates and the contact point coordinates in the robot's coordinate system:

[0070]

[0071] Among them, P Base These are the contact point coordinates in the robot's coordinate system. This is the rotation matrix from the flange coordinate system to the robot coordinate system. This is the translation matrix from the flange coordinate system to the robot coordinate system. These are the contact point coordinates in the flange coordinate system.

[0072] Assuming the target plane captures six non-collinear contact points: contact A, contact B, contact C, contact D, contact E, and contact F, then... This represents the rotation matrix from the flange coordinate system to the robot arm coordinate system corresponding to contact point A. Let A represent the translation matrix from the flange coordinate system to the robot coordinate system corresponding to contact A, and so on for contacts B, C, D, E, F, and so on. Then we have:

[0073]

[0074]

[0075]

[0076]

[0077]

[0078]

[0079] By determining any three non-collinear contact points on the target plane, such as contact point A, contact point B, and contact point C, to... Let represent the line segment vector connecting contact points A and B, and let n represent the normal vector of the target plane. Then, establish a second functional relationship between the normal vector n of the target plane and the coordinates of any three non-collinear contact points:

[0080] n = V AB ×V AC

[0081] Since each contact point is obtained after touching the target plane, there is a coplanar relationship between the contact points. The normal vector is perpendicular to the line segment vector formed by any two points on the plane, and the vector product is 0. Therefore, based on the coplanar relationship of the contact points, a third functional relationship is established between the normal vector and the contact vector formed by the coordinates of any two contact points (let's say contact point A and contact point B):

[0082] n·V AB =0

[0083] Optionally, the number of contacts is 6, and the 3 contacts used to calculate the normal vector are different from the contacts used to form the contact vector.

[0084] Specifically, to further improve calibration accuracy, the number of contacts is 6. The 3 contacts used to calculate the normal vector are different from the contacts used to form the contact vector. Assuming the 6 contacts are A, B, C, D, E, and F, and assuming a second functional relationship is established through contacts A, B, and C, and a third functional relationship is formed through contacts D, E, and F, then the third functional relationship is:

[0085]

[0086] Finally, based on the first, second, and third functional relationships, the coordinates of the calibration position are calculated.

[0087] Please see Figure 5 In some embodiments, step 0134: calculating the calibration position coordinates based on the first functional relationship, the second functional relationship, and the third functional relationship, includes:

[0088] Step 01341: Determine the initial position coordinates of the actuator's center point when it is installed on the flange, based on the actuator's physical dimensions;

[0089] Step 01342: Calculate the calibration position coordinates based on the preset nonlinear solution algorithm, initial position coordinates, first function relationship, second function relationship and third function relationship.

[0090] The preset nonlinear solution algorithm can be the Gauss-Newton iteration method, the Levenberg-Marquarelt (LM) method, etc.

[0091] Specifically, by determining the physical dimensions of the actuator of the robotic arm, the initial position coordinates of the actuator's center point when it is installed on the flange are determined. Based on a preset nonlinear solution algorithm, a first functional relationship, a second functional relationship, and a third functional relationship, the calibration position coordinates are calculated iteratively with the initial position coordinates as the starting value.

[0092] Please see Figure 6 and Figure 7 In some embodiments, the calibration method further includes:

[0093] Step 014: Calculate the predicted coordinates of each contact point in the robot's coordinate system based on the pose transformation relationship corresponding to each calibrated pose and the calibrated position coordinates obtained.

[0094] Step 015: Calculate the root mean square error of the distance between the predicted coordinates and the target plane corresponding to each contact point;

[0095] Step 016: If the root mean square error is less than the preset error, confirm that the calibration position coordinates are complete.

[0096] Step 017: If the root mean square error is greater than the preset error, take the calibration position coordinates obtained from the calibration as the initial position coordinates, and enter the step of calculating the calibration position coordinates again based on the preset nonlinear solution algorithm, initial position coordinates, first function relationship, second function relationship and third function relationship.

[0097] The preset error can be set according to specific application scenarios and required accuracy. When the root mean square error is less than the preset error, it means that the calibration accuracy is higher, the expected accuracy level has been reached, and the difference is within an acceptable range.

[0098] Specifically, after calculating the calibration position coordinates, the calibration position coordinates are verified. Based on the pose transformation relationship corresponding to the calibration pose of each contact point and the calibrated calibration position coordinates, the predicted coordinates of each contact point in the robot coordinate system are calculated, and then the root mean square error of the distance between the predicted coordinates of each contact point and the target plane is calculated.

[0099] Understandably, since all contact points are coplanar, the calibration of the calibration position coordinates is completed when the root mean square error is less than the preset error; when the root mean square error is greater than the preset error, in order to obtain accurate calibration, the calibration position coordinates obtained are used as the initial position coordinates, and the process is restarted by re-entering the process based on the preset nonlinear solution algorithm, the initial position coordinates, the first function relationship, the second function relationship, and the third function relationship to calculate the calibration position coordinates.

[0100] Please see Figure 8 To facilitate better implementation of the calibration method of this application, this application also provides a calibration device 10 for calibrating the calibration position coordinates of the center point of the actuator installed on the robot arm in the flange coordinate system of the robot arm. The calibration device 10 may include an acquisition module 11, a first calculation module 12, and a second calculation module 13. The acquisition module 11 acquires the calibration posture of the robot arm when the contact probe of the contact detection device contacts each contact point on the target plane (calibration plate). The contact detection device is installed on the flange, and the position of the contact probe coincides with the center point of the actuator. The contact detection device issues a prompt message when the contact probe contacts the target plane. The first calculation module 12 calculates the pose transformation relationship between the robot arm coordinate system and the flange coordinate system corresponding to each calibration posture based on the calibration posture corresponding to each contact point. The second calculation module 13 calculates the calibration position coordinates based on the pose transformation relationship corresponding to each calibration posture and the coplanar relationship of each contact point.

[0101] In one embodiment, the calibration pose includes position coordinates and attitude angles, and the pose transformation relationship includes a translation matrix and a rotation matrix. The first calculation module 12 is further used to calculate the translation matrix corresponding to the calibration pose based on the position coordinates of the calibration pose, and to calculate the rotation matrix corresponding to the calibration pose based on the attitude angles of the calibration pose.

[0102] In one embodiment, the second calculation module 13 is further configured to: establish a first functional relationship between the calibration position coordinates and the contact coordinates of each contact point in the robot coordinate system according to the pose transformation relationship corresponding to each calibration pose; establish a second functional relationship between the normal vector of the target plane and the contact coordinates of any three non-collinear contact points; establish a third functional relationship between the normal vector and the contact vector formed by any two contact point coordinates based on the coplanar relationship of each contact point; and calculate the calibration position coordinates based on the first, second, and third functional relationships.

[0103] In one embodiment, the second calculation module is further configured to determine the initial position coordinates of the actuator's center point when it is installed on the flange based on the actuator's physical dimensions, and to calculate the calibration position coordinates based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship, and the third functional relationship.

[0104] In one embodiment, the calibration device further includes a third calculation module 14, which is used to calculate the predicted coordinates of each contact point in the robot coordinate system according to the pose transformation relationship corresponding to each calibration pose and the calibration position coordinates obtained by calibration; calculate the root mean square error of the distance between the predicted coordinates corresponding to each contact point and the target plane; determine that the calibration position coordinates calibration is completed if the root mean square error is less than a preset error; and take the calibration position coordinates obtained by calibration as the initial position coordinates if the root mean square error is greater than the preset error, and enter the step of calculating the calibration position coordinates again based on the preset nonlinear solution algorithm, the initial position coordinates, the first function relationship, the second function relationship and the third function relationship.

[0105] The calibration device 10 has been described above from the perspective of functional modules in conjunction with the accompanying drawings. These functional modules can be implemented in hardware, in software instructions, or in a combination of hardware and software modules. Specifically, the steps of the method embodiments in this application can be completed by integrated logic circuits in the processor's hardware and / or by software instructions. The steps of the method disclosed in this application can be directly manifested as execution by a hardware encoding processor, or by a combination of hardware and software modules in the encoding processor. Optionally, the software module can reside in a mature storage medium in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps in the above method embodiments.

[0106] Please refer to it again. Figure 1The calibration system 1000 of this application includes a calibration position coordinate system for calibrating the center point of the actuator installed on the robot 400 in the flange coordinate system of the robot 400. The calibration system 1000 includes: a calibration device 100, including a target plane 100; a contact detection device 200, which is disposed on the flange, and the position of the contact probe 202 coincides with the center point of the actuator. The contact detection device 200 is used to issue a prompt message when the contact probe 202 contacts the target plane 100; and a processor, which is used to execute the calibration method of any of the above embodiments.

[0107] Please refer to it again. Figure 9 The computer device of the present application includes a processor 302, a memory 303 and a computer program, wherein the computer program is stored in the memory 303 and executed by the processor 302, and the computer program includes instructions for performing the calibration method of any of the above embodiments.

[0108] Those skilled in the art will understand that Figure 9 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0109] Please see Figure 10 This application also provides a computer-readable storage medium 600 storing a computer program 610. When the computer program 610 is executed by the processor 620, it implements the steps of the calibration method of any of the above embodiments. For the sake of brevity, these steps will not be repeated here.

[0110] In the description of this specification, the references to terms such as "some embodiments," "in one example," "exemplarily," etc., indicate that a specific feature, structure, material, or characteristic described in connection with an embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0111] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the function involved, as will be understood by those skilled in the art to which embodiments of this application pertain.

[0112] Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of this application.

Claims

1. A calibration method, characterized in that, The method for calibrating the calibration position coordinates of the center point of the actuator installed on the robot arm in the flange coordinate system of the robot arm includes: The robot arm's calibrated pose is obtained when the contact probe of the contact detection device contacts each contact point on the target plane. The contact detection device is installed on the flange, and the position of the contact probe coincides with the center point of the actuator. The contact detection device is used to issue a prompt message when the contact probe contacts the target plane. Based on the calibrated poses corresponding to each contact point, calculate the pose transformation relationship between the manipulator coordinate system and the flange coordinate system corresponding to each calibrated pose; The coordinates of the calibration position are calculated based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point; The step of calculating the calibration position coordinates based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point includes: Based on the pose transformation relationship corresponding to each of the calibration poses, a first functional relationship is established between the calibration position coordinates and the contact point coordinates of each of the contact points in the robot coordinate system. Establish a second functional relationship between the normal vector of the target plane and the coordinates of any three non-collinear contact points; Based on the coplanar relationship of each contact point, a third functional relationship is established between the normal vector and the contact point vector formed by any two contact point coordinates; Calculate the coordinates of the calibration position based on the first functional relationship, the second functional relationship, and the third functional relationship; The step of calculating the calibration position coordinates based on the first functional relationship, the second functional relationship, and the third functional relationship includes: Based on the physical dimensions of the actuator, determine the initial position coordinates of the actuator's center point when it is installed on the flange; and The calibration position coordinates are calculated based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship, and the third functional relationship; Based on the pose transformation relationship corresponding to each of the calibration poses and the calibrated position coordinates obtained, calculate the predicted coordinates of each contact point in the robot arm coordinate system; Calculate the root mean square error of the distance between the predicted coordinates of each contact point and the target plane; If the root mean square error is less than the preset error, the calibration position coordinates are determined to be calibrated. If the root mean square error is greater than a preset error, the calibrated position coordinates obtained are used as the initial position coordinates, and the process of calculating the calibrated position coordinates is initiated again based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship, and the third functional relationship.

2. The calibration method according to claim 1, characterized in that, The calibration pose includes position coordinates and attitude angles, and the pose transformation relationship includes translation and rotation matrices. The step of calculating the pose transformation relationship corresponding to each calibration pose based on the calibration pose corresponding to each contact point includes: Calculate the translation matrix corresponding to the calibration pose based on the position coordinates of the calibration pose; Calculate the rotation matrix corresponding to the calibrated attitude based on the attitude angles of the calibrated attitude.

3. The calibration method according to claim 1, characterized in that, The number of contact points is 6, and the 3 contact points used to calculate the normal vector are different from the contact points that form the contact vector.

4. The calibration method according to claim 1, characterized in that, Among all the contacts, at least three contacts are not collinear.

5. The calibration method according to claim 1, characterized in that, The contact detection device includes a ball bar, which includes a mounting part, a probe, and a contact probe. The probe is disposed on the mounting part, and the contact probe is disposed at the end of the probe away from the mounting part.

6. A calibration device, characterized in that, The device for calibrating the calibration position coordinates of the center point of the actuator installed on the robot arm in the flange coordinate system of the robot arm includes: The acquisition module is used to acquire the calibrated posture of the manipulator when the contact probe of the contact detection device contacts each contact point on the target plane. The contact detection device is set on the flange, and the position of the contact probe coincides with the center point of the actuator. The contact detection device is used to issue a prompt message when the contact probe contacts the target plane. The first calculation module is used to calculate the pose transformation relationship between the manipulator coordinate system and the flange coordinate system corresponding to each of the calibration poses, based on the calibration poses corresponding to each contact point. The second calculation module is used to calculate the calibration position coordinates based on the pose transformation relationship corresponding to each calibration pose and the coplanar relationship of each contact point; the second calculation module is also used to establish a first functional relationship between the calibration position coordinates and the contact point coordinates of each contact point in the robot coordinate system based on the pose transformation relationship corresponding to each calibration pose; establish a second functional relationship between the normal vector of the target plane and the contact point coordinates of any three non-collinear contact points; establish a third functional relationship between the normal vector and the contact point vector formed by any two contact point coordinates based on the coplanar relationship of each contact point; calculate the calibration position coordinates based on the first functional relationship, the second functional relationship and the third functional relationship; and determine the initial position coordinates of the center point of the actuator when it is installed on the flange according to the physical dimensions of the actuator; calculate the calibration position coordinates based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship and the third functional relationship. The third calculation module is used to calculate the predicted coordinates of each contact point in the robot coordinate system based on the pose transformation relationship corresponding to each of the calibration poses and the calibrated position coordinates; calculate the root mean square error of the distance between the predicted coordinates of each contact point and the target plane; determine that the calibration position coordinates are calibrated if the root mean square error is less than a preset error; and take the calibrated position coordinates as the initial position coordinates if the root mean square error is greater than the preset error, and then re-enter the step of calculating the calibration position coordinates based on a preset nonlinear solution algorithm, the initial position coordinates, the first functional relationship, the second functional relationship, and the third functional relationship.

7. A calibration system for calibrating the calibration position coordinates of the center point of an actuator mounted on a robot in the flange coordinate system of the robot, the calibration system comprising: Calibration device, including target plane; A contact detection device is provided on the flange, the position of the contact probe coincides with the center point of the actuator, and the contact detection device is used to issue a prompt message when the contact probe contacts the target plane; A processor for performing the calibration method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Auxiliary tool used for precision calibration of industrial robot

    CN111203892A

  • Automatic calibration system and calibration method thereof for robot space object pose

    CN111216115A