Dynamic performance optimization method and device of robot joint, electronic equipment and readable storage medium
By calculating real-time inertial force for feedforward compensation, the problem of insufficient dynamic response capability of the joint of medium-sized robots is solved, which significantly improves dynamic performance and avoids overshooting, enhancing the robot's rapid response capability when falling.
Patent Information
- Application Number
- CN202411629829.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-14
- Publication Date
- 2025-01-03
AI Technical Summary
The prior art is difficult to meet the dynamic response needs of medium-sized robot joints under high inertia and weight, resulting in poor joint balance and posture adjustment effects.
Feedforward compensation is performed by computing the real-time inertial force obtained, optimizing joint control, avoiding overshoots and keeping the robot stiffness unchanged.
It significantly improves the dynamic performance of the robot joints, avoids overshooting of joint position and speed, and enhances the robot's rapid response ability when falling.
Smart Images

Figure CN119238528A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of motion control, and relates to a method, a device, an electronic device and a readable storage medium for optimizing the dynamic performance of a robot joint. Background Art
[0002] With the advancement of science and technology, the robotics industry has developed rapidly. Due to its unique mobility and terrain adaptability, it has great potential in many fields. Robots can not only be used for intelligent inspections in factories, parks, substations, urban underground pipe galleries and other working environments, but can also be responsible for rescue and material handling at disaster sites, and can even complete tasks that cannot be completed by humans. As technology matures and costs decrease, more and more robotic products will enter our daily lives to provide help and services to humans.
[0003] Among the robot products currently on the market, how to maintain body balance is still a technical difficulty that needs to be solved. In order to maintain body balance while walking, the robot joints need to have very high dynamic response capabilities, especially in the case of about to fall, the robot's joint motors need to respond quickly and adjust the robot's body posture.
[0004] At present, PD control is generally used for robot joint control, and high dynamic response of joints is achieved by adjusting the Kp and Kd parameters. This adjustment method can only meet the dynamic performance requirements of small robots. However, due to the significant increase in joint inertia and body weight of medium-sized robots, the control effect of existing technology cannot meet the needs.
[0005] Therefore, it is necessary to provide an improved technical solution to overcome the above technical problems existing in the prior art. Summary of the invention
[0006] The purpose of this application is to provide a method, device, electronic device and readable storage medium for optimizing the dynamic performance of robot joints, which can perform feedforward compensation on the joints by calculating the real-time inertial force, thereby improving the dynamic performance of the joints and avoiding overshoot of the joint position and speed without causing overshoot and changing the stiffness of the robot.
[0007] To achieve the above objectives: In a first aspect, the present invention provides a method for optimizing the dynamic performance of a robot joint, comprising: When it is detected that the robot is in a preset operating state, the acceleration and inertia of the target joint of the robot are obtained; Calculating the inertia force of the target joint according to the acceleration and inertia; Feedforward compensation is performed on the joint control of the robot according to the inertial force, thereby optimizing the dynamic performance of the target joint.
[0008] In one embodiment, obtaining the acceleration of the target joint of the robot includes: The acceleration of the target joint is calculated by combining the velocity of the target joint with the differential tracker, and the calculation formula is as follows:
[0009] Wherein, G(s) is the differential tracker transfer function, r is the velocity factor, ζ is the damping factor, s is the transfer function complex variable, a is the acceleration, and v is the velocity.
[0010] In one embodiment, obtaining the inertia of the target joint of the robot includes: The motion equation of the target joint is obtained, the sampling period and the sampling time are set based on the preset sampling frequency, and the motion equation is discretized to calculate the identification parameters of the target joint, and then the inertia is obtained. The calculation formula is as follows:
[0011] Wherein, k is the sampling time, J(k) is the inertia at the sampling time k, is the sampling period, is the identification parameter.
[0012] In one embodiment, obtaining the motion equation of the target joint includes: Based on the electromagnetic torque, load torque and joint speed of the target joint, the motion equation of the target joint is obtained, and the calculation formula is as follows:
[0013] in, is the electromagnetic torque, is the load torque, J is the inertia, ω is the joint speed, and t is time.
[0014] In one embodiment, the calculation formula for discretizing the motion equation is as follows:
[0015] In one embodiment, before calculating the identification parameters of the target joint, the method further includes: According to the discretized motion equation, the estimated error covariance and gain are calculated as follows:
[0016] Wherein, P(k) is the estimated error covariance, K(k) is the gain; the calculation formula of the identification parameter is as follows:
[0017] In one embodiment, after detecting that the robot is in a preset operating state, the method further includes: A Lumberg observer is established according to the motor inertia, torque constant and encoder model of the target joint, and the speed and position of the target joint in the Lumberg observer are fed back to the joint controller as feedback signals, thereby optimizing the dynamic performance of the target joint.
[0018] In a second aspect, the present invention provides a device for optimizing the dynamic performance of a robot joint, comprising: A data acquisition module, used to acquire the acceleration and inertia of a target joint of the robot when it is detected that the robot is in a preset operating state; A calculation module, used for calculating the inertial force of the target joint according to the acceleration and inertia; A feedforward compensation module is used to perform feedforward compensation on the joint control of the robot according to the inertial force, so as to optimize the dynamic performance of the target joint.
[0019] In a third aspect, the present application provides an electronic device, characterized in that it includes: a processor, and a memory communicatively connected to the processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to implement the method described in the first aspect.
[0020] In a fourth aspect, the present application provides a computer-readable storage medium, characterized in that the computer-readable storage medium stores computer execution instructions, and when the computer execution instructions are executed by a processor, they are used to implement the method described in the first aspect.
[0021] The present application provides a method, device, electronic device and readable storage medium for optimizing the dynamic performance of a robot joint, including: when the robot is detected to be in a preset operating state, the acceleration and inertia of the target joint of the robot are obtained; according to the acceleration and inertia, the inertia force of the target joint is calculated; according to the inertia force, the joint control of the robot is feed-forward compensated, thereby optimizing the dynamic performance of the target joint. The present invention feed-forward compensates the joint by calculating the real-time inertia force, significantly improves the dynamic performance of the joint without causing overshoot and changing the stiffness of the robot, and avoids overshoot of the joint position and speed. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0023] Figure 1 A schematic flow chart of a method for optimizing the dynamic performance of a robot joint provided by an embodiment of the present invention; Figure 2 A system structure diagram of the robot joint inertia force feedforward compensation provided by an embodiment of the present invention; Figure 3 A system structure diagram of a Romberg observer provided by an embodiment of the present invention; Figure 4 A schematic diagram of the structure of a dynamic performance optimization device for a robot joint provided by an embodiment of the present invention; Figure 5 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0024] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of systems and methods consistent with some aspects of the present application as detailed in the appended claims.
[0025] It should be noted that in this article, step codes such as S1 and S2 are used for the purpose of expressing the corresponding content more clearly and concisely, and do not constitute a substantial limitation on the order. When implementing the step, those skilled in the art may execute S2 first and then S1, etc., but these should all be within the scope of protection of this application.
[0026] It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0027] like Figure 1 As shown, the embodiment of the present application provides a method for optimizing the dynamic performance of a robot joint, comprising: Step S101, when it is detected that the robot is in a preset operating state, the acceleration and inertia of the target joint of the robot are obtained.
[0028] It is understandable that when the robot is walking, the joint motor will perform high-speed reciprocating motion, and the inertial force of the joint is also changing in real time. Therefore, in order to improve the dynamic response of the joint, it is necessary to perform feedforward compensation on the inertial force in the joint controller, and the calculation of the joint inertial force requires the joint acceleration and the joint inertia. The present invention calculates the joint acceleration by a differential tracker, obtains the real-time inertia of the joint by a recursive least square method, and thus obtains the joint inertial force.
[0029] In one embodiment, obtaining the acceleration of the target joint of the robot includes: The acceleration of the target joint is calculated by combining the velocity of the target joint with the differential tracker, and the calculation formula is as follows:
[0030] Among them, G(s) is the differential tracker transfer function, r is the velocity factor, ζ is the damping factor, s is the transfer function complex variable, a is the acceleration, and v is the velocity.
[0031] Furthermore, the larger the speed factor is, the faster the response is, and the damping factor is adjusted so that the response has no overshoot.
[0032] It is understandable that the command sent by the robot's host computer to the joint motor includes position and speed. At the same time, since the speed command sent has fluctuations and mutations, if the acceleration is obtained directly by speed differentiation, the fluctuations and mutations of the speed will be amplified, resulting in inaccurate calculation of the inertial force. In order to solve this problem, the present invention calculates the acceleration through a second-order differential tracker, and adjusts the response to have no overshoot.
[0033] In one embodiment, obtaining the inertia of the target joint of the robot includes: Get the motion equation of the target joint, set the sampling period and sampling time based on the preset sampling frequency, discretize the motion equation, calculate the identification parameters of the target joint, and then get the inertia. The calculation formula is as follows:
[0034] Wherein, k is the sampling time, J(k) is the inertia at the sampling time k, is the sampling period, For identification parameters.
[0035] In one embodiment, obtaining the motion equation of the target joint includes: Based on the electromagnetic torque, load torque and joint speed of the target joint, the motion equation of the target joint is obtained, and the calculation formula is as follows:
[0036] in, is the electromagnetic torque, is the load torque, J is the inertia, ω is the joint speed, and t is the time.
[0037] It can be understood that when the robot is walking, as the position of the foot changes, the inertia converted to the joint motor also changes in real time. In order to obtain the real-time inertia, the present invention uses the least squares method to identify the inertia of the joint.
[0038] Understandably, The calculation formula that can be preliminarily obtained by discretizing the sampling period is as follows:
[0039] When the discretized motion equation with sampling time k-1 is obtained, that is, the calculation formula when k=k-1 is as follows:
[0040] When the sampling period is extremely small, the load torque at sampling time k approaches the torque at sampling time k-1, resulting in the following calculation formula:
[0041] When the sampling period is extremely short, the load torques at two adjacent sampling moments are close to the same, so the term containing the load torque can be eliminated by subtracting the speeds at the two sampling moments.
[0042] In one embodiment, before calculating the identification parameters of the target joint, the method further includes: According to the discretized motion equation, the estimated error covariance and gain are calculated as follows:
[0043] Wherein, P(k) is the estimated error covariance, K(k) is the gain; the calculation formula of the identification parameter is as follows:
[0044] Step S102: Calculate the inertial force of the target joint according to the acceleration and inertia.
[0045] It can be understood that the input variables required by the least squares method are electromagnetic torque and joint speed. When these two input variables are known, the real-time inertia of each joint when the robot walks can be obtained through the least squares method, and then the calculation formula for the joint inertia force can be obtained according to the joint acceleration and rotational inertia as follows:
[0046] Where T is the joint inertia force.
[0047] Step S103 , performing feedforward compensation on the joint control of the robot according to the inertial force, so as to optimize the dynamic performance of the target joint.
[0048] Understandable, see Figure 2 , is a system structure diagram of a robot joint inertia force feedforward compensation provided by the present invention. The joint acceleration is obtained according to the differential tracker, and the joint inertia is identified according to the least square method, so as to calculate the real-time joint inertia force, and finally the joint inertia force is used to feedforward compensate the joint control.
[0049] In one embodiment, after detecting that the robot is in a preset operating state, the method further includes: A Lumberg observer is established according to the motor inertia, torque constant and encoder model of the target joint, and the speed and position of the target joint in the Lumberg observer are fed back to the joint controller as feedback signals, thereby optimizing the dynamic performance of the target joint.
[0050] It can be understood that the general form of the encoder transfer function is as follows:
[0051] in, is the encoder transfer function, is the encoder bandwidth; if the encoder position and speed are directly used as the feedback signal for closed-loop control, a relatively large phase lag will be introduced, which will reduce the system phase margin and bandwidth. Therefore, in order to improve the dynamic response performance of the joint, it is necessary to establish a Lumberg observer based on the joint motor inertia, torque constant and encoder model, and feed the speed and position of the target joint in the Lumberg observer as feedback signals to the joint controller, thereby eliminating the influence of the encoder phase lag on the closed-loop bandwidth.
[0052] Further, see Figure 3 , which is a system structure diagram of the Lumberg observer provided in an embodiment of the present application. In the Lumberg observer, the position error signal output by the encoder and the encoder model generates a torque compensation value after passing through the compensation controller. The torque compensation value and the torque value output by the current loop are input into the motor model, and the joint position and speed signals output by the observer are used as feedback signals for joint control.
[0053] Through the above method, the real-time inertial force obtained by calculation is used to feedforward compensate the joint. At the same time, by modeling the joint motor and encoder, the Romberg observer is used to obtain the motor speed. The observed speed is used as a feedback signal to improve the phase margin and dynamic performance of the system. Without causing overshoot and changing the stiffness of the robot, the dynamic performance of the joint is significantly improved, overshoot of the joint position and speed is avoided, and the phase lag introduced by the encoder is eliminated.
[0054] Based on the same inventive concept as the above embodiments, the present application provides a device for optimizing the dynamic performance of a robot joint. Figure 4 , is a device for optimizing the dynamic performance of a robot joint provided in an embodiment of the present application, and the device for optimizing the dynamic performance of a robot joint can be implemented in software and / or hardware. The device includes: The data acquisition module 21 is used to acquire the acceleration and inertia of the target joint of the robot when it is detected that the robot is in a preset operating state; A calculation module 22, used for calculating the inertial force of the target joint according to the acceleration and inertia; The feedforward compensation module 23 is used to perform feedforward compensation on the joint control of the robot according to the inertial force, so as to optimize the dynamic performance of the target joint.
[0055] Based on the same inventive concept as the above embodiments, the present application embodiment provides an electronic device, such as Figure 5 As shown, the device includes: a processor 301 and a memory 302 storing a computer program; wherein, Figure 5 The processor 301 shown in the figure is not used to indicate that the number of the processor 301 is one, but is only used to indicate the positional relationship of the processor 301 relative to other devices. In actual applications, the number of the processor 301 may be one or more; similarly, Figure 3 The memory 302 shown in the figure has the same meaning, that is, it is only used to refer to the position relationship of the memory 302 relative to other devices. In practical applications, the number of memories 302 can be one or more. When the processor 301 runs the computer program, the dynamic performance optimization method applied to the above robot joint is implemented.
[0056] The device may also include: at least one network interface 303. The various components in the device are coupled together via a bus system 304. It is understood that the bus system 304 is used to achieve connection and communication between these components. In addition to the data bus, the bus system 304 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, Figure 5 Various buses are labeled as bus system 304 .
[0057] The memory 302 may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a magnetic random access memory (FRAM), a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM); the magnetic surface memory may be a disk memory or a tape memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM, SyncLink Dynamic Random Access Memory), and direct RAMbus random access memory (DRRAM, Direct Rambus Random Access Memory).The memory 302 described in the embodiments of the present application is intended to include but is not limited to these and any other suitable types of memories.
[0058] Based on the same inventive concept as the above-mentioned embodiment, this embodiment further provides a computer-readable storage medium, in which a computer program is stored. The computer-readable storage medium may be a ferromagnetic random access memory (FRAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM); it may also be various devices including one or any combination of the above memories, such as a mobile phone, a computer, a tablet device, a personal digital assistant, etc. When the computer program stored in the computer-readable storage medium is executed by the processor, the above method is implemented. For the specific steps implemented when the computer program is executed by the processor, please refer to Figure 1 The description of the illustrated embodiment will not be repeated here.
[0059] In the present application, the same or similar terminology concepts, technical solutions and / or application scenario descriptions are generally described in detail only the first time they appear. When they appear again later, they are generally not repeated for the sake of brevity. When understanding the technical solutions and other contents of the present application, for the same or similar terminology concepts, technical solutions and / or application scenario descriptions that are not described in detail later, reference can be made to the previous related detailed descriptions.
[0060] In the present application, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0061] The technical features of the above-described embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the technical features in the above-described embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0062] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims
1. A method for optimizing the dynamic performance of a robot joint, characterized in that: The method comprises: When it is detected that the robot is in a preset operating state, the acceleration and inertia of the target joint of the robot are obtained; Calculating the inertial force of the target joint according to the acceleration and inertia; Feedforward compensation is performed on the joint control of the robot according to the inertial force, thereby optimizing the dynamic performance of the target joint.
2. The method according to claim 1, characterized in that: The obtaining of the acceleration of the target joint of the robot comprises: The acceleration of the target joint is calculated by combining the velocity of the target joint with the differential tracker, and the calculation formula is as follows: Wherein, G(s) is the differential tracker transfer function, r is the velocity factor, ζ is the damping factor, s is the transfer function complex variable, a is the acceleration, and v is the velocity.
3. The method according to claim 1, characterized in that The obtaining of the inertia of the target joint of the robot comprises: The motion equation of the target joint is obtained, the sampling period and the sampling time are set based on the preset sampling frequency, and the motion equation is discretized to calculate the identification parameters of the target joint, and then the inertia is obtained. The calculation formula is as follows: Wherein, k is the sampling time, J(k) is the inertia at the sampling time k, is the sampling period, is the identification parameter.
4. The method according to claim 3, characterized in that: The obtaining of the motion equation of the target joint comprises: Based on the electromagnetic torque, load torque and joint speed of the target joint, the motion equation of the target joint is obtained, and the calculation formula is as follows: in, is the electromagnetic torque, is the load torque, J is the inertia, ω is the joint speed, and t is time.
5. The method according to claim 4, characterized in that The calculation formula for discretizing the motion equation is as follows: 。 6. The method according to claim 5, characterized in that Before calculating the identification parameters of the target joint, it also includes: According to the discretized motion equation, the estimated error covariance and gain are calculated as follows: Wherein, P(k) is the estimated error covariance, K(k) is the gain; the calculation formula of the identification parameter is as follows: 。 7. The method according to claim 1, characterized in that After detecting that the robot is in a preset operating state, it also includes: A Lumberg observer is established according to the motor inertia, torque constant and encoder model of the target joint, and the speed and position of the target joint in the Lumberg observer are fed back to the joint controller as feedback signals, thereby optimizing the dynamic performance of the target joint.
8. A device for optimizing the dynamic performance of a robot joint, characterized in that: The device comprises: A data acquisition module, used to acquire the acceleration and inertia of a target joint of the robot when it is detected that the robot is in a preset operating state; A calculation module, used for calculating the inertial force of the target joint according to the acceleration and inertia; A feedforward compensation module is used to perform feedforward compensation on the joint control of the robot according to the inertial force, so as to optimize the dynamic performance of the target joint.
9. An electronic device, characterized in that: include: A processor and a memory for storing executable instructions; wherein the processor is configured to execute the instructions to implement the dynamic performance optimization method of a robot joint as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that: When the instructions in the computer-readable storage medium are executed by a processor, the dynamic performance optimization method of a robot joint as described in any one of claims 1 to 7 is implemented.
Citation Information
Cited By
Electric crimping tool control method and system
CN122644989A
