Robot calibration method, device, electronic device and storage medium

By acquiring the pose transformation matrix and docking tool size information of the dual-robot device, and using the robot's own joint angle encoder for calibration, the problem of dependence on external equipment in the existing technology is solved, and low-cost robot calibration is achieved.

CN119328755BActive Publication Date: 2025-10-28FAIR INNOVATION (SUZHOU) ROBOTIC SYSTEM CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411557726.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-10-28
Estimated Expiration
2044-11-04

AI Technical Summary

Technical Problem

Existing robot calibration methods require the use of additional measurement equipment such as laser trackers and wire encoders, resulting in high calibration costs.

Method used

By acquiring the pose transformation matrix of the dual-robot device and the size information of the docking tool, calibration is performed using the robot's own joint angle encoder, the docking error matrix is ​​calculated, and iterative optimization is performed until convergence to determine the target docking matrix.

Benefits of technology

It enables robot calibration without the need for external measuring equipment, reducing equipment costs and saving space.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119328755B_ABST
    Figure CN119328755B_ABST
Patent Text Reader

Abstract

Embodiments of the present invention provide a robot calibration method, apparatus, electronic device, and storage medium, relating to the field of robot calibration. The method includes: acquiring a first pose transformation matrix, determining a second pose transformation matrix and a third pose transformation matrix, acquiring a docking tool size information matrix, calculating a docking error matrix based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix, obtaining new second pose transformation matrices and new third pose transformation matrices based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, returning to the step of calculating the docking error matrix until the docking error matrix converges to obtain a target docking error matrix, and calibrating a dual-robot device based on the target docking error matrix. The above calibration method does not rely on external measuring equipment, which can significantly reduce equipment costs and eliminates the space occupied by external equipment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robot calibration, and more specifically, to a robot calibration method, apparatus, electronic device, and storage medium. Background Technology

[0002] Existing conventional robot calibration methods typically require the use of a series of measurement devices other than the robot, such as laser trackers, wire encoders, and dial indicators, to obtain the position information of the robot's end effector and to obtain sample targets for robot kinematic parameter identification.

[0003] The above-mentioned robot calibration method requires the use of additional devices for calibration, thereby increasing the calibration cost. Summary of the Invention

[0004] The purpose of this invention is to provide a robot calibration method, apparatus, electronic device, and storage medium that eliminates the need for additional components during calibration, thereby achieving robot calibration while reducing calibration costs.

[0005] To achieve the above objectives, the technical solutions adopted in the embodiments of this application are as follows:

[0006] In a first aspect, embodiments of this application provide a robot calibration method, the method comprising:

[0007] Obtain the first pose transformation matrix between the first robot and the second robot in the dual-robot device;

[0008] Determine the second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot;

[0009] Determine the third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center;

[0010] Obtain the matrix of docking tool size information for the first robot and the second robot;

[0011] The docking error matrix between the first robot and the second robot is calculated based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix.

[0012] Based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, a new second pose transformation matrix and a new third pose transformation matrix are obtained;

[0013] Return to the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix, and obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix, until the docking error matrix converges and the target docking error matrix is ​​obtained;

[0014] Determine the target second pose transformation matrix and the target third pose transformation matrix corresponding to the target docking target matrix;

[0015] The dual-robot device is calibrated based on the target second pose transformation matrix and the target third pose transformation matrix.

[0016] In an optional implementation, the step of determining the second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot, includes:

[0017] Determine the first joint angle set of the first robot at the calibration position, wherein the first robot includes multiple joints, and the first joint angle set includes the joint angles corresponding to each joint at different calibration positions;

[0018] Obtain the first DH parameter corresponding to the first joint angle set;

[0019] Based on the first DH parameters, the first Jacobian matrix of the first robot is obtained;

[0020] The second pose transformation matrix is ​​determined based on the first Jacobian matrix.

[0021] In an optional implementation, the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix includes:

[0022] Determine the first inverse matrix of the second pose transformation matrix;

[0023] The product of the first pose transformation matrix, the first inverse matrix, the third pose transformation matrix, and the docking tool size information matrix is ​​calculated as the docking error matrix between the first robot and the second robot.

[0024] In an optional implementation, the step of obtaining a new second pose transformation matrix based on the second pose transformation matrix and the docking error matrix includes:

