Lightweight seven-degree-of-freedom mechanical arm connecting rod obstacle avoidance method and system in structured environment

By constructing differential kinematic equations to obtain the null space projection matrix, calculating the Cartesian repulsion velocity and mapping it to the joint space, the problems of large computational complexity and low efficiency in the existing seven-degree-of-freedom robotic arm obstacle avoidance are solved, and efficient and accurate obstacle avoidance is achieved.

CN120620208APending Publication Date: 2025-09-12RUERMAN INTELLIGENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510980923.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-16
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

The existing linkage obstacle avoidance method of the seven-degree-of-freedom robotic arm is computationally intensive and difficult to avoid obstacles efficiently in complex environments.

Method used

By constructing the differential kinematic equation to obtain the null space projection matrix, the obstacle foot is determined, the Cartesian repulsion velocity is calculated, and it is mapped to the joint space. Combined with the null space projection matrix, the joint velocity required for the robot arm to avoid obstacles is obtained.

Benefits of technology

The amount of obstacle avoidance calculations is significantly reduced, and the obstacle avoidance accuracy and operating efficiency of the robotic arm in structured environments are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120620208A_ABST
    Figure CN120620208A_ABST
Patent Text Reader

Abstract

The invention discloses a lightweight seven-degree-of-freedom mechanical arm connecting rod obstacle avoidance method and system in a structured environment, and the method comprises the steps: constructing a differential kinematics equation based on a Jacobian matrix of a mechanical arm, and obtaining a null space projection matrix of the mechanical arm; acquiring position vectors of the position vector of the center of the obstacle in the preset area relative to perpendicular feet of a first simplified connecting rod and a second simplified connecting rod of the mechanical arm; based on the position vectors of the two perpendicular feet, the direction vector and the speed value of the Cartesian repulsion speed of the mechanical arm are obtained; and based on the Jacobian matrixes of all the end points of the first simplified connecting rod and the second simplified connecting rod, the Cartesian repulsion speed of the mechanical arm is mapped to the joint space, the expected target joint speed is obtained, and the joint speed needed by obstacle avoidance of the mechanical arm is obtained in combination with the null-space projection matrix. The null-space projection matrix is obtained by constructing the differential kinematics equation, the Cartesian rejection velocity is calculated, the obstacle avoidance joint velocity is obtained by combining the null-space projection matrix, and the calculated amount during obstacle avoidance is greatly reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robotic arm control, and in particular to a lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method and system in a structured environment. Background Art

[0002] In recent years, seven-degree-of-freedom (7DOF) robotic arms have been increasingly used in collaborative, industrial, and service applications. This is due to their redundant one-dimensional degree of freedom, which allows for more options in inverse kinematics configurations and a wider range of motion variations. This characteristic, known as zero-space motion, allows seven-degree-of-freedom robotic arms to more flexibly implement tasks such as obstacle avoidance and joint limit avoidance.

[0003] Current linkage obstacle avoidance solutions for seven-freedom robotic arms primarily rely on artificial potential fields. These methods introduce a gravitational field at the target end point and a repulsive field between the collision object and the robotic arm's linkage. As the robotic arm avoids the linkage due to the repulsive field, the end point also reaches the target point via the gravitational field. However, this method suffers from the occurrence of local minima, rendering it unsolvable. Although subsequent discrete potential field methods have been proposed to mitigate these local minima, they have not yet completely eliminated them.

[0004] Another approach is to incorporate link obstacle avoidance into the end-of-arm path planning algorithm, such as methods like RRT and A*. However, this approach is more suitable for six-degree-of-freedom manipulators or those with fewer degrees of freedom. These methods require collision checks for all links throughout the entire arm each time a path point is added, which is computationally expensive. Furthermore, this approach fails when the user wants the end-of-arm to follow a specific straight line. End-of-arm path planning methods like RRT* and A* cannot guarantee a fixed path, as their approach relies on searching for a path.

[0005] Another approach abstracts the robot's links into geometric envelopes, generates repulsive velocities based on the shortest distances from obstacles to these geometric envelopes, and maps these velocities to the null space of the seven-DOF robot to achieve link obstacle avoidance. While this approach rationally utilizes the null space characteristics of the seven-DOF robot, the Jacobian matrix at the point of action of the repulsive velocity requires recalculation at every moment due to the time-varying nature of the repulsive action point. Furthermore, when there are many collision bodies in the scene, all of them need to be calculated. However, some collision bodies do not pose a collision threat to the robot's links at the current moment and therefore do not need to be considered. If these collision bodies are considered, they will give the robot an unnecessary additional Cartesian velocity, causing the robot to make unnecessary obstacle avoidance adjustments. Summary of the Invention

[0006] The purpose of the embodiments of the present invention is to provide a lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method and system in a structured environment. By constructing a differential kinematic equation to obtain the null space projection matrix, the obstacle perpendicular vector is obtained, the Cartesian repulsion velocity is calculated, and the null space matrix is ​​mapped and combined to obtain the obstacle avoidance joint velocity, which greatly reduces the amount of calculation during obstacle avoidance and solves the problem of excessive calculation in existing obstacle avoidance calculation methods.

[0007] To solve the above technical problems, a first aspect of an embodiment of the present invention provides a lightweight seven-DOF robotic arm link obstacle avoidance method in a structured environment, comprising the following steps:

[0008] Construct differential kinematic equations based on the Jacobian matrix of the manipulator to obtain the null space projection matrix of the manipulator;

[0009] Obtaining a position vector of a center of an obstacle in a preset area relative to a position vector of a perpendicular foot of a first simplified link and a second simplified link of the robotic arm;

[0010] Based on the position vectors of the two perpendicular feet, obtaining the direction vector and velocity value of the Cartesian repulsive velocity of the robotic arm;

[0011] Based on the Jacobian matrix of each endpoint of the first simplified link and the second simplified link, the Cartesian repulsive velocity of the robotic arm is mapped to the joint space to obtain the expected target joint velocity, and the joint velocity required for obstacle avoidance of the robotic arm is obtained by combining the null space projection matrix.

[0012] Furthermore, the differential kinematics equation is constructed based on the Jacobian matrix of the manipulator to obtain the null space projection matrix of the manipulator, including:

[0013] Construct the differential kinematic equations based on the Jacobian matrix of the seven-degree-of-freedom manipulator;

