Path Planning Method, Device, and Self-Mobile Device for Multiple Self-Mobile Devices

By predicting the collision position and setting the target obstacle avoidance update path, the collision risk caused by crossing the paths of mobile devices is solved, and the operation efficiency and safety are improved.

CN115167426BActive Publication Date: 2025-07-22ECOFLOW INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210833719.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-15
Publication Date
2025-07-22
Estimated Expiration
2042-07-15

AI Technical Summary

Technical Problem

When multiple self-mobile devices are planning paths within the same work area, path crossing can lead to collision risks, affect job safety and inefficiency.

Method used

By predicting the collision locations between mobile devices, selectable obstacle avoidance points are determined and the planned paths of the device are updated according to these points to set target obstacle avoidance points, prevent path crossing, reduce the chance of collision and reduce the frequency of equipment adjusting motion state.

Benefits of technology

Effectively reduce the chance of collision of self-mobile devices, improve operational efficiency, and reduce the frequency of equipment adjusting its motion state.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115167426B_ABST
    Figure CN115167426B_ABST
Patent Text Reader

Abstract

An embodiment of the present application provides a path planning method, apparatus, and self-moving device for multiple self-moving devices. The method includes: obtaining a predicted collision position between each self-moving device according to the planned path and motion data of each self-moving device; determining a plurality of optional obstacle avoidance points according to the predicted collision position; determining a target obstacle avoidance point for each self-moving device according to the positional relationship between each optional obstacle avoidance point, the predicted collision position, and the planned path of each self-moving device; and updating the planned path of the corresponding self-moving device according to the target obstacle avoidance point of each self-moving device. By predicting the collision position in advance, setting different target obstacle avoidance points for different self-moving devices according to the collision position, and updating the paths of each self-moving device according to the target obstacle avoidance points, it is possible to prevent the paths from crossing, reduce the probability of collision during the operation of the self-moving device, and at the same time reduce the frequency of adjusting the motion state of the self-moving device, thereby improving the operation efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of path planning, and in particular, to a path planning method, device, self-mobile device, and storage medium for multiple self-mobile devices. Background Art

[0002] When planning paths for multiple self-mobile devices in the same working area, path intersections of different self-mobile devices may occur, and there may be a risk of collision between self-mobile devices at the intersection positions, affecting the safety of self-mobile device operations.

[0003] Currently, sensors of self-mobile devices are used to detect the surrounding environment in real time, and the motion state is adjusted in a timely manner when it is judged that a collision may occur. However, such methods have high requirements for self-mobile devices and low operation efficiency. Summary of the Invention

[0004] Embodiments of this application provide a path planning method, device, self-mobile device, and storage medium for multiple self-mobile devices, which can reduce the probability of collision between self-mobile devices and improve operation efficiency.

[0005] In a first aspect, this application provides a path planning method for multiple self-mobile devices, the method including:

[0006] Obtain the planned path and motion data of each self-mobile device;

[0007] According to the planned path and motion data of each self-mobile device, obtain the predicted collision positions between the self-mobile devices;

[0008] Determine a plurality of optional obstacle avoidance points around the predicted collision positions according to the predicted collision positions;

[0009] Determine the target obstacle avoidance points of the self-mobile devices according to the positional relationship between the optional obstacle avoidance points and the planned paths of the self-mobile devices; the target obstacle avoidance points of the self-mobile devices are points at different positions;

[0010] Update the planned path of the corresponding self-mobile device according to the target obstacle avoidance points of the self-mobile devices.

[0011] In a second aspect, this application provides a path planning device, including:

[0012] One or more processors, which work alone or jointly, and are used to implement the steps of the path planning method for multiple self-mobile devices described above.

[0013] In a third aspect, this application provides a self-mobile device, including:

[0014] One or more processors, which work individually or jointly to implement the steps of the path planning method for the aforementioned multi-self-mobile devices.

[0015] In a fourth aspect, the present application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, causes the processor to implement the steps of the path planning method for the multi-self-mobile devices described above.

[0016] The present application discloses a path planning method, device, self-mobile device, and storage medium for multi-self-mobile devices. The method includes: obtaining the predicted collision positions between the self-mobile devices according to the planned paths and motion data of each self-mobile device; determining a plurality of optional obstacle avoidance points based on the predicted collision positions; determining the target obstacle avoidance points of each self-mobile device according to the positional relationships between the optional obstacle avoidance points, the predicted collision positions, and the planned paths of each self-mobile device; the target obstacle avoidance points of each self-mobile device are points at different positions; and updating the planned path of the corresponding self-mobile device according to the target obstacle avoidance points of each self-mobile device. In the embodiments of the present application, by predicting the collision positions in advance, setting different target obstacle avoidance points for different self-mobile devices according to the collision positions, and updating the paths of the respective self-mobile devices according to the target obstacle avoidance points, it is possible to prevent the generated paths from crossing each other. Therefore, when the self-mobile devices run along the paths planned according to the target obstacle avoidance points, the probability of collision is greatly reduced; moreover, updating the paths according to the target obstacle avoidance points can enable the self-mobile devices to reduce the adjustment actions for collision avoidance and improve the operation efficiency. Description of the Drawings

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0018] Figure 1 It is a schematic flowchart of the path planning method for the multi-self-mobile devices according to the embodiments of the present application;

[0019] Figure 2 It is a schematic diagram of the predicted collision positions between self-mobile devices in an embodiment;

[0020] Figure 3 It is a schematic diagram of determining optional obstacle avoidance points in an embodiment;

[0021] Figure 4 It is a schematic diagram of updating the planned path according to the target obstacle avoidance points in an embodiment;

[0022] Figure 5 Schematic diagram for determining optional obstacle avoidance points in another embodiment;

