A parameter compensation method, apparatus, device, and storage medium

By acquiring theoretical and actual DH parameters of the robot, and combining numerical solution algorithms and iterative initial values ​​for parameter compensation, the problem of low absolute positioning accuracy of the robot was solved, and higher precision positioning was achieved.

CN115391728BActive Publication Date: 2026-03-06SHANGHAI JIEKA ROBOT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-20
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

In existing technologies, the absolute positioning accuracy of robots is lower than the repeatability accuracy, mainly because it is difficult to obtain complete actual DH parameters for parameter compensation.

Method used

By obtaining the robot's theoretical and actual DH parameters, and combining the current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration, the target algorithm is determined, and the actual DH parameters are compensated using iterative initial values ​​and numerical solution algorithms.

Benefits of technology

This improves the robot's absolute positioning accuracy, ensuring the precision of parameter compensation results and the speed of iterative convergence.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115391728B_ABST
    Figure CN115391728B_ABST
Patent Text Reader

Abstract

This invention discloses a parameter compensation method, apparatus, device, and storage medium. The method includes: acquiring theoretical and actual DH parameters of a robot; determining a target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration; determining initial iteration values ​​based on the target algorithm; and performing parameter compensation on the actual DH parameters using the target algorithm based on the initial iteration values, the theoretical DH parameters, the actual DH parameters, and the desired end-effector Cartesian pose. This scheme can compensate for the robot's actual DH parameters, thereby improving the robot's absolute positioning accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computers, and more particularly to a parameter compensation method, apparatus, device, and storage medium. Background Technology

[0002] Currently, when locating robots, the absolute positioning accuracy is far lower than the repeatability accuracy. This is because it is difficult to obtain the parameter compensation results for all actual DH parameters when performing parameter compensation on the robot. Therefore, how to perform parameter compensation on all actual DH parameters to improve the robot's absolute positioning accuracy is a problem that needs to be solved. Summary of the Invention

[0003] This invention provides a parameter compensation method, apparatus, device, and storage medium that can compensate for the actual DH parameters of a robot to improve the robot's absolute positioning accuracy.

[0004] According to one aspect of the present invention, a parameter compensation method is provided, comprising:

[0005] Obtain the theoretical and actual DH parameters of the robot;

[0006] Based on the robot's current joint position, desired end effector Cartesian pose, and the singularity of the robot's configuration, a target algorithm is determined, and initial values ​​for iteration are determined based on the target algorithm.

[0007] Based on the initial iteration value, the theoretical DH parameters, the actual DH parameters, and the desired terminal Cartesian pose, the actual DH parameters are compensated using the target algorithm.

[0008] According to another aspect of the present invention, a parameter compensation device is provided, the device comprising:

[0009] The parameter acquisition module is used to acquire the robot's theoretical DH parameters and actual DH parameters;

[0010] The iteration initial value determination module is used to determine the target algorithm based on the robot's current joint position, desired end effector Cartesian pose, and the singularity of the robot's configuration, and to determine the iteration initial value based on the target algorithm.

[0011] The parameter compensation module is used to compensate the actual DH parameters according to the initial iteration value, the theoretical DH parameters, the actual DH parameters, and the desired end Cartesian pose, using the target algorithm.

[0012] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:

[0013] At least one processor; and

[0014] A memory communicatively connected to the at least one processor; wherein,

[0015] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the parameter compensation method according to any embodiment of the present invention.

[0016] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the parameter compensation method described in any embodiment of the present invention.

[0017] The technical solution of this invention involves obtaining the theoretical and actual DH parameters of the robot; determining a target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration; determining initial iteration values ​​based on the target algorithm; and compensating the actual DH parameters using the target algorithm based on the initial iteration values, theoretical DH parameters, actual DH parameters, and the desired end-effector Cartesian pose. This solution determines suitable initial values ​​for numerical solution iteration based on the robot's current joint position and desired end-effector Cartesian pose; and when compensating the actual DH parameters, iterative calculations are performed using numerical solution methods based on the initial iteration values ​​to obtain the parameter compensation results. This improves the iteration convergence speed while ensuring the accuracy of the parameter compensation results, thereby improving the robot's absolute positioning accuracy.

[0018] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0019] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0020] Figure 1A This is a flowchart of a parameter compensation method provided in Embodiment 1 of the present invention;

[0021] Figure 1B This is a schematic diagram of a DH coordinate system provided in Embodiment 1 of the present invention;

[0022] Figure 2This is a flowchart of a parameter compensation method provided in Embodiment 2 of the present invention;

[0023] Figure 3 This is a flowchart of a parameter compensation method provided in Embodiment 3 of the present invention;

[0024] Figure 4 This is a flowchart of a parameter compensation method provided in Embodiment 4 of the present invention;

[0025] Figure 5 This is a schematic diagram of the structure of a parameter compensation device provided in Embodiment 5 of the present invention;

[0026] Figure 6 This is a schematic diagram of the structure of an electronic device provided in Embodiment Six of the present invention. Detailed Implementation

