Robotic arm load gravity recognition method and apparatus

By combining the low-uniform-speed trajectory motion of the robotic arm with a friction model and the Gauss-Newton iterative algorithm, the problem of large inertia term error in the load gravity identification of the robotic arm is solved, achieving high-precision and high-efficiency load gravity identification, which is suitable for mass production processes.

CN118493384BActive Publication Date: 2026-07-07AUBO (BEIJING) ROBOTICS TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
AUBO (BEIJING) ROBOTICS TECH CO LTD
Filing Date
2024-05-17
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

Existing methods for identifying the load gravity of robotic arms cannot accurately identify the inertia term, resulting in large errors in the inertia term identification results. Users are more concerned about the load gravity term parameters. Existing methods have problems such as large errors, long processing time, and difficulty in automation.

Method used

The robotic arm moves along a preset low-speed uniform trajectory. The load gravity is identified by combining a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm. Iterative formulas are constructed through the friction model and dynamics model, and the iterative algorithm is used to handle the coupling of gravitational torque and friction, thus simplifying the identification process.

Benefits of technology

It improves the accuracy and efficiency of load gravity identification, simplifies the identification process, is suitable for mass production processes, reduces errors, and reduces the need for friction cancellation and data alignment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118493384B_ABST
    Figure CN118493384B_ABST
Patent Text Reader

Abstract

The application provides a mechanical arm load gravity identification method and device, the method comprises the following steps: S1, controlling the mechanical arm to move according to a preset low uniform speed trajectory; S2, collecting data of the mechanical arm moving according to the low uniform speed trajectory; S3, performing load gravity identification on the collected data based on a friction model, a mechanical arm dynamics model and a Gauss-Newton iteration algorithm. The application uses an iteration idea to process the coupling problem of gravity moment and friction force, does not need to estimate the friction force generated by the gravity moment by using an approximate method, and introduces an error, so that the iteration algorithm can improve the identification accuracy; without designing forward and reverse uniform speed motion trajectories to offset the friction force, only one trajectory data can complete high-precision identification, simplifying the identification process and being beneficial to mass production processes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robotic arm load identification technology, specifically to a robotic arm load gravity identification method and a robotic arm load gravity identification device. Background Technology

[0002] Existing methods for identifying the full parameters of a robotic arm load cannot accurately identify the inertia term. Compared to the gravity term, the identification results for the inertia term often have a larger error. In practice, users are more concerned with the gravity parameter, making the identification of load gravity alone crucial. Currently, robotic arm load gravity identification mainly includes various schemes such as joint current detection, end-effector six-dimensional force sensor detection, joint one-dimensional torque sensor detection, and base six-dimensional force sensor detection. Among these schemes, the joint current detection method has several advantages, including low cost, high structural integration, and high reliability.

[0003] There are two main approaches to load gravity identification based on joint current detection: 1. Calculate the approximate friction force using a friction model, subtract the friction force, and then use the least squares method for identification; 2. Align and superimpose forward and reverse low uniform motion trajectories to cancel out the friction force, and then use the least squares method for identification.

[0004] For Scheme 1: The accuracy of the friction model estimation is very limited. More accurate friction models need to consider the gravitational torque at the joints. However, gravity itself is an identification term and is coupled. Therefore, this scheme can only use some approximation methods, which will inevitably introduce corresponding errors. Due to the gaps and elastic deformation of the robotic arm, the model has a certain degree of nonlinearity, and the least squares method cannot handle the errors caused by the nonlinearity. For Scheme 2: This scheme cannot completely eliminate the friction force and still has a small error. Secondly, it requires running two trajectories, which consumes a lot of time. It also requires data alignment processing, which usually requires manual operation and is difficult to fully automate with code, making it unsuitable for mass production. In addition, like Scheme 1, the least squares method in this scheme cannot handle the errors caused by the nonlinearity. Summary of the Invention

[0005] To address the aforementioned technical problems, this invention provides a method and apparatus for identifying the load gravity of a robotic arm, which can improve identification accuracy, simplify the identification process, increase identification efficiency, facilitate mass production, and has strong practicality.

