A calibration method and calibration system for an integrated joint dual encoder in a robot.

CN117325210BActive Publication Date: 2026-09-01SHANGHAI YIGONG PRECISION TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202311356685.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-10-19
Publication Date
2026-09-01
Estimated Expiration
2043-10-19

AI Technical Summary

Technical Problem

[0006]然而,在实际制造过程中,由于机器人一体化关节的装配复杂性,不同批次的模组产品在装配完成后,编码器动盘和静盘的相对位置关系可能会略微不同

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117325210B_ABST
    Figure CN117325210B_ABST
Patent Text Reader

Abstract

This invention discloses a calibration method and system for a dual encoder in an integrated robot joint, belonging to the field of robotics technology. The first encoder calibration system solves the problem of poor angle acquisition accuracy caused by insufficient mechanical assembly precision in the servo motor of the robot joint module, thereby improving the control accuracy of the servo motor. The second encoder calibration system solves the accuracy problem of the second encoder in the robot joint module, thereby improving the overall output angle accuracy of the robot joint module. The calibration system can automatically calibrate the relative positions of the encoder's moving and stationary disks after assembly of different batches of module products, and automatically calibrate the encoders based on test results, adapting to the mass production of integrated robot joints and ensuring high precision and consistency for each joint.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robotics, and more specifically, to a calibration method and system for an integrated dual encoder for a robot joint. Background Technology

[0002] Integrated robotic joints are highly integrated mechatronic modules that incorporate several key components, such as gearboxes, servo motors, motor drivers, and encoders, for use in robotic and automation systems. These modular products aim to provide high-performance, high-precision, and reliable motion control solutions. In such systems, encoders are one of the most crucial components, used to measure and provide feedback on the position and angle information of the motors and gearboxes.

[0003] Encoders are generally divided into two types: primary encoders and secondary encoders, which each measure the rotation angle of different parts.

[0004] First encoder: Used to measure the rotational angle of the motor shaft. This encoder is typically directly connected to the motor shaft to accurately measure the motor's rotational position, which helps ensure that the motor moves in the desired manner.

[0005] The second encoder is used to measure the rotational angle at the output of the speed reducer. In the robot's joints, the speed reducer is used to decrease the motor's output speed while increasing the output torque. The second encoder is connected to the speed reducer's output shaft to measure the rotational position of the entire joint.

[0006] However, in actual manufacturing, due to the complexity of assembling the robot's integrated joints, the relative positional relationship between the encoder's moving and stationary disks may differ slightly between different batches of module products after assembly. This minute difference can lead to angular positional errors between different products, meaning they may not reach the same position precisely under a given control command. Summary of the Invention

[0007] To address the aforementioned technical problems, the present invention aims to provide a calibration method and system for dual encoders of an integrated robot joint. This system can automatically calibrate the relative positions of the encoder's moving and stationary disks after assembly of different batches of module products. The calibration system automatically calibrates the encoders based on the test results, making it suitable for mass production of integrated robot joints and ensuring that each joint has high precision and consistency.

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

[0009] A calibration method for an integrated joint dual encoder in a robot is disclosed, used to calibrate the joint motor portion and the overall joint module of the robot, respectively. The joint motor portion includes a servo motor, a first encoder, and a motor driver. The overall joint module includes the joint motor portion, a reducer, and a second encoder. The method is implemented through the following steps:

[0010] Step 1: Calibrate the first encoder and obtain the calibration curve;

[0011] Step 2: Apply the calibration curve from Step 1 to calibrate the angle data of the servo motor under test;

[0012] Step 3: Calibrate the second encoder and obtain the calibration curve;

[0013] Step 4: Apply the calibration curve from Step 3 to calibrate the output angle control accuracy of the robot joint module.

[0014] Furthermore, step 1 includes the following sub-steps:

[0015] (1) A calibrated servo motor is used and the calibrated servo motor is rigidly mechanically connected to the servo motor under test;

[0016] (2) Set the calibrated servo motor to position mode and the servo motor under test to disable mode.

[0017] (3) Record the initial angles of the calibrated servo motor and the servo motor under test;

[0018] (4) Drive the calibration servo motor and perform multiple position controls according to the set angle intervals;

[0019] (5) After each calibration servo motor position is reached, record the angle of the calibration servo motor and the angle of the tested servo motor, and calculate the angle data generated by each position control to obtain the calibration curve.

[0020] Furthermore, step 3 includes the following sub-steps:

[0021] (1) Assemble the calibrated robot joint motor and robot joint reducer into a complete robot joint module;

[0022] (2) The output end of the robot joint module reducer and the calibration angle encoder are rigidly mechanically connected to ensure the synchronization of rotation;

[0023] (3) Record the initial positions of the calibration angle encoder and robot joint module;

[0024] (4) Drive the robot joints to perform multiple position controls at set angle intervals using a fully closed-loop control method;

[0025] (5) Record the angle of the calibration angle encoder and the angle of the second encoder of the robot joint after each full closed-loop control position is reached, and calculate the angle data generated by each position control to obtain the calibration curve.

[0026] Furthermore, in step 1, the method for obtaining the calibration curve includes the following steps:

