Mechanical arm obstacle avoidance path planning method based on improved RRT* algorithm

By improving the RRT* algorithm, combining artificial potential field and sensor information, the problem of slow convergence speed and inability to avoid obstacles in real time in robotic arm path planning is solved, and a more efficient and safe robotic arm obstacle avoidance path planning is achieved.

CN119820575AActive Publication Date: 2025-04-15NANJING UNIV OF AERONAUTICS & ASTRONAUTICS
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202510160856.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-13
Publication Date
2025-04-15
Estimated Expiration
2045-02-13

AI Technical Summary

Technical Problem

The traditional RRT* algorithm converges slowly in robotic arm path planning, and the fixed step size leads to inefficient planning, and cannot deal with obstacles in the workspace in real time, posing safety hazards.

Method used

By introducing artificial potential fields, depth cameras and sensor information, the RRT* algorithm is improved, random point generation is restricted, step size change formulas are optimized, and path optimization is combined with Nurbs curves to realize obstacle avoidance path planning of the robot arm.

Benefits of technology

Improves the efficiency and safety of robotic arm obstacle avoidance path planning, can quickly respond and avoid obstacles that appear in real time, ensuring that robotic arm can safely reach its target position.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119820575A_ABST
    Figure CN119820575A_ABST
Patent Text Reader

Abstract

The invention provides a mechanical arm obstacle avoidance path planning method based on an improved RRT * algorithm to solve the problems that current mechanical arm path planning is low in speed, low in efficiency and incapable of coping with new obstacles in time, and the mechanical arm obstacle avoidance path planning method comprises the steps that a working space of a mechanical arm is established, and a starting point, a target point and the obstacles are added; a mechanical arm and an obstacle are simplified into simple geometries, and an artificial potential field of a working space of the mechanical arm is established; an improved RRT * algorithm is combined with an artificial potential field, and a motion route of a mechanical arm is planned after Nurbs curve smoothing processing; movement of the mechanical arm is continuously controlled by acquiring real-time signals fed back by a depth camera and sensors on the mechanical arm, path planning is adjusted, and obstacles are avoided so that the mechanical arm can reach the target position. Based on the artificial potential field, the improved RRT * algorithm is combined with real-time data of the sensor and the depth camera, real-time obstacle avoidance of the mechanical arm can be achieved to reach the designated position, and therefore the safety of the mechanical arm in the operation process is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of automatic obstacle avoidance of a robot arm, and in particular to a robot arm obstacle avoidance path planning method based on an improved RRT* algorithm. Background Art

[0002] In automated operations, robotic arms play a vital role. Robotic arm path planning and obstacle avoidance are key technologies for the automatic operation of robotic arms, which will directly determine whether the robotic arms can achieve automatic operation.

[0003] There are already many robot obstacle avoidance path planning methods, and the commonly used algorithms are A*, D*, RRT*, D*lite, LPA*, etc. The key feature of the RRT* algorithm is to continuously optimize the connection between nodes to find the optimal path. Therefore, as the number of iterations increases, the algorithm will converge to the global optimal path in the absence of obstacles. In addition, RRT* can perform path planning in high-dimensional and complex environments, and is suitable for fields such as autonomous robot navigation. However, the traditional RRT* algorithm has a slow convergence speed and a fixed step size, which leads to low planning efficiency. In addition, when the robot moves along the planned path, it cannot cope with obstacles that do not appear in the workspace, and cannot achieve real-time obstacle avoidance, which poses a safety hazard. Summary of the invention

[0004] In view of the problems existing in the prior art, the present invention proposes a robot arm obstacle avoidance path planning method based on the improved RRT* algorithm. By introducing information such as artificial potential field, depth camera and sensor, and combining the improvement of the RRT* algorithm, the robot arm's obstacle avoidance path planning is performed to improve the efficiency and safety of obstacle avoidance path planning.

[0005] In order to achieve the above technical objectives, the present invention provides the following technical solutions:

[0006] A robot arm obstacle avoidance path planning method based on an improved RRT* algorithm, which specifically includes:

[0007] S1. Establish a three-dimensional workspace of the robot arm, determine the three-dimensional coordinates of the starting point and the target point in the three-dimensional workspace, and add obstacles;

