CN117325185B - 移动机器人解死锁的方法及调度设备 - Google Patents

移动机器人解死锁的方法及调度设备 Download PDF

Info

Publication number
CN117325185B
CN117325185B CN202311589307.5A CN202311589307A CN117325185B CN 117325185 B CN117325185 B CN 117325185B CN 202311589307 A CN202311589307 A CN 202311589307A CN 117325185 B CN117325185 B CN 117325185B
Authority
CN
China
Prior art keywords
robot
path
channel
avoidance
robots
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
Application number
CN202311589307.5A
Other languages
English (en)
Other versions
CN117325185A (zh
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.)
Chengdu Eventec Science & Technology Co ltd
Original Assignee
Chengdu Eventec Science & Technology 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 Chengdu Eventec Science & Technology Co ltd filed Critical Chengdu Eventec Science & Technology Co ltd
Priority to CN202311589307.5A priority Critical patent/CN117325185B/zh
Publication of CN117325185A publication Critical patent/CN117325185A/zh
Application granted granted Critical
Publication of CN117325185B publication Critical patent/CN117325185B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明涉及信息处理技术。本发明的目的是要解决目前现有移动机器人存在死锁需要人工解除的问题,提供了一种移动机器人解死锁的方法及调度设备,其技术方案可概括为:选择出需要避让的机器人,根据规划路径、各机器人的当前位置及各通道的空间信息规划其避让所需的避让路径,令该机器人根据避让路径到达避让点以避让其余机器人,从而解除死锁情况。本发明的有益效果是,减少人工参与,适用于移动机器人调度***。

Description

