Inverse kinematics solution method for redundant robotic arms

By reducing the kinematic parameters of the redundant robotic arm and combining the objective optimization function and damping term, the changes in the kinematic parameters of the r first degrees of freedom are directly solved. This solves the problem that the end-effector pose accuracy and real-time performance of the redundant robotic arm are difficult to achieve in complex environments, and realizes efficient inverse kinematic solution.

CN122125680APending Publication Date: 2026-06-02TSINGHUA UNIVERSITY

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TSINGHUA UNIVERSITY
Filing Date
2026-01-23
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

The inverse kinematics process of redundant robotic arms is complex and it is difficult to simultaneously meet the requirements of end-effector pose accuracy and real-time performance. Existing methods have low computational efficiency or poor robustness and cannot respond quickly in complex environments.

Method used

By using the forward kinematic control equations and linearization approximation method, the kinematic parameters of the redundant robotic arm are reduced in dimension. The nr second degrees of freedom are represented by the pre-defined r first degrees of freedom. By combining the objective optimization function and damping term, the changes in the kinematic parameters of the r first degrees of freedom are directly solved, reducing the solution space to r dimensions.

Benefits of technology

It improves the efficiency and real-time performance of solving the kinematic parameters of redundant robotic arms, ensures the accuracy of the end-effector pose, and is suitable for rapid response control in complex environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122125680A_ABST
    Figure CN122125680A_ABST
Patent Text Reader

Abstract

This disclosure relates to the field of robotic arm technology, including a method for solving the inverse kinematics of a redundant robotic arm. For a redundant robotic arm with n degrees of freedom, based on the end-effector target pose and the forward kinematic control equations, r undetermined kinematic parameters of the first degree of freedom are used to represent the undetermined kinematic parameters of the n-r second degrees of freedom, resulting in a transformation expression. Based on the transformation expression and the linearization approximation method, a linearized expression for the undetermined kinematic parameters of the n degrees of freedom is obtained. After replacing the undetermined kinematic parameters of the n degrees of freedom in the target optimization function with the linearized expression, its partial derivative is calculated and set to zero to obtain the changes in the undetermined kinematic parameters of the r first degrees of freedom. Based on these parameter changes and the transformation expression, the undetermined kinematic parameters of the n degrees of freedom are determined. By introducing the forward kinematic control equations, the accuracy of the end-effector pose of the redundant robotic arm is ensured; the linearization approximation method is used to improve the solution efficiency and meet the real-time control requirements.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of robotic arm technology, and in particular to a method for solving the inverse kinematics of a redundant robotic arm. Background Technology

[0002] A redundant robotic arm is a robotic arm with more degrees of freedom than the minimum required to complete its task. Compared to a non-redundant robotic arm, a redundant robotic arm, by introducing additional degrees of freedom, can actively adjust its arm configuration while maintaining the specific position and posture of the end effector (i.e., end effector pose). This greatly enhances its flexibility and adaptability in environments with numerous obstacles or confined spaces, and it can be widely used in nuclear industry, aerospace, deep-sea applications, and other scenarios. For example, the Wide-Spectrum Ultra-High Flux Test Reactor (WHMRT) is a large scientific facility for conducting materials irradiation experiments, rare isotope production, and neutron science research. The reactor has a shielded water depth of at least 8 meters at its top and nearly 300 irradiation target test positions (used to accommodate materials to be irradiated and isotope production samples) and numerous irradiation channels within a 2-meter diameter area. The internal space is extremely confined and complex, and the loading and unloading of irradiation targets can only be done through a small pressure vessel top cover (500mm in diameter). To meet the loading and unloading requirements of irradiation targets under extremely complex operating conditions, a redundant robotic arm can be used in this test reactor.

[0003] However, compared to conventional non-redundant robotic arms, redundant robotic arms have an infinite number of inverse kinematic solutions for a specific end-effector pose. Therefore, it is necessary to determine the optimal solution by combining specific optimization conditions. The solution process is complex, time-consuming, and faces problems such as motion singularities. Specifically, currently, methods for determining the kinematic parameters of redundant robotic arms typically include the following:

[0004] The first method is numerical methods, such as Newton-Raphson iteration, Jacobi pseudo-inverse, gradient projection, etc., which solve the kinematic parameters of the redundant robotic arm through linear approximation or optimization strategies.

[0005] Numerical methods are computationally efficient but sensitive to initial conditions and may fail near singular points.

[0006] The second type is analytical methods, such as joint angle parameterization and arm angle parameterization, which can provide closed solutions for kinematic parameters for specific configurations.

[0007] Analytical methods are fast but have poor versatility. Redundant robotic arms need to meet specific geometric conditions and require optimization algorithms to determine a unique solution.

[0008] The third type is intelligent optimization methods, such as genetic algorithms and particle swarm optimization, which use swarm intelligence to search for the global optimal solution of kinematic parameters.

[0009] Intelligent optimization methods are robust but computationally intensive, have slow convergence speed, and poor real-time performance.

[0010] The fourth method is based on machine learning, which uses data to train models to achieve rapid prediction.

[0011] Learning-based methods are suitable for real-time control but rely on large amounts of high-quality data and have limited generalization ability.

[0012] In summary, current methods for determining the kinematic parameters of redundant robotic arms cannot simultaneously meet the requirements of accuracy and real-time performance in motion control (end-effector pose) of redundant robotic arms. Summary of the Invention

[0013] In view of this, this disclosure proposes a method, device and storage medium for solving the inverse kinematics of a redundant robotic arm, which can meet the real-time control requirements while ensuring the accuracy of the end-effector pose, thereby ensuring that the redundant robotic arm can complete the specified task in a timely manner in a complex spatial environment.

[0014] According to one aspect of this disclosure, a method for solving the inverse kinematics of a redundant robotic arm is provided, wherein the redundant robotic arm includes n degrees of freedom, where n is a positive integer; the method includes:

[0015] Given the end-effector target pose of the redundant robotic arm at the next moment, the forward kinematic control equations determined based on the end-effector target pose and the structural parameters of the redundant robotic arm are used to represent the nr second-degree-of-freedom kinematic parameters through a preset set of r first-degree-of-freedom kinematic parameters, resulting in the transformation expressions for the second-degree-of-freedom kinematic parameters. The forward kinematic control equations describe the relationship between the end-effector pose and the n degrees of freedom; nr is the minimum number of degrees of freedom required for the redundant robotic arm to complete any task, r is a positive integer, and n is greater than r.

[0016] Based on the linearization approximation method, a linearized expression for the kinematic parameters of n degrees of freedom to be determined is obtained. The linearized expression is based on the transformation expression, which transforms the kinematic parameters of the n degrees of freedom to be determined at the next time step into the kinematic parameters of the n degrees of freedom at the current time step, the kinematic Jacobian matrix at the current time step, and the change in the kinematic parameters of the r first degrees of freedom to be determined.