[0014] In combination with a preset target joint velocity of the robotic arm, solving a joint velocity that satisfies the differential kinematic equation and is close to the preset target joint velocity is constructed as a quadratic programming problem;

[0015] The quadratic programming problem is solved by the Lagrange multiplier method to obtain the null space projection matrix of the robotic arm.

[0016] Furthermore, the differential kinematics equation is:

[0017]

[0018] in, is the velocity vector of the end effector of the robot arm in Cartesian space, is the joint velocity vector, J is the Jacobian matrix;

[0019] The quadratic programming problem is:

[0020]

[0021] in, is the preset target joint speed;

[0022] The null space projection matrix N is:

[0023] N=(I 7x7 -J + J);

[0024]

[0025] Where λ is the Lagrange multiplier vector, J T is the Jacobian matrix transpose, J + is the pseudo-inverse of the Jacobian matrix, I 7x7 is the 7*7 identity matrix.

[0026] Furthermore, obtaining the position vector of the center of the obstacle in the preset area relative to the position vector of the perpendicular foot of the first simplified link and the second simplified link of the robotic arm includes:

[0027] Simplifying each connecting rod of the robotic arm into a first simplified connecting rod and a second simplified connecting rod;

[0028] Obtaining position vectors of endpoints of the first simplified link and the second simplified link based on a base coordinate system of the manipulator through forward kinematics of the manipulator;

[0029] Obtaining the position vector of the obstacle center in the preset area;

[0030] Calculate the position vector of the center of the obstacle in the preset area relative to the perpendicular foot of the first simplified link and the second simplified link.

[0031] Furthermore, the obtaining of the direction vector and velocity value of the Cartesian repulsive velocity of the manipulator based on the position vectors of the two perpendicular feet includes:

[0032] Based on the position vectors of the two perpendicular feet, a direction vector of the Cartesian repulsive velocity is obtained, and the repulsive velocity action points are set at the respective end points of the first simplified connecting rod and the second simplified connecting rod;

[0033] When the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link is greater than or equal to the maximum avoidance distance, the speed value of the Cartesian repulsion speed of the robotic arm is 0;

[0034] When the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link is less than the maximum avoidance distance, a speed value of the Cartesian repulsion speed of the robotic arm is calculated based on a sine function.

[0035] Furthermore, the velocity value vc of the Cartesian repulsive velocity of the manipulator is i for:

[0036]

[0037] Wherein, i is the serial number of the first simplified connecting rod or the second simplified connecting rod, d m is the maximum avoidance distance, v m is the maximum avoidance speed, d is the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link, unit i is the unit vector of the repulsive velocity direction of the collision body on the i-th link.

[0038] Furthermore, the lightweight seven-DOF robotic arm link obstacle avoidance method in a structured environment further includes:

[0039] Envelope an obstacle in the preset area using an OBB bounding box to determine the OBB bounding box of the obstacle in the preset area;

[0040] According to the link endpoint of the first simplified link or the second simplified link that is closer to the OBB bounding box, obtain the angle between the line connecting each vertex of the OBB bounding box and the link endpoint and the link;

[0041] If the angle values ​​are all greater than 90°, it is determined that there is no collision threat between the obstacle in the preset area and the connecting rod;

[0042] If the angle values ​​are all less than or equal to 90°, it is determined that there is a collision threat between the obstacle in the preset area and the connecting rod.

[0043] Accordingly, a second aspect of an embodiment of the present invention provides a lightweight seven-degree-of-freedom robotic arm link obstacle avoidance system for a structured environment. The lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method for a structured environment controls the robotic arm to avoid obstacles, including:

[0044] The projection matrix acquisition module is used to construct the differential kinematic equation based on the Jacobian matrix of the manipulator and obtain the null space projection matrix of the manipulator;

[0045] a position vector calculation module, configured to obtain a position vector of a center of an obstacle in a preset area relative to a position vector of a perpendicular foot of a first simplified link and a second simplified link of the robotic arm;

[0046] a repulsion velocity calculation module, configured to obtain a direction vector and a velocity value of a Cartesian repulsion velocity of the manipulator based on the position vectors of the two perpendicular feet;

[0047] An obstacle avoidance speed calculation module is used to map the Cartesian repulsion velocity of the manipulator to the joint space based on the Jacobian matrix of each endpoint of the first simplified link and the second simplified link, obtain the expected target joint velocity, and combine it with the null space projection matrix to obtain the joint velocity required for the manipulator to avoid obstacles.

[0048] Accordingly, a third aspect of an embodiment of the present invention provides an electronic device, comprising: at least one processor; and a memory connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the above-mentioned lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method in a structured environment.

[0049] Accordingly, a fourth aspect of an embodiment of the present invention provides a computer-readable storage medium having computer instructions stored thereon, which, when executed by a processor, implements the lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method in the above-mentioned structured environment.

[0050] The above technical solutions of the embodiments of the present invention have the following beneficial technical effects:

[0051] 1. The obstacle avoidance repulsion velocity action point is translated to the two joint ends of the obstacle avoidance link, eliminating the need for repeated calculation of the Jacobian matrix. Traditionally, if the time-varying foot of the perpendicular is used as the repulsion velocity action point, the Jacobian matrix changes with each moment of the perpendicular's position, necessitating real-time recalculation. However, since the joint endpoints are fixed on the link, their Jacobian matrices can be pre-calculated as symbolic variables, requiring only substitution operations at runtime. This significantly reduces the amount of computation and the demand for computing resources (such as processor computing power and memory), enabling the robotic arm control system to operate efficiently even with limited resources.

[0052] 2. Adopting an adaptive repulsion velocity generation method based on a sine function, the Cartesian obstacle avoidance velocity is adjusted in real time according to the distance between the obstacle and the robot arm's linkage, enabling the robot arm to respond appropriately to different levels of danger. Furthermore, the Cartesian repulsion velocity is accurately mapped to the joint space and combined with the null space projection matrix to obtain the obstacle avoidance joint velocity. This fully considers the kinematic constraints of the robot arm and ensures the coordinated motion of each joint during the obstacle avoidance process.

[0053] 3. The proposed obstacle screening mechanism can accurately identify obstacles that pose a collision threat to the robot arm's linkage, avoiding unnecessary obstacle avoidance calculations for non-threatening obstacles. It also prevents the mishandling of non-threatening obstacles from interfering with the normal movement of the robot arm, thereby significantly improving the robot arm's obstacle avoidance accuracy and operational efficiency in structured environments. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] Figure 1 This is a flow chart of a lightweight seven-DOF robotic arm link obstacle avoidance method in a structured environment provided by an embodiment of the present invention;

