Path planning methods, robots, electronic devices and media
By calculating the optimal working direction of the robot's original sub-region and merging adjacent sub-regions, the problem of low efficiency in existing path planning methods is solved, achieving more efficient path planning and operation.
Patent Information
- Application Number
- CN202410806934.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-20
- Publication Date
- 2025-10-31
- Estimated Expiration
- 2044-06-20
AI Technical Summary
Existing path planning methods result in low robot operation efficiency, especially in complex scenarios where the number of turns and overlapping paths increases, leading to a decrease in efficiency.
By calculating the optimal operation direction of multiple original sub-regions and merging adjacent sub-regions when the angle between their optimal operation directions is less than or equal to a threshold, the number of sub-regions is reduced and the planning path is simplified.
It improves the efficiency of robots in complex scenarios, reduces the risk of collisions and missed tasks, and simplifies the path planning process.
Smart Images

Figure CN118732684B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot control technology, specifically to a path planning method, a robot, electronic equipment, and a medium. Background Technology
[0002] With the advancement of technology, the application fields of robots are becoming increasingly widespread. For example, robots can be used in cleaning, agricultural production, and other fields. When using robots to work on a target area, it is generally necessary to plan the robot's travel path in advance. The planned travel path should cover the entire target area as much as possible to reduce the area of missed work. For the same target area, different travel paths can be planned using different methods. Different planned travel paths will lead to different robot working efficiencies. Existing path planning methods suffer from low robot working efficiency. Summary of the Invention
[0003] In view of this, embodiments of this application provide a path planning method, a robot, an electronic device, and a medium, which can simplify path planning and thereby improve the operational efficiency of the robot that performs operations based on the planned path.
[0004] In a first aspect, embodiments of this application provide a path planning method, comprising: dividing a target work area into multiple original sub-regions; calculating the optimal work direction for each of the multiple original sub-regions; merging adjacent original sub-regions to obtain a merged sub-region when the angle between the optimal work directions of adjacent original sub-regions is less than or equal to a first threshold; and performing path planning based on the merged sub-region and the remaining sub-regions to obtain a planned path, wherein the remaining sub-regions are obtained from the original sub-regions after removing adjacent original sub-regions.
[0005] Secondly, embodiments of this application provide a path planning apparatus, comprising: a division module for dividing a target work area into multiple original sub-regions; a calculation module for calculating the optimal work direction for each of the multiple original sub-regions; a merging module for merging adjacent original sub-regions to obtain a merged sub-region when the angle between the optimal work directions corresponding to adjacent original sub-regions is less than or equal to a first threshold; and a planning module for performing path planning based on the merged sub-regions and the remaining sub-regions to obtain a planned path, wherein the remaining sub-regions are obtained from the original sub-regions after removing adjacent original sub-regions.
[0006] Thirdly, embodiments of this application provide a robot including a control module, which is used to execute the path planning method described in the first aspect above.
[0007] Fourthly, embodiments of this application provide an electronic device, including: a processor; and a memory for storing processor-executable instructions, wherein the processor is used to execute the path planning method described in the first aspect above.
[0008] Fifthly, embodiments of this application provide a computer-readable storage medium storing a computer program for executing the path planning method described in the first aspect.
[0009] Sixthly, embodiments of this application provide a computer program product including instructions that, when executed by a processor of a computer device, enable the computer device to perform the path planning method described in the first aspect.
[0010] In a seventh aspect, embodiments of this application provide a chip, including: a processor; and a memory for storing processor-executable instructions, wherein the processor is used to execute the path planning method described in the first aspect above.
[0011] This application provides a path planning method, a robot, an electronic device, and a medium. By calculating the optimal working direction of each of multiple original sub-regions, and when the angle between the optimal working directions of adjacent original sub-regions is less than or equal to a first threshold, adjacent original sub-regions are merged to obtain a merged sub-region. This reduces the number of original sub-regions, simplifies the path planning, and improves the working efficiency of the robot that performs operations based on the planned path. Attached Figure Description
[0012] Figure 1 The diagram shown is a schematic representation of the system architecture of a path planning system provided in an exemplary embodiment of this application.
[0013] Figure 2 The diagram shown is a flowchart of a path planning method provided in an exemplary embodiment of this application.
[0014] Figure 3a The diagram shown is a schematic representation of the equivalent length of the original sub-region and the continuous region provided in an exemplary embodiment of this application.
[0015] Figure 3b The diagram shown is a schematic diagram of multiple adjacent original sub-regions provided in an exemplary embodiment of this application.
[0016] Figure 3c The diagram shown is a schematic representation of a job path provided in an exemplary embodiment of this application.
[0017] Figure 3d The diagram shown is a flowchart illustrating a model prediction path integral method provided in an exemplary embodiment of this application.
[0018] Figure 4 The diagram shown is a flowchart of a path planning method provided in another exemplary embodiment of this application.
[0019] Figure 5 The diagram shown is a schematic representation of the path planning device provided in an exemplary embodiment of this application.
[0020] Figure 6 The diagram shown is a block diagram of an electronic device for performing a path planning method according to an exemplary embodiment of this application. Detailed Implementation
[0021] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0022] Application Overview
[0023] The use of robots for various tasks is becoming increasingly common in modern society. Robots can be applied to fields such as cleaning and agricultural production. For example, robots can be used for indoor cleaning, outdoor cleaning, sowing seeds, and spraying pesticides.
[0024] When using robots to work on a target area, it is generally necessary to plan the robot's travel path in advance. The planned travel path should cover the entire target area as much as possible, that is, to achieve complete coverage path planning (CCPP), thus reducing the area of missed work. The task of complete coverage path planning is to determine a path that passes through all points within an area or a certain spatial range while avoiding obstacles. In the field of complete coverage path planning, the two most commonly used basic methods are bow-shaped coverage and zigzag coverage. Zigzag coverage has too many turns and too few straight lines, resulting in low efficiency. Bow-shaped coverage usually requires a combination of automatic and manual methods for area division, dividing a large target area into several sub-areas that can be arranged in a bow shape. The most common automatic method is the ox-plowing method, which divides the target area into overly fragmented sub-areas.
[0025] Taking indoor cleaning as an example, when using a robot to clean a target area, the target area can be divided into multiple sub-areas based on indoor obstacles. A corresponding path can be planned for each sub-area, and interconnected paths can be planned between different sub-areas. When the target area is divided into multiple fragmented sub-areas, the number of turns, decelerations, and / or overlapping paths during the robot's operation increases, leading to a decrease in the robot's operating efficiency.
[0026] To address the aforementioned technical problems, this application provides a path planning method. By calculating the optimal working direction of each of the multiple original sub-regions, and when the angle between the optimal working directions of adjacent original sub-regions is less than or equal to a first threshold, the adjacent original sub-regions are merged to obtain a merged sub-region. This reduces the number of original sub-regions, simplifies the path planning, and improves the working efficiency of robots that perform operations based on the planned path.
[0027] Exemplary System
[0028] Figure 1 The diagram shown is a schematic representation of the system architecture of a path planning system provided in an exemplary embodiment of this application. Figure 1 As shown, the path planning system 100 may include a robot 110, which can be used to clean a target area 120. A display screen 111 and a controller 112 may be mounted on the robot 110. The controller 112 can be used to control the robot to execute the path planning method provided in this application embodiment.
[0029] In one example, controller 112 can receive the area to be cleaned input by the user via display screen 111, and retrieve the static map corresponding to the area to be cleaned and the virtual wall corresponding to the area to be cleaned from the database. Here, the database can be stored in the memory of robot 110 or in an external memory connected to robot 110; the static map can mark the areas where some obstacles (such as pillars) scanned during map construction are located; the virtual wall can be areas that are not well recognized by the sensors on robot 110, areas where obstacles are located, and / or areas that are manually set as no-passage areas. Controller 112 can perform map preprocessing based on the static map and virtual wall to obtain a set of target polygons with holes. Each polygon with holes can be regarded as a target area, and the holes in the polygons can be obstacles and / or virtual walls in the aforementioned static map.
[0030] For each target area, the controller 112 can divide the target area into multiple original sub-areas, calculate the optimal working direction for each of the multiple original sub-areas, and merge the adjacent original sub-areas to obtain a merged sub-area if the angle between the optimal working directions of adjacent original sub-areas is less than or equal to a first threshold. In this way, the number of sub-areas after merging is less than the number of original sub-areas. Path planning can be performed based on the merged sub-areas to obtain the planned path.
[0031] Furthermore, the controller 112 can control the robot to perform cleaning operations in the target area based on the planned path.
[0032] In other examples, controller 112 may be located outside of robot 110, such as being a device independent of robot 110.
[0033] For example, controller 111 may include at least one of a logic controller, a machine vision controller, a motion controller, etc.
[0034] In other examples, the display screen 111 may not be installed on the robot 110. Instead, the display screen 111 can be installed on other interactive devices, such as laptops or mobile phones, for communication with the robot 110. These interactive devices may have front-end software installed. The interactive device can display the front-end software on the display screen 111 and receive the area to be cleaned input by the user through the front-end software, then send the area to be cleaned to the controller 112.
[0035] It should be understood that the above application scenario examples are only shown to facilitate understanding of the spirit and principles of this application, and the embodiments of this application are not limited thereto. Rather, the embodiments of this application can be applied to any applicable scenario.
[0036] Exemplary methods
[0037] Figure 2 The diagram shown is a flowchart of a path planning method provided in an exemplary embodiment of this application. Figure 2 The method can be derived from Figure 1 The controller in the process executes the commands. For example... Figure 2 As shown, this path planning method may include the following:
[0038] 210: Divide the target work area into multiple original sub-areas.
[0039] Specifically, the target work area can be located in complex environments such as supermarkets, shopping malls, or train stations. The edges of the target work area can be regular or irregular in shape, and it may include restricted areas, which can include areas containing obstacles and / or man-made areas. Obstacles can be indoor pillars, placed objects, etc.
[0040] The target work area can be the robot's work area, which can be a cleaning area, a spraying area, a seeding area, or other areas. The following explanation uses a cleaning area as an example, where the robot's task is cleaning, to illustrate the path planning method provided in this application's embodiments. The situation for other work areas is similar and will not be repeated here.
[0041] The target work area can be divided into multiple original sub-areas based on the shape of the restricted zone. For example, methods for dividing the target work area into multiple original sub-areas include the ox-plowing decomposition method, the trapezoidal decomposition method, or other methods that can decompose the target work area into multiple original sub-areas along the restricted zone.
[0042] 220: Calculate the optimal job direction for each of the multiple original subregions.
[0043] Specifically, the optimal work direction can be the best direction determined by skilled technicians based on experience in a certain aspect (e.g., work efficiency, omission rate, or a combination of both), such as the direction with the highest work efficiency, the direction with the lowest omission rate, or the direction with the highest possible work efficiency and the lowest possible omission rate.
[0044] In one embodiment of this application, the optimal job direction is used to balance the optimal job efficiency of the original sub-region with the lowest missed job rate of the original sub-region. For example, the optimal job direction can be determined based on the area of the continuous region of the original sub-region and the equivalent length / equivalent width of the original sub-region.
[0045] In one example, the optimal working direction is used to represent the direction that maximizes the weighted sum of the equivalent length of the original subregion and the area of the contiguous region of the original subregion. For any working direction, the equivalent length is used to represent the length of the longest line segment that intersects the original subregion with a line parallel to the working direction, and the contiguous region is used to represent the complete region with the largest area divided by two lines parallel to the working direction from the original subregion.
[0046] For example, for any given sub-area, the working direction can be a straight line. For instance, multiple parallel straight lines can be arranged in the sub-area along the working direction, and these lines can be connected by curves to form a path. The sub-area can be cleaned along this path, and the direction of extension of the straight lines can be considered the working direction.
[0047] For any given working direction, the original sub-region has a corresponding equivalent length and a corresponding continuous region. That is, the equivalent length and the continuous region can be different for different working directions. For any given working direction, the equivalent length represents the length of the longest line segment that intersects the original sub-region with a line parallel to the working direction; the continuous region represents the complete region with the largest area divided by two lines parallel to the working direction.
[0048] like Figure 3a As shown, the length of the longest line segment intersecting the original sub-region with a line parallel to the working direction can be represented as L. The original sub-region is enclosed by two lines parallel to the working direction; these two lines are located on the boundaries of the original sub-region on both sides. The distance between these two lines can be represented as the equivalent width W. The original sub-region is divided using two lines parallel to the working direction. The largest complete area enclosed by these two lines is the continuous region, as shown in the attached figure. Figure 3a The shaded area in the image.
[0049] The score of the current cleaning direction can be represented by the weighted sum of the equivalent length of the original sub-region and the area of its continuous regions. A higher score indicates that cleaning along that direction will improve cleaning efficiency and, to some extent, reduce the risk of collisions and missed areas. Therefore, the direction with the largest weighted sum of the equivalent length and the area of the continuous region can be considered the optimal cleaning direction. It should be understood that the equivalent length and the area of the continuous region can be contradictory; a larger equivalent length may result in a smaller area of the continuous region. The desired optimal cleaning direction should have the equivalent length as short as possible (corresponding to optimal work efficiency) and the continuous region area as large as possible (corresponding to the lowest missed area rate, such as the lowest missed sweep rate). Therefore, reasonable weight values can be set for the equivalent length and the area of the continuous region to obtain the optimal cleaning direction; these weight values can be set according to actual needs.
[0050] In one example, for any given original subregion, each job direction between 0 and 180 degrees can be traversed to select the optimal job direction. Alternatively, some job directions between 0 and 180 degrees can be traversed, such as 0 degrees, 30 degrees, 60 degrees, 90 degrees, 120 degrees, and 150 degrees, which can reduce computing power and improve the efficiency of the entire path planning process.
[0051] In one example, the length of the longest line segment intersecting the original sub-region with a line parallel to the working direction can be directly used as the equivalent length. In another example, the area of the original sub-region can be divided by the equivalent width to obtain the equivalent length. In yet another example, the area of a continuous region can be divided by the equivalent width to obtain the equivalent length.
[0052] Alternatively, in other examples, the optimal work direction can be determined by those skilled in the art based on their experience in work efficiency or by big data analysis.
[0053] 230: If the angle between the optimal working directions of adjacent original sub-regions is less than or equal to the first threshold, the adjacent original sub-regions are merged to obtain a merged sub-region.
[0054] Adjacent original sub-areas can include two or more sequentially adjacent original sub-areas. If the angle between the optimal working directions of adjacent original sub-areas is less than or equal to a first threshold, it indicates that the optimal working directions of adjacent original sub-areas are similar. Merging adjacent original sub-areas can reduce the number of sub-areas, improve the efficiency of subsequent routing processes, and improve subsequent cleaning efficiency. To a certain extent, it can also reduce the risk of collisions and missed areas.
[0055] The first threshold can be set according to actual needs, such as 0, 0.1 or other values.
[0056] 240: Path planning is performed based on merged sub-regions and remaining sub-regions to obtain the planned path. The remaining sub-regions are obtained from the original sub-regions after removing adjacent original sub-regions from multiple original sub-regions.
[0057] For multiple original sub-regions, if the angle between the optimal working directions of adjacent original sub-regions is less than or equal to a first threshold, the adjacent original sub-regions are merged to obtain a merged sub-region; otherwise, the original sub-regions are retained. By merging at least some of the original sub-regions, a merged sub-region can be obtained. The merged sub-region may include the merged sub-region and the original sub-regions (remaining sub-regions).
[0058] By performing path planning based on merged and remaining sub-regions, a planned path covering the entire target work area can be obtained. In one example, a work path can be planned in each sub-region after merging, and then the work paths in each sub-region can be connected to obtain a planned path covering the entire target work area.
[0059] This application provides a path planning method. By calculating the optimal working direction of each of the multiple original sub-regions, and merging adjacent original sub-regions to obtain a merged sub-region when the angle between the optimal working directions of adjacent original sub-regions is less than or equal to a first threshold, the number of original sub-regions can be reduced, the planning path can be simplified, and the working efficiency of the robot that performs operations based on the planned path can be improved.
[0060] For target work areas in complex scenarios, this application embodiment can merge multiple fragmented original sub-regions, thereby improving the robot's work efficiency in complex scenarios. Furthermore, this application embodiment merges the original sub-regions based on the optimal work direction, which can reduce the risk of collisions and missed tasks during subsequent robot operations to a certain extent. This application embodiment can achieve automatic partitioning and automatic planning of full-coverage paths, thus reducing the difficulty of manual intervention and deployment.
[0061] According to an embodiment of this application, adjacent original sub-regions include at least a first original sub-region and a second original sub-region. Step 230 may include: if the angle between the optimal working directions corresponding to the adjacent original sub-regions is less than or equal to a first threshold, calculating the length of the overlapping portion of the projected line segments of the first original sub-region and the second original sub-region in a set direction, wherein the set direction is obtained based on the optimal working direction corresponding to the first original sub-region and / or the optimal working direction corresponding to the second original sub-region; if the length is greater than or equal to a second threshold, merging the adjacent original sub-regions to obtain a merged sub-region.
[0062] In one example, the first and second original sub-regions are adjacent. In another example, the adjacent original sub-regions include the first, second, and third original sub-regions, with the third original sub-region located between the first and second original sub-regions. That is, the first, third, and second original sub-regions are sequentially adjacent, and the angle between the optimal working directions of these three original sub-regions is less than or equal to a first threshold.
[0063] Specifically, the set direction can be the optimal working direction of the first original sub-region, the optimal working direction of the second original sub-region, or the average direction of the optimal working directions of the first and second original sub-regions. For example... Figure 3b As shown, the projection lines of the first and second original sub-regions in the set direction are L1 and L2, respectively, and the length of the overlapping portion of projection lines L1 and L2 is OL. If the length OL is greater than or equal to a second threshold, the first and second original sub-regions can be merged, or, if a third original sub-region exists, the first, third, and second original sub-regions can be merged. If the length OL is less than the second threshold, merging adjacent original sub-regions results in a long and narrow merged sub-region. Figure 3bAs shown, if the endpoint of the operation path in the first original sub-region is at the lower right corner of the first original sub-region, it will be difficult to plan the paths in the third and second original sub-regions. This results in high path planning difficulty, making it prone to collisions and inefficient for the robot operating based on the planned paths. Therefore, merging adjacent original sub-regions when the length OL is greater than or equal to the second threshold simplifies path planning, improves the efficiency of the robot operating based on the planned paths, avoids increasing the difficulty of path planning on top of the original solution, and avoids increasing the risk of collisions.
[0064] The second threshold can be set according to actual needs.
[0065] In this embodiment, when the angle between the optimal working directions corresponding to adjacent original sub-regions is less than or equal to a first threshold, and the length of the overlapping portion of the projection line segments of the first and second original sub-regions in the set direction is greater than or equal to a second threshold, the adjacent original sub-regions are merged to obtain a merged sub-region. This simplifies the planning path, avoids increasing the difficulty of path planning, and avoids increasing the risk of collision, thereby improving the work efficiency.
[0066] According to an embodiment of this application, step 240 may include: for any one of the merged sub-regions and the remaining sub-regions, dividing the region into multiple parallel straight paths, the multiple straight paths being parallel to the optimal work direction corresponding to the region; planning curved paths between the multiple straight paths so that the multiple straight paths are connected by curved paths to form a work path, the two straight paths connected by the curved paths in the work path including at least one of the multiple straight paths; and obtaining the planned path based on the work path of the region.
[0067] For any region among the merged sub-regions and the remaining sub-regions, a line can be drawn across that region, that is, multiple parallel straight-line paths can be created within that region. When the region is an original sub-region, the multiple straight-line paths are parallel to the optimal working direction corresponding to the original sub-region. When the region is a merged sub-region, the multiple straight-line paths are parallel to the optimal working direction of the merged sub-region. The optimal working direction of the merged sub-region can be any corresponding optimal working direction among the original sub-regions before the merge, or the average direction of the optimal working directions of the original sub-regions before the merge, or the recalculated optimal working direction for the merged sub-region, that is, the direction that maximizes the weighted sum of the equivalent length of the merged sub-region and the area of the continuous region of the merged sub-region.
[0068] In one example, the end point of one straight path can be connected to the start point of the other straight path using a curved path to obtain the work path for that area. Along the direction of travel of the work path, the start point of each straight path can be the point where the robot first passes through that straight path, and the end point of the straight path can be the point where the robot last passes through that straight path.
[0069] In another example, two straight paths can be selected from multiple straight paths at once, and the end point of one straight path can be connected to the start point of the other straight path using a curved path to obtain the working path for that area. There should be at least one straight path between the two straight paths. This curved path can have a larger turning radius, facilitating the robot's passage through the curved section and preventing side leakage or missed work areas during turning. Figure 3c The diagram illustrates a work path provided in an exemplary embodiment of this application. Two straight paths connected by a curved path may be spaced apart by one, two, or three straight paths. It should be understood that in other examples, the number of straight paths separating any two straight paths connected by a curved path may be the same. Figure 3c The two adjacent curved paths shown intersect, which can compensate for the blind spots in the robot's turning process and reduce the missed work areas during the turning process.
[0070] Furthermore, the work paths of each area can be connected to obtain the planned path.
[0071] In this embodiment, the straight paths can be laid out with intervals, that is, two straight paths separated by at least one straight path can be connected by curved paths, i.e., skip-forward laying. This increases the turning radius of the curved paths, providing sufficient space for the robot to turn around each time and reducing missed work areas. In addition, compared to small household robots that do not need to consider turning radius constraints, commercial cleaning robots have certain requirements for turning radius. This embodiment can increase the turning radius of the curved paths, thereby avoiding side water leakage during robot turning and improving safety.
[0072] In one embodiment of this application, planning a curved path between multiple straight paths so that the multiple straight paths are connected by the curved path to form a work path includes: planning a first initial curved path between multiple straight paths using the Dubins curve method; and using the first initial curved path as the curved path between multiple straight paths if the first initial curved path satisfies the no-collision constraint.
[0073] Specifically, the curved path between two straight paths can be planned using the Dubins curve method. Specifically, the Dubins curve method can be used to plan a first initial curved path between two straight paths. If the first initial curved path satisfies the collision-free constraint, it is used as the curved path between the two straight paths. Using the Dubins curve method to plan curved paths can improve efficiency.
[0074] For example, if the initial curve path does not meet the collision-free constraint, the Dubins curve method will fail, meaning the Dubins curve path planning will fail. In this case, other path planning methods or manual methods can be used to plan the curve path.
[0075] Specifically, collision-free constraints can be implemented through grid map collision detection, polygon collision detection, or code-based methods. Grid map collision detection offers high computational efficiency, while polygon collision detection provides high accuracy. Grid map collision detection involves projecting the robot model onto multiple sampling points on a dubin curve. Based on the grid map, it determines whether the grid corresponding to the model projection at each sampling point intersects with the grid corresponding to the restricted area (or obstacle area). If no intersection occurs, the collision-free constraint is satisfied; if an intersection occurs, the collision-free constraint is not satisfied. The grid map's range can be equal to or greater than the range corresponding to the current merged or remaining sub-region. Polygon collision detection involves projecting the robot model onto multiple sampling points on a dubin curve. For each sampling point, it determines whether the polygon corresponding to the robot's outline intersects with the polygon of the restricted area (or obstacle area). If no intersection occurs, the collision-free constraint is satisfied; if an intersection occurs, the collision-free constraint is not satisfied. The code approach may include: for multiple sampling points on the Dubins curve, determining whether the sampling point falls into the grid corresponding to the restricted area (or the area where the obstacle is located), or whether it falls into the polygon of the restricted area (or the polygon where the obstacle is located). If it does not fall into the restricted area, the no-collision constraint is satisfied; if it falls into the restricted area, the no-collision constraint is not satisfied.
[0076] In one example, planning a curved path between multiple straight paths so that the multiple straight paths are connected by the curved path to form a work path also includes: if the first initial curved path does not meet the collision-free constraint, using the hybrid A* method to plan a second initial curved path between the multiple straight paths; and using the second initial curved path as the curved path between the multiple straight paths.
[0077] Compared to the Dubins curve method, the hybrid A* method is more computationally intensive, but it can plan a more reasonable curve path.
[0078] In this embodiment, the Dubins curve method can be used to plan the curve path, which can improve the efficiency of path planning. When the Dubins curve method cannot output a curve path that satisfies the collision-free constraint, the hybrid A* method can be used to plan the curve path, which can output a reasonable curve path as much as possible while ensuring the efficiency of path planning.
[0079] According to one embodiment of this application, the two straight paths connected by the curved path include a first straight path and a second straight path. The input of the Dubins curve method includes a start point and an end point. The start point includes any point in the first end segment of the first straight path, and the end point includes any point in the second end segment of the second straight path. The position of the first end segment on the first straight path corresponds to the position of the second end segment on the second straight path.
[0080] Specifically, the first end segment can be the segment where the robot first traverses the first straight path, and the second end segment can be the segment where the robot last traverses the second straight path. Figure 3c Taking the direction of the work path shown as an example, we can illustrate the positional correspondence between the first end segment and the second end segment. The first end segment can be the upper segment of the first straight path, and the second end segment can be the upper segment of the second straight path.
[0081] For example, a starting point can be selected from multiple points in the first end segment, and an ending point can be selected from multiple points in the second end segment, thus obtaining a set of starting and ending points. Multiple sets of starting and ending points can be obtained by combining different starting and ending points. In one example, each set of starting and ending points can be traversed, and a first initial curve path can be obtained using dubins curves, until this first initial curve path satisfies the collision-free constraint. If a curve path satisfying the collision-free constraint is not obtained after traversing multiple sets of starting and ending points, the hybrid A* method can be used for curve path planning.
[0082] Furthermore, the input to the Dubins curve method can also include the direction of travel from the starting point and the direction of travel from the ending point. Figure 3c Taking the direction of the work path shown as an example, the starting point's forward direction can be upward or downward. When the starting point's forward direction is upward, the ending point's forward direction is downward; when the starting point's forward direction is downward, the ending point's forward direction is upward. Furthermore, the input to the Dubins curve method can also include the robot's turning radius constraint, meaning the turning radius of the curve path needs to be greater than or equal to a preset turning radius. The preset turning radius can be set according to actual needs, such as 0.4 meters, 0.5 meters, or other values.
[0083] In this embodiment, by selecting any point in the first end segment as the starting point and any point in the second end segment as the ending point, the success rate of the Dubins curve method can be improved.
[0084] Similarly, in one embodiment, the input to the hybrid A* method includes a start point and an end point. As described above, the start point may include any point in the first end segment of the first straight path, and the end point may include any point in the second end segment of the second straight path. Further, the input to the hybrid A* method may also include the forward direction of the start point and the forward direction of the end point. The forward direction of the start point and the forward direction of the end point are described above. Further, the input to the hybrid A* method may also include a grid map, the extent of which may be equal to or greater than the extent corresponding to the current merged sub-region or the remaining sub-region. Since the input to the hybrid A* method includes a grid map, the operation of the hybrid A* method is performed in the blank grid cells (not restricted areas) of the grid map, meaning that the curve path output by the hybrid A* method satisfies the collision-free constraint.
[0085] In other embodiments, the input to the hybrid A* method may further include a turning radius constraint for the robot, i.e., the turning radius of the curved path needs to be greater than or equal to a preset turning radius, which can be set according to actual needs, such as 0.4 meters, 0.5 meters or other values.
[0086] According to one embodiment of this application, step 240 may include: sorting the merged sub-regions and the remaining sub-regions according to a predetermined rule to obtain a sorting result, and planning the connection path between adjacent areas in the merged sub-regions and the remaining sub-regions according to the sorting result to obtain a planned path.
[0087] Specifically, after the merging process is completed, the multiple regions (merged sub-regions and remaining sub-regions) are sorted according to a predetermined rule to obtain the sorting result. The predetermined rule can be set before the path planning method provided in this application embodiment is executed, or it can be set during the execution of the path planning method provided in this application embodiment.
[0088] In some examples, the predetermined rules can be random rules or specific algorithms. For example, the sorting process can be performed manually or by an algorithm. Based on the sorting results, adjacent sorted regions can be connected sequentially, i.e., connection paths between adjacent sorted regions can be planned. The connection paths between regions and the work paths within each region together constitute the planned path covering the target work area. The connection path planning method can be the dubins curve method, the hybrid A* method, or other path planning methods.
[0089] In this embodiment, by sorting the merged sub-regions and the remaining sub-regions, the mileage of the final path can be taken into account during the sorting process, thereby obtaining a planned path with a smaller mileage and improving operational efficiency.
[0090] According to an embodiment of this application, the predetermined rules include a genetic algorithm, and the sorting result includes a first sorting result. The merged sub-regions and remaining sub-regions are sorted according to the predetermined rules to obtain a sorting result. Connection paths between adjacent regions in the merged sub-regions and remaining sub-regions are planned according to the sorting result to obtain a planned path. This includes: using a genetic algorithm to sort the merged sub-regions and remaining sub-regions to obtain a first sorting result, and using the A* programming method to plan connection paths between adjacent regions in the merged sub-regions and remaining sub-regions according to the first sorting result to obtain a first path; obtaining a second sorting result based on the first sorting result using the genetic algorithm, and using the A* programming method to plan connection paths between adjacent regions in the merged sub-regions and remaining sub-regions according to the second sorting result to obtain a second path; updating the second sorting result to the first sorting result, iteratively executing the steps of obtaining the second sorting result based on the first sorting result using the genetic algorithm, and using the A* programming method to plan connection paths between adjacent regions in the merged sub-regions and remaining sub-regions according to the second sorting result to obtain a second path; and selecting a planned path from the first path and the second path with the goal of finding the shortest path.
[0091] A genetic algorithm is used to sort the merged sub-regions and the remaining sub-regions, yielding a first sorting result. This sorting can be random. Based on the first sorting result, the A* programming method is used to sequentially plan the connection paths between adjacent sorted regions in multiple regions, thus obtaining the first path. The first path can include the operation paths within each region and the connection paths between regions. A second sorting result can be obtained based on the first sorting result using the genetic algorithm. For example, the first sorting result can be replicated and mutated using the genetic algorithm to obtain the second sorting result. Based on the second sorting result, the A* programming method is used to sequentially plan the connection paths between adjacent sorted regions in multiple regions, thus obtaining the second path. The second sorting result is updated to the first sorting result, and the steps of obtaining the second sorting result based on the first sorting result using the genetic algorithm and planning the connection paths between adjacent regions in the merged sub-regions and the remaining sub-regions using the A* programming method based on the second sorting result are iteratively executed to obtain the second path.
[0092] The goal of finding the shortest path can have corresponding prerequisites. In one example, during the iteration process, when the mileage region of the second path stably converges—that is, when the mileages of the second paths obtained in the most recent iterations are very similar—the iteration process can be stopped, and the shortest path, either the second path obtained in the last iteration or the shortest path among all paths (including the first path and all second paths), can be used as the planned path. In this example, the small difference in mileage among the second paths obtained in the most recent iterations can be considered a prerequisite for finding the shortest path. In another example, an iteration count threshold can be preset. When the number of iterations reaches the preset threshold, the iteration process can be stopped, and the shortest path among all paths obtained during the iteration process (including the first path and all second paths) can be used as the planned path. In this example, the preset iteration count threshold can be considered a prerequisite for finding the shortest path.
[0093] In one example, the input to the A* planning method may include a raster map and the start and end points for each region. The raster map may be a map of the entire target work area.
[0094] In one example, if the planning process for curved paths is performed before the planning process for connecting paths, during the planning of curved paths, four start-end point routing methods can be calculated for each of the multiple regions (merged sub-regions and remaining sub-regions), resulting in four job paths. Figure 3cTaking the direction of the work path as an example, there are four possible starting points for the four starting and ending point routing methods. The starting point can be located at the top or bottom of the straight path on the outermost side (left or right) of the area. Once the starting point is determined, the ending point can be obtained by skipping forward to form a work path. The starting and ending points of each work path can then be used as the starting and ending points in the planning process of connecting paths.
[0095] In another example, if the connection path planning process is performed before the curved path planning process, during the connection path planning process, for each of the multiple regions (merged sub-regions and remaining sub-regions), any of the four starting points from the example above can be selected. The corresponding ending point can be located at the outermost end of the straight path in that region, away from the starting point. The specific end (e.g., upper or lower end) can be determined based on the parity of the straight path. This ending point can be an estimated point, close to the end of the work path, thus saving computational resources.
[0096] Each time, the genetic algorithm can output a sorting result, as well as one of the four start-end point routing methods for each region under that sorting result. That is, the genetic algorithm can not only sort multiple regions, but also select one of the four start-end point routing methods for each region.
[0097] In this embodiment, by combining genetic algorithms and A* programming methods to optimize the concatenation method between merged sub-regions and remaining sub-regions, a planned path with a shorter mileage can be obtained, thereby improving operational efficiency.
[0098] According to one embodiment of this application, the path planning method further includes: obtaining the real-time speed of a robot operating in a target work area; predicting the local work path and speed of the robot in real time using a model prediction path integral method based on the planned path and the real-time speed, thereby obtaining a predicted work path and a predicted speed; and controlling the robot to travel along the predicted work path based on the predicted speed.
[0099] Once the planned path is obtained, the robot can be controlled to perform tasks in the target work area based on the planned path.
[0100] In one example, the real-time speed of the robot operating in the target work area can be obtained. Based on the planned path and the real-time speed, the model predictive path integral (MPPI) method is used to predict the robot's local work path and speed in real time. The input to the MPPI method can include the robot's real-time speed and the planned path. The MPPI method can predict the robot's local work path and corresponding speed in real time.
[0101] For example, such as Figure 3d As shown, the initial input to the first prediction process of the model prediction path integral method can be a sequence of initial velocity values (Sequence.vx = [v1, v2, v3, ...]), which can include multiple velocity parameters, such as 10. Based on the initial velocity value sequence, multiple velocity sequences (State.cvx = [v1 + u1, v2 + u2, v3 + u3, ...]) can be obtained through Gaussian distribution sampling (random sampling), such as 500 sets. Each set of sequences is obtained by adding a noise value (u1, u2, u3) to each velocity parameter in the initial velocity value sequence. The noise values corresponding to different velocity parameters in each set of sequences can be different, such as being random, which can improve the flexibility of the local operation path, especially when turning, and reduce the risk of collision and missed scans even in small spaces. Furthermore, the noise values corresponding to the same velocity parameter in different sequences can also be different. The robot's real-time speed (current actual speed, Speed.x = [v0]) and multiple speed sequences are merged, which is equivalent to updating the state, resulting in multiple merged speed sequences (each merged speed sequence can be represented as State.vx = [v0, cv1, cv2, ...]), such as 500 sequences, each containing 11 speed parameters. Integrating each merged speed sequence yields multiple local operation paths, such as 500 local operation paths. Based on the similarity between multiple local operation paths and the planned path, a weight value is determined for each local operation path; the higher the similarity, the larger the weight value for the local operation path. Weighted calculations are performed on multiple local operation paths based on the weight values (e.g., using the normalized exponential function Softmax) to obtain the predicted operation path. Each local operation path corresponds to a set of speed sequences, meaning there is a one-to-one correspondence between the speed sequences, local operation paths, and weight values. Weighted calculations are performed on multiple speed sequences based on the weight values to obtain the predicted speed, which can be a speed sequence, such as including 10 speed parameters. The robot can be controlled to travel and perform tasks along a predicted work path based on the predicted speed.
[0102] Next, the predicted speed can be used as the initial input for the second prediction process. By repeating the first prediction process, a new predicted speed and predicted work path can be obtained. The robot can then be controlled to continue moving and working along the new predicted work path according to the new predicted speed. This process is repeated to continuously predict the robot's local work path and speed until the robot completes its work.
[0103] In one example, the input to the model's path prediction integral method for each prediction process may also include the robot's turning radius and a grid map. The process of determining the weight value for each local task path based on the similarity between multiple local task paths and the planned path may include: determining the weight value for each local task path based on the similarity between multiple local task paths and the planned path, the robot's turning radius constraint, and the grid map. This helps avoid collisions between the robot and obstacles, especially temporary obstacles, during its movement.
[0104] In this embodiment, by predicting the local operation path and speed in real time, the robot's operation path can be tracked and controlled in real time, thus avoiding collisions between the robot and obstacles, especially temporary obstacles, during actual operation.
[0105] The path planning method provided in this application merges original sub-regions and performs a skip-forward pathing in the merged area. This increases the turning radius of the curved path, providing sufficient space for each robot turn, reducing missed work areas and lowering the risk of collisions. Furthermore, the path planning method reduces the number of original sub-regions, which to some extent reduces repetitive tasks for the robot in subsequent operations, thereby improving the operational efficiency of the robot based on the planned path. In addition, this application can achieve automatic partitioning and automatic planning of full-coverage paths, thus reducing the difficulty of manual intervention and deployment.
[0106] Figure 4 The diagram shown is a flowchart of a path planning method provided in another exemplary embodiment of this application. Figure 4 The example is Figure 2 Examples of the embodiments are provided below; to avoid repetition, the similarities can be referred to the descriptions in the above embodiments, and will not be repeated here. For example... Figure 4 As shown, the path planning method may include the following:
[0107] 410: Obtain the work area through the front-end software, obtain the static map and the virtual wall corresponding to the work area through the database, perform map preprocessing based on the static map and the virtual wall, and obtain a set of target work areas.
[0108] The front-end software, database, static map, and virtual wall for the task can be found in the previous descriptions and will not be repeated here. The target task area can be the perforated polygon described above.
[0109] 420: For each target work area, divide the target work area into multiple original sub-areas.
[0110] The specific process of dividing the target work area into multiple original sub-regions can be found in the relevant descriptions in the above embodiments, and will not be repeated here.
[0111] 430: Calculate the optimal job direction for each of the multiple original subregions.
[0112] The optimal working direction can be found in the relevant descriptions in the above embodiments, and will not be repeated here.
[0113] 440: If the angle between the optimal working directions corresponding to adjacent original sub-regions is less than or equal to the first threshold, calculate the length of the overlapping part of the projection line segments of the first and second original sub-regions in the set direction. If the length is greater than or equal to the second threshold, merge the adjacent original sub-regions to obtain a merged sub-region.
[0114] The first threshold, the first original sub-region, the second original sub-region, the set direction, the projection line segment, and the second threshold can be found in the relevant descriptions in the above embodiments, and will not be repeated here.
[0115] 450: For any region among the merged sub-regions and the remaining sub-regions, divide the region into multiple parallel straight paths. These multiple straight paths are parallel to the optimal working direction corresponding to the region. Plan the curved paths between these multiple straight paths so that they are connected by the curved paths to form a working path.
[0116] The specific planning process for merging sub-regions, remaining sub-regions, straight paths, curved paths, operation paths, and straight and curved paths can be found in the relevant descriptions in the above embodiments, and will not be repeated here.
[0117] 460: Sort the merged sub-regions and the remaining sub-regions according to the predetermined rules to obtain the sorting results, and plan the connection paths between adjacent areas in the merged sub-regions and the remaining sub-regions according to the sorting results to obtain the planned paths.
[0118] The sorting results, connection paths, and the specific planning process for the connection paths can be found in the relevant descriptions in the above embodiments.
[0119] 470: Obtain the real-time speed of the robot running in the target work area. Based on the planned path and the real-time speed, use the model prediction path integral method to predict the local work path and speed of the robot in real time, obtain the predicted work path and predicted speed, and control the robot to travel along the predicted work path based on the predicted speed.
[0120] The predicted job path, predicted speed, and specific prediction process can be found in the relevant descriptions in the above embodiments, and will not be repeated here.
[0121] Exemplary device
[0122] Figure 5 The diagram shown is a structural schematic of a path planning device 500 provided in an exemplary embodiment of this application. Figure 5 As shown, the path planning device 500 includes: a division module 510, a calculation module 520, a merging module 530, and a planning module 540.
[0123] The partitioning module 510 divides the target work area into multiple original sub-regions. The calculation module 520 calculates the optimal work direction for each of the multiple original sub-regions. The merging module 530 merges adjacent original sub-regions to obtain merged sub-regions if the angle between the optimal work directions of adjacent original sub-regions is less than or equal to a first threshold. The planning module 540 performs path planning based on the merged sub-regions and the remaining sub-regions to obtain a planned path, wherein the remaining sub-regions are obtained from the original sub-regions after removing adjacent original sub-regions.
[0124] This application provides a path planning device that calculates the optimal working direction for each of multiple original sub-regions. When the angle between the optimal working directions of adjacent original sub-regions is less than or equal to a first threshold, adjacent original sub-regions are merged to obtain a merged sub-region. This reduces the number of original sub-regions, simplifies the path planning, and improves the working efficiency of robots that perform operations based on the planned path.
[0125] According to one embodiment of this application, the optimal working direction of the original sub-region is used to represent the direction with the largest weighted sum of the equivalent length of the original sub-region and the area of the continuous region of the original sub-region. For any working direction, the equivalent length is used to represent the length of the longest line segment that intersects the original sub-region with a line parallel to the working direction, and the continuous region is used to represent the complete region with the largest area divided by two lines parallel to the working direction.
[0126] According to an embodiment of this application, adjacent original sub-regions include at least a first original sub-region and a second original sub-region. The merging module 530 is used to: calculate the length of the overlapping portion of the projection line segments of the first original sub-region and the second original sub-region in a set direction when the included angle between the optimal working directions corresponding to the adjacent original sub-regions is less than or equal to a first threshold, wherein the set direction is obtained based on the optimal working direction corresponding to the first original sub-region and / or the optimal working direction corresponding to the second original sub-region; and merge the adjacent original sub-regions to obtain a merged sub-region when the length is greater than or equal to a second threshold.
[0127] According to one embodiment of this application, the planning module 540 is used to: divide a region into multiple parallel straight paths for any one of the merged sub-regions and the remaining sub-regions, wherein the multiple straight paths are parallel to the optimal working direction corresponding to the region; plan curved paths between the multiple straight paths so that the multiple straight paths are connected by curved paths to form a working path, wherein the two straight paths connected by the curved paths in the working path include at least one of the multiple straight paths; and obtain the planned path based on the working path of the region.
[0128] According to one embodiment of this application, the planning module 540 is used to: plan a first initial curve path among multiple straight paths using the Dubins curve method; and, if the first initial curve path satisfies the no-collision constraint, use the first initial curve path as the curve path among the multiple straight paths.
[0129] According to one embodiment of this application, the planning module 540 is further configured to: plan a second initial curve path among multiple straight paths using the hybrid A* method when the first initial curve path does not satisfy the no-collision constraint; and use the second initial curve path as the curve path among the multiple straight paths.
[0130] According to one embodiment of this application, the two straight paths connected by the curved path include a first straight path and a second straight path. The input of the Dubins curve method includes a start point and an end point. The start point includes any point in the first end segment of the first straight path, and the end point includes any point in the second end segment of the second straight path. The position of the first end segment on the first straight path corresponds to the position of the second end segment on the second straight path.
[0131] According to one embodiment of this application, the planning module 540 is used to: sort the merged sub-regions and the remaining sub-regions according to a predetermined rule to obtain a sorting result, and plan the connection path between adjacent areas in the merged sub-regions and the remaining sub-regions according to the sorting result to obtain a planned path.
[0132] According to an embodiment of this application, the predetermined rule includes a genetic algorithm, and the sorting result includes a first sorting result. The planning module 540 is used to: sort the merged sub-regions and the remaining sub-regions using a genetic algorithm to obtain a first sorting result, and plan the connection path between adjacent regions in the merged sub-regions and the remaining sub-regions according to the first sorting result using the A* planning method to obtain a first path; obtain a second sorting result based on the first sorting result using a genetic algorithm, and plan the connection path between adjacent regions in the merged sub-regions and the remaining sub-regions according to the second sorting result using the A* planning method to obtain a second path; update the second sorting result to the first sorting result, iteratively execute the steps of obtaining the second sorting result based on the first sorting result using a genetic algorithm, and planning the connection path between adjacent regions in the merged sub-regions and the remaining sub-regions according to the second sorting result using the A* planning method to obtain a second path; and select a planned path from the first path and the second path with the goal of minimizing the path length.
[0133] According to one embodiment of this application, the planning module 540 is further configured to: obtain the real-time speed of the robot running in the target work area; predict the local work path and speed of the robot in real time using the model prediction path integral method based on the planned path and the real-time speed, thereby obtaining the predicted work path and predicted speed; and control the robot to travel along the predicted work path based on the predicted speed.
[0134] It should be understood that the operation and function of the partitioning module 510, calculation module 520, merging module 530, and planning module 540 in the above embodiments can be referred to the above. Figure 2 or Figure 4 The description of the path planning method provided in the embodiments will not be repeated here to avoid repetition.
[0135] This application also provides a robot, which includes a control module for executing the path planning method provided in any of the above embodiments.
[0136] In some embodiments, the robot may be a cleaning robot, which may be vehicle-shaped or other shapes. In other embodiments, the robot may be a seeding, spraying, or other robot.
[0137] The operation and functions of the robot provided in this application embodiment can be referred to the above. Figure 2 or Figure 4 The description of the path planning method provided in the embodiments will not be repeated here to avoid repetition.
[0138] Figure 6 The diagram shown is a block diagram of an electronic device 600 for performing a path planning method according to an exemplary embodiment of this application. Specifically, the electronic device 600 may be a robot, a remote control device for controlling the robot, or other devices.
[0139] Reference Figure 6 The electronic device 600 includes a processing component 610, which further includes one or more processors, and memory resources represented by memory 620 for storing instructions executable by the processing component 610, such as application programs. The application programs stored in memory 620 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 610 is configured to execute instructions to perform the path planning method described above.
[0140] Electronic device 600 may also include a power supply component configured to perform power management of electronic device 600, a wired or wireless network interface configured to connect electronic device 600 to a network, and an input / output (I / O) interface. Electronic device 600 can be operated based on an operating system stored in memory 620, such as Windows Server. TM Mac OSX TM Unix TM Linux TM FreeBSD TM Or similar.
[0141] A non-transitory computer-readable storage medium, wherein when instructions in the storage medium are executed by the processor of the aforementioned electronic device 600, the electronic device 600 is enabled to perform a path planning method.
[0142] All of the above-mentioned optional technical solutions can be combined in any way to form optional embodiments of this application, and will not be described in detail here.
[0143] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0144] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0145] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0146] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0147] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0148] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program verification codes, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0149] It should be noted that in the description of this application, the terms "first," "second," "third," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Furthermore, in the description of this application, unless otherwise stated, "a plurality of" means two or more.
[0150] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.
[0151] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Any modifications or equivalent substitutions made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A path planning method, characterized in that, include: The target work area is divided into multiple original sub-areas; Calculate the optimal working direction for each of the plurality of original sub-regions; If the angle between the optimal working directions corresponding to adjacent original sub-regions is less than or equal to a first threshold, the adjacent original sub-regions are merged to obtain a merged sub-region. Path planning is performed based on the merged sub-regions and the remaining sub-regions to obtain a planned path. The remaining sub-regions are obtained by removing the adjacent original sub-regions from the plurality of original sub-regions. Wherein, the adjacent original sub-regions include at least a first original sub-region and a second original sub-region, wherein merging the adjacent original sub-regions to obtain a merged sub-region when the included angle between the optimal working directions corresponding to the adjacent original sub-regions is less than or equal to a first threshold includes: When the angle between the optimal working directions corresponding to the adjacent original sub-regions is less than or equal to the first threshold, the length of the overlapping portion of the projected line segments of the first original sub-region and the second original sub-region in the set direction is calculated, wherein the set direction is obtained based on the optimal working direction corresponding to the first original sub-region and / or the optimal working direction corresponding to the second original sub-region. If the length is greater than or equal to the second threshold, the adjacent original sub-regions are merged to obtain a merged sub-region.
2. The path planning method according to claim 1, characterized in that, The optimal working direction of the original sub-region is used to represent the direction with the largest weighted sum of the equivalent length of the original sub-region and the area of the continuous region of the original sub-region. For any working direction, the equivalent length is used to represent the length of the longest line segment that intersects the original sub-region with a line parallel to the working direction. The continuous region is used to represent the complete region with the largest area divided by two lines parallel to the working direction.
3. The path planning method according to claim 1, characterized in that, The path planning based on the merged sub-region and the remaining sub-region to obtain the planned path includes: For any one of the merged sub-regions and the remaining sub-regions, multiple parallel straight-line paths are divided in the region, and the multiple straight-line paths are parallel to the optimal working direction corresponding to the region. Plan a curved path between the plurality of straight paths so that the plurality of straight paths are connected by the curved path to form a work path, wherein the two straight paths connected by the curved path in the work path include at least one of the plurality of straight paths. The planned path is obtained based on the work path in the region.
4. The path planning method according to claim 3, characterized in that, The planning of curved paths between the multiple straight paths, so that the multiple straight paths are connected by the curved paths to form a work path, includes: The Dubins curve method is used to plan the first initial curve path among the multiple straight-line paths; If the first initial curve path satisfies the no-collision constraint, the first initial curve path is used as the curve path among the plurality of straight paths.
5. The path planning method according to claim 4, characterized in that, The method of planning curved paths between the multiple straight paths, so that the multiple straight paths are connected by the curved paths to form a work path, further includes: If the first initial curve path does not meet the collision-free constraint, the hybrid A* method is used to plan the second initial curve path among the multiple straight paths; The second initial curve path is used as the curve path between the plurality of straight paths.
6. The path planning method according to claim 4, characterized in that, The two straight paths connected by the curved path include a first straight path and a second straight path. The input of the Dubins curve method includes a start point and an end point. The start point includes any point in the first end segment of the first straight path, and the end point includes any point in the second end segment of the second straight path. The position of the first end segment on the first straight path corresponds to the position of the second end segment on the second straight path.
7. The path planning method according to claim 1, characterized in that, The path planning based on the merged sub-region and the remaining sub-region to obtain the planned path includes: The merged sub-regions and the remaining sub-regions are sorted according to predetermined rules to obtain a sorting result. Then, the connection paths between adjacent areas in the merged sub-regions and the remaining sub-regions are planned according to the sorting result to obtain the planned path.
8. The path planning method according to claim 7, characterized in that, The predetermined rules include a genetic algorithm, the sorting result includes a first sorting result, and the process of sorting the merged sub-region and the remaining sub-region according to the predetermined rules to obtain the sorting result, and planning the connection path between adjacent regions in the merged sub-region and the remaining sub-region according to the sorting result to obtain the planned path, includes: The genetic algorithm is used to sort the merged sub-region and the remaining sub-region to obtain the first sorting result. Then, according to the first sorting result, the A* programming method is used to plan the connection path between adjacent regions in the merged sub-region and the remaining sub-region to obtain the first path. The genetic algorithm obtains a second sorting result based on the first sorting result, and the A* programming method is used to plan the connection path between adjacent regions in the merged sub-region and the remaining sub-region according to the second sorting result to obtain the second path; The second sorting result is updated to the first sorting result, and the steps of obtaining the second sorting result based on the first sorting result using the genetic algorithm and planning the connection path between adjacent regions in the merged sub-region and the remaining sub-region using the A* programming method according to the second sorting result are executed iteratively to obtain the second path. With the goal of finding the shortest path, the planned path is selected from the first path and the second path.
9. The path planning method according to any one of claims 1 to 8, characterized in that, Also includes: Obtain the real-time speed of the robot operating in the target work area; Based on the planned path and the real-time speed, the model prediction path integral method is used to predict the robot's local operation path and speed in real time, thereby obtaining the predicted operation path and predicted speed. The robot is controlled to travel along the predicted work path based on the predicted speed.
10. A robot, characterized in that, It includes a control module, which is used to execute the path planning method according to any one of claims 1 to 9.
11. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions. The processor is used to execute the path planning method according to any one of claims 1 to 9.
12. A computer-readable storage medium, characterized in that, The storage medium stores a computer program for executing the path planning method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Path planning method for effectively improving efficiency of agricultural machinery operation
CN109828575A
Full-coverage movement path planning method for automatic concrete pouring
CN110502007A
Path planning method and self-moving device
CN116360453A
Full-coverage path planning method, device and equipment for automatic agricultural machinery
CN116880497A
Multi-unmanned aerial vehicle area detection full-coverage task planning method
CN117369515A