[0023] Figure 6 Schematic diagram for updating a planned path according to a target obstacle avoidance point in one embodiment;

[0024] Figure 7 Schematic diagram for updating a planned path according to a target obstacle avoidance point in another embodiment;

[0025] Figure 8 Schematic diagram for an eight-neighborhood search method based on a grid map in one embodiment;

[0026] Figure 9 Schematic diagram for optimizing a path turning line segment in one embodiment;

[0027] Figure 10 Schematic block diagram of a path planning device provided by an embodiment of the present application;

[0028] Figure 11 Schematic block diagram of a self-mobile device provided by an embodiment of the present application. Detailed implementation manners

[0029] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0030] The flowcharts shown in the accompanying drawings are only illustrative examples, and do not necessarily include all the contents and operations / steps, nor do they necessarily need to be executed in the described order. For example, some operations / steps can also be decomposed, combined, or partially merged, so the actual execution order may change according to the actual situation.

[0031] The embodiments of the present application provide a path planning method, device, self-mobile device, and storage medium for multiple self-mobile devices. By predicting the collision position in advance, setting different target obstacle avoidance points for different self-mobile devices according to the collision position, and updating the paths of the respective self-mobile devices according to the target obstacle avoidance points, planning paths according to different target obstacle avoidance points can prevent intersections from occurring between the obtained paths. Therefore, when the self-mobile device runs along the path planned according to the target obstacle avoidance point, the probability of collision is greatly reduced; moreover, updating the path according to the target obstacle avoidance point can enable the self-mobile device to reduce collision avoidance adjustment actions and improve the operation efficiency.

[0032] Please refer to Figure 1 , Figure 1It is a schematic flowchart of a path planning method for multiple self - moving devices provided by an embodiment of the present application. The path planning method for multiple self - moving devices is used to update the planned paths of multiple self - moving devices, so as to reduce the probability of collision between self - moving devices and improve the operation efficiency. For the sake of convenience of description, the embodiment of the present application mainly takes updating the planned paths of two self - moving devices as an example for illustration. It should be understood that multiple self - moving devices are not limited to including two self - moving devices.

[0033] The path planning method for multiple self - moving devices provided by the embodiment of the present application can be applied to a path planning device. The path planning device is, for example, a chip or a circuit in a self - moving device, or can also be a control device or a chip or a circuit in a control device.

[0034] The path planning method for multiple self - moving devices provided by the embodiment of the present application can be applied to self - moving devices. The self - moving devices include, for example, robots, such as lawn mowing robots, floor cleaning robots, mine sweeping robots, cruise robots, etc. The present embodiment does not make special limitations on this.

[0035] The path planning method for multiple self - moving devices provided by the embodiment of the present application can be applied to a control device of self - moving devices such as a terminal or a server. The terminal can be a control device such as a mobile phone, a tablet computer, a laptop computer, a desktop computer, a personal digital assistant, etc.; the server can be an independent server or a server cluster.

[0036] Next, with reference to the accompanying drawings, some embodiments of the present application will be described in detail. Without conflict, the following embodiments and the features in the embodiments can be combined with each other.

[0037] As Figure 1 shown, the path planning method for multiple self - moving devices includes the following steps S110 to S150.

[0038] Step S110: Obtain the planned path and motion data of each self - moving device.

[0039] In some embodiments, multiple self - moving devices can communicate with each other, or multiple self - moving devices can all communicate with a control device, so that the self - moving device or the control device can obtain the planned path and motion data of each self - moving device.

[0040] In some embodiments, each mobile device stores its own planned path and motion data, and can transmit its own planned path and motion data to the self-mobile device applying the path planning method. Alternatively, each mobile device can transmit its own planned path and motion data to the control device applying the path planning method, or the control device stores the planned path and motion data of each self-mobile device, and the control device executes the steps of the path planning method according to the planned path and motion data of each self-mobile device.

[0041] Exemplarily, the planned path of the self-mobile device can be a path input by the user, or a path automatically planned by the self-mobile device. For example, the self-mobile device can explore the working environment through sensors such as radar and visual sensors, and plan the planned path according to the information of the working environment. Of course, it is not limited to this. For example, the planned path of the self-mobile device can also be a path updated by the path planning method of this embodiment of the application. For example, after the path planning method updates the planned paths of multiple self-mobile devices, a new self-mobile device is added, or the motion data of the self-mobile device changes, then the planned path of each self-mobile device can be updated again according to the path planning method.

[0042] For example, the motion data of the self-mobile device includes but is not limited to at least one of the following: departure time at the starting point, moving speed, and pause time at the pause position. The motion data of the self-mobile device can be specified by the user, or can also be determined according to the task requirements of the self-mobile device.

[0043] Step S120: According to the planned path and motion data of each self-mobile device, obtain the predicted collision positions between the self-mobile devices.

[0044] Please refer to Figure 2 , the planned path between the starting point E and the ending point H of the self-mobile device M1 is represented by a solid line, and the planned path between the starting point F and the ending point G of the self-mobile device M2 is represented by a dotted line.

[0045] Exemplarily, simulation calculations can be performed according to the planned path and motion data of each self-mobile device to obtain the predicted collision positions between the self-mobile devices.

[0046] For example, when the self-mobile device M1 and the self-mobile device M2 start simultaneously at their respective starting points, and have the same moving speed, and the path length between the intersection point of the planned paths of the self-mobile device M1 and the self-mobile device M2 and the starting point E of the self-mobile device M1 and the starting point F of the self-mobile device M2 is equal, it can be determined that the intersection point of the planned paths of the self-mobile device M1 and the self-mobile device M2 is the predicted collision position.

[0047] Step S130: Determine a plurality of optional obstacle avoidance points around the predicted collision position according to the predicted collision position.

