Robot servo parameter self-adaptive method and system based on dynamic model

CN117621086BActive Publication Date: 2026-08-11EFORT INTELLIGENT EQUIP CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-01-10
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

通过机器人负载辨识技术可得到负载相关的动力学参数,结合机器人本体动力学模型数据可在线计算获取机器人的关节惯量,解决了传统伺服在线惯量辨识无法实施获取精确关节惯量的问题;通过机器人动力学模型,结合机器人轨迹规划数据,可在线计算预测出关节所需力矩,将该力矩通过前馈的方式传递给伺服,可显著提升伺服的动态跟随能力;机器人伺服系统利用动力学前馈惯量和力矩,通过基于关节惯量的参数整定策略,可在保证系统稳定裕度的同时实现机器人伺服参数自适应,解决了传统的固定参数策略带来的参数适配性问题,可充分发挥伺服系统性能

Benefits of technology

[0082] This invention employs online joint inertia calculation based on a robot theoretical dynamics model, combined with load identification results based on an actual dynamics model, to obtain the robot's joint inertia in real time. This overcomes the shortcomings of traditional online joint inertia identification algorithms, such as high dependence on trajectory acceleration, slow update speed of identification results, and low accuracy of identification results. A parabolic interpolation algorithm is used to improve the feedforward data jump problem caused by the upper-level control cycle being shorter than the servo control cycle, significantly improving the smoothness of the feedforward data and the control accuracy of the servo. By combining dynamic feedforward data with online parameter tuning technology based on joint inertia, compared with the traditional fixed servo gain strategy, the trajectory tracking accuracy of the servo can be greatly improved, fully utilizing the performance of the servo system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117621086B_ABST
    Figure CN117621086B_ABST
Patent Text Reader

Abstract

This invention relates to the field of robotics, specifically to a method and system for adaptive robot servo parameters based on a dynamic model. The method includes obtaining the actual dynamic parameters of the robot as a whole; obtaining the theoretical dynamic parameters of the robot body; obtaining the mass, center of mass position, and inertia tensor information of the load; importing these into the robot's dynamic model; calculating and obtaining the robot's joint inertia online; calculating and obtaining the robot's joint torque feedforward online; calculating and obtaining the relevant parameters of the servo's position and velocity loops; outputting actual torque to the robot body through the servo motor; and the robot body moving through the torque applied in S8. This invention overcomes the shortcomings of traditional online joint inertia identification algorithms, such as high dependence on trajectory acceleration, slow update speed of identification results, and low accuracy of identification results; it significantly improves the smoothness of feedforward data and the control accuracy of the servo; and it can greatly improve the trajectory tracking accuracy of the servo.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robotics, specifically to a method and system for adaptive robot servo parameters based on a dynamic model. Background Technology

[0002] Multi-degree-of-freedom industrial robots are widely used in numerous industrial fields such as automotive, chemical, logistics, furniture, and sanitary ware due to their high flexibility and programmability. The servo system, as the robot's power actuator, plays a crucial role in the efficient operation of the entire machine. Because there is strong coupling between the servo systems of each joint of the robot, the servo movement of one joint will affect other joints, and the apparent inertia of the joint servo will change with the robot's pose and load. This places high demands on the effectiveness and reliability of the robot's servo parameter settings.

[0003] Existing robot servo parameter tuning strategies mainly include fixed parameter tuning methods based on empirical trial and error and online parameter tuning methods based on servo inertia identification. The former requires a high level of experience from the servo parameter tuning personnel, and a single set of parameters is difficult to adapt to all robot operating conditions, thus failing to fully utilize servo performance. The latter's parameter tuning effect depends on the performance of the online servo inertia identification algorithm, and the online identification algorithm has certain requirements on the trajectory acceleration of the servo motion, making it impossible to identify relatively accurate inertia in real time under all robot operating conditions. Summary of the Invention

[0004] To address the aforementioned technical problems, this invention proposes a robot servo parameter adaptive method and system based on a dynamic model. By employing robot load identification technology, load-related dynamic parameters can be obtained. Combined with robot body dynamic model data, the robot's joint inertia can be calculated online, solving the problem that traditional servo online inertia identification cannot accurately obtain joint inertia. Through the robot dynamic model and robot trajectory planning data, the required torque for the joints can be calculated and predicted online. This torque is then transmitted to the servo via a feedforward mechanism, significantly improving the servo's dynamic following capability. The robot servo system utilizes dynamic feedforward inertia and torque, and through a parameter tuning strategy based on joint inertia, achieves robot servo parameter adaptation while ensuring system stability margin. This solves the parameter adaptability problem caused by traditional fixed parameter strategies and fully leverages the performance of the servo system.

