Power-on position recovery method and system of joint module

By calculating and correcting the encoder readings on the joint module and using offset values, the problem of inaccurate power-on position recovery of the joint module is solved, and more accurate position recovery is achieved.

CN119388475AActive Publication Date: 2025-02-07TSINO-DYNATRON ELECTRICAL TECH (BEIJING) CO LTD

Patent Information

Application Number
CN202411657073.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-02-07
Estimated Expiration
2044-11-19

AI Technical Summary

Technical Problem

The prior art has the problem of inaccurate position determination when the joint module is restored, especially when the factory storage absolute zero point is offset from the actual situation due to mechanical reasons.

Method used

By obtaining the motor-side encoder value and reducer-side encoder value at restart, calculate the pre-save offset value, and use these values ​​to correct the single-turn value of the reducer-side encoder when powered on, and then calculate the motor-side encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's encoder's en The final multi-turn value determines the power-on recovery position.

Benefits of technology

Improves the accuracy of power-on position recovery, and does not need to rely on the encoder reading recorded at the factory. Just use the actual degrees and offset values ​​after power-on to calculate the accurate power-on recovery position.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119388475A_ABST
    Figure CN119388475A_ABST
Patent Text Reader

Abstract

The invention discloses a power-on position recovery method and system for a joint module. The power-on position recovery method comprises the steps that encoder values of a motor end and a speed reducer end during restarting are obtained; according to the first deviation value, the single-turn value and the multi-turn number of the speed reducer end encoder and the reduction ratio, the correction position of the single-turn value of the speed reducer end encoder converted to the motor end encoder is calculated, the first folding position is recorded, and the corrected multi-turn value of the motor end encoder is calculated according to the first folding position; calculating a correction position where the single-turn value of the motor-end encoder is converted to the speed reducer-end encoder, recording the correction position as a second folding position, judging whether a difference value between the first folding position and the second folding position is greater than a preset error threshold value, if so, adding 1 to the corrected multi-turn value of the motor-end encoder, and if not, subtracting 1 from the corrected multi-turn value of the motor-end encoder; and calculating a power-on recovery position according to the obtained multi-turn value of the motor end encoder and the read single-turn value. According to the invention, the power-on position can be accurately obtained.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and in particular to a method and system for restoring the power-on position of a joint module. Background Art

[0002] In the field of modern industrial automation and robotics, the position recovery capability of joint modules is crucial to ensure the reliability and accuracy of mechanical systems. As the core component of a robot arm or other automated equipment, the joint module needs to be able to accurately restore to its original working position after a power outage or failure. This ability not only affects production efficiency, but is also directly related to the safety of operation. In high-precision applications such as semiconductor manufacturing, precision assembly or medical surgery-assisted robots, the accuracy of position recovery directly affects product quality control and the success rate of surgery.

[0003] Generally, dual encoders are used in joint modules, the first encoder is used to measure the position of the motor end, and the second encoder is used to measure the position of the reducer end. In order to save cost and space, both the motor end and the reducer end use encoders without batteries. Publication number CN118528326.A "A method for determining the position of a robot joint" records and saves the readings of two encoders at the factory, reads the actual encoding data each time the power is turned on, calculates the overflow number of motors according to the encoder degrees recorded at the factory and the encoding data actually read at power-on, and then determines the actual angle of joint rotation according to the overflow number of motors. In this way, it is easy for the absolute zero point saved at the factory to deviate from the actual situation due to mechanical and other reasons, and the position determination method used thereby will cause inaccurate position determination. In addition, since the two encoders of the joint module in this method are both single-turn encoders, if the operating range of the encoder at the motor end exceeds 360 degrees, it is impossible to judge only from the encoder value at the motor end, resulting in an error in the power-on position. Summary of the invention

[0004] Based on this, in order to solve the above technical problems, a method and system for power-on position recovery of a joint module are provided to solve the problem of inaccurate position determination by the position determination method used in the prior art.

[0005] In a first aspect, a method for restoring a power-on position of a joint module is provided, the method comprising:

[0006] Get the encoder value of the motor end and the encoder value of the reducer end when restarting; the encoder value is the single-turn value ST;