[0048] Please refer to Figure 3 , the plurality of optional obstacle avoidance points around the predicted collision position include optional obstacle avoidance point A, optional obstacle avoidance point B, optional obstacle avoidance point C, and optional obstacle avoidance point D.

[0049] Step S140: Determine the target obstacle avoidance points of the self - moving devices according to the positional relationship between each of the optional obstacle avoidance points and the planned paths of the self - moving devices; the target obstacle avoidance points of the self - moving devices are points at different positions.

[0050] In some embodiments, the target obstacle avoidance points of each self - moving device are all on the left side of the planned path of the corresponding self - moving device. For example, determine optional obstacle avoidance point D as the target obstacle avoidance point of self - moving device M1, and determine optional obstacle avoidance point A as the target obstacle avoidance point of self - moving device M2; or the target obstacle avoidance points of each self - moving device are all on the right side of the planned path of the corresponding self - moving device. For example, determine optional obstacle avoidance point B as the target obstacle avoidance point of self - moving device M1, and determine optional obstacle avoidance point C as the target obstacle avoidance point of self - moving device M2.

[0051] Step S150: Update the planned paths of the corresponding self - moving devices according to the target obstacle avoidance points of the self - moving devices.

[0052] In some embodiments, the target obstacle avoidance points of each self - moving device are located on the updated planned path of the corresponding self - moving device, or the distance from the updated planned path is less than a preset value. For example, the target obstacle avoidance point is located near the updated planned path, and the effect of collision avoidance can also be achieved.

[0053] For example, please refer to Figure 4 , the updated planned path of self - moving device M1 sequentially passes through the starting point E, position A, the position D of self - moving device M1, position C, and the end point H; the updated planned path of self - moving device M2 sequentially passes through the starting point F, position B, the position A of self - moving device M2, position D, and the end point G.

[0054] For example, when the self - moving device M1 and the self - moving device M2 are running along their respective updated planned paths, when the self - moving device M1 reaches position A, the self - moving device M2 reaches position B. Then the self - moving device M1 moves from position A to position D, the self - moving device M2 moves from position B to position A, and when the self - moving device M1 reaches position D, the self - moving device M2 reaches position A. Then the self - moving device M1 moves from position D to position C, and the self - moving device M2 moves from position A to position D. It can be determined that the self - moving device M1 and the self - moving device M2 are running along their respective updated planned paths, and collisions between the self - moving device M1 and the self - moving device M2 can be prevented. During this period, the self - moving device M1 only needs to adjust its motion state, such as turning, at positions A, D, and C, and the self - moving device M2 only needs to adjust its motion state at positions B, A, and D. It can be determined that the self - moving device M1 and the self - moving device M2 are running along their respective updated planned paths, which can reduce the frequency of the self - moving device adjusting its motion state and improve the operation efficiency.

[0055] In some embodiments, among the multiple optional obstacle - avoidance points set around the predicted collision position according to the predicted collision position: the distances between each of the optional obstacle - avoidance points and the predicted collision position are the same. This can reduce the computational complexity when determining each optional obstacle - avoidance point. Please refer to Figure 5 , for example, a circle can be determined with the predicted collision position as the center and a preset distance as the radius, and the multiple optional obstacle - avoidance points set around the predicted collision position are determined on this circle. It can be understood that the distances between each optional obstacle - avoidance point and the predicted collision position are all equal to the preset distance.

[0056] Exemplarily, the preset distance is in a positive correlation with the size of the operation area of the self - moving device. The operation area of the self - moving device can be determined according to at least one of the shape, volume, turning radius, etc. of the self - moving device during operation.

[0057] By determining the distances between each optional obstacle - avoidance point and the predicted collision position according to the operation area of the self - moving device, the self - moving device can turn when it moves to a suitable distance from the predicted collision position, preventing collisions due to the shape of the self - moving device, etc. when turning when the distance between a self - moving device and the predicted collision position is relatively close, such as the mowing devices extending in front of the self - moving devices colliding with each other.

[0058] In some embodiments, among the multiple optional obstacle - avoidance points set around the predicted collision position according to the predicted collision position: each of the optional obstacle - avoidance points is located on the planned path of its respective moving device.

[0059] Exemplarily, the distances between each of the optional obstacle avoidance points and the predicted collision position are the same, and each of the optional obstacle avoidance points is located on the planned path of its respective mobile device.

[0060] Please refer to Figures 3 to 5 , optional obstacle avoidance point A and optional obstacle avoidance point C are located on the planned path of the mobile device M1, and optional obstacle avoidance point B and optional obstacle avoidance point D are located on the planned path of the mobile device M2. By determining the optional obstacle avoidance points on the planned path of the mobile device, the computational complexity when determining each optional obstacle avoidance point can be reduced.

[0061] Exemplarily, the step of determining a plurality of optional obstacle avoidance points arranged around the predicted collision position according to the predicted collision position includes: determining the circumference where the optional obstacle avoidance points are located with the predicted collision position as the center and a preset distance as the radius; the preset distance is positively correlated with the size of the working area of the mobile device; and determining the intersection points of the circumference and the planned path of each mobile device as the optional obstacle avoidance points. As Figure 5 shown, determining the intersection points of the circumference and the planned path of the mobile device M1 as optional obstacle avoidance point A and optional obstacle avoidance point C, and determining the intersection points of the circumference and the planned path of the mobile device M2 as optional obstacle avoidance point B and optional obstacle avoidance point D.