移动机器人解死锁的方法及调度设备
技术领域
本申请涉及信息处理技术,特别涉及移动机器人解死锁的方法及调度设备。
背景技术
随着移动机器人的发展,单机器人已经无法满足业务需求,只有多个不同类型的机器人之间相互合作,才能满足越来越复杂化的应用场景。多个机器人合作时必然需要一个良好的调度***,然而调度***在信号不好时,可能存在丢包的问题,从而导致调度***存在死锁的情况。
移动机器人死锁的情况为:参见图1,其中,箭头代表机器人的移动方向,A为机器人A,B为机器人B,图1中,机器人A与机器人B对向行驶,若此时信息丢失,机器人A和机器人B继续向各自原定路径行驶,在信号恢复后,调度***得到机器人A和机器人B的位置信息,使得机器人A与机器人B同时停止,但由于机器人A的原定路径被机器人B所遮挡,机器人B的原定路径被机器人A所遮挡,因此此时调度***无法恢复正常,出现了机器人A与机器人B互相等待的情况,路径重规划也无法解决此类问题,只能通过人工解决。
因此,现有移动机器人存在死锁需要人工解除的问题。
发明内容
本申请的目的是要解决目前现有移动机器人存在死锁需要人工解除的问题,提供了一种移动机器人解死锁的方法及调度设备。
本申请解决上述技术问题采用的技术方案中,第一方面提供了一种移动机器人解死锁的方法,包括以下步骤:
步骤1、当出现死锁情况下执行,获取死锁情况下各机器人信息,选择出需要避让的机器人;
步骤2、从机器人信息中提取需要避让的机器人的规划路径及所述死锁情况下各机器人的当前位置;
步骤3、在所述规划路径上标注各其余机器人的位置点,选择出所述各其余机器人的位置点到所述规划路径的原始起点之间路径最长的位置点及对应的部分所述规划路径,记为参考点及参考路径;
步骤4、获取参考路径上各通道的空间信息;
步骤5、根据参考路径上各通道的空间信息筛选出满足避让条件的各通道;
步骤6、在满足避让条件的各通道中,选择需要避让的机器人当前所处位置点沿参考路径方向距离最短的通道作为避让通道,在所述避让通道中选择避让点;
步骤7、规划需要避让的机器人当前所处位置点到避让点的路径,得到避让路径,并判断所述需要避让的机器人是否能够根据避让路径到达避让点,若是则进入步骤8,否则剔除所述满足避让条件的通道,回到步骤6;
步骤8、需要避让的机器人根据避让路径前往避让点等候,待其余机器人通过后再正常运行,本次死锁情况解除。
具体的,为提供一种获取参考路径上各通道的空间信息的方法,则步骤4包括以下步骤:
获取参考路径上的通道宽度及同一宽度通道的连续长度,以通道宽度划分各通道,各通道的宽度及长度即为各通道的空间信息。
进一步的,为提供一种获取参考路径上各通道宽度及同一宽度通道的连续长度的方法,则所述获取参考路径上的通道宽度及同一宽度通道的连续长度,包括:
步骤401、对参考路径按照一定长度进行划分,得到多个参考点;
步骤402、在静态地图上对每个参考点向垂直于参考路径方向的方向延伸出两条相反的射线,任一所述射线遇到障碍物时即停止对应射线的延伸,得到此时所述射线的长度,获取参考路径上各通道宽度;
步骤403、根据同一宽度通道的连续参考点数量获取所述同一宽度通道的连续长度。
具体的,由于通道宽度可能很大,而在避让时,所需避让的通道宽度并不一定需要达到通道宽度的实际宽度,为简化后续计算,则步骤402中,所述射线在延伸时具有预设的最长长度限制,当所述射线延伸至长度限制时仍未遇到障碍物,则所述射线的长度为预设的最长长度。
再进一步的,为提供一种根据参考路径上各通道的空间信息筛选出满足避让条件的各通道的方法,则步骤5包括以下步骤:
步骤501、计算得到各通道的空闲区域,所述空闲区域为在添加了动态障碍物后的静态地图上,各通道剩余的空间区域,所述动态障碍物为其余机器人从当前所处位置沿各自规划路线行进时的投影;
步骤502、筛选出满足需要避让的机器人的空间要求的空闲区域对应的各通道。
具体的,由于有可能存参考路径上的各通道均无法满足避让条件的情况,则步骤5中,还包括以下步骤:
若无法根据参考路径上各通道的空间信息筛选出满足避让条件的各通道时,在静态地图上,根据需要避让的机器人的规划路径的原始起点,以原始起点为原点,以一定角度为间隔,分别延伸射线;当射线遇到障碍物或达到最大预设长度时终止延伸;剔除被其余机器人的规划路径完全覆盖的射线后,根据剩余射线的长度及其对应角度选择射线,作为延伸路径;获取延伸路径上各通道的空间信息,根据延伸路径上各通道的空间信息筛选出满足避让条件的各通道。
再进一步的,为细化如何规划需要避让的机器人当前所处位置点到避让点的路径,得到避让路径,并判断所述需要避让的机器人是否能够根据避让路径到达避让点,则步骤7中,包括以下步骤:
步骤701、将其余机器人当前所占空间作为固定障碍物添加在静态地图上,得到避让地图;
步骤702、在避让地图上规划需要避让的机器人当前所处位置点到避让点的路径,若规划成功则得到避让路径,进入步骤8,否则判定为所述需要避让的机器人无法根据避让路径到达避让点,进入步骤703;
步骤703、剔除所述满足避让条件的通道,回到步骤6。
具体的,为避免所生成的避让路径的角度转折过大,则步骤7中,还对避让路径进行平滑处理。
再进一步的,为提供一种如何选择需要避让的机器人的方法,则步骤1中,所述选择出需要避让的机器人,包括:
步骤101、根据死锁情况下各机器人信息,获取当前各机器人规划路径的方向;
步骤102、按照规划路径方向划分各机器人,得到各方向分组;
步骤103、选择出各方向分组中的机器人数量最少的一组,其中的机器人即为需要避让的机器人。
具体的,由于可能两个方向分组中的机器人数量相同,则步骤1中,所述选择出需要避让的机器人,包括:
步骤10A、根据死锁情况下各机器人信息,获取当前各机器人规划路径的方向及当前各机器人的行动优先级;
步骤10B、按照规划路径方向划分各机器人,得到各方向分组;
步骤10C、排除行动优先级最高的机器人所属的方向分组后,剩余方向分组中的机器人即为需要避让的机器人。
本申请解决上述技术问题采用的技术方案中,第二方面提供了一种调度设备,包括处理模块、存储模块及存储在存储模块中并能够在处理模块上运行的计算机程序,所述处理模块用于执行所述计算机程序时实现如上述的移动机器人解死锁的方法。
本申请的有益效果是,在本申请方案中,在发现死锁情况下,通过设计避让程序,使得死锁情况下的一部分机器人执行避让操作,让出另一部分机器人的行进路线,从而自动解除死锁,避免人工参与修订路线等人工解除死锁方式,从而提升移动机器人的工作效率。
附图说明
图1是移动机器人死锁的情况的平面示意图。
图2是本申请实施例第一方面提供的移动机器人解死锁的方法的示意性流程图。
图3是本申请实施例第二方面提供的调度设备的***框图。
具体实施方式
为了使本申请所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
图2示出了本申请实施例第一方面提供的移动机器人解死锁的方法的示意性流程图,作为示例而非限定,该移动机器人解死锁的方法包括以下步骤:
步骤1、当出现死锁情况下执行,获取死锁情况下各机器人信息,选择出需要避让的机器人。
步骤2、从机器人信息中提取需要避让的机器人的规划路径及该死锁情况下各机器人的当前位置。
步骤3、在该规划路径上标注各其余机器人的位置点,选择出各其余机器人的位置点到该规划路径的原始起点之间路径最长的位置点及对应的部分该规划路径,记为参考点及参考路径。
步骤4、获取参考路径上各通道的空间信息。
步骤5、根据参考路径上各通道的空间信息筛选出满足避让条件的各通道。
步骤6、在满足避让条件的各通道中,选择需要避让的机器人当前所处位置点沿参考路径方向距离最短的通道作为避让通道,在避让通道中选择避让点。
步骤7、规划需要避让的机器人当前所处位置点到避让点的路径,得到避让路径,并判断需要避让的机器人是否能够根据避让路径到达避让点,若是则进入步骤8,否则剔除该满足避让条件的通道,回到步骤6。
步骤8、需要避让的机器人根据避让路径前往避让点等候,待其余机器人通过后再正常运行,本次死锁情况解除。
可以理解的是,上述移动机器人解死锁的方法中,由于出现死锁情况的原因是至少两个不同方向的移动机器人都移动到了对方的规划路径上,因此选择出需要避让的机器人后,其规划路径上必然存在各其余机器人的位置点(因为只有这种情况才会出现死锁)。
而选择出各其余机器人的位置点到该规划路径的原始起点之间路径最长的位置点及对应的部分该规划路径,可具体举例为:假设需要避让的机器人记为机器人A,机器人A的规划路径为第一规划路径,其余机器人记为机器人B及机器人C,机器人B相对于机器人C距离机器人A更近,第一规划路径的原始起点记为G,机器人C在第一规划路径上的位置点标记为S,则选择S点为参考点,S点到G点的部分第一规划路径为参考路径。
且由于机器人均占有一定的空间,因此在该规划路径上标注各其余机器人的位置点时,可根据各其余机器人的位置点将各其余机器人所占空间投影在该规划路径上,筛选出投影覆盖的点到该规划路径的原始起点之间路径最长的点及对应的部分该规划路径,记为参考点及参考路径。
选择其余机器人的位置点作为参考点的原因在于:相对于选择需要避让的机器人的当前位置点为参考点,可使得参考路径的长度大于需要避让的机器人的已行进路径,从而在选择避让点时,可以使得需要避让的机器人向其规划路径的前进方向两侧选择避让点,即增加了避让点的选择范围。
而在满足避让条件的各通道中,选择需要避让的机器人当前所处位置点沿参考路径方向距离最短的通道作为避让通道的目的在于:使后续的避让路径长度最短,进而使得需要避让的机器人在避让时移动距离最短,从而提高效率。
在一些实施例中,为提供一种获取参考路径上各通道的空间信息的方法,则步骤4可包括以下步骤:
获取参考路径上的通道宽度及同一宽度通道的连续长度,以通道宽度划分各通道,各通道的宽度及长度即为各通道的空间信息。
可以理解的是,由于机器人移动时一般是基于平面地图进行的,因此各通道的空间信息应以各通道的宽度及长度为准。
在一些实施例中,为提供一种获取参考路径上各通道宽度及同一宽度通道的连续长度的方法,则获取参考路径上的通道宽度及同一宽度通道的连续长度,可包括:
步骤401、对参考路径按照一定长度进行划分,得到多个参考点。
步骤402、在静态地图上对每个参考点向垂直于参考路径方向的方向延伸出两条相反的射线,任一射线遇到障碍物时停止该射线延伸,得到此时该射线的长度,获取参考路径上各通道宽度。
步骤403、根据同一宽度通道的连续参考点数量获取所述同一宽度通道的连续长度。
可以理解的是,一定长度可以根据实际需要进行设置,其目的在于简化计算,不必对整个参考路径上的每一点的通道宽度都进行获取,且加入一定长度后,也可根据一定长度获取到各通道的长度,无需通过延伸射线的方式去获取。
由于通道宽度可能很大,而在避让时,所需避让的通道宽度并不一定需要达到通道宽度的实际宽度,为简化后续计算,则在一些实施例中,步骤402中,可设置为:射线在延伸时具有预设的最长长度限制,当该射线延伸至长度限制时仍未遇到障碍物,则该射线的长度为预设的最长长度。
可以理解的是,此处为射线设置最长长度的目的在于,由于机器人在避让时,一般只需要一定的空闲空间即可,并不需要太大的空闲空间,因此为射线设置一个最长长度以对应一个合适的可避让的通道单边宽度即可,该最长长度可根据实际应用情况进行相应设置。
在一些实施例中,为提供一种根据参考路径上各通道的空间信息筛选出满足避让条件的各通道的方法,则步骤5可包括以下步骤:
步骤501、计算得到各通道的空闲区域,该空闲区域为在添加了动态障碍物后的静态地图上,各通道剩余的空间区域,该动态障碍物为其余机器人从当前所处位置沿各自规划路线行进时的投影;
步骤502、筛选出满足需要避让的机器人的空间要求的空闲区域对应的各通道。
可以理解的是,由于在静态地图上引入了动态障碍物(其余机器人从当前所处位置沿各自规划路线行进时的投影),即相当于在各通道中减去了其余机器人移动时每一步所占空间,从而得出的空闲区域中必然不会有其余机器人经过。
而再经过筛选的目的在于,需要避让的机器人也具有所占空间,若空闲区域无法放置需要避让的机器人,则该处通道就无法使用,因此需要再进行筛选。且由于其余机器人在移动时的投影可能造成一个通道被划分为三个区域,即空闲区域一、其余机器人的投影区域及空闲区域二,有可能空闲区域一与空闲区域二相加可放置需要避让的机器人,但由于需要避让的机器人不可能分成两份分别置于空闲区域一及空闲区域二中,因此在计算各通道的空闲区域时,一般是选择空闲区域一及空闲区域二中较大的区域作为空闲区域(从而不需对其余机器人进行操作)。当然,也可对其余机器人的规划路径进行修订,使之在通过该通道时,令空闲区域一或空闲区域二中的任一区域尽量小,以使得作为空闲区域的另一区域尽量大从而能够放置需要避让的机器人,但这样会使得***需要对其余机器人进行操作,提高了***复杂度。
由于有可能存在参考路径上的各通道均无法满足避让条件的情况,则在一些实施例中,步骤5中,还可包括以下步骤:
若无法筛选出满足避让条件的通道时,在静态地图上,根据需要避让的机器人的规划路径的原始起点,以原始起点为原点,以一定角度为间隔,分别延伸射线;当射线遇到障碍物或达到最大预设长度时终止延伸;剔除被其余机器人的规划路径完全覆盖的射线后,根据剩余射线的长度及其对应角度选择射线,作为延伸路径;获取延伸路径上各通道的空间信息,根据延伸路径上各通道的空间信息筛选出满足避让条件的各通道。
可以理解的是,剔除被其余机器人的规划路径完全覆盖的射线的目的在于避免选择原规划路径或其余机器人的规划路径的移动方向,从而节省后续计算数量。而根据剩余射线的长度及其对应角度选择射线中,由于机器人本身需要占用一定的空间,且移动到位也需要一定的转圜空间,因此可以根据剩余射线的长度及其对应角度等参数去选择最优的射线,这里,最优射线仅是相对而言,可根据实际需要设定最优射线的判定参数,例如射线长度为至少5米及对应角度为小于30度等。
另外,在剔除被其余机器人的规划路径完全覆盖的射线后,也可将剩余各射线均作为延伸路径,分别获取各延伸路径上各通道的空间信息,然后筛选出符合条件的各通道,再选择符合条件的各通道中,距离需避让机器人当前位置最近的通道对应的射线作为最优射线及实际延伸路径。这样,同样可获取最优射线及相应的延伸路径,该方式相对于先选择最优射线的方式的优势在于,不需要设定判定最优射线的各种参数,不易漏掉可行性方案,但该方式会相应提高***处理负担。
这里采用通过延伸射线的方式去规划延伸路径,是在选定了需要避让的机器人且无意更换的情况下进行的,若可更换需要避让的机器人,则可在出现若无法筛选出满足避让条件的通道时,重新选择需要避让的机器人,这样,可省去重新规划所带来的处理负担,但同时也可能存在根据各机器人的规划路径分别生成的参考路径上,均无法筛选出满足避让条件的通道的情况,此时,也可采用上述方法中规划延伸路径的方法。
当然,上述方法中,也可能存在无论如何延伸射线都无法筛选出满足避让条件的通道的情况,此时,只能提示***避让点选择失败,更换所选择的需要避让的机器人。
而获取延伸路径上各通道的空间信息的方法可参见上述获取参考路径上各通道的空间信息的方法,根据延伸路径上各通道的空间信息筛选出满足避让条件的各通道的方法可参见上述根据参考路径上各通道的空间信息筛选出满足避让条件的各通道的方法。
为细化如何规划需要避让的机器人当前所处位置点到避让点的路径,得到避让路径,并判断所述需要避让的机器人是否能够根据避让路径到达避让点,则在一些实施例中,步骤7中,可包括以下步骤:
步骤701、将其余机器人当前所占空间作为固定障碍物添加在静态地图上,得到避让地图。
步骤702、在避让地图上规划需要避让的机器人当前所处位置点到避让点的路径,若规划成功则得到避让路径,进入步骤8,否则判定为需要避让的机器人无法根据避让路径到达避让点,进入步骤703。
步骤703、剔除该满足避让条件的通道,回到步骤6。
可以理解的是,由于在静态地图上添加了固定障碍物(其余机器人当前所占空间),使得规划时即考虑了需要避让的机器人是否能够到达避让点,因而若避让路径能够成功规划,则需要避让的机器人就一定能够到达避让点,否则就无法到达避让点,该通道就不符合要求,因此需要剔除。
在一些实施例中,为避免所生成的避让路径的角度转折过大,则步骤7中,还可以对避让路径进行平滑处理。
可以理解的是,移动机器人在转向时若转向角度较大、速度较快且重心偏高时,容易翻倒,因此一般在生成规划路径或避让路径时都需要对路径进行平滑处理,以避免路径中各转角的角度过大。
在一些实施例中,为提供一种如何选择需要避让的机器人的方法,则步骤1中,选择出需要避让的机器人,可以包括:
步骤101、根据死锁情况下各机器人信息,获取当前各机器人规划路径的方向。
步骤102、按照规划路径方向划分各机器人,得到各方向分组。
步骤103、选择出各方向分组中的机器人数量最少的一组,其中的机器人即为需要避让的机器人。
可以理解的是,上述方法中,即选择移动机器人数量较少的那组方向中的机器人作为需要避让的机器人,可避免多数机器人避让少数机器人的问题。但在实际应用中,由于可能两个方向分组中的机器人数量相同,此时上述方法即失效了,此时可采用下述根据行动优先级选择需要避让的机器人的相应方法,也可加入其他选择判定标准,或采用随机选择的方式去选择。
另外,在实际应用中,由于调度***在调度各移动机器人时,有些调度***中为每个移动机器人都设置有行动优先级,要求有些机器人的行动优先级高于其他机器人,这是根据具体应用场景具体设置的,此时,就不适用于上述少数机器人避让多数机器人的方法,而需要以行动优先级进行选择,因此,在一些实施例中,步骤1中,选择出需要避让的机器人,可以包括:
步骤10A、根据死锁情况下各机器人信息,获取当前各机器人规划路径的方向及当前各机器人的行动优先级。
步骤10B、按照规划路径方向划分各机器人,得到各方向分组。
步骤10C、排除行动优先级最高的机器人所属的方向分组后,剩余方向分组中的机器人即为需要避让的机器人。
可以理解的是,也可将上述两种选择需要避让的机器人的方法相结合,如先判断行动优先级,若2个或2个以上方向分组中的机器人行动优先级有相同的情况下,再判断哪一方向分组中的机器人的数量较少,选择该方向分组中的机器人作为需要避让的机器人;也可以先判断哪一方向分组中的机器人的数量较少,当2个或2个以上方向分组中的机器人数量相同时,再判断各机器人的行动优先级,以行动优先级的方式选择方向分组。当然,即使结合后的方法也可能存在:死锁情况下2个或2个以上方向分组中,既有最高行动优先级相同的机器人,且该2个或2个以上方向分组中机器人的数量相同的情况,此时,可加入其他选择判定标准,也可通过随机的方式进行选择。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图3示出了本申请实施例第二方面提供的调度设备的***框图,为了便于说明,仅示出了与本实施例相关的部分。
该调度设备包括处理模块、存储模块及存储在存储模块中并能够在处理模块上运行的计算机程序,其中,处理模块用于执行计算机程序时实现如上述的移动机器人解死锁的方法。
本申请实施例第三方面提供了一种可读存储介质,该可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述移动机器人解死锁的方法。
需要说明的是,上述装置/单元/模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (7)

