Force control-based avoidance method and device, mechanical arm and electronic equipment

By using a force-based method, the joint repulsion torque is calculated using a second-order damping model and a force Jacobian matrix, which solves the problem of complex obstacle avoidance calculations for robotic arms and achieves more efficient obstacle avoidance control.

CN116117798BActive Publication Date: 2026-02-24UBTECH ROBOTICS CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211634264.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-19
Publication Date
2026-02-24
Estimated Expiration
2042-12-19

AI Technical Summary

Technical Problem

Existing obstacle avoidance strategies for robotic arms are based on position control, which involves a large amount of computation and many parameters, making the methods for avoiding obstacles complex.

Method used

By employing a force control-based approach, the robot arm determines the nearest joint point and distance to the obstacle. It then uses a second-order damping model and a force Jacobian matrix to calculate the virtual repulsion torque and joint repulsion torque. Combined with the original control torque, the target control torque is calculated to control the joint movement and achieve obstacle avoidance.

Benefits of technology

It simplifies the calculation process for the robotic arm to avoid obstacles, and improves calculation efficiency and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116117798B_ABST
    Figure CN116117798B_ABST
Patent Text Reader

Abstract

The application discloses a force control-based avoidance method and device, a mechanical arm and electronic equipment. The method comprises the following steps: determining a nearest joint node closest to an obstacle among a plurality of joint nodes of a mechanical arm, and determining a nearest distance between the nearest joint node and the obstacle; calculating a virtual repulsive torque according to a second-order damping model and the nearest distance; calculating a joint repulsive torque according to a force Jacobian matrix of the nearest joint node and the virtual repulsive torque; calculating a target control torque of a target joint node according to an original control torque of the target joint node and the joint repulsive torque, and controlling the target joint node to operate according to the target control torque, so that the mechanical arm avoids the obstacle, wherein the target joint node is each joint node among the plurality of joint nodes. The application solves the technical problem that the calculation process of the method for avoiding the obstacle by the mechanical arm is complex.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computers, and more specifically, to a force-controlled avoidance method, device, robotic arm, and electronic device. Background Technology

[0002] Existing obstacle avoidance strategies for robotic arms are mostly based on the position control of each joint. When performing full-body obstacle avoidance, it is necessary not only to calculate the distance between the obstacle and each joint, but also to adjust the obstacle avoidance sensitivity parameters of each joint, which has the problems of large computational load and many parameters. Summary of the Invention

[0003] This invention provides a force-controlled obstacle avoidance method, device, robotic arm, and electronic device to at least solve the technical problem of complex calculation process in the method of robotic arm obstacle avoidance.

[0004] According to one aspect of the present invention, a force-controlled obstacle avoidance method is provided, comprising: determining the nearest joint among a plurality of joints of a robotic arm that is closest to an obstacle, and determining the closest distance between the nearest joint and the obstacle; calculating a virtual repulsion torque based on a second-order damping model and the closest distance; calculating a joint repulsion torque based on the force Jacobian matrix of the nearest joint and the virtual repulsion torque; calculating a target control torque for the target joint based on the original control torque of the target joint and the joint repulsion torque, and controlling the target joint to operate according to the target control torque so that the robotic arm avoids the obstacle, wherein the target joint is each of the plurality of joints.

[0005] According to another aspect of the present invention, a force-controlled avoidance device is provided, comprising: a determination module, configured to determine the nearest joint among a plurality of joints of a robotic arm that is closest to an obstacle, and to determine the closest distance between the nearest joint and the obstacle; a first calculation module, configured to calculate a virtual repulsion torque based on a second-order damping model and the closest distance; a second calculation module, configured to calculate a joint repulsion torque based on the force Jacobian matrix of the nearest joint and the virtual repulsion torque; and a third calculation module, configured to calculate a target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque, and to control the target joint to operate according to the target control torque so that the robotic arm avoids the obstacle, wherein the target joint is each of the plurality of joints.

[0006] As an optional example, the first calculation module includes: a first determining unit for determining the first, second, and third parameters of the second-order damping model; a first calculation unit for calculating the first derivative of the nearest distance to obtain a first value; a second calculation unit for calculating the second derivative of the nearest distance to obtain a second value; and a third calculation unit for calculating the product of the first parameter and the second value, the product of the second parameter and the first value, and the sum of the ratio of the first parameter to the nearest distance to obtain the virtual repulsive torque.

[0007] As an optional example, the second calculation module includes: a fourth calculation unit for calculating the force Jacobian matrix based on the nearest joint and the plurality of joints; and a fifth calculation unit for calculating the product of the force Jacobian matrix and the virtual repulsion moment to obtain the joint repulsion moment.

[0008] As an optional example, the third calculation module includes: a second determining unit for determining the feedforward torque and feedback torque of the target joint; a sixth calculation unit for calculating the sum of the feedforward torque and the feedback torque to obtain the original control torque; and a seventh calculation unit for calculating the sum of the original control torque and the joint repulsion torque to obtain the target control torque.