[0027] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0028] It should be noted that the terms "current," "target," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "etc.", and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0029] Currently, solving robot inverse kinematics can be divided into two methods: analytical solutions and numerical solutions. Analytical solutions for robot inverse kinematics are applicable to robot configurations that satisfy the Pieper criterion, which states that the three adjacent joint axes of a robot intersect at a single point or that the three axes are parallel. Because analytical solutions are simple to solve and computationally fast, meeting the requirements of real-time control environments, robot manufacturers often use analytical solutions for inverse kinematics calculations during motion planning. However, due to errors in manufacturing, processing, and assembly processes, there are discrepancies between the actual and theoretical DH parameters of the robot. Some of these DH parameter errors will cause the robot to no longer satisfy the Pieper criterion. When using analytical solutions to calculate the inverse kinematics of a robot with DH parameter errors, only a portion of the DH parameters that do not affect the robot's satisfaction of the Pieper criterion can be compensated, rather than compensating for all DH parameters, thus limiting the improvement of the robot's absolute positioning accuracy. Therefore, this embodiment provides a parameter compensation method that can improve the accuracy of parameter compensation results, thereby improving the robot's absolute positioning accuracy.

[0030] Example 1

[0031] Figure 1A This document provides a flowchart of a parameter compensation method according to Embodiment 1 of the present invention. This embodiment is applicable to situations requiring parameter compensation, particularly for compensating the actual DH parameters of a robot. The method can be executed by a parameter compensation device, which can be implemented in hardware and / or software and can be configured in an electronic device. Figure 1A As shown, the method includes:

[0032] S101. Obtain the theoretical DH parameters and actual DH parameters of the robot.

[0033] Theoretical DH parameters are defined during robot design based on the robot's actual application scenario and shape characteristics. Actual DH parameters refer to the DH parameters of a robot that has already been manufactured. There may be a certain parameter error between the theoretical and actual DH parameters. This error can lead to low pose accuracy when performing absolute positioning of the robot based on the DH parameters.

[0034] DH parameters refer to the mathematical model and coordinate system for determining the positional and angular relationships between two pairs of joint links in a robotic arm, expressed using four parameters. In the DH parameter expression: link length *a* is the length of the common normal between the axes of the two joints (rotation axis of a rotary joint, translation axis of a translational joint); link offset *d* is the distance along the joint axis between the common normal of one joint and the next joint, and between the common normal of one joint and the previous joint; link torsion *α* is the angle of rotation of one joint's axis relative to the axis of another joint about their common normal; joint rotation angle *θ* is the angle of rotation around the joint axis between the common normal of one joint and the next joint, and between the common normal of one joint and the previous joint.

[0035] In the DH parameter system, the axis of a joint is defined as the Z-axis; the common normal is defined as the X-axis, and the direction of the X-axis is from the current joint to the next joint. X-axis rotation is generally represented by α; X-axis translation is generally represented by a; Z-axis rotation is generally represented by θ; and Z-axis translation is generally represented by d.

[0036] Specifically, the theoretical DH parameters of the robot are obtained according to the robot model. The obtained theoretical DH parameter table is shown in Table 1.

[0037] Table 1

[0038] i a α d θ 1 0 0 d1 (0) 2 0 90 0 (0) 3 a2 0 0 (0) 4 a3 0 d4 (0) 5 0 90 d5 (0) 6 0 -90 d6 (0)

[0039] The robot's DH coordinate system is established according to the MDH method. The established DH coordinate system is as follows: Figure 1B As shown in Table 2, the robot's DH parameters are measured in the DH coordinate system to obtain the robot's actual DH parameters.

[0040] Table 2

[0041] i a α d θ 1 0 α0_real d1_real (th1_real) 2 0 aα1_real 0 (th2_real) 3 a2_real aα2_real 0 (th3_real) 4 a3_real aα3_real d4_real (th4_real) 5 0 aα4_real d5_real (th5_real) 6 0 aα5_real d6_real (th6_real)

[0042] S102. Determine the target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration, and determine the initial values ​​for iteration based on the target algorithm.

[0043] In this context, the current joint position of the robot refers to the position of each joint of the robot at the current moment. Cartesian pose refers to the robot's pose representation in Cartesian space; end-effector Cartesian pose refers to the pose representation of the robot's end-effector joint in Cartesian space; desired end-effector Cartesian pose refers to the expected end-effector Cartesian pose set according to actual needs. Iteration initial value refers to the parameter value used as the initial value for iterative calculation when compensating for the robot's DH parameters. The target algorithm includes: a numerical solution algorithm with high computational cost but not dependent on an analytical solution, and a numerical solution algorithm with high computational cost but not dependent on an analytical solution. For ease of understanding, in this invention, the numerical solution algorithm with high computational cost but not dependent on an analytical solution is simply referred to as a numerical solution algorithm, and the numerical solution algorithm with high computational cost but not dependent on an analytical solution is simply referred to as an analytical solution algorithm.

[0044] The singularity of a robot configuration refers to whether the robot is in a singular or non-singular configuration.

[0045] Specifically, the desired Cartesian pose of the robot's end effector is set according to actual needs, and the desired Cartesian pose is calibrated using the RPY robot coordinate system. The calibrated desired Cartesian pose can then be used... Equation (1) is the expression for the desired end-effector Cartesian pose in RPY.

[0046] (1)

[0047] in, This determines the position of the robot's end effector in Cartesian space. It determines the robot's posture in the end-effector space.

[0048] Then, use RPY to calibrate the current joint position. The calibrated current joint position can be used... Equation (2) represents the pose expression of the current joint position under RPY:

[0049] (2)

[0050] The algorithm determines whether the robot is in a singular configuration based on the desired end-effector Cartesian pose, the current joint position, and the analytical solution of inverse kinematics. If the robot is in a singular configuration, a numerical solution algorithm is selected as the target algorithm; if the robot is in a non-singular configuration, an analytical solution algorithm is selected as the target algorithm.