1.移动机器人解死锁的方法,其特征在于,包括以下步骤:
步骤1、当出现死锁情况下执行,获取死锁情况下各机器人信息,选择出需要避让的机器人;
步骤2、从机器人信息中提取需要避让的机器人的规划路径及所述死锁情况下各机器人的当前位置;
步骤3、在所述规划路径上标注各其余机器人的位置点,选择出所述各其余机器人的位置点到所述规划路径的原始起点之间路径最长的位置点及对应的部分所述规划路径,记为参考点及参考路径;
步骤4、获取参考路径上各通道的空间信息,包括:获取参考路径上的通道宽度及同一宽度通道的连续长度,以通道宽度划分各通道,各通道的宽度及长度即为各通道的空间信息;
步骤5、根据参考路径上各通道的空间信息筛选出满足避让条件的各通道,包括以下步骤:
步骤501、计算得到各通道的空闲区域,所述空闲区域为在添加了动态障碍物后的静态地图上,各通道剩余的空间区域,所述动态障碍物为其余机器人从当前所处位置沿各自规划路线行进时的投影;
步骤502、筛选出满足需要避让的机器人的空间要求的空闲区域对应的各通道;
步骤6、在满足避让条件的各通道中,选择需要避让的机器人当前所处位置点沿参考路径方向距离最短的通道作为避让通道,在所述避让通道中选择避让点;
步骤7、规划需要避让的机器人当前所处位置点到避让点的路径,得到避让路径,并判断所述需要避让的机器人是否能够根据避让路径到达避让点,若是则进入步骤8,否则剔除所述满足避让条件的通道,回到步骤6,包括以下步骤:
步骤701、将其余机器人当前所占空间作为固定障碍物添加在静态地图上,得到避让地图;
步骤702、在避让地图上规划需要避让的机器人当前所处位置点到避让点的路径,若规划成功则得到避让路径,进入步骤8,否则判定为所述需要避让的机器人无法根据避让路径到达避让点,进入步骤703;
步骤703、剔除所述满足避让条件的通道,回到步骤6;
步骤8、需要避让的机器人根据避让路径前往避让点等候,待其余机器人通过后再正常运行,本次死锁情况解除。
2.如权利要求1所述的移动机器人解死锁的方法,其特征在于,所述获取参考路径上的通道宽度及同一宽度通道的连续长度,包括:
步骤401、对参考路径按照一定长度进行划分,得到多个参考点;
步骤402、在静态地图上对每个参考点向垂直于参考路径方向的方向延伸出两条相反的射线,任一所述射线遇到障碍物时即停止对应射线的延伸,得到此时所述射线的长度,获取参考路径上各通道宽度;
步骤403、根据同一宽度通道的连续参考点数量获取所述同一宽度通道的连续长度。
3.如权利要求2所述的移动机器人解死锁的方法,其特征在于,步骤402中,所述射线在延伸时具有预设的最长长度限制,当所述射线延伸至长度限制时仍未遇到障碍物,则所述射线的长度为预设的最长长度。
4.如权利要求1所述的移动机器人解死锁的方法,其特征在于,步骤5中,还包括以下步骤:
若无法筛选出满足避让条件的通道时,在静态地图上,根据需要避让的机器人的规划路径的原始起点,以原始起点为原点,以一定角度为间隔,分别延伸射线;当射线遇到障碍物或达到最大预设长度时终止延伸;剔除被其余机器人的规划路径完全覆盖的射线后,根据剩余射线的长度及其对应角度选择射线,作为延伸路径;获取延伸路径上各通道的空间信息,根据延伸路径上各通道的空间信息筛选出满足避让条件的各通道。
5.如权利要求1-4任一项所述的移动机器人解死锁的方法,其特征在于,步骤1中,所述选择出需要避让的机器人,包括:
步骤101、根据死锁情况下各机器人信息,获取当前各机器人规划路径的方向;
步骤102、按照规划路径方向划分各机器人,得到各方向分组;
步骤103、选择出各方向分组中的机器人数量最少的一组,其中的机器人即为需要避让的机器人。
6.如权利要求1-4任一项所述的移动机器人解死锁的方法,其特征在于,步骤1中,所述选择出需要避让的机器人,包括:
步骤10A、根据死锁情况下各机器人信息,获取当前各机器人规划路径的方向及当前各机器人的行动优先级;
步骤10B、按照规划路径方向划分各机器人,得到各方向分组;
步骤10C、排除行动优先级最高的机器人所属的方向分组后,剩余方向分组中的机器人即为需要避让的机器人。
7.调度设备,其特征在于,包括处理模块、存储模块及存储在存储模块中并能够在处理模块上运行的计算机程序,所述处理模块用于执行所述计算机程序时实现如权利要求1-6任一项所述的移动机器人解死锁的方法。
CN202311589307.5A 2023-11-27 2023-11-27 移动机器人解死锁的方法及调度设备 Active CN117325185B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311589307.5A CN117325185B (zh) 2023-11-27 2023-11-27 移动机器人解死锁的方法及调度设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311589307.5A CN117325185B (zh) 2023-11-27 2023-11-27 移动机器人解死锁的方法及调度设备