[0025] Determine the partial derivative matrix of the second pose transformation matrix to obtain the first Jacobian matrix;

[0026] Determine the transpose of the first Jacobian matrix;

[0027] Calculate the first product of the first Jacobian matrix and the transpose of the first Jacobian matrix;

[0028] Calculate the inverse matrix of the first product;

[0029] Calculate the inverse matrix of the first product, the transpose of the first Jacobian matrix, and the second product of the docking error matrix to obtain the new second pose transformation matrix.

[0030] In an optional implementation, the step of obtaining a new third pose transformation matrix based on the third pose transformation matrix and the docking error matrix includes:

[0031] The partial derivative matrix of the third pose transformation matrix is ​​determined to obtain the second Jacobian matrix;

[0032] Determine the transpose of the second Jacobian matrix;

[0033] Calculate the second product of the second Jacobian matrix and the transpose of the second Jacobian matrix;

[0034] Calculate the inverse matrix of the second product;

[0035] Calculate the inverse matrix of the second product, the transpose matrix of the second Jacobian matrix, and the third product of the docking error matrix to obtain the new third pose transformation matrix.

[0036] In an optional implementation, the method, wherein the step of obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, includes:

[0037] Using the least squares method, a new second pose transformation matrix is ​​obtained based on the second pose transformation matrix and the docking error matrix;

[0038] Using the least squares method, a new third pose transformation matrix is ​​obtained based on the third pose transformation matrix and the docking error matrix.

[0039] In an optional implementation, the first DH parameters include, for each joint and for each calibration position, the angle of rotation about the Z-axis, the displacement along the Z-axis, the angle of rotation about the X-axis, and the displacement along the X-axis.

[0040] Secondly, embodiments of this application provide a robot calibration device, the device comprising:

[0041] The acquisition module is used to acquire the first pose transformation matrix of the first robot and the second robot in the dual-robot device; and to acquire the docking tool size information matrix of the first robot and the second robot.

[0042] The determination module is used to determine a second pose transformation matrix from the base coordinate system associated with the joint angles of the first robot to the end effector center; and to determine a third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center.

[0043] The calculation module is used to calculate the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix; and to obtain a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix.

[0044] The return execution module is used to return to the execution of the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix, to obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix, until the docking error matrix converges and the target docking error matrix is ​​obtained;

[0045] The determining module is further configured to determine the target second pose transformation matrix and the target third pose transformation matrix corresponding to the target docking target matrix;

[0046] The calibration module is used to calibrate the dual-robot device based on the target second pose transformation matrix and the target third pose transformation matrix.

[0047] Thirdly, embodiments of this application provide an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the robot calibration method.

[0048] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the robot calibration method.

[0049] This application has the following beneficial effects:

[0050] This application obtains the first pose transformation matrix of the first robot and the second robot in a dual-robot device, determines the second pose transformation matrix from the base coordinate system associated with the joint angles of the first robot to the end effector center, determines the third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center, obtains the docking tool size information matrix of the first robot and the second robot, calculates the docking error matrix of the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, and obtains the new second pose. The process involves calculating the docking error matrix between the first and second robots based on the first, second, and third pose transformation matrices and the docking tool size information matrix. This process continues until the docking error matrix converges, yielding the target docking error matrix. The target second and third pose transformation matrices are then determined, and the dual-robot device is calibrated based on these matrices. This robot calibration method, as provided in this application, does not rely on external measuring equipment. Instead, it utilizes the robot's own joint angle encoder for calibration, significantly reducing equipment costs and eliminating the space required by external devices. Attached Figure Description

[0051] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0052] Figure 1 A block diagram of an electronic device provided in an embodiment of the present invention;

[0053] Figure 2 This is one of the flowcharts illustrating a robot calibration method provided in an embodiment of the present invention;

[0054] Figure 3 This is a schematic diagram of the dimension chain formed by the matrices provided in an embodiment of the present invention;

[0055] Figure 4 This is a second schematic flowchart of a robot calibration method provided in an embodiment of the present invention;

[0056] Figure 5The third schematic flowchart of a robot calibration method provided in this embodiment of the invention;

[0057] Figure 6 The fourth flowchart illustrates a robot calibration method provided in this embodiment of the invention.

