Industrial robot zero position recovery method and device, industrial robot and storage medium
By obtaining pulse data of the target joint axis of the industrial robot and calculating new zero data, the problem of low zero recovery accuracy and reliance on expensive equipment is solved, and fast and accurate zero recovery is achieved.
Patent Information
- Application Number
- CN202411994952.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-04-22
AI Technical Summary
After long-term use of industrial robots, the encoder power outage leads to the loss of high-circle position information, making it difficult for customers to accurately restore zero positions, and existing methods rely on naked eye observation or expensive laser equipment.
By obtaining the industrial robot target joint axis marking position at the reference point and the pulse data for the marking position, the new zero data is calculated to achieve zero recovery. This method requires no expensive equipment, high accuracy and easy operation.
It realizes fast and precise recovery of zero position of industrial robots, reduces operational complexity and cost, and avoids errors in naked eyes.
Smart Images

Figure CN119858158A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot technology, and in particular to a method and device for zero-position recovery of an industrial robot, an industrial robot and a storage medium. Background Art
[0002] After an industrial robot is used for a long time, battery consumption can cause the encoder (a device used to record the position of the robot's joints) to lose power, resulting in the loss of high-frequency position information.
[0003] When customers want to restore the zero position on site, they can usually only rely on the naked eye to observe the scale line or label to make adjustments. This method not only has errors and limited accuracy, but is also inconvenient to operate. If you want to restore the accuracy to the factory, you often need expensive and complex laser equipment or special tools, which is costly and inconvenient. Summary of the invention
[0004] In view of this, an object of the present invention is to provide an industrial robot zero-position recovery method, device, industrial robot and storage medium.
[0005] In order to achieve the above purpose, the technical solution adopted by the embodiment of the present invention is as follows:
[0006] In a first aspect, the present invention provides a method for zero-position recovery of an industrial robot, the method comprising:
[0007] Acquire the first axis pulse data of the target joint axis to be restored to zero position on the industrial robot at the reference point mark position and the second axis pulse data of the target joint axis at the reference mark position;
[0008] New zero position data of the target joint axis is obtained according to the first axis pulse data and the second axis pulse data to perform zero position restoration on the target joint axis.
[0009] Optionally, the first axis pulse data includes a first axis pulse position and a first joint angle, the second axis pulse data includes a second axis pulse position, and the step of obtaining new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data includes:
[0010] Using the first axis pulse position and the encoder resolution of the target joint axis, obtaining a first encoder single-turn position of the target joint axis at the reference point mark position;
[0011] Using the second axis pulse position and the encoder resolution of the target joint axis, obtaining the second encoder single-turn position and the second encoder high-turn position of the target joint axis at the matching mark position;
[0012] Obtaining a first encoder high-turn position of the target joint axis at the reference point mark position by using the first encoder single-turn position, the second encoder single-turn position, and the second encoder high-turn position;
[0013] In the case where the target joint axis is a coupled active axis, obtaining new zero position data of the target joint axis according to the high-loop position of the first encoder and the first joint angle;
[0014] When the target joint axis is a coupled passive axis, the second joint angle of the coupled active axis in a coupling relationship with the target joint axis at the reference point mark position is obtained, and the new zero position data of the target joint axis is obtained according to the high-loop position of the first encoder, the first joint angle and the second joint angle.
[0015] Optionally, the step of obtaining the first encoder high-turn position of the target joint axis at the reference point mark position by using the first encoder single-turn position, the second encoder single-turn position and the second encoder high-turn position comprises:
[0016] Calculating a difference between a single-turn position of the first encoder and a single-turn position of the second encoder;
[0017] If the absolute value of the difference is not greater than half of the encoder resolution, setting the value of the high-loop position of the first encoder to the value of the high-loop position of the second encoder;
[0018] If the absolute value of the difference is greater than half of the encoder resolution, the first encoder high-loop position is determined based on the second shaft pulse position and the second encoder high-loop position.
[0019] Optionally, the step of determining the first encoder high circle position according to the second shaft pulse position and the second encoder high circle position comprises:
[0020] If the second axis pulse position is not less than 0, the value of the first encoder high circle position is set to the sum of the value of the second encoder high circle position and a preset value;
[0021] If the second axis pulse position is less than 0, the value of the first encoder high circle position is set to the difference between the value of the second encoder high circle position and the preset value.
[0022] Optionally, the new zero position data is a new zero position encoder high-turn value, and the step of obtaining the new zero position data of the target joint axis according to the first encoder high-turn position and the first joint angle includes:
[0023] Obtaining a pulse variation of the target joint axis according to a preset zero position angle of the industrial robot and the first joint angle;
[0024] Obtaining a new zero position pulse value of the target joint axis according to the pulse change amount of the target joint axis and the high-turn position of the first encoder;
[0025] Based on the new zero position pulse value, a new zero position encoder high turn value of the target joint axis is obtained.
[0026] Optionally, the step of obtaining new zero position data of the target joint axis according to the high-loop position of the first encoder, the first joint angle and the second joint angle comprises:
[0027] According to the preset zero position angle of the industrial robot and the second joint angle, a pulse change amount of a coupling active axis having a coupling relationship with the target joint axis is obtained;
[0028] Obtaining the pulse variation of the target joint axis according to the pulse variation of the coupling active axis in a coupling relationship with the target joint axis, the preset zero position angle, and the first joint angle;
[0029] Obtaining a new zero position pulse value of the target joint axis according to the pulse change amount of the target joint axis and the high-turn position of the first encoder;
[0030] Based on the new zero position pulse value, a new zero position encoder high turn value of the target joint axis is obtained.
[0031] Optionally, the step of obtaining a new zero position encoder high turn value of the target joint axis based on the new zero position pulse value comprises:
[0032] Calculating the remainder of the new zero pulse value and the encoder resolution;
[0033] If the new zero position pulse value is not less than 0, the remainder is used as the new zero position encoder high turn value of the target joint axis;
[0034] If the new zero position pulse value is less than 0, the remainder is rounded up, and the rounded-up result is used as the new zero position encoder high-turn value of the target joint axis.
[0035] In a second aspect, the present invention provides an industrial robot zero position recovery device, the device comprising:
[0036] An acquisition module is used to acquire the first axis pulse data of the target joint axis to be restored to zero position on the industrial robot at the reference point mark position and the second axis pulse data of the target joint axis at the reference mark position;
[0037] A processing module is used to obtain new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data, so as to perform zero position restoration on the target joint axis.
[0038] In a third aspect, the present invention provides an industrial robot, comprising a controller, the controller comprising a processor and a memory, the memory storing machine executable instructions that can be executed by the processor, and the processor executing the machine executable instructions to implement the industrial robot zero-position recovery method described in the first aspect above.
[0039] In a fourth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the industrial robot zero-position recovery method as described in the first aspect is implemented.
[0040] The industrial robot zero position recovery method provided by the embodiment of the present invention comprises the following steps: obtaining the first axis pulse data of the target joint axis to be restored to zero position at the reference point mark position and the second axis pulse data of the target joint axis at the matching mark position on the industrial robot; obtaining new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data, so as to perform zero position recovery on the target joint axis. Since the embodiment of the present invention uses the first axis pulse data of the target joint axis to be restored to zero position at the reference point mark position and the second axis pulse data at the matching mark position to determine the new zero position data for zero position recovery of the target joint axis, the zero position can be quickly recovered, the accuracy can be ensured, and no expensive and complex laser equipment or special tools are required.
[0041] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0043] Figure 1 A schematic structural block diagram of an industrial robot provided by an embodiment of the present invention is shown;
[0044] Figure 2 The schematic diagram shows a process of an industrial robot zero position recovery method provided by an embodiment of the present invention. Figure 1 ;
[0045] Figure 3The schematic diagram shows a process of an industrial robot zero position recovery method provided by an embodiment of the present invention. Figure 2 ;
[0046] Figure 4 A functional module block diagram of a zero-position recovery device for an industrial robot provided by an embodiment of the present invention is shown.
[0047] Icon: industrial robot - 100; 110 - memory; 120 - processor; 130 - communication module; 200 - industrial robot zero position recovery device; 201 - acquisition module; 202 - processing module. DETAILED DESCRIPTION
[0048] The following will be combined with the accompanying drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.
[0049] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without making creative work are within the scope of protection of the present invention.
[0050] It should be noted that relational terms such as "first" and "second" are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0051] Please refer to Figure 1 , is a block diagram of an industrial robot 100. The industrial robot 100 includes a memory 110, a processor 120, and a communication module 130. The memory 110, the processor 120, and the communication module 130 are electrically connected to each other directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other via one or more communication buses or signal lines.
[0052] The memory 110 is used to store programs or data. The memory 110 may be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc.
[0053] The processor 120 is used to read / write data or programs stored in the memory 110 and execute corresponding functions.
[0054] The communication module 130 is used to establish a communication connection between the industrial robot 100 and other communication terminals through the network, and to send and receive data through the network.
[0055] It should be understood that Figure 1 The structure shown is only a schematic diagram of the structure of the industrial robot. The industrial robot may also include Figure 1 More or fewer components as shown, or with Figure 1 Different configurations shown. Figure 1 Each component shown in the figure can be implemented by hardware, software or a combination thereof.
[0056] In order to quickly restore the zero position and ensure accuracy, an embodiment of the present invention provides a method for restoring the zero position of an industrial robot, which will be described in detail below.
[0057] Please refer to Figure 2 The industrial robot zero position recovery method includes steps S101 to S102.
[0058] S101, obtaining first axis pulse data of a target joint axis to be restored to zero position at a reference point mark position and second axis pulse data of a target joint axis at a reference mark position on an industrial robot.
[0059] Among them, the reference point mark position is a position selected when the industrial robot is in a normal working state for easy memory and positioning, and the position is marked.
[0060] When the reference point mark position is selected, the pulse position and angle of each joint axis of the industrial robot will be recorded. It can be understood that the first axis pulse data includes the axis pulse position and angle of the target joint axis when the reference point mark position is selected, which are respectively recorded as the first axis pulse position and the first joint angle.
[0061] After the zero position of the target joint axis is lost, the user needs to manually move the target joint axis to a position as close as possible to the reference point mark position, which is the mark position.
[0062] It should be noted that the allowable error of the mark position should be within half of the encoder resolution to ensure the accuracy of restoring the subsequent zero position.
[0063] When the target joint axis is moved to the marked position, the axis pulse position of the target joint axis will be recorded as the second axis pulse position, and accordingly, the second axis pulse data includes the second axis pulse data.
[0064] For the target joint axis that needs to be restored to zero position, the axis pulse position and angle of the target joint axis at the selected reference point mark position, as well as the axis pulse data when the target joint axis is moved to the mark position, i.e., the first axis pulse position, the first joint angle and the second axis pulse position, can be used to calculate the new zero position data for restoring the target joint axis to zero position.
[0065] S102, obtaining new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data, so as to perform zero position restoration on the target joint axis.
[0066] For possible implementations, see Figure 3 , step S102 includes sub-steps S102-1 to S102-5.
[0067] S102-1, using the first axis pulse position and the encoder resolution of the target joint axis, obtain the first encoder single-turn position of the target joint axis at the reference point mark position.
[0068] In the embodiment of the present invention, the first axis pulse position is denoted as Jmarkpulse, the encoder resolution is denoted as Encoder_Resolution, and the first encoder single-turn position is denoted as JmarkValueL.
[0069] If Jmarkpulse>=0, then JmarkValueL=mod(Jmarkpulse, Encoder_Resolution); if Jmarkpulse<0, JmarkValueL=Encoder_Resolution-mod(Jmarkpulse, Encoder_Resolution).
[0070] S102-2, using the second axis pulse position and the encoder resolution of the target joint axis, obtain the second encoder single-turn position and the second encoder high-turn position of the target joint axis at the marked position.
[0071] In the embodiment of the present invention, the second axis pulse position is denoted as Jpulse, the encoder resolution is denoted as Encoder_Resolution, and the second encoder single-turn position is denoted as JValueL.
[0072] If Jpulse>=0, JValueL=mod(Jpulse, Encoder_Resolution); if Jpulse<0, JValueL=Encoder_Resolution-mod(Jpulse, Encoder_Resolution).
[0073] The high-loop position of the second encoder is recorded as JValueH. In the embodiment of the present invention, JValueH=Jpulse%Encoder_Resolution.
[0074] If Jpulse>=0, JValueH is rounded directly; if Jpulse<0, JValueH is rounded up, that is, rounded in the direction of increasing absolute value.
[0075] S102-3, using the first encoder single-turn position, the second encoder single-turn position and the second encoder high-turn position, obtain the first encoder high-turn position of the target joint axis at the reference point mark position.
[0076] The implementation process of step S102-3 may include sub-steps S102-3-1 to S102-3-3.
[0077] S102-3-1, calculate the difference between the single-turn position of the first encoder and the single-turn position of the second encoder.
[0078] S102-3-2, if the absolute value of the difference is not greater than half of the encoder resolution, the value of the high-loop position of the first encoder is set to the value of the high-loop position of the second encoder.
[0079] S102-3-3 If the absolute value of the difference is greater than half of the encoder resolution, the high-loop position of the first encoder is determined based on the second axis pulse position and the high-loop position of the second encoder.
[0080] Among them, the implementation process of "determining the high-circle position of the first encoder according to the second-axis pulse position and the high-circle position of the second encoder" is: if the second-axis pulse position is not less than 0, the value of the high-circle position of the first encoder is set to the sum of the value of the high-circle position of the second encoder and a preset value; if the second-axis pulse position is less than 0, the value of the high-circle position of the first encoder is set to the difference between the value of the high-circle position of the second encoder and the preset value.
[0081] In the embodiment of the present invention, the single-turn position of the first encoder is denoted as JmarkValueL, the single-turn position of the second encoder is denoted as JValueL, and ΔL=JValueL-JmarkValueL.
[0082] The second axis pulse position is recorded as Jpulse, the encoder resolution is Encoder_Resolution, the first encoder high circle position is JmarkH, and the second encoder high circle position is JValueH.
[0083] If abs(ΔL)<=Encoder_Resolution / 2, then JmarkH=JValueH.
[0084] The preset value is 1. If abs(ΔL)>Encoder_Resolution / 2 and Jpulse>=0, then JmarkH=JValueH+1. If abs(ΔL)>Encoder_Resolution / 2 and Jpulse<0, then JmarkH=JValueH-1.
[0085] S102-4, when the target joint axis is a coupled active axis, new zero position data of the target joint axis is obtained according to the high-loop position of the first encoder and the first joint angle.
[0086] Among them, the new zero position data is the high-turn value of the new zero position encoder.
[0087] The implementation process of step S102-4 may include sub-steps S102-4-1 to S102-4-3.
[0088] S102-4-1, obtain the pulse change of the target joint axis according to the preset zero position angle and the first joint angle of the industrial robot.
[0089] Among them, the preset zero angle is determined when the industrial robot leaves the factory.
[0090] S102-4-2, obtain the new zero position pulse value of the target joint axis according to the pulse change of the target joint axis and the high circle position of the first encoder.
[0091] S102-4-3, based on the new zero position pulse value, obtain the new zero position encoder high turn value of the target joint axis.
[0092] Among them, the implementation process of step S102-4-3 is: calculate the remainder of the new zero position pulse value and the encoder resolution; if the new zero position pulse value is not less than 0, the remainder is used as the new zero position encoder high turn value of the target joint axis; if the new zero position pulse value is less than 0, the remainder is rounded up, and the rounded result is used as the new zero position encoder high turn value of the target joint axis.
[0093] In the embodiment of the present invention, the preset zero angle is denoted as Jzeroangle, and the first joint angle is denoted as Jmarkangle.
[0094] The pulse change of the target joint axis is ΔPulse, and ΔPulse = (Jmarkangle-Jzeroangle) / k. Among them, k = couplingvalue / 360*ratio*Encoder_Resolution*Direction, where ratio is the reduction ratio of the target joint axis, Direction is the movement direction of the target joint axis, couplingvalue is the coupling relationship value between the target joint axis and its coupling axis, and Encoder_Resolution is the encoder resolution.
[0095] The new zero pulse value is recorded as NewZeroPulse, and NewZeroPulse = JmarkH*Encoder_Resolution+JmarkValueL-ΔPulse, where JmarkH is the high-turn position of the first encoder, and JmarkValueL is the single-turn position of the first encoder.
[0096] Let the high-turn value of the new zero-position encoder be JValueNewH, and JValueNewH = NewZeroPulse%Encoder_Resolution. If NewZeroPulse>=0, JValueNewH is rounded directly. If NewZeroPulse<0, JValueNewH is rounded up, that is, rounded in the direction of increasing absolute value.
[0097] S102-5, when the target joint axis is a coupled passive axis, obtain the second joint angle of the coupled active axis that is coupled to the target joint axis at the reference point mark position, and obtain the new zero position data of the target joint axis based on the high circle position of the first encoder, the first joint angle and the second joint angle.
[0098] In the embodiment of the present invention, the implementation process of step S102-5 may include sub-steps S102-5-1 to S102-5-4.
[0099] S102-5-1, according to the preset zero position angle and the second joint angle of the industrial robot, obtain the pulse change amount of the coupling active axis that has a coupling relationship with the target joint axis.
[0100] Among them, the preset zero angle is determined when the industrial robot leaves the factory.
[0101] S102-5-2, obtain the pulse change of the target joint axis according to the pulse change of the coupling active axis that has a coupling relationship with the target joint axis, the preset zero position angle, and the first joint angle.
[0102] S102-5-3, obtain the new zero position pulse value of the target joint axis according to the pulse change of the target joint axis and the high circle position of the first encoder.
[0103] S102-5-4, based on the new zero position pulse value, obtain the new zero position encoder high circle value of the target joint axis.
[0104] Among them, the implementation process of step S102-5-4 is: calculate the remainder of the new zero position pulse value and the encoder resolution; if the new zero position pulse value is not less than 0, the remainder is used as the new zero position encoder high turn value of the target joint axis; if the new zero position pulse value is less than 0, the remainder is rounded up, and the rounded result is used as the new zero position encoder high turn value of the target joint axis.
[0105] In the embodiment of the present invention, the preset zero angle is Jzeroangle, the first joint angle is Jmarkangle, and the second joint angle is Jmarkangle'.
[0106] The pulse variation of the coupling active axis coupled with the target joint axis is denoted as ΔPulse1, and ΔPulse1=(Jmarkangle'-Jzeroangle) / k1.
[0107] Among them, k1 = couplingvalue / 360*ratio1*Encoder_Resolution*Direction1, where ratio1 is the reduction ratio of the coupling active axis that has a coupling relationship with the target joint axis, Direction1 is the movement direction of the coupling active axis that has a coupling relationship with the target joint axis, couplingvalue is the coupling relationship value between the target joint axis and its coupling axis, and Encoder_Resolution is the encoder resolution.
[0108] Let the pulse change of the target joint axis be ΔPulse, and ΔPulse = (Jmarkangle-Jzeroangle) / 360*ratio*Encoder_Resolution*Direction-ΔPulse1 / k, where k = couplingvalue / 360*ratio*Encoder_Resolution*Direction, where ratio is the reduction ratio of the target joint axis, and Direction is the movement direction of the target joint axis.
[0109] The new zero pulse value is recorded as NewZeroPulse, and NewZeroPulse = JmarkH*Encoder_Resolution+JmarkValueL-ΔPulse, where JmarkH is the high-turn position of the first encoder, and JmarkValueL is the single-turn position of the first encoder.
[0110] Let the high-turn value of the new zero-position encoder be JValueNewH, and JValueNewH = NewZeroPulse%Encoder_Resolution. If NewZeroPulse>=0, JValueNewH is rounded directly. If NewZeroPulse<0, JValueNewH is rounded up, that is, rounded in the direction of increasing absolute value.
[0111] In an embodiment of the present invention, after discovering that the zero position of a joint axis of an industrial robot is lost, the user manually adjusts the joint axis to the vicinity of the reference point mark position, selects the corresponding joint axis as the target joint axis on the control interface of the industrial robot, and clicks the "zero position quick recovery" button. The processor of the industrial robot automatically calculates and updates the high-turn value of the zero position encoder of the target joint axis by executing the above-mentioned industrial robot zero position recovery method, thereby completing the zero position recovery of the industrial robot.
[0112] In order to execute the corresponding steps in the above embodiments and various possible methods, an implementation method of an industrial robot zero position recovery device 200 is provided below. Figure 4 , Figure 4 This is a functional module diagram of an industrial robot zero position recovery device 200 provided in an embodiment of the present invention. It should be noted that the basic principle and technical effects of the industrial robot zero position recovery device 200 provided in this embodiment are the same as those of the above-mentioned embodiments. For the sake of brief description, for parts not mentioned in this embodiment, reference can be made to the corresponding contents in the above-mentioned embodiments. The industrial robot zero position recovery device 200 includes:
[0113] The acquisition module 201 is used to acquire the first axis pulse data of the target joint axis to be restored to zero position on the industrial robot at the reference point mark position and the second axis pulse data of the target joint axis at the reference mark position.
[0114] The processing module 202 is used to obtain new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data, so as to perform zero position recovery on the target joint axis.
[0115] Optionally, the above modules can be stored in the form of software or firmware. Figure 1 The memory 110 shown in the figure may be fixed in the operating system (OS) of the industrial robot 100 and may be Figure 1 Meanwhile, the data and program codes required for executing the above modules may be stored in the memory 110.
[0116] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present invention. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.
[0117] In addition, the functional modules in the various embodiments of the present invention may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.
[0118] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, an industrial robot, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc., which can store program codes.
[0119] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A method for zero position recovery of an industrial robot, characterized in that: The method comprises: Acquire the first axis pulse data of the target joint axis to be restored to zero position on the industrial robot at the reference point mark position and the second axis pulse data of the target joint axis at the reference mark position; New zero position data of the target joint axis is obtained according to the first axis pulse data and the second axis pulse data to perform zero position restoration on the target joint axis.
2. The method for zero-position recovery of an industrial robot according to claim 1, characterized in that: The first axis pulse data includes a first axis pulse position and a first joint angle, the second axis pulse data includes a second axis pulse position, and the step of obtaining new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data includes: Using the first axis pulse position and the encoder resolution of the target joint axis, obtaining a first encoder single-turn position of the target joint axis at the reference point mark position; Using the second axis pulse position and the encoder resolution of the target joint axis, obtaining the second encoder single-turn position and the second encoder high-turn position of the target joint axis at the matching mark position; Obtaining a first encoder high-turn position of the target joint axis at the reference point mark position by using the first encoder single-turn position, the second encoder single-turn position, and the second encoder high-turn position; In the case where the target joint axis is a coupled active axis, obtaining new zero position data of the target joint axis according to the high-loop position of the first encoder and the first joint angle; When the target joint axis is a coupled passive axis, the second joint angle of the coupled active axis in a coupling relationship with the target joint axis at the reference point mark position is obtained, and the new zero position data of the target joint axis is obtained according to the high-loop position of the first encoder, the first joint angle and the second joint angle.
3. The method for zero-position recovery of an industrial robot according to claim 2, characterized in that: The step of obtaining the first encoder high-turn position of the target joint axis at the reference point mark position by using the first encoder single-turn position, the second encoder single-turn position and the second encoder high-turn position comprises: Calculating a difference between a single-turn position of the first encoder and a single-turn position of the second encoder; If the absolute value of the difference is not greater than half of the encoder resolution, setting the value of the high-loop position of the first encoder to the value of the high-loop position of the second encoder; If the absolute value of the difference is greater than half of the encoder resolution, the first encoder high-loop position is determined based on the second shaft pulse position and the second encoder high-loop position.
4. The method for zero-position recovery of an industrial robot according to claim 3, characterized in that: The step of determining the first encoder high coil position according to the second shaft pulse position and the second encoder high coil position comprises: If the second axis pulse position is not less than 0, the value of the first encoder high circle position is set to the sum of the value of the second encoder high circle position and a preset value; If the second axis pulse position is less than 0, the value of the first encoder high circle position is set to the difference between the value of the second encoder high circle position and the preset value.
5. The method for zero-position restoration of an industrial robot according to claim 2, characterized in that: The new zero position data is a new zero position encoder high-turn value, and the step of obtaining the new zero position data of the target joint axis according to the first encoder high-turn position and the first joint angle comprises: Obtaining a pulse variation of the target joint axis according to a preset zero position angle of the industrial robot and the first joint angle; Obtaining a new zero position pulse value of the target joint axis according to the pulse change amount of the target joint axis and the high-turn position of the first encoder; Based on the new zero position pulse value, a new zero position encoder high turn value of the target joint axis is obtained.
6. The method for zero-position restoration of an industrial robot according to claim 2, characterized in that: The step of obtaining new zero position data of the target joint axis according to the high circle position of the first encoder, the first joint angle and the second joint angle comprises: According to the preset zero position angle of the industrial robot and the second joint angle, a pulse change amount of a coupling active axis having a coupling relationship with the target joint axis is obtained; Obtaining the pulse variation of the target joint axis according to the pulse variation of the coupling active axis in a coupling relationship with the target joint axis, the preset zero position angle, and the first joint angle; Obtaining a new zero position pulse value of the target joint axis according to the pulse change amount of the target joint axis and the high-turn position of the first encoder; Based on the new zero position pulse value, a new zero position encoder high turn value of the target joint axis is obtained.
7. The method for zero-position restoration of an industrial robot according to claim 5 or 6, characterized in that: The step of obtaining the new zero position encoder high turn value of the target joint axis based on the new zero position pulse value comprises: Calculating the remainder of the new zero pulse value and the encoder resolution; If the new zero position pulse value is not less than 0, the remainder is used as the new zero position encoder high turn value of the target joint axis; If the new zero position pulse value is less than 0, the remainder is rounded up, and the rounded-up result is used as the new zero position encoder high-turn value of the target joint axis.
8. An industrial robot zero position recovery device, characterized in that: The device comprises: An acquisition module, used for acquiring first axis pulse data of a target joint axis to be restored to zero position on the industrial robot at a reference point mark position and second axis pulse data of the target joint axis at a reference mark position; A processing module is used to obtain new zero position data of the target joint axis according to the first axis pulse data and the second axis pulse data, so as to perform zero position restoration on the target joint axis.
9. An industrial robot, characterized in that: The invention comprises a controller, wherein the controller comprises a processor and a memory, wherein the memory stores machine executable instructions that can be executed by the processor, and the processor can execute the machine executable instructions to implement the industrial robot zero-position recovery method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the industrial robot zero-position recovery method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Self-zeroing method of robot
CN101694581A
Robot zero-point calibrating method and device
CN108081255A
Processing method and device for robot zero point
CN109108969A
Horizontal articulated robot and return-to-origin method thereof
CN109760028A
Mechanical arm joint, initial position determination method and device, equipment and storage medium
CN114102594A
Cited By
Zero recovery method and apparatus for industrial robot, and industrial robot and storage medium
WO2026145557A1