Kinematic parameter compensation value determination method and device, equipment, medium and product

By using preset parameter transitioners to determine the target compensation value of kinematic parameters in the robot, the problem of limited motion accuracy and flexibility of robots in the prior art is solved, and the accuracy consistency and method are achieved between different stressed areas. Improved practicality.

CN119427372APending Publication Date: 2025-02-14SIASUN CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411915625.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-24
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

When improving the robot's motion accuracy, the prior art limits the robot's motion space and flexibility, and cannot guarantee the accuracy consistency of the robot between different stressed areas, and the method is not practical.

Method used

By obtaining the joint angles of each joint of the robot at the moment, a preset parameter transitioner is used to determine the target compensation value of the kinematic parameters, and then controlling the robot's movement. The preset parameter transitioner is constructed based on the compensation values ​​of two sets of kinematic parameters determined when the preset positive and negative direction positions are.

Benefits of technology

It realizes that the robot's accuracy consistency between different stressed areas without limiting the robot's motion space and flexibility, and does not need to build complex stiffness kinematics models, which improves the practicality of the method.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119427372A_ABST
    Figure CN119427372A_ABST
Patent Text Reader

Abstract

The invention discloses a kinematics parameter compensation value determination method and device, equipment, a medium and a product. Joint angles of all joints of the robot at the current moment are obtained; for each joint, based on the joint angle of the current joint, a preset parameter transition device corresponding to the kinematics parameter of the current joint is used for determining a target compensation value of the kinematics parameter so as to control the robot to move, and the preset parameter transition device is determined based on the first compensation value and the second compensation value; the first compensation value is the compensation value of the kinematics parameter determined when the target joint of the robot is located at a first preset position in the preset positive direction, and the second compensation value is the compensation value of the kinematics parameter determined when the target joint of the robot is located at a second preset position in the preset negative direction. According to the method, under the condition that the motion space and flexibility of the robot are not limited, the precision consistency of the robot in different stress areas is guaranteed, a complex rigidity kinematics model does not need to be constructed, and the practicability of kinematics calibration is effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to the field of robotics technology, and in particular, to a method, device, equipment, medium and product for determining a kinematic parameter compensation value. Background Art

[0002] With the continuous advancement of industrial automation and intelligent technology, robots are increasingly used in manufacturing, service, scientific research and other fields. In these applications, the kinematic accuracy of robots has become one of the key indicators to measure their performance.

[0003] In order to improve kinematic accuracy, a calibration algorithm is required to calibrate the robot. However, during the calibration process, the robot joints are basically in the same force area. Due to the influence of factors such as reducer backlash, stiffness, assembly error, encoder accuracy, etc., when the robot moves to another force area, there will be obvious accuracy differences. This limits the application ability of the robot under variable working conditions.

[0004] To solve this problem, the commonly used methods are to limit the range of motion of robot joints or use robot kinematic stiffness compensation methods. However, the method of limiting the range of motion of robot joints reduces the robot's motion space and flexibility, and does not effectively solve the problem of inconsistent accuracy between different force-bearing areas of the robot. In addition, the robot kinematic stiffness compensation method requires the construction of a complex kinematic stiffness compensation model and is extremely sensitive to the mass center of mass of robot components, which limits the practicality of this method. Summary of the invention

[0005] The present invention provides a method, device, equipment, medium and product for determining kinematic parameter compensation values ​​to solve the problems existing in existing methods for improving robot motion accuracy, namely, that the robot motion space and flexibility are limited, and the accuracy consistency of the robot between different force-bearing areas cannot be guaranteed, and the method is not practical.

[0006] According to one aspect of the present invention, a method for determining a kinematic parameter compensation value is provided, comprising:

[0007] Get the joint angles of each joint of the robot at the current moment;

[0008] For each of the joints, based on the joint angle of the current joint, a target compensation value of the kinematic parameter is determined using a preset parameter transitioner corresponding to the kinematic parameter of the current joint, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transitioner is determined based on a first compensation value and a second compensation value, the first compensation value being the compensation value of the kinematic parameter determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value being the compensation value of the kinematic parameter determined when the target joint of the robot is in a second preset position in a preset negative direction.

[0009] According to another aspect of the present invention, there is provided a device for determining a kinematic parameter compensation value, comprising:

[0010] Angle acquisition module, used to obtain the joint angles of each joint of the robot at the current moment;

[0011] A compensation value determination module is used to determine, for each of the joints, a target compensation value of the kinematic parameters based on the joint angle of the current joint and using a preset parameter transition device corresponding to the kinematic parameters of the current joint, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transition device is determined based on a first compensation value and a second compensation value, the first compensation value being the compensation value of the kinematic parameters determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value being the compensation value of the kinematic parameters determined when the target joint of the robot is in a second preset position in a preset negative direction.