[0007] According to the pre-saved first offset value, the single-turn value of the reducer-end encoder, and the pre-saved reduction ratio of the motor-end encoder and the reducer-end encoder, the single-turn value of the reducer-end encoder is calculated and converted to the corrected position Pos2 of the motor-end encoder, which is recorded as the first converted position, and then the corrected multi-turn value of the motor-end encoder is calculated according to the first converted position; the first offset value is the offset value of the motor-end encoder and the reducer-end encoder at the zero point before they start running;

[0008] Calculate the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder, record it as the second converted position, and determine whether the difference between the first converted position and the second converted position is greater than a preset error threshold. If it is greater, add 1 to the corrected multi-turn value of the motor-end encoder to obtain the final multi-turn value of the motor-end encoder. If it is less than, subtract 1 from the corrected multi-turn value of the motor-end encoder to obtain the final multi-turn value of the motor-end encoder.

[0009] The power-on recovery position is calculated based on the final multi-turn value of the motor-end encoder and the read single-turn value.

[0010] In the above solution, optionally, the method further includes:

[0011] During operation, obtain the single-turn value ST of the reducer-end encoder and the motor-end encoder when the reducer-end encoder passes through the zero point again;

[0012] The recalculated offset values ​​of the motor-end encoder and the reducer-end encoder are recorded as the second offset value;

[0013] If the second offset value minus the first offset value is greater than a preset value, the second offset value is saved as the first offset value.

[0014] In the above solution, optionally, the first offset value and the second offset value are calculated in the following manner:

[0015] Calculate the corrected position of the single-turn value actually measured by the encoder at the motor end converted to the reducer end, and use the following formula to calculate the difference between the corrected position of the single-turn value actually measured by the encoder at the motor end converted to the reducer end and the single-turn value actually measured by the encoder at the reducer end as the offset value;

[0016] MTOffset = ST2 实 –ST1 实 / ((2 R1 / 2 R2 )*n)

[0017] Among them, ST2 实 It is the single-turn value actually measured by the encoder at the reducer end. ST1 实is the single-turn value actually measured by the motor-end encoder; R1 is the resolution of the motor-end encoder, R2 is the resolution of the reducer-end encoder, and n is the reduction ratio between the motor-end encoder and the reducer-end encoder.

[0018] In the above scheme, optionally, the single-turn value of the reducer-end encoder converted to the corrected position Pos2 of the motor-end encoder is calculated by the following formula:

[0019] Pos2=(ST2 实 +MT2 实 *2 R1 –MTOffset1)*(2 R1 / 2 R2 )*n

[0020] Among them, MTOffset1 is the first offset value; MT2 实 It is a multi-turn value determined based on the single-turn value ST2 actually measured by the encoder at the reducer end.

[0021] In the above solution, optionally, the corrected multi-turn value of the motor end encoder is calculated according to the first folded position by the following formula:

[0022] MT1 修 =Pos2 / 2 R1

[0023] Among them, pos2 is the first folding position, MT1 修 It is the corrected multi-turn value of the motor end encoder.

[0024] In the above solution, optionally, the error threshold is 0.5*2^R1.

[0025] In the above scheme, optionally, the power-on recovery position is calculated according to the final multi-turn value of the motor end encoder and the read single-turn value by the following formula:

[0026] ActPos=(ST1 实 +MT1 修 *2 R1 )

[0027] Among them, ST1 实 MT1 is the single-turn value actually read by the motor end encoder. 修 It is the corrected multi-turn value of the motor end encoder.

[0028] In a second aspect, a power-on position recovery system for a joint module is provided, the system comprising:

[0029] Data acquisition module: used to obtain the encoder value of the motor end and the encoder value of the reducer end during restart; the encoder value is a single-turn value ST;

[0030] The multi-turn value correction module of the motor-end encoder is used to calculate the single-turn value of the reducer-end encoder according to the pre-saved first offset value, the single-turn value of the reducer-end encoder, and the pre-saved reduction ratio of the motor-end encoder and the reducer-end encoder, and convert it into the correction position Pos2 of the motor-end encoder, which is recorded as the first converted position, and then calculate the corrected multi-turn value of the motor-end encoder according to the first converted position; the first offset value is the offset value of the motor-end encoder and the reducer-end encoder at the zero point before they start running;