[0058] Figure 7 This is a structural block diagram of a robot calibration device provided in an embodiment of the present invention. Detailed Implementation

[0059] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. The components of the embodiments of the present invention described and shown in the accompanying drawings can generally be arranged and designed in various different configurations.

[0060] Therefore, the following detailed description of the embodiments of the invention provided in the accompanying drawings is not intended to limit the scope of the claimed invention, but merely to illustrate selected embodiments of the invention. All other embodiments obtained by those skilled in the art based on the embodiments of the invention without inventive effort are within the scope of protection of the invention.

[0061] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings.

[0062] In the description of this invention, it should be noted that if terms such as "upper," "lower," "inner," or "outer" are used to indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings, or the orientation or positional relationship in which the product of this invention is usually placed, they are only for the convenience of describing this invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of this invention.

[0063] Furthermore, the terms "first" and "second" are used only to distinguish descriptions and should not be interpreted as indicating or implying relative importance.

[0064] In the description of this application, it should also be noted that, unless otherwise expressly specified and limited, the terms "set up," "install," "connect," and "link" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection of two components. Those skilled in the art can understand the specific meaning of the above terms in this application based on the specific circumstances.

[0065] Through extensive research, the inventors discovered that existing conventional robot calibration methods typically require a series of measurement devices other than the robot, such as laser trackers, wire encoders, and dial indicators, to obtain the position information of the robot's end effector and use this information to obtain sample targets for robot kinematic parameter identification.

[0066] The above-mentioned robot calibration method requires the use of additional devices for calibration, thereby increasing the calibration cost.

[0067] In view of the above-mentioned problems, this embodiment provides a robot calibration method, device, electronic device and storage medium that can be calibrated without relying on external measuring equipment. The method relies on the robot's own joint angle encoder for calibration, which can significantly reduce equipment costs and eliminate the space occupied by external equipment. The solution provided in this embodiment will be described in detail below.

[0068] This embodiment provides an electronic device capable of calibrating a robot. In one possible implementation, the electronic device can be a user terminal, such as, but not limited to, a server, smartphone, personal computer (PC), tablet computer, personal digital assistant (PDA), mobile internet device (MID), etc.

[0069] Please refer to Figure 1 , Figure 1 This is a schematic diagram of the structure of the electronic device 100 provided in the embodiments of this application. The electronic device 100 may further include... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown. Figure 1 The components shown can be implemented using hardware, software, or a combination thereof.

[0070] The electronic device 100 includes a robot calibration device 110, a memory 120, and a processor 130.

[0071] The components of the memory 120 and processor 130 are electrically connected directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other through one or more communication buses or signal lines. The robot calibration device 110 includes at least one software function module that can be stored in the memory 120 in the form of software or firmware or embedded in the operating system (OS) of the electronic device 100. The processor 130 is used to execute the executable modules stored in the memory 120, such as the software function modules and computer programs included in the robot calibration device 110.

[0072] The memory 120 may be, but is not limited to, Random Access Memory (RAM), Read Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), etc. The memory 120 is used to store programs, and the processor 130 executes the programs after receiving execution instructions.

[0073] Please refer to Figure 2 , Figure 2 For application Figure 1 The flowchart of a robot calibration method for an electronic device 100 is shown below, and the method includes each step in detail.

[0074] S201: Obtain the first pose transformation matrix between the first robot and the second robot in the dual-robot device.

[0075] S202: Determine the second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot.

[0076] S203: Determine the third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center.

[0077] S204: Obtain the matrix of docking tool size information for the first robot and the second robot.

[0078] S205: Calculate the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix.

[0079] S206: Based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, a new second pose transformation matrix and a new third pose transformation matrix are obtained.

[0080] The method to obtain a new second pose transformation matrix based on the second pose transformation matrix and the docking error matrix can be as follows: using the least squares method, a new second pose transformation matrix is ​​obtained based on the second pose transformation matrix and the docking error matrix.

[0081] The method to obtain a new third pose transformation matrix based on the third pose transformation matrix and the docking error matrix can be as follows: using the least squares method, a new second pose transformation matrix is ​​obtained based on the third pose transformation matrix and the docking error matrix.