[0009] As an optional example, the second determining unit includes: a first determining subunit, used to determine the joint expected variables, joint expected velocities, and joint expected accelerations of the target joint, wherein the joint expected variables include joint expected angles and / or joint expected displacements; and a first calculating subunit, used to perform inverse dynamics analysis to obtain the feedforward torque based on the joint expected variables, the joint expected velocities, and the joint expected accelerations.

[0010] As an optional example, the second determining unit includes: a second determining subunit, used to determine the current joint variable and current joint velocity of the target joint point, wherein the current joint variable includes the current joint angle and / or the current joint displacement; and a second calculating subunit, used to perform proportional differentiation to obtain the feedback torque based on the current joint variable, current joint velocity, expected joint variable, and expected joint velocity of the target joint point.

[0011] According to another aspect of the present invention, a robotic arm is provided, comprising: a determining module, configured to determine the nearest joint among a plurality of joints that is closest to an obstacle, and to determine the closest distance between the nearest joint and the obstacle; a first calculation module, configured to calculate a virtual repulsion torque based on a second-order damping model and the closest distance; a second calculation module, configured to calculate a joint repulsion torque based on the force Jacobian matrix of the nearest joint and the virtual repulsion torque; and a third calculation module, configured to calculate a target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque, and to control the target joint to operate according to the target control torque so that the robotic arm avoids the obstacle, wherein the target joint is each of the plurality of joints.

[0012] As an optional example, the first calculation module includes: a first determining unit for determining the first, second, and third parameters of the second-order damping model; a first calculation unit for calculating the first derivative of the nearest distance to obtain a first value; a second calculation unit for calculating the second derivative of the nearest distance to obtain a second value; and a third calculation unit for calculating the product of the first parameter and the second value, the product of the second parameter and the first value, and the sum of the ratio of the first parameter to the nearest distance to obtain the virtual repulsive torque.

[0013] As an optional example, the second calculation module includes: a fourth calculation unit for calculating the force Jacobian matrix based on the nearest joint and the plurality of joints; and a fifth calculation unit for calculating the product of the force Jacobian matrix and the virtual repulsion moment to obtain the joint repulsion moment.

[0014] As an optional example, the third calculation module includes: a second determining unit for determining the feedforward torque and feedback torque of the target joint; a sixth calculation unit for calculating the sum of the feedforward torque and the feedback torque to obtain the original control torque; and a seventh calculation unit for calculating the sum of the original control torque and the joint repulsion torque to obtain the target control torque.

[0015] As an optional example, the second determining unit includes: a first determining subunit, used to determine the joint expected variables, joint expected velocities, and joint expected accelerations of the target joint, wherein the joint expected variables include joint expected angles and / or joint expected displacements; and a first calculating subunit, used to perform inverse dynamics analysis to obtain the feedforward torque based on the joint expected variables, the joint expected velocities, and the joint expected accelerations.

[0016] As an optional example, the second determining unit includes: a second determining subunit, used to determine the current joint variable and current joint velocity of the target joint point, wherein the current joint variable includes the current joint angle and / or the current joint displacement; and a second calculating subunit, used to perform proportional differentiation to obtain the feedback torque based on the current joint variable, current joint velocity, expected joint variable, and expected joint velocity of the target joint point.

[0017] According to another aspect of the present invention, a storage medium is also provided, wherein a computer program is stored in the storage medium, wherein the computer program is executed by a processor to perform the above-described force control-based evasion method.

[0018] According to another aspect of the present invention, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to execute the force-based avoidance method described above through the computer program.

[0019] In this embodiment of the invention, the nearest joint point to the obstacle among multiple joint points of the robotic arm is determined, and the closest distance between the nearest joint point and the obstacle is determined; a virtual repulsion torque is calculated based on a second-order damping model and the closest distance; a joint repulsion torque is calculated based on the force Jacobian matrix of the nearest joint point and the virtual repulsion torque; a target control torque is calculated based on the original control torque of the target joint point and the joint repulsion torque, and the target joint point is controlled to operate according to the target control torque, so that the robotic arm avoids the obstacle. The method described above, where the target joint is each of the aforementioned multiple joints, calculates the joint repulsion torque based on the nearest joint and the closest distance between the robotic arm and the obstacle. Finally, it calculates the target control torque for each joint based on the original control torque and the joint repulsion torque, and controls the operation of each joint according to the target control torque, thereby enabling the robotic arm to avoid obstacles. This simplifies the calculation process of the method for robotic arms to avoid obstacles and solves the technical problem of the complex calculation process of the method for robotic arms to avoid obstacles. Attached Figure Description