[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 executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the kinematic parameter compensation value determination method described in any embodiment of the present invention.

[0016] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the method for determining kinematic parameter compensation values ​​described in any embodiment of the present invention when executed.

[0017] According to another aspect of the present invention, a computer program product is provided. The computer program product comprises a computer program. When the computer program is executed by a processor, the method for determining a kinematic parameter compensation value according to any embodiment of the present invention is implemented.

[0018] The technical solution provided by the embodiment of the present invention obtains the joint angle of each joint of the robot at the current moment; for each of the joints, based on the joint angle of the current joint, a preset parameter transitioner corresponding to the kinematic parameter of the current joint is used to determine the target compensation value of the kinematic parameter, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transitioner is determined based on a first compensation value and a second compensation value, the first compensation value is the compensation value of the kinematic parameter determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value is the compensation value of the kinematic parameter determined when the target joint of the robot is in a second preset position in a preset negative direction. Through the above technical scheme, the compensation values ​​of two sets of kinematic parameters determined when the target joint of the robot is in a first preset position in a preset positive direction and in a second preset position in a preset negative direction are integrated to construct preset parameter transition devices corresponding to the kinematic parameters. Then, based on the joint angles of each joint of the robot acquired in real time, these preset parameter transition devices are used to determine the target compensation values ​​of the kinematic parameters to guide the movement of the robot. This ensures the accuracy consistency of the robot between different force areas without limiting the movement space and flexibility of the robot, and eliminates the need to construct a complex stiffness kinematic model, thereby effectively improving the practicability of the method.

[0019] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0021] Figure 1 is a flow chart of a method for determining a kinematic parameter compensation value provided by Embodiment 1 of the present invention;

[0022] Figure 2 is a flow chart of a method for determining kinematic parameter compensation values ​​provided in Embodiment 2 of the present invention;

[0023] Figure 3 is a structural schematic diagram of a kinematic parameter compensation value determination device provided in Embodiment 3 of the present invention;

[0024] Figure 4 It is a structural schematic diagram of an electronic device provided in Embodiment 4 of the present invention. DETAILED DESCRIPTION

[0025] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0026] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0027] Embodiment 1

[0028] Figure 1 This is a flow chart of a method for determining kinematic parameter compensation values ​​provided by the first embodiment of the present invention. This embodiment is applicable to the case of determining kinematic parameter compensation values. The method can be executed by a kinematic parameter compensation value determination device. The kinematic parameter compensation value determination device can be implemented in the form of hardware and / or software. The kinematic parameter compensation value determination device can be configured in an electronic device. Figure 1 As shown, the method includes:

[0029] S110, obtaining the joint angles of each joint of the robot at the current moment.

[0030] In this embodiment, the degrees of freedom of the robot are not limited, for example, it can be a five-degree-of-freedom serial robot or a six-degree-of-freedom serial robot. The embodiment of the present invention is described by taking a six-degree-of-freedom serial robot as an example.

[0031] Specifically, the joint angles of each joint of the robot at the current moment are obtained through an angle measuring device. Among them, the angle measuring device can be an encoder or a sensor, etc. The joint angle is a kinematic parameter in the DH coordinate system, which is used to represent the angle of rotation around the Z axis (i.e., the joint axis) of the current connecting rod. It is worth noting that the kinematic parameters involved in the embodiments of the present invention are all parameters under the DH coordinate system, and the DH coordinate system can be a standard DH coordinate system or an improved DH coordinate system. The standard DH coordinate system is to establish the coordinate system on the connecting rod transmission shaft, and the improved DH coordinate system is to establish the coordinate system on the driving shaft of the connecting rod. In this embodiment, the improved DH coordinate system is used as an example for explanation.

[0032] S120. For each of the joints, based on the joint angle of the current joint, a target compensation value of the kinematic parameter is determined using a preset parameter transitioner corresponding to the kinematic parameter of the current joint, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transitioner is determined based on a first compensation value and a second compensation value, the first compensation value being the compensation value of the kinematic parameter determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value being the compensation value of the kinematic parameter determined when the target joint of the robot is in a second preset position in a preset negative direction.

[0033] In this embodiment, kinematic parameters are important parameters for describing the relative position and posture between adjacent links of the robot. Each joint corresponds to a plurality of kinematic parameters, and each kinematic parameter corresponds to a preset parameter transition device. Exemplarily, a six-degree-of-freedom serial robot includes six joints, each of which can correspond to five kinematic parameters, and each joint corresponds to five preset parameter transition devices, for a total of 30 preset parameter transition devices.