[0017] Based on operational requirements, a target optimization function containing n degrees of freedom of kinematic parameters to be determined is determined. After replacing the n degrees of freedom of kinematic parameters to be determined in the target optimization function with the linearized expression, the partial derivatives are solved and set to zero, resulting in r linear equations. Solving these equations simultaneously yields the r changes in the first degree of freedom of the kinematic parameters to be determined. The target optimization function is used to optimize the n degrees of freedom of kinematic parameters to achieve the desired performance.

[0018] Based on the changes in the kinematic parameters to be determined for the r first degrees of freedom and the current kinematic parameters for the r first degrees of freedom at the current moment, determine the kinematic parameters to be determined for the r first degrees of freedom.

[0019] Based on the r first degrees of freedom kinematic parameters to be determined and the transformation expression, the nr second degrees of freedom kinematic parameters to be determined are determined, so that the redundant robotic arm operates according to the n degrees of freedom kinematic parameters to be determined in order to achieve the end-effector target pose.

[0020] In one possible implementation, the linearized expression for the kinematic parameters to be determined with n degrees of freedom, obtained based on the linearized approximation method, includes:

[0021] Based on the kinematic parameters of the n degrees of freedom at the current moment and the transformation expression, determine the kinematic Jacobian matrix at the current moment;

[0022] The linearized expression is obtained by superimposing the kinematic parameters of the n degrees of freedom at the current time onto the product of the kinematic Jacobian matrix at the current time and the changes in the r kinematic parameters of the first degree of freedom to be determined.

[0023] In one possible implementation, the linearization expression is represented by the following equation:

[0024] ;

[0025] in, Represents the kinematic parameters to be determined for n degrees of freedom; Represents the kinematic parameters of the n degrees of freedom at the current moment; This represents the kinematic Jacobian matrix at the current moment; This represents the change in the kinematic parameters to be determined for the r first degrees of freedom.

[0026] In one possible implementation, after replacing the kinematic parameters to be determined for the n degrees of freedom in the objective optimization function with the linearized expression, solving its partial derivatives and setting them to zero yields r linear equations. Solving these equations simultaneously yields the changes in the r kinematic parameters to be determined for the first degree of freedom, including:

[0027] By introducing a damping term into the coefficients of the undetermined kinematic parameter changes in the r first degrees of freedom of the r linear equations, and solving the simultaneous equations, the undetermined kinematic parameter changes in the r first degrees of freedom can be obtained.

[0028] In one possible implementation, the linear system consisting of the r linear equations is represented by the following equation:

[0029] ;

[0030] in, The coefficient matrix represents the change in the kinematic parameters of the r first degrees of freedom when the damping term is not introduced. This represents the damping term. I represents the damping coefficient, and I represents the element matrix. This represents the change in the kinematic parameters to be determined in the r linear equations and the r first degrees of freedom. Irrelevant quantities.

[0031] In one possible implementation, the damping coefficient This can be expressed by the following formula:

[0032] ;

[0033] in, This represents the preset reference value. This represents the condition number of the coefficient matrix at the current time. This represents the condition number threshold of the coefficient matrix at the current time. This indicates the preset adjustment parameters.

[0034] In one possible implementation, the operational requirements can be expressed by a theoretical expression; the operational requirements include at least one of the following:

[0035] Optimal softness requirement;

[0036] Not exceeding the joint's limit threshold;

[0037] Obstacle avoidance requirements.

[0038] According to another aspect of this disclosure, a kinematic inverse solution apparatus for a redundant robotic arm is provided, the redundant robotic arm having n degrees of freedom, where n is a positive integer; the apparatus includes:

[0039] The motion parameter dimensionality reduction module is used to: upon obtaining the end-effector pose of the redundant robotic arm at the next moment, based on the positive kinematic control equation determined by the end-effector pose and the structural parameters of the redundant robotic arm, represent nr kinematic parameters of the second degree of freedom using pre-set r first degree of freedom kinematic parameters to be determined, thereby obtaining the transformation expression of the second degree of freedom kinematic parameters; wherein, the positive kinematic control equation is used to describe the relationship between the end-effector pose and the n degrees of freedom; nr is the minimum number of degrees of freedom required for the redundant robotic arm to complete any task, r is a positive integer, and n is greater than r;

[0040] The motion parameter linearization module is used to: obtain linearized expressions for the kinematic parameters of n degrees of freedom to be determined based on the linearization approximation method, wherein the linearized expressions, based on the transformation expressions, convert the kinematic parameters of the n degrees of freedom to be determined at the next time step into the kinematic parameters of the n degrees of freedom at the current time step, the kinematic Jacobian matrix at the current time step, and the change in the kinematic parameters of the r first degrees of freedom to be determined.

[0041] The kinematic parameter change solution module is used to: determine a target optimization function containing n degrees of freedom of kinematic parameters to be determined based on operational requirements; replace the n degrees of freedom of kinematic parameters to be determined in the target optimization function with the linearized expression; solve its partial derivative and set it to zero to obtain r linear equations; solve them simultaneously to obtain the r changes in the first degree of freedom of kinematic parameters to be determined; wherein, the target optimization function is used to optimize the n degrees of freedom of kinematic parameters to achieve the desired performance;

[0042] The motion parameter determination module is used to: determine the kinematic parameters to be determined for the r first degrees of freedom based on the changes in the kinematic parameters to be determined for the r first degrees of freedom and the current kinematic parameters of the r first degrees of freedom at the current moment;

[0043] The motion parameter determination module is further configured to: determine the nr second degree kinematic parameters based on the r first degree kinematic parameters to be determined and the transformation expression, so that the redundant robotic arm operates according to the n degrees of freedom kinematic parameters to be determined to achieve the end-effector target pose.

[0044] According to another aspect of this disclosure, an inverse kinematics solution apparatus for a redundant robotic arm is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the above method.

[0045] According to another aspect of this disclosure, a non-volatile computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the steps of the above-described method.

[0046] According to another aspect of this disclosure, a computer program product is provided, including a computer program or a non-volatile computer-readable storage medium carrying the computer program, wherein the computer program, when executed by a processor, implements the steps of the above-described method.

