Universal six-axis mechanical arm inverse kinematics solving method based on homotopy continuation
By using the homotopy extension method and low-difference sequence sampling, a homotopy equation is constructed for path tracking, which solves the problems of universality and multiple solution search in the inverse kinematics solution of a six-axis robot. It achieves an efficient and globally convergent inverse kinematics solution, which is applicable to various robot configurations.
Patent Information
- Application Number
- CN202511944301.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-22
- Publication Date
- 2026-03-20
AI Technical Summary
Existing methods for solving the inverse kinematics of six-axis robotic arms lack universality, making it difficult to systematically obtain all inverse kinematic solutions from arbitrary configurations. Furthermore, they are sensitive to initial values during iteration, have insufficient convergence, and cannot meet the requirements for high-precision control.
A homotopy extension-based method is adopted, which combines low-difference sequence sampling and systematic path tracing to construct homotopy equations and perform solution path tracing through numerical iteration to generate multiple sets of inverse kinematic solutions. The generalized inverse of the Jacobian matrix is used to handle singular configurations to ensure convergence and multi-solution search capability.
It achieves stable convergence starting from arbitrary initial values, systematically obtains all inverse kinematic solutions, improves the robustness and practicality of the algorithm, adapts to different robotic arm configurations, and meets the requirements of high-precision control.
Smart Images