[0055] Figure 2 Schematic diagram of a first simplified connecting rod, a second simplified connecting rod and an obstacle provided by an embodiment of the present invention;

[0056] Figure 3 Schematic diagram of the connecting rod repulsion velocity action point provided by an embodiment of the present invention;

[0057] Figure 4 is a schematic diagram of obstacle screening provided by an embodiment of the present invention;

[0058] Figure 5 This is a block diagram of a lightweight seven-degree-of-freedom robotic arm linkage obstacle avoidance system module for a structured environment provided by an embodiment of the present invention.

[0059] Reference numerals:

[0060] 1. Projection matrix acquisition module, 2. Position vector calculation module, 3. Repulsion speed calculation module, 4. Obstacle avoidance speed calculation module. DETAILED DESCRIPTION

[0061] To make the objectives, technical solutions, and advantages of the present invention more clearly understood, the present invention will be further described in detail below in conjunction with specific embodiments and with reference to the accompanying drawings. It should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present invention. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present invention.

[0062] A structured environment refers to an environment in which the collision body in the robot's workspace is fixed and does not change over time. Lightweighting means: first, the technical solution of the present invention does not require very precise modeling of the collision body, and generates a repulsive velocity in the direction of the projection point of the center point of the collision body's bounding box on the robot's link; second, the Cartesian space repulsive velocity is mapped to the joint space through the null space projection matrix to achieve link obstacle avoidance. The construction of the null space projection matrix is ​​based on the Jacobian matrix, so it is simple and convenient to implement; third, the repulsive velocity action point acting on the robot's link is translated left and right to both sides of the link, coinciding with the origin of the link coordinate system at both ends of the original link. At this time, there is no need to repeatedly recalculate the Jacobian matrix due to the different repulsive action points at each moment.

[0063] Please refer to Figure 1 A first aspect of an embodiment of the present invention provides a lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method in a structured environment, comprising the following steps:

[0064] Step S100 : constructing a differential kinematics equation based on the Jacobian matrix of the robotic arm to obtain the null space projection matrix of the robotic arm.

[0065] The kinematic description of the seven-degree-of-freedom manipulator is the key to understanding its motion behavior. The Jacobian matrix J establishes the joint space velocity Velocity in Cartesian space The linear mapping relationship between them, that is, the differential kinematics equation Here, the joint space velocity Indicates the angular velocity or linear velocity of each joint of the robotic arm, Cartesian space velocity It describes the linear velocity and angular velocity of the end effector of the robotic arm in three-dimensional space.

[0066] During obstacle avoidance, we hope to make the joint velocity as close as possible to a given target joint velocity while satisfying the kinematic equations. The above problem is transformed into a quadratic programming problem and solved by the Lagrange multiplier method. In the solution process, the null space projection matrix N = (I 7x7 -J + J). Among them, I 7x7 is the 7*7 identity matrix, J + is the pseudo-inverse of the Jacobian matrix J. The null space projection matrix N plays an important role in decomposing the joint velocity vector into two parts: one is the component in the image space of the Jacobian matrix J, which is directly related to the motion of the robot end effector; the other is the component in the null space, which does not affect the motion of the end effector in Cartesian space but can be used to achieve the purpose of adjusting the joint position to avoid obstacles without affecting the main task during obstacle avoidance.

[0067] Step S200 : Obtain the position vector of the center of the obstacle in the preset area relative to the position vector of the foot of the first simplified link and the second simplified link of the robotic arm.

[0068] To simplify the analysis of robotic arm obstacle avoidance, the arm's linkage structure is often simplified into a first simplified link and a second simplified link. This simplified model captures the key components relevant to obstacle avoidance and reduces unnecessary complexity. In a real-world robotic arm structure, these two simplified links represent the parts most likely to collide with obstacles during movement.

[0069] Through the forward kinematics of the manipulator, the position vectors of the joint points O1, O2, and O3 at both ends of the simplified link based on the manipulator base coordinate system can be obtained. At the same time, the position vector OB of the center of the obstacle in the preset area can be obtained by using environmental data acquisition equipment (such as lidar, visual sensors, etc.). Based on this known information, the position vector of the center of the obstacle relative to the position vector of the perpendicular foot of the simplified link can be determined by geometric calculation methods. For example, for the first simplified link O1O2, the position vector of the perpendicular foot C1 can be determined by calculating the projection of the vector (OB-O1) on the vector (O2-O1). The specific calculation process involves mathematical operations such as dot product of vectors, module length calculation, and linear combination of vectors. Determining the perpendicular foot position vector is a key step in the subsequent calculation of the obstacle avoidance speed, because these perpendicular foot positions reflect the relative position relationship between the obstacle and the manipulator link, and are an important basis for calculating the obstacle avoidance speed.

[0070] Step S300 : obtaining the direction vector and velocity value of the Cartesian repulsive velocity of the robot arm based on the position vectors of the two perpendicular feet.

[0071] The position vectors of the two perpendicular feet provide key information for determining the direction of the Cartesian repulsive velocity. Based on the vector relationship between the perpendicular feet C1, C2 and the obstacle center OB, for example, the vector and The direction in Cartesian space that the robot arm should move to avoid obstacles can be determined. If these vectors are used as references for the direction of the repulsive velocity vector, the robot arm will move away from the obstacle. This direction vector, determined based on the actual geometric position relationship, accurately reflects the requirements for obstacle avoidance, ensuring that the robot arm's movement direction in Cartesian space is consistent with the purpose of obstacle avoidance.

[0072] In step S400, based on the Jacobian matrix of each endpoint of the first simplified link and the second simplified link, the Cartesian repulsive velocity of the manipulator is mapped to the joint space to obtain the desired target joint velocity, and the joint velocity required for obstacle avoidance of the manipulator is obtained by combining the null space projection matrix.

[0073] The movement of the manipulator is ultimately achieved by controlling the movement of each joint, so it is necessary to map the repulsive velocity calculated in Cartesian space to the joint space. Using the Jacobian matrix J of each endpoint of the first simplified link and the second simplified link O1 、J O2 、J O3 , this space conversion can be achieved. The specific calculation method is Here, vc1 and vc2 are the Cartesian repulsive velocity components associated with different vertical feet. This mapping converts the velocity in Cartesian space based on obstacle avoidance requirements into the desired target joint velocity in joint space, providing a direct command basis for subsequent control of the manipulator's joint motion.