[0047] By acquiring the end-effector pose of the redundant robotic arm at the next moment, the forward kinematic control equations are determined based on the end-effector pose and the structural parameters of the redundant robotic arm. The nr second-degree-of-freedom kinematic parameters are represented by pre-set r first-degree-of-freedom kinematic parameters, resulting in transformation expressions for the second-degree-of-freedom kinematic parameters. A linearized approximation method is used to obtain linearized expressions for the n-degree-of-freedom kinematic parameters. These linearized expressions, based on the transformation expressions, convert the n-degree-of-freedom kinematic parameters at the next moment into the current n-degree-of-freedom kinematic parameters, the current kinematic Jacobian matrix, and the changes in the r first-degree-of-freedom kinematic parameters. Based on operational requirements... Define a target optimization function containing n degrees of freedom and undetermined kinematic parameters. Replace the n degrees of freedom and undetermined kinematic parameters in the target optimization function with linearized expressions, solve for their partial derivatives and set them to zero, resulting in r linear equations. Solve these equations simultaneously to obtain the changes in the r first degrees of freedom and undetermined kinematic parameters. Based on the changes in the r first degrees of freedom and the current kinematic parameters of the r first degrees of freedom, determine the r first degrees of freedom and undetermined kinematic parameters. Based on the r first degrees of freedom and undetermined kinematic parameters and the transformation expression, determine the nr second degrees of freedom and undetermined kinematic parameters, so that the redundant robotic arm operates according to the n degrees of freedom and undetermined kinematic parameters to achieve the end-effector target pose. The aforementioned method for solving the inverse kinematics of a redundant robotic arm uses r first degrees of freedom to represent nr second degrees of freedom. On the one hand, it transforms the problem of solving the kinematic parameters of n degrees of freedom into solving the kinematic parameters of r first degrees of freedom, reducing the solution space of the inverse kinematics of the redundant robotic arm from n dimensions to r dimensions and improving the efficiency of solving the kinematic parameters. On the other hand, since the transformation expression between the kinematic parameters of nr second degrees of freedom and the kinematic parameters of r first degrees of freedom is determined by the end-effector pose and the forward kinematic control equations, after determining the kinematic parameters of r first degrees of freedom, the kinematic parameters of nr second degrees of freedom determined based on this transformation expression must conform to the forward kinematic control equations and the end-effector pose, thereby ensuring the precise operation of the redundant robotic arm.

[0048] Furthermore, for solving the preset target optimization function, traditional parameter optimization algorithms such as Newton's iteration method and bisection method mainly rely on iterative optimization, resulting in long computation times. The current inverse kinematics solution method introduces a linear expression for the kinematic parameters of n degrees of freedom to be determined, and a transformation expression for the kinematic parameters of nr second degrees of freedom. This reduces the optimization space of the preset target optimization function from n dimensions to r dimensions. The gradient of the replaced target optimization function with respect to the changes in the r first degrees of freedom kinematic parameters is determined and set to zero, resulting in r linear equations. Solving these equations simultaneously directly yields the changes in the r first degrees of freedom kinematic parameters, significantly reducing computation time (by 1-2 orders of magnitude). Therefore, this method can improve the real-time performance of parameter determination while ensuring accurate arrival at the end-effector pose, making it suitable for the rapid response control requirements of redundant robotic arms in complex environments.

[0049] Other features and aspects of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0050] The accompanying drawings, which are included in and form part of this specification, illustrate exemplary embodiments, features, and aspects of this disclosure together with the specification and serve to explain the principles of this disclosure.

[0051] Figure 1 A flowchart is shown showing a method for solving the inverse kinematics of a redundant robotic arm according to an embodiment of the present disclosure;

[0052] Figure 2 A block diagram of an inverse kinematics solving apparatus for a redundant robotic arm according to an embodiment of the present disclosure is shown.

[0053] Figure 3 A block diagram of an inverse kinematics solving apparatus for a redundant robotic arm according to another embodiment of the present disclosure is shown. Detailed Implementation

[0054] Various exemplary embodiments, features, and aspects of this disclosure will now be described in detail with reference to the accompanying drawings. The same reference numerals in the drawings denote elements that have the same or similar functions. Although various aspects of the embodiments are shown in the drawings, they are not necessarily drawn to scale unless specifically indicated otherwise.

[0055] As used herein, the terms “comprising,” “including,” “having,” or variations thereof are open-ended and include one or more of the stated features, integrals, elements, steps, components, or functions, but do not exclude the presence or addition of one or more other features, integrals, elements, steps, components, functions, or groups thereof.

[0056] When an element is referred to as “connected,” “coupled,” “responding,” or a variation thereof relative to another element, it may be directly connected, coupled, or responding to another element, or there may be an intermediate element present.

[0057] Although the terms first, second, third, etc., may be used herein to describe various elements / operations, these elements / operations should not be limited by these terms. These terms are only used to distinguish one element / operation from another. Therefore, without departing from the teachings of the inventive concept, a first element / operation in some embodiments may be referred to as a second element / operation in other embodiments.

[0058] The term “exemplary” as used herein means “serving as an example, embodiment, or illustration.” Any embodiment illustrated herein as “exemplary” is not necessarily to be construed as superior to or better than other embodiments.

[0059] Furthermore, to better illustrate this disclosure, numerous specific details are set forth in the following detailed description. Those skilled in the art will understand that this disclosure can be practiced without certain specific details. In some instances, methods, means, components, and circuits well known to those skilled in the art have not been described in detail in order to highlight the main points of this disclosure.

[0060] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, data stored, data displayed, etc.) and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant regions.

[0061] Figure 1 A flowchart illustrating a method for solving the inverse kinematics of a redundant robotic arm according to an embodiment of this disclosure is provided. The redundant robotic arm includes n degrees of freedom, where n is a positive integer. This embodiment uses the method in a control device for the redundant robotic arm as an example. This control device can be a controller installed in the redundant robotic arm, or an electronic device independent of the redundant robotic arm but communicatively connected to it. This electronic device includes, but is not limited to, devices with processing capabilities such as user terminals or servers. This embodiment does not limit the implementation of the control device. Figure 1 As shown, the method includes:

[0062] Step 101: After obtaining the end-effector pose of the redundant manipulator at the next moment, based on the positive kinematic control equation determined by the end-effector pose and the structural parameters of the redundant manipulator, the nr kinematic parameters of the second degree of freedom are represented by the preset r first degree of freedom kinematic parameters, and the transformation expression of the second degree of freedom kinematic parameters is obtained.

[0063] nr represents the minimum number of degrees of freedom required for the redundant robotic arm to complete any task, where r is a positive integer and n is greater than r. For example, if nr is 6 and n is 8, then the number of the first degree of freedom is 2.

[0064] The end-effector target pose refers to the position and orientation that the end effector of a redundant robotic arm needs to achieve. The end-effector target pose can be represented as T(P, R), where T represents the end-effector target pose, P represents the position parameters in the end-effector target pose, and R represents the orientation parameters in the end-effector target pose. Optionally, the end-effector target pose can be sent by other devices or generated by control devices; this embodiment does not limit the method of obtaining the target end-effector pose.

[0065] The forward kinematics control equations describe the relationship between the end-effector pose and the n degrees of freedom. For example, the forward kinematics control equations can be established based on a homogeneous transformation matrix; for instance, the forward kinematics control equations can be expressed as:

[0066] ;

[0067] in, Let be a homogeneous transformation matrix, representing the relative position and orientation between adjacent (i-1)th joints and the ith joint in the redundant robotic arm; where i is a positive integer from 1 to n, and i-1=0 represents the robotic arm base; The matrix representing the total homogeneous transformation from the robot arm base to the end effector in a redundant robot arm consists of a rotation matrix R and a position vector P. (i.e., the end-target pose matrix) ) can be represented as:

[0068] .