[0006] The technical solution adopted in this invention is as follows:

[0007] A method for identifying the load gravity of a robotic arm includes the following steps: S1, controlling the robotic arm to run along a preset low uniform speed trajectory; S2, collecting data on the movement of the robotic arm along the low uniform speed trajectory; S3, identifying the load gravity of the collected data based on a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm.

[0008] In addition, the robotic arm load gravity identification method proposed above according to the present invention may also have the following additional technical features:

[0009] According to an embodiment of the present invention, before step S1, the method further includes: selecting N feature pose points and planning the low uniform velocity trajectory, wherein N is an integer greater than or equal to 4, and the feature pose points are the positions where the pose change of the robotic arm is relatively large.

[0010] According to an embodiment of the present invention, step S3 specifically includes the following steps: S31, based on the friction model and the robotic arm dynamics model, constructing an iterative formula for the Gauss-Newton iterative algorithm; S32, setting the initial value of the load gravity identification parameter, executing the iterative process, and obtaining the identification result of the robotic arm load gravity identification parameter.

[0011] According to one embodiment of the present invention, the calculation formula for the friction model is as follows:

[0012]

[0013] In the formula, f is the frictional force calculated by the friction model. For joint velocity, f qd The velocity-dependent frictional force, f, calculated for the friction model. temp For temperature-dependent frictional force, f load Frictional force related to the external torque of the joint.

[0014] Specifically, f qd To add nonlinear fitting parameters to the Stribeck friction model in the low-speed range, the velocity-dependent frictional force was calculated. temp f is the temperature-dependent frictional force calculated through nonlinear fitting. load This represents the frictional force related to the external torque of the joint, calculated through nonlinear fitting.

[0015] According to one embodiment of the present invention, the robotic arm dynamics model is a six-degree-of-freedom serial robotic arm dynamics model obtained by iteration using the Newton-Euler method, and the calculation formula is as follows:

[0016]