[0031] The final multi-turn number calculation module of the motor-end encoder: used to calculate the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder, recorded as the second converted position, and determine whether the difference between the first converted position and the second converted position is greater than a preset error threshold. If it is greater, the corrected multi-turn value of the motor-end encoder is added by 1 to obtain the final multi-turn value of the motor-end encoder. If it is less than, the corrected multi-turn value of the motor-end encoder is subtracted by 1 to obtain the final multi-turn value of the motor-end encoder.

[0032] Power-on recovery position calculation module: used to calculate the power-on recovery position based on the final multi-turn value of the motor end encoder and the read single-turn value.

[0033] In a third aspect, a computer device comprises a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the steps of a method for restoring the power-on position of a joint module described in the first aspect are implemented.

[0034] In a fourth aspect, a computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps of a method for restoring the power-on position of a joint module as described in the first aspect.

[0035] This application has at least the following beneficial effects:

[0036] The present application obtains an offset value by calculating the actual readings of the motor-end encoder and the reducer-end encoder before starting operation; then after power failure and restart, the single-turn value actually measured by the reducer-end encoder is corrected by the offset value, and the single-turn value of the reducer-end encoder is converted to the corrected position of the motor-end encoder; then according to the corrected multi-turn value of the motor-end encoder, and whether the difference between the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder and the single-turn value of the reducer-end encoder converted to the corrected position Pos2 of the motor-end encoder is greater than the preset error, the corrected multi-turn value of the motor-end encoder is added or subtracted by 1 to obtain the final multi-turn value of the motor-end encoder, and the power-on recovery position is calculated based on the final multi-turn value of the motor-end encoder and the read single-turn value. Therefore, through the method of the present application, it is not necessary to record and save the two encoder readings at the factory, and the power-on recovery position can be calculated only by the actual degree of the encoder after power-on and the offset value obtained in advance, so that the calculation is more accurate. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 A flowchart of a method for restoring the power-on position of a joint module provided in one embodiment of the present application. DETAILED DESCRIPTION

[0038] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. 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.

[0039] In the description of this application: unless otherwise specified, the meaning of "plurality" is two or more. The terms "first", "second", "third", etc. in this application are intended to distinguish the objects referred to, and do not have special meanings in terms of technical connotations (for example, they should not be understood as emphasizing the importance or order, etc.). Expressions such as "including", "comprising", "having", etc. also mean "not limited to" (certain units, components, materials, steps, etc.).

[0040] In one embodiment, Figure 1 As shown, a method for restoring the power-on position of a joint module is provided, comprising the following steps:

[0041] Step S1: Obtain the encoder value of the motor end and the encoder value of the reducer end when restarting; the encoder value is a single-turn value ST;

[0042] Step S2: Calculate the single-turn value of the reducer-end encoder converted to the corrected position Pos2 of the motor-end encoder according to the pre-saved first offset value, the single-turn value of the reducer-end encoder, and the pre-saved reduction ratio of the motor-end encoder and the reducer-end encoder, record it as the first converted position, and then calculate the corrected multi-turn value of the motor-end encoder according to the first converted position; the first offset value is the offset value of the motor-end encoder and the reducer-end encoder at the zero point before they start running;

[0043] Step S3: Calculate the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder, record it as the second converted position, and determine whether the difference between the first converted position and the second converted position is greater than a preset error threshold. If it is greater, add 1 to the corrected multi-turn value of the motor-end encoder to obtain the final multi-turn value of the motor-end encoder; if it is less than, subtract 1 from the corrected multi-turn value of the motor-end encoder to obtain the final multi-turn value of the motor-end encoder;

[0044] Step S4: Calculate the power-on recovery position based on the final multi-turn value of the motor end encoder and the read single-turn value.

[0045] The joint module of the present invention uses the motor-end encoder Ecd1 to implement position loop control, which has better control bandwidth and position accuracy. Therefore, the power-on recovery position ActPos value needs to be converted to the motor side, with the unit Inc1.