[0074] After obtaining the desired target joint velocity, combined with the previously obtained null space projection matrix N = (I 7x7 -J + J) to calculate the joint velocity required for the robotic arm to avoid obstacles The calculation formula is in, The part represents the joint velocity component based on the end effector task motion (described by the kinematic equation), and I 7x7 -J + The J part uses the null space projection matrix to adjust the obstacle avoidance velocity in the null space without affecting the end effector's primary motion. This results in joint velocities that ensure the robot arm completes its primary task (such as reaching a designated location for operation) while also enabling obstacle avoidance through null space motion adjustments when encountering obstacles. This enables efficient and safe motion control of the robot arm in complex environments.

[0075] Furthermore, step S100 constructs the differential kinematics equation based on the Jacobian matrix of the manipulator to obtain the null space projection matrix of the manipulator, including:

[0076] Step S110 : constructing a differential kinematics equation based on the Jacobian matrix of the seven-degree-of-freedom robotic arm.

[0077] Specifically, for a seven-degree-of-freedom robotic arm, its differential kinematic equation based on the Jacobian matrix J can be expressed as:

[0078]

[0079] in, is the velocity vector of the end effector of the robot arm in Cartesian space, is the joint velocity vector, and J is the Jacobian matrix.

[0080] The above equation mathematically expresses how joint velocity affects the velocity of the end effector in Cartesian space, demonstrating how the joint motion of the robotic arm is ultimately translated into the motion of the end effector in three-dimensional space. For example, when the joints of the robotic arm rotate, this equation can be used to calculate the linear and angular velocities of the end effector, enabling precise description and control of the robotic arm's motion.

[0081] In step S120 , the problem of solving the joint velocity that satisfies the differential kinematics equation and is close to the preset target joint velocity is constructed as a quadratic programming problem in combination with the preset target joint velocity of the robotic arm.

[0082] In practical applications, the joint velocity of the robot arm is expected to be Able to approach a preset desired target joint velocity This preset target joint velocity It can be set according to different task requirements. For example, when the robot arm needs to perform a task at a specific speed and trajectory, the corresponding expected target joint speed needs to be specified. Find a joint velocity under the premise of satisfying the differential kinematic equation Make it as close as possible It becomes an optimization problem because it is usually difficult to directly find a solution that exactly satisfies these two conditions.

[0083] In order to solve this problem, it is constructed as a quadratic programming problem, and the optimization goal is to minimize At the same time, the constraints are From a mathematical point of view, minimizing It means finding a joint velocity that matches the desired target joint velocity. The square of the Euclidean distance is minimized, a typical quadratic optimization objective. Physically, the robot's actual motion must conform to the preset joint velocities as closely as possible while also satisfying the physical constraints imposed by the kinematic equations. This ensures that the robot's motion is physically feasible. This configuration leverages established quadratic programming methods to find the required joint velocities, providing a reasonable joint velocity plan for subsequent obstacle avoidance and other tasks.

[0084] Step S130 , solving the quadratic programming problem by Lagrange multiplier method to obtain the null space projection matrix of the robotic arm.

[0085] In solving the joint velocity that satisfies the differential kinematic equation At the same time, a desired target joint velocity is also given Make joint speed Can get as close as possible to the given target joint velocity It can be constructed as a quadratic programming problem.

[0086] Accordingly, the quadratic programming problem is specifically:

[0087]

[0088] in, is the preset target joint velocity.

[0089] For this quadratic programming problem, Lagrange multipliers are introduced, and the constraints are incorporated into the objective function to form a Lagrange function, namely:

[0090]

[0091] Using the Lagrange multiplier method to solve the above equation, we can get:

[0092]

[0093] Further solving the above equations yields:

[0094]

[0095] Given the desired joint velocity increment After that, try to find the equations of differential kinematics. Close solution

[0096] Correspondingly, the null space projection matrix N is:

[0097] N=(I 7x7 -J + J).

[0098] Where λ is the Lagrange multiplier vector, J T is the Jacobian matrix transpose, J + is the pseudo-inverse of the Jacobian matrix, I 7x7 is the 7*7 identity matrix.

[0099] The null space projection matrix is ​​of great significance in the kinematics of the manipulator. It divides the joint space into two parts: one is the image space of J, which corresponds to the motion of the manipulator's end effector, and the other is the null space, where the motion of this part does not affect the motion of the end effector. During the obstacle avoidance process, the null space can be used to adjust the joint motion to achieve the obstacle avoidance function without interfering with the main task of the manipulator (given by For example, when obstacle avoidance is required, the null space can be used to generate joint motions to enable the robot arm to avoid obstacles while ensuring that the end effector can still move along the predetermined trajectory, because the motion in the null space does not change the velocity of the end effector in Cartesian space (given by constrained).

[0100] Please refer to Figure 2 , the robot arm link avoids obstacles such as Figure 2 As shown in the figure, O1O2 and O2O3 are the main obstacle avoidance links of the manipulator. After simplification, the links of most manipulators can be simplified to two main obstacle avoidance links. O1, O2, and O3 are the joints at both ends of the main obstacle avoidance links, and C1 and C2 are the perpendiculars from the obstacle center to the two simplified main obstacle avoidance links. The position vectors of the joints O1, O2, and O3 based on the manipulator base coordinate system can be obtained through the forward kinematics of the manipulator at each moment. The position vector OB of the center of the collision body can be obtained from the environmental data acquisition device. The position vectors of the perpendiculars C1 and C2 are then obtained according to the following formula.

[0101]

[0102] Furthermore, obtaining the position vector of the obstacle center in the preset area relative to the position vector of the perpendicular foot of the first simplified link and the second simplified link of the robotic arm in step S200 includes:

[0103] Step S210 , simplifying each link of the robotic arm into a first simplified link and a second simplified link.

[0104] The linkage structure of a seven-degree-of-freedom robotic arm is relatively complex. When designing an obstacle avoidance algorithm, if all the links are accurately modeled and analyzed, the computational complexity will be very large, resulting in inefficient algorithms and difficulty in achieving real-time control. Therefore, to simplify the problem, the linkage structure of the robotic arm is usually reasonably simplified. From the perspective of the actual movement and obstacle avoidance scenarios of the robotic arm, not all links have the same impact on obstacle avoidance. After analyzing a large number of motion conditions and obstacle avoidance requirements, it was found that certain links are more likely to collide with obstacles during movement or play a key role in obstacle avoidance decisions. Simplifying these key parts into a first simplified link and a second simplified link can greatly reduce the computational complexity without losing the main obstacle avoidance information.