Publications (2)

Publication Number Publication Date
CN117325185A CN117325185A (zh) 2024-01-02
CN117325185B true CN117325185B (zh) 2024-04-09

Family

ID=89279570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311589307.5A Active CN117325185B (zh) 2023-11-27 2023-11-27 移动机器人解死锁的方法及调度设备

Country Status (1)

Country Link
CN (1) CN117325185B (zh)

Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050097306A (ko) * 2004-04-01 2005-10-07 재단법인서울대학교산학협력재단 확장된 충돌 지도를 이용한 다개체 로봇의 충돌 회피 방법및 그 방법을 기록한 컴퓨터로 판독 가능한 기록 매체
CN102800213A (zh) * 2012-08-27 2012-11-28 武汉大学 一种基于车辆通行优先级的换道危险避撞的方法
CN106041931A (zh) * 2016-06-30 2016-10-26 广东工业大学 一种多障碍空间多agv机器人协作防碰撞路径优化方法
CN108267149A (zh) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及***
CN109108974A (zh) * 2018-08-29 2019-01-01 广州市君望机器人自动化有限公司 机器人避让方法、装置、后台服务端及存储介质
CN109144065A (zh) * 2018-08-29 2019-01-04 广州市君望机器人自动化有限公司 机器人避让方法及装置
WO2019141224A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及***
WO2019141218A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及***
CN110209485A (zh) * 2019-06-05 2019-09-06 青岛海通胜行智能科技有限公司 一种协同作业时多机器人的动态避让方法
CN110531773A (zh) * 2019-09-12 2019-12-03 北京极智嘉科技有限公司 机器人路径调度方法、装置、服务器及存储介质
CN111390904A (zh) * 2020-03-16 2020-07-10 广州赛特智能科技有限公司 一种以高运行效率实现多机器人协同作业的方法及装置
CN112499298A (zh) * 2021-02-08 2021-03-16 苏州澳昆智能机器人技术有限公司 一种装车用运输机器人
CN112650226A (zh) * 2020-12-11 2021-04-13 京信智能科技(广州)有限公司 一种机器人的调度方法、装置、设备及介质
CN112925313A (zh) * 2021-01-22 2021-06-08 上海擎朗智能科技有限公司 机器人的避让处理方法、装置、电子设备和介质
CN113780633A (zh) * 2021-08-20 2021-12-10 西安电子科技大学广州研究院 面向复杂环境的带实时冲突消解的多agv智能协同调度方法
KR20220005887A (ko) * 2020-07-07 2022-01-14 주식회사 한화 무인 반송 차량의 충돌 방지 장치 및 그 방법
CN114706393A (zh) * 2022-03-30 2022-07-05 上海擎朗智能科技有限公司 多机器人运行场景的避让方法以及应用其的机器人
CN114924538A (zh) * 2022-06-23 2022-08-19 南京师范大学 一种基于图结构的多agv实时调度与冲突消解方法
CN115220447A (zh) * 2022-05-26 2022-10-21 北京极智嘉科技股份有限公司 多机器人的运动调度方法及装置
CN115790594A (zh) * 2022-10-27 2023-03-14 浙江国自机器人技术股份有限公司 多类型机器人路径规划方法、装置、设备和存储介质
CN115857482A (zh) * 2021-09-23 2023-03-28 上海快仓自动化科技有限公司 基于关键点的死锁预防方法以及小车控制***
CN116088532A (zh) * 2023-02-21 2023-05-09 劢微机器人科技(深圳)有限公司 基于终点避让的解死锁方法、装置、设备及介质
JP2023072447A (ja) * 2021-11-12 2023-05-24 株式会社デンソー 移動体制御装置
CN116719312A (zh) * 2023-04-29 2023-09-08 南京邮电大学 一种单行道场景下基于折返避让的多agv解锁方法
WO2023174096A1 (zh) * 2022-03-15 2023-09-21 灵动科技(北京)有限公司 自主移动机器人的调度方法、***、电子设备和存储介质
CN116892945A (zh) * 2023-06-01 2023-10-17 北京极智嘉科技股份有限公司 移动机器人路径死锁处理方法及装置
CN117055557A (zh) * 2023-08-25 2023-11-14 上海擎朗智能科技有限公司 一种机器人避让方法、装置及电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE50208417D1 (de) * 2001-04-05 2006-11-23 Siemens Ag Roboterintelligenz in natürlichen umgebungen
JP4658155B2 (ja) * 2008-03-17 2011-03-23 株式会社日立製作所 自律移動ロボット装置及び自律移動ロボット装置の回避方法
US10317907B2 (en) * 2017-04-28 2019-06-11 GM Global Technology Operations LLC Systems and methods for obstacle avoidance and path planning in autonomous vehicles
US20210197377A1 (en) * 2019-12-26 2021-07-01 X Development Llc Robot plan online adjustment
CN113103224B (zh) * 2021-03-02 2022-08-30 上海擎朗智能科技有限公司 移动设备的避让方法、装置及计算机可读存储介质
US20230182299A1 (en) * 2021-12-14 2023-06-15 Fanuc Corporation Online auto-interlock strategy