[0046] The motor end encoder Ecd1 has a resolution of R1 bit and a single turn value ST1 range of 0 to 2^R1-1.

[0047] The encoder Ecd2 at the reducer end has a resolution of R2 bits and a single-turn value ST2 range of 0 to 2^R2-1.

[0048] The mechanical reduction ratio between the drive motor end and the reducer end is n.

[0049] The present invention utilizes the reduction ratio n and can restore the number of full revolutions MT1 of Ecd1 according to the data ST2 of the reducer end Ecd2, thereby obtaining the power-on position value ActPos.

[0050] When powered on, the Ecd2 single-turn value ST2 (unit Inc2) is converted to the motor end position Pos2 (unit Inc1) to directly calculate the Ecd1 integer multi-turn value MT1.

[0051] Pos2 = (ST2 实 + MT2 实 * 2 R1 )* (2 R1 / 2 R2 ) * n (1)

[0052] MT1修 = Pos2 / 2 20 (2)

[0053] MT2 is the multi-turn value of Ecd2, which takes the value of 0 or -1, corresponding to the operating range of ±180 degrees.

[0054] The power-on recovery position ActPos is calculated as follows

[0055] ActPos = (ST1 实 + MT1 修 *2 R1 ) (3)

[0056] Formula (2) can calculate the position ActPos after power-on based on the readings of the two encoders at the time of power-on, without the need to record the operation information before power-off, thus improving the reliability of power-on position recovery.

[0057] When calculating the error through the motor-end encoder value and the reducer-end encoder value, two types of errors will appear. Among them, the error Err1 within the range of one circle (360 degrees) of the reducer-end encoder reading ST2 is a larger error, while the error Err2 within the range of one circle of the motor-end encoder reading is smaller. The Err1 value is periodically related to ST2, and the Err2 value is periodically related to ST1.

[0058] Taking Err1 into consideration, the two encoder reading errors PosErr are calculated before starting the operation and converted to the reducer side to obtain the encoder zero offset value MTOffset (unit Inc2), and the encoder zero offset value MTOffset is saved in the EEPROM.

[0059] MTOffset = ST2 实 – ST1 实 / ((2 R1 / 2 R2 ) * n) (4)

[0060] When restarting, the reading ST2 of the reducer end encoder Ecd2 minus MTOffset is used to calculate the corrected Pos2.

[0061] Pos2 = (ST2 实 + MT2 实 * 2 R1 – MTOffset1)* (2 R1 / 2 R2 ) * n (5) Therefore, the calculation correction of the multi-turn value MT1 of the motor end encoder Ecd1 is:

[0062] MT1修 = Pos2 / 2^20 (6)

[0063] Considering the small error Err2, when power is turned on, determine whether the difference between the two encoders' converted positions is greater than ErrTh, and adjust MT1 修 , where ErrTh=0.5*2^R1.

[0064] MT1 修 = MT1+1, (Pos2-Pos1> ErrTh) (7)

[0065] MT1=MT1-1, (Pos1-Pos2> ErrTh) (8)

[0066] According to formula (9), the power-on position ActPos can be obtained.

[0067] ActPos = (ST1 实 + MT1 修 *2 R1 ) (9)

[0068] The operating range of this application is determined by setting ST2=0 to the reducer end encoder Ecd2 after the joint module is assembled, and the 360-degree operating range can be determined. In the actual operation process, the mechanical side encoder adds 1 or subtracts 1 to the multi-turn value MT2 at the zero point according to the operating direction. That is, after power-on, MT2=0 means it is within the 360-degree operating range; after power-on, MT2=-1 means it is in the 0-degree reduction direction; MT2=1 means it is in the 360-degree increase direction. Whether the operating range exceeds 360 degrees can be determined based on the saved number of turns on the reducer side.