[0020] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, illustrate exemplary embodiments of the invention and, together with their description, serve to explain the invention and do not constitute an undue limitation thereof. In the drawings:

[0021] Figure 1 This is a flowchart of an optional force-controlled avoidance method according to an embodiment of the present invention;

[0022] Figure 2 This is a flowchart illustrating the force control implementation of an optional force control-based avoidance method according to an embodiment of the present invention.

[0023] Figure 3 This is a schematic diagram of an optional force-controlled avoidance device according to an embodiment of the present invention;

[0024] Figure 4 This is a schematic diagram of an optional robotic arm according to an embodiment of the present invention;

[0025] Figure 5 This is a schematic diagram of an optional electronic device according to an embodiment of the present invention. Detailed Implementation

[0026] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. 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 should fall within the scope of protection of the present invention.

[0027] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises 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 such processes, methods, products, or apparatus.

[0028] According to a first aspect of the present invention, a force-controlled avoidance method is provided, optionally, as follows: Figure 1 As shown, the above method includes:

[0029] S102, determine the nearest joint among multiple joints of the robotic arm that is closest to the obstacle, and determine the closest distance between the nearest joint and the obstacle;

[0030] S104, based on the second-order damping model and the closest distance, the virtual repulsive torque is calculated;

[0031] S106, the joint repulsion moment is calculated based on the force Jacobian matrix and virtual repulsion moment of the nearest joint.

[0032] S108: Based on the original control torque and joint repulsion torque of the target joint, the target control torque of the target joint is calculated, and the target joint is controlled to run according to the target control torque so that the robotic arm can avoid obstacles. The target joint is each of multiple joints.

[0033] Optionally, in this embodiment, torque in physics refers to the tendency of an object to rotate about an axis of rotation or a fulcrum due to an applied force. A Jacobian matrix is ​​a matrix formed by arranging the first-order partial derivatives of a function in a certain way; its determinant is called the Jacobian determinant.

[0034] Optionally, in this embodiment, multiple joints on the robotic arm are determined, the distance from each joint to the obstacle is calculated, the joint with the shortest distance is determined as the nearest joint, and the distance from the nearest joint to the obstacle is determined as the shortest distance x. The shortest distance x, the first derivative of the shortest distance x, and the second derivative of the shortest distance x are input into the second-order damping model to obtain the virtual repulsive torque. Where m, c, and k are fixed parameters of the second-order damping model, and the virtual repulsive moment F is a vector composed of components in the x, y, and z directions. After obtaining the virtual repulsive moment F, the joint repulsive force τ = J is further calculated using the force Jacobian matrix. T F, where τ is the joint repulsion torque, J T Let be the force Jacobian matrix between the nearest joint and each joint. Finally, the sum of the joint repulsion torque and the original control torque of each joint is determined as the target control torque of each joint, and the operation of each joint is controlled according to the target control torque of each joint so that the robotic arm can avoid obstacles.

[0035] Optionally, in this embodiment, the joint repulsion torque is calculated based on the nearest joint point and the nearest distance between the robotic arm and the obstacle. Finally, the target control torque of each joint point is calculated based on the original control torque and the joint repulsion torque of each joint point in the robotic arm. The operation of each joint point is controlled according to the target control torque of each joint point so that the robotic arm can avoid the obstacle. This simplifies the calculation process of the method for the robotic arm to avoid obstacles and solves the technical problem of the complex calculation process of the method for the robotic arm to avoid obstacles.

[0036] As an optional example, based on the second-order damping model and the closest distance, the virtual repulsive moment is calculated as follows:

[0037] Determine the first, second, and third parameters of the second-order damping model;

[0038] Calculate the first derivative of the nearest distance to obtain the first value;

[0039] Calculate the second derivative of the nearest distance to obtain the second value;

[0040] The virtual repulsive torque is obtained by calculating the product of the first parameter and the second value, the product of the second parameter and the first value, and the sum of the ratio of the first parameter to the nearest distance.

[0041] Optionally, in this embodiment, the first parameter k, the second parameter c, and the third parameter m of the second-order damping model are determined, and the first derivative of the nearest distance is calculated to obtain the first value. Calculate the second derivative of the nearest distance to obtain the second value. Calculate the product of the first parameter and the second value. The product of the second parameter and the first value The ratio of the first parameter to the nearest distance Finally, the virtual repulsion torque is obtained.

[0042] As an optional example, the joint repulsion moment is calculated based on the force Jacobian matrix and the virtual repulsion moment of the nearest joint, including:

[0043] The force Jacobian matrix is ​​calculated based on the nearest joint and multiple joints.

[0044] The joint repulsion torque is obtained by multiplying the force Jacobian matrix and the virtual repulsion torque.

[0045] Optionally, in this embodiment, the force Jacobian matrix J is calculated based on the nearest joint and multiple joints. T The product of the force Jacobian matrix and the virtual repulsion moment is calculated to obtain the joint repulsion moment τ = J. T F.