[0069] Wherein, the rotation matrix R is used to describe the orientation of the end effector, its column vectors correspond to the unit vectors of the end effector coordinate axes, and can be equivalently represented by a 3×1 orientation vector; n=[n x ,n y ,n z ] T , represents the direction vector of the x-axis of the end effector's end coordinate system in the base coordinate system of the robot arm base, n x n represents the projection length of the x-axis of the end coordinate system onto the x-axis of the base coordinate system. y n represents the projection length of the x-axis of the end coordinate system onto the y-axis of the base coordinate system. z This represents the projection length of the x-axis of the end coordinate system onto the z-axis of the base coordinate system. o=[o x ,o y ,oz ] T , represents the direction vector of the y-axis of the end effector's end coordinate system in the base coordinate system of the robot arm base, o x o represents the projection length of the y-axis of the end coordinate system onto the x-axis of the base coordinate system. y o represents the projection length of the y-axis of the end coordinate system onto the y-axis of the base coordinate system. z This represents the projection length of the y-axis of the end coordinate system onto the z-axis of the base coordinate system. a=[a x ,a y ,a z ] T , represents the direction vector of the z-axis of the end effector's end coordinate system in the base coordinate system of the robot arm base, a x a represents the projection length of the z-axis of the end coordinate system onto the x-axis of the base coordinate system. y a represents the projection length of the z-axis of the end coordinate system onto the y-axis of the base coordinate system. z This represents the projection length of the z-axis of the end coordinate system onto the z-axis direction of the base coordinate system. Position vector P = [p x ,p y ,p z ] T , representing the position of the origin of the end effector's end coordinate system relative to the robot arm base, p x p represents the distance from the origin of the end coordinate system along the x-axis of the base coordinate system to the origin of the base. y p represents the distance from the origin of the end coordinate system along the y-axis of the base coordinate system to the origin of the base. z This represents the distance from the origin of the end coordinate system to the origin of the base coordinate system along the z-axis.

[0070] The rotation matrix R and position vector P can be represented by the kinematic parameters of the redundant manipulator. The kinematic parameters of each joint indicate its state value. For example, if a joint is a rotary joint, the kinematic parameters indicate its angle; if a joint is a sliding joint, the kinematic parameters indicate its sliding distance. In forward kinematics, the complete kinematic parameters of the redundant manipulator are... It can be represented as: ,in, Let represent the kinematic parameters corresponding to the 1st to the nth joints. Correspondingly, the forward kinematic control equations can also be simply expressed as: Where F represents the total homogeneous transformation matrix with n degrees of freedom. The relationship between them.

[0071] Since traditional analytical inverse kinematics (IK) is applicable to non-redundant robotic arms, the forward kinematics equations for redundant robotic arms... Typically, there are no inverse kinematic solutions. Based on this, in this embodiment, r pre-defined first-degree-of-freedom kinematic parameters are used to represent nr second-degree-of-freedom kinematic parameters. On one hand, this transforms the problem of solving for the kinematic parameters of n degrees of freedom into solving for the kinematic parameters of r first degrees of freedom, reducing the solution space of the redundant manipulator's inverse kinematic solution from n dimensions to r dimensions, thus improving the computational efficiency of the kinematic parameters. On the other hand, since the transformation expression between the nr second-degree-of-freedom kinematic parameters and the r first-degree-of-freedom kinematic parameters is determined through the forward kinematic control equations, after determining the kinematic parameters of the r first degrees of freedom, the nr second-degree-of-freedom kinematic parameters determined based on this transformation expression must conform to the forward kinematic control equations, thereby ensuring that the determined kinematic parameters can accurately achieve the end-effector target pose of the redundant manipulator.

[0072] The r first degrees of freedom are preset in the control device. Optionally, the r first degrees of freedom can be selected according to preset rules or manually specified. This embodiment does not limit the selection method of the r first degrees of freedom.

[0073] For example, let a = nr, then the complete kinematic parameters It can be represented as:

[0074] ;

[0075] in, Represents the kinematic parameters of the 'a'th degree of freedom. Let r represent the kinematic parameters of the first degree of freedom.

[0076] Accordingly, the above For each of the *a* expressions, by transformation and solution, we can obtain the expressions for the *a* second-degree-of-freedom kinematic parameters with respect to the *r* first-degree-of-freedom kinematic parameters: This yields the transformation expression.

[0077] Step 102: Based on the linearization approximation method, obtain the linearized expression of the kinematic parameters to be determined for n degrees of freedom. The linearized expression is based on the transformation expression, which transforms the kinematic parameters to be determined for the next n degrees of freedom into the kinematic parameters for the current n degrees of freedom, the kinematic Jacobian matrix for the current time, and the change in the r first degrees of freedom of the kinematic parameters to be determined.

[0078] For the same end-target pose, different To achieve different joint poses for the end-effector target pose using a redundant robotic arm, it is typically necessary to select the optimal pose by combining a preset target optimization function. .

[0079] The objective optimization function is used to optimize the kinematic parameters of n degrees of freedom to achieve the desired performance. The objective optimization function is set based on the operational requirements of the redundant robotic arm, which can be expressed by theoretical expressions and is typically represented by the kinematic parameters of n degrees of freedom. For example, runtime requirements include, but are not limited to, at least one of the following:

[0080] 1. Optimal compliance requirement, used to make the movement of redundant robotic arms smoother and more stable, reducing abrupt joint movements and shocks.

[0081] For example, the objective optimization function is determined based on the operational requirement of "optimal compliance requirement". It can be represented as:

[0082] ;

[0083] in, This indicates kinematic parameters that are yet to be determined. This represents the kinematic parameters at the previous moment.

[0084] 2. Do not exceed the joint's limit threshold to avoid kinematic parameter errors. Exceeding its physical limitations.

[0085] For example, the objective optimization function is determined based on the operational requirement of "not exceeding the joint limit threshold". It can be represented as:

[0086] ;

[0087] ;

[0088] in, Indicates kinematic parameters to be determined; This represents the minimum value within the range of variation of a kinematic parameter. This represents the maximum value of the range of variation of the kinematic parameter.

[0089] 3. Obstacle avoidance requirement: to prevent redundant robotic arms from colliding with obstacles in the working environment.

[0090] In other implementations, the objective optimization function can also be established based on other operational requirements. This embodiment does not limit the implementation method of the objective optimization function.

[0091] Taking the objective optimization function as an example, which is based on at least two operational requirements, the objective optimization function can be the sum of the theoretical expressions corresponding to each operational requirement, or a weighted sum. For example, the objective optimization function includes the above... and Then the objective optimization function It can be represented as:

[0092] ;

[0093] in, Indicates kinematic parameters to be determined; express The corresponding weights; express The corresponding weights.