[0069] In the above-mentioned power-on position recovery method of a joint module, the offset value is obtained by calculating the actual readings of the motor-end encoder and the reducer-end encoder before starting the operation; then after power failure and restart, the single-turn value actually measured by the reducer-end encoder is corrected by the offset value, and the single-turn value of the reducer-end encoder is obtained and converted to the corrected position of the motor-end encoder; then according to the corrected multi-turn value of the motor-end encoder, and whether the difference between the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder and the single-turn value of the reducer-end encoder converted to the corrected position Pos2 of the motor-end encoder is greater than the preset error, the corrected multi-turn value of the motor-end encoder is added or subtracted by 1 to obtain the final multi-turn value of the motor-end encoder, and the power-on recovery position is calculated based on the final multi-turn value of the motor-end encoder and the read single-turn value. Therefore, through the method of this application, it is not necessary to record and save the two encoder readings at the factory, and the power-on recovery position can be calculated only by the actual degree of the encoder after power-on and the offset value obtained in advance, so that the calculation is more accurate.

[0070] In one embodiment, the method further comprises:

[0071] During operation, obtain the single-turn value ST of the reducer-end encoder and the motor-end encoder when the reducer-end encoder passes through the zero point again;

[0072] The recalculated offset values ​​of the motor-end encoder and the reducer-end encoder are recorded as the second offset value;

[0073] If the second offset value minus the first offset value is greater than a preset value, the second offset value is saved as the first offset value.

[0074] Specifically, in actual operation, the current EcdOffset (unit Inc2) is calculated according to the real-time PosErr at the zero crossing point of Ecd2. If the difference between EcdOffset and the saved MTOffset is greater than a certain value, an alarm is triggered; at this time, the current EcdOffset needs to be updated to the EEPROM as the correct MTOffset.

[0075] In one embodiment, the first offset value and the second offset value are calculated by:

[0076] Calculate the corrected position of the single-turn value actually measured by the encoder at the motor end converted to the reducer end, and use the following formula to calculate the difference between the corrected position of the single-turn value actually measured by the encoder at the motor end converted to the reducer end and the single-turn value actually measured by the encoder at the reducer end as the offset value;

[0077] MTOffset = ST2 实 – ST1 实 / ((2 R1 / 2 R2 ) * n) (10)

[0078] Among them, ST2 实 It is the single-turn value actually measured by the encoder at the reducer end, ST1 实 is the single-turn value actually measured by the motor-end encoder; R1 is the resolution of the motor-end encoder, R2 is the resolution of the reducer-end encoder, and n is the reduction ratio between the motor-end encoder and the reducer-end encoder.

[0079] In one embodiment, the single-turn value of the reducer-end encoder converted to the corrected position Pos2 of the motor-end encoder is calculated by the following formula:

[0080] Pos2 = (ST2 实 + MT2 实 * 2 R1 – MTOffset1)* (2R1 / 2 R2 ) * n (11)

[0081] Among them, MTOffset1 is the first offset value; MT2 实 It is a multi-turn value determined based on the single-turn value ST2 actually measured by the encoder at the reducer end.

[0082] In one embodiment, the corrected multi-turn value of the motor end encoder is calculated according to the first folded position by the following formula:

[0083] MT1 修 = Pos2 / 2 R1 (12)

[0084] Among them, pos2 is the first folding position, MT1 修 It is the corrected multi-turn value of the motor end encoder.

[0085] In one embodiment, the error threshold is 0.5*2^R1.

[0086] In one embodiment, the power-on recovery position is calculated based on the final multi-turn value of the motor end encoder and the read single-turn value by the following formula:

[0087] ActPos = (ST1 实 + MT1 修 *2 R1 ) (13)

[0088] Among them, ST1 实 MT1 is the single-turn value actually read by the motor end encoder. 修 It is the corrected multi-turn value of the motor end encoder.

[0089] After the joint module is assembled, Ecd2 is processed as ST2 = 0 to determine the 360-degree operating range. During the actual operation, the mechanical side encoder adds 1 or subtracts 1 at the multi-turn value MT2 at the zero point according to the running direction.

[0090] That is, after power-on, MT2=0 means it is within the 360-degree operating range; after power-on, MT2=-1 means it is in the 0-degree decreasing direction; MT2=1 means it is in the 360-degree increasing direction. Whether the operating range exceeds 360 degrees can be determined based on the number of circles on the side of the speed reducer saved.

[0091] In one embodiment, a power-on position recovery system for a joint module is provided, the system comprising:

[0092] Data acquisition module: used to obtain the encoder value of the motor end and the encoder value of the reducer end during restart; the encoder value is a single-turn value ST;