[0082] In addition to obtaining the new second pose transformation matrix and the new third pose transformation matrix based on the least squares method, the new second pose transformation matrix and the new third pose transformation matrix can also be obtained by the regular least squares method, the orthogonal polynomial method, or the Newton method. This application does not impose any specific restrictions on these methods.

[0083] S207: Return to the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix, and obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix, until the docking error matrix converges and the target docking error matrix is ​​obtained.

[0084] S208: Determine the target second pose transformation matrix and the target third pose transformation matrix corresponding to the target docking target matrix.

[0085] S209: Calibrate the dual-robot device based on the target's second pose transformation matrix and the target's third pose transformation matrix.

[0086] The first pose transformation matrix between the first robot and the second robot indicates the pose transformation relationship between the base coordinate systems of the first robot and the second robot. That is, the transformation matrix from the base coordinate system of the first robot to the base coordinate system of the second robot is the first pose transformation matrix.

[0087] The second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot, depends on the joint angle values ​​and kinematic parameters of the first robot and is derived through forward kinematics.

[0088] The third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center depends on the joint angle values ​​and kinematic parameters of the second robot and is derived through forward kinematics.

[0089] Forward kinematics is a fundamental concept in robotics that studies how to calculate the position and orientation of a robot's end effector in Cartesian space from its joint variables (usually joint angles or joint displacements). In other words, forward kinematics solves the problem of "where is the end effector given joint angles." This process involves progressively combining the rotational or translational transformations of each joint to obtain the overall transformation matrix from the robot's base (fixed reference coordinate system) to the end effector (usually the hand or tool center point TCP). This transformation matrix contains rotational (represented by rotation matrices) and translational (position vector) information, comprehensively describing the end effector's position and orientation relative to the base. Solving forward kinematics typically requires specific parameters of the robot model, such as link lengths and angular relationships between joints, often described by Denavit-Hartenberg (DH) parameters. Once the DH parameters and the current joint angles are available, the end effector's pose can be calculated through a series of matrix operations.

[0090] The first pose transformation matrix between the first robot and the second robot, the second pose transformation matrix from the base coordinate system associated with the joint angles of the first robot to the end effector center, the third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center, and the docking tool dimension information matrix between the first robot and the second robot constitute a dimension chain diagram, as follows: Figure 3 The diagram shows a dimension chain formed by the matrices. In the diagram, T... base Let T be the first pose transformation matrix between the first robot and the second robot. robort1 T is the second pose transformation matrix from the base coordinate system associated with the joint angles of the first robot to the end effector center. robort2 The third pose transformation matrix, T, is the coordinate system associated with the joint angles of the second robot and transferred to the center of the end effector. tool T is a matrix containing the dimensions of the docking tools between the first and second robots. error Let T be the docking error matrix between the first and second robots, and the theoretical closed-chain docking error matrix. error is zero.

[0091] Based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, new second pose transformation matrices and new third pose transformation matrices are obtained. Based on the first pose transformation matrix, the new second pose transformation matrix, the new third pose transformation matrix, and the docking tool size information matrix, a new docking error matrix between the first robot and the second robot is calculated. Then, the process is repeated to obtain new second pose transformation matrices and new third pose transformation matrices based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix. The docking error matrix is ​​then recalculated based on the updated second pose transformation matrix, the updated third pose transformation matrix, the first pose transformation matrix, and the docking tool size information until the calculated docking error matrix converges or the number of iterations is reached.

[0092] For example, the convergence of the docking error matrix means that the docking error matrix is ​​less than or equal to a preset value, wherein the preset value can be a position error of 0.1 mm, an attitude error of 0.01°, etc., and this application embodiment does not impose specific limitations on this.

[0093] The number of iterations can be set to 500, 600, 700, etc., and this application embodiment does not impose specific limitations on this.

[0094] There are multiple ways to determine the second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot. In one implementation, such as... Figure 4 As shown, the following steps are included:

[0095] S301: Determine the set of first joint angles of the first robot at the calibrated position.

[0096] The first robot includes multiple joints, and the first joint angle set includes the joint angles corresponding to each joint at different calibration positions.

[0097] For example, when the first robot is a 6-axis robot, that is, the first robot contains 6 joints, the determined set of angles of the first joint can be: Q1 = {q1,q2,q3,q4,q5,q6}, where, when there are 24 calibration positions, q1 is the angle of the first joint in the first robot at each calibration position, and q1 is a 24*1 matrix. The same applies to q2,q3,q4,q5, andq6.

