Robot joint servo motor torque coefficient correction method
By installing an adjustable load device on the robot manipulator and using the robot dynamics model to measure the servo motor current value and calculate the gravity torque, the problem of inaccurate servo motor torque coefficient measurement is solved and accurate torque coefficient measurement and Motor torque control adapted to different load conditions.
Patent Information
- Application Number
- CN202411487550.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-24
- Publication Date
- 2025-01-24
AI Technical Summary
In the prior art, the measurement of the torque coefficient of the servo motor is inaccurate, resulting in an impact on the operating accuracy in robot joint control.
By installing the adjustable load device at the end of the robotic arm, control the mechanical arm target joint movement, measure the current value of the servo motor, and use the robot dynamics model to calculate the gravity torque. The minimum daily multiplication is fitted to get the torque coefficient.
This method can accurately measure the torque coefficient, consider nonlinear factors that may affect the torque coefficient of the motor, and apply to different loads and torque, and do not require a torque sensor or disassemble the servo motor.
Smart Images

Figure CN119362959A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of robots, and in particular to a method for correcting the torque coefficient of a robot joint servo motor. Background Art
[0002] The servo motor is one of the important components of the robot. The torque and force generated by the servo motor directly or indirectly drive the robot body to obtain various movements of the robot. Therefore, the parameters of the servo motor are particularly important in the servo system performance test and robot test. The torque coefficient of the servo motor is a very important parameter. It is one of the important indicators to measure the performance of the motor and is used to evaluate the torque output capacity of the motor under different loads. The motor torque coefficient can be used to describe the dynamic characteristics of the motor and is closely related to the design and working conditions of the motor. It directly reflects the relationship between the motor current and torque and is an important parameter in motor selection and application.
[0003] The above mainly describes the importance of the motor torque coefficient in the servo system. The motor torque coefficient is an important means to determine the torque in actual work. Since most robots are not equipped with joint torque sensors, the joint torque can only be characterized by the motor current, and then the motor current is converted into joint torque through the torque coefficient, and associated with the robot dynamics model. Most motors are generally marked with torque constant parameters in the parameter table attached when they leave the factory, but this value is a range value, and because the load weight carried by the motor is different when the motor is working, its torque coefficient cannot be accurate, which has a certain impact on the operation accuracy when controlling the robot joints.
[0004] In the related art, the scheme proposed by CN102904498A estimates that the torque constant calculation unit calculates the friction including viscous friction and Coulomb friction according to the motor speed, and then calculates the current correction value according to the calculated friction to correct the motor stator current, and finally obtains the torque coefficient by dividing the product of the moment of inertia and the acceleration by the corrected current value. However, this scheme has the uncertainty of friction, and the friction factor calculated according to the patent method will have a large error. In the process of obtaining acceleration, interference will inevitably occur, and there will be a large error in the acceleration obtained by the acquisition. Using the acceleration containing the error to calculate the motor torque coefficient will inevitably include the error caused by the acceleration error. Another public scheme of CN106612087A uses a disturbance torque observer to observe the disturbance torque in the motor motion equation, and uses the observation results to calculate the actual output torque of the motor, and finally calculates the motor torque coefficient based on the calculated actual output torque of the motor and the actual torque current of the motor. This scheme uses a disturbance torque observer to directly measure the torque. Since the torque obtained by the disturbance torque observer will have a large error in the actual process, using the value of the disturbance torque observer directly as the value of the torque for calculation will cause an error in the motor torque coefficient due to the error of the disturbance observer. Summary of the invention
[0005] The embodiment of the present application provides a method for calibrating the torque coefficient of a robot joint servo motor to solve the problem of inaccurate measurement of the torque coefficient of the servo motor.
[0006] On the one hand, an embodiment of the present application provides a method for calibrating a torque coefficient of a robot joint servo motor, the method comprising:
[0007] An adjustable load device is installed at the end of the robotic arm to control the movement of a target joint of the robotic arm, and the current value of the servo motor of the target joint in the uniform motion stage is measured;
[0008] Obtain the load mass, center of mass position and joint angle, and substitute them into the robot dynamics model to calculate the gravitational torque acting on the target joint of the robot;
[0009] The position where the load device is installed on the robot arm is changed, and the current value of the servo motor of the target joint in the uniform motion stage is measured and the gravity torque is calculated to obtain the gravity torque of the target joint under different load positions;
[0010] The torque coefficient sequence is obtained according to the corresponding relationship between the gravity torque and the joint torque, and the sequence data is fitted based on the least squares method to calculate the torque coefficient.
[0011] Specifically, when the robotic arm includes at least two mechanical joints, and one target joint is selected for measurement, the other joints remain stationary.
[0012] Specifically, the target joint is adjusted to 90 degrees and a load adjustment device is installed.
[0013] Specifically, the target joint of the robot arm is controlled to move back and forth at a constant speed, and the current value I of the servo motor in the forward rotation state is measured. m+ and the current value I in the reverse state m- ;
[0014] The current value in the forward and reverse states is filtered and denoised, and the sum is averaged to obtain the current value I of the target joint in the uniform motion stage. m , which is expressed as follows:
[0015] I m =(I m+ +I m- ) / 2.
[0016] Specifically, the joint positive driving torque and joint reverse drive torque The average value of is equal to the gravitational moment G(θ).
[0017] Specifically, the calculation formula of the gravity moment and the torque coefficient of the servo motor is expressed as follows:
[0018] KT i =τ m / Im
[0019] K T I mi =mgl+m1gl i
[0020] Among them, I mi represents the servo motor current value obtained by the i-th load position adjustment, mgl represents the gravity torque generated by the robot body, m1gl i It represents the gravity moment generated by the adjustable load device at the i-th adjustment position.
[0021] Specifically, the torque coefficient sequence is obtained according to the corresponding relationship between the gravity torque and the joint torque, and the sequence data is fitted based on the least square method to calculate and obtain the torque coefficient, including:
[0022] Obtain N groups of correlation equations between gravity moment and servo motor torque coefficient, and obtain N / 2 groups of intermediate torque coefficients by subtracting the N groups of correlation equations in pairs;
[0023] The N / 2 groups of intermediate torque coefficients are fitted by the least square method to calculate the torque coefficient K under the first load. T1 ;
[0024] Change the second load weight, recalculate the N sets of correlation equations, and obtain the torque coefficient K under the second load T2 , and so on, the torque coefficient sequence [K T1 , K T2 , ... K TN ];
[0025] The least square method is used to fit the torque coefficient sequence, and the difference between each group of data and the calculated value of the optimal torque coefficient used is used as the residual function to obtain the torque coefficient.
[0026] On the other hand, the present application provides a robot joint servo motor torque coefficient correction device, the device comprising:
[0027] A control module is used to install the adjustable load device at the end of the robotic arm, control the movement of the target joint of the robotic arm, and measure the current value of the servo motor of the target joint in the uniform motion stage;
[0028] The first calculation module is used to obtain the load mass, center of mass position and joint angle, and substitute them into the robot dynamics model to calculate the gravity torque of the robot on the target joint;
[0029] The measuring module is used to change the position where the load device is installed on the robot arm, and to measure the current value of the servo motor of the target joint in the uniform motion stage and calculate the gravity torque to obtain the gravity torque of the target joint under different load positions;
[0030] The second calculation module is used to obtain a torque coefficient sequence according to the corresponding relationship between the gravity torque and the joint torque, and to fit the sequence data based on the least squares method to calculate and obtain the torque coefficient.
[0031] On the other hand, the present application provides a computer device, comprising a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the robot joint servo motor torque coefficient correction method mentioned in the above aspect.
[0032] On the other hand, the present application provides a computer-readable storage medium, which stores at least one instruction, at least one program, a code set or an instruction set. The at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by a processor to implement the robot joint servo motor torque coefficient correction method mentioned in the above aspect.
[0033] The beneficial effects brought by the technical solution provided by the embodiment of the present application include at least: by introducing an adjustable load device, the size of the load can be adjusted arbitrarily according to demand; the method for measuring the torque coefficient is simple, and no additional equipment such as torque sensors is required, and the servo motor does not need to be disassembled; the result obtained takes into account the nonlinear factors that may affect the motor torque coefficient, and the least squares method is used to process the data, which can be adapted to different loads and different torques. Through the calibration and verification steps, the accuracy and reliability of the torque model can be further confirmed. In this way, this verified model can be fully used in practical applications to predict and control the motor torque. The method is applicable to motors of various types and sizes, including DC motors, AC motors, servo motors, etc. Whether it is a small motor or a large industrial motor, a similar method can be used to correct the motor torque coefficient. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] Figure 1 is a flow chart of a robot joint servo motor torque coefficient correction method provided by an embodiment of the present application;
[0035] Figure 2 is a schematic diagram of the structure of an adjustable load device provided in an embodiment of the present application;
[0036] Figure 3 It is a structural block diagram of the robot joint servo motor torque coefficient correction device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0037] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0038] The term "multiple" as used herein refers to two or more than two. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the related objects are in an "or" relationship.
[0039] The motor torque coefficient refers to the torque generated by the motor unit current, which can be expressed in NM / A. It is an important parameter that characterizes the motor's output torque capacity. The motor torque coefficient given by the motor manufacturer is usually a range value, so the motor torque coefficient value will have a deviation from the actual situation, which is called the torque coefficient deviation. In the process of motor driving, the motor torque coefficient is often used to calculate the motor's driving torque in order to obtain more stable control.
[0040] Figure 1A robot joint servo motor torque coefficient calibration method provided in an embodiment of the present application is used to measure the torque coefficient of a robot joint servo motor. The method comprises the following steps:
[0041] S1, installing the adjustable load device at the end of the robotic arm, controlling the movement of the target joint of the robotic arm, and measuring the current value of the servo motor of the target joint in the uniform motion stage;
[0042] The adjustable load device can be any device with load regulation function, such as Figure 2 The adjustable load device of the single-arm dumbbell structure shown can be installed on the robotic arm through a bolt structure at one end, and the other end is the load end. Different loads can be set and tested according to needs. When testing this solution, first select a specific load, then install the adjustable load device at the end of the robotic arm, and then control the target joint movement of the robotic arm. Because some robotic arms are multi-axis or multi-joint structures, it is necessary to control other variables at this time, select a unique joint movement, and keep other joints stationary to measure accurate values. When measuring the current value data of the servo motor, try to select the data of the joint in the uniform motion stage to ensure the stability of the data.
[0043] In some embodiments, in order to ensure the accuracy of the data, the target joint of the robot arm can be controlled to move back and forth at a constant speed, and the current value I of the servo motor in the forward state can be measured. m+ and the current value I in the reverse state m- ;
[0044] The current value in the forward and reverse states is filtered and denoised, and the sum is averaged to obtain the current value I of the target joint in the uniform motion stage. m , which is expressed as follows:
[0045] I m =(I m+ +I m- ) / 2.
[0046] S2, obtain the load mass, center of mass position and joint angle, and substitute them into the robot dynamics model to calculate the gravity torque of the robot on the target joint;
[0047] The load mass, center of mass position and joint angle are necessary parameters for building the robot dynamic model. The robot dynamics equation is expressed as follows:
[0048]
[0049] The τ m represents the joint torque of the target joint, θ, Represent the position, velocity and acceleration of the target joint respectively; represents the moment of inertia, represents the Coriolis force; G(θ) represents the gravitational moment, τ f Represents the friction torque of the target joint.
[0050] When the target joint of the robot moves and the other joints remain stationary, there are:
[0051]
[0052] So for the i-th joint, the above equation can be simplified to:
[0053]
[0054] Among them represents the joint torque of the i-th joint, G i (θ) represents the gravity moment of the i-th joint, represents the friction torque of the i-th joint.
[0055] The above formula shows that the joint torque is equal to the added load gravity torque and the friction torque of the joint. Because the friction torque is opposite to the speed, under the condition of positive rotation, there is:
[0056]
[0057] Under the reversal condition:
[0058]
[0059] Adding the two together we have:
[0060]
[0061] The above formula shows that the joint positive driving torque and joint reverse drive torque The average value of is equal to the gravitational moment G(θ).
[0062] S3, changing the position where the load device is installed on the robot arm, and measuring the current value of the servo motor of the target joint in the uniform motion stage and calculating the gravity torque, so as to obtain the gravity torque of the target joint under different load positions;
[0063] In some embodiments, the joint of the robot arm can be set to 90 degrees and an adjustable load device can be installed. During the forward and reverse rotation of the joint, it can be known from the above equation that the joint forward driving torque is and joint reverse drive torque The average value is equal to the gravity moment. According to the definition formula of the torque coefficient of the servo motor:
[0064] KT=τ m / Im
[0065] In this case, assuming that the gravity moment generated by the robot body is mgl, and the gravity moment generated by the adjustable load is m1gl, where g is the gravity coefficient, the above formula can be written as:
[0066] K T I mi =mgl+m1gl i
[0067] Among them, I mi represents the servo motor current value obtained by the i-th load position adjustment, mgl represents the gravity torque generated by the robot body, m1gl i It represents the gravity moment generated by the adjustable load device at the i-th adjustment position.
[0068] S4, obtaining a torque coefficient sequence according to the corresponding relationship between the gravity torque and the joint torque, and fitting the sequence data based on the least square method to calculate and obtain the torque coefficient.
[0069] At this time, the position of the load is changed multiple times to give it different gravitational moments. The formula at this time is:
[0070] K T I m1 =mgl+m1gl1
[0071] K T I m2 =mgl+m1gl2
[0072] …
[0073] K T I mN =mgl+m1gl N
[0074] Obtain N groups of correlation equations between gravity moment and servo motor torque coefficient, and obtain N / 2 groups of intermediate torque coefficients by subtracting the N groups of correlation equations in pairs;
[0075] The N / 2 groups of intermediate torque coefficients are fitted by the least square method to calculate the torque coefficient K under the first load. T1 ;
[0076] Change the second load weight, recalculate the N sets of correlation equations, and obtain the torque coefficient K under the second load T2 , and so on, the torque coefficient sequence [K T1 , K T2 , ... K TN ];
[0077] A set of torque coefficient values can be obtained for each load. This is because many nonlinear factors lead to slight deviations in torque coefficients under different loads. According to data analysis, these collected data are modeled, and the least squares method is used to fit the data. The difference between each set of collected data and the calculated value of the optimal torque coefficient is used as the residual function, and finally a torque coefficient can be calculated, which can be well applied under different load conditions.
[0078] Based on the above process, the torque coefficient of a target joint can be measured. When the robotic arm has multiple joints, the above method can be repeatedly used to measure one by one to obtain the torque coefficients of all the robotic arm joints.
[0079] In summary, by introducing an adjustable load device, the size of the load can be adjusted arbitrarily according to demand; the method for measuring the torque coefficient is simple, and no additional equipment such as torque sensors is required, nor is the servo motor required to be disassembled; the results obtained take into account the nonlinear factors that may affect the motor torque coefficient, and the least squares method is used to process the data, which can be adapted to different loads and different torques. Through the calibration and verification steps, the accuracy and reliability of the torque model can be further confirmed. In this way, this verified model can be fully used in practical applications to predict and control the motor torque. This method is suitable for motors of various types and sizes, including DC motors, AC motors, servo motors, etc. Whether it is a small motor or a large industrial motor, a similar method can be used to calibrate the motor torque coefficient.
[0080] Figure 3 : is a structural block diagram of a robot joint servo motor torque coefficient correction device provided in an embodiment of the present application, the device comprising:
[0081] The control module 310 is used to install the adjustable load device at the end of the robotic arm, control the movement of the target joint of the robotic arm, and measure the current value of the servo motor of the target joint in the uniform motion stage;
[0082] The first calculation module 320 is used to obtain the load mass, the center of mass position and the joint angle, and substitute them into the robot dynamics model to calculate the gravity torque of the robot acting on the target joint;
[0083] The measuring module 330 is used to change the position where the load device is installed on the robot arm, and measure the current value of the servo motor of the target joint in the uniform motion stage and calculate the gravity torque to obtain the gravity torque of the target joint under different load positions;
[0084] The second calculation module 340 is used to obtain a torque coefficient sequence according to the corresponding relationship between the gravity torque and the joint torque, and to fit the sequence data based on the least square method to calculate and obtain the torque coefficient.
[0085] On the other hand, the present application provides a computer device, comprising a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the robot joint servo motor torque coefficient correction method mentioned in the above aspect.
[0086] On the other hand, the present application provides a computer-readable storage medium, which stores at least one instruction, at least one program, a code set or an instruction set. The at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by a processor to implement the robot joint servo motor torque coefficient correction method mentioned in the above aspect.
[0087] This specific embodiment is merely an explanation of the present invention and is not a limitation of the present invention. After reading this specification, those skilled in the art may make non-creative modifications to the present embodiment as needed. However, as long as they are within the scope of the claims of the present invention, they are protected by the patent law.
Claims
1. A robot joint servo motor torque coefficient correction method, characterized in that: The method comprises: An adjustable load device is installed at the end of the robotic arm to control the movement of a target joint of the robotic arm, and the current value of the servo motor of the target joint in the uniform motion stage is measured; Obtain the load mass, center of mass position and joint angle, and substitute them into the robot dynamics model to calculate the gravitational torque acting on the target joint of the robot; The position where the load device is installed on the robot arm is changed, and the current value of the servo motor of the target joint in the uniform motion stage is measured and the gravity torque is calculated to obtain the gravity torque of the target joint under different load positions; The torque coefficient sequence is obtained according to the corresponding relationship between the gravity torque and the joint torque, and the sequence data is fitted based on the least squares method to calculate the torque coefficient.
2. The method according to claim 1, characterized in that: When the robot arm includes at least two mechanical joints and a target joint is selected for measurement, the other joints remain stationary.
3. The method according to claim 2, characterized in that The target joint is adjusted to 90 degrees and a load adjustment device is installed.
4. The method according to claim 1 or 2, characterized in that: Control the target joint of the robot arm to move back and forth at a constant speed, and measure the current value I of the servo motor in the forward state m+ and the current value I in the reverse state m- ; The current value in the forward and reverse states is filtered and denoised, and the sum is averaged to obtain the current value I of the target joint in the uniform motion stage. m , which is expressed as follows: I m =(I m+ +I m- ) / 2。 5. The method according to claim 3, characterized in that: Joint positive driving torque and joint back-drive torque The average value of is equal to the gravitational moment G(θ).
6. The method according to claim 4, characterized in that The calculation formula of gravity moment and servo motor torque coefficient is as follows: K Ti =t m / I m K T I mi =mgl+m1gl i Among them, I mi represents the servo motor current value obtained by the i-th load position adjustment, mgl represents the gravity torque generated by the robot body, m1gl i It represents the gravity moment generated by the adjustable load device at the i-th adjustment position.
7. The method according to claim 6, characterized in that The torque coefficient sequence is obtained according to the corresponding relationship between the gravity torque and the joint torque, and the sequence data is fitted based on the least square method to calculate and obtain the torque coefficient, including: Obtain N groups of correlation equations between gravity moment and servo motor torque coefficient, and obtain N / 2 groups of intermediate torque coefficients by subtracting the N groups of correlation equations in pairs; The N / 2 groups of intermediate torque coefficients are fitted by the least square method to calculate the torque coefficient K under the first load. T1 ; Change the second load weight, recalculate the N sets of correlation equations, and obtain the torque coefficient K under the second load T2 , and so on, the torque coefficient sequence [K T1 ,K T2 ,…K TN ]; The least square method is used to fit the torque coefficient sequence, and the difference between each group of data and the calculated value of the optimal torque coefficient used is used as the residual function to obtain the torque coefficient.
8. A robot joint servo motor torque coefficient correction device, characterized in that: The device comprises: A control module is used to install the adjustable load device at the end of the robotic arm, control the movement of the target joint of the robotic arm, and measure the current value of the servo motor of the target joint in the uniform motion stage; The first calculation module is used to obtain the load mass, center of mass position and joint angle, and substitute them into the robot dynamics model to calculate the gravity torque of the robot on the target joint; The measuring module is used to change the position where the load device is installed on the robot arm, and to measure the current value of the servo motor of the target joint in the uniform motion stage and calculate the gravity torque to obtain the gravity torque of the target joint under different load positions; The second calculation module is used to obtain a torque coefficient sequence according to the corresponding relationship between the gravity torque and the joint torque, and to fit the sequence data based on the least squares method to calculate and obtain the torque coefficient.
9. A computer device, characterized in that: The computer device includes a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the robot joint servo motor torque coefficient correction method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The readable storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the robot joint servo motor torque coefficient correction method as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Control device that detects whether or not irreversible demagnetization has occurred
CN102904498A
Motor torque coefficient identification method and device and motor control device and judgment device
CN106612087A
Cited By
Control method for controlling variable load of linear driver based on torque of push rod motor
CN120415237A