[0005] The technical problem to be solved by this invention is achieved by the following technical solution:

[0006] The robot servo parameter adaptive method based on dynamic model includes the following steps:

[0007] S1. The robot is instructed to run a specific trajectory. The robot dynamics parameter identification module is used to identify the collected joint position, velocity, acceleration and torque information offline to obtain the actual dynamic parameters of the robot as a whole.

[0008] S2. Model the robot body using CAD software to obtain the theoretical dynamic parameters of the robot body, including the mass, center of mass position, inertia tensor information of each link of the robot body, and inertia information related to the transmission links.

[0009] S3. Combining the actual dynamic parameters of the robot obtained in S1, the robot is made to execute a specific motion trajectory. The load identification function module is used for offline identification to obtain the mass, center of mass position, and inertial tensor information of the load.

[0010] S4. Import the actual dynamic parameters obtained in S1, the theoretical dynamic parameters of the robot obtained in S2, and the load dynamic parameters obtained in S3 into the robot dynamic model;

[0011] S5. Using the theoretical dynamic parameters of the robot obtained in S2, the robot joint inertia is calculated and obtained online by combining the robot dynamic model in S4 with the robot joint inertia calculation module.

[0012] S6. Using the actual dynamic parameters of the robot obtained in S1, the robot joint torque feedforward is calculated and obtained online by combining the robot dynamic model in S4 with the dynamic torque feedforward calculation module.

[0013] S7. Using the robot joint inertia obtained in S5, online parameter tuning is performed through the robot servo parameter tuning module to calculate and obtain the relevant parameters of the servo position loop and velocity loop.

[0014] S8. Using the servo parameters obtained in S7, the robot servo system module performs servo loop calculations and obtains the loop torque command. This command is superimposed with the robot joint torque feedforward obtained in S6 as the total torque command of the servo system and the actual torque is output to the robot body through the servo motor.

[0015] The specific steps are as follows:

[0016] S81. The received robot joint inertia feedforward channel and dynamic feedforward control channel data from the controller system are interpolated and subdivided through the feedforward data interpolation module.

[0017] S82. The position loop parameter of the position control loop and the speed loop parameter of the speed control loop are tuned by the feedforward joint inertia after interpolation subdivision obtained in S81 through the robot servo parameter tuning module.

[0018] S83. After subdividing the interpolation module, the torque command of the servo control loop is superimposed on the dynamic feedforward control channel to become the actual torque command of the robot servo system, which is then applied to the motor and load through the torque control loop.

[0019] S9. The robot body moves by the torque applied in S8 and feeds back the real-time joint position and torque information to the robot dynamics model. The entire servo parameter adaptive system starts looping again from S4 to realize the online adaptive function of the robot servo parameters.

[0020] Preferably, the robot dynamics parameter identification module in S1 includes robot dynamics calculation and robot dynamics parameter identification;

[0021] Robot dynamics calculation:

[0022] Step 1: Based on the Newton-Euler method, the matrix form of robot dynamics can be expressed as:

[0023]

[0024] In the formula, M represents the robot's inertia matrix, which is a function of position;

[0025] C: Represents the matrix of Coriolis force and centripetal force, which is a function of position and velocity;

[0026] G: Represents the matrix of gravity, a function of position;

[0027] Fcv: Represents the friction term, including the Coulomb friction term and the viscous friction term, and is a function of velocity. Its expression is:

[0028] Step 2: Linearize equation (1), the result is:

[0029]

[0030] In the formula, Let be a matrix function relating to joint position, joint velocity, and joint acceleration, and P be a matrix relating to robot dynamic parameters;

[0031] Step 3: Remove the coefficient matrix The linearly dependent terms in the coefficients are then removed, along with the corresponding kinetic parameters from the kinetic parameter set P, yielding the maximally linearly independent set of the coefficient matrix and the minimum kinetic parameter set:

[0032] Preferably, robot dynamics parameter identification:

[0033] Run the robot and collect its joint angular positions, angular velocities, angular accelerations, and torque feedback values ​​to construct an overdetermined system of equations:

[0034]

[0035] Solve the least-squares solution to this equation to obtain the robot's dynamic parameters. Identification:

[0036]