[0017] In the formula, τ is the joint torque of the robotic arm.b The joint torque τ contributes to the dynamics of the robotic arm. e The joint torque of the robotic arm is... The frictional force calculated for the friction model, Y l ∈R 6n×10 Let n be the load observation matrix, n be the number of sampled data, and β be the number of samples. l =[I xx I xy I xz I yy I yz I zz [mx, my, mz, m]∈R 10×1 Let I be the load dynamic parameter, where I xx Let I be the moment of inertia of the load about the X-axis. xy I is the product of inertia of the load about the X and Y axes. xz I is the product of inertia of the load about the X and Z axes. yy Let I be the moment of inertia of the load about the Y-axis. yz I is the product of inertia of the load about the Y and Z axes. zz Let mx be the moment of inertia of the load about the Z-axis, mx, my, and mz be the coordinates of the center of mass of the load, and m be the mass of the load.

[0018] According to an embodiment of the present invention, step S32 specifically includes: setting the frictional force related to the joint external torque to 0, obtaining the initial value of the load gravity identification parameter, and using the initial value of the load gravity identification parameter as the initial value of the Gauss-Newton iterative algorithm; calculating the load gravity identification parameter increment and the joint torque error; calculating the updated value of the load gravity identification parameter according to the load gravity identification parameter increment and the iterative formula; determining whether the joint torque error is less than the convergence threshold, and if so, determining the result of the load gravity identification.

[0019] In addition, to achieve the above objectives, the present invention also proposes a mechanical arm load gravity identification device.

[0020] A robotic arm load gravity identification device includes: a control module for controlling the robotic arm to move along a preset low-uniform speed trajectory; a data acquisition module for acquiring data of the robotic arm moving along the low-uniform speed trajectory; and an identification module for identifying the load gravity of the acquired data based on a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm.

[0021] In addition, the robotic arm load gravity identification device proposed above according to the present invention may also have the following additional technical features:

[0022] According to an embodiment of the present invention, the robotic arm load gravity identification device further includes: a preset module, which is used to select N feature pose points and plan the low uniform speed trajectory, wherein N is an integer greater than or equal to 4, and the feature pose points are positions where the robotic arm pose changes significantly.

[0023] According to an embodiment of the present invention, the identification module specifically includes: a formula construction unit, which constructs an iterative formula for the Gauss-Newton iterative algorithm based on the friction model and the robotic arm dynamics model; and an execution unit, which is used to set the initial value of the load gravity identification parameters, execute the iterative process, and obtain the identification result of the robotic arm load gravity identification parameters.

[0024] The beneficial effects of this invention are:

[0025] The present invention discloses a method for identifying the load gravity of a robotic arm. The method controls the robotic arm to move along a preset low-uniform-speed trajectory. Based on a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm, it identifies the load gravity from the collected data. By utilizing an iterative approach to handle the coupling of gravitational torque and friction, it improves identification accuracy. The Gauss-Newton iterative algorithm offers fast convergence while avoiding the need to calculate the Hessian matrix, thus eliminating the need to consider cases where the Hessian matrix is ​​singular or nonexistent, making it highly practical. It eliminates the need to design complex excitation trajectories, deduct additional friction force, run two segments of uniform-speed trajectories in opposite directions, and perform data alignment operations. Therefore, it effectively improves identification efficiency, simplifies the identification process, and facilitates mass production. Attached Figure Description

[0026] Figure 1 This is a flowchart of the robotic arm load gravity identification method according to an embodiment of the present invention;

[0027] Figure 2 This is a comparison diagram of the joint torques at each joint of the robotic arm mapped to the load gravity identification parameters in a specific embodiment of the present invention, and the actual measured joint torques.

[0028] Figure 3 This is a block diagram of the robotic arm load gravity identification device according to an embodiment of the present invention;

[0029] Figure 4 This is a schematic diagram of the iterative process of the execution unit according to an embodiment of the present invention. Detailed Implementation

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

[0031] like Figure 1 As shown, the robotic arm load gravity identification method of this invention includes the following steps:

[0032] S1 controls the robotic arm to move along a preset low-speed, uniform trajectory.

[0033] In one embodiment of the present invention, before step S1, the method further includes: selecting N feature pose points to plan a low-uniform velocity trajectory, where N is an integer greater than or equal to 4, and the feature pose points are positions where the robot arm's pose changes significantly. Unlike general dynamic identification, the robot arm load gravity identification method of this embodiment does not require designing complex excitation trajectories similar to Fourier series. It only requires selecting multiple feature pose points within the robot arm's workspace, planning a low-uniform velocity trajectory based on the feature pose points, and controlling the robot arm to move along the preset low-uniform velocity trajectory.

[0034] Specifically, the movej method can be used to plan a point-to-point motion trajectory with the lowest possible uniform speed. Other methods can also be used to plan a low-uniform-speed motion trajectory. This embodiment does not impose any restrictions.

[0035] S2 collects data on the robotic arm's movement along a low-uniform-speed trajectory. The collected data may include the robotic arm's position, velocity, current, and temperature signals during this low-uniform-speed movement.

[0036] S3 identifies the load gravity based on the collected data using a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm.

[0037] Specifically, step S3 may include the following steps:

[0038] S31, Based on the friction model and the robotic arm dynamics model, construct the iterative formula of the Gauss-Newton iterative algorithm.

[0039] In one embodiment of the present invention, the calculation formula for the friction model is as follows:

[0040]

[0041] In the formula, f is the frictional force calculated by the friction model. For joint velocity, f qd For velocity-related frictional force f calculated based on the friction model tempFor temperature-dependent friction, f load Frictional force related to the external torque of the joint.

[0042] Specifically, f qd To add nonlinear fitting parameters to the Stribeck friction model in the low-speed range, the velocity-dependent frictional force was calculated. temp f is the temperature-dependent frictional force calculated through nonlinear fitting. load The frictional force related to the joint external torque is calculated through nonlinear fitting. The calculation formula for the Stribeck friction model in the low-speed range is as follows:

[0043]

[0044] In the formula, F is the frictional force. c F is the Coulomb friction coefficient. s V is the coefficient of maximum static friction. s F is the Stribeck velocity threshold, μ is the empirical constant of the Stribeck curve attenuation, and F is the value of F. v It is the coefficient of viscous friction.

[0045] Frictional force f related to velocity qd The calculation formula is as follows:

[0046]

[0047] In the formula, F v0 F v1 F v2 F v3 To add nonlinear fitting parameters, k is the torque coefficient, f qd F in the calculation formula c F s V s μ, F v0 F v1 F v2 F v3 The value of can be obtained experimentally. This can be achieved by increasing F. v0 F v1 F v2 F v3 It allows for more accurate calculation of frictional forces related to speed.

[0048] f temp f load The calculation formulas are as follows:

[0049]

[0050] f load =c1τ e2 +c2τ e (5)

[0051] In the formula, T represents temperature, and F represents temperature. t1 F t2 F t3 The nonlinear fitting parameters for frictional force related to temperature can be obtained experimentally; c1 and c2 are the nonlinear fitting parameters for frictional force related to joint external torque, which can also be obtained experimentally, τ e Let f be the joint torque of the robotic arm without friction, i.e., the external torque of the joint. Obviously, f is coupled with the external torque of the joint.

[0052] In one embodiment of the present invention, the robotic arm dynamics model is a six-degree-of-freedom serial robotic arm dynamics model obtained by iteration using the Newton-Euler method, and the calculation formula is as follows:

[0053]

[0054] In the formula, τ is the joint torque of the robotic arm, τ b Joint torques contributing to the dynamics of the robotic arm. The frictional force calculated for the friction model. The calculation formula is shown in formula (1), Y l ∈R 6n×10 Let n be the load observation matrix, n be the number of sampled data, and β be the number of samples. l =[I xx I xy I xz I yy I yz I zz [mx, my, mz, m]∈R 10×1 Let I be a dynamic parameter, where I xx Let I be the moment of inertia of the load about the X-axis. xy I is the product of inertia of the load about the X and Y axes. xz I is the product of inertia of the load about the X and Z axes. yy Let I be the moment of inertia of the load about the Y-axis. yz I is the product of inertia of the load about the Y and Z axes. zz Let m be the moment of inertia of the load about the Z-axis, mx, my, and mz be the coordinates of the load's center of mass, and m be the mass of the load.

[0055] Since the frictional force *f* is coupled with the external torque of the joint, direct calculation of *f* can only be done by approximating the load torque to zero, which obviously introduces errors. To address this coupling, a Gauss-Newton iterative algorithm is used to identify the load gravity parameters, effectively suppressing errors caused by nonlinear terms in the actual model. Furthermore, the Gauss-Newton iterative algorithm offers fast convergence without requiring the calculation of the Hessian matrix, thus eliminating the need to consider cases where the Hessian matrix is ​​singular or nonexistent, making it more practical than the ordinary Newton method.

[0056] It should be noted that this embodiment only considers load gravity identification; the parameters of friction and the body dynamics parameters (τ) are not considered. b All of these can be obtained experimentally. To ignore the influence of static friction, the trajectory of extremely low uniform motion is used for identification, with the velocity approximating to 0. Therefore, the identified β... l It only includes gravity-related parameters (mx, my, mz, m), which are the original dynamic parameters β. l I in xx I xy I xz I yy I yz I zz All are 0.

[0057] Because the Gauss-Newton iterative algorithm requires setting initial values ​​for joint torques, it does not require providing precise τ. e To calculate f, thus achieving decoupled calculation of friction force, while τ is clearly related to β. l Since it is a function, the estimated value can be continuously reduced through iteration. The error.

[0058] In one embodiment of the present invention, the iterative formula of the Gauss-Newton iterative algorithm is as follows:

[0059]

[0060] in, The load gravity identification parameters are for the k-th iteration. Let Δβ be the load gravity identification parameter for the (k+1)th iteration. (k) This represents the increment of the load gravity identification parameters from the k-th iteration to the (k+1)-th iteration. The corresponding Gauss-Newton iterative algorithm is as follows:

[0061] Expanding (6) of the k-th iteration, we get:

[0062]

[0063] In the formula, i = 1, 2, 3, 4, 5, 6 represents the i-th joint, τ b(i,:) is τ b The i-th row, Y l (i,:) represents Y l The i-th row.

[0064] The actual measured joint torque τ is in τ (k) Perform a first-order Taylor expansion at this point:

[0065]

[0066] According to the principle of matrix differentiation:

[0067]

[0068] In the formula, when vector ⊙ vector, ⊙ represents the hardmard product; when vector ⊙ matrix, ⊙ represents the hardmard product of the vector and the column vectors of the matrix. Ignoring higher-order infinitesimal terms, formula (9) becomes a linear regression model, which can be obtained using the least squares method.

[0069]

[0070] In the formula, τ (k) Let Δτ be the joint torque in the k-th iteration. (k) Let be the joint torque error in the k-th iteration.

[0071] Substituting formula (11) into formula (7), the load gravity identification parameters for the (k+1)th iteration can be calculated.

[0072] S32, set the initial value of the load gravity identification parameter, execute the iterative process, and obtain the identification result of the load gravity identification parameter of the robotic arm.

[0073] In one embodiment of the present invention, step S32 specifically includes:

[0074] S321, set the frictional force related to the joint external torque to 0, obtain the initial value of the load gravity identification parameter, and use the initial value of the load gravity identification parameter as the initial value of the Gauss-Newton iterative algorithm.

[0075] Specifically, the frictional force f related to the external torque of the joint can be made load =0, substitute into formula (6) to calculate f, and then use the least squares method (formula (12)) based on the calculated f to obtain Will Set the initial value for the load gravity identification parameter.

[0076]

[0077] In the formula,

[0078] S322, calculate the increment of load gravity identification parameters and joint torque error.

[0079] Specifically, in each iteration, the calculations from the previous iteration can be... Substitute into formulas (8) to (11) to calculate the increment Δβ of the load gravity identification parameter. (k) At the same time, it can Substituting into formula (8), we obtain the joint torque τ. (k) τ is then calculated. (k) The joint torque error Δτ between τ and τ k .

[0080] S323, based on the load gravity identification parameter increment and iterative formula, calculate the updated value of the load gravity identification parameter, which is the value calculated in the previous iteration. and the Δβ calculated in step S322 (k) Substituting into formula (11) yields the following result.

[0081] S324, determine whether the joint torque error is less than the convergence threshold. If so, determine the result of the load gravity identification.

[0082] Specifically, when ||Δτ k When ||<ε, the identification result of the load gravity identification parameter is determined as follows: Output the result, and the iteration ends; otherwise, repeat steps S322 to S324, where the convergence threshold ε can be set according to actual needs.

[0083] In a specific embodiment of the present invention, to verify the effectiveness of the robotic arm load gravity identification method of the present invention, the load gravity parameters obtained by the robotic arm load gravity identification method of the present invention are mapped to each joint of the robotic arm, and compared with the actual measured joint torques. The results are as follows: Figure 2 As shown. Since this method only identifies the load gravity parameter, and other inertia parameters are set to 0, the frictional force in the actual measured joint torque is subtracted during the actual comparison. Figure 2 It can be seen that by mapping the load gravity parameters obtained by the robotic arm load gravity identification method of the present invention to each joint of the robotic arm, the corresponding identification joint torque is obtained, and its value is basically consistent with the actual measured joint torque.

[0084] Using the RMS (Root Mean Square) error between the identified joint torque and the actual measured joint torque obtained from Scheme 1 and Scheme 2 mentioned in the background art as a comparison, the identification error RMS of each method is shown in Table 1. As can be seen from Table 1, the identification accuracy of the robotic arm load gravity identification method of the present invention is basically consistent with that of Scheme 2. However, compared with Scheme 2, this scheme can greatly simplify the identification steps, eliminating the need to run two reciprocating trajectories and perform data alignment operations, thus effectively improving the identification efficiency.

[0085] Table 1. Identified and Actual Joint Torque Errors (RMS)

[0086]

[0087]

[0088] According to the robotic arm load gravity identification method of the present invention, the robotic arm is controlled to move along a preset low uniform speed trajectory. Load gravity identification is performed on the collected data based on a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm. The iterative approach is used to handle the coupling problem of gravitational torque and friction, which can improve the identification accuracy. Moreover, the Gauss-Newton iterative algorithm has both fast convergence and does not require the calculation of the Hessian matrix, and does not need to consider the case of singular or non-existent Hessian matrix, which makes it highly practical. There is no need to design complex excitation trajectories or consider additional deduction of friction force, that is, there is no need to run two trajectories or perform data alignment operations, which can effectively improve the identification efficiency, simplify the identification process, and facilitate mass production.

[0089] Corresponding to the above-mentioned method for identifying the load gravity of a robotic arm, the present invention also proposes a device for identifying the load gravity of a robotic arm.

[0090] like Figure 3 As shown, the robotic arm load gravity identification device of this embodiment includes: a control module 10, a data acquisition module 20, and an identification module 30. The control module 10 is used to control the robotic arm to move along a preset low-uniform-speed trajectory. The data acquisition module 20 is used to acquire data of the robotic arm moving along the low-uniform-speed trajectory. The acquired data may include the position, speed, current, temperature signals, etc. of the robotic arm moving along the low-uniform-speed trajectory. The identification module 30 performs load gravity identification on the acquired data based on a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm.

[0091] In one embodiment of the present invention, the robotic arm load gravity identification device further includes a preset module for selecting N feature pose points and planning the low-uniform velocity trajectory, wherein N is an integer greater than or equal to 4, and the feature pose points are positions where the robotic arm pose changes significantly. Unlike general dynamic identification, the preset module in this embodiment does not need to design complex excitation trajectories such as Fourier series. It only needs to select multiple feature pose points within the workspace of the robotic arm, plan a low-uniform velocity motion trajectory based on the feature pose points, and the control module 10 can then control the robotic arm to move according to the preset low-uniform velocity trajectory.

[0092] Specifically, the preset module can use the movej method to plan a motion trajectory with a low uniform speed, or other methods can be used to plan a low uniform speed motion trajectory. This embodiment does not impose any restrictions.

[0093] In one embodiment of the present invention, the identification module 30 specifically includes: a formula construction unit and an execution unit, wherein the formula construction unit constructs an iterative formula of the Gauss-Newton iterative algorithm based on the friction model and the robotic arm dynamics model; the execution unit is used to set the initial value of the load gravity identification parameters, execute the iterative process, and obtain the identification result of the robotic arm load gravity identification parameters.

[0094] In one embodiment of the present invention, the calculation formula for the friction model is shown in formula (1). As can be seen from formulas (1) to (5), f is coupled with the external torque of the joint.

[0095] In one embodiment of the present invention, the dynamic model of the robotic arm is a six-degree-of-freedom serial robotic arm dynamic model obtained by iteration of the Newton-Euler method, and the calculation formula is shown in formula (6).

[0096] Since the frictional force *f* is coupled with the external torque of the joint, direct calculation of *f* can only be done by approximating the load torque to zero, which obviously introduces errors. To address this coupling, a Gauss-Newton iterative algorithm is used to identify the load gravity parameters, effectively suppressing errors caused by nonlinear terms in the actual model. Furthermore, the Gauss-Newton iterative algorithm offers fast convergence without requiring the calculation of the Hessian matrix, thus eliminating the need to consider cases where the Hessian matrix is ​​singular or nonexistent, making it more practical than the ordinary Newton method.

[0097] It should be noted that this embodiment only considers load gravity identification; the parameters of friction and the body dynamics parameters (τ) are not considered. b All of these can be obtained experimentally. To ignore the influence of static friction, the trajectory of extremely low uniform motion is used for identification, with the velocity approximating to 0. Therefore, the identified β... l It only includes gravity-related parameters (mx, my, mz, m), which are the original dynamic parameters β.l I in xx I xy I xz I yy I yz I zz All are 0.

[0098] Because the Gauss-Newton iterative algorithm requires setting initial values ​​for joint torques, it does not require providing precise τ. e To calculate f, thus achieving decoupled calculation of friction force, while τ is clearly related to β. l Since it is a function, the estimated value can be continuously reduced through iteration. The error.

[0099] In one embodiment of the present invention, the execution unit is specifically configured to: set the frictional force related to the joint external torque to 0, obtain the initial value of the load gravity identification parameter, and use the initial value of the load gravity identification parameter as the initial value of the Gauss-Newton iterative algorithm; calculate the increment of the load gravity identification parameter and the joint torque error; calculate the updated value of the load gravity identification parameter according to the increment of the load gravity identification parameter and the iterative formula; determine whether the joint torque error is less than the convergence threshold, and if so, determine the result of the load gravity identification.

[0100] In one embodiment of the present invention, the iterative process of the execution unit is as follows: Figure 4 As shown:

[0101] (1) Let the frictional force f related to the external torque of the joint be... load =0, substitute into formula (6) to calculate f, and then use the least squares method (formula (12)) based on the calculated f to obtain Will Set the initial value for the load gravity identification parameters;

[0102] (2) The calculation from the previous iteration Substitute into formulas (8) to (11) to calculate the increment Δβ of the load gravity identification parameter. (k) At the same time, it can Substituting into formula (8), we obtain the joint torque τ. (k) τ is then calculated. (k) The joint torque error Δτ between τ and τ k ;

[0103] (3) and Δβ (k) Substituting into formula (11) yields the following result.

[0104] (4) Determine the joint torque error Δτ k Is it less than the convergence threshold ε when ||Δτ kWhen ||<ε, the identification result of the load gravity identification parameter is determined as follows: Output the result and the iteration ends; otherwise, continue the next iteration calculation (repeat steps (2)-(4)), where the convergence threshold ε can be set according to actual needs.

[0105] According to an embodiment of the present invention, the robotic arm load gravity identification device controls the robotic arm to move along a preset low-uniform speed trajectory through a control module. The identification module identifies the load gravity based on the collected data using a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm. By using an iterative approach to handle the coupling of gravitational torque and friction, the identification accuracy can be improved. Moreover, the Gauss-Newton iterative algorithm has both fast convergence and does not require the calculation of the Hessian matrix, and does not need to consider the case of a singular or non-existent Hessian matrix, making it highly practical. It does not require the design of complex excitation trajectories, nor does it require additional deduction of friction, i.e., it does not require running two trajectories or performing data alignment operations, which can effectively improve the identification efficiency, simplify the identification process, and facilitate mass production.

[0106] In the description of this invention, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. "A plurality of" means two or more, unless otherwise explicitly specified.

[0107] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0108] In this invention, unless otherwise explicitly specified and limited, "above" or "below" the second feature can mean that the first feature is in direct contact with the second feature, or that the first feature is in indirect contact with the second feature through an intermediate medium. Furthermore, "above," "over," and "on top" of the second feature can mean that the first feature is directly above or diagonally above the second feature, or simply that the first feature is at a higher horizontal level than the second feature. "Below," "below," and "under" the second feature can mean that the first feature is directly below or diagonally below the second feature, or simply that the first feature is at a lower horizontal level than the second feature.

[0109] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Furthermore, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0110] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of the invention pertain.