[0062] In some embodiments, the step S140 determines the target obstacle avoidance points of each mobile device according to the positional relationship between each optional obstacle avoidance point and the planned path of each mobile device, including: determining the intersection points of the planned path of each mobile device and the circumference, and taking the first passed intersection point as the target path point; among each optional obstacle avoidance point, determining the optional obstacle avoidance point adjacent to the target path point of each mobile device as the target obstacle avoidance point of the mobile device, and the target obstacle avoidance point of each mobile device and the corresponding target path point are both distributed clockwise or both distributed counterclockwise with the predicted collision position as the center.

[0063] As Figure 5 shown, for example, the first intersection point A of the circumference and the planned path of the mobile device M1 is the target path point A of the mobile device M1, and determining the optional obstacle avoidance point D adjacent to the target path point A as the target obstacle avoidance point D of the mobile device M1, the target obstacle avoidance point D of the mobile device M1 and the target path point A are distributed clockwise with the predicted collision position as the center; the first intersection point B of the circumference and the planned path of the mobile device M2 is the target path point B of the mobile device M2, and determining the optional obstacle avoidance point A adjacent to the target path point B as the target obstacle avoidance point A of the mobile device M2, the target obstacle avoidance point A of the mobile device M2 and the target path point B are also distributed clockwise with the predicted collision position as the center.

[0064] By arranging the target obstacle avoidance points and the corresponding target path points of each of the self - moving devices to be distributed clockwise or counter - clockwise around the predicted collision position as the center, when the self - moving device runs along the updated planned path, at a certain distance from the predicted collision position, it can bypass the predicted collision position in the same direction to prevent collisions.

[0065] In some other embodiments, it is possible to determine the target obstacle avoidance points of some of the self - moving devices corresponding to the predicted collision position, and update the planned paths of these self - moving devices according to the target obstacle avoidance points of these self - moving devices. The planned paths of the other self - moving devices corresponding to the predicted collision position may not be updated. Please refer to Figure 5 , for the self - moving devices corresponding to the predicted collision position including self - moving device M1 and self - moving device M2, it is possible to determine the first intersection point B between the circumference and the planned path of self - moving device M2, which is also the target path point B of self - moving device M2. Determine the optional obstacle avoidance point A adjacent to the target path point B, which is also the target obstacle avoidance point A of the self - moving device. The updated planned path of self - moving device M2 can be expressed as F - B - A - D - G. The planned path of self - moving device M1 can remain as E - A - C - H. For example, when self - moving device M1 reaches position A, self - moving device M2 reaches position B; then self - moving device M1 moves from position A to position C, and self - moving device M2 moves from position B to position A, and when self - moving device M2 reaches position A, self - moving device M1 is between position A and position C. Then when self - moving device M2 reaches position C, self - moving device M2 is between position A and position D, which can prevent self - moving device M1 and self - moving device M2 from colliding. During this period, self - moving device M2 only needs to adjust its motion state at positions B, A, and D, which can reduce the frequency of self - moving device adjusting its motion state and improve the operation efficiency.

[0066] In some embodiments, the original path points on the planned path include a starting point, several intermediate points, and an ending point. As Figure 6 shown, the original path points on the planned path include starting point P0, intermediate point P1, intermediate point P2, and ending point P0'.

[0067] It should be noted that the several intermediate points may include preset positions on the planned path except the starting point and the ending point, or may include any one or more positions on the planned path except the starting point and the ending point. For example, the intermediate points can be determined according to the intersection points of the circumference and the planned path. Please refer to Figure 5, the plurality of intermediate points may include intersections of the circumference and the planned path of the self - moving device, such as intersection point A and intersection point C.

[0068] When updating the planned path corresponding to each self - moving device according to the target obstacle - avoiding points of each self - moving device, path planning is performed based on the original path points on the planned path and the target obstacle - avoiding points of the self - moving device to obtain the updated planned path.

[0069] Exemplarily, updating the planned path corresponding to each self - moving device according to the target obstacle - avoiding points of each self - moving device includes: obtaining a first path according to the starting point, the target obstacle - avoiding point, and the direction in which the intermediate points between the starting point and the target obstacle - avoiding point extend towards the ending point; obtaining a second path according to the ending point, the target obstacle - avoiding point, and the direction in which the intermediate points between the starting point and the target obstacle - avoiding point extend towards the starting point; when the first path and the second path extend to the same intermediate point or the target obstacle - avoiding point, splicing the first path and the second path to obtain the updated planned path. By planning the first path starting from the starting point and the second path starting from the ending point, two - way path planning can be achieved to improve the planning efficiency; and it is convenient to add the constraint of the target obstacle - avoiding point during the path - planning process so that the updated path can bypass at the target obstacle - avoiding point. It more stably and effectively reduces the time of path planning and quickly plans a better path.

[0070] For example, such as Figure 6As shown, according to the starting point P0, the target obstacle avoidance point D, and the directions extending from the intermediate points P1 and P2 located between the starting point P0 and the target obstacle avoidance point D to the end point P0', a first path is obtained. First, the intermediate point among P1 and P2 that is closest to the starting point P0 can be determined. For example, if it is intermediate point P1, then the sub-path between the starting point P0 and the intermediate point P1 is first planned as the sub-path of the first path. Then, the intermediate point that is closest to the intermediate point P1 (which can be called the current starting point), such as intermediate point P2, is determined, and the sub-path between the intermediate point P1 and the intermediate point P2 is planned, and the sub-path between the intermediate point P1 and the intermediate point P2 is updated to the first path, for example, by splicing it with the sub-path between the starting point P0 and the intermediate point P1. When the paths of all the intermediate points located between the starting point P0 and the target obstacle avoidance point D have been planned, the sub-path between the last intermediate point, such as intermediate point P1, and the target obstacle avoidance point D can be planned, and the sub-path between the intermediate point P1 and the target obstacle avoidance point D is updated to the first path. The steps for obtaining the second path according to the end point, the target obstacle avoidance point, and the direction extending from the intermediate points located between the starting point and the target obstacle avoidance point to the starting point can refer to the steps for obtaining the first path, which will not be elaborated here. When the first path and the second path extend to the same intermediate point or the target obstacle avoidance point, the first path and the second path are spliced.