[0034] Wherein, the target compensation value is used to control the movement of the robot. The target joints may include joints that are greatly affected by gravity, for example, the second joint, the third joint and the fourth joint in a six-degree-of-freedom serial robot, and may also include all robot joints. The preset positive direction may be understood as a reference direction preset for each target joint. For example, for a rotating joint, the preset positive direction may be a clockwise or counterclockwise direction; for a moving joint, the preset positive direction may be a positive or reverse movement along a specific axis. The first preset position may be understood as a specific position preset in the preset positive direction. The preset negative direction is the opposite direction of the preset positive direction. The second preset position may be understood as a specific position preset in the preset negative direction.

[0035] Specifically, when the target joint of the robot is at a first preset position in a preset positive direction, the first compensation value of each kinematic parameter of each joint of the robot can be determined; when the target joint of the robot is at a second preset position in a preset negative direction, the second compensation value of each kinematic parameter of each joint of the robot can be determined. Then, for each of the joints, the first compensation value and the second compensation value of each kinematic parameter of the current joint are integrated to determine the preset parameter transitioner corresponding to each kinematic parameter of the current joint.

[0036] For example, assuming that the second joint, the third joint, and the fourth joint of the six-degree-of-freedom serial robot that are more affected by gravity are taken as target joints, when the three target joints of the robot are in the first preset position in the preset positive direction, the first set of compensation data can be obtained. Among them, j1 k represents the first kinematic parameter compensation value set of the kth joint, the elements in the set represent the first compensation values ​​of the kinematic parameters corresponding to the kth joint, and the number of elements in the set is determined by the number of kinematic parameters. When the above three target joints are in the second preset position in the preset negative direction, the second set of compensation data can be obtained in, The second kinematic parameter compensation value set of the k-th joint is represented, and the elements in the set represent the second compensation values ​​of the kinematic parameters corresponding to the k-th joint. The number of elements in the set is determined by the number of kinematic parameters. Furthermore, according to the first compensation value and the second compensation value corresponding to each kinematic parameter of each joint, the preset parameter transition device corresponding to each kinematic parameter can be determined.

[0037] Then, for each joint in each joint, the joint angle of the current joint is input into the preset parameter transitioner corresponding to the kinematic parameter of the current joint, and the target compensation value of the kinematic parameter can be obtained. Then, the robot movement is guided based on the target compensation value of each kinematic parameter.

[0038] The technical solution provided in the first embodiment of the present invention obtains the joint angle of each joint of the robot at the current moment; for each of the joints, based on the joint angle of the current joint, a preset parameter transitioner corresponding to the kinematic parameter of the current joint is used to determine the target compensation value of the kinematic parameter, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transitioner is determined based on a first compensation value and a second compensation value, the first compensation value is the compensation value of the kinematic parameter determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value is the compensation value of the kinematic parameter determined when the target joint of the robot is in a second preset position in a preset negative direction. Through the above technical scheme, the compensation values ​​of two sets of kinematic parameters determined when the target joint of the robot is in a first preset position in a preset positive direction and in a second preset position in a preset negative direction are integrated to construct preset parameter transition devices corresponding to the kinematic parameters. Then, based on the joint angles of each joint of the robot acquired in real time, these preset parameter transition devices are used to determine the target compensation values ​​of the kinematic parameters to guide the movement of the robot. This ensures the accuracy consistency of the robot between different force areas without limiting the movement space and flexibility of the robot, and eliminates the need to construct a complex stiffness kinematic model, thereby effectively improving the practicability of the method.

[0039] In some embodiments, the kinematic parameters include joint angles, link angles, link lengths, link offsets, and rotation angles around the Y axis, where the Y axis belongs to the DH coordinate system.

[0040] Among them, the link angle α refers to the relative rotation angle between two adjacent links, generally the angle of rotation around the common Z axis. The link length a refers to the straight-line distance between two adjacent joint axes, which is measured along the common perpendicular between the two joint axes. The link offset d refers to the offset of two adjacent links in the direction perpendicular to their connecting axis. The rotation angle around the Y axis β refers to the angle of rotation of a link around its Y axis.

[0041] In some embodiments, the preset parameter transitioner is determined in the following manner: based on the first compensation value, the second compensation value, the preset joint starting angle and the preset joint ending angle, using a preset initial quintic polynomial and preset conditions, the values ​​of the coefficients in the preset initial quintic polynomial are determined to obtain the preset parameter transitioner of the kinematic parameters, wherein the preset initial quintic polynomial is a quintic polynomial based on the difference between the joint angle and the preset joint starting angle, and the preset condition includes that the first preset compensation value corresponding to the preset joint starting angle is the first compensation value, the preset speed compensation value corresponding to the preset joint starting angle is zero, the preset acceleration compensation value corresponding to the preset joint starting angle is zero, the second preset compensation value corresponding to the preset joint ending angle is the second compensation value, the preset speed compensation value corresponding to the preset joint ending angle is zero, and the preset acceleration compensation value corresponding to the preset joint ending angle is zero.