[0094] In one example, regarding the kinematic parameters to be determined The objective function can be transformed into the current kinematic parameters at the current moment. and the change in kinematic parameters of the first degree of freedom The objective optimization function is as follows. Specifically, the kinematic parameters to be determined for the next n degrees of freedom can be transformed into the kinematic parameters for the current n degrees of freedom, the kinematic Jacobian matrix at the current time, and the changes in the r first degrees of freedom of the kinematic parameters to be determined through a linearized expression. Therefore, it is necessary to obtain this linearized expression. Specifically, the kinematic parameters to be determined can be obtained based on a linear approximation method. Perform a Taylor expansion, omitting higher-order partial derivatives (i.e., omitting second-order partial derivatives and all other partial derivatives of higher order), and retaining first-order partial derivatives to obtain a linearized expression that approximates the kinematic parameters to be determined. .

[0095] For example, a linearized expression for the kinematic parameters to be determined with n degrees of freedom is obtained based on the linearization approximation method, including:

[0096] Based on the kinematic parameters of the n degrees of freedom at the current time and the transformation expression, the kinematic Jacobian matrix at the current time is determined; the linearized expression is obtained by superimposing the kinematic parameters of the n degrees of freedom at the current time into the product of the kinematic Jacobian matrix at the current time and the changes of the r kinematic parameters of the first degree of freedom to be determined.

[0097] That is, the linearized expression can be represented as ;in, Represents the kinematic parameters to be determined for n degrees of freedom; Represents the kinematic parameters of the n degrees of freedom at the current moment; This represents the kinematic Jacobian matrix at the current moment. Taking n=8, r=2, and the first degree of freedom at the 3rd and 5th joints respectively as an example, the kinematic Jacobian matrix at the current moment... It can be represented as:

[0098]

[0099] in, and The kinematic parameters for the 3rd and 5th joint degrees of freedom are given. Substituting these two kinematic parameters for the first degree of freedom into the transformation expression yields the baseline kinematic parameters for each degree of freedom. ~ .

[0100] Current kinematic Jacobian matrix The solution can be obtained directly by transforming the expression, or it can be solved using numerical approximation methods. In one example, the kinematic Jacobian matrix at the current moment is approximated using the central finite difference method. Each partial derivative in . This represents the current kinematic parameters for each of the first degrees of freedom out of n degrees of freedom; Indicates based on The reference kinematic parameters for each degree of freedom, determined by the end-target pose and transformation expression, are given by the kinematic parameters, where i is a positive integer from 1 to n. That is, the kinematic Jacobian matrix at the current moment. By each The composition, based on the central finite difference method to approximate the current kinematic Jacobian matrix, can be obtained as follows: ; This represents the current kinematic parameters for each of the first degrees of freedom out of n degrees of freedom; Indicates based on The reference kinematic parameters for each degree of freedom, determined by the end-target pose and transformation expression, are given by the parameter i, which is a positive integer from 1 to n. Specifically, the same... corresponding lie in In the same column, the same corresponding lie in of the same line. Indicates each When changes occur, each The rate of change; Indicates based on The kinematic parameters are determined by the end-target pose and transformation expression; Indicates based on The kinematic parameters determined by the end-target pose and transformation expression This indicates the preset finite difference step size.

[0101] Step 103: Based on the operational requirements, determine the objective optimization function containing the kinematic parameters to be determined with n degrees of freedom. After replacing the kinematic parameters to be determined with n degrees of freedom in the objective optimization function with linearized expressions, solve its partial derivatives and set them to zero to obtain r linear equations. Solve these equations simultaneously to obtain the changes in the r kinematic parameters to be determined with the first degree of freedom.

[0102] The objective optimization function is as described above. For example, substituting the linearized expression of the kinematic parameters into... Afterwards, we can obtain:

[0103]

[0104] Accordingly,

[0105]

[0106] Where J is the current kinematic Jacobian matrix, and const represents a constant term.

[0107] Taking the gradient of the objective function and setting it to 0, we can obtain a linear system consisting of r linear equations, which can be expressed as follows:

[0108] .

[0109] Optionally, to address the singularity problem of redundant robotic arms, a damping term can be introduced. Accordingly, after replacing the kinematic parameters to be determined in the preset objective optimization function with linearized expressions for the kinematic parameters, the gradient of the replaced objective optimization function is determined and set to 0, thus obtaining a system of linear equations for the r first degrees of freedom. Solving this system simultaneously determines the changes in the kinematic parameters for the r first degrees of freedom, including:

[0110] By introducing a damping term into the coefficients of the undetermined kinematic parameter changes in the r first degrees of freedom of the r linear equations, and solving the simultaneous equations, the undetermined kinematic parameter changes in the r first degrees of freedom can be obtained.

[0111] Accordingly, a linear system consisting of r linear equations is represented by the following equation:

[0112] ;

[0113] in, The coefficient matrix represents the change in the kinematic parameters of the r first degrees of freedom when the damping term is not introduced. Indicates the damping term. I represents the damping coefficient, and I represents the element matrix. This represents the change in the kinematic parameters to be determined in the r linear equations and the r first degrees of freedom. Irrelevant quantities.

[0114] The damping coefficient is expressed by the following formula:

[0115] ;in, This represents the preset reference value. Represents the coefficient matrix at the current time. condition number; Represents the coefficient matrix at the current time. Condition number threshold, This indicates the preset adjustment parameters.

[0116] Current time coefficient matrix The condition number is used to measure the coefficient matrix at the current time step. The stability and invertibility of the mean value represent the coefficient matrix at the current time step. Sensitivity to input disturbances. The condition number M can be expressed as: the coefficient matrix at the current time step. The ratio of the maximum singular value to the minimum singular value. Wherein, the coefficient matrix at the current time step... The process of obtaining the maximum and minimum singular values ​​includes: [the process of obtaining the coefficient matrix at the current time step]. Perform singular value decomposition to obtain a diagonal matrix. Determine the maximum and minimum values ​​from the diagonal elements of the diagonal matrix to obtain the maximum and minimum singular values.

[0117] Still using the objective optimization function as For example, correspondingly, the changes in the kinematic parameters of the r first degrees of freedom for:

[0118] .

[0119] Step 104: Based on the changes in the kinematic parameters of the r first degrees of freedom to be determined and the current kinematic parameters of the r first degrees of freedom at the current time, determine the kinematic parameters of the r first degrees of freedom to be determined.

[0120] Specifically, the r kinematic parameters of the first degree of freedom to be determined are: the current kinematic parameters of the r first degrees of freedom at the current moment plus the changes in the r kinematic parameters of the first degrees of freedom to be determined. That is, the r kinematic parameters of the first degrees of freedom to be determined can be expressed as:

[0121] .

[0122] in, This represents r kinematic parameters with first degrees of freedom yet to be determined; Let r represent the current kinematic parameters of the first degree of freedom. This represents the change in the kinematic parameters to be determined for r first degrees of freedom.

[0123] Step 105: Based on the r kinematic parameters to be determined for the first degree of freedom and the transformation expression, determine the nr kinematic parameters to be determined for the second degree of freedom, so that the redundant robotic arm can run according to the kinematic parameters to be determined for the n degrees of freedom to achieve the target pose at the end.

