A method, device and equipment for calibrating an external actuator of a robot
By contacting the calibration plate at the end of the robot arm and calculating the position transformation matrix of the actuator using the structured light system, the problems of low accuracy and high cost of external actuators of the robot are solved, and high-precision and low-cost multi-pose calibration is achieved.
Patent Information
- Application Number
- CN202411976568.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2044-12-31
AI Technical Summary
In the prior art, the position transformation relationship of the external actuator of the robot is difficult to determine, resulting in low accuracy, complex measurement process and high cost, making it difficult to meet the calibration operation needs in many different scenarios.
By contacting the end of the robot arm with a calibration plate with the actuator, the circular marking points and preset transformation matrix in different positions are obtained, and combined with the pixel coordinate mapping of the structured light system and the point cloud coordinates, the position and direction vectors of the actuator under the base coordinate system of the robot arm are calculated to obtain the homogeneous transformation matrix.
High-precision actuator calibration is realized, eliminating the impact of repeated positioning errors of the robot arm, simplifying the operation process, reducing costs, and meeting the needs of multi-pose calibration.
Smart Images

Figure CN119704191B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of robot control, and particularly to a calibration method, device and equipment for an external actuator of a robot. Background Art
[0002] In the fields of electronic manufacturing and the aviation industry, robots are often used for electronic product assembly and screw assembly operations of wing skins. Among them, the operating actuator of the robot is often located at the end of the robotic arm. Compared with such actuators, the external actuator of the robot can better adapt to the flexible assembly system; the latter can adapt to hole positions of different sizes and postures during the assembly operation; it has the advantages of flexible operation, not relying on teaching operations, and a wide variety of applicable workpieces. However, when using such external actuators of the robot for assembly operations, it is difficult to determine the pose transformation relationship of the external actuator relative to the base coordinate system of the robotic arm.
[0003] Existing methods mainly include the visual tracking method and the laser interferometer measurement method, etc. Among them, the visual tracking method has low measurement accuracy; although the laser interferometer has high measurement accuracy, it has a single measurement degree of freedom, a complex operation process, high equipment cost and is sensitive to environmental disturbances, so it is difficult to meet the calibration operation requirements in a variety of different scenarios. Summary of the Invention
[0004] The present application provides a calibration method, device and equipment for an external actuator of a robot, which are used to solve the technical problems existing in the prior art, such as low accuracy, complex measurement process and high cost, resulting in difficulty in meeting the requirements of actual calibration scenarios.
[0005] In view of this, the first aspect of the present application provides a calibration method for an external actuator of a robot, including:
[0006] The end of the robotic arm with a calibration plate contacts the actuator in different poses to obtain two different circular marking points and the preset transformation matrix from the base of the robotic arm to the end;
[0007] Based on the mapping relationship between the pixel coordinates and the point cloud coordinates in the structured light system, calculate the three-dimensional point cloud coordinates of the two circular marking points respectively;
[0008] Calculate the transformation matrix between the two poses of the end of the robotic arm according to the preset transformation matrix to obtain the pose transformation matrix;
[0009] Calculate the position of the end of the actuator in the base coordinate system of the robotic arm according to the three-dimensional point cloud coordinates, the pose transformation matrix and the preset hand-eye matrix to obtain the actuator coordinates;
[0010] Calculate the direction vector of the end of the actuator in the base coordinate system of the robotic arm through the two different actuator coordinates;
[0011] Calculate the homogeneous transformation matrix for calibrating and aligning the end of the actuator according to the direction vector to obtain the calibration result.
[0012] Preferably, before obtaining two different circular marking points and the corresponding preset transformation matrix from the base to the end of the robotic arm by contacting the end of the robotic arm with a calibration plate in different poses, it further includes:
[0013] Fix the calibration plate at the end of the robotic arm, adjust the pose of the end of the robotic arm multiple times, and simultaneously take multiple images and record the pose of the end of the robotic arm to obtain the pose of the end of the robotic arm.
[0014] Determine the mapping relationship between pixel coordinates and point cloud coordinates based on the internal parameter matrices of the camera and the projector of the structured light system.
[0015] Calibrate the matrix from the camera coordinate system to the robotic arm base coordinate system according to the pose of the end of the robotic arm and the internal parameter matrix to obtain the preset hand-eye matrix.
[0016] Preferably, calculating the three-dimensional point cloud coordinates of the two circular marking points respectively based on the mapping relationship between pixel coordinates and point cloud coordinates in the structured light system includes:
[0017] Move the two circular marking points of the calibration plate into the field of view of the structured light system and take images of the marking points.
[0018] Perform a circle center marking fitting operation on the marking point image to obtain the circle center pixel coordinates.
[0019] Calculate the point cloud coordinates corresponding to the circle center pixel coordinates based on the mapping relationship between pixel coordinates and point cloud coordinates to obtain the three-dimensional point cloud coordinates of the circular marking points.
[0020] Preferably, calculating the position of the end of the actuator in the robotic arm base coordinate system according to the three-dimensional point cloud coordinates, the pose transformation matrix, and the preset hand-eye matrix to obtain the actuator coordinates includes:
[0021] Calculate the point cloud homogeneous coordinates based on the three-dimensional point cloud coordinates.
[0022] Calculate the position of the end of the actuator in the robotic arm base coordinate system according to the point cloud homogeneous coordinates, the pose transformation matrix, and the preset hand-eye matrix to obtain the actuator coordinates.
[0023] Preferably, calculating the homogeneous transformation matrix for calibrating and aligning the end of the actuator according to the direction vector to obtain the calibration result includes:
[0024] Perform a vector cross product calculation on the normalized direction vector and the normal vector of any point in the robotic arm base coordinate system to obtain the rotation axis vector.
[0025] Construct a rotation matrix based on the rotation axis vector and the vector angle, where the vector angle is the angle between the direction vector and the normal vector of any point;
[0026] Calculate the homogeneous transformation matrix for the calibration alignment of the end of the actuator according to the rotation matrix and the preset translation vector, and obtain the calibration result.
[0027] Preferably, before calculating the homogeneous transformation matrix for the calibration alignment of the end of the actuator according to the rotation matrix and the preset translation vector to obtain the calibration result, it further includes:
[0028] Take the coordinates of the actuator obtained by the first calculation as the pose homogeneous coordinates of the current circular marking point in the first pose state of the end of the robotic arm;
[0029] Construct the preset translation vector according to the pose homogeneous coordinates and the coordinates of any point.
[0030] The second aspect of the present application provides a calibration device for an external actuator of a robot, including:
[0031] A pose marking unit, configured to contact the actuator with different poses through the end of a robotic arm with a calibration plate, and obtain two different circular marking points and the corresponding preset transformation matrix from the base to the end of the robotic arm;
[0032] A coordinate calculation unit, configured to calculate the three-dimensional point cloud coordinates of the two circular marking points respectively based on the mapping relationship between the pixel coordinates and the point cloud coordinates in the structured light system;
[0033] A matrix transformation unit, configured to calculate the transformation matrix between the two poses of the end of the robotic arm according to the preset transformation matrix, and obtain the pose transformation matrix;
[0034] An end positioning unit, configured to calculate the position of the end of the actuator in the base coordinate system of the robotic arm according to the three-dimensional point cloud coordinates, the pose transformation matrix and the preset hand-eye matrix, and obtain the actuator coordinates;
[0035] A vector calculation unit, configured to calculate the direction vector of the end of the actuator in the base coordinate system of the robotic arm through the two different actuator coordinates;
[0036] A homogeneous calibration unit, configured to calculate the homogeneous transformation matrix for the calibration alignment of the end of the actuator according to the direction vector, and obtain the calibration result.
[0037] Preferably, the coordinate calculation unit is specifically configured to:
[0038] Move the two circular marking points of the calibration plate into the field of view of the structured light system, and capture an image of the marking points;
[0039] Perform a center point marking fitting operation based on the marked point image to obtain the center pixel coordinates.
[0040] Calculate the point cloud coordinates corresponding to the center pixel coordinates based on the mapping relationship between the pixel coordinates and the point cloud coordinates to obtain the three-dimensional point cloud coordinates of the circular marked point.
[0041] Preferably, the homogeneous calibration unit is specifically configured to:
[0042] Perform a vector cross product calculation based on the normalized direction vector and the normal vector of any point in the base coordinate system of the robotic arm to obtain the rotation axis vector.
[0043] Construct a rotation matrix based on the rotation axis vector and the vector angle, where the vector angle is the angle between the direction vector and the normal vector of any point.
[0044] Calculate the homogeneous transformation matrix for calibrating and aligning the end of the actuator based on the rotation matrix and the preset translation vector to obtain the calibration result.
[0045] The third aspect of the present application provides a calibration device for a robotic arm external actuator, and the device includes a processor and a memory;
[0046] The memory is used to store program code and transmit the program code to the processor;
[0047] The processor is configured to execute the robotic arm external actuator calibration method described in the first aspect according to the instructions in the program code.
[0048] From the above technical solutions, it can be seen that the embodiments of the present application have the following advantages:
[0049] In the present application, a calibration method for a robotic arm external actuator is provided, including: contacting the end of the robotic arm with a calibration plate at different poses to obtain two different circular marked points and the corresponding preset transformation matrix from the base of the robotic arm to the end; calculating the three-dimensional point cloud coordinates of the two circular marked points respectively based on the mapping relationship between the pixel coordinates and the point cloud coordinates in the structured light system; calculating the transformation matrix between the two poses of the end of the robotic arm according to the preset transformation matrix to obtain the pose transformation matrix; calculating the position of the end of the actuator in the base coordinate system of the robotic arm based on the three-dimensional point cloud coordinates, the pose transformation matrix, and the preset hand-eye matrix to obtain the actuator coordinates; calculating the direction vector of the end of the actuator in the base coordinate system of the robotic arm through two different actuator coordinates; calculating the homogeneous transformation matrix for calibrating and aligning the end of the actuator based on the direction vector to obtain the calibration result.
[0050] The robot external actuator calibration method provided by this application configures a calibration plate at the end of the robotic arm, and solves the pose information of the actuator end based on the marked points obtained from two contacts. This operation can eliminate the influence brought by the repeated positioning error of the robotic arm. Moreover, introducing a structured light system to solve the three-dimensional point cloud coordinates of the marked points has higher accuracy in the Z-axis direction. Thereafter, the homogeneous transformation matrix of the calibration result is determined through specific calculation methods such as matrices and vectors, which does not rely on complex operation processes and can also ensure the accuracy of the calculation results. The actual operation only involves taking points at different poses of the calibration plate, which can meet the calibration requirements of multiple poses and does not involve high-cost investment. Therefore, this application can solve the technical problems existing in the prior art, such as low accuracy, complex measurement process, and high cost, which make it difficult to meet the requirements of actual calibration scenarios. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] Figure 1 is a schematic flow chart of a robot external actuator calibration method provided by an embodiment of this application;
[0052] Figure 2 is a schematic structural diagram of a robot external actuator calibration device provided by an embodiment of this application;
[0053] Figure 3 is a schematic diagram of the overall structure of the robot external actuator calibration device provided by an embodiment of this application;
[0054] Figure 4 is a schematic diagram of the relationship between the circular marked points left by the actuator on the calibration plate and the corner points of the calibration plate provided by an embodiment of this application;
[0055] Figure 5 is a schematic diagram of the circular marked points on the calibration plate provided by an embodiment of this application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0056] In order to enable those skilled in the art to better understand the solution of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of this application. Obviously, the described embodiments are only a part of the embodiments of this application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of this application.
[0057] For ease of understanding, please refer to Figure 1 , an embodiment of a robot external actuator calibration method provided by this application includes:
[0058] Step 101: The end of the robotic arm with a calibration plate contacts the actuator in different poses to obtain two different circular marked points and the preset transformation matrix from the robotic arm base to the end.
[0059] Furthermore, before step 101, it also includes:
[0060] Fix the calibration board at the end of the robotic arm, adjust the pose of the end of the robotic arm multiple times, while taking multiple images and recording the pose of the end of the robotic arm to obtain the pose of the end of the robotic arm;
[0061] Determine the mapping relationship between pixel coordinates and point cloud coordinates based on the internal parameter matrices of the camera and the projector of the structured light system;
[0062] Calibrate the matrix from the camera coordinate system to the robotic arm base coordinate system according to the pose of the end of the robotic arm and the internal parameter matrix to obtain the preset hand-eye matrix.
[0063] It should be noted that, please refer to Figure 3 , the device in this embodiment includes a calibration board, a structured light scanner, a robotic arm, and an external actuator. After setting the calibration board at the end of the robotic arm, different poses of the robotic arm can be adjusted multiple times to take photos at different poses, obtain the captured images and record the pose of the end of the robotic arm at the corresponding moment to obtain the pose of the end of the robotic arm, denoted as .
[0064] After calibrating the camera and the projector inside the structured light scanner in the structured light system by the calibration board set at the end of the robotic arm, obtain its internal parameter matrix. The internal parameter matrices of the camera and the projector can be expressed as and , specifically expressed as:
[0065]
[0066]
[0067] Among them, , , , are the focal lengths of the camera and the projector on the x-axis and y-axis respectively, and their values are the ratios of the actual focal lengths of the camera and the projector to the pixel sizes on their sensors. , , , are the coordinates of the intersections of the optical axes of the camera and the projector with their image planes on the x and y axes respectively, , respectively represent the non-orthogonality between the coordinate axes of the camera and the projector. Ideally , take 0. When the imaging planes of the two are non-orthogonal, this value is not 0.
[0068] According to the end pose of the robotic arm and the internal parameter matrix, the preset hand-eye matrix from the camera coordinate system to the robotic arm base coordinate system can be calibrated. Specifically, based on the multiple calibration board images obtained above, the transformation relationship between the camera coordinate system and the origin coordinate system of the calibration board markers can be obtained. ; By means of the transformation relationship of the calibration board origin coordinates with respect to the end of the robotic arm and the transformation relationship from the robotic arm base to the end of the robotic arm an equation system can be constructed:
[0069]
[0070] Among them, is the preset hand-eye matrix, and this equation is , where i is the number of calibration board photos during internal parameter calibration, generally taking values from 25 to 40; this equation has and invariance; using the Kronecker product method to solve, the preset hand-eye matrix can be obtained:
[0071]
[0072] Among them, and respectively represent the rotation transformation relationship and the translation transformation relationship from the camera coordinate system to the robotic arm base coordinate system, where the robotic arm base coordinate system is the world coordinate system; the preset hand-eye matrix has a size of , and represents a rigid body transformation with 6 degrees of freedom.
[0073] The preset transformation matrix from the robotic arm base to the end is expressed as:
[0074]
[0075] Among them, and respectively represent the transformation relationship from the robotic arm base coordinate system to the robotic arm end coordinate system. In this embodiment, the robotic arm end needs to be operated twice to perform actions, which can be recorded as pose 1 and pose 2. When the robotic arm end with the calibration board moves to pose 1, the end of the actuator with the colored ink droplet will be in contact with the calibration board, leaving a circular marker point on the calibration board. At the same time, the transformation matrix from the robotic arm base to the end in the pose 1 state, that is, the preset transformation matrix ; Similarly, the robotic arm end can be operated again to move to pose 2, and another circular marker point and the corresponding preset transformation matrix can be determined. It should be noted that pose 2 in this embodiment is within the field of view of the light scanner of the structured light system.
[0076] Step 102: Calculate the three-dimensional point cloud coordinates of the two circular marker points respectively based on the mapping relationship between the pixel coordinates and the point cloud coordinates in the structured light system.
[0077] Further, Step 102 includes:
[0078] Move the two circular marker points of the calibration plate into the field of view of the structured light system and capture the marker point images;
[0079] Perform a centroid marker fitting operation on the marker point images to obtain the centroid pixel coordinates;
[0080] Calculate the point cloud coordinates corresponding to the centroid pixel coordinates based on the mapping relationship between the pixel coordinates and the point cloud coordinates to obtain the three-dimensional point cloud coordinates of the circular marker points.
[0081] By operating the movement of the end of the robotic arm, different poses can be achieved and two different circular marker points and the corresponding preset transformation matrices can be determined; please refer to Figure 4 and Figure 5 , then the two circular marker points of the calibration plate can be moved into the field of view of the structured light system and the marker point images can be captured; the centroid can be fitted on the marker point images according to the geometric characteristics of the images to obtain the centroid pixel coordinates, denoted as , expressed as , which uses the origin of the calibration plate as the reference coordinate system and has a size of .
[0082] The mapping relationship between the pixel coordinates and the point cloud coordinates can be expressed as:
[0083]
[0084] That is, a mapping from a two-dimensional point set to a three-dimensional point set, where:
[0085]
[0086] This process is to use the centroid pixel coordinates to search for its corresponding point cloud coordinates in the three-dimensional point set , that is, the three-dimensional point cloud coordinate C, which is established under the camera coordinate system of the structured light system.
[0087] Step 103: Calculate the transformation matrix between the two poses of the end of the robotic arm based on the preset transformation matrix to obtain the pose transformation matrix.
[0088] The two preset transformation matrices corresponding to the two circular marker points in this embodiment are respectively expressed as , , based on these two preset transformation matrices, the pose transformation of the end of the robotic arm from pose 1 to pose 2 can be calculated to obtain the pose transformation matrix. , which can be specifically expressed as:
[0089]
[0090] Step 104: Calculate the position of the end of the actuator in the base coordinate system of the robotic arm according to the 3D point cloud coordinates, the pose transformation matrix, and the preset hand-eye matrix to obtain the actuator coordinates.
[0091] Furthermore, step 104 includes:
[0092] Calculate the homogeneous coordinates of the point cloud based on the 3D point cloud coordinates;
[0093] Calculate the position of the end of the actuator in the base coordinate system of the robotic arm according to the homogeneous coordinates of the point cloud, the pose transformation matrix, and the preset hand-eye matrix to obtain the actuator coordinates.
[0094] According to the 3D point cloud coordinates C = calculated above, the homogeneous coordinates of the point cloud can be calculated. , and the specific process is expressed as:
[0095]
[0096] where, , , .
[0097] According to the homogeneous coordinates of the point cloud , the pose transformation matrix and the preset hand-eye matrix to calculate the actuator coordinates the process is expressed as:
[0098]
[0099] where, is the first pose state, that is, the actuator coordinates calculated in the pose 1 state, so it is also denoted as the pose homogeneous coordinates .
[0100] By repeating the above operations on the pose state of the end of the robotic arm, the position coordinates of another set of different circular marker points in the base coordinate system of the robotic arm can be calculated, that is, another actuator coordinate . Specifically, only need to operate the end of the robotic arm to touch the end of the actuator again, and photograph the circular marker points, record the marker points and the preset transformation matrices in the pose 3 and pose 4 states , , and then the specific actuator coordinates can be calculated according to the above method. However, in this embodiment, it is required to avoid the contact marks in the previous and subsequent times being located at the same position, which may cause the equation to be singular. Therefore, the preset transformation matrix and need to satisfy the following conditions:
[0101]
[0102]
[0103] and the dot product of the pose transformation matrix from pose 1 to pose 2 and the pose transformation matrix from pose 4 to pose 3 is not the identity matrix, that is:
[0104]
[0105] Where:
[0106]
[0107] Among them, is the pose transformation matrix of the end of the robotic arm from pose 4 to pose 3, with a size of , and the coordinates of the actuator in the base coordinate system of the robotic arm can be expressed as:
[0108]
[0109] Where:
[0110]
[0111] Among them, represents the pose transformation matrix of the end of the robotic arm from pose 1 to pose 3, with a size of , is the transformation matrix from the end of the robotic arm to the base in the pose 1 state, and is the inverse matrix of the transformation matrix from the base of the robotic arm to the end in the pose 1 state each other.
[0112] Step 105: Calculate the direction vector of the end of the actuator in the base coordinate system of the robotic arm through two different actuator coordinates.
[0113] According to the two different actuator coordinates and obtained above, the direction vector m of the end of the actuator in the base coordinate system of the robotic arm can be calculated. The specific process of determining the direction vector m is expressed as:
[0114]
[0115] Step 106: Calculate the homogeneous transformation matrix for the alignment of the end of the actuator based on the direction vector to obtain the calibration result.
[0116] Further, Step 106 includes:
[0117] Perform a vector cross product calculation on the normalized direction vector and the normal vector of any point in the base coordinate system of the robotic arm to obtain the rotation axis vector;
[0118] Construct a rotation matrix based on the rotation axis vector and the vector angle, where the vector angle is the angle between the direction vector and the normal vector of any point;
[0119] Calculate the homogeneous transformation matrix for the calibration alignment of the end of the actuator based on the rotation matrix and the preset translation vector to obtain the calibration result.
[0120] Further, before calculating the homogeneous transformation matrix for the calibration alignment of the end of the actuator based on the rotation matrix and the preset translation vector to obtain the calibration result, it also includes:
[0121] Take the actuator coordinates obtained from the first calculation as the pose homogeneous coordinates of the current circular marking point when the end of the robotic arm is in the first pose state;
[0122] Construct a preset translation vector based on the pose homogeneous coordinates and the coordinates of any point.
[0123] It should be noted that after calculating the direction vector m above, performing a normalization process on the direction vector m can obtain , and the specific process is:
[0124]
[0125] Among them, 、 、 respectively represent the components of the vector m on the x, y, and z axes in the space rectangular coordinate system. The modulus of the unnormalized direction vector m is:
[0126]
[0127] For any point in the base coordinate system of the robotic arm, it can be denoted as , and its normal vector can be denoted as . Before the calibration calculation, it is also necessary to construct a preset translation vector based on the pose homogeneous coordinates and the coordinates of any point :
[0128]
[0129] According to the normalized direction vector and the normal vector of any point A rotation axis - rotation angle model can be constructed. The rotation axis is the cross product of two vectors. Denote the rotation axis as the vector cross product vector a:
[0130]
[0131] where a x 、a y 、a z represent the components of the rotation axis a on the x, y, and z coordinate axes in the space rectangular coordinate system respectively.
[0132] The rotation angle is the angle between the two vectors:
[0133]
[0134] Then the rotation matrix can be expressed as:
[0135]
[0136] where is the identity matrix, is the skew-symmetric matrix of the rotation axis a, expressed as:
[0137]
[0138] According to the rotation matrix and the preset translation vector the homogeneous transformation matrix for the calibration alignment of the end of the actuator can be calculated:
[0139]
[0140] And according to the obtained homogeneous transformation matrix any point P in the base coordinate system of the robotic arm can be aligned to the end of the external actuator of the robotic arm. Based on this principle, the end of the robotic arm with any workpiece to be processed or assembled can be moved to the end of the actuator to complete the processing or assembly task.
[0141] The robot external actuator calibration method provided by the embodiments of the present application configures a calibration board at the end of the robotic arm, and solves the pose information of the actuator end based on the marked points obtained from two contacts. This operation can eliminate the influence brought by the repeated positioning error of the robotic arm; moreover, introducing a structured light system to solve the three-dimensional point cloud coordinates of the marked points has higher accuracy in the Z-axis direction; thereafter, the homogeneous transformation matrix of the calibration result is determined through specific calculation methods such as matrices and vectors, without relying on complex operation processes, and can also ensure the accuracy of the calculation results; the actual operation only involves taking points at different poses of the calibration board, which can meet the calibration requirements of multiple poses and does not involve high-cost investment. Therefore, the embodiments of the present application can solve the technical problems existing in the prior art, such as low accuracy, complex measurement process, and high cost, which make it difficult to meet the requirements of actual calibration scenarios.
[0142] For ease of understanding, please refer to Figure 2 , an embodiment of a robot external actuator calibration device provided by the present application includes:
[0143] A pose marking unit 201, configured to contact the actuator with different poses through the end of the robotic arm with a calibration board, to obtain two different circular marked points and the preset transformation matrix from the robotic arm base to the end;
[0144] A coordinate calculation unit 202, configured to calculate the three-dimensional point cloud coordinates of the two circular marked points respectively based on the mapping relationship between the pixel coordinates and the point cloud coordinates in the structured light system;
[0145] A matrix transformation unit 203, configured to calculate the transformation matrix between two poses of the robotic arm end according to the preset transformation matrix, to obtain a pose transformation matrix;
[0146] An end positioning unit 204, configured to calculate the position of the actuator end in the robotic arm base coordinate system according to the three-dimensional point cloud coordinates, the pose transformation matrix, and the preset hand-eye matrix, to obtain the actuator coordinates;
[0147] A vector calculation unit 205, configured to calculate the direction vector of the actuator end in the robotic arm base coordinate system through two different actuator coordinates;
[0148] A homogeneous calibration unit 206, configured to calculate the homogeneous transformation matrix for calibrating and aligning the actuator end according to the direction vector, to obtain the calibration result.
[0149] Further, the coordinate calculation unit 202 is specifically configured to:
[0150] Move the two circular marked points of the calibration board into the field of view of the structured light system, and capture an image of the marked points;
[0151] Perform a center mark fitting operation according to the marked point image to obtain the center pixel coordinates;
[0152] Calculate the point cloud coordinates corresponding to the center pixel coordinates based on the mapping relationship between the pixel coordinates and the point cloud coordinates, and obtain the three-dimensional point cloud coordinates of the circular marker points.
[0153] Furthermore, the homogeneous calibration unit 206 is specifically configured to:
[0154] Perform a vector cross product calculation based on the normalized direction vector and the normal vector of any point in the robot base coordinate system to obtain the rotation axis vector;
[0155] Construct a rotation matrix based on the rotation axis vector and the vector angle, where the vector angle is the angle between the direction vector and the normal vector of any point;
[0156] Calculate the homogeneous transformation matrix for calibrating and aligning the end of the actuator based on the rotation matrix and the preset translation vector, and obtain the calibration result.
[0157] This application also provides a calibration device for a robot external actuator, and the device includes a processor and a memory;
[0158] The memory is used to store program code and transmit the program code to the processor;
[0159] The processor is configured to execute the calibration method for the robot external actuator in the above method embodiments according to the instructions in the program code.
[0160] In several embodiments provided by this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the units is only a logical function division, and there may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed mutual coupling or direct coupling or communication connection can be through some interfaces, and the indirect coupling or communication connection of the device or unit can be in electrical, mechanical or other forms.
[0161] The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they can be located in one place, or they can be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0162] In addition, in each embodiment of this application, the functional units can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units.
[0163] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all 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 for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present application. The foregoing storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memories (English full name: Read-Only Memory, English abbreviation: ROM), random access memories (English full name: Random Access Memory, English abbreviation: RAM), magnetic disks, or optical discs.
[0164] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the various embodiments of the present application.
Claims
1. A calibration method for a robot external actuator, characterized in that, Including: The end of the robotic arm with a calibration board contacts the actuator in different poses to obtain two different circular marker points and the corresponding preset transformation matrix from the robotic arm base to the end; Based on the mapping relationship between pixel coordinates and point cloud coordinates in the structured light system, calculate the three-dimensional point cloud coordinates of the two circular marker points respectively; Calculate the transformation matrix between the two poses of the robotic arm end according to the preset transformation matrix to obtain the pose transformation matrix; Calculate the position of the actuator end in the robotic arm base coordinate system according to the three-dimensional point cloud coordinates, the pose transformation matrix and the preset hand-eye matrix to obtain the actuator coordinates; Calculate the direction vector of the actuator end in the robotic arm base coordinate system through two different actuator coordinates; Calculate the homogeneous transformation matrix for calibrating and aligning the actuator end according to the direction vector to obtain the calibration result.
2. The calibration method of the external actuator of the robot according to claim 1, characterized in that, Before the end of the robotic arm with a calibration board contacts the actuator in different poses to obtain two different circular marker points and the corresponding preset transformation matrix from the robotic arm base to the end, it further includes: Fix the calibration board at the end of the robotic arm, adjust the pose of the robotic arm end multiple times, and simultaneously take multiple images and record the pose of the robotic arm end to obtain the pose of the robotic arm end; Determine the mapping relationship between pixel coordinates and point cloud coordinates based on the internal parameter matrices of the camera and projector in the structured light system; Calibrate the matrix from the camera coordinate system to the robotic arm base coordinate system according to the pose of the robotic arm end and the internal parameter matrix to obtain the preset hand-eye matrix.
3. The calibration method for the external actuator of the robot according to claim 1, wherein The calculating the three-dimensional point cloud coordinates of the two circular marker points respectively based on the mapping relationship between pixel coordinates and point cloud coordinates in the structured light system includes: Move the two circular marker points of the calibration board into the field of view of the structured light system and take marker point images; Perform a center point marker fitting operation according to the marker point images to obtain the center pixel coordinates; Calculate the point cloud coordinates corresponding to the center pixel coordinates based on the mapping relationship between pixel coordinates and point cloud coordinates to obtain the three-dimensional point cloud coordinates of the circular marker points.
4. The calibration method for the external actuator of the robot according to claim 1, wherein The calculating the position of the actuator end in the robotic arm base coordinate system according to the three-dimensional point cloud coordinates, the pose transformation matrix and the preset hand-eye matrix to obtain the actuator coordinates includes: Calculate the point cloud homogeneous coordinates according to the three-dimensional point cloud coordinates; Calculate the position of the actuator end in the robotic arm base coordinate system according to the point cloud homogeneous coordinates, the pose transformation matrix and the preset hand-eye matrix to obtain the actuator coordinates.
5. The calibration method for the external actuator of a robot according to claim 1, characterized in that, The calculating the homogeneous transformation matrix for calibrating and aligning the actuator end according to the direction vector to obtain the calibration result includes: Perform a vector cross product calculation according to the normalized direction vector and the normal vector of any point in the robotic arm base coordinate system to obtain the rotation axis vector; Construct a rotation matrix according to the rotation axis vector and the vector angle, where the vector angle is the angle between the direction vector and the normal vector of any point; Calculate the homogeneous transformation matrix for calibrating and aligning the actuator end according to the rotation matrix and the preset translation vector to obtain the calibration result.
6. The calibration method for the external actuator of the robot according to claim 5, characterized in that Before calculating the homogeneous transformation matrix for calibrating and aligning the end of the actuator according to the rotation matrix and the preset translation vector to obtain the calibration result, it further includes: Taking the actuator coordinates obtained from the first calculation as the pose homogeneous coordinates of the current circular marker point when the end of the robotic arm is in the first pose state; Constructing the preset translation vector according to the pose homogeneous coordinates and the arbitrary point coordinates.
7. A calibration device for an external actuator of a robot, characterized in that, It includes: A pose marking unit for contacting the actuator with different poses at the end of the robotic arm with a calibration plate to obtain two different circular marker points and the preset transformation matrix from the base of the robotic arm to the end; A coordinate calculation unit for respectively calculating the three-dimensional point cloud coordinates of the two circular marker points based on the mapping relationship between the pixel coordinates and the point cloud coordinates in the structured light system; A matrix transformation unit for calculating the transformation matrix between the two poses at the end of the robotic arm according to the preset transformation matrix to obtain the pose transformation matrix; An end positioning unit for calculating the position of the end of the actuator in the base coordinate system of the robotic arm according to the three-dimensional point cloud coordinates, the pose transformation matrix and the preset hand-eye matrix to obtain the actuator coordinates; A vector calculation unit for calculating the direction vector of the end of the actuator in the base coordinate system of the robotic arm through two different actuator coordinates; A homogeneous calibration unit for calculating the homogeneous transformation matrix for calibrating and aligning the end of the actuator according to the direction vector to obtain the calibration result.
8. The calibration device for the external actuator of a robot according to claim 7, characterized in that, The coordinate calculation unit is specifically used for: Moving the two circular marker points of the calibration plate into the field of view of the structured light system and taking images of the marker points; Performing a center marker fitting operation on the marker point images to obtain the center pixel coordinates; Calculating the point cloud coordinates corresponding to the center pixel coordinates based on the mapping relationship between the pixel coordinates and the point cloud coordinates to obtain the three-dimensional point cloud coordinates of the circular marker point.
9. The calibration device for the external actuator of the robot according to claim 7, characterized in that The homogeneous calibration unit is specifically used for: Performing a vector cross product calculation according to the normalized direction vector and the normal vector of an arbitrary point in the base coordinate system of the robotic arm to obtain the rotation axis vector; Constructing a rotation matrix according to the rotation axis vector and the vector included angle, where the vector included angle is the included angle between the direction vector and the normal vector of the arbitrary point; Calculating the homogeneous transformation matrix for calibrating and aligning the end of the actuator according to the rotation matrix and the preset translation vector to obtain the calibration result.
10. An external actuator calibration device for a robot, characterized in that, The device includes a processor and a memory; The memory is used for storing program codes and transmitting the program codes to the processor; The processor is used for executing the calibration method for the external actuator of the robot according to any one of claims 1-6 according to the instructions in the program codes.
Citation Information
Patent Citations
Flexible three-dimensional visual guidance robot alignment system and method
CN114248086A
Locking positioning method, screw locking method, locking positioning device and screw machine
CN114619233A