[0051] Singular configuration refers to a special configuration of a robot mechanism, specifically the configuration where the robot's Jacobian matrix is ​​reduced in rank. For a six-degree-of-freedom robot, the Jacobian matrix at a singular configuration is non-invertible. In robot kinematics, the Jacobian matrix represents the partial differential relationship between the robot's end-effector pose and the positions of its joints.

[0052] Based on the desired end-effector Cartesian pose and the current joint position, the initial values ​​for iteration are determined using a target algorithm. These initial values ​​can be obtained using... express.

[0053] S103. Based on the initial iteration value, theoretical DH parameters, actual DH parameters, and desired terminal Cartesian pose, the actual DH parameters are compensated using a numerical solution algorithm.

[0054] Numerical solution algorithms refer to methods for solving the inverse kinematics of a robot. The numerical solution of inverse kinematics can be achieved using the robot's inverse kinematics formulas. Optionally, numerical solution algorithms may include equivalent transformation numerical solution methods and the Newton-Raphson iteration method.

[0055] Specifically, based on the initial iteration value, theoretical DH parameters, actual DH parameters, and desired end Cartesian pose, iterative calculations are performed using a numerical solution algorithm to compensate for the actual DH parameters, and the parameter compensation result is determined based on the iterative calculation results.

[0056] It should be noted that in the robot's DH parameters, parameters a, d, and When parameter errors exist, but parameter α is error-free, the robot still satisfies the Pieper criterion. Therefore, it does not affect the use of analytical solution algorithms to solve for the actual DH parameters using the robot's inverse kinematics formula, thus obtaining the parameter compensation result. However, when parameter α has errors, the robot's adjacent three axes are no longer parallel. In this case, the robot no longer satisfies the Pieper criterion, and analytical solution algorithms are no longer suitable for parameter compensation of the actual DH parameters.

[0057] This embodiment uses a numerical solution algorithm to compensate for the actual DH parameters based on the initial iteration value, theoretical DH parameters, actual DH parameters, and desired end Cartesian pose. This can achieve parameter compensation for all actual DH parameters, thereby obtaining more complete and accurate parameter compensation results.

[0058] The technical solution provided in this embodiment obtains the theoretical and actual DH parameters of the robot; determines a target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration; determines initial iteration values ​​based on the target algorithm; and compensates the actual DH parameters using the target algorithm based on the initial iteration values, theoretical DH parameters, actual DH parameters, and the desired end-effector Cartesian pose. This solution determines suitable initial values ​​for numerical solution iteration based on the robot's current joint position and desired end-effector Cartesian pose; and when compensating the actual DH parameters, iterative calculations are performed using numerical solution methods based on the initial iteration values ​​to obtain the parameter compensation results. This improves the iteration convergence speed while ensuring the accuracy of the parameter compensation results, thereby improving the robot's absolute positioning accuracy.

[0059] Example 2

[0060] Figure 2 This is a flowchart of a parameter compensation method provided in Embodiment 2 of the present invention. This embodiment optimizes the above embodiment and provides a preferred method for determining the initial value of the iteration. Specifically, as shown... Figure 2 As shown, the method includes:

[0061] S201. Obtain the theoretical DH parameters and actual DH parameters of the robot.

[0062] S202. Determine whether the robot is in a singular configuration; if yes, proceed to S203; if no, proceed to S204.

[0063] Specifically, the robot's end-effector pose is detected and used as the robot's end-effector pose. The robot's Jacobian matrix is ​​determined based on the partial differential relationship between the end-effector pose and the positions of each joint. The Jacobian matrix is ​​then used to determine whether the robot is in a singular configuration. If the Jacobian matrix is ​​a reduced-rank matrix, the robot is determined to be in a singular configuration; if it is not, the robot is determined to be in a non-singular configuration.

[0064] S203. Use the robot's current joint position as the initial value for iteration.

[0065] Specifically, if the robot is in a singular configuration, the current joint position is used as the initial value for iteration, i.e. .

[0066] S204. Determine the initial values ​​for iteration based on the desired end-effector Cartesian pose, the current joint position, and the analytical solution algorithm in the target algorithm.

[0067] Specifically, if the robot is in a non-singular configuration, multiple sets of joint positions are calculated based on the desired end-effector Cartesian pose and the analytical solution algorithm in the target algorithm; based on the comparison results between the current joint position and the multiple sets of joint positions, the initial value for iteration is determined from the multiple sets of joint positions.

[0068] For example, if the robot is in a non-singular position, multiple joint positions can be determined based on the analytical solution algorithm and the desired Cartesian pose of the end effector. Then, based on the target joints affected by the robot's singular configuration and the multiple joint positions, one set of joint positions is selected as the initial value for iteration. Specifically, this can be achieved through the following sub-steps:

[0069] S2041. Based on the analytical solution algorithm, determine multiple sets of joint positions according to the desired end-effector Cartesian pose.

[0070] It should be noted that for a six-DOF robot, three singular configurations may occur: shoulder singularity, elbow singularity, and wrist singularity. A six-DOF robot is also called a six-axis robot. Common six-axis robots include a rotational S-axis, a lower arm L-axis, an upper arm U-axis, a wrist rotation R-axis, a wrist swing B-axis, and a wrist flexion T-axis. The robot joints corresponding to the six axes work together to achieve the six-DOF movements of the robot's end effector.