[0027] (1) Set the number of curve points N to obtain the position resolution of the calibrated servo motor's forward movement as pN = 360° / N;

[0028] (2) Read the absolute angle Ang of the encoder of the joint motor under test. m0 calibrate the absolute position Ang of the servo motor encoder c0 The difference dAng is calculated using Formula 1, where:

[0029] dAng = Ang m0 -Ang c0

[0030] (3) Using the obtained dAng value and the absolute position value of the calibrated servo motor encoder, the reference value Ang is calculated using Formula 2. ref ,in:

[0031] Ang ref =(Ang c0 +dAng)mod360

[0032] (4) Start the calibration servo motor for relative positioning control, running in increments of angle pN degrees. After the calibration servo motor position stabilizes, read the absolute position of the calibration servo motor and the absolute position of the encoder of the joint motor under test, respectively. Calculate the angle reference value according to Formula 1 and Formula 2, and set (Ang... ref ,Ang m0 )save;

[0033] (5) Repeat the above operation until the calibration servo motor returns to the start position, obtaining N data points. Calculate the N saved data points to obtain a calibration list. m0 ,Offset)[N], where:

[0034] Offset = Ang ref –Ang m0

[0035] (6) Arrange the calibration list according to Ang m0 After sorting in ascending order, List2 is obtained. The correspondence in List2 is transmitted to the joint driver of the robot's joint motor and stored in the joint driver's memory.

[0036] Furthermore, in step 2, the calibration method for calibrating the angle data of the servo motor under test using the calibration curve from step 1 includes the following steps:

[0037] (1) Read the raw data Ang from the angle encoder. O0 ;

[0038] (2) Search the data table List2 and find the table containing Ang. O0 Data range [Ang] down ,Ang up ], that is, finding the one that satisfies Ang m0 [i] <Ang O0 ≤Ang m0 The value of i in [i+1] is given by Ang. down =Ang m0 [i], Ang up =Ang m0 [i+1];

[0039] (3) If Ang O0 ≤Ang m0 [0], then let Ang down =Ang m0 [N-1]–360, Ang up =Ang mo [0];

[0040] (4) If Ang O0 Ang m0 [N-1], then let Ang down =Ang m0 [N-1], Ang up =Ang m0 [0]+360;

[0041] (5) After determining the data range, the compensation amount of the current original angle is calculated by linear interpolation, and denoted as Offset. up For Ang up The corresponding compensation amount, Offset down For Ang down The corresponding compensation amount is calculated using the following formula:

[0042]

[0043] (6) After calculating the offset of the current angle, the corrected angle value Ang is calculated using Formula 4. new ,in:

[0044] Ang new =Ang O0+Offset O0

[0045] Furthermore, in step 3, the method for obtaining the calibration curve includes the following steps:

[0046] (1) Determine the number of curve points N, and then use a fully closed-loop control method to make the output of the robot joint module perform position control at angular intervals of pN = 360 / N. Before starting the control, record the data Ang from the high-precision encoder. p The angular offset dAng is obtained by combining the data Ang2 from the second encoder of the robot joint module;

[0047] (2) After the motion increment position pN at the output end of the robot joint module is in place, record the point data List3[i] = (Ang out ,Ang2), where Ang2 is the current second encoder angle of the robot joint, Ang p For the current high-precision encoder angle

[0048] Ang out =(Ang p +dAng)mod360

[0049] (3) When i = N, end the calibration process and apply the obtained dataset according to Ang. out Sort in ascending order to get a total of N data points.

[0050] Furthermore, in step 4, the method for calibrating the output angle control accuracy of the robot joint module using the calibration curve from step 3 includes the following steps:

[0051] (1) Set the target angle to Ang T ;

[0052] (2) Query the data in List[3] and find the data containing Ang. T Data range [Out] down Out up ], that is, finding the one that satisfies Ang out [i] <Ang T ≤Ang out Let the value of i in [i+1] be used to determine the Out value. down =Ang out [i], Out up =Ang out [i+1];

[0053] (3) If Ang T ≤Ang out [0], then let Out down =Angout [N-1]–360, Out up =Ang out [0];

[0054] (4) If Ang T Ang out [N-1], then let Out down =Ang out [N-1], Out up =Ang out [0]+360;

[0055] (5) After determining the data range, the second encoder angle value set by control is obtained by linear interpolation, denoted as Ang2. up For Out up The corresponding second encoder angle in the List3 dataset, Ang2 down For Out down In the List3 dataset, the corresponding second encoder angle indicates the current target position Ang. T The corresponding second encoder angle should be:

[0056]

[0057] (6) By using Ang2 as the target angle for the position control of the robot joint module, more precise position control can be achieved.

[0058] Furthermore, in step 3, the steps of the fully closed-loop control method include:

[0059] (1) First, obtain the set angle value Ang. Target ;

[0060] (2) Based on the current angle value Ang now Calculate the angle deviation Ang err =Ang Target –Ang now ;

[0061] (3) If Ang err Less than the set deviation threshold Ang tol If the angle is correct, it will enter the angle micro-mode; otherwise, it will enter the acceleration / deceleration control mode.

[0062] (4) In acceleration / deceleration control mode, calculate the deceleration distance Dis. break ,in:

