CN108279675A - 多移动机器人的冲突管理方法及系统 - Google Patents

多移动机器人的冲突管理方法及系统 Download PDF

Info

Publication number
CN108279675A
CN108279675A CN201810053971.0A CN201810053971A CN108279675A CN 108279675 A CN108279675 A CN 108279675A CN 201810053971 A CN201810053971 A CN 201810053971A CN 108279675 A CN108279675 A CN 108279675A
Authority
CN
China
Prior art keywords
mobile robot
robot
node
region
node region
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.)
Pending
Application number
CN201810053971.0A
Other languages
English (en)
Inventor
刘清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Midea Intelligent Technologies Co Ltd
Original Assignee
Guangdong Midea Intelligent Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Midea Intelligent Technologies Co Ltd filed Critical Guangdong Midea Intelligent Technologies Co Ltd
Priority to CN201810053971.0A priority Critical patent/CN108279675A/zh
Publication of CN108279675A publication Critical patent/CN108279675A/zh
Priority to PCT/CN2019/072256 priority patent/WO2019141218A1/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0289Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明实施例提供一种多移动机器人的死锁冲突管理方法及系统,属于机器人领域。所述方法包括:获取多个移动机器人各自的当前位置和规划路径;分配与移动机器人的位置相邻的节点区域;当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记存在重合的节点区域为冲突状态的冲突节点区域;判断第一移动机器人的第一规划路径通过冲突节点区域的方向与第二移动机器人的第二规划路径通过冲突节点区域的方向是否正好相反;若是,则确定第一移动机器人和第二移动机器人之间处于互相死锁状态。由此,基于节点资源的分配和路径的分析,检测互相死锁冲突,并且对处理器资源的消耗低,具有较强的实时性。

Description