[0124] After determining the r kinematic parameters to be determined for the first degree of freedom, substitute these r kinematic parameters into the transformation expression. This yields the kinematic parameters for each degree of freedom, including the kinematic parameters for the nr second degrees of freedom. Since the transformation expression is determined based on the forward kinematic control equations, the kinematic parameters for each degree of freedom will ensure that the end effector of the redundant robotic arm reaches the target end pose.

[0125] In summary, the inverse kinematics solution method for the redundant manipulator provided in this embodiment, by obtaining the end-effector pose of the redundant manipulator at the next moment, determines the forward kinematic control equations based on the end-effector pose and the structural parameters of the redundant manipulator, and uses pre-set r first-degree-of-freedom kinematic parameters to represent nr second-degree-of-freedom kinematic parameters, thus obtaining the transformation expression for the second-degree-of-freedom kinematic parameters; and obtains the linearized expression for the n-degree-of-freedom kinematic parameters based on the linearization approximation method. This linearized expression, based on the transformation expression, transforms the n-degree-of-freedom kinematic parameters at the next moment into the n-degree-of-freedom kinematic parameters at the current moment, the current kinematic Jacobian matrix, and the r first-degree-of-freedom kinematic parameters. The parameter change is represented as follows: Based on operational requirements, a target optimization function containing n degrees of freedom kinematic parameters to be determined is determined. After replacing the n degrees of freedom kinematic parameters to be determined in the target optimization function with linearized expressions, the partial derivatives are solved and set to zero, resulting in r linear equations. Solving these equations simultaneously yields the r changes in the first degree of freedom kinematic parameters to be determined. Based on the r changes in the first degree of freedom kinematic parameters to be determined and the current kinematic parameters of the r degrees of freedom kinematic parameters at the current moment, the r first degree of freedom kinematic parameters to be determined are determined. Based on the r first degree of freedom kinematic parameters to be determined and the transformation expression, nr second degree of freedom kinematic parameters to be determined are determined, so that the redundant robotic arm operates according to the n degrees of freedom kinematic parameters to achieve the end-effector target pose. The aforementioned inverse kinematics solution method uses r pre-defined first-degree-of-freedom kinematic parameters to represent nr second-degree-of-freedom kinematic parameters. On one hand, it transforms the original problem of solving for the kinematic parameters of n degrees of freedom into solving for the kinematic parameters of r first degrees of freedom, reducing the solution space of the redundant manipulator's inverse kinematics from n-dimensional to r-dimensional, thus improving the computational efficiency of the kinematic parameters. On the other hand, since the transformation expression between the kinematic parameters of nr second degrees of freedom and the kinematic parameters of r first degrees of freedom is determined by the forward kinematics control equations, after determining the kinematic parameters of r first degrees of freedom, the kinematic parameters of nr second degrees of freedom determined based on this transformation expression must conform to the forward kinematics control equations, thereby ensuring that the determined kinematic parameters can accurately realize the end-effector target pose of the redundant manipulator.

[0126] Furthermore, for solving the preset objective optimization function, traditional parameter optimization algorithms such as Newton's iteration method and bisection method mainly rely on iterative optimization, resulting in long computation times. The current inverse kinematics solution method introduces linear expressions for the kinematic parameters of n degrees of freedom to be determined, reducing the optimization space of the preset objective optimization function from n dimensions to r dimensions. It determines the gradient of the replaced objective optimization function with respect to the changes in the r first-degree-of-freedom kinematic parameters and sets the gradient value to 0, thus obtaining r linear equations. Solving these equations simultaneously directly yields the changes in the r first-degree-of-freedom kinematic parameters, significantly reducing computation time (by 1-2 orders of magnitude). Therefore, this method can greatly improve the efficiency of inverse kinematics solution while ensuring accurate end-effector pose, meeting the precise and real-time control requirements of redundant robotic arms in complex environments.

[0127] Finally, by introducing a damping term, the singularity problem of redundant robotic arms can also be solved, ensuring the accuracy and continuity of trajectory tracking for redundant robotic arms.

[0128] To better understand the inverse kinematics solution method for redundant manipulators provided in this application, an example is given below. Assume an 8-DOF (n=8) redundant manipulator with 3 telescopic arms (arms 1, 2, and 3) and 5 rotary joints (rotary joints 1, 2, 3, 4, and 5). Each telescopic arm includes a sliding joint.

[0129] Assume the parameter table of the 8-DOF redundant robotic arm is as shown in Table 1 below. The column containing the Link represents the joint numbers of two adjacent joints; for example, 1-2 represents the positive kinematic parameters of joint 1 to joint 2, ..., 8-e represents the positive kinematic parameters of joint 8 to the end effector. , , These represent the translation components along the x, y, and z axes from the previous joint to the current joint, respectively. , , These represent the rotational components around the x, y, and z axes from the previous joint to the current joint, respectively. i q represents the length of the robotic arm between two adjacent joints. i Represents a sliding joint, θ i This indicates a rotary joint.

[0130] Table 1:

[0131]

[0132] Based on the positive kinematic parameters shown in Table 1, the homogeneous transformation matrix between adjacent joints can be obtained as follows:

[0133] ; ;

[0134] ; ;

[0135] ; ;

[0136] ; .

[0137] The forward kinematic control equations can be obtained from the homogeneous transformation matrices. , Given the end target pose After that, it can be established Kinematic parameters of joint degrees of freedom The equation between them is expressed as follows:

[0138] , formula (1);

[0139] , formula (2);

[0140] , formula (3);

[0141] , formula (4);

[0142] , formula (5);

[0143] , formula (6);

[0144] , formula (7);

[0145] , formula (8).

[0146] Assume the first degree of freedom is and At this point, given the first degree of freedom and ,as well as According to formula (1), we can obtain The conversion expression is:

[0147] According to this expression, we can obtain... The expression.

[0148] According to formulas (2) and (3), we can obtain The conversion expression is:

[0149]

[0150]

[0151] .

[0152] According to formulas (4) and (5), we can obtain The conversion expression is:

[0153]

[0154]

[0155] .

[0156] According to formulas (6) and (7), the sliding joint can be obtained. and The conversion expression is:

[0157] .

[0158] According to formula (8), the sliding joint can be obtained. The conversion expression is:

[0159] .

[0160] Thus, transformation expressions for the six second-degree-of-freedom kinematic parameters were established based on the two first-degree-of-freedom kinematic parameters, namely... .

[0161] In this embodiment, the first degree of freedom The kinematic parameters to be determined for the first degree of freedom are determined based on the objective optimization function, which is at least based on the joint limits. The range of motion for each joint is shown in Table 2 below.

[0162] Table 2:

[0163]

