Demonstration method and system for zero-force dragging of robot
By acquiring joint position and velocity in real time and calculating gravity and friction compensation torque using dynamics and friction models, the problems of cumbersome operation and awkward dragging feel in traditional robot teaching methods are solved, realizing zero-force dragging teaching and reducing the difficulty of operation and physical burden.
Patent Information
- Application Number
- CN202511446693.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-11
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2045-10-11
AI Technical Summary
Traditional robot teaching methods are cumbersome to operate and have low programming efficiency. They are especially time-consuming in scenarios with complex paths and high precision requirements. Furthermore, existing drag-and-drop teaching solutions suffer from high costs, low system integration, or a clunky drag-and-drop experience.
By acquiring joint position and velocity in real time, and using dynamic and friction models to calculate gravity compensation and friction compensation torques, the static and dynamic resistance of the robot is counteracted, allowing the operator to drag the robot with only a force close to zero, thus achieving zero-force drag teaching.
It greatly reduces the difficulty of operation and physical burden, realizes zero-force drag teaching, is suitable for multi-joint robots, and has good versatility and real-time control capabilities.
Smart Images

Figure CN120921336A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotics, specifically to a teaching method and system for zero-force dragging of a robot. Background Technology
[0002] Traditional robot teaching methods, such as using teach pendants for jogging operations or offline programming, suffer from problems such as cumbersome operation, low programming efficiency, and high skill requirements for operators. Especially in scenarios with complex paths and high precision requirements, these methods are time-consuming and fail to intuitively generate the optimal path.
[0003] To simplify the teaching process and lower the operational threshold, drag-and-drop teaching emerged. Drag-and-drop teaching allows operators to directly pull the robot's end effector or robotic arm by hand. The robot automatically generates a program by recording its motion trajectory. This hands-on teaching method is intuitive and natural, requires no professional programming knowledge, and significantly improves teaching efficiency.
[0004] However, achieving smooth and effortless drag-and-drop teaching faces significant technical challenges. The robot's robotic arm itself has considerable mass, and its joints experience resistance from static friction, Coulomb friction, and viscous friction. Without compensating for these forces, the operator would need to apply considerable force to overcome the robot's gravity and friction, making the dragging process cumbersome and strenuous, completely failing to achieve the intuitive feeling of zero force, and negating the core advantage of drag-and-drop teaching.
[0005] In existing technologies, drag-and-drop teaching solutions mainly fall into two categories: The first type involves installing force sensors at the robot's end effector to directly detect the external force applied by the operator and convert it into motion commands for the robot. While effective, this method has significant drawbacks: First, high-precision force sensors are expensive, increasing the overall cost of the robot system; second, force sensors typically only detect forces at the end effector, and compensation for the robot's own gravity and joint friction still relies on complex dynamic models, resulting in low system integration; third, the sensor's fixed installation position prevents it from sensing forces on links outside its installation location, limiting flexibility.
[0006] The second method estimates the joint output torque by detecting the current of the servo motor, thereby inferring the operator's dragging intention. This method eliminates the need for external force sensors, reducing costs. However, its core challenge lies in the fact that the motor current contains not only the torque used to overcome the external dragging force, but also the torque used to overcome the robot's own gravity and joint friction. This results in a stiff, jerky dragging experience, or noticeable stickiness at low speeds or when changing direction, leading to a poor user experience. Summary of the Invention
[0007] To address the aforementioned shortcomings, this invention discloses a teaching method and system for zero-force dragging of a robot, which greatly reduces the difficulty of operation and physical burden, and realizes zero-force dragging teaching.
[0008] The first aspect of this invention discloses a teaching method for zero-force dragging of a robot, comprising: In response to the dragging force applied by the operator, the joint position and joint speed are acquired in real time; The gravity compensation torque is determined based on the joint position, the friction compensation torque is determined based on the joint velocity, and the command torque is obtained based on the gravity compensation torque and the friction compensation torque. The robot is controlled to perform drag-and-drop teaching by the command torque.
[0009] This invention utilizes gravity compensation and friction compensation to offset static and dynamic resistance, respectively, allowing the operator to drag the robot with a force close to zero. This significantly reduces operational difficulty and physical burden, achieving zero-force drag teaching. Furthermore, it is applicable to multi-joint robots, does not rely on specific structures or sensors, and has good versatility.
[0010] As an optional implementation, in a first aspect of the present invention, determining the gravity compensation torque based on the joint position includes: The gravity compensation torque of each joint was calculated using a dynamic model:
[0011] Alternatively, the gravity compensation torque of each joint can be obtained through a recursive Newton-Euler algorithm; in, Let be the gravity compensation torque of the i-th joint, n be the total number of joints, and G be the gravity function. Let the joint position vector be... Let be the Jacobian matrix representing the position of the centroid of the k-th link, and T be the transpose of the matrix. Let g be the mass of the k-th link and g be the acceleration due to gravity.
[0012] Using a dynamic model, precise modeling can be performed based on the actual structural parameters of the robot (i.e., mass, center of mass, Jacobian matrix, etc.), adapting to different robot models. It can accurately calculate the gravity compensation torque required for each joint, making it particularly suitable for robots with complex configurations. The computational complexity of the recursive Newton-Euler algorithm is greatly reduced, and the calculation speed is fast, making it especially suitable for real-time systems and meeting real-time control requirements.
[0013] As an optional implementation, in a first aspect of the present invention, determining the friction compensation torque based on the joint velocity includes: The friction compensation torque for each joint is determined based on the speed of each joint:
[0014] in, The friction compensation torque for the i-th joint is... Let friction force be a function of friction. For joint velocity vectors, Let be the joint velocity of the i-th joint. The coefficient of viscous friction, Let be the Coulomb friction coefficient. It is a symbolic function.
[0015] Viscous and Coulomb friction models are classic and effective friction modeling methods with low computational cost, suitable for real-time control. The viscous friction coefficient and Coulomb friction coefficient can be calibrated according to the actual robot or through genetic algorithms to adapt to different temperature conditions.
[0016] As an optional implementation, in a first aspect of the present invention, obtaining the command torque based on the gravity compensation torque and the friction compensation torque includes: The sum of the gravity compensation torque and friction compensation torque corresponding to each joint is used as the command torque for each joint:
[0017] in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the frictional compensation torque of the i-th joint.
[0018] By superimposing the two compensation torques, a command torque is obtained to control the actuators of each joint, thereby offsetting the static and dynamic resistance of each joint, making the robot exhibit zero impedance characteristics as a whole, and the operator can hardly feel the robot's weight and friction.
[0019] As an optional implementation, in a first aspect of the present invention, controlling the robot to perform drag-and-drop teaching via the command torque includes: The command torque is converted into a command current:
[0020] in, Let be the command current for the i-th joint. This is the torque coefficient; The command current is output to the actuator corresponding to each joint so that the robot performs drag teaching.
[0021] Torque coefficient The torque coefficient can be obtained through experimentation. Different motors may have different torque coefficients. By converting the command torque into the command current input to the actuator, a smooth torque output from the motor can be achieved, avoiding vibration or impact.
[0022] As an optional implementation, in the first aspect of the present invention, the method further includes: The torque change rate and joint position of each joint of the robot are acquired in real time. When the rate of change of torque is greater than the preset value, or / and the joint position is less than the preset lower limit or greater than the preset upper limit, the robot is controlled to stop urgently.
[0023] Through torque mutation protection mechanism and location boundary protection mechanisms To ensure the safe operation of the robot, when an incident occurs... , or / and, The hardware-level power failure protection mechanism responds quickly and controls the robot to stop in an emergency, preventing damage or loss of control.
[0024] As an optional implementation, in the first aspect of the present invention, the method further includes: The guiding torque is determined based on the joint position and velocity of each joint, as well as the target joint position and velocity.
[0025] in, Let be the guiding torque of the i-th joint. and Let be the joint position of the i-th joint and the target joint position, respectively. and These are the joint velocity of the i-th joint and the target joint velocity, respectively. and These are the stiffness coefficient and damping coefficient, respectively, and:
[0026]
[0027] in, Based on the basic stiffness coefficient, Based on the basic damping coefficient, This represents the scalar amplitude of the joint position deviation. This represents the scalar amplitude of the joint velocity. This is the stiffness attenuation coefficient. This is the damping gain coefficient; , ; The command torque is obtained based on the gravity compensation torque and friction compensation torque, including:
[0028] in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the frictional compensation torque of the i-th joint.
[0029] The guiding torque helps the operator guide the robot to the target position, which is especially suitable for teaching path planning scenarios. The stiffness and damping coefficients are adaptively adjusted with deviation and speed, ensuring dragging flexibility while providing the necessary guiding force.
[0030] when The smaller the value, the smaller the deviation, which requires high stiffness to resist disturbances; that is, the stiffness coefficient is required at this time. The larger the value, the more accurate the positioning, and the less likely it is to oscillate around the target point. When the stiffness coefficient is larger, The smaller the size, the more flexible it is, and the less it will be, thus avoiding excessive contact with the environment and the resulting large impact. The value is chosen differently depending on the specific scenario. For scenarios requiring high precision but low efficiency, it can be increased. For scenarios where low precision but high efficiency are required, the value should be appropriately reduced. The value. When high-speed motion, that is... When the value is larger, the damping coefficient is higher. The larger the value, the more it suppresses jitter.
[0031] A second aspect of this invention discloses a teaching system for zero-force dragging of a robot, comprising: The acquisition unit is used to acquire joint position and joint speed in real time in response to the dragging force applied by the operator. The calculation unit is used to determine the gravity compensation torque based on the joint position, determine the friction compensation torque based on the joint velocity, and obtain the command torque according to the gravity compensation torque and the friction compensation torque; A drive unit is used to control the robot to perform drag-and-drop teaching via the command torque.
[0032] This invention utilizes gravity compensation and friction compensation to offset static and dynamic resistance respectively, allowing the operator to drag the robot with almost zero force. This significantly reduces operational difficulty and physical burden, achieving zero-force drag teaching. It is applicable to multi-joint robots, does not rely on specific structures or sensors, and has good versatility.
[0033] A third aspect of the present invention discloses an electronic device, comprising: a memory storing executable program code; a processor coupled to the memory; the processor calling the executable program code stored in the memory to execute the robot zero-force drag teaching method disclosed in the first aspect of the present invention.
[0034] A fourth aspect of the present invention discloses a computer-readable storage medium storing a computer program, wherein the computer program causes a computer to execute the robot zero-force dragging teaching method disclosed in the first aspect of the present invention. Attached Figure Description
[0035] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0036] Figure 1 This is a flowchart illustrating the robot zero-force dragging teaching method disclosed in an embodiment of the present invention; Figure 2 This is a schematic diagram of the structure of a robot zero-force drag teaching system provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0037] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0038] It should be noted that the terms first, second, third, fourth, etc., in the specification and claims of this invention are used to distinguish different objects, not to describe a specific order. The terms used in the embodiments of this invention include and have, and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products, or devices.
[0039] Example 1
[0040] Please see Figure 1 , Figure 1 This is a flowchart illustrating the robot zero-force drag teaching method disclosed in this embodiment of the invention. The execution entity of the method described in this embodiment is an execution entity composed of software and / or hardware. This execution entity can receive relevant information via wired or / or wireless means and can send certain instructions. It may also have certain processing and storage functions. This execution entity can control multiple devices, such as remote physical servers or cloud servers and related software, or local hosts or servers and related software that perform related operations on devices located in a certain place. In some scenarios, multiple storage devices can also be controlled; these storage devices may be placed in the same location as the device or in different locations. Figure 1 As shown, this teaching method based on zero-force dragging of a robot includes the following steps: S110: In response to the dragging force applied by the operator, the joint position and joint speed are acquired in real time.
[0041] External forces applied to the robot can also be detected by Hall effect sensors or position sensors located on actuators or other positions. When an operator applies an external force to the robot, a data acquisition mechanism is triggered to obtain the joint position and joint velocity. Both joint position and joint velocity can be acquired by Hall effect sensors, or they can be acquired by position sensors and velocity sensors respectively; this is not limited here.
[0042] Since this application requires only a very small force to achieve robot dragging and teaching, in order to avoid malfunctions of the humanoid robot caused by environmental factors or other factors, in a preferred embodiment of the present invention, the data acquisition mechanism can be triggered in two ways. One way is to first wake up the robot physically, such as by a button, or wirelessly, such as by voice, and then trigger the data acquisition mechanism when external force is applied. The other way is to first apply an external force of not less than a preset pressure threshold to the robot, and then wake up the robot initially when the duration of the external force reaches a preset time threshold, and then trigger the data acquisition mechanism when external force is applied.
[0043] S120. Determine the gravity compensation torque based on the joint position, determine the friction compensation torque based on the joint speed, and obtain the command torque according to the gravity compensation torque and the friction compensation torque.
[0044] Determining the gravity compensation torque by joint position can be achieved through a dynamic model. Using a dynamic model, accurate modeling can be performed based on the robot's actual structural parameters (including mass, center of mass, Jacobian matrix, etc.), adapting to different robot models. It can accurately calculate the gravity compensation torque required for each joint, and is especially suitable for robots with complex configurations.
[0045] Specifically, a dynamic model is constructed based on the joint positions, link masses, and Jacobian matrix, and the gravity compensation torque of each joint is calculated:
[0046] in, Let be the gravity compensation torque of the i-th joint, n be the total number of joints, and G be the gravity function. Let the joint position vector be... Let be the Jacobian matrix representing the position of the centroid of the k-th link, and T be the transpose of the matrix. Let g be the mass of the k-th link and g be the acceleration due to gravity.
[0047] It should be noted that the summation formula is used because the gravity compensation torque of a joint needs to compensate for the gravity of the corresponding link of the joint and the equivalent torque transmitted downstream through the mechanical structure, which is the gravity of all downstream links. Taking a six-axis robotic arm as an example, since all links are located downstream of joint 1, the gravity compensation torque of joint 1 needs to compensate for the gravity of the entire robotic arm, while the gravity compensation torque of joint 6 only compensates for the gravity of the end link.
[0048] To significantly reduce computational complexity and suit the real-time control requirements of real-time systems, in other embodiments, the gravity compensation torque of each joint can also be obtained through a recursive Newton-Euler algorithm:
[0049] in, Let be the gravitational torque of the i-th joint.
[0050] Using the recursive Newton-Euler algorithm can reduce the computational complexity from O(n^2) to O(n^2). 2 The value decreases to O(n).
[0051] Friction compensation torque can be achieved using viscous and Coulomb friction models:
[0052] in, The friction compensation torque for the i-th joint is... Let friction force be a function of friction. For joint velocity vectors, Let be the joint velocity of the i-th joint. The coefficient of viscous friction, Let be the Coulomb friction coefficient. It is a symbolic function.
[0053] Viscous and Coulomb friction models are classic and effective methods for friction modeling, requiring minimal computation and suitable for real-time control. Viscous friction coefficient. Coulomb friction coefficient It can be calibrated based on the actual robot or through genetic algorithms to adapt to different temperature conditions.
[0054] By superimposing the two compensation torques, the command torque for controlling the actuators of each joint is obtained, thereby counteracting the static and dynamic resistance of each joint. This results in the robot exhibiting zero impedance characteristics, making the operator almost unaware of the robot's weight and friction. In other words, the sum of the gravity compensation torque and friction compensation torque corresponding to each joint is used as the command torque for each joint.
[0055] in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the frictional compensation torque of the i-th joint.
[0056] In some drag-and-drop teaching implementations with path planning, a guiding torque can be added to achieve consistency between the robot and the target position, while also improving control accuracy and the ability to avoid impacts and suppress vibrations.
[0057] Specifically, the guiding torque can be determined based on the joint position and velocity of each joint, as well as the target joint position and target joint velocity:
[0058] in, Let be the guiding torque of the i-th joint. and Let be the joint position of the i-th joint and the target joint position, respectively. and Let be the joint velocity of the i-th joint and the target joint velocity, respectively. and points These are the stiffness coefficient and the damping coefficient, respectively.
[0059] stiffness coefficient and damping coefficient It adopts an adaptive adjustment method based on deviation and speed, which ensures both dragging flexibility and provides the necessary guiding force, namely:
[0060]
[0061] in, Based on the basic stiffness coefficient, Based on the basic damping coefficient, This represents the scalar amplitude of the joint position deviation. This represents the scalar amplitude of the joint velocity. This is the stiffness attenuation coefficient. This is the damping gain coefficient; , .
[0062] when The smaller the value, the lower the stiffness coefficient. The larger the value, the more accurate the positioning, and the less likely it is to oscillate around the target point. When the stiffness coefficient is larger, The smaller the size, the more flexible it is, and the less it will be, resulting in greater impact from excessive contact with the environment. The value is chosen differently depending on the specific scenario. For scenarios requiring high precision but low efficiency, it can be increased. For scenarios where low precision but high efficiency are required, the value should be appropriately reduced. The value. When high-speed motion, that is... When the value is larger, the damping coefficient is higher. The larger the value, the more it suppresses jitter.
[0063] The command torque is then calculated based on the gravity compensation torque, friction compensation torque, and guiding torque, including:
[0064] S130. Control the robot to perform drag teaching by the command torque.
[0065] Command torque is an output parameter of the actuator. When using it, it needs to be converted into a current value that can control the actuator to output the corresponding command torque, denoted as command current:
[0066] in, Let be the command current for the i-th joint. The torque coefficient is obtained through experimentation, and different motors may have different torque coefficients.
[0067] The command torque is converted into a command current input to the actuator, and the command current is output to the actuator corresponding to each joint so that the robot can perform drag teaching.
[0068] During robot drag-and-drop teaching, safety mechanisms need to be added to prevent damage or loss of control of the robot. This mainly focuses on the rate of change of torque. and joint position Achieve protection against sudden torque changes and location boundary protection.
[0069] Through torque mutation protection mechanism and location boundary protection mechanisms To ensure the safe operation of the robot, when an incident occurs... , or / and, The hardware-level power failure protection mechanism responds quickly and controls the robot to stop in an emergency, preventing damage or loss of control.
[0070] This invention utilizes gravity compensation and friction compensation to offset static and dynamic resistance respectively, allowing the operator to drag the robot with almost zero force. This significantly reduces operational difficulty and physical burden, achieving zero-force drag teaching. It is applicable to multi-joint robots, does not rely on specific structures or sensors, and has good versatility.
[0071] Example 2
[0072] Please see Figure 2 , Figure 2 This is a schematic diagram of the robot zero-force drag teaching system disclosed in an embodiment of the present invention. Figure 2 As shown, the zero-force drag teaching system for this robot may include: The acquisition unit 210 is used to acquire joint position and joint speed in real time in response to the dragging force applied by the operator. The calculation unit 220 is used to determine the gravity compensation torque based on the joint position, determine the friction compensation torque based on the joint velocity, and obtain the command torque according to the gravity compensation torque and the friction compensation torque. The drive unit 230 is used to control the robot to perform drag teaching through the command torque.
[0073] The computing unit 220 may include: The gravity compensation torque of each joint was calculated using a dynamic model:
[0074] Alternatively, the gravity compensation torque of each joint can be obtained through a recursive Newton-Euler algorithm; in, Let be the gravity compensation torque of the i-th joint, n be the total number of joints, and G be the gravity function. Let the joint position vector be... Let be the Jacobian matrix representing the position of the centroid of the k-th link, and T be the transpose of the matrix. Let g be the mass of the k-th link and g be the acceleration due to gravity.
[0075] The friction compensation torque for each joint is determined based on the speed of each joint:
[0076] in, The friction compensation torque for the i-th joint is... Let friction force be a function of friction. For joint velocity vectors, Let be the joint velocity of the i-th joint. The coefficient of viscous friction, Let be the Coulomb friction coefficient. It is a symbolic function.
[0077] The sum of the gravity compensation torque and friction compensation torque corresponding to each joint is used as the command torque for each joint:
[0078] in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the frictional compensation torque of the i-th joint.
[0079] The drive unit 230 may include: The command torque is converted into a command current:
[0080] in, Let be the command current for the i-th joint. This is the torque coefficient; The command current is output to the actuator corresponding to each joint so that the robot performs drag teaching.
[0081] Torque coefficient The torque coefficient can be obtained through experimentation. Different motors may have different torque coefficients. By converting the command torque into the input current (i.e., command current) to the actuator, a smooth torque output from the motor can be achieved, avoiding vibration or impact.
[0082] Preferably, the teaching system may further include a protection unit for real-time acquisition of the torque change rate and joint position of each joint of the robot; when the torque change rate is greater than a preset value, or / and the joint position is less than a preset lower limit or greater than a preset upper limit, the robot is controlled to stop urgently.
[0083] The teaching system may also include a guiding unit for determining the guiding torque based on the joint position and joint velocity of each joint, as well as the target joint position and target joint velocity.
[0084] in, Let be the guiding torque of the i-th joint. and Let be the joint position of the i-th joint and the target joint position, respectively. and These are the joint velocity of the i-th joint and the target joint velocity, respectively. and These are the stiffness coefficient and damping coefficient, respectively, and:
[0085]
[0086] in, Based on the basic stiffness coefficient, Based on the basic damping coefficient, This represents the scalar amplitude of the joint position deviation. This represents the scalar amplitude of the joint velocity. This is the stiffness attenuation coefficient. This is the damping gain coefficient; , ; The command torque is obtained based on the gravity compensation torque, friction compensation torque, and guiding torque:
[0087] in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the frictional compensation torque of the i-th joint.
[0088] Example 3
[0089] Please see Figure 3 , Figure 3 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of the present invention. The electronic device can be a computer, a server, etc. Of course, in certain cases, it can also be a mobile phone, tablet computer, monitoring terminal, or other smart device, as well as an image acquisition device with processing capabilities. Figure 3 As shown, the electronic device may include: Memory 310 storing executable program code; Processor 320 coupled to memory 310; The processor 320 calls the executable program code stored in the memory 310 to execute some or all of the steps in the robot zero-force drag teaching method in Embodiment 1.
[0090] This invention discloses a computer-readable storage medium storing a computer program that causes a computer to perform some or all of the steps in the robot zero-force drag teaching method of Embodiment 1.
[0091] This invention also discloses a computer program product, wherein when the computer program product is run on a computer, the computer performs some or all of the steps in the robot zero-force drag teaching method in Embodiment 1.
[0092] This invention also discloses an application publishing platform, which is used to publish computer program products. When the computer program products are run on a computer, the computer executes some or all of the steps in the robot zero-force drag teaching method in Embodiment 1.
[0093] In various embodiments of the present invention, it should be understood that the sequence number of each process does not necessarily imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0094] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; they can be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0095] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0096] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-accessible memory. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several requests to cause a computer device (which can be a personal computer, server, or network device, specifically a processor in the computer device) to execute some or all of the steps of the methods described in the various embodiments of the present invention.
[0097] In the embodiments provided by this invention, it should be understood that B corresponding to A means that B is associated with A, and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B solely based on A; B can also be determined based on A and / or other information.
[0098] Those skilled in the art will understand that some or all of the steps in the various methods of the embodiments described can be implemented by a program instructing related hardware. This program can be stored in a computer-readable storage medium, including read-only memory (ROM), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), one-time programmable read-only memory (OTPROM), electrically-Erasable Programmable Read-Only Memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, disk storage, magnetic tape storage, or any other computer-readable medium capable of carrying or storing data.
[0099] The teaching method and system for zero-force dragging of robots disclosed in the embodiments of the present invention have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. A teaching method for zero-force dragging of a robot, characterized in that, include: In response to the dragging force applied by the operator, the joint position and joint speed are acquired in real time; The gravity compensation torque is determined based on the joint position, the friction compensation torque is determined based on the joint velocity, and the command torque is obtained based on the gravity compensation torque and the friction compensation torque. The robot is controlled to perform drag-and-drop teaching by the command torque.
2. The teaching method for zero-force dragging of a robot as described in claim 1, characterized in that, Determining the gravity compensation torque based on the joint position includes: The gravity compensation torque of each joint was calculated using a dynamic model: Alternatively, the gravity compensation torque of each joint can be obtained through a recursive Newton-Euler algorithm; in, Let G be the gravity compensation torque of the i-th joint, n be the total number of joints, and G be the gravity function. Let the joint position vector be... Let be the Jacobian matrix representing the position of the centroid of the k-th link, and T be the transpose of the matrix. Let g be the mass of the k-th link and g be the acceleration due to gravity.
3. The teaching method for zero-force dragging of a robot as described in claim 1, characterized in that, Determining the friction compensation torque based on the joint velocity includes: The friction compensation torque for each joint is determined based on the speed of each joint: in, The friction compensation torque for the i-th joint is... Let friction force be a function of friction. For joint velocity vectors, Let be the joint velocity of the i-th joint. The coefficient of viscous friction, Let be the Coulomb friction coefficient. It is a symbolic function.
4. The teaching method for zero-force dragging of a robot as described in claim 1, characterized in that, The command torque is obtained based on the gravity compensation torque and friction compensation torque, including: The sum of the gravity compensation torque and friction compensation torque corresponding to each joint is used as the command torque for each joint: in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the friction compensation torque of the i-th joint.
5. The teaching method for zero-force dragging of a robot as described in claim 4, characterized in that, Controlling the robot to perform drag-and-drop teaching via the command torque includes: The command torque is converted into a command current: in, Let be the command current for the i-th joint. This is the torque coefficient; The command current is output to the actuator corresponding to each joint so that the robot performs drag teaching.
6. The teaching method for zero-force dragging of a robot as described in any one of claims 1-5, characterized in that, The method further includes: The torque change rate and joint position of each joint of the robot are acquired in real time. When the rate of change of torque is greater than the preset value, or / and the joint position is less than the preset lower limit or greater than the preset upper limit, the robot is controlled to stop urgently.
7. The teaching method for zero-force dragging of a robot as described in any one of claims 1-5, characterized in that, The method further includes: The guiding torque is determined based on the joint position and velocity of each joint, as well as the target joint position and velocity. in, Let be the guiding torque of the i-th joint. and Let be the joint position of the i-th joint and the target joint position, respectively. and These are the joint velocity of the i-th joint and the target joint velocity, respectively. and These are the stiffness coefficient and damping coefficient, respectively, and: in, Based on the basic stiffness coefficient, Based on the basic damping coefficient, This represents the scalar amplitude of the joint position deviation. This represents the scalar amplitude of the joint velocity. This is the stiffness attenuation coefficient. This is the damping gain coefficient; , ; The command torque is obtained based on the gravity compensation torque and friction compensation torque, including: in, This is the command torque for the i-th joint. Let the gravitational compensation torque be the torque of the i-th joint. Let be the frictional compensation torque of the i-th joint.
8. A teaching system for zero-force dragging of a robot, characterized in that, include: The acquisition unit is used to acquire joint position and joint speed in real time in response to the dragging force applied by the operator. The calculation unit is used to determine the gravity compensation torque based on the joint position, determine the friction compensation torque based on the joint velocity, and obtain the command torque according to the gravity compensation torque and the friction compensation torque; A drive unit is used to control the robot to perform drag-and-drop teaching via the command torque.
9. An electronic device, characterized in that, include: Memory containing executable program code; A processor coupled to the memory; The processor calls the executable program code stored in the memory to execute the robot zero-force drag teaching method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program causes a computer to perform the teaching method for zero-force dragging of a robot as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Collaborative robot friction moment compensation method for drag teaching
CN109807899A
Robot dragging teaching zero-force control method for friction force self-adaptive compensation
CN116423522A
Collaborative robot dragging teaching control method, device and equipment and medium
CN118636138A
Direct teaching device for robot
JP1997085656A
Robot control device
JP2004344998A
Cited By
Robot trajectory control method and system
CN121290443A
Accurate positioning control system and method for heavy movable loading and unloading vehicle
CN121433331A