[0046] As an optional example, the target control torque of the target joint is calculated based on the original control torque and joint repulsion torque of the target joint, including:

[0047] Determine the feedforward and feedback torques at the target joints;

[0048] The original control torque is obtained by calculating the sum of the feedforward torque and the feedback torque;

[0049] The target control torque is obtained by calculating the sum of the original control torque and the joint repulsion torque.

[0050] Optionally, in this embodiment, the target control torque for each joint is determined. Taking the first joint as an example, the feedforward torque τ of the first joint is determined. ff and feedback torque τ fb Calculate the feedforward torque τ ff and feedback torque τ fb The sum of these values ​​yields the original control torque τ at the first joint. o =τff +τ fb Calculate the sum of the original control torque and the joint repulsion torque to obtain the target control torque τ at the first joint. e =τ o +τ.

[0051] As an optional example, determining the feedforward torque at the target joint includes:

[0052] Determine the joint expected variables, joint expected velocities, and joint expected accelerations of the target joint, where the joint expected variables include joint expected angles and / or joint expected displacements.

[0053] The feedforward torque is obtained by inverse dynamic analysis based on the expected joint variables, expected joint velocity, and expected joint acceleration.

[0054] Optionally, in this embodiment, as Figure 2 As shown, determining the feedforward torque of the first joint includes determining the expected joint variable q of the first joint. e Expected velocity v of the joint e and the expected acceleration a of the joint e The expected variable q of the joint e Including the expected joint angle and / or the expected joint displacement, based on the expected joint variable q e Expected velocity v of the joint e and the expected acceleration a of the joint e The feedforward torque τ is obtained by performing inverse dynamic analysis. ff .

[0055] As an optional example, determining the feedback torque at the target joint includes:

[0056] Determine the current joint variables and current joint velocity of the target joint, where the current joint variables include the current joint angle and / or the current joint displacement;

[0057] The feedback torque is obtained by performing proportional differentiation based on the current joint variable, current joint velocity, expected joint variable, and expected joint velocity of the target joint.

[0058] Optionally, in this embodiment, as Figure 2 As shown, determining the feedback torque of the first joint includes determining the current joint variable q of the first joint. cur and the current velocity v of the joint cur The current variable q of the joint cur Including the current joint angle and / or the current joint displacement, based on the current joint variable q at the first joint point. cur Joint current velocity v cur Degree, joint expectation variable q eand the expected velocity v of the joint e The feedback torque τ is obtained by performing proportional-differential calculation. fb .

[0059] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.

[0060] According to another aspect of the embodiments of this application, a force-controlled avoidance device is also provided, such as... Figure 3 As shown, it includes:

[0061] The determination module 302 is used to determine the nearest joint among multiple joints of the robotic arm that is closest to the obstacle, and to determine the closest distance between the nearest joint and the obstacle;

[0062] The first calculation module 304 is used to calculate the virtual repulsion torque based on the second-order damping model and the nearest distance;

[0063] The second calculation module 306 is used to calculate the joint repulsion torque based on the force Jacobian matrix and virtual repulsion torque of the nearest joint point;

[0064] The third calculation module 308 is used to calculate the target control torque of the target joint based on the original control torque and joint repulsion torque of the target joint, and control the operation of the target joint based on the target control torque so that the robotic arm can avoid obstacles. The target joint is each of multiple joints.

[0065] Optionally, in this embodiment, torque in physics refers to the tendency of an object to rotate about an axis of rotation or a fulcrum due to an applied force. A Jacobian matrix is ​​a matrix formed by arranging the first-order partial derivatives of a function in a certain way; its determinant is called the Jacobian determinant.

[0066] Optionally, in this embodiment, multiple joints on the robotic arm are determined, the distance from each joint to the obstacle is calculated, the joint with the shortest distance is determined as the nearest joint, and the distance from the nearest joint to the obstacle is determined as the shortest distance x. The shortest distance x, the first derivative of the shortest distance x, and the second derivative of the shortest distance x are input into the second-order damping model to obtain the virtual repulsive torque. Where m, c, and k are fixed parameters of the second-order damping model, and the virtual repulsive moment F is a vector composed of components in the x, y, and z directions. After obtaining the virtual repulsive moment F, the joint repulsive force τ = J is further calculated using the force Jacobian matrix.T F, where τ is the joint repulsion torque, J T Let be the force Jacobian matrix between the nearest joint and each joint. Finally, the sum of the joint repulsion torque and the original control torque of each joint is determined as the target control torque of each joint, and the operation of each joint is controlled according to the target control torque of each joint so that the robotic arm can avoid obstacles.