[0071] Of the robot's six axes, the first axis connects to the chassis and is the load-bearing and core position, bearing the weight of the entire robot and its large horizontal swing. The second axis is an important axis for controlling the robot's forward and backward swing and extension. The third axis also controls the robot's forward and backward swing, but the swing amplitude is much smaller than that of the second axis. The fourth axis controls the upper arm to rotate 180 degrees freely, equivalent to a human forearm. The fifth axis is equivalent to the robot's wrist. The sixth axis is equivalent to a turntable that can rotate 360 ​​degrees horizontally.

[0072] When the intersection of the robot's fifth and sixth axes lies within the plane formed by the robot's first and second axes, the robot is in a singular configuration of the shoulder singularity; when the robot's second and third axes lie on the same straight line, the robot is in a singular configuration of the elbow singularity; when the axes of the robot's fourth and sixth axes are parallel, the robot is in a singular configuration of the wrist singularity.

[0073] Specifically, based on the desired end-effector Cartesian pose and the analytical solution algorithm, eight sets of joint positions can be obtained, and each set of joint positions can make the robot's end-effector pose reach the desired end-effector Cartesian pose.

[0074] S2042. Determine the target joint affected when the robot is in a singular configuration.

[0075] Specifically, when the robot is in a singular configuration at the shoulder, the target joint is determined to be the robot joint corresponding to the first axis, i.e., the first joint; when the robot is in a singular configuration at the elbow, the target joint is determined to be the robot joint corresponding to the third axis, i.e., the third joint; when the robot is in a singular configuration at the wrist, the target joint is determined to be the robot joint corresponding to the fifth axis, i.e., the fifth joint.

[0076] S2043. Based on the joint position of the target joint in the multiple sets of joint positions and the joint position of the target joint in the current joint position, select a set of joint positions from the multiple sets of joint positions as the initial value for iteration.

[0077] Specifically, such as Figure 1B Taking the robot configuration shown where the fourth, fifth, and sixth axes intersect at a point as an example, we can subtract all the first joint positions in the eight joint positions from the current first joint position to obtain eight first joint position differences. From these eight first joint position differences, we select the four smaller differences and use the four joint positions corresponding to these four selected differences as the first joint group.

[0078] Next, subtract the current fifth joint position from all the fifth joint positions in the four first joint groups to obtain four fifth joint position differences. From the four fifth joint differences, select the two smaller fifth joint position differences, and use the two groups of joint positions corresponding to the selected two fifth joint position differences as the second joint group.

[0079] Finally, subtract the current third joint position from all the third joint positions in the two sets of second joints to obtain the difference between the two third joint positions. From the two third joint position differences, select the set of joint positions corresponding to the smallest third joint position difference as the initial value for iteration.

[0080] It is understood that this embodiment fully considers the computational differences between the robot in singular and non-singular configurations, and determines the optimal initial value for iteration from multiple analytical solutions based on the analysis of the robot's singular configuration. This can improve the convergence speed while ensuring the continuity of joint velocities during trajectory planning.

[0081] S205. Based on the initial iteration value, theoretical DH parameters, actual DH parameters, and desired end Cartesian pose, perform parameter compensation on the actual DH parameters using the target algorithm.

[0082] The technical solution of this embodiment obtains the theoretical and actual DH parameters of the robot; determines whether the robot is in a singular configuration; if so, the current joint position of the robot is used as the initial value for iteration; if not, the initial value for iteration is determined based on the desired end-effector Cartesian pose, the current joint position, and the analytical solution algorithm in the target algorithm; and the actual DH parameters are compensated by the target algorithm based on the initial value for iteration, the theoretical DH parameters, the actual DH parameters, and the desired end-effector Cartesian pose. This solution, in determining the initial value for iteration, fully considers whether the robot is in a singular configuration. It can obtain accurate initial values ​​for iteration regardless of whether the robot is in a singular or non-singular configuration, and by compensating the actual DH parameters of the robot based on these initial values, more accurate parameter compensation results can be obtained, thereby further improving the absolute positioning accuracy of the robot.

[0083] Example 3

[0084] Figure 3 This is a flowchart of a parameter compensation method provided in Embodiment 3 of the present invention. This embodiment optimizes the above embodiments and provides a preferred method for parameter compensation of actual DH parameters. Specifically, as shown... Figure 3 As shown, the method includes:

[0085] S301. Obtain the theoretical DH parameters and actual DH parameters of the robot.

[0086] S302. Determine the target algorithm based on the robot's current joint position, desired end effector Cartesian pose, and the singularity of the robot's configuration, and determine the initial values ​​for iteration based on the target algorithm.

[0087] S303. Determine the homogeneous transformation matrix based on the theoretical DH parameters and the DH coordinate system.

[0088] The homogeneous transformation matrix can be used to describe the process by which a coordinate system can be transformed into another coordinate system through translation and rotation.

[0089] Specifically, based on the theoretical DH parameters in Table 1 and Figure 1B Using the DH coordinate system shown, the homogeneous transformation matrix is ​​calculated. The homogeneous transformation matrix is ​​shown in equation (3):

[0090] (3)

[0091] in, It is a homogeneous transformation matrix. , , , .

[0092] S304. Based on the initial values ​​of the iteration, the theoretical DH parameters, and the homogeneous transformation matrix, determine the joint position for the next iteration using the target algorithm.

[0093] Here, the next iteration joint position refers to the result of the next iteration calculation obtained by iteratively calculating the current iteration joint position. The current iteration joint position refers to the calculated result of the iterative joint position at the current moment, obtained by iterative calculation using a numerical solution algorithm based on the initial iteration value.

