CN112987721B - Multi-AGV scheduling device and fusion method of global planning and local planning thereof - Google Patents
Multi-AGV scheduling device and fusion method of global planning and local planning thereof Download PDFInfo
- Publication number
- CN112987721B CN112987721B CN202110137260.3A CN202110137260A CN112987721B CN 112987721 B CN112987721 B CN 112987721B CN 202110137260 A CN202110137260 A CN 202110137260A CN 112987721 B CN112987721 B CN 112987721B
- Authority
- CN
- China
- Prior art keywords
- planning
- global
- agv
- path
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007500 overflow downdraw method Methods 0.000 title claims abstract description 11
- 238000000034 method Methods 0.000 claims abstract description 16
- 238000004891 communication Methods 0.000 claims abstract description 10
- 238000005070 sampling Methods 0.000 claims description 8
- 238000012937 correction Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000001186 cumulative effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004540 process dynamic Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
技术领域technical field
本发明属于AGV领域,具体涉及一种多AGV调度装置及其全局规划与局部规划融合方法。The invention belongs to the field of AGVs, and in particular relates to a multi-AGV dispatching device and a fusion method of global planning and local planning thereof.
背景技术Background technique
多AGV的全局规划,为当前AGV规划路径时会参考其他AGV的行驶路径、状态等,考虑路径平衡性、任务总完成时间等全局指标。常见的全局规划有单项图法、交通法等。The global planning of multiple AGVs will refer to the driving paths and states of other AGVs when planning the path for the current AGV, and consider global indicators such as path balance and total task completion time. Common global planning methods include single-item graph method and traffic method.
单向图法通过规定路线的单一行驶方向简化了AGV的行驶模型,地图中可能的行驶路径单一,冲突只可能发生在路口,便于躲避冲突策略的设计。但是由于规定所有路径的允许通行方向,极易出现绕路问题,任务执行的路径成本较高。The one-way map method simplifies the AGV driving model by specifying a single driving direction of the route. The possible driving path in the map is single, and conflicts can only occur at intersections, which is convenient for the design of conflict avoidance strategies. However, since the allowable directions of all paths are stipulated, detours are prone to occur, and the path cost of task execution is relatively high.
交通法主要用于路口资源分配的问题,碰撞是由多个物体同时占据一条路线发生的。因此,可以通过对相关环境中的所有交叉点采取适当的措施来避免每次碰撞。通过枚举重叠的路线:沿相反方向、相同方向的路线和交叉路口,构建适应所有这些重叠路线的交通规则来避免碰撞。常见的处理方法有:路口等待、路径重选等。交通法虽然能有效的解决冲突,降低事故的发生率,但是其更多的是在冲突即将产生时的策略处理,当AGV数量庞大,交通拥堵严重的情况下易造成系统瘫痪。Traffic law is mainly used for resource allocation at intersections. Collisions are caused by multiple objects occupying a route at the same time. Therefore, each collision can be avoided by taking appropriate measures for all intersections in the relevant environment. By enumerating overlapping routes: routes in opposite directions, routes in the same direction, and intersections, construct traffic rules that accommodate all these overlapping routes to avoid collisions. Common processing methods include: intersection waiting, path reselection, etc. Although the traffic law can effectively resolve conflicts and reduce the incidence of accidents, it is more about strategic handling when conflicts are about to occur. When the number of AGVs is large and the traffic congestion is serious, it is easy to cause system paralysis.
全局规划算法考虑全局最优性,在一定程度上可以减少任务的处理时间,避免系统死锁、碰撞等问题发生。但是全局规划算法的时间复杂度随着AGV的增加呈指数级上升,响应时间长,实时性低,难以处理AGV的动态场景。The global planning algorithm considers the global optimality, which can reduce the processing time of tasks to a certain extent, and avoid problems such as system deadlock and collision. However, the time complexity of the global planning algorithm increases exponentially with the increase of AGV, the response time is long, and the real-time performance is low, which makes it difficult to handle the dynamic scene of AGV.
Dijkstra算法以起点为中心发散式的向外扩展邻接节点,以搜索路径的累积代价作为启发式,优先扩展路径累积代价最小节点。A*算法是可容许启发式结合了分枝定界法与扩展列表工具得到的算法,考虑累积路径代价的同时,估算扩展节点剩余路径代价的下界,避免搜索朝着相反方向进行,并通过访问扩展列表,避免重复扩展。Dijkstra's algorithm spreads out the adjacent nodes with the starting point as the center, uses the cumulative cost of the search path as a heuristic, and preferentially expands the node with the smallest cumulative cost of the path. The A* algorithm is an algorithm obtained by combining the branch and bound method and the expansion list tool with admissible heuristics. While considering the cumulative path cost, it estimates the lower bound of the remaining path cost of the expansion node, avoids the search from going in the opposite direction, and accesses Expand the list to avoid repeated expansion.
AGV的局部规划只考虑当前AGV的路径规划,时间复杂度不会随着AGV数量上升,保持在可计算范围内,响应时间短,实时性高,而且可以很好处理AGV的动态场景。但是由于AGV在路径规划时只考虑局部最优性,在AGV数量增加时,死锁、碰撞等问题会频繁出现。The local planning of AGV only considers the path planning of the current AGV. The time complexity will not increase with the number of AGVs, and it will remain within the calculable range. The response time is short, the real-time performance is high, and the dynamic scene of AGV can be well handled. However, since AGV only considers local optimality in path planning, when the number of AGVs increases, problems such as deadlocks and collisions will frequently occur.
发明内容Contents of the invention
本发明提供一种多AGV调度装置及其全局规划与局部规划融合方法,用以解决上述问题,可以灵活应对不同的场景。The present invention provides a multi-AGV dispatching device and a global planning and local planning fusion method thereof, which are used to solve the above problems and can flexibly cope with different scenarios.
本发明通过以下技术方案实现:The present invention is realized through the following technical solutions:
一种多AGV调度装置,所述装置包括应用层、AGVTroop框架、ROS层和多个AGV,所述应用层为开发人员提供接口去使用AGVTroop框架;A multi-AGV scheduling device, the device includes an application layer, an AGVTroop framework, a ROS layer and a plurality of AGVs, and the application layer provides developers with an interface to use the AGVTroop framework;
所述AGVTroop框架根据发布的任务、地图信息、AGV信息完成任务分配以及路径规划;The AGVTroop framework completes task assignment and path planning according to released tasks, map information, and AGV information;
所述ROS层构建通信框架、控制底层设备以及结合ROS提供的软件包和AGV的激光信息实现AGV的定位。The ROS layer builds a communication framework, controls the underlying equipment, and realizes the positioning of the AGV in combination with the software package provided by ROS and the laser information of the AGV.
进一步的,所述通信框架实现AGVCluster与AGV之间的通信;Further, the communication framework realizes communication between AGVCluster and AGV;
所述底层设备为实际AGV。The underlying device is an actual AGV.
一种多AGV调度装置的全局规划与局部规划融合方法,所述融合方法包括以下具体步骤:A global planning and local planning fusion method for multiple AGV scheduling devices, the fusion method comprising the following specific steps:
步骤1:基于改进后的A*算法即时间窗信息读取全局规划器的信息;Step 1: Read the information of the global planner based on the improved A* algorithm, that is, the time window information;
步骤2:局部规划器根据局部信息参考全局路线进行局部路径规划,输出速度指令到时间窗信息;Step 2: The local planner performs local path planning with reference to the global route according to the local information, and outputs the speed command to the time window information;
步骤3:判断局部规划时间是否超出阈值,若超出阈值则返回步骤1的全局规划器,若未超出阈值则进行步骤4;Step 3: Determine whether the local planning time exceeds the threshold, if it exceeds the threshold, return to the global planner in step 1, and if it does not exceed the threshold, proceed to step 4;
步骤4:判断评分最高的轨迹是否小于0,若小于0则返回步骤1的全局规划器,若大于0则输出速度指令。Step 4: Determine whether the trajectory with the highest score is less than 0, if it is less than 0, return to the global planner in step 1, and if it is greater than 0, output the speed command.
进一步的,所述全局规划器内的参考指标包括所有任务完成时间及路径平衡性;Further, the reference indicators in the global planner include all task completion times and path balance;
所述局部规划器内的参考指标包括与全局路线偏离值、方向代价和障碍物代价。The reference indicators in the local planner include deviation from the global route, direction cost and obstacle cost.
进一步的,所述步骤1的全局规划器内的全局规划方法具体包括以下步骤:Further, the global planning method in the global planner in step 1 specifically includes the following steps:
步骤Q1:接收待执行任务,若待执行任务为空则进入结束,若待执行任务不为空则进入步骤Q2;Step Q1: Receive the task to be executed, if the task to be executed is empty, enter the end, if the task to be executed is not empty, enter step Q2;
步骤Q2:为每个栅格地图的每个节点构建方向时间窗以及占用时间窗;Step Q2: Construct a direction time window and an occupancy time window for each node of each grid map;
步骤Q3:利用步骤Q2构建的方向时间窗以及占用时间窗调用改进的A*算法进行全局规划;Step Q3: Use the direction time window and occupied time window constructed in step Q2 to call the improved A* algorithm for global planning;
步骤Q4:利用步骤Q3的全局规划更新路径上节点的方向时间窗以及占用时间窗;Step Q4: Utilize the global planning in step Q3 to update the direction time window and occupied time window of nodes on the path;
步骤Q5:根据步骤Q4判断是否存在节点方向冲突,若存在则进行步骤Q6和Q7,若不存在则进行步骤Q8;Step Q5: According to step Q4, it is judged whether there is a node direction conflict, if yes, go to step Q6 and Q7, if not, go to step Q8;
步骤Q6:计算等待的时间成本;Step Q6: Calculate the time cost of waiting;
步骤Q7:重新规划路径;Step Q7: re-plan the path;
步骤Q8:根据步骤Q4判断是否存在节点的占用时间窗冲突,若存在则进行步骤Q6,若不存在则进行步骤Q9;Step Q8: According to step Q4, it is judged whether there is a node occupation time window conflict, if yes, go to step Q6, if not, go to step Q9;
步骤Q9:将路径下发到对应AGV;Step Q9: Send the path to the corresponding AGV;
步骤Q10:根据步骤Q6和步骤Q7判断等待时间成本是否大于重规划时间,若大于则进行步骤Q11,若小于则进行步骤Q12;Step Q10: According to step Q6 and step Q7, judge whether the waiting time cost is greater than the re-planning time, if it is greater, proceed to step Q11, and if it is less, proceed to step Q12;
步骤Q11:更新全局路径,并将路径下发到对应AGV;Step Q11: Update the global path, and send the path to the corresponding AGV;
步骤Q12:原地等待并将路径下发到对应AGV。Step Q12: Wait in place and send the path to the corresponding AGV.
进一步的,所述局部规划方法具体包括以下步骤:Further, the local planning method specifically includes the following steps:
步骤J1:获取全局规划路线;Step J1: Obtain the global planning route;
步骤J2:基于步骤J1的全局规划路线读取激光雷达数据获取局部信息;Step J2: Read the lidar data based on the global planning route in step J1 to obtain local information;
步骤J3:基于步骤J2的局部信息在速度空间(v,w)中采样多组速度;Step J3: Sampling multiple groups of velocities in the velocity space (v, w) based on the local information in step J2;
步骤J4:基于步骤J3的多组采样速度进行模拟其在0.01s-0.10s内的轨迹;Step J4: Simulate its trajectory within 0.01s-0.10s based on multiple sets of sampling speeds in step J3;
步骤J5:对步骤J4的轨迹进行评分;Step J5: scoring the trajectory of step J4;
步骤J6:判断步骤J5的评分是否大于阈值,即是否有可行路径,若评分大于阈值则进入步骤J7,评分小于阈值则进入步骤J8;Step J6: Judging whether the score of step J5 is greater than the threshold, that is, whether there is a feasible path, if the score is greater than the threshold, enter step J7, and if the score is less than the threshold, enter step J8;
步骤J7:按评分最高的轨迹执行;Step J7: Execute according to the trajectory with the highest score;
步骤J8:修正轨迹上节点的方向时间窗、占用时间窗以及使用频率;Step J8: Correct the direction time window, occupied time window and usage frequency of nodes on the trajectory;
步骤J9:基于步骤J8修正的信息,动态调整全局规划路线。Step J9: Dynamically adjust the global planning route based on the corrected information in step J8.
本发明的有益效果是:The beneficial effects of the present invention are:
为了保证AGV规划的全局最优性以及提高系统实时性和处理动态场景的能力,本发明采用全局规划与局部规划融合的方法。首先基于改进后的A*算法根据全局指标规划一条具有全局最优性的路线,局部规划器会根据局部信息按指定策略和指标对全局路线进行动态调整。In order to ensure the global optimality of AGV planning and improve the real-time performance of the system and the ability to process dynamic scenes, the present invention adopts a fusion method of global planning and local planning. First, based on the improved A* algorithm, a route with global optimality is planned according to the global index, and the local planner will dynamically adjust the global route according to the specified strategy and index according to the local information.
自调优框架,为了使框架可以灵活应对不同的场景,系统提供了一个可扩展的平台来支持不同的优化规则作为插件。使系统支持多种优化模型,开发人员可以自定义新的任务调度或路径规的性能指标,新增的指标作为插件。而AGVTroop框架需要实现自优化,根据新增的指标,调整分配调度策略和AGV的路径规划。并通过重放历史数据为这些性能指标选择最佳的加权组合。Self-tuning framework, in order to make the framework flexible to respond to different scenarios, the system provides an extensible platform to support different optimization rules as plug-ins. The system supports multiple optimization models, and developers can customize the performance indicators of new task scheduling or path gauges, and the newly added indicators are used as plug-ins. The AGVTroop framework needs to achieve self-optimization, and adjust the allocation scheduling strategy and AGV path planning according to the newly added indicators. And select the best weighted combination for these performance indicators by replaying historical data.
本发明提供细粒度接口,支持动作级调度,使开发人员可以面向任务编程,只需要自定义任务、任务组并发布即可,无需关心任务怎么执行,简化AGV应用开发。The present invention provides a fine-grained interface, supports action-level scheduling, enables developers to program task-oriented, and only needs to customize tasks and task groups and publish them, without caring about how tasks are executed, simplifying AGV application development.
附图说明Description of drawings
图1是本发明的整体架构示意图。Fig. 1 is a schematic diagram of the overall architecture of the present invention.
图2是本发明的应用层示意图。Fig. 2 is a schematic diagram of the application layer of the present invention.
图3是本发明的AGVTroop层示意图。Fig. 3 is a schematic diagram of the AGVTroop layer of the present invention.
图4是本发明的ROS层示意图。Fig. 4 is a schematic diagram of the ROS layer of the present invention.
图5是本发明的全局规划与局部规划融合流程图。Fig. 5 is a flow chart of the integration of global planning and local planning in the present invention.
图6是本发明的全局路径规划流程图。Fig. 6 is a flowchart of global path planning in the present invention.
图7是本发明的局部路径规划流程图。Fig. 7 is a flowchart of local path planning in the present invention.
具体实施方式detailed description
下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.
一种多AGV调度装置,所述装置包括应用层、AGVTroop框架、ROS层和多个AGV,所述应用层为开发人员提供接口去使用AGVTroop框架;开发人员只需要根据应用场景发布任务,无需关心任务怎么执行,交由哪些AGV执行;A multi-AGV scheduling device, the device includes an application layer, an AGVTroop framework, a ROS layer, and a plurality of AGVs, the application layer provides developers with an interface to use the AGVTroop framework; developers only need to issue tasks according to application scenarios, and do not need to care How to perform tasks and which AGVs will be assigned to them;
所述AGVTroop框架根据发布的任务、地图信息、AGV信息完成任务分配以及路径规划;The AGVTroop framework completes task assignment and path planning according to released tasks, map information, and AGV information;
所述ROS层构建通信框架、控制底层设备以及结合ROS提供的软件包和AGV的激光信息实现AGV的定位。The ROS layer builds a communication framework, controls the underlying equipment, and realizes the positioning of the AGV in combination with the software package provided by ROS and the laser information of the AGV.
进一步的,所述通信框架实现AGVCluster与AGV之间的通信;Further, the communication framework realizes communication between AGVCluster and AGV;
所述底层设备为实际AGV;相对于AGVCluster,AGVCluster面向虚拟的AGV调度,ROS完成虚拟AGV与实际AGV的绑定以及控制底层设备。The underlying device is the actual AGV; compared to the AGVCluster, the AGVCluster is oriented towards virtual AGV scheduling, and the ROS completes the binding of the virtual AGV and the actual AGV and controls the underlying device.
一种多AGV调度装置的全局规划与局部规划融合方法,所述融合方法包括以下具体步骤:A global planning and local planning fusion method for multiple AGV scheduling devices, the fusion method comprising the following specific steps:
步骤1:基于改进后的A*算法即时间窗信息读取全局规划器的信息;Step 1: Read the information of the global planner based on the improved A* algorithm, that is, the time window information;
步骤2:局部规划器根据局部信息参考全局路线进行局部路径规划,输出速度指令到时间窗信息;Step 2: The local planner performs local path planning with reference to the global route according to the local information, and outputs the speed command to the time window information;
步骤3:判断局部规划时间是否超出阈值,若超出阈值则返回步骤1的全局规划器,若未超出阈值则进行步骤4;Step 3: Determine whether the local planning time exceeds the threshold, if it exceeds the threshold, return to the global planner in step 1, and if it does not exceed the threshold, proceed to step 4;
步骤4:判断评分最高的轨迹是否小于0,若小于0则返回步骤1的全局规划器,若大于0则输出速度指令。Step 4: Determine whether the trajectory with the highest score is less than 0, if it is less than 0, return to the global planner in step 1, and if it is greater than 0, output the speed command.
进一步的,所述全局规划器内的参考指标包括所有任务完成时间及路径平衡性;Further, the reference indicators in the global planner include all task completion times and path balance;
所述局部规划器内的参考指标包括与全局路线偏离值、方向代价和障碍物代价。The reference indicators in the local planner include deviation from the global route, direction cost and obstacle cost.
进一步的,所述步骤1的全局规划器内的全局规划方法具体包括以下步骤:Further, the global planning method in the global planner in step 1 specifically includes the following steps:
步骤Q1:接收待执行任务,若待执行任务为空则进入结束,若待执行任务不为空则进入步骤Q2;Step Q1: Receive the task to be executed, if the task to be executed is empty, enter the end, if the task to be executed is not empty, enter step Q2;
步骤Q2:为每个栅格地图的每个节点构建方向时间窗以及占用时间窗;Step Q2: Construct a direction time window and an occupancy time window for each node of each grid map;
步骤Q3:利用步骤Q2构建的方向时间窗以及占用时间窗调用改进的A*算法进行全局规划;Step Q3: Use the direction time window and occupied time window constructed in step Q2 to call the improved A* algorithm for global planning;
步骤Q4:利用步骤Q3的全局规划更新路径上节点的方向时间窗以及占用时间窗;Step Q4: Utilize the global planning in step Q3 to update the direction time window and occupied time window of nodes on the path;
步骤Q5:根据步骤Q4判断是否存在节点方向冲突,若存在则进行步骤Q6和Q7,若不存在则进行步骤Q8;Step Q5: According to step Q4, it is judged whether there is a node direction conflict, if yes, go to step Q6 and Q7, if not, go to step Q8;
步骤Q6:计算等待的时间成本;Step Q6: Calculate the time cost of waiting;
步骤Q7:重新规划路径;Step Q7: re-plan the path;
步骤Q8:根据步骤Q4判断是否存在节点的占用时间窗冲突,若存在则进行步骤Q6,若不存在则进行步骤Q9;Step Q8: According to step Q4, it is judged whether there is a node occupation time window conflict, if yes, go to step Q6, if not, go to step Q9;
步骤Q9:将路径下发到对应AGV;Step Q9: Send the path to the corresponding AGV;
步骤Q10:根据步骤Q6和步骤Q7判断等待时间成本是否大于重规划时间,若大于则进行步骤Q11,若小于则进行步骤Q12;Step Q10: According to step Q6 and step Q7, judge whether the waiting time cost is greater than the re-planning time, if it is greater, proceed to step Q11, and if it is less, proceed to step Q12;
步骤Q11:更新全局路径,并将路径下发到对应AGV;Step Q11: Update the global path, and send the path to the corresponding AGV;
步骤Q12:原地等待并将路径下发到对应AGV。Step Q12: Wait in place and send the path to the corresponding AGV.
进一步的,所述局部规划方法具体包括以下步骤:Further, the local planning method specifically includes the following steps:
步骤J1:获取全局规划路线;Step J1: Obtain the global planning route;
步骤J2:基于步骤J1的全局规划路线读取激光雷达数据获取局部信息;Step J2: Read the lidar data based on the global planning route in step J1 to obtain local information;
步骤J3:基于步骤J2的局部信息在速度空间(v,w)中采样多组速度;Step J3: Sampling multiple groups of velocities in the velocity space (v, w) based on the local information in step J2;
步骤J4:基于步骤J3的多组采样速度进行模拟其在某个短时间内(默认值为0.05s)的轨迹;Step J4: Simulate its trajectory in a short period of time (the default value is 0.05s) based on the multiple sets of sampling speeds in step J3;
步骤J5:对步骤J4的轨迹进行评分;Step J5: scoring the trajectory of step J4;
步骤J6:判断步骤J5的评分是否大于阈值,即是否有可行路径,若评分大于阈值则进入步骤J7,评分小于阈值则进入步骤J8;Step J6: Judging whether the score of step J5 is greater than the threshold, that is, whether there is a feasible path, if the score is greater than the threshold, enter step J7, and if the score is less than the threshold, enter step J8;
步骤J7:按评分最高的轨迹执行;Step J7: Execute according to the trajectory with the highest score;
步骤J8:修正轨迹上节点的方向时间窗、占用时间窗以及使用频率;Step J8: Correct the direction time window, occupied time window and usage frequency of nodes on the trajectory;
步骤J9:基于步骤J8修正的信息,动态调整全局规划路线。Step J9: Dynamically adjust the global planning route based on the corrected information in step J8.
进一步的,所述改进后的A*算法具体为,在搜索路径计算节点n时增加全局信息,计算公式f(n)为:Further, the improved A* algorithm specifically includes adding global information when calculating node n in the search path, and the calculation formula f(n) is:
f(n)=g(n)+h(n)+α*Math.min(time_threshold,cur_time-last_time)+β*frequency[n]+δ*steering_correctionf(n)=g(n)+h(n)+α*Math.min(time_threshold, cur_time-last_time)+β*frequency[n]+δ*steering_correction
其中g(n):从起始节点到节点n的代价;h(n):从节点n到目标节点的最佳路径的估计代价;time_threshold:最大时间阈值;cur_time:当前使用节点n的时间;last_time:点n上次使用时间;frequency[n]:节点n的使用频数;steering_correction:转向修正;α、β、δ分别为时间权重、频数权重和转向权重;Among them, g(n): the cost from the starting node to node n; h(n): the estimated cost of the best path from node n to the target node; time_threshold: the maximum time threshold; cur_time: the current time of using node n; last_time: last use time of point n; frequency[n]: usage frequency of node n; steering_correction: steering correction; α, β, δ are time weight, frequency weight and steering weight respectively;
本发明路径规划采用全局规划与局部规划融合的方式,基于改进后的A*算法会根据一系列全局指标(所有任务完成时间、路径平衡性等)规划一条具有全局最优性的路线,局部规划器会根据局部信息对全局路线进行动态调整。(参考指标包括与全局路线偏离值、方向代价、障碍物代价等调整策略包括路线调整、静等待、重规划等)。The path planning of the present invention adopts the fusion mode of global planning and local planning. Based on the improved A* algorithm, a route with global optimality will be planned according to a series of global indicators (time of completion of all tasks, path balance, etc.), and local planning The controller will dynamically adjust the global route according to the local information. (Reference indicators include deviation from the global route, direction cost, obstacle cost, etc. Adjustment strategies include route adjustment, static waiting, re-planning, etc.).
本发明会提供细粒度接口,支持动作级调度,使开发人员可以面向任务编程,只需要自定义任务、任务组并发布即可,无需关心任务怎么执行,简化AGV应用开发。ROS提供多种类型的硬件抽象以及驱动,使系统可以底层AGV的差异,使系统面向虚拟AGV编程。The present invention provides a fine-grained interface, supports action-level scheduling, and enables developers to program task-oriented. They only need to customize tasks and task groups and publish them, without caring about how tasks are executed, simplifying AGV application development. ROS provides various types of hardware abstraction and drivers, so that the system can understand the differences of the underlying AGV, and make the system oriented to virtual AGV programming.
为了使框架可以灵活应对不同的场景,系统提供了一个可扩展的平台来支持不同的优化规则作为插件。使系统支持多种优化模型,开发人员可以自定义新的任务调度或路径规的性能指标,新增的指标作为插件。而AGVTroop框架需要实现自优化,根据新增的指标,调整分配调度策略和AGV的路径规划。并为这些性能指标选择最佳的加权组合。In order to make the framework flexible to respond to different scenarios, the system provides an extensible platform to support different optimization rules as plug-ins. The system supports multiple optimization models, and developers can customize the performance indicators of new task scheduling or path gauges, and the newly added indicators are used as plug-ins. The AGVTroop framework needs to achieve self-optimization, and adjust the allocation scheduling strategy and AGV path planning according to the newly added indicators. And choose the best weighted combination for these performance indicators.
全局路径规划采用基于时间窗改进多AGV路径规划的A*算法,为栅格地图的每个节点构建方向时间窗以及占用时间窗。基于A*算法算出全局路径,并根据AGV的硬件信息计算在该路径上每个节点的占用时间窗和方向时间窗。A*算法需要根据时间窗信息规划路径,考虑三个因素(1)可通达,根据当前时间窗信息,构建的路径上不能存在某个节点使方向或占用时间有冲突。(2)避碰,规划路径时考虑节点在到达时间内被占用频率,尽量避免路径不平衡(即某条通道有多台AGV访问,而其他通道空闲)(3)转向修正,规划路径时尽量避免行驶方向的改变,频繁不仅转向会严重增加AGV的耗能,加剧硬件的磨损,而且容易造成AGV冲突。最后将全局路线下发到局部规划器进行调整。(4)时间成本,完成所有任务所需要的时间。The global path planning adopts the A* algorithm based on the time window to improve the multi-AGV path planning, and constructs the direction time window and the occupation time window for each node of the grid map. The global path is calculated based on the A* algorithm, and the occupation time window and direction time window of each node on the path are calculated according to the hardware information of the AGV. The A* algorithm needs to plan the path according to the time window information, considering three factors (1) Accessibility, according to the current time window information, there must be no node on the constructed path that causes conflicts in direction or occupied time. (2) Collision avoidance, consider the frequency of nodes being occupied within the arrival time when planning the path, and try to avoid path imbalance (that is, there are multiple AGVs accessing a certain channel, while other channels are idle) (3) Steering correction, try to plan the path Avoid changing the driving direction. Frequent steering will not only seriously increase the energy consumption of the AGV, aggravate the wear and tear of the hardware, but also easily cause AGV conflicts. Finally, the global route is sent to the local planner for adjustment. (4) Time cost, the time required to complete all tasks.
局部路径规划主要用于动态调整全局规划的路线。全局规划虽然考虑了全局最优,但无法很好地处理动态场景(例如新增的地图上没有的障碍物、硬件故障、以及动态物体比如人)。局部路径规划会根据激光雷达所扫描的局部信息对全局路线进行微调。局部路径规划采用DWA动态窗口算法。在速度空间(v,w)中采样多组速度(对速度采样时根据小车本身限制和环境限制可以将速度控制在一定范围内),并模拟小车在这些速度下一定时间内的轨迹,得到多组轨迹后,对这些轨迹进行评价,选择最优轨迹所对应的速度组驱动机器人运动。评分函数为以下代价加权和。Local path planning is mainly used to dynamically adjust the route of the global plan. Although global planning considers the global optimum, it cannot handle dynamic scenes well (such as obstacles that are not on the newly added map, hardware failures, and dynamic objects such as people). Local path planning fine-tunes the global route based on the local information scanned by the lidar. Partial path planning adopts DWA dynamic window algorithm. Sampling multiple groups of speeds in the speed space (v, w) (the speed can be controlled within a certain range according to the limitations of the car itself and the environment when sampling the speeds), and simulate the trajectory of the car at these speeds for a certain period of time, and get multiple After grouping trajectories, evaluate these trajectories, and select the speed group corresponding to the optimal trajectory to drive the robot to move. The scoring function is a weighted sum of the following costs.
(1)震荡代价,是否震荡即短时间多次切换行走方向。(1) Shock cost, whether it is shocking or not, that is, switching the walking direction multiple times in a short period of time.
(2)障碍物代价,轨迹上与障碍物之间的距离。(2) Obstacle cost, the distance between the trajectory and the obstacle.
(3)路径代价,与全局路径偏离值。(3) Path cost, the deviation value from the global path.
(4)目标代价,方向是不是朝着目标行驶。(4) Target cost, whether the direction is moving towards the target.
(5)反向代价,对向后的路径进行惩罚。(5) Reverse cost, which punishes the backward path.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110137260.3A CN112987721B (en) | 2021-02-01 | 2021-02-01 | Multi-AGV scheduling device and fusion method of global planning and local planning thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110137260.3A CN112987721B (en) | 2021-02-01 | 2021-02-01 | Multi-AGV scheduling device and fusion method of global planning and local planning thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112987721A CN112987721A (en) | 2021-06-18 |
CN112987721B true CN112987721B (en) | 2022-12-13 |
Family
ID=76346009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110137260.3A Active CN112987721B (en) | 2021-02-01 | 2021-02-01 | Multi-AGV scheduling device and fusion method of global planning and local planning thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112987721B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116339300A (en) * | 2021-12-23 | 2023-06-27 | 深圳富联富桂精密工业有限公司 | AGV operation control method, electronic equipment and computer readable storage medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106251016A (en) * | 2016-08-01 | 2016-12-21 | 南通大学 | A kind of parking system paths planning method based on dynamic time windows |
WO2017215044A1 (en) * | 2016-06-14 | 2017-12-21 | 广东技术师范学院 | Automatic path planning method for mobile robot and mobile robot |
CN108413980A (en) * | 2018-06-07 | 2018-08-17 | 华北电力大学 | A kind of touring paths planning method of traffic reducing path branches |
CN109583709A (en) * | 2018-11-09 | 2019-04-05 | 同济大学 | A kind of automatic parking robot group method for scheduling task |
CN110244712A (en) * | 2019-05-22 | 2019-09-17 | 南通大学 | A multi-AGV system path planning method |
CN111174798A (en) * | 2020-01-17 | 2020-05-19 | 长安大学 | A path planning method for a footed robot |
CN111721297A (en) * | 2020-06-19 | 2020-09-29 | 重庆大学 | A path planning method for multiple AGVs in a smart garage |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111142542A (en) * | 2020-01-15 | 2020-05-12 | 苏州晨本智能科技有限公司 | Omnidirectional mobile robot autonomous navigation system based on VFH local path planning method |
CN112068545B (en) * | 2020-07-23 | 2022-12-27 | 哈尔滨工业大学(深圳) | Method and system for planning running track of unmanned vehicle at crossroad and storage medium |
-
2021
- 2021-02-01 CN CN202110137260.3A patent/CN112987721B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017215044A1 (en) * | 2016-06-14 | 2017-12-21 | 广东技术师范学院 | Automatic path planning method for mobile robot and mobile robot |
CN106251016A (en) * | 2016-08-01 | 2016-12-21 | 南通大学 | A kind of parking system paths planning method based on dynamic time windows |
CN108413980A (en) * | 2018-06-07 | 2018-08-17 | 华北电力大学 | A kind of touring paths planning method of traffic reducing path branches |
CN109583709A (en) * | 2018-11-09 | 2019-04-05 | 同济大学 | A kind of automatic parking robot group method for scheduling task |
CN110244712A (en) * | 2019-05-22 | 2019-09-17 | 南通大学 | A multi-AGV system path planning method |
CN111174798A (en) * | 2020-01-17 | 2020-05-19 | 长安大学 | A path planning method for a footed robot |
CN111721297A (en) * | 2020-06-19 | 2020-09-29 | 重庆大学 | A path planning method for multiple AGVs in a smart garage |
Non-Patent Citations (6)
Title |
---|
A Hybrid Path Planning Algorithm for Unmanned Surface Vehicles in Complex Environment With Dynamic Obstacles;Zheng Chen,等;《IEEE Access》;20190731;第7卷;全文 * |
Routing Optimization of Regional Logistics Vehicles Based on Distribution Information Matching;Lu Wu,等;《PROCEEDINGS OF THE 2019 INTERNATIONAL CONFERENCE ON ROBOTICS, INTELLIGENT CONTROL AND ARTIFICIAL INTELLIGENCE (RICAI 2019)》;20190922;全文 * |
The Optimal Routes and Modes Selection in Multimodal Transportation Networks Based on Improved A* Algorithm;Liu Yan,等;《2018 5TH INTERNATIONAL CONFERENCE ON INDUSTRIAL ENGINEERING AND APPLICATIONS (ICIEA)》;20180809;全文 * |
基于ROS机器人的智能物流系统设计;雷祁;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20200115(第1期);全文 * |
基于多种运输方式的快递网络优化问题研究;刘琰;《中国优秀博硕士学位论文全文数据库(硕士)经济与管理科学辑》;20190915(第9期);全文 * |
面向制造车间柔性物流的AGV群控系统研制;胡杰杰;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20190815(第8期);第I140-343页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112987721A (en) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110530369B (en) | AGV task scheduling method based on time window | |
JP7429372B2 (en) | System and method for optimizing route plans in an operating environment | |
CN109976355A (en) | Method for planning track, system, equipment and storage medium | |
JP7453371B2 (en) | Multi-vehicle cooperative trajectory planning method, device, system, equipment, storage medium and computer program product | |
RU2589869C2 (en) | Method and system for efficient scheduling for plurality of automated nonholonomic vehicles using scheduler of coordinated routes | |
CN107203190A (en) | A kind of inertial navigation AGV dispatching methods and system based on pahtfinder hard | |
CN115097843B (en) | Multi-AGV path planning method and device based on dynamic priority express distribution center | |
CN114489062B (en) | Distributed dynamic path planning method for multiple automatic guided vehicles for workshop logistics | |
CN114179873B (en) | Multi-road multi-time-interval all-day train operation diagram automatic compilation method and system | |
CN106251016A (en) | A kind of parking system paths planning method based on dynamic time windows | |
JP7204631B2 (en) | TRIP CONTROL DEVICE, METHOD AND COMPUTER PROGRAM | |
KR20220163426A (en) | Method and apparatus for implementing vehicle-road cooperation at intersections without traffic lights | |
CN114705194A (en) | Multi-agricultural-machinery cooperative global path conflict detection method based on topological map and time window | |
CN117555243B (en) | Multi-agent continuous space-level path segment searching and collaborative strategy method | |
US20240227861A9 (en) | Vehicle Control Method, Apparatus, and System | |
CN115328113A (en) | Multi-logistics robot path planning method based on improved time window algorithm | |
CN110471417A (en) | A kind of more AGV collision prevention methods based on load balancing | |
CN112987721B (en) | Multi-AGV scheduling device and fusion method of global planning and local planning thereof | |
CN116612654A (en) | Unmanned vehicle team scheduling method and device and electronic equipment | |
JP7481903B2 (en) | Information processing device, information processing method, information processing system, and computer program | |
CN115454091A (en) | Multi-vehicle path planning method and system equipment applied to airport luggage consignment | |
CN110412990A (en) | A method for AGV collision avoidance in factory environment | |
WO2024051435A1 (en) | Robot scheduling method and device | |
CN118859956A (en) | An AGV path scheduling method based on spatial A-star algorithm and traffic control | |
CN115638804B (en) | Deadlock-free unmanned vehicle online path planning method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20241021 Address after: 150000 Room 1601, Unit 5, Building 1-2, Wendao Street, Nangang District, Harbin City, Heilongjiang Province Patentee after: Li Zhijun Country or region after: China Patentee after: Harbin Institute of Technology Asset Management Co.,Ltd. Address before: 150001 No. 92 West straight street, Nangang District, Heilongjiang, Harbin Patentee before: HARBIN INSTITUTE OF TECHNOLOGY Country or region before: China |
|
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20241113 Address after: 200120 3, 10, Xiu Pu Road, Pudong New Area, Shanghai 2388 Patentee after: Shanghai Guishi Intelligent Technology Co.,Ltd. Country or region after: China Address before: 150000 Room 1601, Unit 5, Building 1-2, Wendao Street, Nangang District, Harbin City, Heilongjiang Province Patentee before: Li Zhijun Country or region before: China Patentee before: Harbin Institute of Technology Asset Management Co.,Ltd. |