[0067] Optionally, in this embodiment, the joint repulsion torque is calculated based on the nearest joint point and the nearest distance between the robotic arm and the obstacle. Finally, the target control torque of each joint point is calculated based on the original control torque and the joint repulsion torque of each joint point in the robotic arm. The operation of each joint point is controlled according to the target control torque of each joint point so that the robotic arm can avoid the obstacle. This simplifies the calculation process of the method for the robotic arm to avoid obstacles and solves the technical problem of the complex calculation process of the method for the robotic arm to avoid obstacles.

[0068] As an optional example, the first computation module includes:

[0069] The first determining unit is used to determine the first, second, and third parameters of the second-order damping model;

[0070] The first computational unit is used to calculate the first derivative of the nearest distance and obtain the first value;

[0071] The second calculation unit is used to calculate the second derivative of the nearest distance to obtain the second value;

[0072] The third calculation unit is used to calculate the product of the first parameter and the second value, the product of the second parameter and the first value, and the sum of the ratio of the first parameter to the nearest distance to obtain the virtual repulsion torque.

[0073] Optionally, in this embodiment, the first parameter k, the second parameter c, and the third parameter m of the second-order damping model are determined, and the first derivative of the nearest distance is calculated to obtain the first value. Calculate the second derivative of the nearest distance to obtain the second value. Calculate the product of the first parameter and the second value. The product of the second parameter and the first value The ratio of the first parameter to the nearest distance Finally, the virtual repulsion torque is obtained.

[0074] As an optional example, the second computation module includes:

[0075] The fourth calculation unit is used to calculate the force-Jacobi matrix based on the nearest joint and multiple joints;

[0076] The fifth calculation unit is used to calculate the product of the force Jacobian matrix and the virtual repulsion moment to obtain the joint repulsion moment.

[0077] Optionally, in this embodiment, the force Jacobian matrix J is calculated based on the nearest joint and multiple joints. T The product of the force Jacobian matrix and the virtual repulsion moment is calculated to obtain the joint repulsion moment τ = J. T F.

[0078] As an optional example, the third computation module includes:

[0079] The second determining unit is used to determine the feedforward torque and feedback torque of the target joint.

[0080] The sixth calculation unit is used to calculate the sum of the feedforward torque and the feedback torque to obtain the original control torque;

[0081] The seventh calculation unit is used to calculate the sum of the original control torque and the joint repulsion torque to obtain the target control torque.

[0082] Optionally, in this embodiment, the target control torque for each joint is determined. Taking the first joint as an example, the feedforward torque τ of the first joint is determined. ff and feedback torque τ fb Calculate the feedforward torque τ ff and feedback torque τ fb The sum of these values ​​yields the original control torque τ at the first joint. o =τ ff +τ fb Calculate the sum of the original control torque and the joint repulsion torque to obtain the target control torque τ at the first joint. e =τ o +τ.

[0083] As an optional example, the second determining unit includes:

[0084] The first determining sub-unit is used to determine the joint expected variables, joint expected velocities, and joint expected accelerations of the target joint points, wherein the joint expected variables include joint expected angles and / or joint expected displacements.

[0085] The first calculation subunit is used to perform inverse dynamics analysis to obtain the feedforward torque based on the joint expected variables, joint expected velocities, and joint expected accelerations.

[0086] Optionally, in this embodiment, as Figure 2 As shown, determining the feedforward torque of the first joint includes determining the expected joint variable q of the first joint. e Expected velocity v of the joint e and the expected acceleration a of the joint e The expected variable q of the jointe Including the expected joint angle and / or the expected joint displacement, based on the expected joint variable q e Expected velocity v of the joint e and the expected acceleration a of the joint e The feedforward torque τ is obtained by performing inverse dynamic analysis. ff .

[0087] As an optional example, the second determining unit includes:

[0088] The second determining subunit is used to determine the current joint variables and current joint velocity of the target joint, wherein the current joint variables include the current joint angle and / or the current joint displacement;

[0089] The second calculation subunit is used to obtain the feedback torque by performing proportional differentiation based on the current joint variable, current joint velocity, expected joint variable, and expected joint velocity of the target joint point.

[0090] Optionally, in this embodiment, as Figure 2 As shown, determining the feedback torque of the first joint includes determining the current joint variable q of the first joint. cur and the current velocity v of the joint cur The current variable q of the joint cur Including the current joint angle and / or the current joint displacement, based on the current joint variable q at the first joint point. cur Joint current velocity v cur Degree, joint expectation variable q e and the expected velocity v of the joint e The feedback torque τ is obtained by performing proportional-differential calculation. fb .

[0091] According to another aspect of the present invention, a robotic arm is provided, optionally, as... Figure 4 As shown, it includes:

[0092] The determination module 402 is used to determine the nearest joint among multiple joints that is closest to the obstacle, and to determine the closest distance between the nearest joint and the obstacle;

[0093] The first calculation module 404 is used to calculate the virtual repulsion moment based on the second-order damping model and the closest distance;