[0094] Specifically, based on the initial value of the iteration The robot's joint positions are iteratively calculated using a numerical solution algorithm. The current iteration joint position is determined based on the calculation results. The current iteration joint position can be used... Let i represent the iteration number. Based on the current iteration joint position, theoretical DH parameters, and homogeneous transformation matrix, the inverse kinematics analytical solution is calculated to obtain the joint position for the next iteration. The joint position for the next iteration can be obtained using... express.

[0095] For example, the joint position for the next iteration can be determined through the following sub-steps. Specifically:

[0096] S3041. Determine the theoretical terminal Cartesian pose based on the initial iteration value and the theoretical DH parameters.

[0097] Specifically, using iterative initial values By using a numerical solution algorithm, the joint positions of the robot are iteratively calculated to obtain... , where i is a positive integer. According to By combining the theoretical DH parameters with the robot's forward kinematics formulas, we can calculate the robot's end-effector Cartesian pose corresponding to the theoretical DH parameters, i.e., the theoretical end-effector Cartesian pose. .

[0098] S3042. Determine the equivalent pose based on the theoretical terminal Cartesian pose and homogeneous transformation matrix.

[0099] The equivalent pose is the matrix expression of the theoretical terminal Cartesian pose, which is calculated based on the homogeneous transformation matrix.

[0100] Specifically, according to and Calculate the equivalent pose. Equation (4) is the formula for calculating the equivalent pose.

[0101] (4)

[0102] in, For equivalent pose, , and j is a positive integer.

[0103] S3043. Based on the equivalent pose and theoretical DH parameters, determine the joint position for the next iteration using the analytical solution algorithm in the target algorithm.

[0104] Specifically, according to Based on the theoretical DH parameters and the analytical solution algorithm of robot inverse kinematics, multiple sets of next joint positions can be obtained by performing analytical solution calculation through inverse kinematics formula. From these multiple sets of next joint positions, one set of next joint positions is selected as the next iteration joint position.

[0105] The above method can obtain a more accurate joint position for the next iteration.

[0106] S305. Determine the current end effector Cartesian pose based on the joint position of the next iteration and the actual DH parameters.

[0107] The current end-effector Cartesian pose refers to the robot's actual end-effector Cartesian pose at the current moment.

[0108] Specifically, based on the joint position in the next iteration By performing forward kinematics calculations using the robot's forward kinematics formulas on the actual DH parameters, the current end effector Cartesian pose corresponding to the current iteration joint position can be obtained. . Pose in RPY can be used Equation (5) means that Pose expression in RPY.

[0109] (5)

[0110] S306. Determine the pose difference based on the current end-effector Cartesian pose and the desired end-effector Cartesian pose.

[0111] The pose difference refers to the difference between the current end-effector Cartesian pose and the desired end-effector Cartesian pose. The pose difference includes the position difference. and posture difference .

[0112] Specifically, the difference between the current end-effector Cartesian pose and the desired end-effector Cartesian pose is calculated, and this difference is used as the pose difference. The position difference is part of the pose difference. The calculation formula is shown in equation (6):

[0113] (6)

[0114] Posture difference in pose difference The orientation difference can be determined according to the rotation transformation formula in the differential motion algorithm. The formula for calculating the orientation difference is shown in equation (7):

[0115] (7)

[0116] in, for The rotation matrix, and for The rotation matrix.

[0117] S307. Perform parameter compensation on the actual DH parameters based on the pose difference and the number of iterations.

[0118] Specifically, if the pose difference and the number of iterations meet the set iterative calculation conditions, the iterative calculation is stopped, and the joint position of the next iteration is used as the parameter compensation result of the actual DH parameters.

[0119] For example, a method for compensating the actual DH parameters based on the pose difference and the number of iterations can be as follows: if the pose difference is less than a set threshold and the number of iterations is less than the iteration number threshold, then the joint position of the next iteration is used as the compensation result for compensating the actual DH parameters of the robot.

[0120] Specifically, based on actual needs, a threshold value and an iteration count threshold are preset. If the pose difference is less than the preset threshold, then... This serves as the parameter compensation result for the actual DH parameters. If the pose difference is greater than a set threshold, and the number of iterations is less than the iteration count threshold, then the number of iterations... Then return to execute S304. If the pose difference is greater than the set threshold and the number of iterations is greater than the iteration count threshold, then the iteration calculation is determined to have failed.

[0121] It is understandable that this embodiment sets a threshold value and an iteration count threshold as iterative calculation conditions, which can improve the efficiency of parameter compensation.

[0122] The technical solution of this embodiment obtains the theoretical and actual DH parameters of the robot; determines the target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration; determines the initial values ​​for iteration based on the target algorithm; determines the homogeneous transformation matrix based on the theoretical DH parameters and the DH coordinate system; determines the joint position for the next iteration using the target algorithm based on the initial values, theoretical DH parameters, and homogeneous transformation matrix; determines the current end-effector Cartesian pose based on the next iteration joint position and actual DH parameters; determines the pose difference between the current and desired end-effector Cartesian poses; and compensates the actual DH parameters based on the pose difference and the number of iterations. This solution proposes a method to calculate the inverse kinematics numerical solution using the initial values, theoretical DH parameters, and desired end-effector Cartesian pose, and then compensates the actual DH parameters based on the calculation results. This achieves the goal of compensating all actual DH parameters and obtaining accurate parameter compensation results.

[0123] Example 4