[0008] S2. Convert the robot arm and obstacles into simple geometric bodies, establish an artificial potential field in the three-dimensional workspace of the robot arm, and analyze the force conditions under the artificial potential field during the movement of the robot arm;

[0009] S3. Use the improved RRT* algorithm and the artificial potential field to plan the initial motion path of the robot arm; then use the Nurbs curve for interpolation to optimize the initial motion path to obtain a smooth motion path as the final motion path of the robot arm;

[0010] S4. When the robot arm moves along the final motion path, the sensor and depth camera return data in real time to detect dynamic obstacles. When the robot arm receives the obstacle information, it performs different processing according to the actual situation and finally reaches the target position.

[0011] Furthermore, step S2 specifically includes:

[0012] S21, simplifying the robot arm into a combination of multiple cylinders, wherein the length of each cylinder is the same as the length of each section of the robot arm, and the radius of the bottom surface is slightly larger than the radius of the envelope cylinder of each section of the robot arm; simplifying the obstacles added in the three-dimensional workspace into simple geometric bodies according to the appearance, wherein the simple geometric bodies include a cuboid, a cylinder and a sphere;

[0013] S22. Establish an artificial potential field in the workspace of the robot arm, set the repulsive field of the obstacle on the robot arm and the gravitational field of the target point on the robot arm, and calculate the repulsive force F received by the robot arm under the artificial potential field. rep (X) and gravity F gra (X), and then the resultant force F on the robot arm is obtained t (X) = F rep (X)+F gra (X).

[0014] More specifically, step S22 specifically includes:

[0015] S221. Set the repulsive force field of the obstacle on the end of the robot arm to:

[0016]

[0017] Among them, η is the repulsion gain coefficient, X is the position coordinate of the robot in the workspace, and X g is the position coordinate of the target point, d is the shortest distance between the robot and the edge of the obstacle, d0 is a constant, and m is any real number greater than 0;

[0018] S222. Calculate the repulsive force on the robot arm:

[0019]

[0020] Among them, α1 is the unit vector from the point closest to the robot to the obstacle, and α0 is the unit vector from the robot to the target point;

[0021] S223. Set the gravitational field of the target point to the robot arm as:

[0022]

[0023] Where, k is the gravitational gain coefficient;

[0024] S224. Calculate the gravitational force on the robot arm:

[0025]

[0026] S225. Get the resultant force F on the robot arm t (X) is: F t (X) = F rep (X)+F gra (X).

[0027] Furthermore, step S3 specifically includes:

[0028] S31. Create a search tree directory RRTtree, initialize the starting point of the robot as the first point of the search tree, define the algorithm's exploration step length as ΔS, and its change formula is:

[0029]

[0030] Among them, d min d max is the minimum and maximum value of the set step size, k gra and μ are adjustment parameters, and different parameters are set according to different working environments; F rep 、F gra are the repulsive force and attractive force on the robot arm under the artificial potential field; e is a natural constant;

[0031] S32, create a sampling space Sample, all random points are generated in the sampling space, and each generated random point s i (x, y, z) satisfies the following conditions:

[0032] Sample={s i (x,y,z)|i∈R,F rep (X)≤F1∪F gra (X)≥F2};

[0033] Where X = (x, y, z) represents the coordinates of the random point, F rep (X), F gra (X) are the repulsive force and attractive force on the robot arm at the random point; F1 and F2 are the set maximum repulsive force and minimum attractive force respectively; when the repulsive force F rep (X)>F1, the random point is considered invalid; and when the gravitational force F gra When (X)≥F2, the influence of repulsion is not considered and the generated random points are still retained;

[0034] S33. Generate a random point X in the sampling spacerand , traverse the search tree RRTtree, calculate the Euclidean distance from all points in it to the current random point; select the point with the shortest Euclidean distance as the nearest point X near , take the direction of the line connecting the nearest point and the random point as the growth direction of the search tree, and generate a new node X with a step size of ΔS new , the formula is:

[0035]

[0036] If the line connecting the nearest point and the random point collides with the obstacle geometry, a new random point is generated; if a new node X is successfully generated new , then the nearest point X near For the new node X new The parent node of

[0037] S34, obtain the new node X new All neighboring nodes within the radius R are taken as the new node X in turn. new The candidate parent node of the new node X new The total path from the candidate parent node to the starting point; the corresponding adjacent node with the shortest total path is used as the new node X new The new parent node of