[0093] The multi-turn value correction module of the motor-end encoder is used to calculate the single-turn value of the reducer-end encoder according to the pre-saved first offset value, the single-turn value of the reducer-end encoder, and the pre-saved reduction ratio of the motor-end encoder and the reducer-end encoder, and convert it into the correction position Pos2 of the motor-end encoder, which is recorded as the first converted position, and then calculate the corrected multi-turn value of the motor-end encoder according to the first converted position; the first offset value is the offset value of the motor-end encoder and the reducer-end encoder at the zero point before they start running;

[0094] The final multi-turn number calculation module of the motor-end encoder: used to calculate the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder, recorded as the second converted position, and determine whether the difference between the first converted position and the second converted position is greater than a preset error threshold. If it is greater, the corrected multi-turn value of the motor-end encoder is added by 1 to obtain the final multi-turn value of the motor-end encoder. If it is less than, the corrected multi-turn value of the motor-end encoder is subtracted by 1 to obtain the final multi-turn value of the motor-end encoder.

[0095] Power-on recovery position calculation module: used to calculate the power-on recovery position based on the final multi-turn value of the motor end encoder and the read single-turn value.

[0096] The advantages of this application are:

[0097] 1) Dual encoders increase system redundancy. When one encoder fails, the other can provide valid position information.

[0098] 2) Solve the problem of position loss caused by the encoder deviating from the original zero point in practical applications.

[0099] 3) It can adapt to different application scenarios and be flexibly calibrated.

[0100] 4) There is no need to save the position information when power is off, and the position can be restored when power is on, which reduces the complexity of power-off operation.

[0101] 5) It has a self-calibration function and can alarm in abnormal situations.

[0102] 6) It can provide monitoring of an operating range greater than 360 degrees, improving system safety and reliability.

[0103] 7) It does not increase the hardware complexity of the product and does not affect the dynamic performance of the system.

[0104] For the specific definition of a power-on position recovery system for a joint module, please refer to the definition of a power-on position recovery method for a joint module mentioned above, which will not be repeated here. Each module in the power-on position recovery system of the above-mentioned joint module can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0105] In one embodiment, a computer device is provided, which may be a server. The computer device includes a processor, a memory and a network interface connected via a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the computer device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, the power-on position recovery method of the above-mentioned joint module is implemented.

[0106] In one embodiment, a computer program product is also provided, including a computer program / instruction, which involves all or part of the process in the above embodiment method.

[0107] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0108] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above 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.

[0109] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.

Claims

1. A method for restoring the power-on position of a joint module, characterized in that: The method comprises: Get the encoder value of the motor end and the encoder value of the reducer end when restarting; the encoder value is a single-turn value ST; According to the pre-saved first offset value, the single-turn value of the reducer-end encoder, and the pre-saved reduction ratio of the motor-end encoder and the reducer-end encoder, the single-turn value of the reducer-end encoder is calculated and converted to the corrected position Pos2 of the motor-end encoder, which is recorded as the first converted position, and then the corrected multi-turn value of the motor-end encoder is calculated according to the first converted position; the first offset value is the offset value of the motor-end encoder and the reducer-end encoder at the zero point before they start running; Calculate the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder, record it as the second converted position, and determine whether the difference between the first converted position and the second converted position is greater than a preset error threshold. If it is greater, add 1 to the corrected multi-turn value of the motor-end encoder to obtain the final multi-turn value of the motor-end encoder. If it is less than, subtract 1 from the corrected multi-turn value of the motor-end encoder to obtain the final multi-turn value of the motor-end encoder. The power-on recovery position is calculated based on the final multi-turn value of the motor-end encoder and the read single-turn value.

2. The method for restoring the power-on position of a joint module according to claim 1, characterized in that: The method further comprises: During operation, obtain the single-turn value ST of the reducer-end encoder and the motor-end encoder when the reducer-end encoder passes through the zero point again; The recalculated offset values ​​of the motor-end encoder and the reducer-end encoder are recorded as the second offset value; If the second offset value minus the first offset value is greater than a preset value, the second offset value is saved as the first offset value.