[0042] In this embodiment, the preset joint starting angle can be understood as a preset starting angle of the robot joint. It is worth noting that the preset joint starting angle corresponding to each kinematic parameter can be the same or different. The preset joint termination angle can be understood as a preset termination angle of the robot joint. It is worth noting that the value of the preset joint termination angle corresponding to each kinematic parameter can be the same or different. The preset initial quintic polynomial is a preset quintic polynomial based on the difference between the joint angle and the preset joint starting angle. The preset condition is a preset condition for solving the value of the coefficient of the preset initial quintic polynomial.

[0043] Specifically, for the switching between the compensation values ​​of different kinematic parameters, an inappropriate switching method may cause a sudden shift in the end position of the robot during movement, causing a safety hazard. In order to ensure the smooth switching of the compensation values ​​of each kinematic parameter, it is necessary to determine the preset parameter transition device corresponding to each kinematic parameter. It is worth noting that the preset parameter transition device for each kinematic parameter corresponding to each joint is determined in the same manner. This embodiment takes the preset parameter transition device for the i-th kinematic parameter corresponding to the current joint as an example for explanation.

[0044] It is known that the first compensation value of the i-th kinematic parameter of the current joint is v l , the second compensation value is v r , set the current joint to start from the preset joint angle Move to the preset joint end angle Then, the preset parameter transitioner is determined by the following preset piecewise function, wherein the preset piecewise function includes a preset initial quintic polynomial:

[0045]

[0046] in, represents the target compensation value corresponding to the i-th kinematic parameter, Indicates the joint angle of the current joint. a0, a1, a2, a3, a4, and a5 represent the coefficients of the preset initial quintic polynomial.

[0047] The default conditions are set as follows:

[0048]

[0049] in, is the first-order derivative of the preset initial quintic polynomial, is the second-order derivative of the preset initial quintic polynomial. Indicates the first preset compensation value corresponding to the preset joint starting angle, Indicates the second preset compensation value corresponding to the preset joint termination angle, Indicates the preset speed compensation value corresponding to the preset joint starting angle. Indicates the preset speed compensation value corresponding to the preset joint termination angle. Indicates the preset acceleration compensation value corresponding to the preset joint starting angle. Indicates the preset acceleration compensation value corresponding to the preset joint termination angle.

[0050] definition h=v r -v l , according to the preset conditions, the value of the coefficient of the preset initial quintic polynomial can be determined as:

[0051]

[0052] According to the values ​​of the coefficients of the preset initial quintic polynomial calculated above and the preset piecewise function, a preset parameter transition device can be obtained.

[0053] Through the above technical solution, a preset parameter transition device that uses a preset initial quintic polynomial to determine the kinematic parameters provides a solid foundation for achieving a smooth transition of compensation values ​​during robot movement, and further significantly improves the accuracy and response speed of movement.

[0054] In some embodiments, the first compensation value is determined in the following manner: when the target joint of the robot is in a first preset position in a preset positive direction, the first actual end position of the robot is determined; based on a preset kinematic equation and the first kinematic parameters of each joint of the robot when the target joint is in the first preset position in the preset positive direction, the first nominal end position of the robot is determined; based on the first actual end position and the first nominal end position, with the goal of minimizing the end position error, a first compensation value of the kinematic parameters is determined using a preset nonlinear optimization algorithm; the second compensation value is determined in the following manner: when the target joint is in a second preset position in a preset negative direction, the second actual end position of the robot is determined; based on the preset kinematic equation and the second kinematic parameters of each joint when the target joint is in the second preset position in the preset negative direction, the second nominal end position of the robot is determined; based on the second actual end position and the second nominal end position, with the goal of minimizing the end position error, a preset nonlinear optimization algorithm is used to determine the second compensation value of the kinematic parameters.

[0055] In this embodiment, the end position of the robot can be understood as the position of the test center of the robot end effector in space. The actual end position can be obtained by monitoring the sensor deployed on the robot, or by calibration of an external measuring device (such as a laser tracker, a three-coordinate measuring machine, etc.). The preset nonlinear optimization algorithm can be understood as a pre-set optimization method algorithm for minimizing the end position error. This embodiment does not limit the preset nonlinear optimization algorithm. For example, it can be an LM algorithm or a gradient descent method.

[0056] Specifically, a DH coordinate system is established for each joint according to the configuration of the six-degree-of-freedom serial robot, and a conversion matrix of two adjacent DH coordinate systems can be obtained. It is worth noting that the DH coordinate system in this embodiment can be a standard DH coordinate system or an improved DH coordinate system.