[0063] Dis break =(V now *V now ) / (2*V acce *Kgear )

[0064] In the formula, V now V represents the current speed. acce Indicates acceleration or deceleration, K gear This indicates the reduction ratio of the reducer at the front end of the robot joint module;

[0065] (5) If the current Ang err If the distance is greater than the deceleration distance, the motor will be controlled to accelerate according to the acceleration, the sign and direction of which are the same as Ang. err Consistent, when Ang err The absolute value is less than Dis break +Dis tail When this happens, it enters the deceleration phase, and deceleration control is performed according to the motor's deceleration rate. Dis tail =k*Ang tol k is an empirical value, ranging from 1.0 to 2.0;

[0066] (6) When the servo motor enters the deceleration state, compare Ang err With Ang tol The value of Ang err The absolute value is less than Ang tol Then it will switch from acceleration / deceleration mode to fine-tuning mode;

[0067] (7) The speed control method in fine-tuning mode is V = Ang err *Kp, where Kp is an empirical value, should ensure that:

[0068] Ang tol *Kp| <V ppmax

[0069] Where V ppmax This indicates the maximum speed in fine-tuning mode;

[0070] (8) The system maintains angle stability in fine-tuning mode, and the angle control error is less than Ang. tol .

[0071] This invention proposes a calibration system for an integrated joint dual encoder for a robot, comprising a first encoder calibration test bench and a second encoder calibration test bench;

[0072] The first encoder calibration test bench is used to independently calibrate the robot joint motors.

[0073] The first encoder calibration test bench includes a calibration servo motor, a rigid connection assembly, a joint servo motor under test, a data acquisition card, and a test control host.

[0074] The calibration servo motor is mechanically connected to the joint servo motor under test via a rigid connection component.

[0075] The test control host is electrically connected to the data acquisition card, the calibration servo motor, and the test joint servo motor, respectively.

[0076] The data acquisition card is used to acquire data from the calibration servo motor, the tested joint servo motor, and the first encoder.

[0077] The test control host is used to perform calibration operations on the first encoder;

[0078] The second encoder calibration test bench is used to calibrate the data of the robot joint module.

[0079] The second encoder calibration test bench includes a calibration angle encoder, a rigid connection assembly, a joint module of the robot under test, a data acquisition card, and a test control host.

[0080] The calibration angle encoder is mechanically connected to the joint module of the robot under test through rigid connection component two.

[0081] The test control host 2 is electrically connected to the data acquisition card 2, the calibration angle encoder, and the joint module of the robot under test, respectively.

[0082] The second data acquisition card is used to acquire data from the calibration angle encoder, the joint module of the robot under test, and the second encoder.

[0083] The second test control host is used to perform calibration operations on the second encoder.

[0084] Furthermore, the calibration system includes a computer-readable storage medium storing a computer program and a processor, the computer program being read and executed by the processor to implement the calibration method for the robot's integrated joint dual encoder as described above.

[0085] The beneficial effects of this invention are:

[0086] The present invention provides a calibration method and system for a robot integrated joint with dual encoders. The first encoder calibration system addresses the problem of poor angle acquisition accuracy caused by insufficient mechanical assembly precision in the servo motor portion of the robot joint module, thereby improving the control precision of the servo motor. The second encoder calibration system solves the accuracy problem of the second encoder in the robot joint module, improving the overall output angle accuracy of the robot joint module. The calibration system can automatically calibrate the relative positions of the encoder's moving and stationary disks after assembly of different batches of module products, and automatically calibrate the encoders based on test results. This adapts to the mass production of integrated robot joints, ensuring high precision and consistency for each joint. Attached Figure Description

[0087] Figure 1 This is an electrical connection block diagram of the first encoder calibration test bench in an embodiment of the present invention;

[0088] Figure 2 This is a calibration flowchart for calibrating the first encoder in an embodiment of the present invention;

[0089] Figure 3 This is an electrical connection block diagram of the second encoder calibration test bench according to an embodiment of the present invention;

[0090] Figure 4 This is a flowchart of the fully closed-loop control logic in an embodiment of the present invention;

[0091] Figure 5 This is a calibration flowchart for calibrating the second encoder in an embodiment of the present invention;

[0092] Figure 6 This is a schematic diagram of the mechanical connection structure of the calibration system used in step 1 of this embodiment of the invention;

[0093] Figure 7 This is a comparison chart of error data before and after calibration in an embodiment of the present invention.

[0094] In the picture:

[0095] 1. Calibrate the servo motor; 2. Joint motor section; 3. Joint driver; 4. Servo driver; 5. Data acquisition card one; 6. Test control host one; 7. Joint reducer section; 8. Calibrate the angle encoder; 9. Communication card; 10. Encoder data acquisition card two; 11. Test control host two.

[0096] 12. Test bench base; 13. Calibration servo motor mounting bracket; 14. Coupling one; 15. Torque sensor; 16. Coupling two; 17. Mounting bracket for the servo motor under test; 18. Housing of the servo motor under test; 19. Output shaft of the servo motor under test; 20. Stationary disk of the first encoder; 21. Moving disk of the first encoder. Detailed Implementation