[0105] The simplification process is typically based on the robot's geometric structure and motion characteristics. For example, the robot's links, which are longer, have a wider range of motion, and are more easily accessible to obstacles in the workspace, are selected as the primary targets for simplification. During simplification, some details that have little impact on obstacle avoidance, such as slight bends in the links and some unimportant connection structures, are ignored. However, key geometric features relevant to obstacle avoidance, such as the positional relationship between the joints at both ends of the links, are retained. At the same time, the simplified first and second links should accurately reflect the key motion information of the robot during obstacle avoidance, making the obstacle avoidance calculations and decisions based on them meaningful. This simplification not only helps improve the algorithm's computational efficiency but also makes the design and implementation of the obstacle avoidance algorithm clearer and easier to understand.

[0106] Step S220 , obtaining the position vectors of the endpoints of the first simplified link and the second simplified link based on the robot arm base coordinate system through the robot arm forward kinematics.

[0107] The forward kinematics of a robotic arm determines the position and posture of the end effector in space based on the angles or displacements of each joint in the robotic arm. For the simplified first and second links, the positions of their endpoints are closely related to the motion of each joint in the robotic arm. The mathematical model of forward kinematics is typically based on the geometric parameters of the links (such as link length, joint offsets, etc.) and joint variables (such as joint angles). Through a series of coordinate transformations and mathematical operations, the information in the joint space can be converted into the position information of the link endpoints in Cartesian space.

[0108] First, the kinematic model of the manipulator must be defined, such as the commonly used Denavit-Hartenberg (DH) model. A coordinate system must be established for each joint, and the DH parameters of each link must be determined. Then, by multiplying homogeneous coordinate transformation matrices, the transformation relationship from the manipulator's base coordinate system to the coordinate system of each link's endpoint can be calculated. Taking the endpoint of the first simplified link as an example, the transformation matrix from the base coordinate system to the endpoint's coordinate system is obtained by sequentially multiplying the homogeneous coordinate transformation matrices of each joint associated with that endpoint. From this transformation matrix, the position vector of that endpoint in the manipulator's base coordinate system can be extracted. This position vector accurately describes the spatial position of the first simplified link's endpoint, providing important foundational data for subsequent analysis of the relative positional relationship between obstacles and the link. A similar method is used to obtain the position vector of the second simplified link's endpoint in the base coordinate system.

[0109] Step S230: Obtain the position vector of the obstacle center in the preset area.

[0110] In practical applications, various sensors are typically used to obtain the position vector of the center of an obstacle in a preset area. For example, by scanning the surrounding environment, a lidar (lidar) radar can generate a series of point cloud data that reflects the shape and position information of the obstacle surface. This point cloud data is then processed using specific algorithms (such as clustering algorithms) to extract the geometric shape and center position of the obstacle, thereby obtaining the position vector of the obstacle center in a certain reference coordinate system. Visual sensors (such as cameras) can also be used to obtain obstacle location information. Using image processing technology, the images captured by the camera are analyzed to identify the outline and feature points of the obstacle. Then, using the principles of stereo vision (such as binocular vision or multi-viewing vision) combined with the camera's calibration parameters, the obstacle's position in space can be calculated, thereby obtaining the position vector of the obstacle's center.

[0111] To compare and calculate the position vector of the obstacle center with the robot arm's link endpoint, the obstacle center's position vector must be converted to the same coordinate system as the robot arm's base coordinate system. This typically involves performing a coordinate transformation. Based on the sensor's installation position and posture, a corresponding transformation matrix is ​​determined to convert the obstacle center's position vector in the sensor coordinate system to the robot arm's base coordinate system. This ensures that all relevant position information is in the same coordinate system, facilitating subsequent calculations and analysis based on geometric relationships.

[0112] Step S240 , calculating the position vector of the obstacle center in the preset area relative to the perpendicular foot of the first simplified link and the second simplified link.

[0113] The foot of the perpendicular is the intersection of the first and second simplified links, drawn perpendicularly from the obstacle center. During obstacle avoidance, the robot arm must move away from the obstacle. The position of the foot of the perpendicular is directly related to the relative position between the obstacle and the robot arm's links, and is crucial for calculating the speed and direction of obstacle avoidance.

[0114] Then, the vector direction of the Cartesian repulsive velocity is determined by the vectors of the perpendicular feet C1 and C2 and the obstacle center, as follows: Figure 3 As shown, if Figure 3 When OBC1 and OBC2 on the left are used as repulsive velocity vectors and the perpendicular feet C1 and C2 are the points of action of the repulsive velocity, since the positions of the two perpendicular feet are time-varying at each moment, the Jacobian matrix of the point relative to the manipulator base coordinate system is also time-varying at each moment, so it is necessary to recalculate the Jacobian matrix at the repulsive point at each moment.

[0115] And if Figure 3 Taking the right side as the reference, moving the point of action of the repulsive velocity parallel to the two joint endpoints can play the same repulsive role. At the same time, since the positions of the two joint endpoints on the connecting rod do not move with the movement of the robot arm, when obtaining the Jacobian matrix of the joint endpoints, you can even calculate the symbolic variable expression of the Jacobian matrix in advance. In this way, when updating the Jacobian matrix at each moment, you only need to do one substitution operation.

[0116] Furthermore, in step S300, the direction vector and velocity value of the Cartesian repulsive velocity of the manipulator are obtained based on the position vectors of the two perpendicular feet, including:

[0117] Step S310 : Based on the position vectors of the two perpendicular feet, the direction vector of the Cartesian repulsive velocity is obtained, and the action points of the repulsive velocity are set at the respective end points of the first simplified link and the second simplified link.

[0118] The repulsive velocity is applied at the endpoints of the first and second simplified links. These endpoints have fixed positions on the links. Compared to other possible application points (such as random points on the links or dynamic perpendicular points), using endpoints simplifies calculations. Furthermore, applying the repulsive velocity to the endpoints ensures that the robot arm remains away from obstacles. This also offers advantages in the subsequent calculation of the Jacobian matrix. Because the endpoints are relatively fixed, their Jacobian matrices can be partially calculated or stored in advance, avoiding frequent and complex calculations.