[0094] The second calculation module 406 is used to calculate the joint repulsion torque based on the force Jacobian matrix and virtual repulsion torque of the nearest joint point;

[0095] The third calculation module 408 is used to calculate the target control torque of the target joint based on the original control torque and joint repulsion torque of the target joint, and control the operation of the target joint based on the target control torque so that the robotic arm can avoid obstacles. The target joint is each of multiple joints.

[0096] Optionally, in this embodiment, torque in physics refers to the tendency of an object to rotate about an axis of rotation or a fulcrum due to an applied force. A Jacobian matrix is ​​a matrix formed by arranging the first-order partial derivatives of a function in a certain way; its determinant is called the Jacobian determinant.

[0097] Optionally, in this embodiment, multiple joints on the robotic arm are determined, the distance from each joint to the obstacle is calculated, the joint with the shortest distance is determined as the nearest joint, and the distance from the nearest joint to the obstacle is determined as the shortest distance x. The shortest distance x, the first derivative of the shortest distance x, and the second derivative of the shortest distance x are input into the second-order damping model to obtain the virtual repulsive torque. Where m, c, and k are fixed parameters of the second-order damping model, and the virtual repulsive moment F is a vector composed of components in the x, y, and z directions. After obtaining the virtual repulsive moment F, the joint repulsive force τ = J is further calculated using the force Jacobian matrix. T F, where τ is the joint repulsion torque, J T Let be the force Jacobian matrix between the nearest joint and each joint. Finally, the sum of the joint repulsion torque and the original control torque of each joint is determined as the target control torque of each joint, and the operation of each joint is controlled according to the target control torque of each joint so that the robotic arm can avoid obstacles.

[0098] Optionally, in this embodiment, the joint repulsion torque is calculated based on the nearest joint point and the nearest distance between the robotic arm and the obstacle. Finally, the target control torque of each joint point is calculated based on the original control torque and the joint repulsion torque of each joint point in the robotic arm. The operation of each joint point is controlled according to the target control torque of each joint point so that the robotic arm can avoid the obstacle. This simplifies the calculation process of the method for the robotic arm to avoid obstacles and solves the technical problem of the complex calculation process of the method for the robotic arm to avoid obstacles.

[0099] As an optional example, the first computation module includes:

[0100] The first determining unit is used to determine the first, second, and third parameters of the second-order damping model;

[0101] The first computational unit is used to calculate the first derivative of the nearest distance and obtain the first value;

[0102] The second calculation unit is used to calculate the second derivative of the nearest distance to obtain the second value;

[0103] The third calculation unit is used to calculate the sum of the product of the first parameter and the second value, the product of the second parameter and the first value, and the product of the first parameter and the nearest distance, to obtain the virtual repulsion torque.

[0104] Optionally, in this embodiment, the first parameter k, the second parameter c, and the third parameter m of the second-order damping model are determined, and the first derivative of the nearest distance is calculated to obtain the first value. Calculate the second derivative of the nearest distance to obtain the second value. Calculate the product of the first parameter and the second value. The product of the second parameter and the first value The ratio of the first parameter to the nearest distance Finally, the virtual repulsion torque is obtained.

[0105] As an optional example, the second computation module includes:

[0106] The fourth calculation unit is used to calculate the force-Jacobi matrix based on the nearest joint and multiple joints;

[0107] The fifth calculation unit is used to calculate the product of the force Jacobian matrix and the virtual repulsion moment to obtain the joint repulsion moment.

[0108] Optionally, in this embodiment, the force Jacobian matrix J is calculated based on the nearest joint and multiple joints. T The product of the force Jacobian matrix and the virtual repulsion moment is calculated to obtain the joint repulsion moment τ = J. T F.

[0109] As an optional example, the third computation module includes:

[0110] The second determining unit is used to determine the feedforward torque and feedback torque of the target joint.

[0111] The sixth calculation unit is used to calculate the sum of the feedforward torque and the feedback torque to obtain the original control torque;

[0112] The seventh calculation unit is used to calculate the sum of the original control torque and the joint repulsion torque to obtain the target control torque.

[0113] Optionally, in this embodiment, the target control torque for each joint is determined. Taking the first joint as an example, the feedforward torque τ of the first joint is determined. ff and feedback torque τ fb Calculate the feedforward torque τ ff and feedback torque τ fb The sum of these values ​​yields the original control torque τ at the first joint. o =τ ff +τfb Calculate the sum of the original control torque and the joint repulsion torque to obtain the target control torque τ at the first joint. e =τ o +τ.

[0114] As an optional example, the second determining unit includes:

[0115] The first determining sub-unit is used to determine the joint expected variables, joint expected velocities, and joint expected accelerations of the target joint points, wherein the joint expected variables include joint expected angles and / or joint expected displacements.