[0111] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0112] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0113] Those skilled in the art will understand that all or part of the steps of the methods described in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it includes one or a combination of the steps of the method embodiments.

[0114] Furthermore, the functional units in the various embodiments of the present invention can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0115] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A robot arm load gravity identification method, characterized in that, Includes the following steps: S1, control the robotic arm to move along a preset low-speed uniform trajectory; S2, collect data on the movement of the robotic arm along the low-uniform-speed trajectory; S3 identifies the load gravity based on the collected data using a friction model, a robotic arm dynamics model, and a Gauss-Newton iterative algorithm. Step S3 details The process includes the following steps: S31, based on the friction model and the robotic arm dynamics model, constructing the iterative formula of the Gauss-Newton iterative algorithm; S32, setting the initial values ​​of the load gravity identification parameters, executing the iterative process, and obtaining the identification results of the load gravity identification parameters of the robotic arm. The friction model calculation formula is as follows: wherein f a friction force calculated for the friction model, a joint velocity, f qd a velocity dependent friction force calculated for the friction model, f temp a temperature dependent friction force, f load a joint external torque dependent friction force; The calculation formula for the robotic arm's dynamics model is as follows: In the formula, The joint torque of the robotic arm, The joint torques that contribute to the dynamics of the robotic arm body. The joint torque of the robotic arm is... The frictional force calculated for the friction model. For the load observation matrix, n The number of sampled data. Let be the load dynamics parameter, where I xx Let x be the moment of inertia of the load about the X-axis. I xy The product of inertia of the load about the X and Y axes. I xz The product of inertia of the load about the X and Z axes. I yy Let be the moment of inertia of the load about the Y-axis. I yz The product of inertia of the load about the Y-axis and Z-axis, I zz Let Z be the moment of inertia of the load about the Z-axis. mx , my , mz These are the centroid coordinates of the load, respectively. m The mass of the load.