Figure CN121696955A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotic arm control technology, and in particular to a general method for solving the inverse kinematics of a six-axis robotic arm based on homotopy extension. Background Technology
[0002] Solving the inverse kinematics of a six-axis industrial robot is a core problem in robot motion planning and control. Existing solution methods can be mainly divided into two categories: analytical methods and numerical methods. For a robot arm that satisfies a specific geometric configuration (such as the Pieper criterion), algebraic elimination or geometric analysis methods can be used to obtain a closed-form solution of its inverse kinematics. However, the derivation process of analytical methods is heavily dependent on the specific configuration of the robot arm, lacks versatility, and is difficult to extend to general six-axis robots with arbitrary configurations.
[0003] To improve the versatility of solution algorithms, numerical methods have become an important research direction. Among them, local numerical methods, represented by Newton's iteration method and its variants (such as the Levenberg-Marquardt algorithm), are widely used. However, these methods essentially rely on the gradient information of the objective function, and their convergence is severely limited by the selection of the initial value. If the initial value is not chosen properly, it is easy to get trapped in local optima or fail to converge completely, thus failing to obtain a reasonable solution. On the other hand, intelligent optimization algorithms such as particle swarm optimization and genetic algorithms have also been applied to this problem. Although these algorithms reduce the sensitivity to the initial value to some extent, they also have inherent defects: on the one hand, the solution accuracy is usually limited, making it difficult to meet the requirements of high-precision control; on the other hand, their computation time is long, real-time performance is difficult to guarantee, and they also lack the ability to systematically obtain all multiple sets of inverse kinematic solutions for a six-axis robotic arm.
[0004] Theoretically, a six-axis robotic arm typically has up to eight different inverse joint space solutions for the same end-effector pose. However, neither the aforementioned general numerical methods nor intelligent optimization methods have effectively solved the problem of finding multiple solutions. Furthermore, although the homotopy method, as a numerical algorithm with wide-range convergence, has been introduced into robotics, existing homotopy implementations, such as those using fixed-point homotopy functions or path-tracking strategies based on the Runge-Kutta method, suffer from insufficient adaptability or low computational efficiency when dealing with the high-dimensional, strongly nonlinear equations corresponding to six-axis robotic arms. Simultaneously, when searching for multiple solutions by changing initial values, the initial values are usually generated using computer pseudo-random numbers, resulting in poor uniformity and low efficiency in the solution space search, making it difficult to ensure that all solutions are obtained. Therefore, there is an urgent need for an efficient and general algorithm that is independent of the robotic arm configuration, insensitive to initial values, and can systematically find all inverse kinematic solutions. Summary of the Invention
[0005] The purpose of this invention is to provide a general method for solving the inverse kinematics of a six-axis manipulator based on homotopy extension. By introducing homotopy extension theory and combining low-difference sequence sampling and systematic path tracking, an efficient and globally convergent solution for the inverse kinematics of a six-axis manipulator is achieved. This effectively overcomes the limitations of existing technologies, such as sensitivity to initial iteration values, inability to systematically obtain multiple solutions, and dependence on specific manipulator configurations.
[0006] To address the aforementioned technical problems, a first aspect of this invention provides a method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension, comprising the following steps: Step S100: Obtain the target pose of the end effector of the six-axis robotic arm, and construct a pose error equation for the six joint variables based on the target pose and the link parameters of the six-axis robotic arm. Step S200: Construct a homotopy equation, which is obtained by linearly combining the pose error equation and a preset auxiliary function through homotopy parameters; Step S300: Based on the preset change sequence of the homotopy parameter from the initial value to the final value, the solution path of the homotopy equation is tracked by the numerical iteration method. By substituting each value in the preset change sequence into the homotopy equation and solving it, a set of inverse kinematic solutions of the pose error equation is obtained. Step S400: Based on the low-difference sequence sampling method, several different initial joint variable values are generated in the six-dimensional joint space. The total number of initial joint variable values is used as the number of iterations. For each set of initial joint variable values, steps S200 to S300 are repeated to obtain multiple different inverse kinematic solutions of the pose error equation.
[0007] Further, based on a preset change sequence of the homotopy parameter from its initial value to its final value, a numerical iterative method is used to track the solution path of the homotopy equation. By sequentially substituting each value in the preset change sequence into the homotopy equation and solving it, a set of inverse kinematic solutions to the pose error equation is obtained, including: Initialize the current joint variable value to the initial joint variable value, and set the initial value of the homotopy parameter; Based on the preset change sequence, each homotopy parameter value is selected sequentially. For each homotopy parameter value, the Jacobian matrix of the pose error equation corresponding to the current joint variable value is calculated, and the generalized inverse matrix of the Jacobian matrix is calculated. Update the current joint variable value based on the product of the function value of the homotopy equation and the generalized inverse matrix; Repeat the iterative process until the homotopy parameter reaches a termination value. The current joint variable value obtained at this point is a set of inverse kinematic solutions to the pose error equation.
[0008] Furthermore, the formula for calculating the homotopy equation is as follows: ; in, This represents the current joint variable value at the nth iteration. This represents the updated joint variable value. Indicates the current joint variable value The generalized inverse of the Jacobian matrix in the pose error equation is given by the given formula. Indicates the current joint variable value And the homotopy equation function value at the current homotopy parameter value t.
[0009] Furthermore, the initial and final values of the homotopy parameter are 0 and 1, respectively, and the step value of the preset change sequence is 0.1.
[0010] Furthermore, the generalized inverse of the Jacobian matrix is the Moore-Penrose pseudoinverse.
[0011] Further, the step of obtaining the target pose of the six-axis robotic arm end effector and constructing a pose error equation for the six joint variables based on the target pose and the link parameters of the six-axis robotic arm includes: Obtain the target pose of the end effector, wherein the target pose includes a position component and an attitude component; Based on the link parameters of the six-axis robotic arm, the actual pose of the end effector corresponding to the current joint variable value is obtained through forward kinematics calculation; Calculate the pose error between the target pose and the actual pose, wherein the pose error includes position error and attitude error; The position error and the attitude error are combined to construct a pose error vector, which is a pose error equation with respect to six joint variables.
[0012] Further, the step of calculating the pose error between the target pose and the actual pose, wherein the pose error includes position error and attitude error, including: Extract the target position coordinates and target Euler angles from the target pose; Extract the actual position coordinates and actual Euler angles from the actual pose; The difference between the target position coordinates and the actual position coordinates is calculated to obtain the position error; The difference between the target Euler angle and the actual Euler angle is calculated to obtain the attitude error.
[0013] Furthermore, the formula for calculating the pose error equation is as follows: ; in, , , , , , These are the position coordinates and Euler angle components of the target pose, respectively. , , , , , These are the position coordinates and Euler angle components of the actual pose, calculated using forward kinematics based on the current joint variable values.
[0014] Furthermore, the preset auxiliary function is a Newtonian homotopy auxiliary function, and its calculation formula is as follows: ; in, The pose error equation is... The initial joint variable values used in the current iteration.
[0015] Furthermore, the low-difference sequence sampling method uses Sobol sequences, and the initial joint variable values are calculated using the following formula: ; in, Let be the initial value for the i-th joint. and Let $\begin{pmatrix}$ be the lower limit and upper limit of the joint angle range for the $i$-th joint, respectively. For the nth The component values of the sequence in the i-th dimension.
[0016] Accordingly, a second aspect of the present invention provides an electronic device, including: at least one processor; and a memory connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to cause the at least one processor to perform the above-described method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension.
[0017] Accordingly, a third aspect of the present invention provides a computer-readable storage medium having computer instructions stored thereon, which, when executed by a processor, implement the above-described method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension.
[0018] The above-described technical solutions of the embodiments of the present invention have the following beneficial technical effects: 1. By constructing a homotopy equation connecting a simple problem and a complex objective problem, and adopting a path-following strategy, the solution process is transformed into a continuous and stable transition from a known solution to the objective solution. The convergence path is guaranteed by the variation law of the homotopy parameter, enabling the algorithm to robustly approximate the inverse kinematic solution with a wide range of convergence characteristics, starting from any given initial joint variable value. This fundamentally solves the problem of iterative divergence or getting trapped in local optima caused by improper initial value selection in traditional numerical methods, and significantly improves the robustness and practicality of the algorithm. 2. By using low-discrepancy sequences such as Sobol sequences to systematically generate multiple sets of initial values in the joint space of the robotic arm, replacing the traditional random sampling method, the uniform distribution and low discreteness of the initial points in the solution space are ensured. On this basis, the homotopy extension solution process is independently performed on each set of initial values, which can effectively track multiple different convergence paths, and then systematically find multiple sets, or even all, of inverse kinematic solutions corresponding to the same end pose, thus solving the shortcomings of existing general algorithms in multi-solution search capabilities. 3. In the iterative steps of path tracking, the Morpenrose pseudo-inverse of the Jacobian matrix is used instead of the conventional inverse matrix. This allows the algorithm to calculate the effective update direction even when the robotic arm is in a singular configuration of the Jacobian matrix, thus overcoming the limitation of the traditional Newton method in being unable to solve near singular points. At the same time, the Newton homotopy auxiliary function is selected to ensure that the homotopy equation is consistent with the Jacobian matrix of the original objective equation. This not only simplifies the differentiation calculation but also mathematically guarantees the numerical consistency and computational efficiency of the path tracking process. Attached Figure Description
[0019] Figure 1 This is a flowchart of the inverse kinematics solution method for a general six-axis robotic arm based on homotopy extension provided in this embodiment of the invention. Detailed Implementation
[0020] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to specific embodiments and the accompanying drawings. It should be understood that these descriptions are merely exemplary and not intended to limit the scope of the invention. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concept of the invention.
[0021] Please refer to Figure 1 The first aspect of this invention provides a method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension, comprising the following steps: Step S100: Obtain the target pose of the end effector of the six-axis robotic arm, and construct the pose error equation for the six joint variables based on the target pose and the link parameters of the six-axis robotic arm.
[0022] In step S100, the desired pose of the six-axis robotic arm end effector in the base coordinate system is first obtained through external command input, an offline programming system, or a real-time trajectory planning module. This target pose completely describes the position and orientation of the end effector in three-dimensional space, and is usually defined by three position coordinates and three attitude angles. The position coordinates determine the spatial position of the end effector in the base coordinate system, while the attitude angles are characterized by Euler angles or rotation vectors. Subsequently, based on the standard Denavit-Hartenberg parametric modeling method, according to the geometry and motion relationships of each link of the robotic arm, the core parameters such as the torsion angle, length, offset, and joint variables of each link are determined sequentially, establishing a complete homogeneous transformation matrix chain from the base coordinate system to the end effector coordinate system. The process of constructing the pose error equation involves element-wise subtracting the six degrees of freedom components of the target pose from the corresponding components of the actual pose calculated by forward kinematics based on the current joint variable values, forming a six-dimensional error vector. The first three components represent the positional deviations in the X, Y, and Z axes of the base coordinate system, respectively, while the latter three components characterize the attitude angle deviations around each coordinate axis. This error vector comprehensively reflects the degree of deviation between the current pose and the desired pose of the end effector in multidimensional space, providing a clear mathematical objective function for subsequent optimization solutions.
[0023] Step S200: Construct a homotopy equation, which is obtained by linearly combining the pose error equation and a preset auxiliary function through homotopy parameters.
[0024] In the homotopy equation construction process of step S200, the Newton homotopy function, with its well-defined mathematical properties, is selected as an auxiliary function. Its analytical expression is defined as the vector difference between the function value of the current pose error equation and the function value calculated based on the initial joint variables. This auxiliary function, through a linear combination with the original pose error equation based on the homotopy parameter, constructs a parameterized homotopy equation system. Mathematically, this forms a continuous deformation system from simple to complex problems: when the homotopy parameter takes a zero value, the homotopy equation simplifies to the auxiliary function expression, and the corresponding solution is the known initial joint variable value or can be obtained through simple calculation; when the homotopy parameter continuously changes to a unit value, the homotopy equation completely converges to the original pose error equation. In practical applications, this mathematical construction manifests as a continuous and smooth path from the solution space of a simple problem to the solution space of a complex problem, enabling the solution process to stably advance from the known region to the unknown region along this path. In particular, this construction method maintains that the Jacobian matrix after differentiating the homotopy equation with respect to the joint variables is completely consistent with the Jacobian matrix of the original pose error equation. This characteristic provides an important mathematical guarantee for subsequent numerical solutions, ensuring the consistency and reliability of derivative information during path tracking.
[0025] Step S300: Based on the preset change sequence of the homotopy parameter from the initial value to the final value, the solution path of the homotopy equation is tracked by the numerical iteration method. By substituting each value in the preset change sequence into the homotopy equation and solving it, a set of inverse kinematic solutions of the pose error equation is obtained.
[0026] In the path tracing process of step S300, a systematic discretization strategy is adopted to divide the homotopy parameter from its initial zero value to its final unit value into a parameter sequence with fixed intervals. This sequence constitutes the discretization framework for path tracing. At each determined homotopy parameter point, a Newton-Raphson iterative algorithm based on the Morpenrose pseudoinverse is implemented for numerical solution.
[0027] The specific iterative process includes the following core steps: First, the Jacobian matrix of the pose error equation is calculated based on the current joint variable configuration. This matrix fully describes the differential sensitivity of the end-effector pose to the joint variables. Then, the generalized inverse of this Jacobian matrix is calculated, ensuring an effective solution space projection even in singular configurations with rank deficiency. Next, incremental update terms for the joint variables are constructed based on the function values of the current homotopy equation combined with the generalized inverse matrix. Through this numerical strategy combining parameter discretization and iterative solution, a gradual evolution from the known solution of the auxiliary function to the target solution of the original pose error equation is achieved along the homotopy path. The entire tracking process exhibits good numerical stability, especially in regions where the Jacobian matrix exhibits singular robotic arm configurations. The application of the pseudo-inverse effectively avoids numerical computation instability and ensures the continuity of path tracking. This phased solution mechanism not only guarantees the convergence of the algorithm in complex nonlinear systems but also provides a reliable numerical path from simple to complex for inverse kinematics solutions.
[0028] Step S400: Based on the low-difference sequence sampling method, several different initial joint variable values are generated in the six-dimensional joint space. The total number of initial joint variable values is used as the number of iterations. For each set of initial joint variable values, steps S200 to S300 are repeated to obtain multiple different inverse kinematic solutions of the pose error equation.
[0029] In the systematic search for multiple solutions in step S400, the Sobol sequence, a deterministic low-discrepancy sequence generation technique, is used to construct a highly uniform set of initial points within the feasible region of the six-dimensional joint space. Compared with traditional pseudo-random sampling methods, the low-discrepancy sequence, through a precisely defined deterministic sampling strategy, ensures that the generated sample points exhibit optimal distribution uniformity in the solution space, with significantly lower discrete bias than random sampling. This effectively avoids the search blind spots caused by clustering effects in traditional methods, significantly improving the completeness of solution space exploration. In specific implementation, based on the physical motion range constraints of each joint, the sample points of the Sobol sequence in the unit hypercube are mapped to the actual joint space through affine transformation, with each dimension corresponding to the value range of a joint variable. For each initial joint configuration generated by this method, an independent initialization and execution of the complete homotopy extension solution process are performed. This parallel and independent solution strategy can effectively explore different regions of the solution space and systematically discover multiple fundamentally different solution branches of the pose error equation. This method can not only stably obtain the inverse kinematics solution under the conventional configuration, but also reliably obtain all potential solutions corresponding to different kinematic configurations such as elbow on top and elbow on the bottom, and wrist forward and reverse rotation, thus providing a complete solution space for trajectory planning and configuration selection of robotic arms.
[0030] The above technical solution effectively overcomes the sensitivity of traditional numerical methods to initial iteration values by introducing a continuous deformation path constructed by homotopy extension theory and combining it with Newton's iteration method based on pseudo-inverse, achieving stable convergence from any initial point. It employs a systematic sampling strategy with low-discrepancy sequences to generate a uniformly distributed set of initial points in the six-dimensional joint space, ensuring sufficient exploration of different solution space regions and systematically acquiring all inverse kinematic solutions, including those with different elbow configurations and wrist poses. Simultaneously, by selecting Newton's homotopy function and pseudo-inverse processing techniques, it maintains the consistency of the Jacobian matrix during path tracking and ensures the numerical stability of the algorithm near singular poses. Ultimately, it forms a general inverse kinematics solution scheme that is independent of specific robotic arm configurations, possesses global convergence characteristics, and has complete multi-solution search capabilities.
[0031] Further, in step S300, based on a preset change sequence of the homotopy parameter from the initial value to the final value, a numerical iteration method is used to track the solution path of the homotopy equation. By sequentially substituting each value in the preset change sequence into the homotopy equation and solving it, a set of inverse kinematic solutions to the pose error equation is obtained, including: Step S310: Initialize the current joint variable value to the initial joint variable value, and set the initial value of the homotopy parameter.
[0032] In the initialization process of step S310, this step establishes a complete numerical iteration starting point for the entire homotopy path tracking algorithm, and its setting directly affects the stability and convergence efficiency of subsequent path tracking. In practical robotic arm control scenarios, there are several optional strategies for selecting the initial joint variable values: they can be set as the real-time feedback joint positions of the robotic arm, suitable for online trajectory planning scenarios; they can also be generated using heuristic methods based on geometric relationships in the task space, such as the approximate inverse solution obtained by simplifying the model calculation; or the solution results of adjacent trajectory points can be selected based on historical motion data. At the same time, the homotopy parameter is precisely set to zero, which causes the homotopy equation to degenerate into a preset auxiliary function form at the beginning of the iteration. Under this parameter condition, the analytical solution of the auxiliary function corresponds exactly to the initial joint configuration, thus mathematically ensuring that the iteration starting point satisfies the homotopy equation. This not only provides a reliable mathematical foundation for the subsequent continuous deformation process, but more importantly, it establishes a verifiable solution path from a known simple problem to an unknown complex problem. This progressive mechanism, moving from a deterministic solution to the target solution, effectively avoids the initial value sensitivity problem common in traditional iterative methods, providing a theoretical foundation and implementation guarantee for the stable solution of the inverse kinematics problem of a six-axis robotic arm. The advantage of this initialization scheme is that it is applicable not only to standard robotic arms but also to non-standard robotic arms with special geometries.
[0033] Step S320: Based on the preset change sequence, select each homotopy parameter value in sequence. For each homotopy parameter value, calculate the Jacobian matrix of the pose error equation corresponding to the current joint variable value, and calculate the generalized inverse matrix of the Jacobian matrix.
[0034] In step S320, during the calculation of the Jacobian matrix and its generalized inverse, the Jacobian matrix, as a sixth-order square matrix, precisely represents the linear mapping relationship between the differential motion of the robotic arm's end effector in a specific degree of freedom direction in the operating space and the differential motion of each joint variable in the corresponding joint space. In engineering practice, this matrix can be constructed using two main technical approaches: analytical methods, which directly derive closed-form expressions based on the differential relationships of the robotic arm's kinematic model, have the advantage of high computational efficiency; and numerical differentiation methods, which introduce small joint perturbations and calculate the corresponding pose change rates, are more suitable for black-box models or complex robotic arm systems. After constructing the Jacobian matrix, the algorithm obtains the generalized inverse matrix by solving its Morpenrose pseudoinverse. This transformation process is based on the singular value decomposition technique of the matrix. When the robotic arm is close to or in a singular configuration, the Jacobian matrix exhibits a rank deficiency phenomenon, at which point traditional inversion methods will fail. The pseudo-inverse calculation automatically filters out the solution space directions corresponding to singular values approaching zero, preserving effective motion subspace projections. This ensures that reasonable joint velocity commands can still be generated even under singularity conditions. This processing mechanism enables the algorithm to smoothly traverse singular regions during path tracking, avoiding numerical divergence and providing crucial mathematical support for the stable operation of the robotic arm in complex trajectory tracking tasks.
[0035] Step S330: Update the current joint variable value based on the product of the function value of the homotopy equation and the generalized inverse matrix.
[0036] In the joint variable iterative update process of step S330, this step achieves precise adjustment of the robotic arm configuration based on the current state of the homotopy equation. Specifically, firstly, the homotopy equation residual under the current joint variable values and homotopy parameter values is calculated. This residual vector fully characterizes the degree of deviation between the current robotic arm configuration and the desired path. Subsequently, this residual vector is multiplied by a pre-calculated generalized inverse matrix to generate an incremental correction term in the joint space. This update mechanism constitutes a gradient descent adjustment of the joint configuration along the optimization direction that makes the homotopy equation value decrease most rapidly under fixed homotopy parameters. In practical implementation, a precise step size control strategy needs to be introduced. Commonly used methods include adaptive step size adjustment based on linear search or dynamic step size optimization based on trust region theory. These strategies can ensure that the residual norm of the homotopy equation is strictly reduced in each iteration, while avoiding convergence oscillations caused by excessively large step sizes. It is particularly noteworthy that in the region close to the singular configuration, since the generalized inverse matrix automatically filters out the motion components in ill-conditioned directions, the update process can still advance along the effective solution space direction while maintaining numerical stability. The advantage of this update mechanism lies in its ability to guarantee rapid convergence in non-singular regions while maintaining good numerical behavior in singular regions, providing an algorithmic guarantee for the continuous and stable movement of the robotic arm in complex trajectory tracking tasks. Practical engineering applications show that this iterative update strategy can effectively handle various singular configurations, including wrist and elbow singularities, enabling the robotic arm to successfully complete tasks requiring high-precision path tracking, such as machining complex curved surfaces and operating in confined spaces.
[0037] Step S340: Repeat the iterative process until the homotopy parameter reaches the termination value. The current joint variable value obtained at this time is a set of inverse kinematic solutions to the pose error equation.
[0038] In the path tracking process management of step S340, a comprehensive convergence criterion system needs to be established, including setting reasonable relative convergence tolerance, absolute convergence tolerance, and a maximum iteration limit. Relative convergence tolerance ensures solution stability by detecting the relative norm of joint variable changes between adjacent iteration steps; absolute convergence tolerance ensures solution accuracy by monitoring the L2 norm of the homotopy equation residuals; and setting the maximum iteration count effectively prevents the algorithm from getting stuck in infinite loops or numerical oscillations. When the homotopy parameter reaches a unit value and simultaneously meets the preset convergence conditions, the current joint variable configuration can be determined as a valid inverse kinematic solution of the original pose error equation. It is particularly important to note that during the homotopy parameter advancement process, due to the complex characteristics of the nonlinear equation system, the homotopy path may exhibit bifurcation, turning points, or even backtracking. To address this, the algorithm needs to integrate intelligent step size control strategies, such as an adaptive step size adjustment mechanism based on curvature prediction or a step size optimization method based on local linearization estimation. These strategies dynamically adjust the step size of the homotopy parameter based on the local geometry of the path. Larger step sizes are used in smooth path regions to improve computational efficiency, while automatically decreasing the step size in complex path regions to ensure tracking accuracy. This precise step size management mechanism ensures that the algorithm can continuously and stably track the current solution path without unexpectedly jumping to other solution branches, and also effectively handles the numerical difficulties when the path crosses singular points. Practical applications show that this system's convergence management strategy enables the algorithm to reliably complete inverse kinematics solutions under various complex conditions, providing a solid algorithmic foundation for high-precision trajectory tracking and control of robotic arms. In one optional implementation, the initial and final values of the homotopy parameter are 0 and 1, respectively, and the preset step size of the change sequence is 0.1.
[0039] Furthermore, the formula for calculating the homotopy equation is as follows: .
[0040] in, This represents the current joint variable value at the nth iteration. This represents the updated joint variable value. Indicates the current joint variable value The generalized inverse of the Jacobian matrix in the pose error equation. Indicates the current joint variable value And the homotopy equation function value at the current homotopy parameter value t.
[0041] In the iterative solution process of the homotopy extension algorithm, the numerical iterative formula constitutes the core computational framework for path tracking. This formula achieves incremental updates of joint variable values through a systematic iterative mechanism. Based on the fundamental principles of Newton's iteration method, it enhances the numerical stability of the algorithm by introducing a generalized inverse matrix. In the actual robotic arm control system, at the beginning of each iteration, the current joint variable values are first obtained, representing the configuration state of the robotic arm at the start of this iteration. Subsequently, the algorithm needs to calculate the Jacobian matrix under the current joint variable configuration. This matrix fully describes the differential sensitivity relationship of the end effector pose to each joint variable, and its calculation can be achieved through analytical differentiation or numerical differentiation.
[0042] After obtaining the Jacobian matrix, a crucial step is calculating its Morpenrose pseudoinverse. This process ensures the algorithm's numerical stability even when the Jacobian matrix exhibits a rank-deficient singular configuration. Simultaneously, the algorithm needs to calculate the homotopy equation function value under the current joint variables and homotopy parameters. This value reflects the deviation between the current robotic arm configuration and the desired path. By performing matrix multiplication with the negative of the homotopy equation function value, an incremental correction term for the joint space is obtained. Mathematically, this correction term represents the optimization direction that leads to the steepest descent of the homotopy equation value under the current homotopy parameters.
[0043] Step size control during the iterative update process is crucial for ensuring algorithm convergence. In practice, fixed step size or adaptive step size strategies can be employed. The adaptive step size method dynamically adjusts the step size by monitoring the changing trend of the residuals during iteration, ensuring both convergence speed and avoiding iterative oscillations. When the robotic arm operates in non-singular regions, the iterative formula exhibits quadratic convergence characteristics; however, near singular regions, due to the inherent characteristics of pseudo-inverses, the algorithm still maintains a stable linear convergence speed. This numerical characteristic makes this iterative method particularly suitable for industrial applications requiring high-precision path tracking, such as complex surface machining and precision assembly operations.
[0044] Through this structured iterative mechanism, the algorithm can stably progress from the initial solution to the target solution along a homotopic path, maintaining tracking continuity even in complex situations where the path is curved or bifurcated. Practical engineering applications show that this iterative formula exhibits good convergence and numerical stability on various configurations of six-axis robotic arms, providing a reliable algorithmic foundation for industrial robots to complete complex trajectory tracking tasks. The advantage of this method lies in its ability to maintain the fast convergence characteristics of the traditional Newton's method while enhancing the algorithm's robustness in singular regions through pseudo-inverse processing, forming an inverse kinematics solution scheme that balances efficiency and stability.
[0045] Further, in step S100, the target pose of the six-axis robotic arm end effector is obtained, and based on the target pose and the link parameters of the six-axis robotic arm, a pose error equation for the six joint variables is constructed, including: Step S110: Obtain the target pose of the end effector, which includes position and attitude components.
[0046] In practical robotic arm control systems, the target pose is typically generated by an upper-level trajectory planning module or acquired in real-time directly from external sensor systems (such as vision systems or laser trackers). The mathematical description of the target pose uses a homogeneous transformation matrix, containing three translational components and three rotational components. The translational components represent the position of the end effector's origin in the base coordinate system using coordinates in a Cartesian coordinate system, while the rotational components characterize the spatial orientation of the end effector using various mathematical forms such as Euler angles, rotation matrices, or quaternions. In specific implementations, depending on the application scenario, the target pose may originate from preset values in an offline programming system or be the real-time output of an online trajectory planner. For example, in welding applications, the desired pose may be calculated in real-time based on the weld seam trajectory, or in assembly operations, the grasping pose may be determined based on the workpiece position detected by a vision system.
[0047] Step S120: Based on the link parameters of the six-axis robotic arm, the actual pose of the end effector corresponding to the current joint variable value is obtained through forward kinematics calculation.
[0048] The actual pose calculation process in step S120 is based on the forward kinematics model of the robotic arm. This model is established using Denavit-Hartenberg parameters and includes four core parameters: link length, link twist angle, link offset, and joint variables. During calculation, a homogeneous transformation matrix between adjacent link coordinate systems is first constructed based on the current joint variable values. Then, the six consecutive transformation matrices from the base to the end effector are multiplied sequentially to obtain the complete forward kinematics transformation matrix. This calculation process accurately describes the spatial mapping relationship of the robotic arm from the base coordinate system to the end effector coordinate system, and the accuracy of the result directly determines the reliability of subsequent pose error calculations. In practical applications, forward kinematics calculations need to consider practical factors such as joint zero-position deviation and link manufacturing errors. When necessary, a kinematic parameter calibration step should be introduced to improve calculation accuracy.
[0049] Step S130: Calculate the pose error between the target pose and the actual pose. The pose error includes position error and attitude error.
[0050] Step S130, the pose error calculation, is a crucial step connecting the target pose and the actual pose. The position error is obtained by calculating the differences between the target and actual position coordinates along each coordinate axis, forming a three-dimensional position error vector. The calculation of the attitude error is relatively complex and varies depending on the chosen attitude representation method. When Euler angles are used, the difference between the target and actual Euler angles is directly calculated; if a rotation matrix is used, an equivalent rotation error vector is obtained through matrix operations; and when quaternions are used, the attitude error is calculated through quaternion multiplication. In practical engineering applications, a suitable attitude error calculation method needs to be selected based on specific task requirements. For example, in applications requiring smooth attitude interpolation, quaternion representation typically provides better numerical characteristics.
[0051] Step S140: Combine the position error and attitude error to construct a pose error vector, which is a pose error equation with respect to the six joint variables.
[0052] Step S140, the pose error vector construction process, combines the position error and attitude error into a six-dimensional vector. The first three components of this vector correspond to the projections of the position error onto the X, Y, and Z axes of the base coordinate system, while the last three components represent the attitude error. In the specific implementation, it is necessary to ensure the consistency of the dimensions and orders of magnitude between the position error and the attitude error, and, if necessary, introduce appropriate scaling factors to make the components comparable. The constructed pose error vector serves as the optimization objective for the subsequent homotopy extension algorithm, and its norm directly reflects the degree of closeness between the robotic arm end effector and the desired pose under the current joint configuration. By minimizing this error vector, the algorithm can progressively adjust the joint variables to enable the robotic arm end effector to accurately reach the target pose.
[0053] Further, in step S130, the pose error between the target pose and the actual pose is calculated. The pose error includes position error and attitude error, including: Step S131: Extract the target position coordinates and target Euler angles from the target pose.
[0054] In step S131, the target pose parameter extraction process is a crucial step in separating the position and attitude parameters from the complete pose description. In practical robotic arm control system applications, the target pose is usually given in the form of a homogeneous transformation matrix, which contains both position and attitude information. Extracting the target position coordinates from this matrix involves reading the first three elements of the fourth column of the transformation matrix, which correspond to the coordinate values in the X, Y, and Z axes of the base coordinate system, respectively. The extraction of the target Euler angles requires derivation from the rotation matrix using specific transformation formulas. Commonly used Euler angle representations include ZYX Euler angles, ZYZ Euler angles, and other conventions. In practice, it is necessary to select the appropriate Euler angle sequence according to the conventions of the robotic arm control system and ensure a consistent pose representation throughout the system. For example, in welding applications, the target pose may be obtained from a trajectory file generated by an offline programming system, where each path point contains precise position and Euler angle data.
[0055] Step S132: Extract the actual position coordinates and actual Euler angles from the actual pose.
[0056] The actual pose parameter extraction process in step S132 is similar to the target pose extraction, but its data source is the actual pose obtained through forward kinematics calculation. In actual engineering implementation, based on the current joint sensor readings, the actual pose matrix of the end effector is calculated through the forward kinematics model. The method for extracting the actual position coordinates from this matrix is consistent with the target position coordinate extraction, ensuring the comparability of the two in the same coordinate system. The extraction of the actual Euler angles requires the same sequence conventions and calculation rules as the target Euler angles to ensure the correctness of the attitude error calculation. The accuracy of this step is directly affected by the accuracy of the kinematic model and the accuracy of the joint sensors. In practical applications, the influence of factors such as link flexibility and joint clearance on the actual pose calculation may need to be considered.
[0057] Step S133: Calculate the difference between the target position coordinates and the actual position coordinates to obtain the position error.
[0058] The position error calculation in step S133 is a mathematical process implemented through vector difference operations. Specifically, the target position coordinate vector is subtracted element-wise from the actual position coordinate vector, and the resulting three-dimensional difference vector is the position error. Each component of this error vector represents the position deviation in the X, Y, and Z axes of the base coordinate system. In robotic arm control systems, the calculation of position error needs to consider unit consistency, typically using millimeters or meters as the unit of measurement. For high-precision applications such as precision assembly or minimally invasive surgical robots, the calculation of position error needs to achieve micrometer-level accuracy. This requires the use of sufficient numerical precision during the calculation process and consideration of the influence of factors such as temperature and load on the deformation of the robotic arm structure.
[0059] Step S134: Calculate the difference between the target Euler angle and the actual Euler angle to obtain the attitude error.
[0060] Step S134, attitude error calculation, employs the Euler angle difference method, subtracting the corresponding components of the target Euler angle from the corresponding components of the actual Euler angle. Due to the periodicity and singularity issues inherent in Euler angle representation, the difference results need to be normalized in practical calculations to ensure that the obtained angle differences fall within a reasonable range (typically between -π and π). For the ZYX Euler angle representation, the differences in yaw, pitch, and roll angles need to be calculated separately; while for the ZYZ Euler angle representation, the angle differences between the first Z-rotation, Y-rotation, and the second Z-rotation need to be calculated. In specific applications, such as robotic arm operations in the aerospace field, attitude error calculation also needs to consider gimbal lock phenomena; if necessary, quaternions or rotation vectors can be used as alternative representations to avoid singularity issues.
[0061] Furthermore, the formula for calculating the pose error equation is as follows: .
[0062] in, , , , , , These are the position coordinates and Euler angle components of the target pose, respectively. , , , , , These are the position coordinates and Euler angle components of the actual pose, calculated using forward kinematics based on the current joint variable values.
[0063] The mathematical expression of the pose error equation establishes a quantitative relationship between the desired pose and the actual pose of the robotic arm's end effector. This six-dimensional vector function fully describes the mapping error of the robotic arm from joint space to maneuver space. In actual robotic arm control systems, each component of this equation has a clear physical meaning: the first three components represent the position deviations in the X, Y, and Z axes of the base coordinate system, respectively, while the latter three components characterize the attitude angle deviations around each coordinate axis. In specific implementation, the parameters of the target pose are derived from the output of the trajectory planning system, and these parameters are transmitted to the inverse kinematics solution module through a standardized data interface; while the parameters of the actual pose are calculated in real time through the forward kinematics model based on the current joint encoder feedback values. For a six-axis robotic arm system, the calculation of position coordinates involves a continuous coordinate transformation from the base coordinate system to the end effector coordinate system, while the calculation of Euler angles requires selecting an appropriate Euler angle sequence convention based on the configuration characteristics of the robotic arm. The commonly used ZYX Euler angle sequence can well adapt to the attitude control requirements of most industrial robots.
[0064] The establishment of this error equation provides a clear objective function for subsequent optimization solutions. Its vector form design enables the algorithm to simultaneously handle position and attitude deviation corrections. In engineering practice, the calculation of the error equation needs to balance numerical stability and computational efficiency, especially in real-time control systems, where optimized algorithms are required to ensure that the calculation speed meets the control cycle requirements. For high-precision applications, such as drilling operations in aerospace manufacturing, position errors typically need to be controlled at the millimeter level, while attitude errors need to achieve arcsecond-level accuracy. Furthermore, in practical applications, it is also necessary to consider the consistency of conversion between different representation methods, ensuring that position coordinates and Euler angles are calculated in the same reference coordinate system to avoid additional errors introduced by coordinate system mismatch.
[0065] This structured error modeling method lays the theoretical foundation for the precise motion control of robotic arms. Through a systematic error definition and calculation process, it ensures the numerical stability and convergence reliability of the inverse kinematics solution process. In practical industrial applications, such as robot trajectory tracking on automotive welding production lines, this error equation accurately reflects the deviation between the end effector and the desired trajectory, providing precise feedback for real-time trajectory correction. Furthermore, the form of this equation facilitates integration into different optimization frameworks. Whether it's gradient-based numerical optimization methods or intelligent optimization algorithms, this error equation can be used as the objective function for solving, demonstrating good algorithmic compatibility and engineering practicality.
[0066] Furthermore, the presupposed auxiliary function is the Newtonian homotopy auxiliary function, and its calculation formula is as follows: .
[0067] in, The pose error equation is... The initial joint variable values used in the current iteration.
[0068] The construction of the Newtonian homotopy auxiliary function is based on the core element of homotopy extension theory, and its mathematical expression embodies a continuous transition mechanism from a known solution to the target solution. This auxiliary function constructs an auxiliary system that automatically satisfies the zero-solution condition at the initial point by performing a difference operation between the current pose error equation value and the function values corresponding to the initial joint variables. In practical robotic arm motion planning applications, the initial joint variable values can be determined using various strategies depending on the specific task requirements: in continuous trajectory tracking tasks, the solution result of the previous control cycle is usually selected; in point-to-point motion tasks, the current position of the robotic arm or an approximate value obtained through coarse inverse kinematics can be selected. This design ensures that when the homotopy parameter is zero, the auxiliary function necessarily has a known zero solution, i.e., the initial joint configuration, thus providing a reliable starting point for the entire homotopy extension process. From a numerical analysis perspective, this auxiliary function maintains the same Jacobian matrix structure as the original pose error equation. This characteristic eliminates the need to recalculate the derivative matrix during path tracking, significantly improving computational efficiency. At the engineering implementation level, the calculation of this function requires accurate acquisition of the pose error value at the initial moment. This necessitates that the system fully record the end-effector pose state corresponding to the initial joint variables during the initialization phase. For a six-axis robotic arm system, this auxiliary function construction method can adapt to different mechanical configurations and working scenarios, providing a stable numerical foundation for both precise trajectory tracking in structured environments and adaptive motion planning under complex conditions. Practical applications show that the auxiliary function design based on Newton homotopy not only simplifies the mathematical description of homotopy paths but, more importantly, ensures the numerical stability of the path tracking algorithm, exhibiting excellent convergence characteristics, especially when dealing with high-dimensional nonlinear equations.
[0069] Furthermore, the low-difference sequence sampling method uses Sobol sequences, and the initial joint variable values are calculated using the following formula: .
[0070] in, Let be the initial value for the i-th joint. and Let $\begin{pmatrix}$ be the lower limit and upper limit of the joint angle range for the $i$-th joint, respectively. For the nth The component values of the sequence in the i-th dimension.
[0071] In the multi-solution search of inverse kinematics for a robotic arm, Sobol sequences are employed as a low-discrepancy sequence sampling method. A deterministic sampling strategy generates a uniformly distributed initial point set within the six-dimensional joint space. This sequence is based on the van der Kopt sequence construction principle in number theory, obtaining uniformly distributed random numbers by inverting integers on a prime base, maintaining excellent uniform distribution characteristics even in high-dimensional spaces. In practice, the motion range boundaries of each joint variable must first be determined. These boundary values are typically derived from the robotic arm's technical specifications or actual motion limits obtained through experimental calibration. When generating sampling points, the algorithm maps the Sobol sequence points in the unit hypercube to the actual motion range of each joint through an affine transformation, where the component values of each sequence point in each dimension are uniformly distributed between 0 and 1. This mapping transformation preserves the uniform distribution characteristics of the sequence while ensuring that the generated initial joint variable values strictly satisfy the physical motion constraints of the robotic arm. In practical engineering applications, this method effectively avoids the clustering phenomenon and search blind spots that may be caused by traditional pseudo-random sampling, significantly improving the completeness and efficiency of spatial exploration. Especially in applications requiring the acquisition of all inverse kinematics solutions, such as trajectory planning and configuration optimization for robotic arms, this systematic initial value generation method ensures the discovery of all possible solution branches, including kinematic redundancy characteristics such as different elbow configurations and wrist flipping states. Compared to traditional random sampling methods, Sobol sequence sampling not only improves the reliability of multi-solution search but also reduces the number of sampling points required to achieve the same search coverage, significantly improving computational efficiency while maintaining algorithm completeness. The implementation of this method provides an efficient and reliable multi-solution search foundation for solving the inverse kinematics of six-axis robotic arms, demonstrating significant engineering value in various application scenarios such as industrial robots and service robots.
[0072] The following experiment uses the inverse kinematics solution method for the robotic arm described above to solve the problem.
[0073] Example 1 The solution configuration is [-87.367, -46.912, -108.866, -63, -66.318, -100.0] (unit: degrees). Eight solutions were obtained within 5.384000 ms, as shown in Table 1, which further proves the effectiveness of this technical solution.
[0074] Table 1 Example 2 The solution configuration is [107.367, 66.912, 128.7, -91, 88.56, 130.5] (unit: degrees). Eight solutions were obtained within 7.535 ms, as shown in Table 2, proving the effectiveness of this technical solution.
[0075] Table 2 Example 3 A set of experiments was also conducted under a singular wrist configuration (i.e., when joint 5 is 0). The solution configuration is [30, -54.912, 100, 89, 0, 130.5] (unit: degrees). Eight solutions were obtained in 4.497ms as follows (since joint 5 is 0, the robotic arm is at a singular point in the wrist, and the Jacobian matrix is singular, so there should be infinitely many solutions, but only eight were output, as shown in Table 3, to prove that the technical solution is still effective at the singular point).
[0076] Table 3 Accordingly, a second aspect of the present invention provides an electronic device, including: at least one processor; and a memory connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to cause the at least one processor to perform the above-described method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension.
[0077] Accordingly, a third aspect of the present invention provides a computer-readable storage medium having computer instructions stored thereon, which, when executed by a processor, implement the above-described method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension.
[0078] The embodiments of this invention aim to protect a general method for solving the inverse kinematics of a six-axis robotic arm based on homotopy extension, which has the following advantages: 1. By constructing a homotopy equation connecting a simple problem and a complex objective problem, and adopting a path-following strategy, the solution process is transformed into a continuous and stable transition from a known solution to the objective solution. The convergence path is guaranteed by the variation law of the homotopy parameter, enabling the algorithm to robustly approximate the inverse kinematic solution with a wide range of convergence characteristics, starting from any given initial joint variable value. This fundamentally solves the problem of iterative divergence or getting trapped in local optima caused by improper initial value selection in traditional numerical methods, and significantly improves the robustness and practicality of the algorithm. 2. By using low-discrepancy sequences such as Sobol sequences to systematically generate multiple sets of initial values in the joint space of the robotic arm, replacing the traditional random sampling method, the uniform distribution and low discreteness of the initial points in the solution space are ensured. On this basis, the homotopy extension solution process is independently performed on each set of initial values, which can effectively track multiple different convergence paths, and then systematically find multiple sets, or even all, of inverse kinematic solutions corresponding to the same end pose, thus solving the shortcomings of existing general algorithms in multi-solution search capabilities. 3. In the iterative steps of path tracking, the Morpenrose pseudo-inverse of the Jacobian matrix is used instead of the conventional inverse matrix. This allows the algorithm to calculate the effective update direction even when the robotic arm is in a singular configuration of the Jacobian matrix, thus overcoming the limitation of the traditional Newton method in being unable to solve near singular points. At the same time, the Newton homotopy auxiliary function is selected to ensure that the homotopy equation is consistent with the Jacobian matrix of the original objective equation. This not only simplifies the differentiation calculation but also mathematically guarantees the numerical consistency and computational efficiency of the path tracking process.
[0079] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0080] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will 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 program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0081] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0082] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0083] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that modifications or equivalent substitutions can still be made to the specific implementation of the present invention. Any modifications or equivalent substitutions that do not depart from the spirit and scope of the present invention should be covered within the scope of protection of the claims of the present invention.
Claims
1. A general method for solving the inverse kinematics of a six-axis robotic arm based on homotopy extension, characterized in that, Includes the following steps: Step S100: Obtain the target pose of the end effector of the six-axis robotic arm, and construct a pose error equation for the six joint variables based on the target pose and the link parameters of the six-axis robotic arm. Step S200: Construct a homotopy equation, which is obtained by linearly combining the pose error equation and a preset auxiliary function through homotopy parameters; Step S300: Based on the preset change sequence of the homotopy parameter from the initial value to the final value, the solution path of the homotopy equation is tracked by the numerical iteration method. By substituting each value in the preset change sequence into the homotopy equation and solving it, a set of inverse kinematic solutions of the pose error equation is obtained. Step S400: Based on the low-difference sequence sampling method, several different initial joint variable values are generated in the six-dimensional joint space. The total number of initial joint variable values is used as the number of iterations. For each set of initial joint variable values, steps S200 to S300 are repeated to obtain multiple different inverse kinematic solutions of the pose error equation.
2. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to claim 1, characterized in that, The method involves using a numerical iteration method to trace the solution path of the homotopy equation based on a preset change sequence of the homotopy parameter from its initial value to its final value. This is achieved by sequentially substituting each value from the preset change sequence into the homotopy equation and solving it, thereby obtaining a set of inverse kinematic solutions to the pose error equation, including: Initialize the current joint variable value to the initial joint variable value, and set the initial value of the homotopy parameter; Based on the preset change sequence, each homotopy parameter value is selected sequentially. For each homotopy parameter value, the Jacobian matrix of the pose error equation corresponding to the current joint variable value is calculated, and the generalized inverse matrix of the Jacobian matrix is calculated. Update the current joint variable value based on the product of the function value of the homotopy equation and the generalized inverse matrix; Repeat the iterative process until the homotopy parameter reaches a termination value. The current joint variable value obtained at this point is a set of inverse kinematic solutions to the pose error equation.
3. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to claim 2, characterized in that, The formula for calculating the homotopy equation is as follows: ; in, This represents the current joint variable value at the nth iteration. This represents the updated joint variable value. Indicates the current joint variable value The generalized inverse of the Jacobian matrix in the pose error equation is given by the given formula. Indicates the current joint variable value And the homotopy equation function value at the current homotopy parameter value t.
4. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to claim 2, characterized in that, The initial and final values of the homotopy parameter are 0 and 1, respectively, and the step value of the preset change sequence is 0.
1.
5. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to claim 2, characterized in that, The generalized inverse of the Jacobian matrix is the Morpenrose pseudoinverse.
6. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to any one of claims 1-5, characterized in that, The process of obtaining the target pose of the six-axis robotic arm's end effector and constructing pose error equations for the six joint variables based on the target pose and the link parameters of the six-axis robotic arm includes: Obtain the target pose of the end effector, wherein the target pose includes a position component and an attitude component; Based on the link parameters of the six-axis robotic arm, the actual pose of the end effector corresponding to the current joint variable value is obtained through forward kinematics calculation; Calculate the pose error between the target pose and the actual pose, wherein the pose error includes position error and attitude error; The position error and the attitude error are combined to construct a pose error vector, which is a pose error equation with respect to six joint variables.
7. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to claim 6, characterized in that, The calculation of the pose error between the target pose and the actual pose, wherein the pose error includes position error and attitude error, includes: Extract the target position coordinates and target Euler angles from the target pose; Extract the actual position coordinates and actual Euler angles from the actual pose; The difference between the target position coordinates and the actual position coordinates is calculated to obtain the position error; The difference between the target Euler angle and the actual Euler angle is calculated to obtain the attitude error.
8. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to claim 7, characterized in that, The formula for calculating the pose error equation is as follows: ; in, , , , , , These are the position coordinates and Euler angle components of the target pose, respectively. , , , , , These are the position coordinates and Euler angle components of the actual pose, calculated using forward kinematics based on the current joint variable values.
9. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to any one of claims 1-5, characterized in that, The preset auxiliary function is a Newtonian homotopy auxiliary function, and its calculation formula is as follows: ; in, The pose error equation is... The initial joint variable values used in the current iteration.
10. The method for solving the inverse kinematics of a general six-axis robotic arm based on homotopy extension according to any one of claims 1-5, characterized in that, The low-difference sequence sampling method uses Sobol sequences, and the formula for calculating the initial joint variable values is as follows: ; in, Let be the initial value for the i-th joint. and Let $\begin{pmatrix}$ be the lower limit and upper limit of the joint angle range for the $i$-th joint, respectively. For the nth The component values of the sequence in the i-th dimension.