Path planning method, system, device and storage medium for local restricted area
By dividing local restricted areas and adjusting route value in the global path planning, the problem of mobile robots passing through dust-free or specified temperature areas during transportation is solved, and the requirements for transportation of special materials and the risk of raw material damage are met.
Patent Information
- Application Number
- CN202510091652.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-21
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2045-01-21
AI Technical Summary
The existing path planning method fails to effectively consider the special needs of locally restricted areas, resulting in mobile robots that may cross dust-free or specified temperature areas during transportation, causing raw material damage.
By dividing restricted areas in the global area, the current point and target point of the mobile robot are obtained, and global path planning is carried out based on this information. If the current point and the target point are within the restricted area, adjust the route generation value of the points outside the restricted area to be infinite, thereby affecting the total generation value of the global path, and select the path with the smallest generation value as the optimal path.
Ensure that mobile robots try to avoid crossing dust-free or specified temperature areas during transportation, meet special material transportation needs, and reduce the risk of raw material damage.
Smart Images

Figure CN119533491B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of mobile robot path planning, and in particular to a path planning method, system, device and storage medium for a local restricted area. Background Art
[0002] With the widespread application of mobile robots in high-end manufacturing, the feedback on special transportation needs of high-end manufacturing has gradually increased. For example, in photovoltaic or semiconductor manufacturing, the transportation of some raw materials on site requires a dust-free environment, so some tasks are required to be transported only in dust-free areas; for example, some raw materials must be transported at a specified temperature, so some tasks are required to be transported only in a specified temperature area. Under these special transportation requirements, multiple mobile robots can only complete transportation tasks in a limited area. However, the existing path planning does not take such special needs into account, and only plans the optimal global path based on factors such as the current congestion situation, the length of the path, and the number of turns. Then some points in the optimal global path are outside the restricted area, and there is no way to transport the current task within the specified limited area, which is likely to result in damage and failure of the raw materials. Summary of the invention
[0003] The main purpose of the present invention is to provide a path planning method, system, device and storage medium for a local restricted area, aiming to ensure that when there is a point route that does not pass through the restricted area, the route that does not pass through the point must be used first, and try to make some points in the optimal global path within the restricted area, to meet special material transportation needs such as dust-free transportation, specified temperature transportation, etc.
[0004] To achieve the above object, the present invention provides a path planning method for a local restricted area in a first aspect, comprising:
[0005] Step S1: dividing a restricted area in the global area;
[0006] Step S2: Obtain the current position and target position of the mobile robot;
[0007] Step S3: performing global path planning for the mobile robot according to the current position and the target position of the mobile robot to obtain multiple global paths, each of which has a corresponding total cost;
[0008] Step S4: Determine whether the current position and the target position of the current mobile robot are both within the restricted area. If not, select the route with the smallest total cost as the optimal global path; if so, adjust the route cost to the point outside the restricted area to an infinite value, update the total cost value of each global path of the current mobile robot, and select the global path with the smallest total cost as the optimal global path.
[0009] Optionally, when performing global path planning for the mobile robot according to the current position and the target position of the mobile robot, it also includes calculating a total cost value for each global path. Calculating the total cost value for each global path includes the following steps:
[0010] Step S31: Calculate the Euclidean distance value from the mobile robot to the planned point as the path cost value of the planned point, and obtain the path cost value passing through the planned point;
[0011] Step S32: summing up the path cost values of all planned points of the same global path to obtain the total cost value of the global path.
[0012] Optionally, after dividing the restricted area, regional attributes are added to all points, and the regional attributes include attributes outside the restricted area and attributes inside the restricted area. The regional attributes added to the points within the restricted area are attributes inside the restricted area, and the attributes outside the restricted area are attributes added to the points outside the restricted area. By judging the regional attributes of the points, it is judged whether the points are within the restricted area or outside the restricted area.
[0013] Optionally, after planning the optimal global path for all mobile robots, it also includes:
[0014] Step S5: performing local path planning for each mobile robot in the current frame in order according to the task priority to obtain a local path for each mobile robot;
[0015] Step S6: After all mobile robots complete the local path planning of the current frame, a local path is issued to each mobile robot; and the local path planning of the next frame is performed;
[0016] Among them, local path planning includes:
[0017] Step S51: Taking the current position of the mobile robot as the starting point, plan N positions forward along its own global path to obtain the planned positions, where N is a positive integer;
[0018] Step S52: Determine whether there is a locked point among the N planned points, the locked point being a point of the local path that has been issued in the previous frame, and the locked point being a point of the local path that has been planned but not issued and that is closer to other mobile robots; closer distance is defined as: the distance from other mobile robots that have planned the point to the planned point is less than or equal to the distance from the current mobile robot to the planned point;
[0019] If there is a locked point, the local path of the mobile robot is updated to the planned point between the current point and the nearest locked point;
[0020] If there are no locked points, the local path of the mobile robot is updated to all planned points.
[0021] Optionally, the determining whether the N planned points are at the locked point comprises the following steps:
[0022] Determine whether there is an occupied point among the N planned points, where the occupied point is a point on a local path of another mobile robot;
[0023] If there is no occupied point, there is no locked point;
[0024] If there is an occupied point, determine whether the occupied point is a point of the local path that has been sent in the previous frame;
[0025] If the occupied point is a point of the local path that has been issued in the previous frame, then the occupied point is a locked point, and there is a locked point among the N planned points;
[0026] If the occupied point is not a point of the local path sent in the previous frame, determine whether the number of points between the occupied point and the current point of the mobile robot occupying it is less than or equal to the number of points between the occupied point and the current point of the current mobile robot;
[0027] If yes, the occupied point is a locked point, and there is a locked point among the N planned points;
[0028] If not, there is no locked point among the N planned points.
[0029] A second aspect of the present invention discloses a path planning system for a local restricted area, comprising:
[0030] A region partitioning module is used to partition a restricted area in the global area;
[0031] The point acquisition module is used to obtain the current point and target point of the mobile robot;
[0032] A global path planning module is used to perform global path planning for the mobile robot according to the current position and target position of the mobile robot, and obtain multiple global paths, each of which has a corresponding total cost value;
[0033] A selection module is used to select the route with the smallest cost as the optimal global path;
[0034] An adjustment module, used to adjust the cost value of the points outside the restricted area to an infinite value;
[0035] An updating module, used to update the cost values of multiple global paths of the current mobile robot;
[0036] The judgment module is used to judge whether the current point and the target point of the current mobile robot are both within the restricted area. If not, the selection module is triggered to select the route with the smallest cost value as the optimal global path; if so, the adjustment module is triggered to adjust the cost value of the point outside the restricted area to an infinite value, the update module updates the cost values of multiple global paths of the current mobile robot, and the selection module selects the global path with the smallest total cost value as the optimal global path.
[0037] Optionally, the global path planning module includes:
[0038] A calculation unit, used to calculate the Euclidean distance value from the mobile robot to the planned point as the path cost value of the planned point, and obtain the path cost value passing through the planned point;
[0039] The summing unit is used to sum the path cost values of all planning points of the same global path to obtain the total cost value of the global path.
[0040] Optionally, the global path planning module includes:
[0041] The area attribute adding unit is used to add area attributes to all points after the restricted area is divided. The area attributes include attributes outside the restricted area and attributes inside the restricted area. The area attributes added by the area attribute adding unit to the points inside the restricted area are attributes inside the restricted area, and the area attribute adding unit adds attributes outside the restricted area to the points outside the restricted area.
[0042] Optionally, it also includes:
[0043] A local path planning module is used to perform local path planning for each mobile robot in the current frame in order according to the task priority to obtain a local path for each mobile robot;
[0044] The sending module is used to send a local path to each mobile robot after all mobile robots complete the local path planning of the current frame; and perform the local path planning of the next frame;
[0045] Among them, the local path planning module includes:
[0046] The local planning unit is used to plan N points forward along its own global path with the current point of the mobile robot as the starting point to obtain the planned points, where N is a positive integer;
[0047] The locking point judgment unit is used to judge whether the N planned points are at the locking point, the locking point being the point of the local path that has been issued in the previous frame, and the locking point is also the point of the local path that has been planned but not issued and is closer to other mobile robots; closer distance is defined as: the number of points from other mobile robots that have planned the point to the planned point is less than or equal to the number of points from the current mobile robot to the planned point;
[0048] The local path updating unit is used to update the local path of the mobile robot to the planned points between the current point and the nearest locked point when there is a locked point; when there is no locked point, the local path of the mobile robot is updated to all planned points.
[0049] Optionally, the locking point determination unit includes:
[0050] An occupied point determination unit, used to determine whether there is an occupied point among the N planned points, wherein the occupied point is a point on a local path of another mobile robot;
[0051] A judgment output unit, used for outputting a result that there is no locked point when there is no occupied point;
[0052] A path judgment unit is used to judge whether the occupied point is a point of the local path that has been issued in the previous frame when there is an occupied point;
[0053] The judgment output unit is also used for, when the occupied point is a point of the local path that has been issued in the previous frame, the occupied point is a locked point, and outputting a result that a locked point exists;
[0054] A distance judgment unit, used for judging whether the number of points between the occupied point and the current point of the mobile robot occupying it is less than or equal to the number of points between the occupied point and the current point of the current mobile robot when the occupied point is not a point of the local path sent in the previous frame;
[0055] If it exists, the occupied point is a locked point, and the trigger judgment output unit outputs the result that there is a locked point;
[0056] If not, the judgment output unit is triggered to output a result that no locking point exists.
[0057] The third aspect of the present invention discloses an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements any method described in the first aspect of the present invention when executing the program.
[0058] A fourth aspect of the present invention discloses a computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, the method described in any one of the first aspects of the present invention is implemented.
[0059] The technical solution provided by the present invention may include the following beneficial effects:
[0060] The path planning method for a local restricted area provided by the present invention, after planning all global paths of the mobile robot, if the current point and the target point of the mobile robot are within the restricted area, the route cost of the point outside the restricted area is adjusted, thereby affecting the total cost of the global path passing through the point, and then conveniently selecting the global path with the smallest total cost as the optimal global path. In this way, a global path is selected that does not pass through points outside the restricted area as much as possible, ensuring that the route that does not pass through the point must be used first when there is a point route that does not pass through the restricted area, and trying to make some points in the optimal global path within the restricted area, so as to meet special material transportation requirements such as dust-free transportation and specified temperature transportation. BRIEF DESCRIPTION OF THE DRAWINGS
[0061] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the structures shown in these drawings without paying creative work.
[0062] Figure 1 A schematic diagram of a flow chart of a path planning method for a local restricted area according to an embodiment of the present invention;
[0063] Figure 2 A schematic diagram of global path planning according to an embodiment of the present invention;
[0064] Figure 3 A schematic diagram of a flow chart of local path planning according to an embodiment of the present invention;
[0065] Figure 4 A schematic diagram of local path planning according to an embodiment of the present invention;
[0066] Figure 5 A schematic diagram of a flow chart for determining whether a locking point exists according to an embodiment of the present invention;
[0067] Figure 6 The figure is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0068] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0069] It should be noted that all directional indications (such as up, down, left, right, front, back, etc.) in the embodiments of the present invention are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.
[0070] In the present invention, unless otherwise clearly specified and limited, the terms "connection", "fixation", etc. should be understood in a broad sense. For example, "fixation" can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements, unless otherwise clearly defined. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.
[0071] In addition, in the present invention, descriptions such as "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or implying their relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In addition, the meaning of "and / or" appearing in the full text is to include three parallel solutions. Taking "A and / or B as an example", it includes solution A, or solution B, or solutions that satisfy both A and B. In addition, the technical solutions between the various embodiments can be combined with each other, but it must be based on the ability of ordinary technicians in this field to implement. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by the present invention.
[0072] With the widespread application of mobile robots in high-end manufacturing, the feedback on special transportation needs of high-end manufacturing has gradually increased. For example, in photovoltaic or semiconductor manufacturing, the transportation of some raw materials on site requires a dust-free environment, so some tasks are required to be transported only in dust-free areas; for example, some raw materials must be transported at a specified temperature, so some tasks are required to be transported only in a specified temperature area. Under these special transportation requirements, multiple mobile robots can only complete transportation tasks in a limited area. However, the existing path planning does not take such special needs into account, and only plans the optimal global path based on factors such as the current congestion situation, the length of the path, and the number of turns. Then some points in the optimal global path are outside the restricted area, and there is no way to transport the current task within the specified limited area, resulting in damage and failure of the raw materials.
[0073] To this end, the path planning method for a local restricted area disclosed in the first aspect of the present invention and the path planning method for a local restricted area of the embodiment of the present invention can be executed by a server that centrally manages the multiple mobile robots. The mobile robot referred to in the present invention is a device that moves according to points planned on the ground, such as unmanned transport equipment such as AGV and IGV.
[0074] Combine the following Figure 1 The embodiment shown describes a path planning method for a local restricted area according to an embodiment of the present invention, including:
[0075] Step S1: dividing a restricted area in the global area;
[0076] Step S2: Obtain the current position and target position of the mobile robot;
[0077] Step S3: Perform global path planning for the mobile robot according to the current position and target position of the mobile robot to obtain multiple global paths, each of which has a corresponding total cost; in an optional embodiment, all global paths can be planned by an improved A* algorithm.
[0078] Step S4: Determine whether the current position and the target position of the current mobile robot are both within the restricted area. If not, select the route with the smallest total cost as the optimal global path; if so, adjust the route cost to the point outside the restricted area to an infinite value, update the total cost value of each global path of the current mobile robot, and select the global path with the smallest total cost as the optimal global path.
[0079] For ease of understanding, Figure 2A schematic diagram of path planning for a specific embodiment is shown. The dotted box in the figure represents a local restricted area. Points 1, 2, 3, 4, 5, 6, and 7 are points within the restricted area; other points are points outside the restricted area. In a certain task, point 1 is the starting point for the AGV to complete the task, and point 7 is the end point for the AGV to complete the task. Two paths are globally planned. The first path is: 1-2-3-4-5-6-7, and the second path is: 1-10-9-8-7. At this time, due to the small number of points passed, the total cost of the second path is smaller than the total cost of the first path. However, since the current point and the target point of the AGV are both in the restricted area, all points of the first path are in the restricted area, while points 10, 9, and 8 in the second path are outside the restricted area, that is, the second path will pass outside the restricted area to reach the end point in the restricted area. At this time, the cost value of passing through points 10, 9, and 8 is adjusted to infinity, so the total cost value of the second path also becomes infinite. Then select the first path with the smallest total cost value as the optimal global path.
[0080] In another task, point 1 is the starting point for the AGV to complete the task, and point 15 is the end point for the AGV to complete the task. Two paths are planned globally. The first path is: 1-2-3-4-5-15, and the second path is: 1-10-9-8-7-6-5-15. The current point of the AGV is in the restricted area, but the target point is not in the restricted area. Therefore, the total cost value of the first path and the second path is directly compared, and the path with the smaller total cost value is selected as the optimal global path. Similarly, when the current point of the AGV is not in the restricted area, but the target point is in the restricted area, the total cost value of each path is directly compared, and the path with the smaller total cost value is selected as the optimal global path.
[0081] The path planning method for a local restricted area provided by the present invention, after planning all global paths of the mobile robot, if the current point and the target point of the mobile robot are within the restricted area, the route cost of the point outside the restricted area is adjusted, thereby affecting the total cost of the global path passing through the point, and then conveniently selecting the global path with the smallest total cost as the optimal global path. In this way, a global path is selected that does not pass through points outside the restricted area as much as possible, ensuring that the route that does not pass through the point must be used first when there is a point route that does not pass through the restricted area, and trying to make some points in the optimal global path within the restricted area, so as to meet special material transportation requirements such as dust-free transportation and specified temperature transportation.
[0082] It is worth noting that during the on-site implementation process, there is a possibility of increasing the number of mobile robots or adjusting the route. For this purpose, points will be added to the area where the points have been originally planned, and the newly added points may exceed the limited area. If the restricted points must be within the limited area when planning the route, the path that needs to pass through the newly added points will not be able to successfully plan the path. This embodiment adjusts the route cost value of the newly added points outside the limited area to infinity, so that the route that does not pass through the point must first use the route that does not pass through the point. If the route must pass through the point, this route is used, and the global path can still be planned, so that its route cost value is infinite, so that subsequent maintenance can be more flexible and convenient, and it is convenient to add points and plan adjustments.
[0083] Compared with some existing technical means of using designated mobile robots for transportation in designated areas, the path planning method for local restricted areas provided by the present invention can achieve efficient use of global mobile robots. In practical applications, the strategy of task allocation is to allocate idle mobile robots based on the principle of proximity. Mobile robots outside the restricted area will deliver materials to the restricted area, and after delivery, they can also receive other tasks to transport ordinary materials in the restricted area to other areas. This allows all mobile robots to participate in the entire global task, improving the efficiency of mobile robots.
[0084] The path planning method for local restricted areas provided by the present invention does not require analysis of task requirements or types. As long as the current position and the target position of the mobile robot are within the restricted area, some points in the optimal global path will be made to be within the restricted area as much as possible, thereby meeting special material transportation requirements such as dust-free transportation and specified temperature transportation to a certain extent.
[0085] Specifically, after the restricted area is divided, regional attributes can be added to all points, and the regional attributes include attributes outside the restricted area and attributes inside the restricted area. The regional attributes added to the points inside the restricted area are attributes inside the restricted area, and the attributes outside the restricted area are added to the points outside the restricted area. By judging whether the point has attributes inside the restricted area, it is possible to judge whether the point is within the restricted area or to identify whether the point is a point outside the restricted area. If the current point and the target point of the current mobile robot both have attributes within the restricted area, that is, the current point and the target point of the current mobile robot are both within the restricted area, then the planning points with attributes outside the restricted area in the global path planning are identified, and the route cost values to these planning points with attributes outside the restricted area are adjusted to infinity, so that the route cost values to the points outside the restricted area can be adjusted to infinity.
[0086] Further optionally, when performing global path planning for the mobile robot according to the current position and the target position of the mobile robot, it also includes calculating a total cost value for each global path, and calculating the total cost value for each global path includes the following steps:
[0087] Step S31: Calculate the Euclidean distance value from the mobile robot to the planned point as the path cost value of the planned point, and obtain the path cost value passing through the planned point;
[0088] Step S32: summing up the path cost values of all planned points of the same global path to obtain the total cost value of the global path.
[0089] In this way, while planning different global paths, the total cost of each global path is also obtained, so that the global path with the smallest total cost is selected as the optimal global path.
[0090] Further optionally, after the restricted area is divided, regional attributes are added to all points, and the regional attributes include attributes outside the restricted area and attributes inside the restricted area. The regional attributes added to the points inside the restricted area are attributes inside the restricted area, and the attributes outside the restricted area are added to the points outside the restricted area; by judging the regional attributes of the points, it is judged whether the points are points inside the restricted area or points outside the restricted area. Specifically, if the current point and the target point of the current mobile robot both have attributes inside the restricted area, that is, the current point and the target point of the current mobile robot are both within the restricted area, then the planning points with attributes outside the restricted area in the global path are identified, and the route cost values to these planning points with attributes outside the restricted area are adjusted to infinity, so that the route cost values to the points outside the restricted area can be adjusted to infinity.
[0091] At present, each mobile robot in the multi-mobile robot collaborative system will move according to its own planned global path. However, with the change of moving speed, temporary obstacles or failures, there may be situations where the mobile robot cannot pass the intersection according to the preset time, and then there may be situations where multiple mobile robots meet and collide at the intersection. In such cases, the dispatching system will issue a stop command in time to force the mobile robot to stop and avoid. However, if a mobile robot suddenly receives a stop command during high-speed driving, it will not brake in time due to inertia, and thus collide with other mobile robots. Although the emergency brake is timely, the transported objects loaded on the mobile robot will be easily displaced and damaged due to inertia, which is not conducive to the transportation of precision devices such as silicon wafers and semiconductors.
[0092] For this reason, Figure 3 As shown, the present invention also provides an optional embodiment. After planning the optimal global path of all mobile robots, it also includes:
[0093] Step S5: Perform local path planning for each mobile robot in the current frame in order according to the task priority to obtain the local path of each mobile robot; the task priority is judged based on comprehensive information such as the order in which the mobile robot receives the targets, the final path length to the destination, and the number of turns on the path. The specific judgment rules are described below.
[0094] Step S6: After all mobile robots complete the local path planning of the current frame, a local path is issued to each mobile robot; and the local path planning of the next frame is performed; it can be seen that in this embodiment, the local paths of all mobile robots are updated synchronously in the same frame, and the local paths are issued after all mobile robots are updated, so that each mobile robot moves forward according to the local path.
[0095] Among them, local path planning includes:
[0096] Step S51: Taking the current position of the mobile robot as the starting point, plan N points forward along its own global path to obtain the planned points, where N is a positive integer; specifically, N is a preset positive integer. When the remaining points are less than N, the remaining points are all planned points. It can be set according to actual needs. In a preferred embodiment of the present invention, the preset value range of N is 5 to 8. If the value of N is too small, the number of local path planning times is large, which is not conducive to the efficient operation of multiple mobile robots. When the value of N is too large, the number of points that need to be judged in the local path planning increases, which increases the time for each frame of local path planning, which is also not conducive to the efficient operation of multiple mobile robots. After simulation and field testing, the value range of N is preferably 5 to 8.
[0097] Step S52: Determine whether there is a locked point among the N planned points. The locked point is a point of the local path that has been issued in the previous frame. The locked point is also a point of the local path that has been planned but not issued and is closer to other mobile robots. The definition of closer distance is: the distance from other mobile robots that have planned the point to the planned point is less than or equal to the distance from the current mobile robot to the planned point. It is worth noting that in this embodiment, two situations of planned points are locked points. The first situation is that among the planned points, a certain point is a point of the local path that has been issued in the previous frame; the second situation is that among the planned points, other mobile robots are closer to the planned but not issued local path. Any point in the planned points is a locked point as long as it meets one of the conditions. Among them, it is worth noting that when the mobile robot moves forward by one point, the previous point of the mobile robot is not in the local planned path, that is, the previous point is released for other mobile robots to occupy and use.
[0098] If there is a locked point, the local path of the mobile robot is updated to the planned point between the current point and the nearest locked point; the nearest locked point is the first locked point of the current mobile robot along its global path.
[0099] If there are no locked points, the local path of the mobile robot is updated to all planned points.
[0100] Specifically, Figure 4 In the specific embodiment shown, taking AGV transportation as an example, AGV1 represents the first mobile robot, AGV2 represents the second mobile robot, and AGV3 represents the third mobile robot; AGV1 has the highest task priority, and AGV2 has a higher task priority than AGV3. In the embodiment of the present invention, when the point passed by the mobile robot belongs to the assignable point, for example, when AGV1 passes through point 10, point 10 is not a point in the local planning path of AGV1.
[0101] In a specific embodiment, the local path of AGV1 is updated to 10-9-8-2-7, and the local path of AGV1 has been issued;
[0102] When planning the local path of AGV2, the five points planned forward according to the global path are 1-2-3-4-5; among them, point 2 has been planned for the local path of AGV1, and point 2 belongs to the point of the local path that has been issued in the previous frame. It can be seen that point 2 is a locked point. At this time, the local path of AGV2 is 1; the local path of AGV1 is 10-9-8-2-7; the local path of AGV2 has not been issued;
[0103] When planning the local path of AGV3, the three points planned forward according to the global path are 4-8-11; among them, point 8 has been planned for the local path of AGV1, and point 8 belongs to the point of the local path that has been sent down in the previous frame, so point 8 is a locked point. At this time, the local path of AGV3 is 4, the local path of AGV2 is 1, and the local paths of AGV2 and AGV3 are sent down.
[0104] In another specific embodiment, the local path of AGV1 is updated to 10-9-8-2-7, and the local path of AGV1 is not issued;
[0105] When planning the local path of AGV2, the five points planned forward according to the global path are 1-2-3-4-5; among them, point 2 has been planned for the local path of AGV1, and point 2 does not belong to the points of the local path that has been issued in the previous frame, but the distance from AGV1 to point 2 is greater than the distance from AGV2 to point 2. It can be seen that point 2 is not a locked point, and point 2 is updated to the local path of AGV2. At this time, the local path of AGV2 is 1-2-3-4-5; the local path of AGV1 is 10-9-8; the local paths of AGV1 and AGV2 have not been issued;
[0106] When planning the local path of AGV3, the three points planned forward according to the global path are 4-8-11; among them, point 4 has been planned for the local path of AGV2, and point 8 has been planned for the local path of AGV2. Points 4 and 8 do not belong to the points of the local path that have been issued in the previous frame, but the distance from AGV2 to point 4 is greater than the distance from AGV3 to point 4, that is, point 4 is not a locked point; the distance from AGV1 to point 8 is greater than the distance from AGV3 to point 8, that is, point 8 is not a locked point, then update the points of point 4 and point 8 to the local path of AGV3. At this time, the local path of AGV3 is 4-8-11, the local path of AGV2 is 1-2-3, and the local path of AGV1 is 10-9. The local paths of AGV1, AGV2, and AGV3 are issued in sequence.
[0107] This embodiment performs local route planning management and distribution according to the global optimal route of the mobile robot, so that the mobile robot can travel in a planned manner, effectively reducing the occurrence of conflicts, emergency braking, etc., effectively achieving smooth transportation of multiple mobile robots, reducing the impact of inertia on the load, and facilitating the transportation of precision devices such as silicon wafers and semiconductors.
[0108] It is further worth explaining that in the local path planning, the local path planning of each mobile robot will confirm and adjust the local path planning of the previous mobile robot, and use the points of the local path that have been issued in the previous frame as the locking points, so as to avoid using the points of the local path that have been issued in the previous frame as the local path points, thereby avoiding conflicts with the mobile robots that want to pass through the same route. At the same time, the points of the planned but not issued local paths that are closer to other mobile robots are also used as locking points to achieve the passage of intersection points in the order of task priority. When there are points of the planned but not issued local paths that are farther away from other mobile robots, adjustments are made to change the points to the local path of the current mobile robot, so as to achieve the reasonable use of idle points without conflict, reduce the point occupancy rate of robots with high task priority, avoid other mobile robots waiting for too long, and improve the operation efficiency of multiple mobile robots.
[0109] Specifically, Figure 5The flowchart shown is for determining whether there is a locked point among N planned points, wherein determining whether there is a locked point among N planned points includes the following steps:
[0110] Determine whether there is an occupied point among the N planned points, where the occupied point is a point on a local path of another mobile robot;
[0111] If there is no occupied point, there is no locked point;
[0112] If there is an occupied point, determine whether the occupied point is a point of the local path that has been sent in the previous frame;
[0113] If the occupied point is a point of the local path that has been issued in the previous frame, then the occupied point is a locked point, and there is a locked point among the N planned points;
[0114] If the occupied point is not a point of the local path sent in the previous frame, determine whether the number of points between the occupied point and the current point of the mobile robot occupying it is less than or equal to the number of points between the occupied point and the current point of the current mobile robot;
[0115] If yes, the occupied point is a locked point, and there is a locked point among the N planned points;
[0116] If not, there is no locked point among the N planned points.
[0117] In this way, by first determining whether there is an occupied point, then determining whether the occupied point is a point of the local path that has been sent in the previous frame, and finally determining whether the distance to the occupied point is closer to other mobile robots, it is possible to determine whether there is a locked point.
[0118] It is further worth noting that when there is an occupied point but it is not a locked point, the occupied point is deleted from the points of the local path of the mobile robot that occupies it, and the points after the occupied point are deleted.
[0119] Since the occupied point is updated as the local path planning point of the current mobile robot, the local path of the mobile robot that originally occupied the point is adjusted, deleting the occupied point and the points after the occupied point, reducing the point occupancy rate of the mobile robot, so that other mobile robots can reasonably use the idle points.
[0120] It is further worth noting that, to determine whether the N planned points are in the locked points, each point is judged in sequence along its own global path, and the judgment is terminated when one of the locked points exists. The multi-mobile robot scheduling method provided by the present invention can quickly find the locked point closest to the current position by making judgments in sequence. When the first locked point appears, the points after the locked point do not need to be judged, thereby reducing the amount of calculation.
[0121] Further optionally, the task priority order includes the following steps;
[0122] Obtain the order in which the mobile robot receives the targets, the final path length to the destination, and the number of turns along the path;
[0123] Calculate the task priority of each mobile robot, the calculation formula is:
[0124] ;
[0125] in, is the task priority of the jth mobile robot, is a 0-1 decision variable, which is set to 1 when the end point is a machine point and is set to 0 when the end point is a standby point or a charging point. It is the sum of all node distances from the starting point to the end point of the global path; is a 0-1 decision variable, traversing the global path n When the node passes i When a node needs to be rotated, set it to 1, and when it does not need to be rotated, set it to 0. is the target machine waiting time; , , are ratios respectively; , , The value of can be set according to actual needs, and the present invention does not make any specific limitation.
[0126] Specifically, when other conditions are the same, the task priority when the destination is a machine point is higher than that when the destination is a standby point or a charging point. The purpose is to give priority to the mobile robot that needs to perform the task. The mobile robot that arrives at the standby point or the charging point can be put aside for planning to improve transportation efficiency. When other conditions are the same, the longer the length of the global path, the higher the task priority of the mobile robot, so that the mobile robot can seize the point movement as much as possible and reach the destination as soon as possible. When other conditions are the same, the more nodes that need to be rotated in the global path, the longer the time required for the mobile robot to complete the global path. In order for the mobile robot to reach the target as soon as possible, the more nodes that need to be rotated in the global path, the higher the task priority of the mobile robot. When other conditions are the same, the longer the waiting time for the target machine, the more the current mobile robot needs to go to the target machine as soon as possible. Therefore, the longer the waiting time for the target machine, the higher the task priority.
[0127] The task priority calculation provided by the present invention comprehensively considers the type of end point, the sum of all node distances from the start point to the end point of the global path, the number of rotating nodes, and the waiting time of the target machine, so that the task priority calculation is comprehensive and reasonable.
[0128] The tasks are sorted according to their priority. When the task priorities are equal, they are arranged according to the order of receiving the target tasks. That is, the mobile robot with the higher task priority will perform local path planning first. When the task priorities are equal, the mobile robot that receives the target task first will perform local path planning first.
[0129] The second aspect of the present invention discloses a path planning system for a local restricted area, comprising:
[0130] A region partitioning module is used to partition a restricted area in the global area;
[0131] The point acquisition module is used to obtain the current point and target point of the mobile robot;
[0132] A global path planning module is used to perform global path planning for the mobile robot according to the current position and target position of the mobile robot, and obtain multiple global paths, each of which has a corresponding total cost value;
[0133] A selection module is used to select the route with the smallest cost as the optimal global path;
[0134] An adjustment module, used to adjust the cost value of the points outside the restricted area to an infinite value;
[0135] An updating module, used to update the cost values of multiple global paths of the current mobile robot;
[0136] The judgment module is used to judge whether the current point and the target point of the current mobile robot are both within the restricted area. If not, the selection module is triggered to select the route with the smallest cost value as the optimal global path; if so, the adjustment module is triggered to adjust the cost value of the point outside the restricted area to an infinite value, the update module updates the cost values of multiple global paths of the current mobile robot, and the selection module selects the global path with the smallest total cost value as the optimal global path.
[0137] Optionally, the global path planning module includes:
[0138] A calculation unit, used to calculate the Euclidean distance value from the mobile robot to the planned point as the path cost value of the planned point, and obtain the path cost value passing through the planned point;
[0139] The summing unit is used to sum the path cost values of all planning points of the same global path to obtain the total cost value of the global path.
[0140] Optionally, the global path planning module includes:
[0141] The area attribute adding unit is used to add area attributes to all points after the restricted area is divided. The area attributes include attributes outside the restricted area and attributes inside the restricted area. The area attributes added by the area attribute adding unit to the points inside the restricted area are attributes inside the restricted area, and the area attribute adding unit adds attributes outside the restricted area to the points outside the restricted area.
[0142] Furthermore, the path planning system for the local restricted area also includes:
[0143] A local path planning module is used to perform local path planning for each mobile robot in the current frame in order according to the task priority to obtain a local path for each mobile robot;
[0144] The sending module is used to send a local path to each mobile robot after all mobile robots complete the local path planning of the current frame; and perform the local path planning of the next frame;
[0145] Among them, the local path planning module includes:
[0146] The local planning unit is used to plan N points forward along its own global path with the current point of the mobile robot as the starting point to obtain the planned points, where N is a positive integer;
[0147] The locking point judgment unit is used to judge whether the N planned points are at the locking point, the locking point being the point of the local path that has been issued in the previous frame, and the locking point is also the point of the local path that has been planned but not issued and is closer to other mobile robots; closer distance is defined as: the number of points from other mobile robots that have planned the point to the planned point is less than or equal to the number of points from the current mobile robot to the planned point;
[0148] The local path updating unit is used to update the local path of the mobile robot to the planned points between the current point and the nearest locked point when there is a locked point; when there is no locked point, the local path of the mobile robot is updated to all planned points.
[0149] Furthermore, the locking point determination unit includes:
[0150] An occupied point determination unit, used to determine whether there is an occupied point among the N planned points, wherein the occupied point is a point on a local path of another mobile robot;
[0151] A judgment output unit, used for outputting a result that there is no locked point when there is no occupied point;
[0152] A path judgment unit is used to judge whether the occupied point is a point of the local path that has been issued in the previous frame when there is an occupied point;
[0153] The judgment output unit is also used for, when the occupied point is a point of the local path that has been issued in the previous frame, the occupied point is a locked point, and outputting a result that a locked point exists;
[0154] A distance judgment unit, used for judging whether the number of points between the occupied point and the current point of the mobile robot occupying it is less than or equal to the number of points between the occupied point and the current point of the current mobile robot when the occupied point is not a point of the local path sent in the previous frame;
[0155] If it exists, the occupied point is a locked point, and the trigger judgment output unit outputs the result that there is a locked point;
[0156] If not, the judgment output unit is triggered to output a result that no locking point exists.
[0157] It should be noted that the multi-mobile robot scheduling system provided in the embodiment of the present invention can be built on a server for centrally managing multiple mobile robots, and the various units and modules described above can refer to program modules or units. Also, more details and corresponding technical effects of the system in the embodiment of the present invention can be referred to the description of the method embodiment above, which will not be repeated here.
[0158] The system of the above-mentioned embodiment of the present invention can be used to execute the corresponding method embodiment of the present invention, and accordingly achieve the technical effects achieved by the above-mentioned method embodiment of the present invention, which will not be repeated here.
[0159] In the embodiment of the present invention, relevant functional modules can be implemented by a hardware processor.
[0160] like Figure 6 As shown, on the other hand, the present invention discloses an electronic device 600, including: a processor 601 and a memory 602. Among them, the processor 601 and the memory 602 are connected, such as connected through a bus 603. Further, the electronic device 600 may also include a transceiver 604. It should be noted that in actual applications, the transceiver 604 is not limited to one, and the structure of the electronic device 600 does not constitute a limitation on the embodiments of the present application. Among them, the processor 601 is applied to the embodiments of the present application to realize the functions of each unit and module of the path planning system of the local restricted area. The processor 601 can be a CPU, a general processor, a DSP, an ASIC, an FPGA or other programmable logic device, a transistor logic device, a hardware component or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in combination with the disclosure of the present application. The processor 601 can also be a combination that realizes a computing function, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc. The bus 603 may include a path to transmit information between the above components. The bus 603 can be a PCI bus or an EISA bus, etc. The bus 603 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used to represent it, but it does not mean that there is only one bus or one type of bus. The memory 602 can be a ROM or other types of static storage devices that can store static information and instructions, a RAM or other types of dynamic storage devices that can store information and instructions, or an EEPROM, CD-ROM or other optical disk storage, optical disk storage (including compressed optical disk, laser disk, optical disk, digital versatile disk, Blu-ray disk, etc.), magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited to this. The memory 602 is used to store the application code for executing the solution of the present application, and the execution is controlled by the processor 601. The processor 601 is used to execute the application code stored in the memory 602 to implement the path planning method for the local restricted area provided by the present invention.
[0161] On the other hand, an embodiment of the present invention provides a storage medium having a computer program stored thereon, wherein the program is executed by a processor to perform the steps of the path planning method for a local restricted area as performed by the server above.
[0162] The above-mentioned product can execute the method provided in the embodiment of the present application, and has the functional modules and beneficial effects corresponding to the execution method. For technical details not fully described in this embodiment, please refer to the method provided in the embodiment of the present application.
[0163] The optional implementation modes of the embodiments of the present invention are described in detail above in conjunction with the accompanying drawings. However, the embodiments of the present invention are not limited to the specific details in the above implementation modes. Within the technical concept of the embodiments of the present invention, various simple modifications can be made to the technical scheme of the embodiments of the present invention, and these simple modifications all belong to the protection scope of the embodiments of the present invention.
[0164] It should also be noted that the various specific technical features described in the above specific embodiments can be combined in any suitable manner without contradiction. To avoid unnecessary repetition, the embodiments of the present invention will not further describe various possible combinations.
[0165] In addition, various implementation modes of the embodiments of the present invention may be arbitrarily combined, and as long as they do not violate the concept of the embodiments of the present invention, they should also be regarded as the contents disclosed by the embodiments of the present invention.
Claims
1. A path planning method for a local restricted area, characterized in that: include: Step S1: dividing a restricted area in the global area; Step S2: Obtain the current position and target position of the mobile robot; Step S3: performing global path planning for the mobile robot according to the current position and the target position of the mobile robot to obtain multiple global paths, each of which has a corresponding total cost; Step S4: Determine whether the current position and the target position of the current mobile robot are both within the restricted area. If not, select the route with the smallest total cost value as the optimal global path; if so, adjust the route cost value to the point outside the restricted area to an infinite value, update the total cost value of each global path of the current mobile robot, and select the global path with the smallest total cost value as the optimal global path; After planning the optimal global path for all mobile robots, it also includes: Step S5: performing local path planning for each mobile robot in the current frame in order according to the task priority to obtain a local path for each mobile robot; Step S6: After all mobile robots complete the local path planning of the current frame, a local path is issued to each mobile robot; and the local path planning of the next frame is performed; Among them, local path planning includes: Step S51: Taking the current position of the mobile robot as the starting point, plan N positions forward along its own global path to obtain the planned positions, where N is a positive integer; Step S52: Determine whether there is a locked point among the N planned points, the locked point being a point of the local path that has been issued in the previous frame, and the locked point being a point of the local path that has been planned but not issued and that is closer to other mobile robots; closer distance is defined as: the distance from other mobile robots that have planned the point to the planned point is less than or equal to the distance from the current mobile robot to the planned point; If there is a locked point, the local path of the mobile robot is updated to the planned point between the current point and the nearest locked point; If there are no locked points, the local path of the mobile robot is updated to all planned points.
2. The path planning method for a local restricted area according to claim 1, characterized in that: When the global path planning of the mobile robot is performed according to the current position and the target position of the mobile robot, it also includes calculating the total cost value for each global path. The total cost value calculation for each global path includes the following steps: Step S31: Calculate the Euclidean distance value from the mobile robot to the planned point as the path cost value of the planned point, and obtain the path cost value passing through the planned point; Step S32: summing up the path cost values of all planned points of the same global path to obtain the total cost value of the global path.
3. The path planning method for a local restricted area according to claim 1, characterized in that: After dividing the restricted area, regional attributes are added to all points, and the regional attributes include attributes outside the restricted area and attributes inside the restricted area. The regional attributes added to the points within the restricted area are attributes inside the restricted area, and the attributes outside the restricted area are added to the points outside the restricted area. By judging the regional attributes of the points, it is judged whether the points are within the restricted area or outside the restricted area.
4. The path planning method for a local restricted area according to claim 1, characterized in that: The step of determining whether the N planned points are at the locked point comprises the following steps: Determine whether there is an occupied point among the N planned points, where the occupied point is a point on a local path of another mobile robot; If there is no occupied point, there is no locked point; If there is an occupied point, determine whether the occupied point is a point of the local path that has been sent in the previous frame; If the occupied point is a point of the local path that has been issued in the previous frame, then the occupied point is a locked point, and there is a locked point among the N planned points; If the occupied point is not a point of the local path sent in the previous frame, determine whether the number of points between the occupied point and the current point of the mobile robot occupying it is less than or equal to the number of points between the occupied point and the current point of the current mobile robot; If yes, the occupied point is a locked point, and there is a locked point among the N planned points; If not, there is no locked point among the N planned points.
5. A path planning system for a local restricted area, characterized by: include: A region partitioning module is used to partition a restricted area in the global area; The point acquisition module is used to obtain the current point and target point of the mobile robot; A global path planning module is used to perform global path planning for the mobile robot according to the current position and target position of the mobile robot, and obtain multiple global paths, each of which has a corresponding total cost value; A selection module is used to select the route with the smallest cost as the optimal global path; An adjustment module, used to adjust the cost value of the points outside the restricted area to an infinite value; An updating module, used to update the cost values of multiple global paths of the current mobile robot; The judgment module is used to judge whether the current point and the target point of the current mobile robot are both within the restricted area. If not, the selection module is triggered to select the route with the smallest cost value as the optimal global path; if so, the adjustment module is triggered to adjust the cost value of the point outside the restricted area to an infinite value, the update module updates the cost values of multiple global paths of the current mobile robot, and the selection module selects the global path with the smallest total cost value as the optimal global path; A local path planning module is used to perform local path planning for each mobile robot in the current frame in order according to the task priority to obtain a local path for each mobile robot; The sending module is used to send a local path to each mobile robot after all mobile robots complete the local path planning of the current frame; And perform local path planning for the next frame; Among them, the local path planning module includes: The local planning unit is used to plan N points forward along its own global path with the current point of the mobile robot as the starting point to obtain the planned points, where N is a positive integer; The locking point judgment unit is used to judge whether the N planned points are at the locking point, the locking point being the point of the local path that has been issued in the previous frame, and the locking point is also the point of the local path that has been planned but not issued and is closer to other mobile robots; closer distance is defined as: the number of points from other mobile robots that have planned the point to the planned point is less than or equal to the number of points from the current mobile robot to the planned point; The local path updating unit is used to update the local path of the mobile robot to the planned points between the current point and the nearest locked point when there is a locked point; when there is no locked point, the local path of the mobile robot is updated to all planned points.
6. The path planning system for a local restricted area according to claim 5, characterized in that: The global path planning module includes: A calculation unit, used to calculate the Euclidean distance value from the mobile robot to the planned point as the path cost value of the planned point, and obtain the path cost value passing through the planned point; The summing unit is used to sum the path cost values of all planning points of the same global path to obtain the total cost value of the global path.
7. The path planning system for a local restricted area according to claim 5, characterized in that: The global path planning module includes: The area attribute adding unit is used to add area attributes to all points after the restricted area is divided. The area attributes include attributes outside the restricted area and attributes inside the restricted area. The area attributes added by the area attribute adding unit to the points inside the restricted area are attributes inside the restricted area, and the area attribute adding unit adds attributes outside the restricted area to the points outside the restricted area.
8. The path planning system for a local restricted area according to claim 5, characterized in that: The locking point judgment unit includes: An occupied point determination unit, used to determine whether there is an occupied point among the N planned points, wherein the occupied point is a point on a local path of another mobile robot; A judgment output unit, used for outputting a result that there is no locked point when there is no occupied point; A path judgment unit is used to judge whether the occupied point is a point of the local path that has been issued in the previous frame when there is an occupied point; The judgment output unit is also used for, when the occupied point is a point of the local path that has been issued in the previous frame, the occupied point is a locked point, and outputting a result that a locked point exists; A distance judgment unit, used for judging whether the number of points between the occupied point and the current point of the mobile robot occupying it is less than or equal to the number of points between the occupied point and the current point of the current mobile robot when the occupied point is not a point of the local path sent in the previous frame; If it exists, the occupied point is a locked point, and the trigger judgment output unit outputs the result that there is a locked point; If not, the judgment output unit is triggered to output a result that no locking point exists.
9. An electronic device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method according to any one of claims 1 to 4 is implemented.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Path planning method and device, storage medium and electronic equipment
CN119245671A
Adaptive-parameter local path planning method and system for mobile robot
WO2024174437A1