[0071] By selecting intermediate points according to the principle of the closest distance and planning the path between the current point and the intermediate point with the closest distance, that is, giving priority to planning the path with the shortest distance, a better path can be obtained even when there are multiple intermediate points among the original path points.

[0072] Optionally, when the first path and the second path extend to the same intermediate point or the target obstacle avoidance point, that is, when the current starting point of the forward path planning is the same as the current starting point of the reverse path planning, it is further determined whether there are uncompleted intermediate points. If so, a section of the sub-path planned before the current starting point (such as the sub-path between the intermediate point P1 and the target obstacle avoidance point D) in the first path is deleted, that is, the current starting point is rolled back (such as taking the intermediate point P1 as the current starting point), and the remaining target points are re-planned. For example, the target point with the second shortest distance from the current starting point P1 or the target obstacle avoidance point D is taken as the next target point of the current starting point P1; all the intermediate points can be planned into the updated planned path to prevent missing intermediate points from affecting the self-mobile device to complete the work task.

[0073] In some other embodiments, the original path points on the planned path include a starting point and several intermediate points. As Figure 7 shown, the original path points on the planned path include the starting point P0, the intermediate point P1, the intermediate point P2, and the intermediate point P3.

[0074] Exemplarily, updating the planned path corresponding to each of the self - moving devices according to the target obstacle avoidance points of the self - moving devices includes: updating the target obstacle avoidance points as intermediate points in the planned path of the self - moving device; among the intermediate points, determining the point closest to the starting point as the first planned path point; among the remaining intermediate points, determining the point closest to the previous planned path point as the next planned path point until all the center points are determined as planned path points; determining the sub - paths between the planned path points; and sequentially splicing the sub - paths to obtain the updated planned path.

[0075] Please refer to Figure 7 , update the target obstacle avoidance point D as the intermediate point D in the planned path of the self - moving device. Among the intermediate points P1, P2, P3, and D, determine the point closest to the starting point P0. For example, the intermediate point P1 is the first planned path point, and determine the sub - path between the starting point P0 and the intermediate point P1. Among the remaining intermediate points P2, P3, and D, determine the point closest to the previous planned path point, the intermediate point P1. For example, the intermediate point P2 is the next planned path point, and determine the sub - path between the intermediate point P1 and the intermediate point P2. Among the remaining intermediate points P3 and D, determine the point closest to the previous planned path point, the intermediate point P2. For example, the intermediate point D is the next planned path point, and determine the sub - path between the intermediate point P2 and the intermediate point D. After that, determine the sub - path between the intermediate point D and the intermediate point P3; by sequentially splicing the sub - paths between the starting point P0, the intermediate points P1, P2, D, and P3, the updated planned path is obtained. By selecting the planned path points according to the principle of the closest distance, a path passing through multiple intermediate points can be planned, which can realize the global path search for multiple targets. By preferentially planning the path with the shortest distance, a better path can be obtained.

[0076] In some embodiments, the method further includes: determining a first target point and a second target point among the original path points and the target obstacle avoidance points on the planned path; according to the preset Manhattan distance function and the preset Euclidean distance function, determining the updated planned path between the first target point and the second target point. When planning the planned path between the first target point and the second target point, by making a decision on the search direction of the planned path based on the Manhattan distance and the Euclidean distance, a better global path can be planned. For example, the obtained planned path can take into account the passable area and the obstacle area. It can more stably and effectively reduce the time of path planning and quickly plan a better path.

[0077] Exemplarily, please refer to Figure 8, determine the position of the first target point as the current planned position. Based on the Manhattan distance function, determine the first estimated value of the first grid adjacent to the current planned position in the grid map to the second target point according to the Manhattan distance from the first grid to the second target point; the grid map is the grid map of the site corresponding to the planned path; according to the first estimated value of the first grid to the second target point and the actual cost value from the first target point to the first grid, determine the second estimated value of the first target point passing through the first grid to the second target point. Based on the Euclidean distance function, determine the third estimated value of the second grid adjacent to the current planned position in the grid map to the second target point according to the Euclidean distance from the second grid to the second target point; according to the third estimated value of the second grid to the second target point and the actual cost value from the first target point to the second grid, determine the fourth estimated value of the first target point passing through the second grid to the second target point. According to the second estimated value corresponding to the first grid and / or the fourth estimated value corresponding to the second grid, determine the next planned position of the current planned position as the first grid corresponding to the smallest second estimated value or the second grid corresponding to the smallest fourth estimated value. Connect the current planned position and the next planned position, and determine the next planned position as the current planned position.

[0078] Optionally, the step of determining the next planned position of the current planned position as the first grid corresponding to the smallest second estimated value or the second grid corresponding to the smallest fourth estimated value according to the second estimated value corresponding to the first grid and / or the fourth estimated value corresponding to the second grid includes: if there is an obstacle in the first grid adjacent to the current planned position, determine the first grid corresponding to the smallest second estimated value as the next planned position of the current planned position; if there is no obstacle in the first grids adjacent to the current planned position, determine the second grid corresponding to the smallest fourth estimated value as the next planned position of the current planned position.

[0079] Please refer to Figure 8 , adopt an eight-neighborhood search method based on the grid map, that is, search in eight grid search directions of up, down, left, right, upper left, upper right, lower left, and lower right simultaneously from the current planned position; combine the Euclidean distance and the Manhattan distance, use different but proportional distance weighting values in different search directions, and through the improvement of the two methods, the designed intelligent heuristic function can well balance the passable area and the obstacle area and find the most suitable path for passage.