[0098] S302: Obtain the first DH parameter corresponding to the first joint angle set.

[0099] DH parameters are a standardized method used in robotics to describe the linkage structure of a robot. They simplify the transformation relationships between joint coordinate systems by defining a series of parameters, thus making kinematic analysis easier.

[0100] Each link-joint pair is typically described by four parameters: 1. Link length, representing the distance along the x-axis from the (i)th joint axis to the (i+1)th joint axis. 2. Link twist angle, representing the angle of rotation around the x-axis from the (i)th joint axis to the (i+1)th joint axis. 3. Joint offset, representing the distance along the z-axis from the (i)th joint axis to the (i+1)th joint axis. 4. Joint angle, representing the angle of rotation around the z-axis from the (i)th joint axis to the (i+1)th joint axis. The DH parameters are used to construct a homogeneous transformation matrix, which describes the transformation from one joint coordinate system to the next.

[0101] For example, the first DH parameters corresponding to the first joint angle set Q1 include:

[0102] {{θ1,θ2,θ3,θ4,θ5,θ6},{d1,d2,d3,d4,d5,d6},{α1,α2,α3,α4,α5,α6},

[0103] {a1,a2,a3,a4,a5,α6}}, where θ is the angle of rotation about the z-axis, d is the displacement along the z-axis, α is the angle of rotation about the x-axis, and a is the displacement along the x-axis.

[0104] S303: Based on the first DH parameters, obtain the first Jacobian matrix of the first robot.

[0105] The Jacobian matrix describes the relationship between the velocity of the end effector and the joint velocities. Specifically, the Jacobian matrix is ​​a (6 × n) matrix, where (n) is the number of degrees of freedom of the robot. Each row of the matrix corresponds to a linear or angular velocity component of the end effector, and each column corresponds to the velocity of a joint.

[0106] The method for deriving the first Jacobian matrix based on the first DH parameters is as follows: Based on the definition of the first DH parameters and the coordinate system, construct the transformation matrix from the first robot joint space to the motion space. Use the chain rule to find the derivative of the transformation matrix. Based on the derivative of the transformation matrix, obtain the first Jacobian matrix.

[0107] S304: Determine the second pose transformation matrix based on the first Jacobian matrix.

[0108] Since the first Jacobian matrix is ​​the partial derivative of the second pose transformation matrix with respect to θ, the second pose transformation matrix can be derived from the first Jacobian matrix.

[0109] The third pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the second robot, can be implemented as follows:

[0110] Determine the second joint angle set of the second robot at the calibration position. The second robot includes multiple joints. The second joint angle set contains the joint angles corresponding to each joint at different calibration positions. Obtain the second DH parameters corresponding to the second joint angle set. Based on the second DH parameters, obtain the second Jacobian matrix of the second robot. Based on the second Jacobian matrix, determine the third pose transformation matrix.

[0111] There are several ways to calculate the docking error matrix between the first and second robots based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix. One such method is... Figure 5 As shown, the following steps are included:

[0112] S401: Determine the first inverse matrix of the second pose transformation matrix.

[0113] S402: Calculate the product of the first pose transformation matrix, the first inverse matrix, the third pose transformation matrix, and the docking tool size information matrix, and use it as the docking error matrix between the first robot and the second robot.

[0114] For example, the docking error matrix between the first robot and the second robot, based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix, can be calculated using the following formula:

[0115] Among them, T error The docking error matrix, T is the first inverse matrix of the second pose transformation matrix. base Let T be the first pose transformation matrix. robot2 T is the third pose transformation matrix. tool This is a matrix containing dimensions of the docking tool.

[0116] There are several ways to obtain a new second pose transformation matrix based on the second pose transformation matrix and the docking error matrix. In one implementation, such as... Figure 6 As shown, the following steps are included:

[0117] S501: Determine the partial derivative matrix of the second pose transformation matrix to obtain the first Jacobian matrix.

[0118] S502: Determine the transpose of the first Jacobian matrix.

[0119] S503: Calculate the first product of the first Jacobian matrix and the transpose of the first Jacobian matrix.

[0120] S504: Calculate the inverse matrix of the first product.