[0124] Figure 4 This is a flowchart of a parameter compensation method provided in Embodiment 4 of the present invention. This embodiment optimizes the above embodiments and provides another preferred method for parameter compensation of the robot's actual DH parameters. Specifically, as shown... Figure 4 As shown, the method includes:

[0125] S401. Obtain the theoretical DH parameters and actual DH parameters of the robot.

[0126] S402. Based on the robot's current joint position, desired end effector Cartesian pose, and the singularity of the robot's configuration, determine the target algorithm, and determine the initial values ​​for iteration based on the target algorithm.

[0127] S403. Determine the homogeneous transformation matrix based on the theoretical DH parameters and the DH coordinate system.

[0128] S404. Based on the initial values ​​of the iteration, the theoretical DH parameters, and the homogeneous transformation matrix, determine the joint position for the next iteration using the target algorithm.

[0129] S405. Determine the current end effector Cartesian pose based on the joint position of the next iteration and the actual DH parameters.

[0130] S406. Determine the pose difference based on the current end-effector Cartesian pose and the desired end-effector Cartesian pose.

[0131] S407. When the robot is in a singular configuration, if the pose difference is greater than a set threshold and the number of iterations is less than the number of iterations threshold, then singular value decomposition is used to calculate the generalized inverse of the Jacobian matrix.

[0132] Specifically, when the robot is in a singular configuration, if the pose difference is greater than a set threshold and the number of iterations is less than the iteration threshold, the robot's Jacobian matrix is ​​calculated based on the robot's kinematics formula and homogeneous transformation matrix. Based on the Jacobian matrix, the generalized inverse matrix of the Jacobian matrix is ​​calculated using SVD (singular value decomposition).

[0133] S408. Determine the joint increment based on the pose difference and the generalized inverse of the Jacobian matrix.

[0134] The joint increment is calculated iteratively based on the current iteration joint position of the robot to obtain the incremental value of the current iteration joint position when the next iteration joint position is obtained.

[0135] Specifically, based on the position difference poor posture And the generalized inverse of the Jacobian matrix, to calculate the joint increment. The formula for calculating the joint increment is shown in equation (8):

[0136] (8)

[0137] in, , Let represent the generalized inverse of the Jacobian matrix.

[0138] Optionally, a threshold value can be set for the pose difference when the robot is in a non-singular configuration. The threshold for the number of iterations is When the robot is in a singular configuration, the set threshold for pose difference is: The threshold for the number of iterations is ;in, and They can be positive integers with the same value, or they can be positive integers with different values; and It can be positive integers with the same value or positive integers with different values.

[0139] S409. Update the current iteration joint position based on the joint increment and the current iteration joint position.

[0140] Specifically, according to and Calculate the joint position for the next iteration. The formula for calculating the joint position for the next iteration is shown in equation (9):

[0141] (9)

[0142] After obtaining the joint position for the next iteration, update the iteration count i = i + 1, and use the joint position for the next iteration as the joint position for the current iteration.

[0143] S410. Based on the updated current iteration joint position, perform parameter compensation on the robot's actual DH parameters using a numerical solution algorithm.

[0144] Specifically, based on the updated joint position of the current iteration, inverse kinematics numerical solutions are calculated using the Newton-Raphson iterative method to determine the joint position for the next iteration, and then execution returns to step S450. This process continues until a calculation result is obtained where the pose difference is less than a set threshold and the number of iterations is less than the threshold number of iterations. The corresponding calculation result is then... This is the result of parameter compensation for the robot's actual DH parameters.

[0145] The technical solution of this embodiment involves obtaining the theoretical and actual DH parameters of the robot; determining a target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration; determining initial iteration values ​​based on the target algorithm; determining a homogeneous transformation matrix based on the theoretical DH parameters and the DH coordinate system; determining the next iteration joint position using the target algorithm based on the initial iteration values, theoretical DH parameters, and homogeneous transformation matrix; determining the current end-effector Cartesian pose based on the next iteration joint position and the actual DH parameters; determining the pose difference based on the current end-effector Cartesian pose and the desired end-effector Cartesian pose; if the pose difference is greater than a set threshold and the number of iterations is less than the threshold when the robot is in a singular configuration, then the generalized inverse of the Jacobian matrix is ​​calculated using singular value decomposition; determining the joint increment based on the pose difference and the generalized inverse of the Jacobian matrix; updating the current iteration joint position based on the joint increment and the current iteration joint position; and compensating the robot's actual DH parameters based on the updated current iteration joint position. The aforementioned scheme, when compensating for the robot's actual DH parameters, considers the problem that analytical solutions cannot accurately compensate for the actual DH parameters when the robot is in a singular configuration. A numerical solution is proposed. When the robot is in a singular configuration, the joint increments for iterative calculation are determined based on the generalized inverse of the Jacobian matrix and the pose difference. Iterative calculations are then performed based on the joint increments and the current joint position to compensate for the actual DH parameters. This improves the efficiency of parameter compensation and allows for more accurate parameter compensation results in singular configurations, thereby improving the robot's absolute positioning accuracy.

[0146] Example 5

[0147] Figure 5 This is a schematic diagram of a parameter compensation device provided in Embodiment 5 of the present invention. This embodiment is applicable to situations requiring parameter compensation. Figure 5 As shown, the parameter compensation device includes: a parameter acquisition module 510, an iteration initial value determination module 520, and a parameter compensation module 530.

[0148] Among them, the parameter acquisition module 510 is used to acquire the theoretical DH parameters and the actual DH parameters of the robot;