[0119] Step S320 : When the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link is greater than or equal to the maximum avoidance distance, the speed value of the Cartesian repulsion speed of the robotic arm is 0.

[0120] The maximum avoidance distance is set to determine when the robot arm needs to take obstacle avoidance action. When the distance d between the center of the obstacle in the preset area and the first simplified link or the second simplified link is greater than or equal to d m , the robot arm is within a safe distance from the obstacle and does not need to perform an obstacle avoidance maneuver. In practical applications, this prevents the robot arm from performing obstacle avoidance maneuvers unnecessarily, saving system resources and ensuring the normal operation efficiency of the robot arm. For example, in an industrial production environment, if the robot arm is away from an obstacle, it does not need to adjust its movement due to a potential collision risk, allowing it to focus on its normal operation tasks, improving overall production efficiency.

[0121] Step S330 : When the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link is less than the maximum avoidance distance, the speed value of the Cartesian repulsion speed of the robot arm is calculated based on the sine function.

[0122] In order to determine the magnitude of the Cartesian repulsion velocity, an adaptive method based on the sine function is used. A maximum avoidance distance d is set. m and maximum dodge speed v m , when the distance d from the center of the obstacle to the connecting rod is greater than or equal to d m When d is less than d m When the repulsive velocity vc i Calculate according to the following formula.

[0123] The use of the sine function makes the repulsion velocity between 0 and d mWhen d = 0, that is, when the obstacle is very close to the robot arm, the repulsion speed reaches its maximum value, prompting the robot arm to avoid it at maximum speed. As the distance d increases, the repulsion speed gradually decreases, which meets the actual obstacle avoidance requirements. That is, the closer the obstacle is, the faster the avoidance is required, and as the distance increases, the speed requirement gradually decreases.

[0124] Specifically, the velocity value vc of the Cartesian repulsive velocity of the robot arm is i for:

[0125]

[0126] Where i is the serial number of the first simplified connecting rod or the second simplified connecting rod, d m is the maximum avoidance distance, v m is the maximum avoidance speed, d is the distance between the obstacle center in the preset area and the first simplified link or the second simplified link, unit i is the unit vector of the repulsive velocity direction of the collision body on the i-th link, which is used to determine the directional consistency of the velocity.

[0127] As the distance d changes, the value of the sine function will change accordingly, so that the repulsion velocity is between 0 and v m This adaptive speed calculation method can dynamically adjust the obstacle avoidance speed based on the actual distance between the robot arm and the obstacle, ensuring that the robot arm has sufficient speed to avoid obstacles within the dangerous distance while avoiding unnecessary speed interference at the safe distance.

[0128] In step S400, the Cartesian repulsive velocity is mapped to the joint space using the Jacobian matrix at each joint endpoint as shown in the following formula:

[0129]

[0130] Here's J O1 、J O2 and J O3 is the Jacobian matrix at each joint endpoint. The Jacobian matrix describes the mapping from Cartesian space velocity to joint space velocity. For a seven-degree-of-freedom robotic arm, the velocity relationship between joint space and Cartesian space is nonlinear, but it can be approximated as a linear relationship locally. The Jacobian matrix is ​​the coefficient matrix of this linear approximation.

[0131] J O1 Represents the conversion relationship from the Cartesian velocity at the first joint endpoint to the joint velocity. When we multiply the Cartesian repulsive velocities vc1 and vc2 with the corresponding Jacobian matrices, we are actually converting the obstacle avoidance velocity requirements expressed in Cartesian space into velocity components in joint space.

[0132] At this time, the expected target joint velocity Substituting into the following formula, we can get the joint speed required for the robot arm to avoid obstacles. The joint speed is as follows.

[0133]

[0134] In the obstacle avoidance scenario, I 7x7 -J + J is the key to using zero space to adjust joint velocity to achieve obstacle avoidance. Adjustments to the null space projection matrix allow the robot arm to utilize the degrees of freedom in the null space to achieve obstacle avoidance without affecting its normal tasks. For example, when the robot arm needs to avoid an obstacle, by adjusting the joint velocities in the null space, the robot arm can avoid collisions with obstacles through minor joint adjustments while ensuring the normal task is completed, thus achieving a balance between obstacle avoidance and normal operation.

[0135] This combination combines the joint speed of normal tasks and the joint speed based on obstacle avoidance, and ultimately obtains the joint speed required for the robot arm to avoid obstacles. It not only meets the kinematic requirements for normal operation of the robot arm, but also can perform flexible obstacle avoidance operations according to the obstacles in the environment, enabling the robot arm to operate safely and efficiently in complex structured environments.

[0136] In addition, during the movement of the robot arm, not all collision objects pose a collision threat to it, such as Figure 4 As shown in the figure, when this happens, the collision body poses no collision threat to the links O1 and O2. However, if it is not filtered, this collision body will still generate a Cartesian repulsive velocity on the links O1 and O2, and generate corresponding obstacle avoidance joint velocities, thus affecting the motion of the robot arm. This is a situation that needs to be avoided. Refer to the OBB bounding box to use the bounding box vertices for shape judgment and use the vertices for obstacle filtering.

[0137] First, envelop the collision body with the OBB bounding box, and then determine which end of the connecting rod is closer to each vertex of the bounding box. Figure 4 For example, the connecting rod O1O2 in the figure is closer to the O2 end of the connecting rod. Then, the vectors from the O2 end to each vertex of the bounding box and the vectors are calculated respectively. If the angles are greater than This means that at this moment the bounding box OB poses no collision threat to the robot arm link O1O2, so there is no need to enter the repulsion velocity calculation process. Otherwise, there is a collision threat and repulsion is required.

[0138] Assume that the vertex of a collision body OBB bounding box is represented as vertex i(i=1...8), the center point is OB k The joint endpoints at both ends of a connecting rod are O j ,O j+1 ,The final discriminant is shown below.

[0139]

[0140] Therefore, in another embodiment of the present invention, the lightweight seven-DOF robotic arm link obstacle avoidance method in a structured environment further includes:

[0141] Step S510 : Envelope an obstacle in a preset area using an OBB bounding box to determine the OBB bounding box of the obstacle in the preset area.

[0142] When enveloping obstacles in a preset area, the system calculates the obstacle's geometric features (for example, for complex polyhedral obstacles, the positions of its vertices can be used) to find a minimal parallelepiped to enclose it. This bounding box effectively simplifies the representation of the obstacle, abstracting the irregular obstacle into a regular geometric shape, facilitating subsequent collision detection and calculation. Determining the OBB bounding box requires finding the object's principal directions and then aligning the bounding box's edges with these principal directions to generate an OBB bounding box that best fits the obstacle.