[0097] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention, and should not be construed as limiting the present invention.

[0098] In the description of this invention, it should be understood that the terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," and "counterclockwise" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. These terms are used solely for the convenience of describing the invention and for simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the invention. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of the stated features. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.

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

[0100] In this invention, unless otherwise explicitly specified and limited, "above" or "below" the second feature can include direct contact between the first and second features, or contact between the first and second features through another feature between them. Furthermore, "above," "over," and "on top" of the second feature includes the first feature directly above or diagonally above the second feature, or simply indicates that the first feature is at a higher horizontal level than the second feature. "Below," "below," and "under" the second feature includes the first feature directly below or diagonally below the second feature, or simply indicates that the first feature is at a lower horizontal level than the second feature.

[0101] The following disclosure provides many different embodiments or examples for implementing various structures of the invention. To simplify the disclosure, specific examples of components and arrangements are described below. These are merely examples and are not intended to limit the invention. Furthermore, reference numerals and / or letters may be repeated in different examples; such repetition is for simplification and clarity and does not in itself indicate a relationship between the various embodiments and / or arrangements discussed. In addition, examples of various specific processes and materials are provided in this invention, but those skilled in the art will recognize the application of other processes and / or the use of other materials.

[0102] This invention provides a calibration method for an integrated joint dual encoder of a robot, the calibration method comprising the following:

[0103] Step 1: Calibrate the first encoder and obtain the calibration curve;

[0104] Step 2: Apply the calibration curve from Step 1 to calibrate the angle data of the servo motor under test;

[0105] Step 3: Calibrate the second encoder and obtain the calibration curve;

[0106] Step 4: Apply the calibration curve from Step 3 to calibrate the output angle control accuracy of the robot joint module.

[0107] Step 1 includes the following:

[0108] First, the robot joint motor section 2 is calibrated independently. Robot joint motor section 2 is an independent component that can operate independently, containing a servo motor, a first encoder, and a motor driver. The electrical connection diagram of the first encoder calibration test bench is shown below. Figure 1 As shown in the figure. The high-precision calibration servo motor 1 and the robot joint motor part 2 are mechanically connected by a rigid connection assembly.

[0109] refer to Figure 2The diagram below shows the calibration flowchart for calibrating the first encoder in this embodiment of the invention. During the test, the test control host 6 sends a control command to the servo driver 4 of the calibration servo motor 1, causing the high-precision calibration servo motor 1 to operate in "position mode" (position mode of a servo motor is a working mode in which the motor is controlled to reach or maintain a specific position. In position mode, the motor is instructed to move to a target position and stop there, or remain near the target position to achieve precise position control); and controls the robot joint driver 3 to operate in "disabled" state (in robot control and joint drive systems, "disabled" (or "disabled state") means that the motor or joint driver is in a disabled state, indicating that the motor is not activated or started, and therefore will not perform any movement).

[0110] Next, the number of curve points N is set, and the position resolution of the calibrating servo motor 1 is obtained as pN = 360° / N. Since the zero-angle positions of the encoders of the calibrating servo motor 1 and the tested joint are not consistent, in order to ensure that the calibration is performed under the same standard, the test control host 6 reads the absolute angle Ang of the first encoder of the joint motor section 2 through the data acquisition card 5 before startup. m0 calibrate the absolute position Ang of the angle encoder of servo motor 1. c0 The difference dAng is obtained through calculation.

[0111] dAng = Ang m0 -Ang c0

[0112] In subsequent measurements, the obtained dAng value and the absolute position value of the encoder of calibrated servo motor 1 were used to calculate the reference value.

[0113] Ang ref =(Ang c0 +dAng)mod360

[0114] Next, the measurement is initiated. The test control host 6 starts the calibration servo motor 1 for relative positioning control, running in increments of angle pN degrees. The test control host 6 monitors the position of the calibration servo motor 1. After the position stabilizes, the absolute position of the calibration servo motor 1 and the absolute position of the encoder of the robot joint motor part 2 are read respectively. The angle reference value is calculated according to the above formula, and (Ang) is then used to calculate the angle reference value. ref ,Ang m0 Save the data to the memory of the test control host 6. Repeat the above operation until the calibration servo motor 1 returns to the start position, obtaining N data points. Calculate the N saved data points to obtain a calibration list. m0 ,Offset)[N], where Offset=Ang ref–Ang m0 The new calibration list will be set according to Ang. m0 After sorting in ascending order, List2 is obtained. The correspondence in List2 is transmitted to the joint driver 3 via a communication cable and stored in the non-volatile memory of the joint driver 3.

[0115] Step 2 includes the following:

[0116] When using the joint motor, the first step is to read the raw data Ang from the angle encoder. O0 Search data table List2 and find the table containing Ang. O0 Data range [Ang] down ,Ang up In other words, finding what satisfies Ang m0 [i] <Ang O0 ≤Ang m0 The value of i in [i+1] is given by Ang. down =Ang m0 [i], Ang up =Ang m0 [i+1], if Ang O0 ≤Ang m0 [0] then let Ang down =Ang m0 [N-1]–360, Ang up =Ang mo [0]. If Ang O0 Ang m0 [N-1], then let Ang down =Ang m0 [N-1], Ang up =Ang m0 [0]+360. After determining the data interval, the compensation amount for the current original angle is calculated through linear interpolation. Let Offset be... up For Ang up The corresponding compensation amount, Offset down For Ang down The corresponding compensation amount is calculated using the following formula:

[0117]

[0118] After calculating the offset of the current angle, the corrected angle value Ang is obtained through calculation. new This is used for subsequent motor control algorithm calculations.

[0119] Ang new =Ang O0 +Offset O0

[0120] Step 3 includes the following:

[0121] Angle calibration is performed on the overall robot joint module. After assembling the robot joint motor section 2 and the front-end joint reducer section 7, a complete robot joint module is obtained. This step mainly involves data calibration of the second encoder of the robot joint. Unlike the first encoder, the angle error of the second encoder, in addition to being caused by the relative positions of the encoder's moving and stationary disks, is also related to the inherent transmission error of the reducer. Compensating the first encoder data aims to calculate compensation data closer to the true value from the original data of the first encoder, thereby improving motor control. Compensating the second encoder data aims to better control the movement to the target position, i.e., to deduce the control position of the second encoder from the target position for full closed-loop control. The system block diagram of the second encoder calibration test bench is shown below. Figure 3 As shown.

[0122] During testing, the robot joint operates in speed mode (speed mode is a working mode of a servo system or motor control system, in which the motor is instructed to move at a specific speed. In speed mode, the main task of the motor is to maintain or reach the set target speed, rather than a specific position). The test control host 2 11 can send speed commands through the communication board 9. The test control host 2 11 acquires the absolute angle data of the high-precision calibration angle encoder 8 through the encoder data acquisition card 2 10. The high-precision calibration angle encoder 8 and the output flange of the robot joint are connected by a rigid connector 2. Therefore, the angle data of the high-precision calibration angle encoder 8 is the reference data for the angle data of the second encoder of the robot joint overall module.

[0123] During the test, the test control host 21 performs position control on the system in a fully closed-loop control mode. The meaning of fully closed-loop control is: using the angular position of the high-precision calibration angle encoder 8 as feedback data, the speed of the robot joint servo motor is controlled, and the output flange of the robot joint is rotated by acceleration and deceleration control, thereby adjusting the value of the high-precision calibration angle encoder 8 to the set position.

[0124] refer to Figure 4 The flowchart below shows the full closed-loop control logic. The specific implementation steps are as follows:

[0125] 1) First, obtain the set angle value Ang. Target

[0126] 2) Based on the current angle value Ang now Calculate the angle deviation Ang err =Ang Target –Angnow

[0127] 3) If Ang err Less than the set deviation threshold Ang tol If the angle is not entered, the micro-angle mode will be activated; otherwise, the acceleration / deceleration control mode will be activated.

[0128] 4) In acceleration / deceleration control mode, it is necessary to continuously calculate the deceleration distance.

[0129] Dis break =(V now *V now ) / (2*V acce *K gear )

[0130] In the formula, V now V represents the current speed. acce Indicates acceleration (deceleration and acceleration have the same magnitude), K gear This indicates the reduction ratio of the reducer at the front end of the robot joint module.

[0131] 5) If the current Ang err If the distance is greater than the deceleration distance, the motor will be controlled to accelerate according to the acceleration, the sign and direction of which are the same as Ang. err Consistent, when Ang err The absolute value is less than Dis break +Dis tail When this happens, it enters the deceleration phase, and deceleration control is performed according to the motor's deceleration rate. Dis tail =k*Ang tol k is an empirical value, ranging from 1.0 to 2.0, and is mainly used to enable the servo motor to smoothly switch to the angle fine-tuning mode when decelerating.

[0132] 6) When the servo motor enters deceleration mode, compare with Ang err With Ang tol The value of Ang err The absolute value is less than Ang tol Then it will switch from acceleration / deceleration mode to fine-tuning mode.

[0133] 7) The speed control method in fine-tuning mode is V = Ang err *Kp, where Kp is an empirical value, should ensure that:

[0134] Ang tol *Kp| <V ppmax

[0135] Where V ppmax This indicates the maximum speed in fine-tuning mode, which is generally between 10 rpm and 100 rpm for servo motors.

[0136] 8) The system maintains angle stability in fine-tuning mode, and the angle control error is less than Ang. tol .

[0137] refer to Figure 5 This is a calibration flowchart for calibrating the second encoder. Step 4 includes the following:

[0138] Next, data calibration is performed. First, the number of curve points N is determined. Then, using a fully closed-loop control method, the output of the robot joint module is positioned at angular intervals of pN = 360 / N. Before starting control, the data Ang from the high-precision calibration angle encoder 8 is recorded. p The angular offset dAng is obtained by combining the data Ang2 from the second encoder of the robot joint.

[0139] dAng = Ang2 - Ang p

[0140] After the motion increment position pN is reached at the output end of the robot joint module, record the point data List3[i] = (Ang out ,Ang2), where Ang2 is the current second encoder angle of the robot joint, Ang p For the current high-precision calibrated angle encoder with 8 angles, Ang out =(Ang p +dAng)mod360. When i = N, the calibration process ends, and the obtained dataset is processed according to Ang. out Sort in ascending order to get a total of N data points.