[0038] S35, then new node X new For all neighboring nodes, calculate the candidate parent nodes of each neighboring node through the new node X new If the total path to the starting point is less than the total path from the neighboring node to the starting point via the original parent node, the new node X is determined. new is the parent node of the adjacent node, otherwise the original parent node of the adjacent node is retained;

[0039] S36, repeat steps S33-S35 until there is a node S g Arrive within the sphere with the target point as the center and radius r; connect S g and the target point, and from S g Start backtracking the parent node and keep backtracking to the starting point, thus forming the initial motion path of the robot arm;

[0040] S37. Use the Nurbs curve to interpolate the preliminary motion path of the robot arm to obtain a smooth motion path as the final motion path of the robot arm, and the robot arm moves according to the path.

[0041] Furthermore, step S4 specifically includes:

[0042] S41, installing two depth cameras on both sides of the front joint of the end of the robotic arm, installing an infrared sensor on the top, and installing a positioning sensor on the bottom; the depth camera, infrared sensor and positioning sensor are all connected to the robotic arm controller;

[0043] S42, adjusting the detection range of the depth camera, and when an obstacle appears in the detection range of the depth camera, the depth camera outputs a high level, otherwise it outputs a low level; and the obstacles are divided into dynamic obstacles and static obstacles according to the change of point cloud data;

[0044] S43, the robot arm moves according to the final motion path of step S3. If the depth camera outputs a high level, the movement of the robot arm is suspended at this time, and the positioning sensor and the infrared sensor are turned on to detect obstacle information; the obstacles are processed separately according to their dynamic and static conditions; and a judgment is made: if the obstacle can be avoided, re-planning is performed on the basis of the final motion path to reach the target point; if the obstacle cannot be avoided, an alarm is issued to notify the operator to manually remove the obstacle.

[0045] More specifically, the step S42 of classifying obstacles into dynamic obstacles and static obstacles according to the change of point cloud data is as follows:

[0046] S421. Define the point cloud data change rate AP to reflect the obstacle situation on the path. The formula is:

[0047]

[0048] Among them, Δt is the detection time, P i is the number of point clouds that enter the detection range of the depth camera within Δt time, P o is the number of point clouds that leave the detection range of the depth camera within Δt time;

[0049] S422, setting the point cloud data change threshold P t ; When AP>P t When ΔP≤P t When the obstacle on the path is considered to be a static obstacle, different processing methods are adopted in step S43 according to different obstacle categories.

[0050] More specifically, step S43 specifically includes:

[0051] S431, if the obstacle on the path is a dynamic obstacle, the robot arm is paused until there is no obstacle point cloud in the depth camera; if the obstacle still exists after a certain time threshold t, an alarm is issued to notify the operator to handle it;

[0052] S432: If the obstacle on the path is a static obstacle, the detection data returned by the positioning sensor and the infrared sensor are analyzed, the position of the obstacle in the workspace of the robot arm is obtained using the depth camera and the positioning sensor, and the thickness information of the obstacle is obtained in combination with the infrared sensor;

[0053] S433, adding the position and thickness information of the obstacle to the three-dimensional workspace of the robot, returning the final motion path of the robot, searching for the node closest to the obstacle from the starting point and the node closest to the obstacle from the target point on the path, and ensuring that the lines connecting these two nodes and their parent nodes and child nodes cannot interfere with the obstacle. If interference occurs, discard it and reselect other closer nodes until there is no interference with the obstacle; these two nodes are respectively S n , S m ;

[0054] S434, S n As a starting point, S m As the end point, repeat step S3, plan a new path between the two nodes, and move along the new path; if the new path cannot be planned, it means that the current obstacle cannot be crossed, and an alarm is issued to notify the operator to handle it.

[0055] Based on the above technical solution, the present invention has at least the following beneficial effects:

[0056] 1. The present invention aims at the problem that the RRT* algorithm has a slow convergence speed and a fixed step size, which leads to low planning efficiency; it proposes to combine an artificial potential field to limit the generation of random points, thereby improving the convergence speed; and it proposes a formula for changing the step size, so that the step size becomes smaller when approaching obstacles and target points, and becomes larger when away from obstacles, thereby improving planning efficiency.