[0057] Exemplarily, taking the improved DH coordinate system as an example, the transformation matrix of two adjacent DH coordinate systems is obtained as follows:

[0058]

[0059] in, Represents the homogeneous transformation matrix from the i-1th DH coordinate system to the i-th DH coordinate system. This matrix describes the relative position and posture between two adjacent links. Rot(x,α i-1 ) represents a rotation around the X axis α i-1 The rotation matrix of the angle. i-1Trans(x,a) represents the rotation angle of the Z axis of the i-1th DH coordinate system relative to the Z axis of the i-th DH coordinate system around the X axis of the i-1th DH coordinate system. i-1 ) represents a translation along the X axis i-1 The translation matrix of the distance. a i-1 Indicates the distance from the Z axis of the i-1th DH coordinate system to the Z axis of the i-th DH coordinate system along the X axis of the i-1th DH coordinate system (i.e., the length of the connecting rod). Rot(z,θ i ) represents a rotation of θ around the Z axis i The rotation matrix of the angle θ. i Represents the joint angle, that is, the rotation angle of the X-axis of the i-1th DH coordinate system relative to the X-axis of the i-th DH coordinate system around the Z-axis of the i-th DH coordinate system. Trans(z,d i ) represents a translation d along the Z axis i The translation matrix of the distance. d i The distance from the X-axis of the i-1th DH coordinate system to the X-axis of the i-th DH coordinate system along the Z-axis of the i-th DH coordinate system. Rot(y,β i ) represents a rotation around the Y axis β i The rotation matrix of the angle. i It represents the rotation angle of the Z axis of the i-1th DH coordinate system relative to the Z axis of the i-th DH coordinate system around the Y axis of the i-th DH coordinate system. i =(α i-1 ,a i-1 ,θ i ,d i ,β i ) represents the set of kinematic parameters of the i-th joint.

[0060] Furthermore, according to the transformation matrix of two adjacent DH coordinate systems, the kinematic equation of the six-degree-of-freedom serial robot can be obtained as follows:

[0061]

[0062] Among them, R represents the robot end posture matrix, and p represents the position of the robot end in Cartesian space.

[0063] Furthermore, the differential kinematics model is used to approximately replace the error equation, and the position p in the kinematics equation is fully differentiated to obtain the expression of the position error Δp ​​of the robot end:

[0064]

[0065] Among them, Δθ i Indicates the compensation value (error value) of the joint angle, Δα i Indicates the compensation value (error value) of the connecting rod angle, Δai Indicates the compensation value (error value) of the connecting rod length, Δd i Indicates the compensation value (error value) of the connecting rod offset, Δβ i Indicates the compensation value (error value) of the rotation angle around the Y axis

[0066] Write the above formula in matrix form:

[0067] Δp=J δ Δδ

[0068] Δp=p c -p n

[0069] Where Δδ represents the vector containing the compensation value (i.e., error value) of each kinematic parameter of each joint, J δ represents the Jacobian matrix, Δp=(Δp x ,Δp y ,Δp z ) T , where Δp x ,Δp y ,Δp z They represent the position errors of the robot end in the X, Y, and Z directions, respectively, c Indicates the actual end position, p n Indicates the nominal end position.

[0070] When the target joint of the robot is at the first preset position in the preset positive direction, the kinematic parameters of each joint are substituted into the kinematic equation to calculate the first nominal end position of the robot. The calibrated first actual end position and the first nominal end position are substituted into the expression of the position error Δp ​​of the robot end. Using the preset nonlinear optimization algorithm, the first compensation value of each kinematic parameter can be calculated with the goal of minimizing the end position error.

[0071] Similarly, when the target joint of the robot is at the second preset position in the preset negative direction, the kinematic parameters of each joint are substituted into the kinematic equation to calculate the second nominal end position of the robot. The calibrated second actual end position and the second nominal end position are substituted into the expression of the position error Δp ​​of the robot end. Using the preset nonlinear optimization algorithm, with the goal of minimizing the end position error, the second compensation value of each kinematic parameter can be calculated.

[0072] Through the above technical solution, the compensation value of each kinematic parameter is determined, which provides a data basis for the preset parameter transition device, further lays the foundation for ensuring the smooth transition of the kinematic parameter compensation value, and helps to improve the stability and accuracy of the robot during movement.

[0073] In some embodiments, the method satisfies at least one of the following: the first actual end position and / or the second actual end position is determined by using a laser tracker; and the preset nonlinear optimization algorithm is a LM algorithm.

[0074] In this embodiment, the laser tracker has the characteristics of high precision, high stability and non-contact measurement. The first actual end position and the second actual end position are determined by the laser tracker, which can effectively improve the accuracy of position determination. As an efficient and robust nonlinear optimization method, the LM algorithm can quickly converge to the optimal solution and effectively handle the redundant parameter problem. Using the LM algorithm as a preset nonlinear optimization algorithm can effectively improve the accuracy and efficiency of determining the compensation value of the robot's kinematic parameters.