[0141] When performing position control, assume the target angle is Ang. T By querying the data in List[3], we can find the data containing Ang. T Data range [Out] down Out up In other words, finding what satisfies Ang out [i] <Ang T ≤Ang out Let the value of i in [i+1] be used to determine the Out value. down =Ang out [i], Out up =Ang out [i+1], if Ang T ≤Ang out [0] then let Out down =Ang out [N-1]–360, Out up =Ang out[0]. If Ang T Ang out [N-1], then let Out down =Ang out [N-1], Out up =Ang out [0]+360. After determining the data range, the second encoder angle value for control settings is calculated using linear interpolation. Let Ang2 be the value of the second encoder angle. up For Out up The corresponding second encoder angle in the List3 dataset, Ang2 down For Out down In the List3 dataset, the corresponding second encoder angle indicates the current target position Ang. T The corresponding second encoder angle should be:

[0142]

[0143] By using Ang2 as the target angle for the overall position control of the robot joint module, more precise position control can be achieved.

[0144] This invention provides a calibration system for an integrated joint dual encoder for a robot, comprising a first encoder calibration test bench and a second encoder calibration test bench.

[0145] The first encoder calibration test bench is used to independently calibrate the robot joint motor part 1.

[0146] The first encoder calibration test bench includes a calibration servo motor 1, a rigid connection assembly 1, a joint servo motor under test, a data acquisition card 5, and a test control host 6.

[0147] The calibrated servo motor 1 is mechanically connected to the servo motor of the joint under test through a rigid connection component 1.

[0148] The test control host 6 is electrically connected to the data acquisition card 5, the calibration servo motor 1, and the servo motor of the joint under test.

[0149] Data acquisition card 15 is used to acquire data from calibration servo motor 1, the tested joint servo motor, and the first encoder;

[0150] Test control host 6 is used to perform calibration operations on the first encoder.

[0151] The second encoder calibration test bench is used to calibrate the data of the robot joint module.

[0152] The second encoder calibration test bench includes a calibration angle encoder 8, a rigid connection assembly 2, a joint module of the robot under test, a data acquisition card 2 10, and a test control host 2 11.

[0153] The calibration angle encoder 8 is mechanically connected to the joint module of the robot under test through the rigid connection component 2.

[0154] The test control host 21 is electrically connected to the data acquisition card 210, the calibration angle encoder 8, and the joint module of the robot under test.

[0155] Data acquisition card 210 is used to acquire data from the calibration angle encoder 8, the joint module of the robot under test, and the second encoder.

[0156] Test control host 21 is used to perform calibration operations on the second encoder.

[0157] The calibration system also includes a computer-readable storage medium storing a computer program and a processor, the computer program being read and executed by the processor to implement the calibration method as described above.

[0158] refer to Figure 6 This refers to the mechanical structure of the rigid connection part of the first encoder calibration test bench used in step 1 of this embodiment of the invention.

[0159] The first encoder test bench includes a test bench base 12. A calibration servo motor mounting bracket 13 is installed on the top left side of the test bench base 12. A high-precision calibration servo motor 1 is mounted on the calibration servo motor mounting bracket 13. The aforementioned rigid connection assembly includes a first coupling 14, a torque sensor 15, and a second coupling 16, as described below. The high-precision calibration servo motor 1 is connected to the left end of the torque sensor 15 through the first coupling 14. The right end of the torque sensor 15 is connected to the servo motor under test through the second coupling 16. The housing 18 of the servo motor under test is mounted on the servo motor under test mounting bracket 17. The servo motor under test includes a servo motor output shaft 19. A first encoder stationary plate 20 and a first encoder moving plate 21 are mounted on the servo motor output shaft 19. Test bench base 12: The foundation of the entire test bench, providing stable support.

[0160] Calibration Servo Motor Mounting Bracket 13: This bracket is located on the top left side of the test bench base 12 and is used to mount the high-precision calibration servo motor 1. High-Precision Calibration Servo Motor 1: This is a key component in the calibration test bench, used for calibration operations. It is connected to the front stage of the torque sensor 15 (left end connection) via coupling one 14, and to the servo motor under test via coupling two 16 to perform the calibration operation. Torque Sensor 15: The torque sensor 15 is used to measure and record the value of torque or force, thereby enabling the evaluation of the performance of the servo motor under test. Servo Motor Under Test: This is the servo motor that needs to be calibrated; its housing is mounted on the servo motor under test mounting bracket 17. First Encoder Stationary Plate 20 and Moving Plate 21: The first encoder is part of the servo motor under test; it includes a stationary plate and a moving plate for measuring the rotation angle of the motor shaft. Coupling: The coupling is used to connect the various components, such as the high-precision calibration servo motor, the torque sensor, and the servo motor under test, to transmit force and motion. This mechanical structure is designed to allow for high-precision calibration of the physical connection between the servo motor and the servo motor under test, enabling calibration operations, and utilizes a torque sensor to monitor torque values. This ensures the performance of the servo motor and the accuracy of the encoder.

[0161] The following are the test data from step 1 of this embodiment of the invention, wherein:

