夜光精讲 Opentcs 三大算法(十一)调度算法

夜光序言:

 

 

多少美好的东西消失和毁灭了,世界还像什么事也没有发生。是的,生活在继续着。可是,生活中的每一个人却在不断地失去自己最珍贵的东西。生活永远是美好的;人的痛苦却时时在发生。

 

 

 

夜光精讲 Opentcs 三大算法(十一)调度算法

 

正文:

 

多AGV调度系统分为分布式和集中式两种。

 

分布式调度需要实现单AGV加载并维护全局地图,自主接受订单,进行动态规划路径,AGV之间进行频繁的通信(保证AGV之间的无冲突发生)。

集中式调度方案,采用在*服务器上存储地图,使用任务分配算法进行任务调度,为每个AGV规划路径并集中调度实现所有AGV的通畅运行。


消除多机器人系统中可能出现的碰撞、拥堵和死锁等问题,目前已知的协调策略主要有调整速率法、交通规则法以及基于行为的避碰方法等。

速率调整法在保留机器人原本行驶的路径的基础上,利用调节AGV之间的相对行驶速度甚至暂停来规避碰撞。

 

交通规则法通过制定交通规则从而实现避碰。【这个很帅】

 

系统调度的核心是资源分配问题。在计算机系统里,资源指的是内存和CPU等;在物理系统中,资源指的是空间和环境中用于完成任务的各元素。

 

我们提出了一种有效的解决方案,以解决系统资源分配的问题,在控制中心调度下,多AGV能四线在丁字路口、十字交叉路口等复杂的多循环路线中行走,有效避免死锁和碰撞的发生,保证系统的高效运行。

【至于是什么方案~~卖个关子先~,下面简单介绍一下】


冲突检测和冲突类型判定


冲突针对的是同一时间在同一空间上发生的资源分配冲突问题:


(1)可能机器人i占用位置P,永远无法释放
(2)可能机器人i和j同时争夺同一资源,系统无法决策分配给谁。

以栅格地图仓库为例,AGV之间的冲突类型可W分为3类:

同向行驶横向冲突

对向行驶横向冲突

侧面冲突

分别如图(a),图(b),图(C)所示。

其中图(C)所示的同向行驶的AGV之间可以通过前置超声探测仪探测,使得前后车辆保持安全行驶距离。

由于本研究中地图模型的约束条件,一条通道里只允许一种行驶方向,因此图(a)的对向行驶冲突完全被规避掉了,也避免了图(d)中局部拥堵带来的连锁反应而导致路径规划的无解。

现有AGV的探测距离和扫描范围的限制以及其在仓库中较高的行驶速率,导致(b)中因为货架等的遮挡,使得A与B未能及时探测到彼此,因此会发生侧面冲突。
 

夜光精讲 Opentcs 三大算法(十一)调度算法