[0057] 2. The present invention combines the information of the depth camera and the sensor, and feeds it back to the robotic arm in real time, and takes different response measures according to different obstacle information, so that the robotic arm can respond to obstacles that appear in real time and improve the safety of the robotic arm during operation. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0059] Figure 1 This is an overall flow chart of a robot arm obstacle avoidance path planning method based on an improved RRT* algorithm proposed in the present invention;

[0060] Figure 2A schematic diagram of the installation of a depth camera and a sensor involved in the method proposed in the present invention;

[0061] Figure 3 This is a specific process diagram of the method proposed in the present invention, which combines the artificial potential field with the improved RRT* algorithm for path planning, and the depth camera with the sensor for real-time obstacle avoidance. DETAILED DESCRIPTION

[0062] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.

[0063] Although the steps in the present invention are arranged with numbers, they are not used to limit the order of the steps. Unless the order of the steps is clearly stated or the execution of a certain step requires other steps as a basis, the relative order of the steps can be adjusted. It is understood that the term "and / or" used in this article involves and covers any and all possible combinations of one or more of the associated listed items.

[0064] Please refer to Figure 1-Figure 3 , showing a specific implementation of this embodiment, this embodiment establishes a robotic arm workspace in three-dimensional space, and adds obstacles, starting points, target points and other information in the workspace, based on which an artificial potential field of the robotic arm workspace is established. Then, the RRT* algorithm is improved in combination with the artificial potential field: the random point generation of the RRT* algorithm is restricted by certain conditions, and the gravity and repulsion in the artificial potential field are used as parameters for the step size change of the RRT* algorithm. Then, during the operation of the robotic arm, the information fed back by the depth camera and sensor is used to respond to obstacles that appear in real time, and the type of obstacle is determined based on the feedback information, so as to take different obstacle avoidance measures, and finally achieve the purpose of obstacle avoidance path planning.

[0065] like Figure 1 As shown, the present invention proposes a robot arm obstacle avoidance path planning method based on an improved RRT* algorithm, which specifically includes the following steps:

[0066] S1. Establish a three-dimensional workspace of the robot arm, determine the three-dimensional coordinates of the starting point and the target point in the three-dimensional workspace, and add obstacles;

[0067] S2. Convert the robot arm and obstacles into simple geometric bodies, establish an artificial potential field in the three-dimensional workspace of the robot arm, and analyze the force conditions under the artificial potential field during the movement of the robot arm;

[0068] As a preferred implementation, step S2 specifically includes:

[0069] S21, simplifying the robot arm into a combination of multiple cylinders, wherein the length of each cylinder is the same as the length of each section of the robot arm, and the radius of the bottom surface is slightly larger than the radius of the envelope cylinder of each section of the robot arm; simplifying the obstacles added in the three-dimensional workspace into simple geometric bodies according to the appearance, wherein the simple geometric bodies include a cuboid, a cylinder and a sphere;

[0070] S22. Establish an artificial potential field in the workspace of the robot arm, set the repulsive field of the obstacle on the robot arm and the gravitational field of the target point on the robot arm, and calculate the repulsive force F received by the robot arm under the artificial potential field. rep (X) and gravity F gra (X), and then the resultant force F on the robot arm is obtained t (X) = F rep (X)+F gra (X), specifically:

[0071] S221. Set the repulsive force field of the obstacle on the end of the robot arm to:

[0072]

[0073] Among them, η is the repulsion gain coefficient, X is the position coordinate of the robot in the workspace, and X g is the position coordinate of the target point, d is the shortest distance between the robot and the edge of the obstacle, d0 is a constant, and m is any real number greater than 0;

[0074] S222. Calculate the repulsive force on the robot arm:

[0075]

[0076] Among them, α1 is the unit vector from the point closest to the robot to the obstacle, and α0 is the unit vector from the robot to the target point;

[0077] S223. Set the gravitational field of the target point to the robot arm as:

[0078]

[0079] Where, k is the gravitational gain coefficient;

[0080] S224. Calculate the gravitational force on the robot arm:

[0081]

[0082] S225. Get the resultant force F on the robot arm t (X) is: F t (X) = F rep (X)+F gra (X).

[0083] S3. Use the improved RRT* algorithm and the artificial potential field to plan the initial motion path of the robot arm; then use the Nurbs curve for interpolation to optimize the initial motion path to obtain a smooth motion path as the final motion path of the robot arm;