[0162] Table 1 shows the Ang values ​​obtained after taking N=100. m0 And the Offset mapping table.

[0163]

[0164]

[0165]

[0166] Table 1

[0167] Table 2 compares the error between the calibration calculations performed using the calibration data obtained from Table 1 and the uncalibrated data.

[0168]

[0169]

[0170]

[0171] Table 2

[0172] Refer to Tables 1 and 2 and Figure 7A comparison of error data before and after calibration shows a significant improvement in angle measurement accuracy after calibration. This indicates that the calibration system and method of this invention effectively corrects and improves the encoder of the robot joint, thereby enhancing the accuracy of angle measurement.

[0173] The calibration method and system of this invention are crucial in many applications, especially for robotic systems requiring high-precision position and attitude control. Calibration allows for more accurate determination of the position and orientation of robot joints, thereby improving the precision of their movement and operation. This is of great significance for applications in automated manufacturing, medical devices, precision machining, and other fields. The calibration system and method enable automatic calibration of the relative positions of the encoder's moving and stationary disks in different batches of module products after assembly. The calibration system automatically calibrates the encoder based on test results, adapting to the mass production of integrated robot joints and ensuring high precision and consistency for each joint.

[0174] In the description of this specification, the references to "certain embodiments," "one embodiment," "some embodiments," "illustrative embodiment," "example," "specific example," or "some examples" indicate that a specific feature, structure, material, or characteristic described in connection with the described embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

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

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

Claims

1. A calibration method for an integrated joint dual encoder of a robot, used to calibrate the joint motor part and the overall joint module of the robot, wherein the joint motor part includes a servo motor, a first encoder, and a motor driver, and the overall joint module includes the joint motor part, a reducer, and a second encoder, characterized in that, This can be achieved through the following steps: Step 1: Calibrate the first encoder and obtain the first calibration curve; Step 2: Apply the first calibration curve from Step 1 to calibrate the angle data of the servo motor in the joint motor section; Step 3: Calibrate the second encoder and obtain the second calibration curve; Step 3 includes the following sub-steps: (1) Assemble the calibrated robot joint motor and the reducer of the joint module into a complete joint module; (2) The output end of the joint module reducer and the calibration angle encoder are rigidly mechanically connected to ensure the synchronization of rotation; (3) Record the initial positions of the calibration angle encoder and the overall joint module; (4) Drive the joint module to perform multiple position controls at set angle intervals using a fully closed-loop control method; (5) Record the angle of the calibration angle encoder and the angle of the second encoder of the joint module after each full closed-loop control position is reached, and calculate the angle data generated by each position control to obtain the second calibration curve; Step 3 of the fully closed-loop control method includes the following steps: (1) First, obtain the set angle value. Ang Target ; (2) Based on the current angle value Ang now Calculate the angle deviation Ang err = Ang Target – Ang now ; (3) If Ang err Less than the set deviation threshold Ang tol If it is, it will enter fine-tuning mode; otherwise, it will enter acceleration / deceleration mode. (4) Calculate the deceleration distance in acceleration / deceleration mode. ,in: In the formula, V now Indicates the current speed. V acce Indicates acceleration or deceleration. K gear This indicates the reduction ratio of the reducer in the overall joint module; (5) If the current Ang err If the distance is greater than the deceleration distance, the servo motor in the joint motor section will accelerate according to the acceleration, and the sign and direction of the acceleration will be the same as the deceleration distance. Ang err Consistent, when Ang err The absolute value is less than Dis break + Dis tail When the deceleration phase begins, the deceleration is controlled according to the motor's deceleration rate. Dis tail = k Ang tol k is an empirical value, ranging from 1.0 to 2.0; (6) When the servo motor of the joint motor enters the deceleration state, compare... Ang err and Ang tol The value, if Ang err The absolute value is less than Ang tol Then it will switch from acceleration / deceleration mode to fine-tuning mode; (7) The speed control method in the fine-tuning mode is as follows: V = Ang err Kp ,in Kp As an empirical value, it should be ensured that: in V ppmax This indicates the maximum speed in fine-tuning mode; (8) The system maintains angle stability in fine-tuning mode, and the angle control error is less than 100%. Ang tol ; Step 4: Apply the second calibration curve from Step 3 to calibrate the output angle control accuracy of the robot joint module.

2. The calibration method for an integrated joint dual encoder of a robot according to claim 1, characterized in that, Step 1 includes the following sub-steps: (1) A calibration servo motor is used and the calibration servo motor is rigidly mechanically connected to the servo motor of the joint motor part; (2) Set the calibration servo motor to position mode and set the servo motor of the joint motor part to disable mode; (3) Record the initial angle of the servo motor in the calibration servo motor and joint motor section; (4) Drive the calibration servo motor and perform multiple position controls according to the set angle intervals; (5) After each calibration servo motor position is reached, record the angle of the calibration servo motor and the angle of the servo motor of the joint motor part, and calculate the angle data generated by each position control to obtain the first calibration curve.