多移动机器人的冲突管理方法及系统
技术领域
本发明涉及机器人技术领域,具体地涉及一种多移动机器人的冲突管理方法及系统。
背景技术
在密集区域(例如物流仓库区域)内布设多个移动机器人,并由这些移动机器人来完成诸如搬运货物的任务,以替代人工劳动,是目前物联网领域的研究重点。
为了避免密集区域中的多个移动机器人之间在作业时候的碰撞,目前一般采用了如下两种不同的处理方案:其一,是通过机器人当前的局部环境信息,让机器人具有良好的冲突消解能力;其二,是集中管理式冲突消解,其主要是通过将机器人的运动路径分段来消除冲突。
但是,本申请的发明人在实践本申请的过程中发现上述现有技术中至少存在如下缺陷:其一,分布式方法虽然运算简单、实时性和灵活性强,但由于会出现局部极点,往往无法完整地完成任务;其二,集中管理式方法能够较精确地执行任务,但极容易导致机器人运行路径冲突,通常要寻找最优解,但计算量很大、实时性差,特别是由于多台移动机器人在密集空间内,移动机器人之间相互构成障碍物,导致无法形成双连通非平凡图的情况,会形成相互死锁的状态,对此目前业界仍然无法提出较佳的解决方案。
发明内容
本发明实施例的目的是提供一种多移动机器人的死锁冲突管理方法及系统,用以至少管理多移动机器人在密集区域内集中调度所导致的死锁冲突问题。
为了实现上述目的,本发明实施例提供一种多移动机器人的死锁冲突管理方法,包括:获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。
可选的,在确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态之后,该方法还包括:判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。
可选的,所述置换所述第一移动机器人和所述第二移动机器人的位置包括:控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;为所述第二移动机器人分配节点区域,以令所述第一移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。
可选的,在判断是否存在不位于所述第一规划路径或所述第二规划路径上的且能够分配至所述第一移动机器人或所述第二移动机器人的空闲节点区域之后,所述方法还包括:若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。
可选的,所述获取多个移动机器人各自的当前位置和规划路径包括:向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
本发明实施例另一方面提供一种多移动机器人的死锁冲突管理系统,包括:初始信息获取单元,用于获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;节点区域分配单元,用于根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;冲突检测单元,用于当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;死锁判断单元,用于判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。
可选的,该系统还包括:空闲节点区域判断单元,用于在确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态之后,判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且能够分配至所述第一移动机器人或所述第二移动机器人的空闲节点区域;位置置换单元,用于若存在所述空闲节点区域,则为所述第一移动机器人或所述第二移动机器人分配所述空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。
可选的,所述位置置换单元包括:空闲节点分配模块,用于控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及第一节点分配模块,用于为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的位置;第二节点分配模块,用于为所述第二移动机器人分配节点区域,以令所述第一移动机器人占用所述第一移动机器人对应互相死锁状态下的位置。
可选的,所述系统还包括:警报处理单元,用于若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。
可选的,所述初始信息获取单元包括:调度命令发送模块,用于向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;规划路径接收模块,用于响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
通过上述技术方案,在多个移动机器人在下一步运行移动之前,分配节点区域,并依据所分配的节点区域进行判断及检测出多个移动机器人在下一步运行移动时是否会发生互相死锁冲突,有助于对多移动机器人的互相死锁冲突的管理;并且,在本发明实施例中通过对节点的分配和路径方向的监测来管理互相死锁冲突,实现对处理器资源的低消耗,具有较强的实时性。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是实施本发明一实施例的多移动机器人的死锁冲突管理方法的密集区域的地图示例;
图2是本发明一实施例的多移动机器人的死锁冲突管理方法的流程图;
图3是本发明一实施例中关于获取移动机器人的规划路径方法的流程图;
图4是本发明一实施例中关于预定区域的节点分布表的示例;
图5是本发明一实施例的关于节点分配的示例;
图6是关于预定区域全局的节点资源表的示例;
图7是本发明一实施例中两个移动机器人互相死锁状态的示例;
图8是本发明一实施例的多移动机器人的死锁冲突管理方法的流程图;
图9A是通过节点分配以解决移动机器人互相死锁状态的第一状态示意图;
图9B是通过节点分配以解决移动机器人互相死锁状态的第二状态示意图;
图9C是通过节点分配以解决移动机器人互相死锁状态的第三状态示意图;
图9D是通过节点分配以解决移动机器人互相死锁状态的第四状态示意图;
图10是本发明一实施例的移动机器人位置置换的方法的流程图;
图11是节点区域可分配的邻居节点标注的示例;
图12是本发明一实施例的多移动机器人的冲突管理系统的结构框图。
附图标记说明
A1、A0、A、B 移动机器人 B1、B2 障碍物
N1、N2 节点 1202 节点区域分配单元
1201 初始信息获取单元 1203 冲突检测单元
1204 死锁判断单元
120 多移动机器人的死锁冲突管理系统
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
如图1所示,在实施本发明一实施例的多移动机器人的冲突管理方法的密集区域的地图中标注了多个障碍物B1、B2等,多个移动机器人A0、A1等,以及多个节点区域N1、N2等。其中,该密集区域可以是根据需要所预定的,例如其可以是指代仓库内的区域,该多个移动机器人A0、A1可以是指代多个物流机器人,以及通过该移动机器人A0、A1的运行移动,可以实现搬运货物,但是在多个物流机器人同时运行的时候,可能会导致冲突。其中,不同的节点区域N1、N2的大小可以是相等的,其可以通过对密集区域的地图作等比例划分所形成的。需说明的是,本发明实施例的冲突管理方法可以是由集中管理该多个移动机器人的服务器所执行的。
如图2所示,本发明一实施例的多移动机器人的死锁冲突管理方法,包括:
S201、获取多个移动机器人各自的当前位置和规划路径,其中规划路径能够绕开预定区域内的障碍物,预定区域包括多个节点区域。
具体的,关于规划路径的获取方式,可以是由移动机器人所自主确定,并由其上传至服务器的,也可以是服务器通过计算所得出的,且以上都属于本发明的保护范围内。
参见图3示出的是关于规划路径的获取方式的一种优选实施方式,移动机器人可以是AGV(Automated Guided Vehicle激光导航车辆),其中该获取方法包括:S301、服务器可以向各个移动机器人发送调度命令,其中调度命令包含各个移动机器人的目标节点区域信息。S302、在各个移动机器人接收到各自的调度命令之后,其会根据各自的目标节点区域信息并通过A*算法计算各自的相应的规划路径。S303、各个移动机器人会将计算所得到的各自的规划路径发送至服务器。在服务器获取到各个移动机器人所发送的规划路径之后,会执行相应的后续处理,以保障在移动机器人在执行规划路径的过程中不会发生路径冲突。作为示例,在地图上可以具有多个分别具有唯一的节点ID的节点区域(例如图4所示的关于密集区域的节点分布表中的0、1…99号节点区域),移动机器人A0在接收到调度命令之后,需要从当前位置73号节点区域到达31号目标节点区域,此时移动机器人A0会通过A*算法计算到达31号目标节点区域的最短路径,由此保障移动机器人A0能够迅速到达目标节点区域。但是在此时的计算中并没有考虑到当前空间内的其他移动机器人例如A1的运行移动,其也只会考虑到静态的障碍物节点,而在移动机器人A0运行移动的过程中,空间内的其他移动机器人例如A1相对于这台移动机器人A0都是障碍物,因此需要采取防冲突措施以避开其他移动机器人以防止相撞。关于该冲突管理措施的细节,具体将在下文中展开。
S202、根据多个移动机器人各自的当前位置和规划路径,为各个移动机器人分配与移动机器人的位置相邻的节点区域,其中移动机器人被配置成只从经分配的节点区域通过。
关于移动机器人的配置,可以是移动机器人只有从服务器接收到关于下一分配的节点区域的指令时,才会执行移动,即使其可能已经自主规划好了运行路径。
另外,可以是在机器人A0在0时间点根据规划路径从第73号节点区域运行到63号节点区域之前,预先为A0分配63号节点区域。优选地,可以在是根据移动机器人的需要(例如当移动机器人的速度较快时),第一移动机器人A分配多个供其下一步通过的多个节点区域,如图5所示,可以是根据机器人的运行路径为第一移动机器人A分配24号节点区域和25号节点区域,并为第二移动机器人B分配146号节点区域和147号节点区域等,且以上都属于本发明的保护范围内。
S203、当为第二移动机器人所分配的第二节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记该存在重合的节点区域为冲突状态的冲突节点区域。
具体的,可以是在关于预定区域全局的节点资源表中统计各个节点资源的被各个机器人所占用及分配的情况,包括机器人现在所占用的节点区域ID以及为机器人所分配的节点区域ID,具体可参照如图6所示的示例。在一种情况下,如果为第一移动机器人A所分配节点资源区域为第10号节点区域,之后为第二移动机器人B所分配节点资源区域也为第10号节点区域,或者在另一种情况下,如果为第一移动机器人A所分配节点资源区域包含第10号和11号节点区域,为第二移动机器人B所分配的节点区域包含第9号节点区域和第10号节点区域,则表明第一移动机器人A和第二移动机器人B存在重合的第10号节点区域,相应地标记该第10号节点为处于冲突状态的冲突节点区域。相应地,可以确定在第一移动机器人A与第二移动机器人B之间存在规划路径冲突,此时应当采取相应的冲突管理措施,具体地,可以是生成冲突通知信号,并将该冲突通知信号发送至运维人员以提醒其来处理并解决移动机器人冲突。优选的,也可以是由服务器自主解决移动机器人之间的冲突,具体细节将在下文中展开。
优选地,在检测到第一移动机器人A或第二移动机器人B已经通过第10号冲突节点区域时,服务器可以将冲突节点区域重新从冲突状态转换为可供分配的状态,例如可以以不同的标识(通过对节点颜色或形态的标注等)对冲突节点区域与可分配的节点区域之间进行区分,由此实现了对冲突节点恢复正常之后的再分配工作,保障了正常节点资源能够被移动机器人循环使用,提高了密集区域的利用效率。
S204、判断第一移动机器人的第一规划路径通过冲突节点区域的方向与第二移动机器人的第二规划路径通过冲突节点区域的方向是否正好相反。
S205、若是,则确定第一移动机器人和第二移动机器人之间处于互相死锁状态。
如图7所示的是两个移动机器人互相死锁状态的示例,移动机器人A1需要往上行驶到3号节点,而路径当中移动机器人A2恰巧在其中,且A2需要往下行驶到目标20号节点,13号节点区域就成为了冲突节点区域。基于S204和S205,在确定第一移动机器人和第二移动机器人之间的存在路径冲突之后,进一步基于第一节点路径和第二节点路径相对于冲突节点区域的方向来确定第一移动机器人和第二移动机器人之间的冲突状态是否为互相死锁状态,实现了对互相死锁状态的检测。
如图8所示,本发明一实施例的多移动机器人的死锁冲突管理方法,包括:
S401、获取多个移动机器人各自的当前位置和规划路径,其中规划路径能够绕开预定区域内的障碍物,预定区域包括多个节点区域。
S402、根据多个移动机器人各自的当前位置和规划路径,为各个移动机器人分配与移动机器人的位置相邻的节点区域,其中移动机器人被配置成只从经分配的节点区域通过。
S403、当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记存在重合的节点区域为冲突状态的冲突节点区域。
S404、判断第一移动机器人的第一规划路径通过冲突节点区域的方向与第二移动机器人的第二规划路径通过冲突节点区域的方向是否正好相反。
S405、若是,则确定第一移动机器人和第二移动机器人之间处于互相死锁状态。
关于S401-S405更具体的细节,可以参照上文实施例的描述,在此便不赘述,
S406、判断是否存在不位于第一规划路径或第二规划路径上的、且用于分配至第一移动机器人和第二移动机器人的第一空闲节点区域和第二空闲节点区域。
S407、若存在第一空闲节点区域和第二空闲节点区域,则为第一移动机器人和第二移动机器人分别分配第一空闲节点区域和第二空闲节点区域,以置换第一移动机器人和第二移动机器人的位置,并解除互相死锁状态。
具体的,关于置换第一移动机器人和第二移动机器人的位置,可以通过如下方式来实现:首先,控制第一移动机器人和第二移动机器人分别占用第一空闲节点区域和第二空闲节点区域。之后,为第一移动机器人分配节点区域,以令第一移动机器人通过冲突节点区域,并占用第二移动机器人对应互相死锁状态下的的位置。最后,为第二移动机器人分配节点区域,以令第一移动机器人占用第一移动机器人对应互相死锁状态下的位置。
图8所示的实施例可以被看作是图2所示实施例的一种优选实施方式,具体在于,图8实施例还公开了解除互相死锁状态的操作,也就是通过对空闲节点区域的判断及分配,分别将两个发生互相死锁状态的移动机器人分别分配到相应的空闲节点区域张,并进一步解除移动机器人之间的互相死锁状态。
具体的,如图9A-9D所示了节点分配以解决移动机器人互相死锁状态的示意图,在移动机器人A1与A2发生如图7所示的冲突之后,确定要置换A1和A2的位置就可以很好地解决这一冲突。具体的,可以是分析移动机器人A1的规划路径为:18-13-8-3节点序列,而移动机器人A2的规划路径为8-13-18-19-20节点序列。所以,满足条件的不在18-13-8-3节点序列,也不在8-13-18-19-20节点序列上的能够分配至A1和A0的,就只有能够分配给A1的距规划路径节点序列相邻的25号或15号节点区域了。因此,如图9A所示,第一步,如图9A所示,可以是为移动机器人A1分配25号节点区域,具体的,可以是在为移动机器人A1分配25号节点之前就先分配19号和20号节点区域;第二步,如图9B所示,为移动机器人A2分配同样不在规划路径上的15号节点,具体的,可以是在为移动机器人A2分配15号节点之前就先分配13、18、19和20号节点区域;第三步,如图9C所示根据移动机器人A1的目标节点区域为A1分配节点区域序列,以通过节点区域的分配令A1到达先前A2所占用的8号节点区域;第四步,如图9D所示,根据移动机器人A2的目标节点区域为A2分配节点区域序列,以通过节点区域的分配令A2到达先前A1所占用的18号节点区域;第五步,为移动机器人A1和A2重新分配目标节点区域信息,以令其在解决完了互相冲突之后重新执行任务。
在本发明一实施例中,可以是设置如下的位置置换条件:被置换的移动机器人所处的节点区域至少由有两个可行走的邻居节点(且该邻居节点不在规划路径上),以及如果被置换移动机器人只有一个邻居节点,则先移动到这一邻居节点再继续寻找从该邻居节点的可行走的其他邻居节点,并且如果被置换移动机器人所在节点没有可行走的邻居节点则先尝试另一个移动机器人,直到解除或者无解。
如图10所示,本发明一实施例的移动机器人位置置换的方法,包括:
S501、计算B可行走的邻居节点N(B)的数量,并确定A到B的方向为D(A,B),其中,如果N(B)的数量为0,则表示无解,如果N(B)的数量等于1,则跳转至S404。
S502、确定B到N(B)={n1,n2,n3,n4}各邻居节点的方向D(B,n1),D(B,n2),D(B,n3),D(B,n4),计算B到邻居节点方向与A到B方向的角度R=D(B,nx)–D(A,B),并标记nα={nx|R=90},nβ={nx|R=-90},nγ={nx|R=0}(如图11所示)。
S503、将B移动到nα或nβ节点,并且将A移动到nγ(或nβ,nα)节点。将B再移动到之前的A的节点位置A’,再将A移动到B之前的节点位置B’,完成交换,返回。
S504、将B移动到N(B)={n0}唯一邻居点,将A移动到B的节点B’,重复进行S401。
S505、如果Swap(A,B)与Swap(B,A)都无解,则无法交换AB位置。
进一步的,在确定无法交换A、B移动机器人的位置的情况下,可以是停止为移动机器人A和B分配节点区域,并执行报警动作,以警示运维人员采取措施。
如图12所示,本发明一实施例的多移动机器人的死锁冲突管理系统120,包括:初始信息获取单元1201,用于获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;节点区域分配单元1202,用于根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;冲突检测单元1203,用于当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;死锁判断单元1204,用于判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。
在一些实施方式中,该系统还包括:空闲节点区域判断单元,用于判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;位置置换单元,用于若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。
在一些实施方式中,所述位置置换单元包括:空闲节点分配模块,用于控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及第一节点分配模块,用于为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;第二节点分配模块,用于为所述第二移动机器人分配节点区域,以令所述第一移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。
在一些实施方式中,所述系统还包括:警报处理单元,用于若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。
在一些实施方式中,所述初始信息获取单元包括:调度命令发送模块,用于向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;规划路径接收模块,用于响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
需说明的是,本发明实施例所提供的多移动机器人的死锁冲突管理系统可以是搭建在用于集中管理多移动机器人的服务器上的,并且如上所述的各个单元和模块可以是指代程序模块或单元。以及,关于本发明实施例系统的更多的细节和相应的技术效果可以参照上文方法实施例的描述,在此便不再赘述。
上述本发明实施例的系统可用于执行本发明中相应的方法实施例,并相应的达到上述本发明方法实施例所达到的技术效果,这里不再赘述。
本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
另一方面,本发明实施例提供一种存储介质,其上存储有计算机程序,该程序被处理器执行如上服务器所执行的多移动机器人的死锁冲突管理方法的步骤。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。