[0084] As a preferred embodiment, Figure 3 As shown, step S3 specifically includes:

[0085] S31. Create a search tree directory RRTtree, initialize the starting point of the robot as the first point of the search tree, define the algorithm's exploration step length as ΔS, and its change formula is:

[0086]

[0087] Among them, d min d max is the minimum and maximum value of the set step size, k gra and μ are adjustment parameters, and different parameters are set according to different working environments; F rep 、F gra are the repulsive force and attractive force on the robot arm under the artificial potential field; e is a natural constant;

[0088] The step size set in this way can ensure that it always changes within a reasonable range, and becomes shorter when approaching obstacles and target points, and becomes longer when far away from obstacles, which can make the algorithm converge faster and ensure the safety of the path;

[0089] S32, create a sampling space Sample, all random points are generated in the sampling space, and each generated random point s i (x, y, z) satisfies the following conditions:

[0090] Sample={s i (x,y,z)|i∈R,F rep (X)≤F1∪F gra (X)≥F2};

[0091] Where X = (x, y, z) represents the coordinates of the random point, F rep (X), F gra (X) are the repulsive force and attractive force on the robot arm at the random point; F1 and F2 are the set maximum repulsive force and minimum attractive force respectively; when the repulsive force F rep (X)>F1, the random point is considered invalid; and when the gravitational force F graWhen (X)≥F2, the influence of repulsion is not considered and the generated random points are still retained; through the screening of the artificial potential field, the points of little value are filtered out, which further ensures the rapid convergence of the RRT* algorithm and the smoothness and reliability of the planned path;

[0092] S33. Generate a random point x in the sampling space rand , traverse the search tree RRTtree, calculate the Euclidean distance from all points in it to the current random point; select the point with the shortest Euclidean distance as the nearest point X near , take the direction of the line connecting the nearest point and the random point as the growth direction of the search tree, and generate a new node X with a step size of ΔS new , the formula is:

[0093]

[0094] If the line connecting the nearest point and the random point collides with the obstacle geometry, a new random point is generated; if a new node X is successfully generated new , then the nearest point X near For the new node X new The parent node of

[0095] S34, obtain the new node X new All neighboring nodes within the radius R are taken as the new node X in turn. new The candidate parent node of the new node X new The total path from the candidate parent node to the starting point; the corresponding adjacent node with the shortest total path is used as the new node X new The new parent node of

[0096] S35, then new node X new For all neighboring nodes, calculate the candidate parent nodes of each neighboring node through the new node X new If the total path to the starting point is less than the total path from the neighboring node to the starting point via the original parent node, the new node X is determined. new is the parent node of the adjacent node, otherwise the original parent node of the adjacent node is retained;

[0097] S36, repeat steps S33-S35 until there is a node S g Arrive within the sphere with the target point as the center and radius r; connect S g and the target point, and from S g Start backtracking the parent node and keep backtracking to the starting point, thus forming the initial motion path of the robot arm;

[0098] S37. Use the Nurbs curve to interpolate the preliminary motion path of the robot arm to obtain a smooth motion path as the final motion path of the robot arm, and the robot arm moves according to the path.

[0099] In this embodiment, the specific formula of the Nurbs curve at point u is:

[0100]

[0101] Where n is the number of control points, p is the order of the curve, and P i are the coordinates of the control points, w i is the weight of the control point, N i,p (u) is the i-th basis function;

[0102] N i,p (u) is defined as follows:

[0103] When p = 0:

[0104]

[0105] When p>0:

[0106]

[0107] where u i is the node value in the node vector; the node vector U = {u0, u1, ..., u m}, m=n+p+1.

[0108] S4: When the robot moves along the final motion path, the sensor and depth camera return data in real time to detect dynamic obstacles. When the robot receives the obstacle information, it performs different processing according to the actual situation and finally reaches the target position.

[0109] As a preferred embodiment, Figure 3 As shown, step S4 specifically includes:

[0110] S41, such as Figure 2 As shown, two depth cameras are installed on both sides of the front joint of the end of the robotic arm, an infrared sensor is installed on the top, and a positioning sensor is installed on the bottom; the depth camera, infrared sensor and positioning sensor are all connected to the robotic arm controller;

