A midline path planning method for mobile robots
Through the mid-line path planning method of mobile robots, the problem of robots not walking smoothly at corners and approaching obstacles is solved, and a smoother and safer path planning is achieved, ensuring that the robot can move in the middle of the road, reducing collision risks and improving path utilization efficiency is improved .
Patent Information
- Application Number
- CN202210997520.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-19
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2042-08-19
AI Technical Summary
The existing robot path planning algorithms cause the robot to walk smoothly at corners, unable to make full use of other walkable areas, and walk close to obstacles.
A mobile robot mid-line path planning method is adopted, including pre-planning, mid-line search, partial path adjustment and complete path steps. The initial path is obtained through the global path planning algorithm, mid-line search and path adjustment are performed to ensure path continuity and smoothness.
The robot moves in the middle of the road, reduces the risk of collision with obstacles, improves the smoothness of the path and search efficiency, and ensures that the robot can make more efficient use of the walkable area.
Smart Images

Figure CN115167473B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of robot path planning, and in particular to a method for midline path planning of a mobile robot. Background Art
[0002] At present, there are existing global path planning technologies, such as Dijkstra algorithm, BFS algorithm, A* algorithm, artificial potential field method, etc. However, in order to achieve the shortest path, the path planning algorithm obtains a global path that is close to obstacles, causing the robot to walk sideways, walk unsmoothly at corners, and fail to fully utilize the remaining walkable area.
[0003] When performing tasks, mobile robots need to plan their own walking paths and control themselves to move to the target location according to the optimal planned path. Path planning is an indispensable part for mobile robots. Therefore, it is of great significance to study the path planning technology of robots. Summary of the invention
[0004] The purpose of the present invention is to solve the problems that the path planned by the current robot according to the path planning algorithm will walk along the side, walk unsmoothly at corners, and cannot make full use of the remaining walkable area, and provide a mobile robot midline path planning method.
[0005] The purpose of the present invention can be achieved by adopting the following technical solutions:
[0006] A method for midline path planning of a mobile robot, the planning method comprising the following steps:
[0007] S1. Pre-planning: Obtain a navigation map, and perform a path planning based on a global path planning algorithm based on the existing map to obtain a shortest path close to obstacles;
[0008] S2, centerline search: perform centerline search near the path points planned by the global path planning algorithm;
[0009] S3, partial path adjustment: according to the nearby centerline information of the path points obtained by searching, the continuously protruding map centerlines are counted and filtered, and the part of the original path that needs to be adjusted is determined and adjusted. After the adjustment, the original path becomes a broken discontinuous part;
[0010] S4. Complete the path: Using the discontinuous paths obtained in the previous step, use the end points and starting points of the multiple broken paths as the starting points and end points of the path planning, and perform multiple global path planning algorithms to connect the broken paths.
[0011] Furthermore, the global path planning algorithm is selected from one of Dijkstra algorithm, BFS algorithm, A* algorithm and artificial potential field method.
[0012] Furthermore, in step S1, a global static grid map of the surrounding environment is obtained as a navigation map.
[0013] Furthermore, in step S2, the centerline search is performed after the search radius of the path point on the original path is determined in advance, and the search radius is greater than the radius of all corridors and aisles that have the requirement to walk on the centerline; after confirming the search radius of the path point on the original path, for a specific map node, first search for the obstacle closest to the map node, confirm the pixel orientation of the obstacle and the map node, and then expand the area in the opposite direction to search with an allowable pixel error (from map construction, etc.), if there is an obstacle in the area, mark the map point once.
[0014] Furthermore, the process of step S3 is as follows:
[0015] Follow the pre-planned path, starting from the starting point, and first search each point according to the set search radius. According to the search radius of each point in the previous search, the point with the center line within the radius is recorded as near, and the distance between the near point and the point (x, y) on the nearest center line is recorded. When the number of accumulated near points exceeds the set number, starting from the first near point, the x-axis coordinates and y-axis coordinates of the recorded points (x, y) are compared. If the distance difference is less than the pre-specified distance threshold, the above near points are accumulated. When the number of accumulated near points exceeds the set number, the starting point of this segment is set to ROAD_START. Otherwise, if the distance difference is greater than the pre-specified distance threshold, the processing of the raised map center line of this segment is exited and the previous judgment mode is returned:
[0016] When the number of accumulated near points does not exceed the set number, the entire segment is not judged as ROAD. ROAD refers to the actual path of the robot. If ROAD_START has been set, the first point that exceeds the allowed range is set as ROAD_END at this time. After traversing the entire original path, all marked path points are obtained, including pairs of ROAD_START and ROAD_END.
[0017] On each adjusted road segment determined by ROAD_START and ROAD_END, move the points on the path uniformly by the x distance and y distance with the highest cumulative occurrence.
[0018] Furthermore, the planning method uniformly moves the points on the path by the x distance and y distance with the largest cumulative occurrence times to adjust the points into a continuous path on each adjusted road segment determined by ROAD_START and ROAD_END. When a node is moved to a new position that is an obstacle, the subsequent operation of this segment is stopped, the original ROAD_END node of this segment is cleared, and the previous point of this node is set as the new ROAD_END node, and finally multiple ROAD segments are connected.
[0019] Furthermore, in step S4, the scene map acquired by the robot may be rotated to correct the tilt, and the process is as follows:
[0020] First, the straight lines in the image are extracted through straight line detection, and then the slopes of the straight lines are accumulated in groups. The slope with the most slopes is selected as the positive direction, and then the direction with the smallest rotation is selected to straighten the map.
[0021] By using the centerline-based path planning method of the present invention, the robot can move in the center of the road, reducing the risk of collision with obstacles. Compared with the prior art, the present invention has the following advantages and beneficial effects:
[0022] 1) Perform a near-midline search for nodes on the path, which reduces the search range and improves search efficiency.
[0023] 2) For the continuously raised centerline of the map, statistical and filtering methods are adopted to obtain a continuous centerline path instead of a centerline path that frequently changes direction, which effectively improves the smoothness of the robot.
[0024] 3) By calculating the search radius, the path that needs to be adjusted is marked to reduce the impact of non-path centerlines and improve the accuracy of centerline path search. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of this application. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:
[0026] Figure 1 is a flow chart of a method for midline path planning of a mobile robot disclosed in an embodiment of the present invention;
[0027] Figure 2 is a schematic diagram of a map scene used in an embodiment of the present invention;
[0028] Figure 3 It is a schematic diagram of a conventional method of searching for obstacles by a map node in the prior art;
[0029] Figure 4is a schematic diagram of a method for a map node to search for obstacles from two directions in an embodiment of the present invention;
[0030] Figure 5 is a schematic diagram of the centerline path of a long straight corridor in an embodiment of the present invention;
[0031] Figure 6 is a schematic diagram of the robot's walking midline path after the path completion operation in an embodiment of the present invention;
[0032] Figure 7 Schematic diagram of the robot's walking midline path after the map is rotated in an embodiment of the present invention. DETAILED DESCRIPTION
[0033] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0034] Example 1
[0035] This embodiment discloses a method for midline path planning of a mobile robot, including the following four steps: pre-planning, midline search, partial path adjustment and path completion, such as Figure 1 The application fields of the mobile robot midline path planning method, such as household service robots, food delivery robots, unmanned delivery robots, shopping guide robots, substation inspection robots, etc., are to carry out path planning and realize autonomous navigation, so as to complete the corresponding cleaning, inspection and other tasks.
[0036] The specific implementation of each step is as follows:
[0037] S1, Pre-planning: Obtain a global static grid map of the surrounding environment and perform traditional A* algorithm path planning, such as Figure 2 As shown in the figure, the map scene is an indoor long straight corridor environment. The white part is the area where the robot can pass, the black part represents the obstacles, and the black line segment displayed in the white area is the global path after A* planning. This line segment is a path close to the obstacle.
[0038] S2, centerline search: To improve the efficiency of centerline search, centerline search is only performed near the path nodes planned by the A* algorithm. The search range is determined by the passage area involved in this navigation. The specific search method is as follows:
[0039] Before searching for the centerline, a parameter is needed to determine the search radius for each map point. This search radius should first be larger than the radius of all corridors and aisles that require walking the centerline. In order to make the algorithm more general, there is no need to constantly adjust the parameters for different maps. This parameter can be set relatively large, so that the centerline requirement can be guaranteed on most maps.
[0040] like Figure 3 As shown in the figure, for a specific map node (gray square), the traditional obstacle search method first needs to search for the obstacle closest to it (black square), confirm the pixel position of the obstacle and the node, and then expand the area to search in the opposite direction with the allowed pixel error. If there is an obstacle in the area, mark the map point. Note that this ring expansion search requires searching n squares for each node. 2 To improve the search efficiency, the map can be processed once so that the search is only performed in two directions to reduce the number of searches. In this case, multiple discontinuous centerline paths are obtained, such as Figure 4 shown.
[0041] S3. Partial path adjustment: According to Figure 4 As shown in , there are obstacles that are constantly raised in the long straight corridor, so according to the strict centerline requirements, the centerline path that is constantly changing direction is obtained. At this time, these paths need to be adjusted as follows:
[0042] According to the search radius of each point in the previous step, the point with the center line within the radius is recorded as near, and the distance between the near point and the point (x, y) on the nearest center line is recorded. When more than a certain number of near points are accumulated, starting from the first near point, the x-axis coordinates and y-axis coordinates of the recorded points (x, y) are compared. If the distance difference is less than the pre-specified threshold, the above near points are accumulated. When the number of accumulated near points exceeds the set number, the starting point of this segment is set to ROAD_START. Otherwise, if the distance difference is greater than the pre-specified threshold, the processing of the raised map center line of this segment is exited and the previous judgment mode is returned:
[0043] When the number of accumulated near points does not exceed the set number, the entire section is not judged as ROAD. ROAD refers to the actual path of the robot. If ROAD_START has been set, the first point outside the allowed range is set as ROAD_END at this time. After traversing the entire original path, all marked path points are obtained, including pairs of ROAD_START and ROAD_END.
[0044] On each adjusted road segment determined by ROAD_START and ROAD_END, move the points on the path uniformly by the x distance and y distance with the largest cumulative occurrence, so that Figure 4 The periodic bumps in do not affect the final adjustment to a continuous path, such as Figure 5 The centerline path of the long straight corridor is shown.
[0045] S4, complete the path: connect the segmented ROAD segments obtained in the previous step using the A* algorithm to obtain a complete centerline path, such as Figure 6 As shown in the figure, the scene map obtained by the robot may be tilted in a certain direction, such as Figure 7 As shown. For the convenience of operation, the map can be rotated, which is implemented as follows:
[0046] You can first extract the straight lines in the image through straight line detection, then accumulate the slopes of the straight lines in groups, select the slope with the most slopes as the positive direction, and then select the direction with the smallest rotation to straighten the map.
[0047] Example 2
[0048] Based on the above embodiment 1, this embodiment further discloses a method for midline path planning of a mobile robot, which still includes the following four steps: pre-planning, midline search, partial path adjustment and path completion. The process is as follows:
[0049] S1. Pre-planning: Obtaining a global static grid map of the surrounding environment and performing Dijkstra path planning In this embodiment 2, a global path close to the obstacle is obtained.
[0050] S2, centerline search: Then, a centerline search is performed near the path nodes planned by the Dijkstra algorithm. For the specific search method, reference may be made to the search method in S2 in Example 1.
[0051] S3, Partial path adjustment: Figure 4 There are continuous protruding obstacles with the same intervals in the long straight corridor map. According to step S2, the centerline search is performed, and the path obtained is strictly defined according to the centerline, which makes each path discontinuous. At this time, these paths need to be adjusted. For details, please refer to the path adjustment method of S3 in Example 1.
[0052] S4. Complete the path: Connect the segmented ROAD segments obtained in the previous step using the Dijkstra algorithm multiple times to obtain a complete centerline path. For ease of operation, the map can be rotated. The specific implementation is as follows:
[0053] You can first extract the straight lines in the image through straight line detection, then accumulate the slopes of the straight lines in groups, select the slope with the most slopes as the positive direction, and then select the direction with the smallest rotation to straighten the map.
[0054] The above embodiments are preferred implementation modes of the present invention, but the implementation modes of the present invention are not limited to the above embodiments. Any other changes, modifications, substitutions, combinations, and simplifications that do not deviate from the spirit and principles of the present invention should be equivalent replacement methods and are included in the protection scope of the present invention.
Claims
1. A method for midline path planning of a mobile robot, characterized in that: The planning method comprises the following steps: S1. Pre-planning: Obtain a navigation map, and perform a path planning based on a global path planning algorithm based on the existing map to obtain a shortest path close to obstacles; S2, centerline search: perform centerline search near the path points planned by the global path planning algorithm; S3, partial path adjustment: according to the nearby centerline information of the path point obtained by searching, the continuously raised map centerlines are counted and filtered, and the part of the original path that needs to be adjusted is determined and adjusted. After the adjustment, the original path becomes a broken discontinuous part; the process of step S3 is as follows: Along the pre-planned path, starting from the starting point, first search each point according to the set search radius. According to the search radius of each point in the previous search step, the point with the center line within the radius is recorded as near. At the same time, the distance between the near point and the nearest point on the center line (x, y) is recorded. When the number of accumulated near points exceeds the set number, starting from the first near point, the x-axis coordinates and y-axis coordinates of the recorded points (x, y) are compared. If the distance difference is less than the pre-specified distance threshold, the above near points are accumulated. When the number of accumulated near points exceeds the set number, the starting point of this segment is set to ROAD_START. Otherwise, if the distance difference is greater than the pre-specified distance threshold, the processing of the raised map center line of this segment is exited and the previous judgment mode is returned: When the number of accumulated near points does not exceed the set number, the entire segment is not judged as ROAD. ROAD refers to the actual path of the robot. If ROAD_START has been set, the first point that exceeds the allowed range is set as ROAD_END at this time. After traversing the entire original path, all marked path points are obtained, including pairs of ROAD_START and ROAD_END. On each adjusted road segment determined by ROAD_START and ROAD_END, the points on the path are uniformly moved by the x distance and y distance with the largest cumulative occurrence times to adjust the path into a continuous path; when the new position of a node after movement is an obstacle, the subsequent operations of this segment are stopped, the original ROAD_END node of this segment is cleared, and the previous point of this node is set as the new ROAD_END node, and finally multiple ROAD segments are connected; S4. Complete the path: Using the discontinuous paths obtained in the previous step, use the end points and starting points of the multiple broken paths as the starting points and end points of the path planning, and perform multiple global path planning algorithms to connect the broken paths.
2. A mobile robot midline path planning method according to claim 1, characterized in that: The global path planning algorithm is selected from one of Dijkstra algorithm, BFS algorithm, A* algorithm and artificial potential field method.
3. A mobile robot midline path planning method according to claim 1, characterized in that: In step S1, a global static grid map of the surrounding environment is obtained as a navigation map.
4. A mobile robot midline path planning method according to claim 1, characterized in that: In the step S2, the centerline search is performed after the search radius of the path point on the original path is determined in advance, and the search radius is greater than the radius of all corridors and aisles that have the requirement to walk on the centerline; after confirming the search radius of the path point on the original path, for a specific map node, first search for the obstacle closest to the map node, confirm the pixel orientation of the obstacle and the map node, and then expand the area in the opposite direction to search with an allowable pixel error. If there is an obstacle in the area, mark the map point once.
5. A mobile robot midline path planning method according to claim 1, characterized in that: In step S4, the scene map acquired by the robot may be rotated to correct the tilt, and the process is as follows: First, the straight lines in the image are extracted through straight line detection, and then the slopes of the straight lines are accumulated in groups. The slope with the most slopes is selected as the positive direction, and then the direction with the smallest rotation is selected to straighten the map.