[0149] The iteration initial value determination module 520 is used to determine the target algorithm based on the robot's current joint position, the desired end effector Cartesian pose, and the singularity of the robot's configuration, and to determine the iteration initial value based on the target algorithm;

[0150] The parameter compensation module 530 is used to compensate the actual DH parameters according to the initial iteration value, the theoretical DH parameters, the actual DH parameters and the expected end Cartesian pose, through the target algorithm.

[0151] The technical solution provided in this embodiment obtains the theoretical and actual DH parameters of the robot; determines a target algorithm based on the robot's current joint position, desired end-effector Cartesian pose, and the singularity of the robot's configuration; determines initial iteration values ​​based on the target algorithm; and compensates the actual DH parameters using the target algorithm based on the initial iteration values, theoretical DH parameters, actual DH parameters, and the desired end-effector Cartesian pose. This solution determines suitable initial values ​​for numerical solution iteration based on the robot's current joint position and desired end-effector Cartesian pose; and when compensating the actual DH parameters, iterative calculations are performed using numerical solution methods based on the initial iteration values ​​to obtain the parameter compensation results. This improves the iteration convergence speed while ensuring the accuracy of the parameter compensation results, thereby improving the robot's absolute positioning accuracy.

[0152] The iteration initial value determination module 520 includes:

[0153] The robot configuration determination unit is used to determine whether the robot is in a singular configuration.

[0154] The iteration initial value determination unit is used to determine the iteration initial value based on the robot's current joint position when the robot is in a singular configuration, and to determine the iteration initial value based on the expected end-effector Cartesian pose, the current joint position, and the analytical solution algorithm in the target algorithm when the robot is in a non-singular configuration.

[0155] Furthermore, the aforementioned iterative initial value determination unit is specifically used for:

[0156] If the robot is in a non-singular configuration, multiple joint positions are determined based on the analytical solution algorithm and the desired end-effector Cartesian pose.

[0157] Identify the target joints affected when the robot is in a singular configuration;

[0158] Based on the target joint position in multiple sets of joint positions and the target joint position in the current joint position, select a set of joint positions from the multiple sets of joint positions as the initial value for iteration.

[0159] For example, the parameter compensation module 530 includes:

[0160] The homogeneous transformation matrix determination unit is used to determine the homogeneous transformation matrix based on the theoretical DH parameters and the DH coordinate system.

[0161] The next iteration joint position determination unit is used to determine the joint position of the next iteration based on the initial iteration value, theoretical DH parameters and homogeneous transformation matrix, using the target algorithm.

[0162] The current end-effector Cartesian pose determination unit is used to determine the current end-effector Cartesian pose based on the joint position of the next iteration and the actual DH parameters;

[0163] The pose difference determination unit is used to determine the pose difference based on the current end effector Cartesian pose and the desired end effector Cartesian pose.

[0164] The parameter compensation unit is used to compensate the actual DH parameters based on the pose difference and the number of iterations.

[0165] For example, the next iteration joint position determination unit is specifically used for:

[0166] The theoretical terminal Cartesian pose is determined based on the initial values ​​of the iteration and the theoretical DH parameters.

[0167] The equivalent pose is determined based on the theoretical terminal Cartesian pose and homogeneous transformation matrix;

[0168] Based on the equivalent pose and theoretical DH parameters, the joint position for the next iteration is determined using the analytical solution algorithm in the target algorithm.

[0169] For example, the parameter compensation unit is specifically used for:

[0170] If the pose difference is less than the set threshold and the number of iterations is less than the iteration number threshold, then the joint position of the next iteration will be used as the compensation result for the actual DH parameters of the robot.

[0171] For example, the parameter compensation unit is also used for:

[0172] When the robot is in a singular configuration, if the pose difference is greater than a set threshold and the number of iterations is less than the threshold number of iterations, then singular value decomposition is used to calculate the generalized inverse of the Jacobian matrix.

[0173] The joint increment is determined based on the pose difference and the generalized inverse of the Jacobian matrix;

[0174] Update the current iteration joint position based on the joint increment and the current iteration joint position;

[0175] Based on the updated joint position in the current iteration, the actual DH parameters of the robot are compensated using a numerical solution algorithm.

[0176] The parameter compensation device provided in this embodiment can be applied to the parameter compensation method provided in any of the above embodiments, and has the corresponding functions and beneficial effects.

[0177] Example 6

[0178] Figure 6 A schematic diagram of an electronic device 10, which can be used to implement embodiments of the present invention, is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0179] like Figure 6 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0180] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0181] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as parameter compensation methods.

[0182] In some embodiments, the parameter compensation method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the parameter compensation method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the parameter compensation method by any other suitable means (e.g., by means of firmware).

[0183] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0184] Computer programs used to implement the methods of the present invention can be written in any combination of one or more programming languages. These computer programs can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable parameter compensation device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The computer programs can be executed entirely on the machine, partially on the machine, as a standalone software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0185] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0186] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0187] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0188] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.