[0111] S42, adjusting the detection range of the depth camera, and when an obstacle appears in the detection range of the depth camera, the depth camera outputs a high level, otherwise it outputs a low level; and the obstacles are divided into dynamic obstacles and static obstacles according to the change of point cloud data;

[0112] More specifically, the method for distinguishing between dynamic and static obstacles is:

[0113] S421. Define the point cloud data change rate ΔP to reflect the obstacle situation on the path. The formula is:

[0114]

[0115] Among them, Δt is the detection time, P i is the number of point clouds that enter the detection range of the depth camera within Δt time, P o is the number of point clouds that leave the detection range of the depth camera within Δt time;

[0116] S422, setting the point cloud data change threshold P t ; When ΔP>P t When ΔP≤P t When the obstacle on the path is considered to be a static obstacle; different processing methods are adopted in step S43 according to different types of obstacles;

[0117] S43, the robot arm moves according to the final motion path of step S3. If the depth camera outputs a high level, the robot arm's action is suspended at this time, and the positioning sensor and infrared sensor are turned on to detect obstacle information; the obstacles are processed according to their dynamic and static conditions; and a judgment is made: if the obstacle can be avoided, replanning is performed based on the final motion path to reach the target point; if the obstacle cannot be avoided, an alarm is issued to notify the operator to manually remove the obstacle;

[0118] More specifically, step S43 specifically includes:

[0119] S431, if the obstacle on the path is a dynamic obstacle, the robot arm is paused until there is no obstacle point cloud in the depth camera; if the obstacle still exists after a certain time threshold t, an alarm is issued to notify the operator to handle it;

[0120] S432: If the obstacle on the path is a static obstacle, the detection data returned by the positioning sensor and the infrared sensor are analyzed, the position of the obstacle in the workspace of the robot arm is obtained using the depth camera and the positioning sensor, and the thickness information of the obstacle is obtained in combination with the infrared sensor;

[0121] S433, adding the position and thickness information of the obstacle to the three-dimensional workspace of the robot, returning the final motion path of the robot, searching for the node closest to the obstacle from the starting point and the node closest to the obstacle from the target point on the path, and ensuring that the lines connecting these two nodes and their parent nodes and child nodes cannot interfere with the obstacle. If interference occurs, discard it and reselect other closer nodes until there is no interference with the obstacle; these two nodes are respectively S n , S m ;

[0122] S434, Sn As a starting point, S m As the end point, repeat step S3, plan a new path between the two nodes, and move along the new path; if the new path cannot be planned, it means that the current obstacle cannot be crossed, and an alarm is issued to notify the operator to handle it.

[0123] In summary, the obstacle avoidance path planning method for the robot arm proposed in the present invention is based on the artificial potential field. Aiming at the problems of slow convergence speed and fixed step size of the RRT* algorithm, the existing RRT* algorithm is improved. At the same time, a depth camera and sensor are installed to deal with new obstacles, which can ensure that the robot arm reaches the target position quickly and safely.

[0124] Those skilled in the art can understand that all or part of the steps in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a program, so the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0125] It will be apparent to those skilled in the art that the invention is not limited to the details of the exemplary embodiments described above and that the invention can be implemented in other specific forms without departing from the spirit or essential features of the invention. Therefore, the embodiments should be considered exemplary and non-limiting in all respects, and the scope of the invention is defined by the appended claims rather than the foregoing description, and it is intended that all variations falling within the meaning and scope of the equivalent elements of the claims be included in the invention. Any reference numeral in a claim should not be considered as limiting the claim to which it relates.

[0126] In addition, it should be understood that although the present specification is described according to implementation modes, not every implementation mode contains only one independent technical solution. This description of the specification is only for the sake of clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment may also be appropriately combined to form other implementation modes that can be understood by those skilled in the art.

Claims