[0164] After obtaining the objective optimization function, the kinematic parameters to be determined in the objective optimization function are replaced with linearized expressions for the kinematic parameters, i.e. Determine the gradient of the objective function after the replacement, and set the gradient value to 0, thereby obtaining information about... and The system of linear equations, solved simultaneously, yields... and Changes in kinematic parameters. Then, based on... and It can be determined and The kinematic parameters to be determined for the two first degrees of freedom; finally, based on the above transformation expression. and and The kinematic parameters of the two first degrees of freedom can determine the kinematic parameters of each second degree of freedom, thus obtaining the kinematic parameters of n degrees of freedom.

[0165] Figure 2 A block diagram of an inverse kinematics solution apparatus for a redundant robotic arm according to an embodiment of the present disclosure is shown. The redundant robotic arm includes n degrees of freedom, where n is a positive integer. The apparatus includes: a motion parameter dimensionality reduction module 210, a motion parameter linearization module 220, a motion parameter variation calculation module 230, and a motion parameter determination module 240.

[0166] The motion parameter dimensionality reduction module 210 is used to: upon obtaining the end-effector pose of the redundant robotic arm at the next moment, based on the positive kinematic control equation determined by the end-effector pose and the structural parameters of the redundant robotic arm, represent nr kinematic parameters of the second degree of freedom by using r preset kinematic parameters of the first degree of freedom to be determined, thereby obtaining a transformation expression for the kinematic parameters of the second degree of freedom; wherein, the positive kinematic control equation is used to describe the relationship between the end-effector pose and the n degrees of freedom; nr is the minimum number of degrees of freedom required for the redundant robotic arm to complete any task, r is a positive integer, and n is greater than r;

[0167] The motion parameter linearization module 220 is used to: obtain a linearized expression for the kinematic parameters to be determined in n degrees of freedom based on the linearization approximation method, wherein the linearized expression is based on the transformation expression to convert the kinematic parameters to be determined in the next time step into the kinematic parameters of the n degrees of freedom in the current time step, the kinematic Jacobian matrix in the current time step, and the change in the kinematic parameters to be determined in the first degree of freedom.

[0168] The kinematic parameter change solution module 230 is used to: determine a target optimization function containing n degrees of freedom of kinematic parameters to be determined based on operational requirements; replace the n degrees of freedom of kinematic parameters to be determined in the target optimization function with the linearized expression; solve its partial derivative and set it to zero to obtain r linear equations; solve them simultaneously to obtain the r changes in the first degree of freedom of kinematic parameters to be determined; wherein, the target optimization function is used to optimize the n degrees of freedom of kinematic parameters to achieve the desired performance;

[0169] The motion parameter determination module 240 is used to: determine the kinematic parameters to be determined for the r first degrees of freedom based on the changes in the kinematic parameters to be determined for the r first degrees of freedom and the current kinematic parameters of the r first degrees of freedom at the current moment;

[0170] The motion parameter determination module 240 is further configured to: determine the nr second degree kinematic parameters based on the r first degree kinematic parameters to be determined and the transformation expression, so that the redundant robotic arm operates according to the n degrees of freedom kinematic parameters to be determined to achieve the end-effector target pose.

[0171] Optionally, the motion parameter linearization module 220 is used for:

[0172] Based on the kinematic parameters of the n degrees of freedom at the current moment and the transformation expression, determine the kinematic Jacobian matrix at the current moment;

[0173] The linearized expression is obtained by superimposing the kinematic parameters of the n degrees of freedom at the current time onto the product of the kinematic Jacobian matrix at the current time and the changes in the r kinematic parameters of the first degree of freedom to be determined.

[0174] Optionally, the linearized expression is represented by the following formula:

[0175] ;

[0176] in, Represents the kinematic parameters to be determined for n degrees of freedom; Represents the kinematic parameters of the n degrees of freedom at the current moment; This represents the kinematic Jacobian matrix at the current moment; This represents the change in the kinematic parameters to be determined for the r first degrees of freedom.

[0177] Optionally, the motion parameter change solution module 220 is used for:

[0178] By introducing a damping term into the coefficients of the undetermined kinematic parameter changes in the r first degrees of freedom of the r linear equations, and solving the simultaneous equations, the undetermined kinematic parameter changes in the r first degrees of freedom can be obtained.

[0179] Optionally, the linear system consisting of the r linear equations is represented by the following equation:

[0180] ;

[0181] in, The coefficient matrix represents the change in the kinematic parameters of the r first degrees of freedom when the damping term is not introduced. This represents the damping term. I represents the damping coefficient, and I represents the element matrix. This represents the change in the kinematic parameters to be determined in the r linear equations and the r first degrees of freedom. Irrelevant quantities.

[0182] Optionally, the damping coefficient This can be expressed by the following formula:

[0183] ;

[0184] in, This represents the preset reference value. This represents the condition number of the coefficient matrix at the current time. This represents the condition number threshold of the coefficient matrix at the current time. This indicates the preset adjustment parameters.

[0185] Optionally, the operational requirements can be expressed by a theoretical expression; the operational requirements include at least one of the following:

[0186] Optimal softness requirement;

[0187] Not exceeding the joint's limit threshold;

[0188] Obstacle avoidance requirements.

[0189] For details, please refer to the above method implementation examples.

[0190] In some embodiments, the functions or modules of the apparatus provided in this disclosure can be used to perform the methods described in the above method embodiments. The specific implementation can be referred to the description of the above method embodiments, and for the sake of brevity, it will not be repeated here.

[0191] This disclosure also provides a redundant robotic arm inverse kinematics solution device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the above method.

[0192] This disclosure also provides a non-volatile computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the above-described method.

[0193] This disclosure also provides a computer program product, including a computer program or a non-volatile computer-readable storage medium carrying the computer program, wherein the computer program, when executed by a processor, implements the steps of the above method.

[0194] Figure 3This is a block diagram illustrating an inverse kinematics solving apparatus 1900 for a redundant robotic arm according to an exemplary embodiment. For example, apparatus 1900 may be provided as a server or terminal device. (Refer to...) Figure 3 The apparatus 1900 includes a processing component 1922, which further includes one or more processors, and memory resources represented by memory 1932 for storing instructions, such as application programs, that can be executed by the processing component 1922. The application programs stored in memory 1932 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 1922 is configured to execute instructions to perform the methods described above.

[0195] Device 1900 may also include a power supply component 1926 configured to perform power management of device 1900, a wired or wireless network interface 1950 configured to connect device 1900 to a network, and an input / output interface 1958 (I / O interface). Device 1900 can operate on an operating system, such as Windows Server, stored in memory 1932. TM macOS X TM Uoix TM Lioux TM FreeBSD TM Or similar.

[0196] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a memory 1932 including computer program instructions that can be executed by a processing component 1922 of the device 1900 to perform the above-described method.

[0197] Computer-readable storage media can be tangible devices capable of holding and storing programs / instructions used by instruction execution devices. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination of the foregoing. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0198] The computer program (or computer-readable program instructions) described herein can be downloaded from a computer-readable storage medium to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage medium in the respective computing / processing device.

[0199] The computer program (or computer program instructions) used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAo) or a wide area network (WAo)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuits, such as programmable logic circuits, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), are personalized by utilizing state information of computer-readable program instructions. These electronic circuits can execute computer-readable program instructions to implement various aspects of this disclosure.