[0121] S505: Calculate the inverse matrix of the first product, the transpose of the first Jacobian matrix, and the second product of the docking error matrix, as the new second pose transformation matrix.

[0122] When calculating the new second pose transformation matrix, the first Jacobian matrix needs to be obtained. When determining the first Jacobian matrix, it can be obtained by directly calculating the partial derivative matrix of the second transformation inverse matrix. Alternatively, the first joint angle set of the first robot in the calibration position can be determined, and the first DH parameters corresponding to the first joint angle set can be obtained. Based on the first DH parameters, the first Jacobian matrix of the first robot can be obtained.

[0123] Based on the second pose transformation matrix and the docking error matrix, the new second pose transformation matrix can be calculated using the following formula:

[0124] β=(X T X) -1 X T Y, where β is the new second pose transformation matrix, X is the first Jacobian matrix, and Y is the docking error matrix.

[0125] Based on the third pose transformation matrix and the docking error matrix, the new third pose transformation matrix can be obtained as follows: determine the partial derivative matrix of the third pose transformation matrix to obtain the second Jacobian matrix, determine the transpose matrix of the second Jacobian matrix, calculate the second product of the second Jacobian matrix and the transpose matrix of the second Jacobian matrix, calculate the inverse matrix of the second product, and calculate the third product of the inverse matrix of the second product, the transpose matrix of the second Jacobian matrix, and the docking error matrix, which serves as the new third pose transformation matrix.

[0126] For example, the first Jacobian matrix and the second Jacobian matrix can also be fused, based on β1=(X1 T X1) -1 X1 T Formula Y calculates the new fusion matrix after fusing the new second pose transformation matrix and the new third pose transformation matrix. Here, β1 is the new fusion matrix after fusing the new second pose transformation matrix and the new third pose transformation matrix, X1 is the matrix after fusing the first Jacobian matrix and the second Jacobian matrix, and Y is the docking error matrix. When recalculating the error docking matrix based on β1, the second pose transformation matrix and the third pose transformation matrix are fused, and the matrix after fusing the second pose transformation matrix and the third pose transformation matrix is ​​replaced based on β1, and the new docking error matrix is ​​recalculated.

[0127] Please refer to Figure 7 This application embodiment also provides an application for Figure 1The robot calibration device 110 of the electronic device 100 includes:

[0128] The acquisition module 111 is used to acquire the first pose transformation matrix of the first robot and the second robot in the dual-robot device; and to acquire the docking tool size information matrix of the first robot and the second robot.

[0129] The determination module 112 is used to determine a second pose transformation matrix from the base coordinate system associated with the joint angle of the first robot to the end effector center; and to determine a third pose transformation matrix from the base coordinate system associated with the joint angle of the second robot to the end effector center.

[0130] The calculation module 113 is used to calculate the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix; and to obtain a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix.

[0131] The return execution module 114 is used to return to the execution of the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix, to obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix, until the docking error matrix converges and the target docking error matrix is ​​obtained;

[0132] The determining module 112 is further configured to determine the target second pose transformation matrix and the target third pose transformation matrix corresponding to the target docking target matrix;

[0133] The calibration module 115 is used to calibrate the dual-robot device based on the target second pose transformation matrix and the target third pose transformation matrix.

[0134] This application also provides an electronic device 100, which includes a processor 130 and a memory 120. The memory 120 stores computer-executable instructions, which, when executed by the processor 130, implement the robot calibration method.

[0135] This application embodiment also provides a storage medium storing a computer program, which, when executed by the processor 130, implements the robot calibration method.

[0136] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can also be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0137] Furthermore, the functional modules in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part. If the function is implemented as a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes: USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, optical disks, and other media capable of storing program code.

[0138] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.

[0139] The above descriptions are merely various embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A robot calibration method, characterized in that, The method comprises: Obtain the first pose transformation matrix between the first robot and the second robot in the dual-robot device; Determine the second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot; Determine the third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center; Obtain the matrix of docking tool size information for the first robot and the second robot; The docking error matrix between the first robot and the second robot is calculated based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix. Based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix, a new second pose transformation matrix and a new third pose transformation matrix are obtained; Return to the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix, and obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix, until the docking error matrix converges and the target docking error matrix is ​​obtained; Determine the target second pose transformation matrix and the target third pose transformation matrix corresponding to the target docking error matrix; The dual-robot device is calibrated based on the target second pose transformation matrix and the target third pose transformation matrix.