[0189] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0190] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A parameter compensation method characterized by, The method comprises the following steps: obtaining theoretical DH parameters and actual DH parameters of a robot; determining a target algorithm according to a current joint position of the robot, a desired end Cartesian pose and singularity of a robot pose, and determining an iteration initial value according to the target algorithm; performing parameter compensation on the actual DH parameters by the target algorithm according to the iteration initial value, the theoretical DH parameters, the actual DH parameters and the desired end Cartesian pose, which comprises: determining a homogeneous transformation matrix according to the theoretical DH parameters and a DH coordinate system; determining a next iteration joint position by the target algorithm according to the iteration initial value, the theoretical DH parameters and the homogeneous transformation matrix; determining a current end Cartesian pose according to the next iteration joint position and the actual DH parameters; determining a pose difference according to the current end Cartesian pose and the desired end Cartesian pose; and performing parameter compensation on the actual DH parameters according to the pose difference and an iteration number; wherein the parameter compensation on the actual DH parameters according to the pose difference and the iteration number comprises: if the pose difference is less than a set threshold value and the iteration number is less than an iteration number threshold value, taking the next iteration joint position as a compensation result of the parameter compensation on the actual DH parameters of the robot; the determination of the target algorithm according to the current joint position of the robot, the desired end Cartesian pose and the singularity of the robot pose comprises: determining whether the robot is in a singular pose; if the robot is in the singular pose, selecting a numerical solution algorithm as the target algorithm; if the robot is not in the singular pose, selecting an analytical solution algorithm as the target algorithm.

2. The method of claim 1, wherein, the determination of the target algorithm according to the current joint position of the robot, the desired end Cartesian pose and the singularity of the robot pose, and the determination of the iteration initial value according to the target algorithm comprises: determining whether the robot is in a singular pose; if yes, taking the current joint position of the robot as the iteration initial value; if no, determining the iteration initial value according to the desired end Cartesian pose, the current joint position and the analytical solution algorithm in the target algorithm.

3. The method of claim 2, wherein, the determination of the iteration initial value according to the desired end Cartesian pose, the current joint position and the analytical solution algorithm in the target algorithm comprises: determining a plurality of sets of joint positions according to the desired end Cartesian pose based on the analytical solution algorithm; determining a target joint affected when the robot is in the singular pose; selecting a set of joint positions from the plurality of sets of joint positions as the iteration initial value according to the joint position of the target joint in the plurality of sets of joint positions and the joint position of the target joint in the current joint position.

4. The method of claim 1, wherein, the determination of the next iteration joint position by the target algorithm according to the iteration initial value, the theoretical DH parameters and the homogeneous transformation matrix comprises: determining a theoretical end Cartesian pose according to the iteration initial value and the theoretical DH parameters; determining an equivalent pose according to the theoretical end Cartesian pose and the homogeneous transformation matrix; According to the equivalent pose and the theoretical DH parameter, a next iteration joint position is determined by an analytical solution algorithm in the target algorithm.

5. The method of claim 1, wherein, The parameter compensation on the actual DH parameter according to the pose difference and the iteration number further includes: In a case where the robot is in a singular pose, if the pose difference is greater than a set threshold value and the iteration number is less than an iteration number threshold value, a generalized inverse matrix of a Jacobian matrix is calculated by singular value decomposition; According to the pose difference and the generalized inverse matrix of the Jacobian matrix, a joint increment is determined; According to the joint increment and a current iteration joint position, the current iteration joint position is updated; According to the updated current iteration joint position, the actual DH parameter of the robot is compensated by a numerical solution algorithm.

6. A parameter compensation device, characterized by, Comprise: A parameter acquisition module is configured to acquire a theoretical DH parameter and an actual DH parameter of a robot; An iteration initial value determination module is configured to determine a target algorithm according to a current joint position of the robot, an expected end Cartesian pose, and singularity of a robot pose, and determine an iteration initial value according to the target algorithm; A parameter compensation module is configured to compensate the actual DH parameter by the target algorithm according to the iteration initial value, the theoretical DH parameter, the actual DH parameter, and the expected end Cartesian pose; The parameter compensation module comprises a homogeneous transformation matrix determination unit, a next iteration joint position determination unit, a current end Cartesian pose determination unit, a pose difference determination unit, and a parameter compensation unit; The homogeneous transformation matrix determination unit is configured to determine a homogeneous transformation matrix according to the theoretical DH parameter and a DH coordinate system; The next iteration joint position determination unit is configured to determine a next iteration joint position by the target algorithm according to the iteration initial value, the theoretical DH parameter, and the homogeneous transformation matrix; The current end Cartesian pose determination unit is configured to determine a current end Cartesian pose according to the next iteration joint position and the actual DH parameter; The pose difference determination unit is configured to determine a pose difference according to the current end Cartesian pose and the expected end Cartesian pose; The parameter compensation unit is configured to compensate the actual DH parameter according to the pose difference and an iteration number; The parameter compensation unit is specifically configured to, if the pose difference is less than a set threshold value and the iteration number is less than an iteration number threshold value, take the next iteration joint position as a compensation result of the parameter compensation on the actual DH parameter of the robot. The determination of the target algorithm according to the current joint position of the robot, the expected end Cartesian pose, and the singularity of the robot pose comprises: It is determined whether the robot is in a singular pose; if the robot is in a singular pose, a numerical solution algorithm is selected as the target algorithm; if the robot is in a non-singular pose, an analytical solution algorithm is selected as the target algorithm.

7. An electronic device, comprising: The electronic device comprises: At least one processor; and A memory connected in communication with the at least one processor; wherein, The memory stores a computer program executed by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to execute the parameter compensation method in any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions for enabling the processor to implement the parameter compensation method in any one of claims 1-5 when executed.

Citation Information

Patent Citations

  • Industrial robot DH parameter calibration and zero position calibration method based on laser tracker

    CN106338990A

  • Deformation prediction and compensation method of three-dimensional stone carving robot processing system

    CN109434829A