3. The method for restoring the power-on position of a joint module according to claim 2, characterized in that: The first offset value and the second offset value are calculated in the following manner: Calculate the corrected position of the single-turn value actually measured by the encoder at the motor end converted to the reducer end, and use the following formula to calculate the difference between the corrected position of the single-turn value actually measured by the encoder at the motor end converted to the reducer end and the single-turn value actually measured by the encoder at the reducer end as the offset value; MTOffset=ST2 实 –ST1 实 / ((2 R1 / 2 R2 )*n) Among them, ST2 实 It is the single-turn value actually measured by the encoder at the reducer end, ST1 实 is the single-turn value actually measured by the motor-end encoder; R1 is the resolution of the motor-end encoder, R2 is the resolution of the reducer-end encoder, and n is the reduction ratio between the motor-end encoder and the reducer-end encoder.

4. The method for restoring the power-on position of a joint module according to claim 1, characterized in that: The single-turn value of the reducer-end encoder converted to the corrected position Pos2 of the motor-end encoder is calculated by the following formula: Pos2=(ST2 实 +MT2 实 *2 R1 –MTOffset1)*(2 R1 / 2 R2 )*n Among them, MTOffset1 is the first offset value; MT2 实 It is a multi-turn value determined based on the single-turn value ST2 actually measured by the encoder at the reducer end.

5. The method for restoring the power-on position of a joint module according to claim 1, characterized in that: The corrected multi-turn value of the motor end encoder is calculated according to the first folded position by the following formula: MT1 修 =Pos2 / 2 R1 Among them, pos2 is the first folding position, MT1 修 It is the corrected multi-turn value of the motor end encoder.

6. The method for restoring the power-on position of a joint module according to claim 1, characterized in that: The error threshold is 0.5*2 R1 .

7. The method for restoring the power-on position of a joint module according to claim 1, characterized in that: The power-on recovery position is calculated based on the final multi-turn value of the motor end encoder and the read single-turn value by the following formula: ActPos=(ST1 实 +MT1 修 *2 R1 ) Among them, ST1 实 MT1 is the single-turn value actually read by the motor end encoder. 修 It is the corrected multi-turn value of the motor end encoder.

8. A power-on position recovery system for a joint module, characterized in that: The system comprises: Data acquisition module: used to obtain the encoder value of the motor end and the encoder value of the reducer end during restart; the encoder value is a single-turn value ST; The multi-turn value correction module of the motor-end encoder is used to calculate the single-turn value of the reducer-end encoder according to the pre-saved first offset value, the single-turn value of the reducer-end encoder, and the pre-saved reduction ratio of the motor-end encoder and the reducer-end encoder, and convert it into the correction position Pos2 of the motor-end encoder, which is recorded as the first converted position, and then calculate the corrected multi-turn value of the motor-end encoder according to the first converted position; the first offset value is the offset value of the motor-end encoder and the reducer-end encoder at the zero point before they start running; The final multi-turn number calculation module of the motor-end encoder: used to calculate the single-turn value of the motor-end encoder converted to the corrected position Pos1 of the reducer-end encoder, recorded as the second converted position, and determine whether the difference between the first converted position and the second converted position is greater than a preset error threshold. If it is greater, the corrected multi-turn value of the motor-end encoder is added by 1 to obtain the final multi-turn value of the motor-end encoder. If it is less than, the corrected multi-turn value of the motor-end encoder is subtracted by 1 to obtain the final multi-turn value of the motor-end encoder. Power-on recovery position calculation module: used to calculate the power-on recovery position based on the final multi-turn value of the motor end encoder and the read single-turn value.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Motor encoder detection method and device of mechanical arm, mechanical arm and memory

    CN112776004A

  • Power-off correction method and device for single-turn absolute value encoder

    CN115950469A

  • Articulated robot

    JP1995100781A

  • Method for controlling zero-return of servo of robot, and servo and robot with enhanced zero-return

    US20190163159A1

Cited By

  • System for realizing positive and negative 360-degree operation of joint of collaborative robot based on double encoders

    CN120773045A

  • Error compensation and power-on position recovery method of double encoders, joint module, robot and storage medium

    CN122524170A