[0037] Preferably, the load identification function module in S3 includes load identification model establishment and robot load parameter identification;

[0038] Load identification model establishment:

[0039] Step 1: Based on the superposition of the dynamics of the robot's joints, add the torque component generated by the load to the joint torques of the robot body:

[0040] τ all =τ s +τ load (7)

[0041] In the formula, τ all The torque τ generated by the robot's operation with a load s τ is the joint torque of the robot body. load The torque generated by the load is denoted by F. load Let F represent the force and torque applied to the end flange by the load. load =[f L ,τ L ] T ;

[0042] Step 2: According to the Newton-Euler equations, the equations for the generalized force and torque applied by the load are as follows:

[0043]

[0044]

[0045] In the formula, s is the moment of the center of mass of the load relative to the end coordinate system, and I R Let ω be the inertial tensor relative to the end coordinate system. L and These are the angular velocity and angular acceleration relative to the final coordinate system, respectively. This represents the linear acceleration relative to the final coordinate system.

[0046] Step 3: Decompose the contribution of the end load to the torque of each joint by transposing the Jacobian matrix. The load identification model is as follows:

[0047]

[0048] In the formula, J(q) is the Jacobian matrix. Let P be the observation matrix corresponding to the parameter to be identified. load The load dynamics parameters to be identified include 10 parameters of the load, namely the mass parameter, 3 centroid moment parameters, and 6 inertia tensor parameters.

[0049] Preferably, robot load parameter identification:

[0050] Run the robot, collect the joint angular positions, angular velocities, angular accelerations, and load torque values, and construct the overdetermined equations:

[0051]

[0052] Solve the equation using the least squares method to determine the load parameters P. load Identification:

[0053]

[0054] Preferably, in S5, the robot joint inertia calculation module calculates the joint inertia based on the robot's dynamic model when... hour, but Convert the inertia matrix into the equivalent inertia of the motor:

[0055] J Mi =M(i,i) / r i 2 +J mi (12)

[0056] In the formula, J Mi Let r be the motor equivalent inertia of joint i. i J is the reduction ratio of joint i. mi Let be the sum of the motor's own inertia at joint i and the high-speed end inertia of the reducer. The equivalent motor inertia of the robot in different poses can be calculated using equation (12).

[0057] Preferably, the parabolic interpolation method used in S81 employs the following interpolation function:

[0058] P(t)=A+B(t-t1)+C(t-t1)(t-t2) (13)

[0059] In the formula, P: parabolic interpolation function; A, B, C, D: interpolation coefficients;

[0060] The formulas for calculating the interpolation coefficients A, B, C, and D are as follows:

[0061]

[0062] Preferably, the speed loop parameter tuning and position loop parameter tuning in S82 are as follows:

[0063] Step 1: The open-loop transfer function of the ideal velocity loop is:

[0064]

[0065] In the formula, K p For the velocity loop proportional gain, τ i Let J be the integral time constant of the velocity loop, J be the joint servo inertia, and T be the integral time constant of the velocity loop. c The current loop time constant;

[0066] Step 2: Let K p =JK spd Where J is the robot joint inertia, the open-loop transfer function of the velocity loop becomes:

[0067]

[0068] Step 3: If we approximate the open-loop crossover frequency ω c =K spd Then the phase margin of the system can be obtained:

[0069] γ(ω c ) = arctan(τ i ω c )-arctan(T c ω c (17)

[0070] Differentiating equation (17), we obtain the velocity loop integral time constant and the current loop time constant:

[0071]

[0072]

[0073] Step 4: The open-loop transfer function of the ideal position loop is:

[0074]

[0075] In the formula, K pp For the position loop proportional gain, T s The velocity loop time constant;

[0076] Step 5: From equation (19), the phase margin of the open-loop transfer function of the position loop can be obtained as follows:

[0077] γ(ω c )=90°-arctan(T s K pp (20).

[0078] Preferably, the joint torque theory in S83 is as follows:

[0079]

[0080] The robot servo parameter adaptive system based on the dynamic model applies the aforementioned robot servo parameter adaptive method based on the dynamic model. It includes a robot body, a robot dynamic model, a robot dynamic parameter identification module, a load identification function module, a robot joint inertia calculation module, a dynamic torque feedforward calculation module, a robot servo parameter tuning module, and a robot servo system module. The robot servo system module includes a joint inertia feedforward channel, a dynamic feedforward control channel, a feedforward data interpolation module, a position control loop, a speed control loop, a torque control loop, a motor, and a load.

[0081] The beneficial effects of this invention are:

[0082] This invention employs online joint inertia calculation based on a robot theoretical dynamics model, combined with load identification results based on an actual dynamics model, to obtain the robot's joint inertia in real time. This overcomes the shortcomings of traditional online joint inertia identification algorithms, such as high dependence on trajectory acceleration, slow update speed of identification results, and low accuracy of identification results. A parabolic interpolation algorithm is used to improve the feedforward data jump problem caused by the upper-level control cycle being shorter than the servo control cycle, significantly improving the smoothness of the feedforward data and the control accuracy of the servo. By combining dynamic feedforward data with online parameter tuning technology based on joint inertia, compared with the traditional fixed servo gain strategy, the trajectory tracking accuracy of the servo can be greatly improved, fully utilizing the performance of the servo system. Attached Figure Description

[0083] The present invention will be further described below with reference to the accompanying drawings and embodiments:

[0084] Figure 1 This is a flowchart illustrating the operating principle of the present invention;

[0085] Figure 2 This is a block diagram illustrating the principle of the robot servo system module of the present invention. Detailed Implementation

[0086] To make the technical means, creative features, objectives and effects of this invention easier to understand, the invention will be further described below in conjunction with the accompanying drawings and embodiments.

[0087] like Figure 1 As shown, the robot servo parameter adaptive method based on the dynamic model includes the following steps:

[0088] S1. The robot is instructed to run a specific trajectory. The robot dynamics parameter identification module performs offline identification on the collected joint position, velocity, acceleration and torque information to obtain the actual dynamic parameters of the robot as a whole.

[0089] Specifically, the robot dynamics parameter identification module includes robot dynamics calculation and robot dynamics parameter identification.

[0090] Robot dynamics calculation:

[0091] Step 1: Based on the Newton-Euler method, the driving force and torque of each joint can be obtained. For a robot with interconnected joints, its robot dynamics can be expressed in matrix form as follows:

[0092]

[0093] In the formula, M represents the robot's inertia matrix, which is a function of position;

[0094] C: Represents the matrix of Coriolis force and centripetal force, which is a function of position and velocity;

[0095] G: Represents the matrix of gravity, a function of position;

[0096] Fcv: Represents the friction term, including the Coulomb friction term and the viscous friction term, and is a function of velocity. Its expression is:

[0097] Step 2: Linearize equation (1), the result is:

[0098]

[0099] In the formula, Let be a matrix function relating to joint position, joint velocity, and joint acceleration, and P be a matrix relating to robot dynamic parameters;

[0100] For each link i, we have:

[0101] P i =[m i ,s xi ,s yi ,s zi ,I xxi ,I xyi ,I xzi ,I yyi ,I yzi ,I zzi ,f ci ,f vi ] T (3)

[0102] This includes the mass parameter m of link i.i Centroid moment parameter (s) xi ,s yi ,s zi ), Inertia tensor parameter (I xxi ,I xyi ,I xzi ,I yyi ,I yzi ,I zzi Friction parameters (f) ci ,f vi );

[0103] For an n-degree-of-freedom robot:

[0104] P = [P1, P2, ..., P n ] T (4).

[0105] Step 3: Remove the coefficient matrix The linearly dependent terms in the coefficients are then removed, along with the corresponding kinetic parameters from the kinetic parameter set P, yielding the maximally linearly independent set of the coefficient matrix and the minimum kinetic parameter set:

[0106] Robot dynamics parameter identification:

[0107] Run the robot and collect its joint angular positions, angular velocities, angular accelerations, and torque feedback values ​​to construct an overdetermined system of equations:

[0108]

[0109] Solve the least-squares solution to this equation to obtain the robot's dynamic parameters. Identification:

[0110]

[0111] This invention constructs an overdetermined system of equations by collecting the robot's joint angular positions, angular velocities, angular accelerations, and load torque values. The load dynamic parameters are then identified using the least squares method. This allows for the acquisition of relatively accurate load parameters for actual users, making the system's actual dynamic model closer to real-world operating conditions.

[0112] S2. By modeling the robot body using CAD software, the theoretical dynamic parameters of the robot body can be obtained, including the mass, center of mass position, inertia tensor information of each link of the robot body, and inertia information related to the transmission links.

[0113] S3. Combining the actual dynamic parameters of the robot obtained in S1, the robot is instructed to execute a specific motion trajectory. The load identification function module performs offline identification to obtain the load's mass, center of mass position, and inertial tensor information.

[0114] Specifically, the load identification function module includes load identification model establishment and robot load parameter identification.

[0115] Load identification model establishment:

[0116] The load identification module is based on the superposition of the dynamics of the robot's joints. It only needs to add the torque component generated by the load to the joint torque of the robot body, as detailed below:

[0117] τ all =τ s +τ load (7)

[0118] In the formula, τ all The torque τ generated by the robot's operation with a load s τ is the joint torque of the robot body. load The torque generated by the load is denoted by F. load Let F represent the force and torque applied to the end flange by the load. load =[f L ,τ L ] T .

[0119] Step 2: According to the Newton-Euler equations, the equations for the generalized force and torque applied by the load are as follows:

[0120]

[0121]

[0122] In the formula, s is the moment of the center of mass of the load relative to the end coordinate system, and I R Let ω be the inertial tensor relative to the end coordinate system. L and These are the angular velocity and angular acceleration relative to the final coordinate system, respectively. This represents the linear acceleration relative to the final coordinate system.

[0123] Step 3: The transpose of the Jacobian matrix transforms the generalized force vector of the end-load into the generalized force vectors of each joint. This transformation is linear and does not affect the superposition of moments. Therefore, the contribution of the end-load to the moments of each joint can be decomposed by the transpose of the Jacobian matrix. The load identification model is as follows:

[0124]

[0125] In the formula, J(q) is the Jacobian matrix. Let P be the observation matrix corresponding to the parameter to be identified. loadThe load dynamics parameters to be identified include 10 parameters of the load, namely the mass parameter, 3 centroid moment parameters, and 6 inertia tensor parameters.

[0126] Robot load parameter identification:

[0127] Run the robot, collect the joint angular positions, angular velocities, angular accelerations, and load torque values, and construct the overdetermined equations:

[0128]

[0129] Solve the equation using the least squares method to determine the load parameters P. load Identification:

[0130]

[0131] S4. Import the actual dynamic parameters obtained in S1, the theoretical dynamic parameters of the robot obtained in S2, and the load dynamic parameters obtained in S3 into the robot dynamic model.

[0132] S5. Using the theoretical dynamic parameters of the robot obtained in S2, the robot joint inertia is calculated online by combining the robot joint inertia calculation module with the robot dynamic model in S4.

[0133] Specifically, in S5, the robot joint inertia calculation module calculates the joint inertia based on the robot's dynamic model when... hour, but when When the i-th element is 1 and all other elements are 0, τ is equal to the value of the i-th column of M. Dynamic parameters obtained from dynamic identification. This usually cannot satisfy the physical constraints of the linkage, so it is directly used Inertia calculations can introduce significant errors and may even fail to satisfy the positive definiteness of M. Therefore, it is necessary to use a CAD model to obtain the dynamic parameters of the link for inertia calculation.

[0134] Convert the inertia matrix into the equivalent inertia of the motor:

[0135] J Mi =M(i,i) / r i 2 +J mi (12)

[0136] In the formula, J Mi Let r be the motor equivalent inertia of joint i. i J is the reduction ratio of joint i. miLet be the sum of the motor's own inertia at joint i and the high-speed end inertia of the reducer. The equivalent motor inertia of the robot in different poses can be calculated using equation (12).

[0137] This invention utilizes theoretical dynamic parameters of the robot body and load dynamic parameters to calculate the joint inertia of the robot online. It solves the problem that actual dynamic parameters often fail to meet the physical constraints of the links, and can calculate the equivalent motor inertia of the robot in different poses online.

[0138] S6. Using the actual dynamic parameters of the robot obtained in S1, the robot joint torque feedforward is calculated online by combining the dynamic torque feedforward calculation module with the robot dynamic model in S4.

[0139] This invention utilizes the robot's actual dynamic model and load dynamic parameters to calculate the robot's dynamic feedforward torque online. This accelerates the convergence speed of joint errors, improves the robot's dynamic response characteristics, and thus enhances trajectory tracking accuracy, enabling high-speed and high-precision motion control.

[0140] S7. Using the robot joint inertia obtained in S5, the parameters are tuned online through the robot servo parameter tuning module to calculate and obtain the relevant parameters of the servo position loop and velocity loop.

[0141] S8. Using the servo parameters obtained in S7, the robot servo system module performs servo loop calculations and obtains the loop torque command. This command is superimposed with the robot joint torque feedforward obtained in S6 as the total torque command of the servo system and the actual torque is output to the robot body through the servo motor.

[0142] The specific steps are as follows:

[0143] S81. The control cycle of a servo system is generally longer than that of a controller system. To ensure the control effect of the servo system, the feedforward data interpolation module needs to subdivide the received robot joint inertia feedforward channel and dynamics feedforward control channel data from the controller system, and use the interpolated feedforward data for parameter tuning and servo control. This invention uses parabolic interpolation for the feedforward data. The curve generated by parabolic interpolation is smooth, suitable for applications requiring continuous and smooth motion trajectories. The interpolation function used in this invention is:

[0144] P(t)=A+B(t-t1)+C(t-t1)(t-t2)(13)

[0145] In the formula, P: parabolic interpolation function; A, B, C, D: interpolation coefficients;

[0146] The formulas for calculating the interpolation coefficients A, B, C, and D are as follows:

[0147]

[0148] This invention improves the problem of abrupt changes in feedforward data by parabolic interpolation of the received controller feedforward inertia and feedforward torque data in the servo system. This is achieved through parabolic interpolation of the controller's low sampling period data to the servo system's high sampling period data.

[0149] S82. The position loop parameter tuning of the position control loop and the speed loop parameter tuning of the speed control loop are performed by the feedforward joint inertia after interpolation subdivision obtained in S81 through the robot servo parameter tuning module.

[0150] Specifically, the speed loop parameter tuning and position loop parameter tuning are as follows:

[0151] Step 1: The open-loop transfer function of the ideal velocity loop is:

[0152]

[0153] In the formula, K p For the velocity loop proportional gain, τ i Let J be the integral time constant of the velocity loop, J be the joint servo inertia, and T be the integral time constant of the velocity loop. c The current loop time constant;

[0154] Step 2: To ensure the decoupling of the speed loop control performance from the inertia parameter of the controlled object, let K... p =JK spd Where J is the robot joint inertia, the open-loop transfer function of the velocity loop becomes:

[0155]

[0156] Step 3: If we approximate the open-loop crossover frequency ω c =K spd Then the phase margin of the system can be obtained:

[0157] γ(ω c ) = arctan(τ i ω c )-arctan(T c ω c (17)

[0158] Differentiating equation (17), we can obtain when ω c 2 =1 / (τ) i T c The phase margin has a maximum value at () time; the intermediate frequency bandwidth parameter h = τ is defined. i / T cFor system stability, h > 1 must be guaranteed; the larger the intermediate frequency bandwidth of the system, the larger the corresponding phase margin; by designing a servo rigidity level table, the speed loop bandwidth and intermediate frequency bandwidth corresponding to different rigidity levels can be determined, and the speed loop integral time constant and current loop time constant can be obtained according to equation (17):

[0159]

[0160]

[0161] Step 4: The open-loop transfer function of the ideal position loop is:

[0162]

[0163] In the formula, K pp For the position loop proportional gain, T s is the velocity loop time constant.

[0164] Step 5: From equation (19), it can be seen that the proportional gain of the position loop can characterize the crossover frequency of the open-loop transfer function of the position loop; the phase margin of the open-loop transfer function of the position loop can be obtained as:

[0165] γ(ω c )=90°-arctan(T s K pp (20).

[0166] By designing the stability margin and response bandwidth of the servo control loop, it can be ensured that the robot servo system can maintain relatively consistent speed and stability under different loads and poses.

[0167] This invention utilizes the online joint inertia received through the feedforward channel, enabling online parameter tuning of the position and velocity loops in the servo system. This ensures servo system stability while fully leveraging its performance, improving performance consistency across different robot trajectories and poses.

[0168] S83. After subdividing the interpolation module, the torque command of the servo control loop is superimposed on the dynamic feedforward control channel to become the actual torque command of the robot servo system, which is then applied to the motor and load through the torque control loop.

[0169] The theory of joint torque is as follows:

[0170]

[0171] S9. The robot body moves by the torque applied in S8 and feeds back the real-time joint position and torque information to the robot dynamics model. The entire servo parameter adaptive system starts looping again from S4 to realize the online adaptive function of the robot servo parameters.

[0172] The robot servo parameter adaptive system based on the dynamic model, applied to the aforementioned robot servo parameter adaptive method based on the dynamic model, includes a robot body, a robot dynamic model, a robot dynamic parameter identification module, a load identification function module, a robot joint inertia calculation module, a dynamic torque feedforward calculation module, a robot servo parameter tuning module, and a robot servo system module.

[0173] like Figure 2 As shown, the robot servo system module includes a joint inertia feedforward channel, a dynamics feedforward control channel, a feedforward data interpolation module, a position control loop, a speed control loop, a torque control loop, a motor, and a load.

[0174] The foregoing has shown and described the basic principles, main features, and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited to the above embodiments. The embodiments and descriptions in the specification are merely prisms of the invention. Various changes and modifications can be made to the invention without departing from its spirit and scope, and all such changes and modifications fall within the scope of the present invention as claimed. The scope of protection of this invention is defined by the appended claims and their equivalents.

Claims

1. A robot servo parameter adaptive method based on a dynamic model, characterized in that: Includes the following steps: S1. The robot is instructed to run a specific trajectory. The robot dynamics parameter identification module is used to identify the collected joint position, velocity, acceleration and torque information offline to obtain the actual dynamic parameters of the robot as a whole. S2. Model the robot body using CAD software to obtain the theoretical dynamic parameters of the robot body, including the mass, center of mass position, inertia tensor information of each link of the robot body, and inertia information related to the transmission links. S3. Combining the actual dynamic parameters of the robot obtained in S1, the robot is made to execute a specific motion trajectory. The load identification function module is used for offline identification to obtain the mass, center of mass position, and inertial tensor information of the load. S4. Import the actual dynamic parameters obtained in S1, the theoretical dynamic parameters of the robot obtained in S2, and the load dynamic parameters obtained in S3 into the robot dynamic model; S5. Using the theoretical dynamic parameters of the robot obtained in S2, the robot joint inertia is calculated and obtained online by combining the robot dynamic model in S4 with the robot joint inertia calculation module. S6. Using the actual dynamic parameters of the robot obtained in S1, the robot joint torque feedforward is calculated and obtained online by combining the robot dynamic model in S4 with the dynamic torque feedforward calculation module. S7. Using the robot joint inertia obtained in S5, online parameter tuning is performed through the robot servo parameter tuning module to calculate and obtain the relevant parameters of the servo position loop and velocity loop. S8. Using the servo parameters obtained in S7, the robot servo system module performs servo loop calculations and obtains the loop torque command. This command is superimposed with the robot joint torque feedforward obtained in S6 as the total torque command of the servo system and the actual torque is output to the robot body through the servo motor. The specific steps are as follows: S81. The received robot joint inertia feedforward channel and dynamic feedforward control channel data from the controller system are interpolated and subdivided through the feedforward data interpolation module. S82. The position loop parameter of the position control loop and the speed loop parameter of the speed control loop are tuned by the feedforward joint inertia after interpolation subdivision obtained in S81 through the robot servo parameter tuning module. S83. After subdividing the interpolation module, the torque command of the servo control loop is superimposed on the dynamic feedforward control channel to become the actual torque command of the robot servo system, which is then applied to the motor and load through the torque control loop. S9. The robot body moves by the torque applied in S8 and feeds back the real-time joint position and torque information to the robot dynamics model. The entire servo parameter adaptive system starts looping again from S4 to realize the online adaptive function of the robot servo parameters.

2. The robot servo parameter adaptive method based on a dynamic model according to claim 1, characterized in that: The robot dynamics parameter identification module in S1 includes robot dynamics calculation and robot dynamics parameter identification; Robot dynamics calculation: Step 1: Based on the Newton-Euler method, the matrix form of robot dynamics can be expressed as: (1); In the formula, M represents the robot's inertia matrix, which is a function of position; C: Represents the matrix of Coriolis force and centripetal force, which is a function of position and velocity; G: Represents the matrix of gravity, a function of position; Fcv: Represents the friction term, including the Coulomb friction term and the viscous friction term, and is a function of velocity. Its expression is: ; Step 2: Linearize equation (1), the result is: (2); In the formula, Let be a matrix function relating to joint position, joint velocity, and joint acceleration, and P be a matrix relating to robot dynamic parameters; Step 3: Remove the coefficient matrix The linearly dependent terms in the coefficients are then removed, along with the corresponding kinetic parameters from the kinetic parameter set P, yielding the maximally linearly independent set of the coefficient matrix and the minimum kinetic parameter set: .

3. The robot servo parameter adaptive method based on a dynamic model according to claim 2, characterized in that: Robot dynamics parameter identification: Run the robot and collect its joint angular positions, angular velocities, angular accelerations, and torque feedback values ​​to construct an overdetermined system of equations: (5); Solve the least-squares solution to this equation to obtain the robot's dynamic parameters. Identification: (6)。 4. The robot servo parameter adaptive method based on a dynamic model according to claim 1, characterized in that: The load identification function module in S3 includes load identification model establishment and robot load parameter identification; Load identification model establishment: Step 1: Based on the superposition of the dynamics of the robot's joints, add the torque component generated by the load to the joint torques of the robot body: (7); In the formula, The torque generated by the robot's operation under load The joint torque of the robot body, The torque generated by the load is used Let the force and torque applied to the end flange represent the load. ; Step 2: According to the Newton-Euler equations, the equations for the generalized force and torque applied by the load are as follows: (8); In the formula, Let be the centroidal moment of the load relative to the end coordinate system. Let be the inertial tensor relative to the end coordinate system. and These are the angular velocity and angular acceleration relative to the final coordinate system, respectively. This represents the linear acceleration relative to the final coordinate system. Step 3: Decompose the contribution of the end load to the torque of each joint by transposing the Jacobian matrix. The load identification model is as follows: (9); In the formula, For Jacobian matrices, The observation matrix corresponding to the parameter to be identified. The load dynamics parameters to be identified include 10 parameters of the load, namely the mass parameter, 3 centroid moment parameters, and 6 inertia tensor parameters.

5. The robot servo parameter adaptive method based on a dynamic model according to claim 4, characterized in that: Robot load parameter identification: Run the robot, collect the joint angular positions, angular velocities, angular accelerations, and load torque values, and construct the overdetermined equations: (10); Solve the equation using the least squares method to determine the load parameters. Identification: (11)。 6. The robot servo parameter adaptive method based on a dynamic model according to claim 1, characterized in that: In S5, the robot joint inertia calculation module calculates the joint inertia based on the robot's dynamic model, when... hour, ,but Convert the inertia matrix into the equivalent inertia of the motor: (12); In the formula, Let be the equivalent inertia of the motor at joint i. Let be the reduction ratio of joint i. The inertia is the sum of the motor's own inertia and the high-speed end inertia of the reducer at joint i; the equivalent inertia of the motor of the robot in different poses can be calculated by equation (12).

7. The adaptive method for robot servo parameters based on a dynamic model according to claim 1, characterized in that: The parabolic interpolation method used in S81 employs the following interpolation function: (13); In the formula, P: parabolic interpolation function; A, B, C: interpolation coefficients; The formulas for calculating the interpolation coefficients A, B, and C are as follows: (14).

8. The robot servo parameter adaptive method based on a dynamic model according to claim 1, characterized in that: The speed loop parameter tuning and position loop parameter tuning in S82 are as follows: Step 1: The open-loop transfer function of the ideal velocity loop is: (15); In the formula, For the velocity loop proportional gain, The integral time constant of the velocity loop is... For joint servo inertia, The current loop time constant; Step Two: Order Where J is the robot joint inertia, the open-loop transfer function of the velocity loop becomes: (16); Step 3: Determine the open-loop cross-frequency as Then the phase margin of the system can be obtained: (17); Differentiating equation (17), we obtain the velocity loop integral time constant and the current loop time constant: (18); Step 4: The open-loop transfer function of the ideal position loop is: (19); In the formula, For position loop proportional gain, The velocity loop time constant; Step 5: From equation (19), the phase margin of the open-loop transfer function of the position loop can be obtained as follows: (20)。 9. The adaptive method for robot servo parameters based on a dynamic model according to claim 1, characterized in that: The joint torque theory in S83 is as follows: (21)。 10. A robot servo parameter adaptive system based on a dynamic model, characterized in that: The adaptive robot servo parameter method based on a dynamic model, applicable to any one of claims 1 to 9, includes a robot body, a robot dynamic model, a robot dynamic parameter identification module, a load identification function module, a robot joint inertia calculation module, a dynamic torque feedforward calculation module, a robot servo parameter tuning module, and a robot servo system module. The robot servo system module includes a joint inertia feedforward channel, a dynamic feedforward control channel, a feedforward data interpolation module, a position control loop, a speed control loop, a torque control loop, a motor, and a load.

Citation Information

Patent Citations

  • Feedforward control method for flexible torque of robot based on flexible kinetic model

    CN108714896A

  • Torque feedforward control system and method

    CN110861090A