[0116] The first calculation subunit is used to perform inverse dynamics analysis to obtain the feedforward torque based on the joint expected variables, joint expected velocities, and joint expected accelerations.

[0117] Optionally, in this embodiment, as Figure 2 As shown, determining the feedforward torque of the first joint includes determining the expected joint variable q of the first joint. e Expected velocity v of the joint e and the expected acceleration a of the joint e The expected variable q of the joint e Including the expected joint angle and / or the expected joint displacement, based on the expected joint variable q e Expected velocity v of the joint e and the expected acceleration a of the joint e The feedforward torque τ is obtained by performing inverse dynamic analysis. ff .

[0118] As an optional example, the second determining unit includes:

[0119] The second determining subunit is used to determine the current joint variables and current joint velocity of the target joint, wherein the current joint variables include the current joint angle and / or the current joint displacement;

[0120] The second calculation subunit is used to obtain the feedback torque by performing proportional differentiation based on the current joint variable, current joint velocity, expected joint variable, and expected joint velocity of the target joint point.

[0121] Optionally, in this embodiment, as Figure 2 As shown, determining the feedback torque of the first joint includes determining the current joint variable q of the first joint. cur and the current velocity v of the joint cur The current variable q of the joint cur Including the current joint angle and / or the current joint displacement, based on the current joint variable q at the first joint point. cur Joint current velocity v cur Degree, joint expectation variable qe and the expected velocity v of the joint e The feedback torque τ is obtained by performing proportional-differential calculation. fb .

[0122] For other examples of this embodiment, please refer to the examples above, which will not be repeated here.

[0123] Figure 5 This is a schematic diagram of an optional electronic device according to an embodiment of this application, such as... Figure 5 As shown, it includes a processor 502, a communication interface 504, a memory 506, and a communication bus 508. The processor 502, communication interface 504, and memory 506 communicate with each other via the communication bus 508.

[0124] Memory 506 is used to store computer programs;

[0125] When processor 502 executes a computer program stored in memory 506, it performs the following steps:

[0126] Determine the nearest joint to the obstacle among multiple joints of the robotic arm, and determine the closest distance between the nearest joint and the obstacle;

[0127] The virtual repulsive torque is calculated based on the second-order damping model and the closest distance.

[0128] The joint repulsion moment is calculated based on the force Jacobian matrix and virtual repulsion moment of the nearest joint.

[0129] Based on the original control torque and joint repulsion torque of the target joint, the target control torque of the target joint is calculated, and the operation of the target joint is controlled according to the target control torque so that the robotic arm can avoid obstacles. The target joint is each of multiple joints.

[0130] Optionally, in this embodiment, the communication bus can be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 The symbol is represented by a single thick line, but this does not indicate that there is only one bus or one type of bus. The communication interface is used for communication between the aforementioned electronic devices and other devices.

[0131] The memory may include RAM, or non-volatile memory, such as at least one disk storage device. Optionally, the memory may also be at least one storage device located remotely from the aforementioned processor.

[0132] As an example, the memory 506 described above may include, but is not limited to, the determination module 302, the first calculation module 304, the second calculation module 306, and the third calculation module 308 in the force-controlled avoidance device. Furthermore, it may include, but is not limited to, other module units in the force-controlled avoidance device described above, which will not be elaborated upon in this example.

[0133] The processor mentioned above can be a general-purpose processor, including but not limited to: CPU (Central Processing Unit), NP (Network Processor), etc.; it can also be DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0134] Optionally, specific examples in this embodiment can refer to the examples described in the above embodiments, and will not be repeated here.

[0135] Those skilled in the art will understand that Figure 5 The structure shown is for illustrative purposes only. The device that implements the force control-based avoidance method described above can be a terminal device, such as a smartphone (e.g., an Android phone, an iOS phone), a tablet computer, a PDA, a mobile internet device (MID), a PAD, or other terminal devices. Figure 5 This does not limit the structure of the aforementioned electronic devices. For example, the electronic device may also include components that are more... Figure 5 The more or fewer components shown (such as network interfaces, display devices, etc.), or having the same Figure 5 The different configurations shown.

[0136] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing the hardware related to the terminal device. The program can be stored in a computer-readable storage medium, which may include: flash drive, ROM, RAM, disk or optical disk, etc.

[0137] According to another aspect of the present invention, a computer-readable storage medium is also provided, wherein a computer program is stored therein, wherein the computer program is executed by a processor to perform the steps in the force-based evasion method described above.

[0138] Optionally, in this embodiment, those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing the hardware related to the terminal device. The program can be stored in a computer-readable storage medium, which may include: flash drive, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.

[0139] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0140] If the integrated units in the above embodiments are implemented as software functional units and sold or used as independent products, they can be stored in the aforementioned computer-readable storage medium. 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 storage medium and includes several instructions to cause one or more computer devices (which may be personal computers, servers, or network devices, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention.

[0141] In the above embodiments of the present invention, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0142] In the several embodiments provided in this application, it should be understood that the disclosed client can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between units or modules, and may be electrical or other forms.