2. The method for identifying the load gravity of a robotic arm according to claim 1, characterized in that, Before step S1, the method further includes: selecting N feature pose points and planning the low uniform velocity trajectory, where N is an integer greater than or equal to 4, and the feature pose points are the positions where the pose change of the robotic arm is relatively large.

3. The method for identifying the load gravity of a robotic arm according to claim 1, characterized in that, f qd To add nonlinear fitting parameters to the Stribeck friction model in the low-speed range, the velocity-dependent frictional force was calculated. f temp The temperature-dependent frictional force is calculated through nonlinear fitting. f load This represents the frictional force related to the external torque of the joint, calculated through nonlinear fitting.

4. The method for identifying the load gravity of a robotic arm according to claim 1, characterized in that, Step S32 specifically includes: Set the frictional force related to the joint external torque to 0 to obtain the initial value of the load gravity identification parameter, and use the initial value of the load gravity identification parameter as the initial value of the Gauss-Newton iterative algorithm; Calculate the increment of load gravity identification parameters and joint torque error; The updated value of the load gravity identification parameter is calculated based on the increment of the load gravity identification parameter and the iterative formula. Determine whether the joint torque error is less than the convergence threshold. If so, determine the result of the load gravity identification.

5. A robotic arm load gravity identification device, used to implement the robotic arm load gravity identification method as described in claim 1, characterized in that, include: A control module, the control module being used to control the robotic arm to move along a preset low-speed uniform trajectory; The data acquisition module is used to acquire data on the movement of the robotic arm along the low-uniform-speed trajectory. The identification module identifies the load gravity of the collected data based on the friction model, the robotic arm dynamics model, and the Gauss-Newton iterative algorithm.

6. The robotic arm load gravity identification device according to claim 5, characterized in that, Also includes: The preset module is used to select N feature pose points and plan the low uniform velocity trajectory, where N is an integer greater than or equal to 4, and the feature pose points are the positions where the pose change of the robotic arm is large.

7. The robotic arm load gravity identification device according to claim 5, characterized in that, The identification module specifically includes: A formula construction unit, which constructs an iterative formula for the Gauss-Newton iterative algorithm based on the friction model and the robotic arm dynamics model; An execution unit is used to set the initial value of the load gravity identification parameters, execute an iterative process, and obtain the identification result of the load gravity identification parameters of the robotic arm.