2. The method according to claim 1, characterized in that, The step of determining the second pose transformation matrix from the base coordinate system to the end effector center, which is associated with the joint angles of the first robot, includes: Determine the first joint angle set of the first robot at the calibration position, wherein the first robot includes multiple joints, and the first joint angle set includes the joint angles corresponding to each joint at different calibration positions; Obtain the first DH parameter corresponding to the first joint angle set; Based on the first DH parameters, the first Jacobian matrix of the first robot is obtained; The second pose transformation matrix is ​​determined based on the first Jacobian matrix.

3. The method according to claim 1, characterized in that, The step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix, and the docking tool size information matrix includes: Determine the first inverse matrix of the second pose transformation matrix; The product of the first pose transformation matrix, the first inverse matrix, the third pose transformation matrix, and the docking tool size information matrix is ​​calculated as the docking error matrix between the first robot and the second robot.

4. The method according to claim 1, characterized in that, The step of obtaining a new second pose transformation matrix based on the second pose transformation matrix and the docking error matrix includes: Determine the partial derivative matrix of the second pose transformation matrix to obtain the first Jacobian matrix; Determine the transpose of the first Jacobian matrix; Calculate the first product of the first Jacobian matrix and the transpose of the first Jacobian matrix; Calculate the inverse matrix of the first product; Calculate the inverse matrix of the first product, the transpose of the first Jacobian matrix, and the second product of the docking error matrix to obtain the new second pose transformation matrix.

5. The method according to claim 1, characterized in that, The step of obtaining a new third pose transformation matrix based on the third pose transformation matrix and the docking error matrix includes: The partial derivative matrix of the third pose transformation matrix is ​​determined to obtain the second Jacobian matrix; Determine the transpose of the second Jacobian matrix; Calculate the second product of the second Jacobian matrix and the transpose of the second Jacobian matrix; Calculate the inverse matrix of the second product; Calculate the inverse matrix of the second product, the transpose matrix of the second Jacobian matrix, and the third product of the docking error matrix to obtain the new third pose transformation matrix.

6. The method according to claim 1, characterized in that, The step of obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix, and the docking error matrix includes: Using the least squares method, a new second pose transformation matrix is ​​obtained based on the second pose transformation matrix and the docking error matrix; Using the least squares method, a new third pose transformation matrix is ​​obtained based on the third pose transformation matrix and the docking error matrix.

7. The method according to claim 2, characterized in that, in, The first DH parameters include, for each joint and for each calibrated position, the angle of rotation about the Z-axis, the displacement along the Z-axis, the angle of rotation about the X-axis, and the displacement along the X-axis.

8. A robot calibration device, characterized in that, The device comprises: The acquisition module is used to acquire the first pose transformation matrix of the first robot and the second robot in the dual-robot device; and to acquire the docking tool size information matrix of the first robot and the second robot. The determination module is used to determine a second pose transformation matrix from the base coordinate system associated with the joint angles of the first robot to the end effector center; and to determine a third pose transformation matrix from the base coordinate system associated with the joint angles of the second robot to the end effector center. The calculation module is used to calculate the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix; and to obtain a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix. The return execution module is used to return to the execution of the step of calculating the docking error matrix between the first robot and the second robot based on the first pose transformation matrix, the second pose transformation matrix, the third pose transformation matrix and the docking tool size information matrix, to obtaining a new second pose transformation matrix and a new third pose transformation matrix based on the second pose transformation matrix, the third pose transformation matrix and the docking error matrix, until the docking error matrix converges and the target docking error matrix is ​​obtained; The determining module is further configured to determine the target second pose transformation matrix and the target third pose transformation matrix corresponding to the target docking error matrix; The calibration module is used to calibrate the dual-robot device based on the target second pose transformation matrix and the target third pose transformation matrix.

9. An electronic device, characterized in that, It includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of the method according to any one of claims 1-7.

10. A storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the steps of the method described in any one of claims 1-7.

Citation Information

Patent Citations

  • Calibration method and calibration system for robot

    CN103302657A

  • Position calibration method and device, dual arm robot and storage medium

    CN107901038A