Patent Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050097306A (ko) * 2004-04-01 2005-10-07 재단법인서울대학교산학협력재단 확장된 충돌 지도를 이용한 다개체 로봇의 충돌 회피 방법및 그 방법을 기록한 컴퓨터로 판독 가능한 기록 매체
CN102800213A (zh) * 2012-08-27 2012-11-28 武汉大学 一种基于车辆通行优先级的换道危险避撞的方法
CN106041931A (zh) * 2016-06-30 2016-10-26 广东工业大学 一种多障碍空间多agv机器人协作防碰撞路径优化方法
CN108267149A (zh) * 2018-01-19 2018-07-10 广东美的智能机器人有限公司 多移动机器人的冲突管理方法及***
WO2019141224A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及***
WO2019141218A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及***
CN109108974A (zh) * 2018-08-29 2019-01-01 广州市君望机器人自动化有限公司 机器人避让方法、装置、后台服务端及存储介质
CN109144065A (zh) * 2018-08-29 2019-01-04 广州市君望机器人自动化有限公司 机器人避让方法及装置
CN110209485A (zh) * 2019-06-05 2019-09-06 青岛海通胜行智能科技有限公司 一种协同作业时多机器人的动态避让方法
CN110531773A (zh) * 2019-09-12 2019-12-03 北京极智嘉科技有限公司 机器人路径调度方法、装置、服务器及存储介质
CN111390904A (zh) * 2020-03-16 2020-07-10 广州赛特智能科技有限公司 一种以高运行效率实现多机器人协同作业的方法及装置
KR20220005887A (ko) * 2020-07-07 2022-01-14 주식회사 한화 무인 반송 차량의 충돌 방지 장치 및 그 방법
CN112650226A (zh) * 2020-12-11 2021-04-13 京信智能科技(广州)有限公司 一种机器人的调度方法、装置、设备及介质
CN112925313A (zh) * 2021-01-22 2021-06-08 上海擎朗智能科技有限公司 机器人的避让处理方法、装置、电子设备和介质
CN112499298A (zh) * 2021-02-08 2021-03-16 苏州澳昆智能机器人技术有限公司 一种装车用运输机器人
CN113780633A (zh) * 2021-08-20 2021-12-10 西安电子科技大学广州研究院 面向复杂环境的带实时冲突消解的多agv智能协同调度方法
CN115857482A (zh) * 2021-09-23 2023-03-28 上海快仓自动化科技有限公司 基于关键点的死锁预防方法以及小车控制***
JP2023072447A (ja) * 2021-11-12 2023-05-24 株式会社デンソー 移動体制御装置
WO2023174096A1 (zh) * 2022-03-15 2023-09-21 灵动科技(北京)有限公司 自主移动机器人的调度方法、***、电子设备和存储介质
CN114706393A (zh) * 2022-03-30 2022-07-05 上海擎朗智能科技有限公司 多机器人运行场景的避让方法以及应用其的机器人
CN115220447A (zh) * 2022-05-26 2022-10-21 北京极智嘉科技股份有限公司 多机器人的运动调度方法及装置
CN114924538A (zh) * 2022-06-23 2022-08-19 南京师范大学 一种基于图结构的多agv实时调度与冲突消解方法
CN115790594A (zh) * 2022-10-27 2023-03-14 浙江国自机器人技术股份有限公司 多类型机器人路径规划方法、装置、设备和存储介质
CN116088532A (zh) * 2023-02-21 2023-05-09 劢微机器人科技(深圳)有限公司 基于终点避让的解死锁方法、装置、设备及介质
CN116719312A (zh) * 2023-04-29 2023-09-08 南京邮电大学 一种单行道场景下基于折返避让的多agv解锁方法
CN116892945A (zh) * 2023-06-01 2023-10-17 北京极智嘉科技股份有限公司 移动机器人路径死锁处理方法及装置
CN117055557A (zh) * 2023-08-25 2023-11-14 上海擎朗智能科技有限公司 一种机器人避让方法、装置及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
多AGV路径规划方法研究;泰应鹏;邢科新;林叶贵;张文安;;计算机科学(第S2期);全文 *
随机移动机器人运动碰撞的避免方法仿真;李丽丽;;计算机仿真;20131215(第12期);全文 *