[0080] The specific forms of the improved distance-defined intelligent heuristic function are shown in Equations (1) and (2), and the specific forms of integrating the improved distance-defined intelligent heuristic function into the A* algorithm evaluation function are shown in Equations (3) and (4):

[0081] H KM (n) = nK × (|n x -g x | + |n y -g y |) Equation (1)

[0082]

[0083] F KM (n) = G(n) + H KM (n) Equation (3)

[0084] F KE (n) = G(n) + H KE (n) Equation (4)

[0085] Among them, K represents the distance weighting value, H KM (n) is the estimated value of the heuristic function calculated by using the Manhattan distance weighting method from node n (each grid in the grid map represents a node) to the target position; H KE (n) is the estimated value of the heuristic function calculated by using the Euclidean distance weighting method from node n to the target position; F KM (n) is the estimated value calculated by using the Manhattan distance weighting method from the starting position to the target position; F KE (n) is the estimated value calculated by using the Euclidean distance weighting method from the starting position to the target position; G(n) is the actual cost value from the starting position to node n, n x is the abscissa of node n, n y is the ordinate of node n, g x is the abscissa of the target point, g y is the ordinate of the target point.

[0086] Among them, Equation (1) represents the improvement of the distance method adopted in the search direction. In the four directions of up, down, left, and right of the current grid, it is defined by using the Manhattan distance; in the four directions of upper left, upper right, lower left, and lower right of the current grid, it is defined by using the Euclidean distance; the improvement of Equation (2) is that on the basis of the Euclidean distance and Manhattan distance definitions, the heuristic function defined by the Euclidean distance and the heuristic function defined by the Manhattan distance are kept in a certain proportion.

[0087] Equations (3) and (4) substitute the modified heuristic functions of Equations (1) and (2) into the total evaluation function of the A* algorithm, which are the specific implementation forms of improving the evaluation function of the A* algorithm. That is, Equation (3) is used in the four directions of up, down, left, and right of the current grid, and Equation (4) is used in the four directions of upper left, upper right, lower left, and lower right of the current grid. Therefore, the improved distance-defined heuristic function is more intelligent, which improves the search efficiency and shortens the path planning time.

[0088] In some embodiments, the method further includes: optimizing the turning curve in the planned path into an arc to maximize the smoothing of the updated planned path. For example, the optimization of the path turning segment is as Figure 9 shown.

[0089] The path turning segment optimization strategy is to optimize the edge arc of the initial path generated by the previous planning after integrating the intelligent heuristic function according to the edge arc optimization principle in mathematics. The key step is to calculate the turning angle α between the nodes at the path turning point and obtain its cosine value through Equation (5). Equation (5) is as follows:

[0090]

[0091] where (x1, y1), (x2, y2), (x3, y3) are the coordinates of three adjacent nodes of the initial path. Since the turning angles of self-moving devices such as lawn mowers in the grid map only have three cases: 0°, 45°, and 90°, only according to the included angle and direction between the nodes, the radius, center, and turning radian of all turning cases can be calculated using the edge arc optimization theory. The specific implementation process is as follows:

[0092] (1) When α > 0°, the self-moving device turns left and controls the turning angle according to the magnitude of the α value, such as turning left 45° or turning left 90°;

[0093] (2) When α = 0°, the driving direction of the self-moving device remains unchanged;

[0094] (3) When α < 0°, the self-moving device turns right and controls the turning angle according to the magnitude of the value, such as turning right 45° or turning right 90°.

[0095] In some embodiments, the path generated by the smooth planning still cannot guarantee not to collide with obstacles. To this end, the path generation strategy of the algorithm is further optimized so that the path generated by the improved algorithm is at least half a grid away from the obstacles. That is, the present application embodiment also provides a path generation strategy for safe obstacle avoidance to ensure that the self-moving device does not encounter obstacles during operation and safely reaches the target position, improving the obstacle avoidance performance of the self-moving device.

[0096] Exemplarily, the safe obstacle avoidance path generation strategy mainly adjusts the estimated values of child nodes. The implementation method is as follows:

[0097] (1) If the direction between the current node and the adjacent node is the same as the direction between the current node and its parent node, then reduce the estimated value of G(n) in formulas (3) and (4); if the directions are opposite, then increase the estimated value of G(n).

[0098] (2) The turning degree between the initial path turning points is directly proportional to the estimated value of G(n). The greater the turning degree, the greater the estimated value of G(n).

[0099] (3) During the process of expanding child nodes, preferentially expand the nodes in the vertical and horizontal directions. Subsequently, according to whether there are obstacles in the vertical and horizontal directions, if there are, then do not expand the diagonal nodes adjacent to the obstacles; if not, then expand the diagonal nodes.

[0100] The path planning method for multiple self - moving devices provided by the embodiments of the present application includes: obtaining the planned paths and motion data of each self - moving device; obtaining the predicted collision positions between the self - moving devices according to the planned paths and motion data of each self - moving device; determining a plurality of optional obstacle avoidance points around the predicted collision positions according to the predicted collision positions; determining the target obstacle avoidance points of each self - moving device according to the positional relationship between each optional obstacle avoidance point and the planned path of each self - moving device; the target obstacle avoidance points of each self - moving device are points at different positions; updating the planned path of the corresponding self - moving device according to the target obstacle avoidance points of each self - moving device. By predicting the collision position in advance, setting different target obstacle avoidance points for different self - moving devices according to the collision position, and updating the paths of the self - moving devices according to the target obstacle avoidance points, planning paths according to different target obstacle avoidance points can prevent the generated paths from crossing each other. Therefore, when the self - moving device runs along the path planned according to the target obstacle avoidance point, the probability of collision is greatly reduced; moreover, updating the path according to the target obstacle avoidance point can enable the self - moving device to avoid collisions by adjusting the motion state less frequently, improving the operation efficiency.

