一种移动机器人路径死锁检测系统及方法与流程

文档序号:17731465发布日期:2019-05-22 02:52阅读:636来源:国知局
一种移动机器人路径死锁检测系统及方法与流程

本发明涉及智能小车路径规划技术领域,具体地说是一种移动机器人路径死锁检测系统及方法。



背景技术:

目前,智能叉车执行任务时,发现申请路径线失败,待行驶路径为空,追究原因时,常会发现该路径线申请失败源于自己本身,这种异常状况称为死锁,从被发现到处理会经历一段时间。这段时间里全场会因为死锁造成大批量的拥堵和部分功能瘫痪,对于调度系统来说是灾难性的故障,现有的维护方式是依靠维护人员将处于死锁状态的智能叉车拖离,从而解开死锁,但这种方式自动化程度低,故障恢复时间较长。

因此,现有技术还有待发展。



技术实现要素:

鉴于上述现有技术的不足之处,本发明的目的在于提供一种移动机器人路径死锁检测系统及方法。旨在解决现有路径规划系统中出现死锁无法自行解除的问题。

为了达到上述目的,本发明采取了以下技术方案:

本发明提供一种移动机器人路径死锁检测系统,其特征在于,包括:

若干路径线,每条所述路径线的至少一端处设有路径点;

权值设定模块,用于根据每条所述路径线的任务量为相应的所述路径线赋权值,每条所述路径线的权值与其承载的任务量呈正相关;

路径规划模块,用于选取连接两个所述路径点的权值最低的路径线的组合,并将所述组合作为两个所述路径点之间的行走路径;

死锁检测模块,用于检测若干机器人是否出现死锁现象,并与所述权值设定模块通信连接。

本发明还提供一种移动机器人路径死锁检测方法,包括上述的检测系统,还包括下列步骤:

1)将机器人工作场景地图划分出若干路径点、连接在若干路径点之间的单向的若干路径线,设定机器人移动的目标点;

2)所述权值设定模块检测若干所述路径线的工作状态,并根据每条所述路径线的任务量分别设定每条所述路径线的权值;

3)根据每条所述路径线的权值,判断每个机器人当前所在的所述路径点与所述目标点之间的满足第一预设条件的行走路径是否存在,若存在,则将所述行走路径定为最优行走路径并转入步骤7),否则将相应机器人设为暂停状态并转入步骤4);

4)判断处于暂停状态的若干机器人是否处在死锁状态下,若是则转入步骤5),否则转回步骤3);

5)遍历全部处于死锁状态下的机器人中是否存在满足第二预设条件的机器人,若存在则选取其中的一台作为解锁目标机器人,并转入步骤6),否则结束流程;

6)对所述解锁目标机器人进行解锁操作,并转入步骤3);

7)相应机器人接收所述最优行走路径,控制机器人沿着所述最优行走路径移动至下一所述路径点;

8)判断是否到达目标点,若到达则机器人停下,否则转回步骤3)。

进一步的,所述第一预设条件为同时满足下列条件中的每一项:

a)所述行走路径中的若干所述路径线的权值之和为所有行走路径中最低的;

b)所述行走路径中相应机器人即将驶入的所述路径线上不存在障碍或其它机器人。

进一步的,所述第二预设条件为:相应机器人即将驶入的所述路径线的权值低于第一阈值。

进一步的,步骤6)中所述对所述解锁目标机器人进行解锁操作采用的方式为:使所述路径规划模块在后续的路径规划中不将相应机器人即将驶入的所述路径线列为行走路径。

进一步的,步骤5)中所述选取其中的一台作为解锁目标机器人采用的方法为:遍历处于死锁状态下的全部机器人,并按照检索到死锁状态的时间顺序来选取其中一台机器人作为解锁目标机器人。

本发明与现有技术相比,能由路径规划系统自行解决在小车路径规划中出现的死锁现象,无需维护人员驻场监控,提高了系统的自动化程度,节约了人力成本,工作效率显著提高。

附图说明

图1为本发明提供的方法流程示意图;

图2为本发明实施例1中机器人处于死锁状态中的示意图;

图3为本发明实施例1中机器人接触死锁状态后的示意图。

具体实施方式

以下对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

实施例1

本发明提供一种移动机器人路径死锁检测系统,其特征在于,包括:

若干路径线,每条所述路径线的至少一端处设有路径点;

权值设定模块,用于根据每条所述路径线的任务量为相应的所述路径线赋权值,每条所述路径线的权值与其承载的任务量呈正相关;

路径规划模块,用于选取连接两个所述路径点的权值最低的路径线的组合,并将所述组合作为两个所述路径点之间的行走路径;

死锁检测模块,用于检测若干机器人是否出现死锁现象,并与所述权值设定模块通信连接。

如图1所示,本发明提供的系统按照下列步骤进行工作:

1)将机器人工作场景地图划分出若干路径点、连接在若干路径点之间的单向的若干路径线,设定机器人移动的目标点;

2)所述权值设定模块检测若干所述路径线的工作状态,并根据每条所述路径线的任务量分别设定每条所述路径线的权值;

3)根据每条所述路径线的权值,判断每个机器人当前所在的所述路径点与所述目标点之间的满足第一预设条件的行走路径是否存在,若存在,则将所述行走路径定为最优行走路径并转入步骤7),否则将相应机器人设为暂停状态并转入步骤4);

4)判断处于暂停状态的若干机器人是否处在死锁状态下,若是则转入步骤5),否则转回步骤3);

5)遍历全部处于死锁状态下的机器人中是否存在满足第二预设条件的机器人,若存在则选取其中的一台作为解锁目标机器人,并转入步骤6),否则结束流程;

6)对所述解锁目标机器人进行解锁操作,并转入步骤3);

7)相应机器人接收所述最优行走路径,控制机器人沿着所述最优行走路径移动至下一所述路径点;

8)判断是否到达目标点,若到达则机器人停下,否则转回步骤3)。

进一步的,所述第一预设条件为同时满足下列条件中的每一项:

a)所述行走路径中的若干所述路径线的权值之和为所有行走路径中最低的;

b)所述行走路径中相应机器人即将驶入的所述路径线上不存在障碍或其它机器人。

进一步的,所述第二预设条件为:相应机器人即将驶入的所述路径线的权值低于第一阈值。

进一步的,步骤6)中所述对所述解锁目标机器人进行解锁操作采用的方式为:使所述路径规划模块在后续的路径规划中不将相应机器人即将驶入的所述路径线列为行走路径。

进一步的,步骤5)中所述选取其中的一台作为解锁目标机器人采用的方法为:遍历处于死锁状态下的全部机器人,并按照检索到死锁状态的时间顺序来选取其中一台机器人作为解锁目标机器人。

如图2所示,为常见的若干机器人死锁情况,已知每条路径线的初始权值为1,每当路径线上被赋予了新的任务,便将其权值增加1,对处于左上角的机器人进行解锁操作,具体的方式为:对标号为6的路径线赋予一个明显极高的权值,如1000,使后续的路径规划能够绕开标号为6的路径线,如图3所示,为经过解锁后重新规划的路径线;然而,若标号为6的路径线本身的权值已经偏高(如已经超过10),则说明该路径线本身承载了较多任务,如果轻易为其赋超高权值,使其处于中断状态,则会影响许多机器人的行走路径规划,所以此时选择放弃该解锁操作,转而对下一个处于死锁状态的机器人进行解锁操作。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1