Claims (10)

1.一种多移动机器人的死锁冲突管理方法,包括:
获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;
根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;
当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;
判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及
若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。
2.根据权利要求1所述的方法,其特征在于,在确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态之后,该方法还包括:
判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;
若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。
3.根据权利要求2所述的方法,其特征在于,所述置换所述第一移动机器人和所述第二移动机器人的位置包括:
控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及
为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;
为所述第二移动机器人分配节点区域,以令所述第一移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。
4.根据权利要求2所述的方法,其特征在于,在判断是否存在不位于所述第一规划路径或所述第二规划路径上的且能够分配至所述第一移动机器人或所述第二移动机器人的空闲节点区域之后,所述方法还包括:
若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。
5.根据权利要求1所述的方法,其特征在于,所述获取多个移动机器人各自的当前位置和规划路径包括:
向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;
响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
6.一种多移动机器人的死锁冲突管理系统,包括:
初始信息获取单元,用于获取多个移动机器人各自的当前位置和规划路径,其中所述规划路径能够绕开预定区域内的障碍物,所述预定区域包括多个节点区域;
节点区域分配单元,用于根据所述多个移动机器人各自的当前位置和规划路径,为各个所述移动机器人分配与所述移动机器人的位置相邻的节点区域,其中所述移动机器人被配置成只从经分配的节点区域通过;
冲突检测单元,用于当为第二移动机器人所分配的节点区域与已分配至第一移动机器人的节点区域之间存在重合时,标记所述存在重合的节点区域为冲突状态的冲突节点区域;
死锁判断单元,用于判断所述第一移动机器人的第一规划路径通过所述冲突节点区域的方向与所述第二移动机器人的第二规划路径通过所述冲突节点区域的方向是否正好相反,以及若是,则确定所述第一移动机器人和所述第二移动机器人之间处于互相死锁状态。
7.根据权利要求6所述的系统,其特征在于,该系统还包括:
空闲节点区域判断单元,用于判断是否存在不位于所述第一规划路径或所述第二规划路径上的、且用于分配至所述第一移动机器人和所述第二移动机器人的第一空闲节点区域和第二空闲节点区域;
位置置换单元,用于若存在所述第一空闲节点区域和所述第二空闲节点区域,则为所述第一移动机器人和所述第二移动机器人分别分配所述第一空闲节点区域和所述第二空闲节点区域,以置换所述第一移动机器人和所述第二移动机器人的位置,并解除所述互相死锁状态。
8.根据权利要求7所述的系统,其特征在于,所述位置置换单元包括:
空闲节点分配模块,用于控制所述第一移动机器人和所述第二移动机器人分别占用所述第一空闲节点区域和所述第二空闲节点区域;以及
第一节点分配模块,用于为第一移动机器人分配节点区域,以令所述第一移动机器人通过所述冲突节点区域,并占用所述第二移动机器人对应互相死锁状态下的的节点区域;
第二节点分配模块,用于为所述第二移动机器人分配节点区域,以令所述第一移动机器人占用所述第一移动机器人对应互相死锁状态下的节点区域。
9.根据权利要求7所述的系统,其特征在于,所述系统还包括:
警报处理单元,用于若不存在所述空闲节点,则停止为所述第一移动机器人和所述第二移动机器人分配节点区域,并执行报警动作。
10.根据权利要求6所述的系统,其特征在于,所述初始信息获取单元包括:
调度命令发送模块,用于向各个所述移动机器人发送调度命令,其中所述调度命令包含各个移动机器人的目标节点区域信息;
规划路径接收模块,用于响应于所述调度命令,从所述多个移动机器人接收规划路径,其中所述规划路径为各个所述移动机器人根据各自的目标节点区域信息并通过A*算法计算所确定的。
CN201810053971.0A 2018-01-19 2018-01-19 多移动机器人的冲突管理方法及系统 Pending CN108279675A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810053971.0A CN108279675A (zh) 2018-01-19 2018-01-19 多移动机器人的冲突管理方法及系统
PCT/CN2019/072256 WO2019141218A1 (zh) 2018-01-19 2019-01-18 多移动机器人的冲突管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810053971.0A CN108279675A (zh) 2018-01-19 2018-01-19 多移动机器人的冲突管理方法及系统