[0143] Step S520 : obtaining the angle between the line connecting each vertex of the OBB bounding box and the link endpoint and the link according to the link endpoint of the first simplified link or the second simplified link that is closer to the OBB bounding box.

[0144] Since the distances between different link endpoints and obstacles are different during the obstacle avoidance process of the robotic arm, in order to perform collision detection more effectively, selecting link endpoints that are closer to the OBB bounding box can reduce unnecessary calculations, and endpoints that are farther away have less impact on the current collision judgment.

[0145] In step S530 , if the angle values ​​are all greater than 90°, it is determined that there is no collision threat between the obstacle in the preset area and the connecting rod.

[0146] When all calculated angles are greater than 90°, this means that all vertices of the OBB bounding box are outside the connecting rod's line. The area extending from the connecting rod does not intersect with the OBB bounding box, so it can be determined that there is no collision threat between the connecting rod and the obstacle in the preset area. In other words, when all vertices meet this condition, the entire OBB bounding box is outside the connecting rod, thus avoiding unnecessary obstacle avoidance operations in this situation and improving the efficiency and accuracy of the obstacle avoidance algorithm.

[0147] In step S540 , if the angle values ​​are all less than or equal to 90°, it is determined that there is a collision threat between the obstacle in the preset area and the connecting rod.

[0148] On the contrary, when at least one angle value is less than or equal to 90°, this means that some vertices of the OBB bounding box are located on the "inside" or "upper side" of the line where the connecting rod is located, which indicates that the OBB bounding box may overlap or intersect with the connecting rod, that is, there is a risk of collision. This situation means that at the current position, the connecting rod of the robot arm may collide with the obstacle enclosed by the OBB bounding box, and it is necessary to initiate corresponding obstacle avoidance operations, such as generating Cartesian repulsion velocity, calculating obstacle avoidance joint velocity, etc. The judgment method based on the angle provides a method to quickly evaluate the collision threat between the obstacle and the connecting rod, thereby providing a clear basis for the subsequent obstacle avoidance strategy, so that the robot arm can make corresponding actions in time to avoid collision.

[0149] Accordingly, please refer to Figure 5 A second aspect of an embodiment of the present invention provides a lightweight seven-degree-of-freedom robotic arm link obstacle avoidance system in a structured environment. The lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method in a structured environment controls the robotic arm to avoid obstacles, including:

[0150] Projection matrix acquisition module 1, which is used to construct differential kinematic equations based on the Jacobian matrix of the manipulator and obtain the null space projection matrix of the manipulator;

[0151] A position vector calculation module 2 is used to obtain the position vector of the center of the obstacle in the preset area relative to the position vector of the perpendicular foot of the first simplified link and the second simplified link of the robotic arm;

[0152] A repulsion velocity calculation module 3 is used to obtain a direction vector and a velocity value of the Cartesian repulsion velocity of the manipulator based on the position vectors of the two perpendicular feet;

[0153] The obstacle avoidance speed calculation module 4 is used to map the Cartesian repulsion velocity of the robot arm to the joint space based on the Jacobian matrix of each end point of the first simplified link and the second simplified link, obtain the expected target joint velocity, and combine it with the null space projection matrix to obtain the joint velocity required for the robot arm to avoid obstacles.

[0154] Accordingly, a third aspect of an embodiment of the present invention provides an electronic device, comprising: at least one processor; and a memory connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor executes the above-mentioned lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method in the structured environment.

[0155] Accordingly, a fourth aspect of an embodiment of the present invention provides a computer-readable storage medium having computer instructions stored thereon, which, when executed by a processor, implements the lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method in the above-mentioned structured environment.

[0156] The embodiment of the present invention aims to protect a lightweight seven-degree-of-freedom robot arm link obstacle avoidance method and system for a structured environment, wherein the method includes the following steps: constructing a differential kinematic equation based on the Jacobian matrix of the robot arm to obtain the null space projection matrix of the robot arm; obtaining the position vector of the center of the obstacle in the preset area relative to the position vector of the perpendicular foot of the first simplified link and the second simplified link of the robot arm; based on the position vector of the two perpendicular feet, obtaining the direction vector and velocity value of the Cartesian repulsion velocity of the robot arm; based on the Jacobian matrix of each end point of the first simplified link and the second simplified link, mapping the Cartesian repulsion velocity of the robot arm to the joint space to obtain the desired target joint velocity, and combining the null space projection matrix to obtain the joint velocity required for the robot arm to avoid obstacles. The above technical solution has the following effects:

[0157] 1. The obstacle avoidance repulsion velocity action point is translated to the two joint ends of the obstacle avoidance link, eliminating the need for repeated calculation of the Jacobian matrix. Traditionally, if the time-varying foot of the perpendicular is used as the repulsion velocity action point, the Jacobian matrix changes with each moment of the perpendicular's position, necessitating real-time recalculation. However, since the joint endpoints are fixed on the link, their Jacobian matrices can be pre-calculated as symbolic variables, requiring only substitution operations at runtime. This significantly reduces the amount of computation and the demand for computing resources (such as processor computing power and memory), enabling the robotic arm control system to operate efficiently even with limited resources.

[0158] 2. Adopting an adaptive repulsion velocity generation method based on a sine function, the Cartesian obstacle avoidance velocity is adjusted in real time according to the distance between the obstacle and the robot arm's linkage, enabling the robot arm to respond appropriately to different levels of danger. Furthermore, the Cartesian repulsion velocity is accurately mapped to the joint space and combined with the null space projection matrix to obtain the obstacle avoidance joint velocity. This fully considers the kinematic constraints of the robot arm and ensures the coordinated motion of each joint during the obstacle avoidance process.

[0159] 3. The proposed obstacle screening mechanism can accurately identify obstacles that pose a collision threat to the robot arm's linkage, avoiding unnecessary obstacle avoidance calculations for non-threatening obstacles. It also prevents the mishandling of non-threatening obstacles from interfering with the normal movement of the robot arm, thereby significantly improving the robot arm's obstacle avoidance accuracy and operational efficiency in structured environments.