Also Published As

Publication number Publication date
CN117325185A (zh) 2024-01-02

Similar Documents

Publication Publication Date Title
US20200262448A1 (en) Decision method, device, equipment in a lane changing process and storage medium
CN110910657B (zh) 一种路口通行权分配方法、装置及电子设备
CN111158365B (zh) 一种路径规划方法、装置、机器人及存储介质
US5428796A (en) System and method for regulating access to direct access storage devices in data processing systems
CN109739230B (zh) 驾驶轨迹生成方法、装置及存储介质
CN109508010B (zh) 一种基于栅格地图的多移动机器人***栅格点前瞻性防死锁动态分配方法
EP3702229A1 (en) Method, device, and terminal apparatus for invoking automatic driving reference line
CN112537703B (zh) 机器人乘梯方法、装置、终端设备及存储介质
CN112537705B (zh) 机器人乘梯调度方法、装置、终端设备及存储介质
CN109062948B (zh) 目标点确定、目标路径确定方法和***
CN111988524A (zh) 一种无人机与摄像头协同避障方法、服务器及存储介质
CN109284801A (zh) 交通指示灯的状态识别方法、装置、电子设备及存储介质
CN110008891A (zh) 一种行人检测定位方法、装置、车载计算设备及存储介质
CN110473407A (zh) 一种车辆入场监测方法、服务器及***
CN117325185B (zh) 移动机器人解死锁的方法及调度设备
CN109887321B (zh) 无人车变道安全判别方法、装置及存储介质
CN112258860B (zh) 路口车辆调度方法、装置、设备和计算机可读存储介质
CN114489996A (zh) 一种任务调度方法、装置、电子设备及自动驾驶车辆
CN114179078A (zh) 一种机器人控制方法、装置、***及可读存储介质
CN113763704A (zh) 车辆控制方法、装置、计算机可读存储介质及处理器
CN113492842A (zh) 自动泊车的控制方法、装置、设备和存储介质
CN113673154B (zh) 一种晶粒分选过程中的寻径方法、装置、设备及存储介质
CN117697733A (zh) 一种机器人调度方法和装置
CN117152718B (zh) 交通灯响应方法、装置、车辆及计算机可读存储介质
CN111220149B (zh) 移动设备的导航方法、装置、设备及计算机存储介质

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