[0075] Embodiment 2

[0076] Figure 2 This is a flow chart of a method for determining kinematic parameter compensation values ​​provided in the second embodiment of the present invention. This embodiment is optimized and expanded on the basis of the above-mentioned optional embodiments. Optionally, the preset parameter transitioner is a piecewise function, and the piecewise function at least includes a target quintic polynomial, and the target quintic polynomial is a preset initial quintic polynomial after determining the value of the coefficient; the target compensation value of the kinematic parameter is determined based on the joint angle of the current joint using the preset parameter transitioner corresponding to the kinematic parameters of the current joint, including: inputting the joint angle of the current joint into the preset parameter transitioner corresponding to the kinematic parameters of the current joint to obtain the target compensation value of the kinematic parameter; wherein, when the joint angle is less than or equal to the preset joint starting angle, the target compensation value of the kinematic parameter is a first compensation value; when the joint angle is greater than or equal to the preset joint ending angle, the target compensation value of the kinematic parameter is a second compensation value; when the joint angle is greater than the preset joint starting angle and less than the preset joint ending angle, the target compensation value of the kinematic parameter is determined based on the target quintic polynomial. Figure 2 As shown, the method includes:

[0077] S210, obtaining the joint angle of each joint of the robot at the current moment.

[0078] S220. For each of the joints, the joint angle of the current joint is input into the preset parameter transitioner corresponding to the kinematic parameters of the current joint to obtain the target compensation value of the kinematic parameters; wherein, when the joint angle is less than or equal to the preset joint starting angle, the target compensation value of the kinematic parameters is a first compensation value; when the joint angle is greater than or equal to the preset joint ending angle, the target compensation value of the kinematic parameters is a second compensation value; when the joint angle is greater than the preset joint starting angle and less than the preset joint ending angle, the target compensation value of the kinematic parameters is determined based on the target quintic polynomial.

[0079] Among them, the target compensation value is used to control the movement of the robot, and the preset parameter transition is determined based on the first compensation value and the second compensation value. The first compensation value is the compensation value of the kinematic parameters determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value is the compensation value of the kinematic parameters determined when the target joint of the robot is in a second preset position in a preset negative direction.

[0080] In this embodiment, the preset parameter transition device is a piecewise function, and the piecewise function at least includes a target quintic polynomial, and the target quintic polynomial is a preset initial quintic polynomial after the value of the coefficient is determined.

[0081] Specifically, the preset parameter transitioner is determined to be a piecewise function containing a target quintic polynomial, and its expression is as follows:

[0082]

[0083] Furthermore, for each joint in each joint, the joint angle of the current joint is input into the preset parameter transitioner corresponding to the kinematic parameter of the current joint. In the preset parameter transitioner corresponding to the kinematic parameter, the target compensation value is determined according to the interval to which the joint angle belongs. Wherein, when the joint angle is less than or equal to the preset joint starting angle, the target compensation value of the kinematic parameter is the first compensation value; when the joint angle is greater than or equal to the preset joint ending angle, the target compensation value of the kinematic parameter is the second compensation value; when the joint angle is greater than the preset joint starting angle and less than the preset joint ending angle, the target compensation value of the kinematic parameter is determined based on the target quintic polynomial. Thus, the target compensation value of each kinematic parameter can be calculated.

[0084] The technical solution provided by the second embodiment of the present invention dynamically calculates the target compensation value of each kinematic parameter by acquiring the joint angles of each joint of the robot at the current moment in real time and inputting these angles into the corresponding preset parameter transition device. While ensuring that the robot remains stable at the start and end stages of joint movement, a smooth transition of the compensation value is achieved during the movement through the target quintic polynomial, thereby significantly improving the accuracy and fluency of the robot's movement.

[0085] Embodiment 3

[0086] Figure 3 Schematic diagram of a kinematic parameter compensation value determination device provided by Embodiment 3 of the present invention. Figure 3 As shown, the device comprises:

[0087] Angle acquisition module 31, used to obtain the joint angle of each joint of the robot at the current moment;

[0088] The compensation value determination module 32 is used to determine the target compensation value of the kinematic parameters for each of the joints based on the joint angle of the current joint and using the preset parameter transition device corresponding to the kinematic parameters of the current joint, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transition device is determined based on a first compensation value and a second compensation value, wherein the first compensation value is the compensation value of the kinematic parameters determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value is the compensation value of the kinematic parameters determined when the target joint of the robot is in a second preset position in a preset negative direction.