[0160] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0161] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0162] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0163] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0164] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit it. Although the present invention has been described in detail with reference to the above embodiments, ordinary technicians in the field should understand that the specific implementation methods of the present invention can still be modified or replaced by equivalents. Any modification or equivalent replacement that does not depart from the spirit and scope of the present invention should be covered by the scope of protection of the claims of the present invention.

Claims

1. A lightweight seven-degree-of-freedom robot arm link obstacle avoidance method in a structured environment, characterized in that: The steps include: Construct differential kinematic equations based on the Jacobian matrix of the manipulator to obtain the null space projection matrix of the manipulator; Obtaining a position vector of a center of an obstacle in a preset area relative to a position vector of a perpendicular foot of a first simplified link and a second simplified link of the robotic arm; Based on the position vectors of the two perpendicular feet, obtaining the direction vector and velocity value of the Cartesian repulsive velocity of the robotic arm; Based on the Jacobian matrix of each endpoint of the first simplified link and the second simplified link, the Cartesian repulsive velocity of the robotic arm is mapped to the joint space to obtain the expected target joint velocity, and the joint velocity required for obstacle avoidance of the robotic arm is obtained by combining the null space projection matrix.

2. The lightweight seven-DOF robot arm link obstacle avoidance method for structured environments according to claim 1, characterized in that: The differential kinematics equation is constructed based on the Jacobian matrix of the manipulator to obtain the null space projection matrix of the manipulator, including: Construct the differential kinematic equations based on the Jacobian matrix of the seven-degree-of-freedom manipulator; In combination with a preset target joint velocity of the robotic arm, solving a joint velocity that satisfies the differential kinematic equation and is close to the preset target joint velocity is constructed as a quadratic programming problem; The quadratic programming problem is solved by the Lagrange multiplier method to obtain the null space projection matrix of the robotic arm.

3. The lightweight seven-DOF robot arm link obstacle avoidance method for structured environments according to claim 2, characterized in that: The differential kinematic equation is: in, is the velocity vector of the end effector of the robot arm in Cartesian space, is the joint velocity vector, J is the Jacobian matrix; The quadratic programming problem is: in, is the preset target joint speed; The null space projection matrix N is: N=(I 7x7 -J + J); Where λ is the Lagrange multiplier vector, J T is the Jacobian matrix transpose, J + is the pseudo-inverse of the Jacobian matrix, I 7x7 is the 7*7 identity matrix.

4. The lightweight seven-DOF robot arm link obstacle avoidance method for structured environments according to claim 1, characterized in that: The obtaining of the position vector of the center of the obstacle in the preset area relative to the position vector of the perpendicular foot of the first simplified link and the second simplified link of the robotic arm includes: Simplifying each connecting rod of the robotic arm into a first simplified connecting rod and a second simplified connecting rod; Obtaining position vectors of endpoints of the first simplified link and the second simplified link based on a base coordinate system of the manipulator through forward kinematics of the manipulator; Obtaining the position vector of the obstacle center in the preset area; Calculate the position vector of the center of the obstacle in the preset area relative to the perpendicular foot of the first simplified link and the second simplified link.

5. The lightweight seven-DOF robot arm link obstacle avoidance method for structured environments according to claim 1, characterized in that: The obtaining of the direction vector and the velocity value of the Cartesian repulsive velocity of the robotic arm based on the position vectors of the two perpendicular feet includes: Based on the position vectors of the two perpendicular feet, a direction vector of the Cartesian repulsive velocity is obtained, and the repulsive velocity action points are set at the respective end points of the first simplified connecting rod and the second simplified connecting rod; When the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link is greater than or equal to the maximum avoidance distance, the speed value of the Cartesian repulsion speed of the robotic arm is 0; When the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link is less than the maximum avoidance distance, a speed value of the Cartesian repulsion speed of the robotic arm is calculated based on a sine function.

6. The lightweight seven-DOF robot arm link obstacle avoidance method for structured environments according to claim 5, characterized in that: The velocity value vc of the Cartesian repulsive velocity of the manipulator i for: Wherein, i is the serial number of the first simplified connecting rod or the second simplified connecting rod, d m is the maximum avoidance distance, v m is the maximum avoidance speed, d is the distance between the center of the obstacle in the preset area and the first simplified link or the second simplified link, unit i is the unit vector of the repulsive velocity direction of the collision body on the i-th link.

7. The lightweight seven-DOF robot link obstacle avoidance method for a structured environment according to any one of claims 1 to 6, characterized in that: Also includes: Envelope an obstacle in the preset area using an OBB bounding box to determine the OBB bounding box of the obstacle in the preset area; According to the link endpoint of the first simplified link or the second simplified link that is closer to the OBB bounding box, obtain the angle between the line connecting each vertex of the OBB bounding box and the link endpoint and the link; If the angle values ​​are all greater than 90°, it is determined that there is no collision threat between the obstacle in the preset area and the connecting rod; If the angle values ​​are all less than or equal to 90°, it is determined that there is a collision threat between the obstacle in the preset area and the connecting rod.

8. A lightweight seven-degree-of-freedom robotic arm link obstacle avoidance system for structured environments, characterized in that: The lightweight seven-degree-of-freedom robot arm link obstacle avoidance method based on the structured environment according to any one of claims 1 to 7 controls the robot arm to avoid obstacles, comprising: The projection matrix acquisition module is used to construct the differential kinematic equation based on the Jacobian matrix of the manipulator and obtain the null space projection matrix of the manipulator; a position vector calculation module, configured to obtain a position vector of a center of an obstacle in a preset area relative to a position vector of a perpendicular foot of a first simplified link and a second simplified link of the robotic arm; a repulsion velocity calculation module, configured to obtain a direction vector and a velocity value of a Cartesian repulsion velocity of the manipulator based on the position vectors of the two perpendicular feet; An obstacle avoidance speed calculation module is used to map the Cartesian repulsion velocity of the manipulator to the joint space based on the Jacobian matrix of each endpoint of the first simplified link and the second simplified link, obtain the expected target joint velocity, and combine it with the null space projection matrix to obtain the joint velocity required for the manipulator to avoid obstacles.

9. An electronic device, characterized in that: include: at least one processor; And a memory connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method for a structured environment as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that Computer instructions are stored thereon, and when the instructions are executed by a processor, a lightweight seven-degree-of-freedom robotic arm link obstacle avoidance method for a structured environment as described in any one of claims 1 to 7 is implemented.

Citation Information

Cited By

  • Cooperative anti-collision control method and system for multiple mechanical arms of robot

    CN121928571A