3. The calibration method for an integrated joint dual encoder of a robot according to claim 2, characterized in that, In step 1, the method for obtaining the first calibration curve includes the following steps: (1) Set the number of curve points N The position resolution of the calibrated servo motor's forward movement was obtained as follows: pN = 360 ° / N ; (2) Read the absolute angle of the first encoder of the joint motor section. Ang m0 Calibrate the absolute position of the servo motor encoder Ang c0 The difference is calculated using Formula 1. dAng ,in: ; (3) Used dAng Numerical and calibration of the absolute position of the servo motor encoder Ang c0 The reference value is obtained by calculation using Formula 2. ,in: ; (4) Start the calibration servo motor for relative positioning control and run the incremental angle. pN Once the servo motor position stabilizes, the absolute position of the servo motor encoder is read. Ang c0 The absolute angle of the first encoder in the joint motor section Ang m0 The angle reference value is calculated according to Formula 1 and Formula 2. and will (Ang) ref , Ang m0 ) save; (5) Repeat the above operation until the calibrated servo motor returns to the start position, and obtain the result. N Data points, for those already saved N Each data point is calculated individually to obtain a calibration list. (Ang m0 Offset)[N] ,in: Offset = Ang ref – Ang m0 ; (6) Arrange the calibration list according to Ang m0 After sorting in ascending order, we get List2 ,Will List2 The corresponding relationship is transmitted to the joint driver of the robot's joint motor and stored in the joint driver's memory.

4. The calibration method for an integrated joint dual encoder of a robot according to claim 1, characterized in that, In step 3, the method for obtaining the second calibration curve includes the following steps: (1) Determine the number of curve points N Then, following a fully closed-loop control method, the output of the entire joint module is made to... pN = 360 ° / N Position control is performed at angular intervals. Before starting control, the data from calibrating the angle encoder is recorded. Ang p Data from the second encoder of the joint module Ang 2 , to obtain the angular offset bAng ; (2) The position of motion increment at the output end of the overall joint module pN Once in position, record the point data at the current location: List3[i] = ( Ang out , Ang 2 ),in Ang 2 This is the angle data of the second encoder of the current joint module. Ang p The angle data for the current calibration angle encoder. Ang out = (Ang p + bAng) against(360); (3) When i = N, end the calibration process and process the obtained dataset according to... Ang out Sort in ascending order to get a total of N data points.

5. The calibration method for an integrated joint dual encoder of a robot according to claim 4, characterized in that, In step 4, the method for calibrating the output angle control accuracy of the robot joint module using the second calibration curve from step 3 includes the following steps: (1) Set the target angle as Ang T ; (2) Query the data in List[3] and find the data containing Ang T data range [Out down Out up ] That is, to find satisfaction Ang out [i]< Ang T ≤ Ang out [i+1] Let the value of i be... Out down = Ang out [i], Out up = Ang out [i+1] ; (3) If Ang T ≤Ang out [0] Then let Out down = Ang out [N-1]– 360 , Out up = Ang out [0] ; (4) If Ang T > Ang out [N-1] Then let Out down = Ang out [N-1], Out up = Ang out [0] + 360 ; (5) After determining the data range, the second encoder angle value set by control is calculated by linear interpolation, and recorded as follows: Ang2 up for Out up The corresponding second encoder angle in the List3 dataset Ang2 down for Out down The current target angle is the second encoder angle corresponding to the List3 dataset. Ang T The corresponding second encoder angle should be: ; (6) Ang 2 Using the target angle as the overall position control angle of the joint module, more precise position control can be achieved.

6. A calibration system for an integrated dual encoder for a robot joint, implementing the calibration method for an integrated dual encoder for a robot joint as described in any one of claims 1-5, characterized in that, Includes a first encoder calibration test bench and a second encoder calibration test bench; The first encoder calibration test bench is used to independently calibrate the robot joint motors. The first encoder calibration test bench includes a calibration servo motor, a rigid connection assembly, a servo motor for the joint motor part, a data acquisition card, and a test control host. The calibration servo motor is mechanically connected to the servo motor of the joint motor part through a rigid connection component. The test control host is electrically connected to the data acquisition card, the calibration servo motor, and the servo motor of the joint motor. The data acquisition card is used to acquire data from the servo motor and the first encoder of the calibrated servo motor and joint motor sections. The test control host is used to perform calibration operations on the first encoder; The second encoder calibration test bench is used to calibrate the data of the robot joint module. The second encoder calibration test bench includes a calibration angle encoder, a rigid connection assembly, a joint module, a data acquisition card, and a test control host. The calibration angle encoder is mechanically connected to the joint module via rigid connection component two. The second test control host is electrically connected to the second data acquisition card, the calibration angle encoder, and the overall joint module, respectively. The second data acquisition card is used to acquire data from the calibration angle encoder, the joint module, and the second encoder. The second test control host is used to perform calibration operations on the second encoder.

7. The calibration system for an integrated joint dual encoder of a robot according to claim 6, characterized in that, The method includes a computer-readable storage medium storing a computer program and a processor, the computer program being read and executed by the processor to implement the calibration method for the robot's integrated joint dual encoder as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Joint module double-editing position correction system and use method thereof

    CN114184220A

  • Calibration method, device and system of rotary encoder

    CN114543718A

  • Integrated joint

    CN212287705U