1. A robot arm obstacle avoidance path planning method based on an improved RRT* algorithm, characterized in that: The specific steps include: S1. Establish a three-dimensional workspace of the robot arm, determine the three-dimensional coordinates of the starting point and the target point in the three-dimensional workspace, and add obstacles; S2. Convert the robot arm and obstacles into simple geometric bodies, establish an artificial potential field in the three-dimensional workspace of the robot arm, and analyze the force conditions under the artificial potential field during the movement of the robot arm; S3. Use the improved RRT* algorithm and the artificial potential field to plan the initial motion path of the robot arm; then use the Nurbs curve for interpolation to optimize the initial motion path to obtain a smooth motion path as the final motion path of the robot arm; S4, while the robot arm moves along the final motion path, the sensor and depth camera return data in real time to detect dynamic obstacles; When the robotic arm receives information about obstacles, it processes them differently according to the actual situation and finally reaches the target position.

2. According to claim 1, a robot arm obstacle avoidance path planning method based on improved RRT* algorithm is characterized in that: Step S2 specifically includes: S21, simplifying the robot arm into a combination of multiple cylinders, wherein the length of each cylinder is the same as the length of each section of the robot arm, and the radius of the bottom surface is slightly larger than the radius of the envelope cylinder of each section of the robot arm; simplifying the obstacles added in the three-dimensional workspace into simple geometric bodies according to the appearance, wherein the simple geometric bodies include a cuboid, a cylinder and a sphere; S22. Establish an artificial potential field in the workspace of the robot arm, set the repulsive field of the obstacle on the robot arm and the gravitational field of the target point on the robot arm, and calculate the repulsive force F received by the robot arm under the artificial potential field. rep (X) and gravity F gra (X), and then the resultant force F on the robot arm is obtained t (X) = F rep (X)+F gra (X).

3. The method for obstacle avoidance path planning of a manipulator based on an improved RRT* algorithm according to claim 2, characterized in that: Step S22 specifically includes: S221. Set the repulsive force field of the obstacle on the end of the robot arm to: Among them, η is the repulsion gain coefficient, X is the position coordinate of the robot in the workspace, and X g is the position coordinate of the target point, d is the shortest distance between the robot and the edge of the obstacle, d0 is a constant, and m is any real number greater than 0; S222. Calculate the repulsive force on the robot arm: Among them, α1 is the unit vector from the point closest to the robot to the obstacle, and α0 is the unit vector from the robot to the target point; S223. Set the gravitational field of the target point to the robot arm as: Where, k is the gravitational gain coefficient; S224. Calculate the gravitational force on the robot arm: S225. Get the resultant force F on the robot arm t (X) is: F t (X) = F rep (X)+F gra (X).

4. The method for obstacle avoidance path planning of a manipulator based on an improved RRT* algorithm according to claim 1, characterized in that: Step S3 specifically includes: S31. Create a search tree directory RRTtree, initialize the starting point of the robot as the first point of the search tree, define the algorithm's exploration step length as ΔS, and its change formula is: Among them, d min d max is the minimum and maximum value of the set step size, k gra and μ are adjustment parameters, and different parameters are set according to different working environments; F rep 、F gra are the repulsive force and attractive force on the robot arm under the artificial potential field; e is a natural constant; S32, create a sampling space Sample, all random points are generated in the sampling space, and each generated random point s i (x, y, z) satisfies the following conditions: Sample={s i (x,y,z)|i∈R,F rep (X)≤F1∪F gra (X)≥F2}; Where X = (x, y, z) represents the coordinates of the random point, F rep (X), F gra (X) are the repulsive force and attractive force on the robot arm at the random point; F1 and F2 are the set maximum repulsive force and minimum attractive force respectively; When the repulsive force F is applied to the robot arm at the random point rep (X)>F1, the random point is considered invalid; and when the gravitational force F gra When (X)≥F2, the influence of repulsion is not considered and the generated random points are still retained; S33. Generate a random point X in the sampling space rand , traverse the search tree RRTtree, calculate the Euclidean distance from all points in it to the current random point; select the point with the shortest Euclidean distance as the nearest point X near , take the direction of the line connecting the nearest point and the random point as the growth direction of the search tree, and generate a new node X with a step size of ΔS new , the formula is: If the line connecting the nearest point and the random point collides with the obstacle geometry, a new random point is generated; if a new node X is successfully generated near , then the nearest point X near For the new node X new The parent node of S34, obtain the new node X new All neighboring nodes within the radius R are taken as the new node X in turn. new The candidate parent node of the new node X new The total path from the candidate parent node to the starting point; the corresponding adjacent node with the shortest total path is used as the new node X new The new parent node of S35, then new node X new For all neighboring nodes, calculate the candidate parent nodes of each neighboring node through the new node X new If the total path to the starting point is less than the total path from the neighboring node to the starting point via the original parent node, the new node X is determined. new is the parent node of the adjacent node, otherwise the original parent node of the adjacent node is retained; S36, repeat steps S33-S35 until there is a node S g Arrive within the sphere with the target point as the center and radius r; connect S g and the target point, and from S g Start backtracking the parent node and keep backtracking to the starting point, thus forming the initial motion path of the robot arm; S37. Use the Nurbs curve to interpolate the preliminary motion path of the robot arm to obtain a smooth motion path as the final motion path of the robot arm, and the robot arm moves according to the path.

