A drive control system for multi-AGV collaboration
By constructing obstacle movement sequence and trajectory prediction models, combined with task queue management and AGV status filtering, dynamic obstacle avoidance and task matching of multi-AGV systems are realized, solving the problem that existing technologies cannot avoid dynamic obstacles, and improving the operational safety and task completion efficiency of AGV clusters.
Patent Information
- Application Number
- CN202511527815.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-24
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2045-10-24
AI Technical Summary
Existing multi-AGV collaborative systems cannot effectively avoid dynamic obstacles, resulting in high collision risks and path adjustment delays, making it difficult to meet the safety and efficiency requirements in highly dynamic scenarios.
By constructing obstacle movement sequence and trajectory prediction models, combined with task queue management and AGV status screening, dynamic obstacle avoidance and task matching are achieved, ensuring that AGVs avoid obstacles in advance, thereby improving resource utilization and task completion rate.
It reduces the risk of collisions caused by temporary obstacles, reduces delays caused by repeated path adjustments, improves the operational safety and continuity of AGV clusters in dynamic scenarios, and enhances resource utilization and on-time task completion rate.
Smart Images

Figure CN120993924B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of AGV collaborative control technology, specifically a drive control system applied to the collaboration of multiple AGVs. Background Technology
[0002] In the field of AGV (Automated Guided Vehicle) collaborative control technology, with the increasing demands for material handling efficiency in intelligent manufacturing, logistics warehousing, and other scenarios, multi-AGV collaborative operation has become the mainstream application direction. In existing technologies, multi-AGV collaborative systems mostly rely on preset static path planning schemes, that is, by drawing a work area map in advance and planning fixed driving routes to achieve orderly scheduling of AGVs.
[0003] Existing technologies cannot avoid dynamic obstacles in advance through static path planning and passive obstacle avoidance modes. AGVs often brake suddenly and adjust their paths repeatedly due to unexpected obstacles. This not only easily leads to congestion or collision risks between AGVs, but also causes delays in material handling tasks due to the time delay of path replanning. It is difficult to meet the safety and efficiency requirements of multi-AGV collaboration in highly dynamic scenarios.
[0004] This invention provides a drive control system for multi-AGV collaboration to solve the above-mentioned technical problems. Summary of the Invention
[0005] This invention aims to solve at least one of the technical problems existing in the prior art. To this end, this invention proposes a drive control system for multi-AGV collaboration. This system transforms real-time response into advance avoidance, significantly reducing the risk of collisions caused by temporary obstacles and reducing delays caused by repeated path adjustments. It is especially suitable for scenarios with dense dynamic obstacles such as workshops and warehouses, effectively ensuring the safety and continuity of AGV cluster operation.
[0006] To achieve the above objectives, a first aspect of the present invention provides a drive control system for multi-AGV collaboration, including a central control module and several AGVs communicatively connected thereto;
[0007] Central control module: used to construct obstacle movement sequences based on environmental data, and predict obstacle trajectories based on these sequences; wherein, environmental data is used to identify obstacle states; and,
[0008] Used to determine the start time of several tasks in the task queue; AGVs are matched to several tasks based on the movement trajectory and task start time.
[0009] In one possible implementation, an obstacle movement sequence is constructed based on environmental data, including:
[0010] Extract environmental data collected by the AGV during the execution of its work tasks; the environmental data includes image data and point cloud data.
[0011] Obstacle parameters in environmental data are identified and arranged according to the acquisition time of the environmental data to obtain an obstacle movement sequence; the obstacle parameters include type, location and size.
[0012] In one possible implementation, predicting the trajectory of an obstacle based on an obstacle movement sequence includes:
[0013] A trajectory prediction model is obtained by training a machine learning model based on a historical motion dataset; the machine learning model is built based on an LSTM model.
[0014] Temporal feature data is constructed based on obstacle movement sequences. The temporal feature data is then input into a trajectory prediction model to predict the movement trajectory of the obstacle.
[0015] In one possible implementation, the start time of several work tasks in the task queue is determined, including:
[0016] Extract the task queue; sequentially identify the task parameters of several work tasks in the task queue, and extract the task deadline from the task parameters; wherein, the task parameters include the task start point, task end point, task content and task deadline;
[0017] The task start time is calculated based on the task deadline and movement trajectory.
[0018] In one possible implementation, AGVs are matched to several work tasks based on the movement trajectory and the task start time, including:
[0019] Select work tasks as target tasks in sequence; match several idle AGVs based on the movement trajectory and the task start time of the target task; where idle AGVs refer to those that are idle at the start time of the task.
[0020] The target AGV is determined based on the status parameters of several idle AGVs, and the target AGV is associated with the target task; the status parameters include power, load capacity and location.
[0021] In one possible implementation, several idle AGVs are matched based on the movement trajectory and the task's start time, including:
[0022] AGVs in normal working condition are used as backup AGVs; among them, backup AGVs include AGVs that are not performing work tasks and AGVs that are performing work tasks.
[0023] Based on the movement trajectory, determine whether the candidate AGV can reach the task start point before the task starts; if yes, mark it as an idle AGV; otherwise, do not mark it.
[0024] In one possible implementation, the determination of whether the candidate AGV can reach the task start point before the task start time is based on the movement trajectory, including:
[0025] Plan the optimal route for alternative AGVs to reach the starting point of the task;
[0026] Based on the predicted movement trajectory, determine whether obstacles will block the optimal route; if yes, plan an obstacle avoidance route and determine the movement route based on the optimal route; if no, use the optimal route as the movement route.
[0027] If a candidate AGV can reach the task start point before the task begins by following the movement route, then the candidate AGV is marked as an idle AGV.
[0028] In one possible implementation, the target AGV is determined based on the state parameters of several idle AGVs, including:
[0029] Based on the status parameters, determine whether several idle AGVs can complete the target task; if yes, mark the idle AGVs as optional AGVs; otherwise, do not mark them.
[0030] Select the AGVs whose arrival time at the task start point is closest to the task start time from the available AGVs as the target AGVs.
[0031] In one possible implementation, the target AGV is determined based on the state parameters of several idle AGVs, including:
[0032] Based on the status parameters, determine whether several idle AGVs can complete the target task; if yes, mark the idle AGVs as optional AGVs; otherwise, do not mark them.
[0033] The target AGV is determined from several selectable AGVs at the start of the task.
[0034] In one possible implementation, the target AGV is determined from several selectable AGVs based on the start time of the task, including:
[0035] The target AGVs for the work tasks are matched in order of their start times, and the target AGVs matched for the work tasks are locked.
[0036] If the optional AGV matched in the subsequent work task has been locked, determine whether the target AGV can be changed in the work task that locked the optional AGV; if yes, change the target AGV; otherwise, postpone the processing of the subsequent work task.
[0037] Compared with the prior art, the beneficial effects of the present invention are:
[0038] 1. This invention enhances dynamic environment adaptability through multi-dimensional technical design, with the core being the construction of a closed-loop mechanism of "environmental perception - trajectory prediction - dynamic obstacle avoidance". This technical solution utilizes sensors mounted on the AGV to collect environmental data covering the work area, accurately identifying the type, location, size, and other parameters of obstacles, and arranging them into an obstacle movement sequence according to the collection time. Simultaneously, based on historical motion datasets containing obstacle motion states, attributes, and environmental context, an LSTM trajectory prediction model is trained to output the future movement trajectory of obstacles in advance. During the AGV's journey to the task start point, the predicted trajectory is used to determine whether the optimal route is obstructed. If obstructed, an obstacle avoidance route is planned in real time to ensure that the AGV arrives at the task start point before the task begins. Compared to the passive mode of traditional AGVs that rely on static path planning and real-time adjustments after encountering obstacles, this invention transforms real-time response into proactive avoidance, significantly reducing the collision risk caused by temporary obstacles and minimizing delays caused by repeated path adjustments. It is particularly suitable for scenarios with dense dynamic obstacles, such as workshops and warehouses, effectively ensuring the safety and continuity of AGV cluster operation.
[0039] 2. This invention achieves precise matching of AGV resources and task requirements through a refined task allocation mechanism. Its core solution includes task queue management, task time calculation, multi-level AGV screening, and dynamic adjustment. First, a task queue is constructed based on task priority and order placement time. Combining task deadlines, task execution duration, and redundancy time, the start time of each task is precisely calculated. Next, candidate AGVs are screened based on normal working status. Using obstacle prediction trajectories, it is determined whether a candidate AGV can arrive at the starting point before the task start time, and it is marked as an idle AGV. Finally, based on factors such as battery power and load capacity... The system filters out selectable AGVs capable of completing the target task based on dynamic parameters, and finally determines the target AGV according to the principle of "arrival time closest to task start time" or "task urgency priority". It also supports dynamic replacement and priority guarantee for urgent tasks when AGVs overlap and match. This technical solution avoids the problem of idle or overloaded AGV resources caused by the proximity allocation in traditional task allocation. It not only fully explores the potential of AGV resources, but also ensures a high degree of adaptation between task and AGV capabilities and time requirements, significantly improving AGV resource utilization and on-time task completion rate. It is suitable for multi-task, highly dynamic intelligent manufacturing and logistics warehousing scenarios. Attached Figure Description
[0040] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0041] Figure 1 This is a schematic diagram of the drive control system applied to multi-AGV collaboration in an embodiment of the present invention;
[0042] Figure 2 This is a schematic diagram illustrating the calculation of task execution time in an embodiment of the present invention;
[0043] Figure 3 This is a schematic diagram illustrating the alternative AGV traveling to the task starting point when it is not affected by obstacles in an embodiment of the present invention;
[0044] Figure 4 This is a schematic diagram of the alternative AGV heading to the task starting point when it is affected by obstacles in an embodiment of the present invention. Detailed Implementation
[0045] The technical solution of the present invention will be clearly and completely described below with reference to the embodiments. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0046] Please see Figure 1 The first aspect of the present invention provides a drive control system for multi-AGV collaboration, including a central control module and several AGVs communicatively connected thereto; the central control module is used to construct an obstacle movement sequence based on environmental data, and predict the movement trajectory of obstacles based on the obstacle movement sequence; wherein the environmental data is used to identify the obstacle state; and to determine the task start time of several work tasks in the task queue; and to match AGVs for several work tasks based on the movement trajectory and the task start time.
[0047] In this embodiment of the invention, the central control module is used to coordinate several AGVs within the working area and communicates with them. The central control module has data collection, processing, and storage functions. It is used to analyze and predict the movement trajectory of obstacles based on environmental data collected by the AGVs, and combine this trajectory with the subsequent coordinated scheduling of several AGVs to improve the accuracy and efficiency of coordinated scheduling.
[0048] The prediction of obstacle movement trajectories is primarily achieved through environmental data collected by the AGV. As the AGV moves along its task route, it uses various sensors deployed on its body to collect environmental data, which is then transmitted to the central control module in real time. The central control module predicts the obstacle's movement trajectory based on this data. Furthermore, because the environmental data transmitted by the AGV is updated promptly as the task progresses, the obstacle movement sequence is also updated accordingly, leading to more accurate predictions of the obstacle's movement trajectory. This improves the accuracy of coordinated scheduling among multiple AGVs.
[0049] In a preferred embodiment, constructing an obstacle movement sequence based on environmental data includes: extracting environmental data collected by the AGV during the execution of its work tasks; identifying obstacle parameters in the environmental data; arranging the obstacle parameters according to the collection time of the environmental data to obtain the obstacle movement sequence.
[0050] Sensors deployed on AGVs include vision sensors and LiDAR. Vision sensors primarily include monocular / binocular cameras and RGB-D cameras, used to acquire environmental images, which can be used to identify obstacles. LiDAR scans the surrounding environment by emitting laser beams, receiving reflected light, and calculating the time-of-flight (ToF) or phase difference of the light to generate a 3D point cloud model of the environment, thereby identifying obstacles. AGVs can be equipped with one or more types of sensors, such as vision sensors or LiDAR. Other sensors used for obstacle identification can also be deployed.
[0051] Algorithms (e.g., 2D / 3D object detection algorithms based on neural network models or point cloud algorithms based on deep learning models) can identify obstacle parameters from environmental data, including the type, location, and size of obstacles. Here, obstacles refer to those that may affect the AGV's movement along the planned path. Examples include goods temporarily stored in aisles or workers walking in aisles. These obstacles are unforeseen during path planning and may affect the AGV's passage. However, shelves, equipment, etc., within the work area are already defined before path planning and therefore do not affect the AGV's movement along the planned path.
[0052] It's important to note that the environmental data is collected by the AGVs performing their tasks. Immediately after collection, obstacle parameters are identified, and these parameters are integrated with previously identified obstacle parameters to obtain the obstacle movement sequence. The real-time nature of environmental data collection ensures the reliability and timeliness of the obstacle movement sequence. Furthermore, since multiple AGVs are performing tasks within the work area, environmental data not only covers every corner of the area but also allows multiple AGVs to simultaneously collect data on the same obstacle, thus guaranteeing the continuity of the obstacle movement trajectory to a certain extent. Of course, if the obstacle movement sequence lacks data for a certain period, making it difficult to predict its trajectory, data can be supplemented using sensors deployed within the work area.
[0053] In a preferred embodiment, predicting the movement trajectory of an obstacle based on an obstacle movement sequence includes: training a machine learning model based on a historical motion dataset to obtain a trajectory prediction model; constructing time-series feature data based on the obstacle movement sequence; inputting the time-series feature data into the trajectory prediction model to predict the movement trajectory of the obstacle.
[0054] The trajectory prediction model predicts obstacle trajectories by taking the obstacle's motion state over the past N timestamps, including position, speed, and direction, as input features to predict its position coordinates over the next M timestamps. The obstacle movement sequence includes the obstacle's motion state collected by the AGV over a past period. This obstacle movement sequence is converted into time-series feature data, which is then input into the trajectory prediction model to predict the obstacle's trajectory over a future period.
[0055] Historical motion data refers to the collection of historical trajectory data of different obstacles within the working area. This data includes obstacle motion state data (such as position, velocity, and acceleration), obstacle attribute data (such as type and size), environmental context data (such as area type and passage width), and timestamp data. These are correlated with time-series feature data to ensure the operability of model training. Using this historical trajectory set to train a machine learning model, such as an LSTM model, a trajectory prediction model can be obtained. The training process of the LSTM model is already fully disclosed in existing technology and will not be elaborated upon here.
[0056] In some other preferred embodiments, the movement trajectory of the obstacle can also be predicted based on the obstacle movement sequence using other algorithms, which will not be listed here.
[0057] In a preferred embodiment, determining the task start time of several work tasks in the task queue includes: extracting the task queue; sequentially identifying the task parameters of several work tasks in the task queue, extracting the task deadline from the task parameters; and calculating the task start time of the corresponding work task based on the task deadline and the movement trajectory.
[0058] To improve AGV scheduling efficiency, during the current task execution, a task queue that requires AGV scheduling is determined, and several tasks in this task queue are tasks that need to be processed promptly next.
[0059] For example, several work tasks are sorted according to priority and order placement time, with higher priority tasks and earlier order placement times placed first. Work tasks are selected sequentially according to a set number of tasks to form a task queue. For instance, if the task quantity is set to 10, 10 tasks are selected sequentially from the set number of tasks to form the task queue. Other tasks are processed only after the task queue has enough AGVs to match. The task quantity can be set based on the current total number of AGVs; for example, task quantity = current available AGVs × 1.2 (redundancy factor) to ensure that the queue size matches the AGV resources and avoids scheduling delays caused by an excessively large queue.
[0060] It's important to understand that tasks outside the task queue can be changed, such as their content or priority. The order of tasks may also change as new tasks are placed. For example, if a highest-priority task is placed first, it may appear at the top of the list of all existing tasks.
[0061] It is worth noting that if enough AGVs are matched for several tasks in the task queue, but some AGVs still have no tasks to perform, then the next task queue can be determined, and AGVs can be matched for several tasks in that task queue to avoid some AGVs being idle for a long time.
[0062] The task parameters of several tasks in the task queue are extracted sequentially. These parameters mainly include the task start point, task end point, task content, and task deadline. The task deadline is then extracted from these parameters. Simultaneously, the task execution time is calculated based on the task content, start point, and end point. The task start time can be calculated from the task deadline, execution time, and redundancy time. In other words, the AGV needs to arrive at the task start point before the task start time; otherwise, it must complete the corresponding task within the task deadline.
[0063] It's also important to understand that redundancy time includes the AGV's preparation time and the time for loading and unloading goods. Task execution time refers to the time the AGV takes from the task's starting point to its destination. If the AGV encounters obstacles during its movement, the task execution time will be even longer.
[0064] Figure 2 This diagram illustrates the calculation of task execution time. Generally, when an AGV performs a transport task from position Q to position M, its movement route is Y1. The task execution time can be calculated based on the length of the movement route Y1 and the AGV's average speed. However, if it is determined that the predicted obstacle's trajectory intersects with the movement route Y1, the obstacle is highly likely to affect the AGV's task execution time. For example... Figure 2 In the diagram, the gray grid represents the position where the obstacle meets the AGV. At this time, the AGV needs to avoid the obstacle. Therefore, planning the obstacle avoidance path and executing the obstacle avoidance path will extend the task execution time. The time required to move along Y1, bypass the obstacle through Y2, and then move along Y1 to position M can be calculated based on the average speed of the AGV. The time required to plan the obstacle avoidance path can also be calculated. The task execution time is obtained by adding the two times.
[0065] For example, suppose task A requires the AGV to move goods from location Q to location M before 10:00 AM. The task start point is location Q, the task end point is location M, the task content is moving goods, and the task deadline is 10:00 AM. Figure 2 As shown, if the task execution time is 2 minutes and the redundancy time is 1 minute, then the task starts at 9:57 AM.
[0066] In another preferred embodiment, the task execution time can be set based on empirical data to ensure that the AGV can complete the work task on time within the specified execution time.
[0067] In a preferred embodiment, matching AGVs for several work tasks based on the movement trajectory and the task start time includes: sequentially selecting work tasks as target tasks; matching several idle AGVs based on the movement trajectory and the task start time of the target tasks; determining the target AGV based on the state parameters of the several idle AGVs; and associating the target AGV with the target task.
[0068] The task start time refers to the time before which the AGV arrives at the task starting point to complete the task. If an AGV does not arrive at the task starting point before the task start time, it cannot be selected as the target AGV to complete the task. When matching several idle AGVs based on the task start time, it essentially determines whether the AGV can arrive at the task starting point before the task start time. This includes not only AGVs not performing tasks but also AGVs currently performing tasks. If an AGV is not performing a task but can arrive at the task starting point before the task start time, it can be considered an idle AGV. Similarly, if an AGV currently performing a task can also arrive at the task starting point before the task start time after completing the task, it can also be considered an idle AGV.
[0069] Matching AGVs for a task based on the task start time mainly involves two steps:
[0070] First, we filter out AGVs that were idle before the start time of the target task. These AGVs can be used to schedule and execute the target task. For example, an AGV that has been idle all the time can certainly be used to execute the target task; an AGV that is currently executing a work task but will be able to complete the task before its start time, and was also idle before the start time of the task, can also be used to execute the target task.
[0071] Second, select AGVs from the idle AGVs that can arrive at the task start point before the task begins and are capable of completing the target task. If an AGV is too far from the task start point to arrive before the task begins, it cannot be used to perform the target task; if an AGV can arrive at the task start point before the task begins, but its power and load capacity are insufficient to complete the target task, it also cannot be used to perform the target task.
[0072] It is worth noting that when determining whether an AGV can reach the task start point at the start of the task, it should be considered that the AGV's moving speed cannot exceed its maximum speed limit (it can reach the task start point at the maximum speed limit), and its battery power should also be sufficient to reach the task start point from its current location (as a screening condition, its battery power is not judged to be sufficient to execute the target task).
[0073] In a preferred embodiment, several idle AGVs are matched based on the movement trajectory and the task start time of the target task, including: using AGVs in normal working condition as candidate AGVs; determining whether the candidate AGVs can reach the task start time before the task start time based on the movement trajectory; if yes, they are marked as idle AGVs; otherwise, they are not marked.
[0074] When matching idle AGVs for a target task, all AGVs in normal condition are first filtered out as candidate AGVs. The purpose is to eliminate AGVs that are in a faulty state or unable to perform their work tasks for other reasons. Of course, candidate AGVs include both AGVs that are not performing work tasks and those that are currently performing work tasks.
[0075] Next, it is determined whether the candidate AGV can reach the task start point before the start time of the target task. If it can reach the task start point, it is marked as an idle AGV. In other words, an idle AGV can at least be guaranteed to appear at the task start point at the start time of the task, so as to ensure that it will not affect the execution of the subsequent target task.
[0076] In a preferred embodiment, determining whether a candidate AGV can reach the task start point before the task start time based on the movement trajectory includes: planning the optimal route for the candidate AGV to reach the task start point; determining whether obstacles will block the optimal route based on the predicted movement trajectory; if yes, planning an obstacle avoidance route and determining the movement route based on the optimal route; if no, using the optimal route as the movement route; if the candidate AGV can reach the task start point before the task start time along the movement route, marking the candidate AGV as an idle AGV.
[0077] The system determines whether the movement trajectory of the obstacle affects the AGV's journey to the task starting point. If it does not affect the AGV, it determines whether the AGV can reach the task starting point when moving normally. If it does affect the AGV, it determines whether the AGV can reach the task starting point when it goes around the obstacle.
[0078] Determining whether the candidate AGV can reach the task starting point before the task begins mainly involves determining whether the candidate AGV has enough time to reach the task starting point. The time spent traveling to the task starting point is affected by the movement speed and distance, and may also be affected by obstacles.
[0079] If there are no obstacles, first calculate the path distance between the candidate AGV's location and the task start point. Calculate the time required to move the path distance using the candidate AGV's average speed. Based on this time, determine whether the candidate AGV can reach the task start point before the task begins.
[0080] It is worth noting that the path distance is the distance of the optimal route between the location of the corresponding AGV and the starting point of the task (this optimal route is planned according to the environmental planning of the work area, taking into account the influence of shelves, equipment, etc.). The location of the alternative AGV is divided into two cases: one is the alternative AGV that is not performing a work task, and its location is its current location; the other is the alternative AGV that is performing a work task, and its location is the destination of the current work task.
[0081] Figure 3 This is a schematic diagram of an alternative AGV traveling to the mission starting point when it is not affected by obstacles. Figure 3 There are two candidate AGVs, B1 and B2, representing their current positions. The AGV at B1 is a candidate AGV not currently performing a task. Its optimal route to position Q is an "L"-shaped route YB1. Since there are no obstacles, the time for B1 to reach position Q can be directly calculated based on the optimal route. Assuming the AGV at B1 can move immediately, based on the current time and the time required to follow the optimal route YB1, it can be determined whether it can reach position Q before the task starts. The candidate AGV at B2 is currently performing a task. B2' represents the position of the candidate AGV after the current task is completed. The optimal route from B2' to position Q is a straight line YB2. The time required to reach position Q from B2' along this straight line YB2 can be calculated, and combined with the time of arrival at B2', it can be determined whether it can reach position Q before the task starts.
[0082] Figure 4 This is a diagram illustrating the alternative AGV's journey to the mission starting point when it is affected by obstacles. Figure 4 The medium gray grid represents obstacles. Based on the predicted movement trajectory of these obstacles, they will affect the travel time of the alternative AGV at B1 to position Q, and subsequently also affect the travel time of the alternative AGV at B2' to position Q. At this point, it is necessary to consider the time required to plan the obstacle avoidance route and the time required to travel to position Q according to the planned obstacle avoidance route. These two times are then added together and combined with the departure times of the alternative AGVs to determine whether they can reach position Q before the mission starts.
[0083] In a preferred embodiment, determining the target AGV based on the status parameters of several idle AGVs includes: judging whether several idle AGVs can complete the target task based on the status parameters; if yes, marking the idle AGVs as optional AGVs; if no, not marking them; selecting several optional AGVs among the optional AGVs whose arrival time at the task start point is closest to the task start time as the target AGV.
[0084] After identifying several idle AGVs capable of arriving at the target task's starting point before the task's start time, further screening is required. Specifically, this involves verifying the capability of the candidate AGVs to complete the target task. Based on the status parameters of the candidate AGVs—namely, their power and load capacity—to ensure they meet the task requirements, the candidate AGVs that meet these requirements are selected as the target AGVs. If the target task requires multiple AGVs, a sufficient number of target AGVs are selected based on the principle that their arrival time at the task's starting point is closest to the task's start time. These target AGVs are the target AGVs used to execute the target task. If the target task requires only one AGV, then one target AGV is selected based on the principle that its arrival time at the task's starting point is closest to the task's start time.
[0085] It should be noted that the order of selecting AGVs based on status parameters and selecting AGVs based on task start time can be reversed. That is, you can first select available AGVs based on status parameters, then select idle AGVs from the available AGVs based on task start time, and finally determine the required number of target AGVs by combining the principle that the arrival time at the task start point is closest to the task start time.
[0086] In a preferred embodiment, determining the target AGV based on the status parameters of several idle AGVs includes: determining whether several idle AGVs can complete the target task based on the status parameters; if yes, marking the idle AGV as an optional AGV; if no, not marking it; and determining the target AGV from several optional AGVs based on the task start time.
[0087] In this embodiment, the available AGVs are not further filtered based on the principle that "the time of arrival at the task starting point is closest to the task start time". Therefore, each target task corresponds to multiple target AGVs, and the number is greater than the task requirements of the target task.
[0088] In a preferred embodiment, determining the target AGV from a plurality of optional AGVs based on the task start time includes: matching target AGVs to the work tasks sequentially according to the task start time, and locking the target AGVs matched to the work tasks; when an optional AGV matched to a later work task has been locked, determining whether the work task that locked the optional AGV can change the target AGV; if yes, then changing the target AGV; if no, then delaying the processing of the later work task.
[0089] It is important to clarify that all available AGVs for the tasks in the task queue can complete the tasks in a timely manner. For example, if a task corresponds to several available AGVs, and assuming that the task can be completed by a single AGV, then any one of these available AGVs can be chosen to complete the task.
[0090] However, some tasks may correspond to multiple selectable AGVs, while others may correspond to only one. Since the AGVs for these tasks may overlap, determining the AGVs for tasks sequentially based on the principle of "the time of arrival at the task's starting point is closest to the task's start time" can lead to some tasks failing to find a target AGV. For example, task A1 has selectable AGVs B1, B2, and B3, while task A2 has only selectable AGV B1. Because task A1 is earlier in the task queue, and B1's arrival time at the task's starting point is closest to task A1's start time, B1 should be chosen as the target AGV for task A1. In this case, task A2 cannot find a target AGV.
[0091] To address this issue, this embodiment flexibly matches the target AGV based on the task start time. The earlier the task start time, the more urgent the time requirement for the corresponding task. Tasks are extracted sequentially according to their start times, and the target AGV is determined by matching several selectable AGVs corresponding to each task. If overlapping selectable AGVs are still found during the matching process, the target AGV of the preceding overlapping task is replaced.
[0092] For example, task A1 has three selectable AGVs (B1, B2, and B3), while task A2 has only one selectable AGV (B1). If task A2 starts earlier, B1 will be chosen as the target AGV for task A2, and task A1's target AGV will be selected from B2 and B3. Alternatively, if task A1 starts earlier, B1 will initially be chosen as its target AGV (this can be interpreted as B1 being locked). When matching a target AGV for task A2, it will be found that B1 is already locked, so the target AGV for task A1 will be changed to B2. Furthermore, if task A1 also only has B1, then B1 will be chosen as its target AGV (the lock will not be released), and task A2 will be processed in the next task queue.
[0093] The above embodiments are only used to illustrate the technical methods of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical methods of the present invention without departing from the spirit and scope of the technical methods of the present invention.
Claims
1. A drive control system applied to multi-AGV cooperation, characterized in that, The central control module is connected with a plurality of AGVs in communication; The central control module is configured to construct a moving sequence of obstacles based on environmental data, and predict a moving trajectory of the obstacles based on the moving sequence of obstacles; wherein the environmental data is used to identify a state of the obstacles; and The task start time of the plurality of work tasks in the task queue is determined, and the plurality of work tasks are matched with the AGVs based on the moving trajectory and the task start time; wherein the task start time refers to a time point before which the AGV arrives at a starting point of the work task and can complete the work task; The AGVs are matched with the plurality of work tasks based on the moving trajectory and the task start time, comprising: The work tasks are sequentially selected as target tasks, and a plurality of idle AGVs are matched based on the moving trajectory and the task start time of the target tasks; wherein the idle AGV refers to an AGV in an idle state at the task start time; A target AGV is determined based on state parameters of the plurality of idle AGVs, and the target AGV is associated with the target task; wherein the state parameters include power, load capacity and position; The AGVs are matched with the plurality of work tasks based on the moving trajectory and the task start time of the target tasks, comprising: The AGVs in a normal working state are selected as candidate AGVs; wherein the candidate AGVs include AGVs that do not execute work tasks and AGVs that execute work tasks; It is judged whether the candidate AGV can arrive at the starting point of the work task before the task start time in combination with the moving trajectory; if yes, the candidate AGV is marked as an idle AGV; if no, the candidate AGV is not marked; It is judged whether the candidate AGV can arrive at the starting point of the work task before the task start time in combination with the moving trajectory, comprising: An optimal route of the candidate AGV to the starting point of the work task is planned; It is judged whether the optimal route is blocked by the obstacles in combination with the predicted moving trajectory; if yes, an obstacle avoidance route is planned, and a moving route is determined in combination with the optimal route; if no, the optimal route is taken as the moving route; If the candidate AGV can arrive at the starting point of the work task before the task start time along the moving route, the candidate AGV is marked as an idle AGV.
2. The drive control system for multi-AGV cooperation according to claim 1, characterized in that, The moving sequence of obstacles is constructed based on the environmental data, comprising: Environmental data collected by the AGV during execution of the work task is extracted; wherein the environmental data includes image data and point cloud data; Obstacle parameters in the environmental data are identified, and the obstacle parameters are arranged according to the collection time of the environmental data to obtain the moving sequence of obstacles; wherein the obstacle parameters include type, position and size.
3. The drive control system for multi-AGV cooperation according to claim 2, characterized in that, The moving trajectory of the obstacles is predicted based on the moving sequence of obstacles, comprising: A machine learning model is trained based on a historical motion data set to obtain a trajectory prediction model; wherein the machine learning model is constructed based on an LSTM model; The moving trajectory of the obstacles is predicted based on the moving sequence of obstacles, comprising:
4. The drive control system for multi-AGV cooperation according to any one of claims 1 to 3, characterized in that, extracting a task deadline from the task parameters; wherein the task parameters comprise a task starting point, a task ending point, a task content and the task deadline; calculating a task starting time of the corresponding work task based on the task deadline and the moving track.
5. The drive control system for multi-AGV cooperation according to claim 1, characterized in that, determining a target AGV based on state parameters of the idle AGVs, comprising: judging whether the idle AGVs can complete the target task based on the state parameters; if yes, marking the idle AGV as a selectable AGV; if no, not marking; selecting a number of selectable AGVs that have a time of reaching the task starting point closest to the task starting time as the target AGV.
6. The drive control system for multi-AGV cooperation according to claim 1, characterized in that, determining a target AGV based on state parameters of the idle AGVs, comprising: judging whether the idle AGVs can complete the target task based on the state parameters; if yes, marking the idle AGV as a selectable AGV; if no, not marking; determining a target AGV from the selectable AGVs based on the task starting time.
7. The drive control system for multi-AGV cooperation according to claim 6, characterized in that, determining a target AGV from the selectable AGVs based on the task starting time, comprising: matching the target AGV to the work task in sequence before and after the task starting time, and locking the target AGV matched to the work task; when the selectable AGV matched to a subsequent work task has been locked, judging whether the work task that locks the selectable AGV can replace the target AGV; if yes, replacing the target AGV; if no, delaying the subsequent work task.
Citation Information
Patent Citations
Intelligent warehousing route planning system and method based on multiple AGVs
CN110264120A
Crane path planning and obstacle avoidance early warning system
CN119124150A
AGV cluster scheduling method and system thereof
CN120725555A