[0200] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0201] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0202] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

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

[0204] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or technical improvements to the embodiments in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for solving the inverse kinematics of a redundant robotic arm, characterized in that, The redundant robotic arm has n degrees of freedom, where n is a positive integer; the method includes: Given the end-effector target pose of the redundant robotic arm at the next moment, the forward kinematic control equations determined based on the end-effector target pose and the structural parameters of the redundant robotic arm are used to represent the nr second-degree-of-freedom kinematic parameters through a preset set of r first-degree-of-freedom kinematic parameters, resulting in the transformation expressions for the second-degree-of-freedom kinematic parameters. The forward kinematic control equations describe the relationship between the end-effector pose and the n degrees of freedom; nr is the minimum number of degrees of freedom required for the redundant robotic arm to complete any task, r is a positive integer, and n is greater than r. Based on the linearization approximation method, a linearized expression for the kinematic parameters of n degrees of freedom to be determined is obtained. The linearized expression is based on the transformation expression, which transforms the kinematic parameters of the n degrees of freedom to be determined at the next time step into the kinematic parameters of the n degrees of freedom at the current time step, the kinematic Jacobian matrix at the current time step, and the change in the kinematic parameters of the r first degrees of freedom to be determined. Based on operational requirements, a target optimization function containing n degrees of freedom of kinematic parameters to be determined is determined. After replacing the n degrees of freedom of kinematic parameters to be determined in the target optimization function with the linearized expression, the partial derivatives are solved and set to zero, resulting in r linear equations. Solving these equations simultaneously yields the r changes in the first degree of freedom of the kinematic parameters to be determined. The target optimization function is used to optimize the n degrees of freedom of kinematic parameters to achieve the desired performance. Based on the changes in the kinematic parameters to be determined for the r first degrees of freedom and the current kinematic parameters for the r first degrees of freedom at the current moment, determine the kinematic parameters to be determined for the r first degrees of freedom. Based on the r first degrees of freedom kinematic parameters to be determined and the transformation expression, the nr second degrees of freedom kinematic parameters to be determined are determined, so that the redundant robotic arm operates according to the n degrees of freedom kinematic parameters to be determined in order to achieve the end-effector target pose.

2. The method according to claim 1, characterized in that, The linearized expression for the kinematic parameters to be determined with n degrees of freedom, obtained based on the linearized approximation method, includes: Based on the kinematic parameters of the n degrees of freedom at the current moment and the transformation expression, determine the kinematic Jacobian matrix at the current moment; The linearized expression is obtained by superimposing the kinematic parameters of the n degrees of freedom at the current time onto the product of the kinematic Jacobian matrix at the current time and the changes in the r kinematic parameters of the first degree of freedom to be determined.

3. The method according to claim 2, characterized in that, The linearization expression is represented by the following formula: ; in, Represents the kinematic parameters to be determined for n degrees of freedom; Represents the kinematic parameters of the n degrees of freedom at the current moment; This represents the kinematic Jacobian matrix at the current moment; This represents the change in the kinematic parameters to be determined for the r first degrees of freedom.

4. The method according to claim 1, characterized in that, After replacing the kinematic parameters of the n degrees of freedom in the objective optimization function with the linearized expression, solving its partial derivatives and setting them to zero yields r linear equations. Solving these equations simultaneously yields the changes in the r kinematic parameters of the first degree of freedom, including: By introducing a damping term into the coefficients of the undetermined kinematic parameter changes in the r first degrees of freedom of the r linear equations, and solving the simultaneous equations, the undetermined kinematic parameter changes in the r first degrees of freedom can be obtained.

5. The method according to claim 4, characterized in that, The linear system consisting of the r linear equations is represented by the following equation: ; in, The coefficient matrix represents the change in the kinematic parameters of the r first degrees of freedom when the damping term is not introduced. This represents the damping term. I represents the damping coefficient, and I represents the element matrix. This represents the change in the kinematic parameters to be determined in the r linear equations and the r first degrees of freedom. Irrelevant quantities.

6. The method according to claim 5, characterized in that, The damping coefficient This can be expressed by the following formula: ; in, This represents the preset reference value. The condition number of the coefficient matrix at the current time step; This represents the condition number threshold of the coefficient matrix at the current time. This indicates the preset adjustment parameters.

7. The method according to any one of claims 1 to 6, characterized in that, The operational requirements can be expressed by a theoretical expression; the operational requirements include at least one of the following: Optimal softness requirement; Not exceeding the joint's limit threshold; Obstacle avoidance requirements.

8. A device for solving the inverse kinematics of a redundant robotic arm, characterized in that, The redundant robotic arm has n degrees of freedom, where n is a positive integer; the device includes: The motion parameter dimensionality reduction module is used to: upon obtaining the end-effector pose of the redundant robotic arm at the next moment, based on the positive kinematic control equation determined by the end-effector pose and the structural parameters of the redundant robotic arm, represent nr kinematic parameters of the second degree of freedom using pre-set r first degree of freedom kinematic parameters to be determined, thereby obtaining the transformation expression of the second degree of freedom kinematic parameters; wherein, the positive kinematic control equation is used to describe the relationship between the end-effector pose and the n degrees of freedom; nr is the minimum number of degrees of freedom required for the redundant robotic arm to complete any task, r is a positive integer, and n is greater than r; The motion parameter linearization module is used to: obtain linearized expressions for the kinematic parameters of n degrees of freedom to be determined based on the linearization approximation method, wherein the linearized expressions, based on the transformation expressions, convert the kinematic parameters of the n degrees of freedom to be determined at the next time step into the kinematic parameters of the n degrees of freedom at the current time step, the kinematic Jacobian matrix at the current time step, and the change in the kinematic parameters of the r first degrees of freedom to be determined. The kinematic parameter change solution module is used to: determine a target optimization function containing n degrees of freedom of kinematic parameters to be determined based on operational requirements; replace the n degrees of freedom of kinematic parameters to be determined in the target optimization function with the linearized expression; solve its partial derivative and set it to zero to obtain r linear equations; solve them simultaneously to obtain the r changes in the first degree of freedom of kinematic parameters to be determined; wherein, the target optimization function is used to optimize the n degrees of freedom of kinematic parameters to achieve the desired performance; The motion parameter determination module is used to: determine the kinematic parameters to be determined for the r first degrees of freedom based on the changes in the kinematic parameters to be determined for the r first degrees of freedom and the current kinematic parameters of the r first degrees of freedom at the current moment; The motion parameter determination module is further configured to: determine the nr second degree kinematic parameters based on the r first degree kinematic parameters to be determined and the transformation expression, so that the redundant robotic arm operates according to the n degrees of freedom kinematic parameters to be determined to achieve the end-effector target pose.

9. A device for solving the inverse kinematics of a redundant robotic arm, comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method according to any one of claims 1 to 7.

10. A non-volatile computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.