5. The method for obstacle avoidance path planning of a manipulator based on an improved RRT* algorithm according to claim 1, characterized in that: Step S4 specifically includes: S41, installing two depth cameras on both sides of the front joint of the end of the robotic arm, installing an infrared sensor on the top, and installing a positioning sensor on the bottom; the depth camera, infrared sensor and positioning sensor are all connected to the robotic arm controller; S42, adjusting the detection range of the depth camera, and when an obstacle appears in the detection range of the depth camera, the depth camera outputs a high level, otherwise it outputs a low level; and the obstacles are divided into dynamic obstacles and static obstacles according to the change of point cloud data; S43, the robot arm moves according to the final motion path of step S3. If the depth camera outputs a high level, the movement of the robot arm is suspended at this time, and the positioning sensor and the infrared sensor are turned on to detect obstacle information; the obstacles are processed separately according to their dynamic and static conditions; and a judgment is made: if the obstacle can be avoided, re-planning is performed on the basis of the final motion path to reach the target point; if the obstacle cannot be avoided, an alarm is issued to notify the operator to manually remove the obstacle.

6. The method for obstacle avoidance path planning of a manipulator based on an improved RRT* algorithm according to claim 5, characterized in that: The step S42 of classifying obstacles into dynamic obstacles and static obstacles by changing point cloud data is specifically as follows: S421. Define the point cloud data change rate ΔP to reflect the obstacle situation on the path. The formula is: Among them, Δt is the detection time, P i is the number of point clouds that enter the detection range of the depth camera within Δt time, P o is the number of point clouds that leave the detection range of the depth camera within Δt time; S422, setting the point cloud data change threshold P t ; When ΔP>P t When ΔP≤P t When the obstacle on the path is considered to be a static obstacle, different processing methods are adopted in step S43 according to different obstacle categories.

7. The method for obstacle avoidance path planning of a manipulator based on an improved RRT* algorithm according to claim 5, characterized in that: Step S43 specifically includes: S431, if the obstacle on the path is a dynamic obstacle, the robot arm is paused until there is no obstacle point cloud in the depth camera; if the obstacle still exists after a certain time threshold t, an alarm is issued to notify the operator to handle it; S432: If the obstacle on the path is a static obstacle, the detection data returned by the positioning sensor and the infrared sensor are analyzed, the position of the obstacle in the workspace of the robot arm is obtained using the depth camera and the positioning sensor, and the thickness information of the obstacle is obtained in combination with the infrared sensor; S433, adding the position and thickness information of the obstacle to the three-dimensional workspace of the robot, returning the final motion path of the robot, searching for the node closest to the obstacle from the starting point and the node closest to the obstacle from the target point on the path, and ensuring that the lines connecting these two nodes and their parent nodes and child nodes cannot interfere with the obstacle. If interference occurs, discard it and reselect other closer nodes until there is no interference with the obstacle; these two nodes are respectively S n , S m ; S434, S n As a starting point, S m As the end point, repeat step S3, plan a new path between the two nodes, and move along the new path; if the new path cannot be planned, it means that the current obstacle cannot be crossed, and an alarm is issued to notify the operator to handle it.

Citation Information

Patent Citations

  • Mechanical arm path planning method

    CN113084811A

  • Dynamic obstacle avoidance path planning method for multi-degree-of-freedom mechanical arm

    CN118700155A

  • Mechanical arm path planning and re-planning method oriented to dynamic medicine scene

    CN119017395A

  • Explosion-proof humanoid double-arm robot obstacle avoidance path planning method

    CN119260745A

  • Mechanical arm motion planner path optimization method

    CN119328764A