[0143] 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; that is, they may 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.

[0144] 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.

[0145] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A force-controlled avoidance method, characterized in that, include: Determine the nearest joint among multiple joints of the robotic arm that is closest to the obstacle, and determine the closest distance between the nearest joint and the obstacle; The virtual repulsive torque is calculated based on the second-order damping model and the nearest distance. The joint repulsion torque is calculated based on the force Jacobian matrix of the nearest joint and the virtual repulsion torque. Based on the original control torque of the target joint and the joint repulsion torque, the target control torque of the target joint is calculated, and the target joint is controlled to run according to the target control torque so that the robotic arm avoids the obstacle. The target joint is each of the plurality of joints. The step of calculating the target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque includes: Determine the feedforward torque and feedback torque of the target joint; The original control torque is obtained by calculating the sum of the feedforward torque and the feedback torque; The target control torque is obtained by calculating the sum of the original control torque and the joint repulsion torque.

2. The method according to claim 1, characterized in that, The virtual repulsive torque calculated based on the second-order damping model and the nearest distance includes: Determine the first, second, and third parameters of the second-order damping model; Calculate the first derivative of the nearest distance to obtain the first value; Calculate the second derivative of the nearest distance to obtain the second value; The virtual repulsive torque is obtained by calculating the product of the first parameter and the second value, the product of the second parameter and the first value, and the sum of the ratio of the first parameter to the nearest distance.

3. The method according to claim 1, characterized in that, The calculation of the joint repulsion torque based on the force Jacobian matrix of the nearest joint point and the virtual repulsion torque includes: The force-Jacobi matrix is ​​calculated based on the nearest joint and the plurality of joints. The joint repulsion torque is obtained by calculating the product of the force Jacobian matrix and the virtual repulsion torque.

4. The method according to claim 1, characterized in that, The step of determining the feedforward torque of the target joint includes: Determine the joint expected variables, joint expected velocities, and joint expected accelerations of the target joint, wherein the joint expected variables include joint expected angles and / or joint expected displacements. The feedforward torque is obtained by inverse dynamic analysis based on the joint desired variables, the joint desired velocity, and the joint desired acceleration.

5. The method according to claim 1, characterized in that, The feedback torque for determining the target joint point includes: Determine the current joint variables and current joint velocity of the target joint, wherein the current joint variables include the current joint angle and / or the current joint displacement; The feedback torque is obtained by performing proportional differentiation based on the current joint variable, current joint velocity, expected joint variable, and expected joint velocity of the target joint.

6. A force-controlled avoidance device, characterized in that, include: The determination module is used to determine the nearest joint point among multiple joint points of the robotic arm that is closest to the obstacle, and to determine the closest distance between the nearest joint point and the obstacle; The first calculation module is used to calculate the virtual repulsion torque based on the second-order damping model and the nearest distance; The second calculation module is used to calculate the joint repulsion torque based on the force Jacobian matrix of the nearest joint point and the virtual repulsion torque; The third calculation module is used to calculate the target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque, and control the target joint to run according to the target control torque so that the robotic arm avoids the obstacle, wherein the target joint is each of the plurality of joints; The step of calculating the target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque includes: Determine the feedforward torque and feedback torque of the target joint; The original control torque is obtained by calculating the sum of the feedforward torque and the feedback torque; The target control torque is obtained by calculating the sum of the original control torque and the joint repulsion torque.

7. A robotic arm, characterized in that, include: The determination module is used to determine the nearest joint point among multiple joint points that is closest to the obstacle, and to determine the closest distance between the nearest joint point and the obstacle; The first calculation module is used to calculate the virtual repulsion torque based on the second-order damping model and the nearest distance; The second calculation module is used to calculate the joint repulsion torque based on the force Jacobian matrix of the nearest joint point and the virtual repulsion torque; The third calculation module is used to calculate the target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque, and control the target joint to run according to the target control torque so that the robotic arm avoids the obstacle, wherein the target joint is each of the plurality of joints; The step of calculating the target control torque of the target joint based on the original control torque of the target joint and the joint repulsion torque includes: Determine the feedforward torque and feedback torque of the target joint; The original control torque is obtained by calculating the sum of the feedforward torque and the feedback torque; The target control torque is obtained by calculating the sum of the original control torque and the joint repulsion torque.

8. A computer-readable storage medium storing a computer program, characterized in that, The computer program is executed by the processor to perform the method described in any one of claims 1 to 5.

9. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method described in any one of claims 1 to 5 through the computer program.

Citation Information

Patent Citations

  • Mechanical arm null-space real-time obstacle avoidance control method and system

    CN114571469A

  • System and method for operating robot arm

    JP2012011498A