[0089] The technical solution provided in the third embodiment of the present invention ensures the accuracy consistency of the robot between different force-bearing areas without limiting the robot's movement space and flexibility, and does not require the construction of a complex stiffness kinematic model, thereby effectively improving the practicability of the method.

[0090] Optionally, the kinematic parameters include joint angles, connecting rod angles, connecting rod lengths, connecting rod offsets and rotation angles around the Y axis, and the Y axis belongs to the DH coordinate system.

[0091] Optionally, the preset parameter transitioner is determined by:

[0092] Based on the first compensation value, the second compensation value, the preset joint starting angle and the preset joint ending angle, the values ​​of the coefficients in the preset initial quintic polynomial and the preset conditions are determined to obtain the preset parameter transitioner of the kinematic parameters, wherein the preset initial quintic polynomial is a quintic polynomial based on the difference between the joint angle and the preset joint starting angle, and the preset conditions include that the first preset compensation value corresponding to the preset joint starting angle is the first compensation value, the preset speed compensation value corresponding to the preset joint starting angle is zero, the preset acceleration compensation value corresponding to the preset joint starting angle is zero, the second preset compensation value corresponding to the preset joint ending angle is the second compensation value, the preset speed compensation value corresponding to the preset joint ending angle is zero, and the preset acceleration compensation value corresponding to the preset joint ending angle is zero.

[0093] Optionally, the preset parameter transition device is a piecewise function, the piecewise function at least includes a target quintic polynomial, and the target quintic polynomial is a preset initial quintic polynomial after determining the value of the coefficient;

[0094] Optionally, a compensation value determination module 32 is specifically used to input the joint angle of the current joint into a preset parameter transition device corresponding to the kinematic parameters of the current joint to obtain a target compensation value of the kinematic parameters; wherein, when the joint angle is less than or equal to the preset joint starting angle, the target compensation value of the kinematic parameters is a first compensation value; when the joint angle is greater than or equal to the preset joint ending angle, the target compensation value of the kinematic parameters is a second compensation value; when the joint angle is greater than the preset joint starting angle and less than the preset joint ending angle, the target compensation value of the kinematic parameters is determined based on a target quintic polynomial.

[0095] Optionally, the first compensation value is determined by:

[0096] When the target joint of the robot is at a first preset position in a preset positive direction, determining a first actual end position of the robot;

[0097] Determine a first nominal end position of the robot based on a preset kinematic equation and first kinematic parameters of each joint of the robot when the target joint is at a first preset position in a preset positive direction;

[0098] Based on the first actual end position and the first nominal end position, with the goal of minimizing the end position error, using a preset nonlinear optimization algorithm, determining a first compensation value of the kinematic parameter;

[0099] The second compensation value is determined by:

[0100] When the target joint is at a second preset position in a preset negative direction, determining a second actual end position of the robot;

[0101] Determine a second nominal end position of the robot based on a preset kinematic equation and second kinematic parameters of each joint when the target joint is at a second preset position in a preset negative direction;

[0102] Based on the second actual end position and the second nominal end position, a second compensation value of the kinematic parameter is determined using a preset nonlinear optimization algorithm with the goal of minimizing the end position error.

[0103] Optionally, the method satisfies at least one of the following:

[0104] The first actual end position and / or the second actual end position are determined using a laser tracker;

[0105] The preset nonlinear optimization algorithm is the LM algorithm.

[0106] The kinematic parameter compensation value determination device provided in the embodiment of the present invention can execute the kinematic parameter compensation value determination method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0107] Embodiment 4

[0108] Figure 4 : is a structural schematic diagram of an electronic device provided in Embodiment 4 of the present invention. 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 may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0109] like Figure 4As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

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

[0111] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a kinematic parameter compensation value determination method.

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

[0113] Various implementations 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 chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0114] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0115] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0116] To provide interaction with a user, the systems and techniques described herein may 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 a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0117] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0118] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0119] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0120] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

[0121] An embodiment of the present invention further provides a computer program product, including a computer program and / or instructions, which, when executed by a processor, implements the method for determining a kinematic parameter compensation value as provided in any embodiment of the present application.

[0122] In the process of implementation, the computer program product can be written in one or more programming languages ​​or a combination thereof to perform the computer program code of the present invention, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet).

[0123] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims

1. A method for determining kinematic parameter compensation value, characterized in that: include: Get the joint angles of each joint of the robot at the current moment; For each of the joints, based on the joint angle of the current joint, a target compensation value of the kinematic parameter is determined using a preset parameter transitioner corresponding to the kinematic parameter of the current joint, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transitioner is determined based on a first compensation value and a second compensation value, the first compensation value being the compensation value of the kinematic parameter determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value being the compensation value of the kinematic parameter determined when the target joint of the robot is in a second preset position in a preset negative direction.