Publications (1)

Publication Number Publication Date
CN108279675A true CN108279675A (zh) 2018-07-13

Family

ID=62804178

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810053971.0A Pending CN108279675A (zh) 2018-01-19 2018-01-19 多移动机器人的冲突管理方法及系统

Country Status (2)

Country Link
CN (1) CN108279675A (zh)
WO (1) WO2019141218A1 (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189081A (zh) * 2018-11-16 2019-01-11 湖北文理学院 Agv调度控制方法及装置
CN109298386A (zh) * 2018-10-17 2019-02-01 中国航天系统科学与工程研究院 一种基于多智能体协同的三维未知区域快速探测方法
CN109460036A (zh) * 2018-12-18 2019-03-12 广东嘉腾机器人自动化有限公司 一种agv交通管制调度方法及存储装置
CN109781110A (zh) * 2019-01-18 2019-05-21 芜湖智久机器人有限公司 一种移动机器人路径死锁检测系统及方法
WO2019141218A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及系统
CN110394800A (zh) * 2019-07-10 2019-11-01 浙江欣奕华智能科技有限公司 一种多个机器人的避障方法及系统
CN110889918A (zh) * 2019-11-28 2020-03-17 安徽江淮汽车集团股份有限公司 磁导航死锁解锁控制方法、装置及计算机可读存储介质
CN111784249A (zh) * 2020-07-03 2020-10-16 上海木木聚枞机器人科技有限公司 一种加解锁调度行驶状态的方法、服务器和存储介质
CN112214013A (zh) * 2020-08-07 2021-01-12 上海海得控制系统股份有限公司 直线往复式多rgv死锁避免和冲突实时控制方法、系统、介质、终端
CN112783145A (zh) * 2019-11-11 2021-05-11 上海快仓智能科技有限公司 交通控制方法、装置、设备和计算机可读存储介质
CN113156950A (zh) * 2021-04-20 2021-07-23 杭州壹悟科技有限公司 多机器人智能交通控制方法及装置
CN113485341A (zh) * 2021-07-12 2021-10-08 湛江科技学院 基于双机互扰的路径规划方法、装置及计算机设备
CN113671965A (zh) * 2021-08-24 2021-11-19 同济大学 路径规划方法及装置
CN114281080A (zh) * 2021-12-22 2022-04-05 杭州蓝芯科技有限公司 一种amr调度系统中解死锁的方法
CN114326753A (zh) * 2022-03-07 2022-04-12 杭州蓝芯科技有限公司 一种调控区域内多机器人的死锁检测方法
CN114355867A (zh) * 2020-09-27 2022-04-15 顺丰科技有限公司 多agv无冲突无死锁的运动规划方法及装置
CN115167477A (zh) * 2022-08-23 2022-10-11 广东爱吉尔机器人科技有限公司 资源受限的中央集中式动态路径规划方法及电子设备
EP4202588A1 (en) * 2021-12-22 2023-06-28 Mobile Industrial Robots A/S Detection of an occurring deadlock conflict in a robot fleet of autonomous mobile robots

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112990806A (zh) * 2019-12-17 2021-06-18 北京京东乾石科技有限公司 运输设备的调度控制的方法和系统
CN111061272A (zh) * 2019-12-24 2020-04-24 广东嘉腾机器人自动化有限公司 一种agv小车控制方法、装置、电子设备及存储介质
CN111798041A (zh) * 2020-06-18 2020-10-20 北京卫星制造厂有限公司 一种基于时间窗的agv智能调度方法
CN113945216B (zh) * 2021-10-15 2024-07-05 上海懒书智能科技有限公司 一种移动机器设备的路径规划和管理系统和方法
CN115658333A (zh) * 2022-09-28 2023-01-31 劢微机器人科技(深圳)有限公司 Agv死锁问题的处理方法、装置、设备及存储介质
CN116880476B (zh) * 2023-07-05 2024-01-19 湘南学院 一种基于交通管控的agvs运行控制方法
CN117325185B (zh) * 2023-11-27 2024-04-09 成都越凡创新科技有限公司 移动机器人解死锁的方法及调度设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106251016A (zh) * 2016-08-01 2016-12-21 南通大学 一种基于动态时间窗的泊车系统路径规划方法
CN106556406A (zh) * 2016-11-14 2017-04-05 北京特种机械研究所 多agv调度方法
CN106843218A (zh) * 2017-02-16 2017-06-13 上海理工大学 车间用自动导引装置调度方法
CN107179078A (zh) * 2017-05-24 2017-09-19 合肥工业大学(马鞍山)高新技术研究院 一种基于时间窗优化的agv路径规划方法
CN107452218A (zh) * 2017-09-22 2017-12-08 西北工业大学 一种多无人车编队的交叉路口集中式调度方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102865877B (zh) * 2012-10-08 2014-12-17 无锡普智联科高新技术有限公司 基于密集存储区域的多移动机器人路径冲突解决方法
US10884430B2 (en) * 2015-09-11 2021-01-05 The Trustees Of The University Of Pennsylvania Systems and methods for generating safe trajectories for multi-vehicle teams
CN108279675A (zh) * 2018-01-19 2018-07-13 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及系统
CN108268016A (zh) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106251016A (zh) * 2016-08-01 2016-12-21 南通大学 一种基于动态时间窗的泊车系统路径规划方法
CN106556406A (zh) * 2016-11-14 2017-04-05 北京特种机械研究所 多agv调度方法
CN106843218A (zh) * 2017-02-16 2017-06-13 上海理工大学 车间用自动导引装置调度方法
CN107179078A (zh) * 2017-05-24 2017-09-19 合肥工业大学(马鞍山)高新技术研究院 一种基于时间窗优化的agv路径规划方法
CN107452218A (zh) * 2017-09-22 2017-12-08 西北工业大学 一种多无人车编队的交叉路口集中式调度方法

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019141218A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及系统
CN109298386A (zh) * 2018-10-17 2019-02-01 中国航天系统科学与工程研究院 一种基于多智能体协同的三维未知区域快速探测方法
CN109298386B (zh) * 2018-10-17 2020-10-23 中国航天系统科学与工程研究院 一种基于多智能体协同的三维未知区域快速探测方法
CN109189081A (zh) * 2018-11-16 2019-01-11 湖北文理学院 Agv调度控制方法及装置
CN109460036A (zh) * 2018-12-18 2019-03-12 广东嘉腾机器人自动化有限公司 一种agv交通管制调度方法及存储装置
CN109781110A (zh) * 2019-01-18 2019-05-21 芜湖智久机器人有限公司 一种移动机器人路径死锁检测系统及方法
CN109781110B (zh) * 2019-01-18 2022-09-27 安徽宏途机器人科技有限公司 一种移动机器人路径死锁检测系统及方法
CN110394800A (zh) * 2019-07-10 2019-11-01 浙江欣奕华智能科技有限公司 一种多个机器人的避障方法及系统
CN112783145A (zh) * 2019-11-11 2021-05-11 上海快仓智能科技有限公司 交通控制方法、装置、设备和计算机可读存储介质
CN112783145B (zh) * 2019-11-11 2023-03-31 上海快仓智能科技有限公司 交通控制方法、装置、设备和计算机可读存储介质
CN110889918A (zh) * 2019-11-28 2020-03-17 安徽江淮汽车集团股份有限公司 磁导航死锁解锁控制方法、装置及计算机可读存储介质
CN110889918B (zh) * 2019-11-28 2021-04-16 安徽江淮汽车集团股份有限公司 磁导航死锁解锁控制方法、装置及计算机可读存储介质
CN111784249A (zh) * 2020-07-03 2020-10-16 上海木木聚枞机器人科技有限公司 一种加解锁调度行驶状态的方法、服务器和存储介质
CN112214013A (zh) * 2020-08-07 2021-01-12 上海海得控制系统股份有限公司 直线往复式多rgv死锁避免和冲突实时控制方法、系统、介质、终端
CN114355867B (zh) * 2020-09-27 2024-04-16 顺丰科技有限公司 多agv无冲突无死锁的运动规划方法及装置
CN114355867A (zh) * 2020-09-27 2022-04-15 顺丰科技有限公司 多agv无冲突无死锁的运动规划方法及装置
CN113156950A (zh) * 2021-04-20 2021-07-23 杭州壹悟科技有限公司 多机器人智能交通控制方法及装置
CN113485341B (zh) * 2021-07-12 2024-03-05 湛江科技学院 基于双机互扰的路径规划方法、装置及计算机设备
CN113485341A (zh) * 2021-07-12 2021-10-08 湛江科技学院 基于双机互扰的路径规划方法、装置及计算机设备
CN113671965A (zh) * 2021-08-24 2021-11-19 同济大学 路径规划方法及装置
CN113671965B (zh) * 2021-08-24 2024-03-12 同济大学 路径规划方法及装置
CN114281080A (zh) * 2021-12-22 2022-04-05 杭州蓝芯科技有限公司 一种amr调度系统中解死锁的方法
WO2023117755A1 (en) * 2021-12-22 2023-06-29 Mobile Industrial Robots A/S Detection of an occurring deadlock conflict in a robot fleet of autonomous mobile robots
EP4202588A1 (en) * 2021-12-22 2023-06-28 Mobile Industrial Robots A/S Detection of an occurring deadlock conflict in a robot fleet of autonomous mobile robots
CN114281080B (zh) * 2021-12-22 2024-03-15 杭州蓝芯科技有限公司 一种amr调度系统中解死锁的方法
CN114326753A (zh) * 2022-03-07 2022-04-12 杭州蓝芯科技有限公司 一种调控区域内多机器人的死锁检测方法
CN115167477A (zh) * 2022-08-23 2022-10-11 广东爱吉尔机器人科技有限公司 资源受限的中央集中式动态路径规划方法及电子设备

Also Published As

Publication number Publication date
WO2019141218A1 (zh) 2019-07-25

Similar Documents

Publication Publication Date Title
CN108279675A (zh) 多移动机器人的冲突管理方法及系统
CN108268016A (zh) 多移动机器人的冲突管理方法及系统
WO2019141222A1 (zh) 多移动机器人的冲突管理方法及系统
CN107992060A (zh) 多移动机器人的路径规划方法及系统
CN102865877B (zh) 基于密集存储区域的多移动机器人路径冲突解决方法
CN108287547A (zh) 多移动机器人的冲突管理方法及系统
RU2589869C2 (ru) Способ и система для эффективного планирования для множества автоматизированных неголономных транспортных средств с использованием планировщика скоординированных маршрутов
CN108287545B (zh) 多移动机器人的冲突管理方法及系统
CN105652838B (zh) 一种基于时间窗的多机器人路径规划方法
CN109541634A (zh) 一种路径规划方法、装置和移动设备
CN108267149A (zh) 多移动机器人的冲突管理方法及系统
CN108268038A (zh) 多移动机器人的调度方法及系统
CN108268039A (zh) 移动机器人的路径规划方法及系统
CN108762277A (zh) 一种分布式agv调度方法及调度系统
Chand et al. Mapping and exploration in a hierarchical heterogeneous multi-robot system using limited capability robots
CN108227716A (zh) 移动机器人的路径规划方法及系统
CN108268037B (zh) 多移动机器人的冲突管理方法及系统
CN111136658A (zh) 机器人的控制方法、装置、电子设备及存储介质
WO2019141226A1 (zh) 多移动机器人的冲突管理方法及系统
CN113515117A (zh) 一种基于时间窗的多agv实时调度的冲突消解方法
Liu et al. Multiple equipment scheduling and AGV trajectory generation in U-shaped sea-rail intermodal automated container terminal
Feng et al. Efficient algorithms for optimal perimeter guarding
Xu et al. Dynamic spare point application based coordination strategy for multi-AGV systems in a WIP warehouse environment
CN114326753A (zh) 一种调控区域内多机器人的死锁检测方法
Sauer et al. Decentralized deadlock prevention for self-organizing industrial mobile robot fleets

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180713

RJ01 Rejection of invention patent application after publication