[0101] In some embodiments, in view of the problems in the A* algorithm path planning process, such as being limited to planning a single target point, taking a long time, the path not being smooth enough, and insufficient obstacle avoidance performance, the embodiments of the present application propose an improved A* algorithm that takes into account multiple targets and optimal obstacle avoidance, taking into account issues such as safety, real - time performance, and smoothness, and making at least one of the following improvements and optimizations to the A* algorithm based on the search direction of the eight - neighborhood (as Figure 8 shown):

[0102] a. By combining the Euclidean distance and the Manhattan distance and using different but proportionally maintained distance weighting values in different search directions, a distance - defined heuristic function is designed, enabling the improved A* algorithm to take into account both the passable area and the obstacle area during the path - searching process and plan the optimal initial global path;

[0103] b. Optimize the turning curve in the planned path into an arc to maximize the smoothness of the updated planned path;

[0104] c. Optimize the path - generation strategy of the algorithm so that the path planned and generated by the improved algorithm keeps a distance of at least half a grid from the obstacles, enhancing the obstacle - avoidance performance of the algorithm;

[0105] d. Select an intermediate point from multiple intermediate points according to the nearest - distance principle and plan the path between the current point and the nearest intermediate point to implement a multi - objective global path - searching method;

[0106] e. By planning a first path starting from the starting point and a second path starting from the ending point, two - way path planning can be achieved to improve the planning efficiency;

[0107] f. By predicting the collision position in advance, setting different target obstacle - avoidance points for different self - moving devices according to the collision position, and updating the paths of their respective moving devices according to the target obstacle - avoidance points, a global path - planning strategy for multiple self - moving devices based on optimal obstacle - avoidance is realized.

[0108] Please refer to the following in combination with the above embodiments Figure 10 , Figure 10 which is a schematic block diagram of a path - planning device 600 provided by an embodiment of the present application. The path - planning device 600 includes one or more processors 601, and the one or more processors 601 work alone or jointly to implement the steps of the path - planning method for the multiple self - moving devices.

[0109] Exemplarily, the path - planning device 600 may further include a memory 602.

[0110] Exemplarily, the processor 601 and the memory 602 are connected through a bus 603, and this bus 603 is, for example, an I2C (Inter - integrated Circuit) bus.

[0111] Specifically, the processor 601 may be a micro - control unit (MCU), a central processing unit (CPU), or a digital signal processor (DSP), etc.

[0112] Specifically, the memory 602 may be a Flash chip, a read-only memory (ROM), a magnetic disk, an optical disc, a USB flash drive, a mobile hard disk, or the like.

[0113] The processor 601 is configured to run a computer program stored in the memory 602 and, when executing the computer program, implement the steps of the path planning method for the multi-autonomous mobile device described above.

[0114] Exemplarily, the processor 601 is configured to run a computer program stored in the memory 602 and, when executing the computer program, implement the following steps:

[0115] Obtain the planned path and motion data of each autonomous mobile device;

[0116] According to the planned path and motion data of each autonomous mobile device, obtain the predicted collision positions between the autonomous mobile devices;

[0117] Determine a plurality of optional obstacle avoidance points around the predicted collision positions according to the predicted collision positions;

[0118] According to the positional relationship between each optional obstacle avoidance point and the planned path of each autonomous mobile device, determine the target obstacle avoidance points of each autonomous mobile device; the target obstacle avoidance points of each autonomous mobile device are points at different positions;

[0119] Update the planned path of the corresponding autonomous mobile device according to the target obstacle avoidance points of each autonomous mobile device.

[0120] The specific principle and implementation manner of the path planning device provided in the embodiments of the present application are similar to those of the path planning method for the multi-autonomous mobile device in the foregoing embodiments, and will not be elaborated herein.

[0121] Please refer to the above embodiments in conjunction with Figure 11 , Figure 11 which is a schematic block diagram of the autonomous mobile device 700 provided in the embodiments of the present application. The autonomous mobile device 700 includes one or more processors 701, and the one or more processors 701 work independently or jointly to implement the steps of the path planning method for the multi-autonomous mobile device.

[0122] The autonomous mobile device 700 includes, for example, robots such as lawn mowing robots, floor cleaning robots, mine sweeping robots, cruise robots, etc., and this embodiment does not make special limitations thereon.

[0123] Exemplarily, the autonomous mobile device 700 may further include a memory 702.

[0124] Exemplarily, the processor 701 and the memory 702 are connected through a bus 703, which is, for example, an I2C (Inter-integrated Circuit) bus.

[0125] Specifically, the processor 701 can be a micro-control unit (MCU), a central processing unit (CPU), a digital signal processor (DSP), etc.

[0126] Specifically, the memory 702 can be a Flash chip, a read-only memory (ROM), a magnetic disk, an optical disc, a USB flash drive, a mobile hard disk, etc.

[0127] Among them, the processor 701 is used to run a computer program stored in the memory 702, and when executing the computer program, implement the steps of the path planning method of the foregoing multi-autonomous mobile device.

[0128] Exemplarily, the processor 701 is used to run a computer program stored in the memory 702, and when executing the computer program, implement the following steps:

[0129] Obtain the planned path and motion data of each autonomous mobile device;

[0130] According to the planned path and motion data of each autonomous mobile device, obtain the predicted collision positions between the autonomous mobile devices;

[0131] Determine a plurality of optional obstacle avoidance points around the predicted collision position according to the predicted collision position;

[0132] According to the positional relationship between each optional obstacle avoidance point and the planned path of each autonomous mobile device, determine the target obstacle avoidance points of each autonomous mobile device; the target obstacle avoidance points of each autonomous mobile device are points at different positions;