2. The method according to claim 1, characterized in that The kinematic parameters include joint angles, connecting rod angles, connecting rod lengths, connecting rod offsets, and rotation angles around the Y axis, and the Y axis belongs to the DH coordinate system.

3. The method according to claim 2, characterized in that The preset parameter transition is determined by: Based on the first compensation value, the second compensation value, the preset joint starting angle and the preset joint ending angle, the values ​​of the coefficients in the preset initial quintic polynomial and the preset conditions are determined to obtain the preset parameter transitioner of the kinematic parameters, wherein the preset initial quintic polynomial is a quintic polynomial based on the difference between the joint angle and the preset joint starting angle, and the preset conditions include that the first preset compensation value corresponding to the preset joint starting angle is the first compensation value, the preset speed compensation value corresponding to the preset joint starting angle is zero, the preset acceleration compensation value corresponding to the preset joint starting angle is zero, the second preset compensation value corresponding to the preset joint ending angle is the second compensation value, the preset speed compensation value corresponding to the preset joint ending angle is zero, and the preset acceleration compensation value corresponding to the preset joint ending angle is zero.

4. The method according to claim 3, characterized in that The preset parameter transition device is a piecewise function, and the piecewise function at least includes a target quintic polynomial, and the target quintic polynomial is a preset initial quintic polynomial after determining the value of the coefficient; The method of determining a target compensation value of the kinematic parameter based on the joint angle of the current joint and using a preset parameter transitioner corresponding to the kinematic parameter of the current joint comprises: The joint angle of the current joint is input into the preset parameter transitioner corresponding to the kinematic parameters of the current joint to obtain the target compensation value of the kinematic parameters; wherein, when the joint angle is less than or equal to the preset joint starting angle, the target compensation value of the kinematic parameters is a first compensation value; when the joint angle is greater than or equal to the preset joint ending angle, the target compensation value of the kinematic parameters is a second compensation value; when the joint angle is greater than the preset joint starting angle and less than the preset joint ending angle, the target compensation value of the kinematic parameters is determined based on the target quintic polynomial.

5. The method according to claim 1, characterized in that The first compensation value is determined by: When the target joint of the robot is at a first preset position in a preset positive direction, determining a first actual end position of the robot; Determine a first nominal end position of the robot based on a preset kinematic equation and first kinematic parameters of each joint of the robot when the target joint is at a first preset position in a preset positive direction; Based on the first actual end position and the first nominal end position, with the goal of minimizing the end position error, using a preset nonlinear optimization algorithm, determining a first compensation value of the kinematic parameter; The second compensation value is determined by: When the target joint is at a second preset position in a preset negative direction, determining a second actual end position of the robot; Determine a second nominal end position of the robot based on a preset kinematic equation and second kinematic parameters of each joint when the target joint is at a second preset position in a preset negative direction; Based on the second actual end position and the second nominal end position, a second compensation value of the kinematic parameter is determined using a preset nonlinear optimization algorithm with the goal of minimizing the end position error.

6. The method according to claim 5, characterized in that The method satisfies at least one of the following: The first actual end position and / or the second actual end position are determined using a laser tracker; The preset nonlinear optimization algorithm is the LM algorithm.

7. A kinematic parameter compensation value determination device, characterized in that: include: Angle acquisition module, used to obtain the joint angles of each joint of the robot at the current moment; A compensation value determination module is used to determine, for each of the joints, a target compensation value of the kinematic parameters based on the joint angle of the current joint and using a preset parameter transition device corresponding to the kinematic parameters of the current joint, wherein the target compensation value is used to control the movement of the robot, and the preset parameter transition device is determined based on a first compensation value and a second compensation value, the first compensation value being the compensation value of the kinematic parameters determined when the target joint of the robot is in a first preset position in a preset positive direction, and the second compensation value being the compensation value of the kinematic parameters determined when the target joint of the robot is in a second preset position in a preset negative direction.

8. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the kinematic parameter compensation value determination method as described in any one of claims 1-6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method for determining a kinematic parameter compensation value as described in any one of claims 1 to 6 is implemented.

10. A computer program product, characterized in that The computer program product comprises a computer program, which, when executed by a processor, implements the kinematic parameter compensation value determination method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Series-connection type robot's kinematic parameter calibration method based on multi-point attitude sampling

    CN107478183A

  • Absolute precision compensation method and system, equipment and computer readable storage medium

    CN113927599A

  • Mechanical arm tail end position error compensation method based on calibration and repair rigid-flexible coupling model

    CN115502968A

  • Compensation method, system and equipment for kinematics parameter error of robot and medium

    CN116175566A

  • Method for calibrating touchscreen panel with industrial robot and system, industrial robot and touchscreen using the same

    WO2017128284A1