[0133] Update the planned path of the corresponding autonomous mobile device according to the target obstacle avoidance points of each autonomous mobile device.

[0134] The specific principle and implementation manner of the autonomous mobile device provided in the embodiments of the present application are similar to those of the path planning method of the multi-autonomous mobile device in the foregoing embodiments, and will not be elaborated here.

[0135] The embodiment of the present application also provides a computer-readable storage medium storing a computer program, where the computer program includes program instructions, and when the computer program is executed by a processor, the processor is caused to implement the steps of the path planning method for multiple self-moving devices provided in the above embodiment.

[0136] Among them, the computer-readable storage medium may be an internal storage unit of the path planning device or the self-moving device described in any of the foregoing embodiments, such as the hard disk or memory of the self-moving device. The computer-readable storage medium may also be an external storage device of the path planning device or the self-moving device, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. equipped on the path planning device.

[0137] It should be understood that the terms used in this application are only for the purpose of describing specific embodiments and are not intended to limit the present application.

[0138] It should also be understood that the term "and / or" used in this application and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0139] As described above, the above are only specific embodiments of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily think of various equivalent modifications or replacements, and these modifications or replacements should be covered by the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims

1. A path planning method for multiple self - moving devices, characterized in that, Including: Obtaining the planned paths and motion data of each self - moving device; Obtaining the predicted collision positions between the self - moving devices according to the planned paths and motion data of each self - moving device; Determining a plurality of optional obstacle - avoidance points around the predicted collision positions according to the predicted collision positions; Determining the target obstacle - avoidance points of each self - moving device according to the positional relationships between the optional obstacle - avoidance points, the predicted collision positions and the planned paths of each self - moving device; the target obstacle - avoidance points of each self - moving device are points at different positions; Updating the planned path of the corresponding self - moving device according to the target obstacle - avoidance points of each self - moving device; Among them, the updating the planned path of the corresponding self - moving device according to the target obstacle - avoidance points of each self - moving device includes: performing path planning according to the original path points on the planned path of the self - moving device and the target obstacle - avoidance point of the self - moving device to obtain the updated planned path of the self - moving device; the original path points on the planned path include several intermediate points.

2. The path planning method according to claim 1, wherein Among the determining a plurality of optional obstacle - avoidance points arranged around the predicted collision position according to the predicted collision position: The distances between each optional obstacle - avoidance point and the predicted collision position are the same; and Each optional obstacle - avoidance point is located on the planned path of its respective self - moving device.

3. The path planning method according to claim 1, characterized in that The determining a plurality of optional obstacle - avoidance points arranged around the predicted collision position according to the predicted collision position includes: Taking the predicted collision position as the center and a preset distance as the radius to determine the circumference where the optional obstacle - avoidance points are located; the preset distance is in a positive correlation with the size of the operation area of the self - moving device; Determining the intersection points of the circumference and the planned path of each self - moving device as the optional obstacle - avoidance points.

4. The path planning method according to claim 3, wherein The determining the target obstacle - avoidance points of each self - moving device according to the positional relationships between the optional obstacle - avoidance points, the predicted collision positions and the planned paths of each self - moving device includes: Determining the intersection points of the planned path of each self - moving device and the circumference, and taking the first - passed intersection point as the target path point; Among the optional obstacle - avoidance points, determining the optional obstacle - avoidance point adjacent to the target path point of each self - moving device as the target obstacle - avoidance point of the self - moving device, and the target obstacle - avoidance point of each self - moving device and the corresponding target path point are both distributed clockwise or both distributed counter - clockwise with the predicted collision position as the center.

5. The path planning method according to claim 1, wherein The original path points on the planned path include a starting point, several intermediate points and an ending point; The updating the planned path of the corresponding self - moving device according to the target obstacle - avoidance points of each self - moving device includes: Obtaining a first path according to the starting point, the target obstacle - avoidance point and the direction in which the intermediate points between the starting point and the target obstacle - avoidance point extend towards the ending point; Obtaining a second path according to the ending point, the target obstacle - avoidance point and the direction in which the intermediate points between the starting point and the target obstacle - avoidance point extend towards the starting point; When the first path and the second path extend to the same intermediate point or the target obstacle avoidance point, splice the first path and the second path to obtain an updated planned path.

6. The path planning method according to claim 1, wherein The original path points on the planned path include a starting point and a number of intermediate points; Updating the planned path corresponding to each self-mobile device according to the target obstacle avoidance point of each self-mobile device includes: Updating the target obstacle avoidance point to an intermediate point in the planned path of the self-mobile device; Among the intermediate points, determine the point closest to the starting point as the first planned path point; Among the remaining intermediate points, determine the point closest to the previous planned path point as the next planned path point until all the center points are determined as planned path points; Determine the sub-paths between the planned path points; Splice the sub-paths in sequence to obtain an updated planned path.

7. The path planning method according to claim 1, wherein The method further includes: Determine a first target point and a second target point among the original path points and the target obstacle avoidance points on the planned path; According to a preset Manhattan distance function and a preset Euclidean distance function, determine the planned path between the updated first target point and the second target point.

8. A path planning device, characterized in that, Including: One or more processors, which work alone or together to implement the steps of the path planning method for multiple self-mobile devices according to any one of claims 1 to 7.

9. A self - moving device, characterized in that, Including: One or more processors, which work alone or together to implement the steps of the path planning method for multiple self-mobile devices according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor is caused to implement: The steps of the path planning method for multiple self-mobile devices according to any one of claims 1-7.

Citation Information

Patent Citations

  • Obstacle avoidance path planning method and device, electronic device, vehicle and storage medium

    CN112595337A