移动机器人的路径规划方法及系统与流程

文档序号:14910476发布日期:2018-07-10 23:16阅读:244来源:国知局

本发明涉及机器人技术领域,具体地涉及一种移动机器人的路径规划方法及系统。



背景技术:

在密集区域(例如物流仓库区域)内布设多个移动机器人,并由这些移动机器人来完成诸如搬运货物的任务,以替代人工劳动,是目前物联网领域的研究重点。

为了避免密集区域中的多个移动机器人之间在作业时候的碰撞,目前一般采用了如下两种不同的处理方案:其一,是通过机器人当前的局部环境信息,让机器人具有良好的冲突消解能力;其二,是集中管理式冲突消解,其主要是通过将机器人的运动路径分段来消除冲突。

但是,本申请的发明人在实践本申请的过程中发现上述现有技术中至少存在如下缺陷:其一,分布式方法虽然运算简单、实时性和灵活性强,但由于会出现局部极点,往往无法完整地完成任务;其二,集中管理式方法能够较精确地执行任务,但极容易导致机器人运行路径冲突,通常要寻找最优解,但计算量很大,占用服务器大量的资源,导致实时性差。对此目前业界仍然无法提出较佳的解决方案。



技术实现要素:

本发明实施例的目的是提供一种多移动机器人的路径规划方法及系统,用以至少解决现有技术中集中管理式方法计算量很大,占用服务器大量的资源所导致的实时性差的技术问题。

为了实现上述目的,本发明实施例提供一种移动机器人的路径规划方法,包括:从移动机器人接收第一规划路径,其中所述第一规划路径是预定区域内的由所述移动机器人所自主规划的从移动机器人的当前位置到目标位置的最短路径;为所述移动机器人规划不同于所述第一规划路径的第二规划路径;以及基于预存储的标准路径分段和对应所述标准路径分段的静态路径代价值,确定所述第一规划路径和所述第二规划路径所分别对应的第一路径代价值和第二路径代价值,其中路径代价值与移动机器人执行路径所消耗的期望时间之间呈正相关关系;比较所述第一路径代价值和所述第二路径代价值,并根据比较结果发送相应的控制指令至移动机器人,其中所述移动机器人能够识别所述控制指令并按照所述第一规划路径或所述第二规划路径移动。

可选的,所述基于预存储的标准路径分段和对应所述标准路径分段的静态路径代价值确定所述第一规划路径和所述第二规划路径所分别对应的第一路径代价值和第二路径代价值包括:根据所述标准路径分段,将第一规划路径划分为第一组标准路径分段,并将所述第二规划路径划分为第二组标准路径分段,其中所述标准路径分段包括以下中一者或多者:竖直路径分段和/或水平路径分段;根据所述第一组标准路径分段下各标准路径分段所对应的静态路径代价值来确定所述第一路径代价值,以及根据所述第二组标准路径分段下各标准路径分段所对应的静态路径代价值的来确定所述第二路径代价值。

可选的,所述根据比较结果发送相应的控制指令至移动机器人,其中所述移动机器人能够识别所述控制指令并按照所述第一规划路径或所述第二规划路径移动包括:当所述比较结果指示所述第二路径代价值小于所述第一路径代价值时,发送相应的第二控制指令至所述移动机器人,以令所述移动机器人执行所述第二控制指令并按照所述第二规划路径移动。

可选的,所述预定区域包括多个节点区域,其中所述控制指令包括所述节点区域的分配信息,其中所述移动机器人能够识别所述控制指令以按照所述第一规划路径或所述第二规划路径移动,以及所述移动机器人被配置成只从经分配的所述节点区域通过。

可选的,所述从移动机器人接收第一规划路径包括:向所述移动机器人发送调度命令,其中所述调度命令包含所述移动机器人的目标位置信息;响应于所述调度命令,从所述移动机器人接收第一规划路径,其中所述规划路径为所述移动机器人根据所述目标位置信息通过A*算法计算所确定的。

本发明实施例另一方面提供一种移动机器人的路径规划系统,包括:第一路径获取单元,用于从移动机器人接收第一规划路径,其中所述第一规划路径是预定区域内的由所述移动机器人所自主规划的从移动机器人的当前位置到目标位置的最短路径;第二路径获取单元,用于为所述移动机器人规划不同于所述第一规划路径的第二规划路径;代价值确定单元,用于基于预存储的标准路径分段和对应所述标准路径分段的静态路径代价值,确定所述第一规划路径和所述第二规划路径所分别对应的第一路径代价值和第二路径代价值,其中路径代价值与移动机器人执行路径所消耗的期望时间之间呈正相关关系;路径控制单元,用于比较所述第一路径代价值和所述第二路径代价值,并根据比较结果发送相应的控制指令至移动机器人,其中所述移动机器人能够识别所述控制指令并按照所述第一规划路径或所述第二规划路径移动。

可选的,所述代价值确定单元包括:路径分段模块,用于根据所述标准路径分段,将第一规划路径划分为第一组标准路径分段,并将所述第二规划路径划分为第二组标准路径分段,其中所述标准路径分段包括以下中一者或多者:竖直路径分段和/或水平路径分段;静态值统计模块,用于根据所述第一组标准路径分段下各标准路径分段所对应的静态路径代价值来确定所述第一路径代价值,以及根据所述第二组标准路径分段下各标准路径分段所对应的静态路径代价值的来确定所述第二路径代价值。

可选的,所述路径控制单元包括:第二路径控制模块,用于当所述比较结果指示所述第二路径代价值小于所述第一路径代价值时,发送相应的第二控制指令至所述移动机器人,以令所述移动机器人执行所述第二控制指令并按照所述第二规划路径移动。

可选的,所述预定区域包括多个节点区域,其中所述控制指令包括所述节点区域的分配信息,所述移动机器人能够识别所述控制指令以按照所述第一规划路径或所述第二规划路径移动,以及所述移动机器人被配置成只从经分配的所述节点区域通过。

可选的,所述第一路径获取单元包括:调度命令发送模块,用于向所述移动机器人发送调度命令,其中所述调度命令包含所述移动机器人的目标位置信息;规划路径接收模块,用于响应于所述调度命令,从所述移动机器人接收第一规划路径,其中所述规划路径为所述移动机器人根据所述目标位置信息通过A*算法计算所确定的。

通过上述技术方案,能够将移动机器人所自主规划的规划路径和服务器规划的路径进行对比,保证移动机器人所执行的路径是最高效的路径。并且,服务器的整个路径计算过程是基于静态代价值来进行的,计算过程简单,能保障移动机器人高效运作的基础上还能够保障服务器的响应效率,提高移动机器人的传输效率。

本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:

图1是实施本发明一实施例的多移动机器人的路径规划方法的密集区域的地图示例;

图2是本发明一实施例的多移动机器人的路径规划方法的流程图;

图3是本发明一实施例中关于获取移动机器人的规划路径方法的流程图;

图4是本发明一实施例中关于预定区域的节点分布表的示例;

图5是本发明实施例服务器对移动机器人实施路径规划的示意图;

图6是本发明实施例关于标准路径分段选择的示例;

图7是本发明一实施例的移动机器人的路径规划系统的结构框图。

附图标记说明

A1、A0、 移动机器人 B1、B2 障碍物

N1、N2 节点 702 第二路径规划单元

701 第一路径获取单元 703 代价值确定单元

70 多移动机器人的路径规划系统 704 路径规划单元

具体实施方式

以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。

如图1所示,在实施本发明一实施例的多移动机器人的路径规划方法的密集区域的地图中标注了多个障碍物B1、B2等,多个移动机器人A0、A1等,以及多个节点区域N1、N2等。其中,该密集区域可以是根据需要所预定的,例如其可以是指代仓库内的区域,该多个移动机器人A0、A1可以是指代多个物流机器人,以及通过该移动机器人A0、A1的运行移动,可以实现搬运货物,但是在多个物流机器人同时运行的时候,可能会导致冲突。其中,不同的节点区域N1、N2的大小可以是相等的,其可以通过对密集区域的地图作等比例划分所形成的。需说明的是,本发明实施例的路径规划方法可以是由集中管理该多个移动机器人的服务器所执行的。以及,可以理解的是,该图1所示的地图及节点区域的描述,并不旨在限定本发明的保护范围,也就是本发明实施例的实施也可以不需要为预定区域划分节点区域等。

如图2所示,本发明一实施例的移动机器人的路径规划方法,包括:

S201、从移动机器人接收第一规划路径,其中所述第一规划路径是预定区域内的由所述移动机器人所自主规划的从移动机器人的当前位置到目标位置的最短路径。

具体的,参见图3示出的是关于规划路径的获取方式的一种优选实施方式,移动机器人可以是AGV(Automated Guided Vehicle激光导航车辆),其中描述了第一规划路径的接收方法,包括:S301、服务器向移动机器人发送调度命令,其中调度命令包含各个移动机器人的目标节点区域信息。S302、在移动机器人接收到各自的调度命令之后,其会根据目标节点区域信息并通过A*算法计算各自的相应的规划路径。S303、移动机器人会将计算所得到的规划路径发送至服务器。更优选地,在服务器获取到移动机器人所发送的规划路径之后,会执行相应的后续处理,以保障在移动机器人在执行规划路径的过程中不会发生路径冲突。作为示例,在地图上可以具有多个分别具有唯一的节点ID的节点区域(例如图4所示的关于密集区域的节点分布表中的0、1…99号节点区域),移动机器人A0在接收到调度命令之后,需要从当前位置73号节点区域到达31号目标节点区域,此时移动机器人A0会通过A*算法计算到达31号目标节点区域的最短路径,但是该最短路径并不一定是移动机器人执行移动任务的最高效路径。

S202、为移动机器人规划不同于第一规划路径的第二规划路径。

具体的,可以是规划对应于第一规划路径的初始位置和终点位置的其他路径作为第二规划路径,并且该第二规划路径可以是泛指除第一规划路径之外的其他所有路径,也可以是除了第一规划路径之后的其他预定数量的路径,在此不作限定。并且,关于第二规划路径的规划方式,在此也应不作限定。

需说明的是,从移动机器人所接收到的规划路径可能并不是代表最高效的路径(下文中也会有所说明),所以服务器需要另外规划路径,以保障移动机器人能够高效地完成规划路径。但是,额外计算路径势必会增加服务器的处理资源消耗的负担,有鉴于此,本发明实施例下文还公开了利用标准路径的静态代价值来降低资源消耗大的问题。

S203、基于预存储的标准路径分段和对应所述标准路径分段的静态路径代价值,确定所述第一规划路径和所述第二规划路径所分别对应的第一路径代价值和第二路径代价值,其中路径代价值与移动机器人执行路径所消耗的期望时间之间呈正相关关系;

具体的,可以是路径代价值越大,移动机器人执行规划路径所消耗的时间就越长,二者之间的正相关系数可以不作限定,例如正相关系数可以是因不同动力性能的移动机器人而存在不同。

关于路径代价值的计算,在此并不作限定,但是需说明的是,与基于静态路径代价值相比,实时的路径代价值的计算会消耗更多的资源。

示例性地,可以是通过以下方式来确定路径代价值:

T(C)=M*t(F)+N*t(R)+K*t(B) (1)

其中,T(C)表示中间计算值,t(F)、t(R)和t(B)分别表示关于规划路径的直行、转弯和倒退信息所对应的代价值,以及M、N、K分别表示各个路径状态信息所分别对应的单位数量(例如所通过的节点数量和转弯的拐点数量)。

F(C)=α*f(C)+T(C) (2)

其中,f(C)表示移动机器人所规划的最短规划路径的距离所对应的代价值,α表示为该最短规划路径的距离所分配的权重值,以及F(C)表示根据所有信息所得到的路径代价值。

具体的,在式(1)中的T(C)中间计算值可以是表示对规划路径的各个路径状态下分析所确定的综合状态计算值,其中为不同的状态赋予了不同的权重值,保障了所得到的F(C)能够准确反映规划路径的路径状态。在式(2)中,F(C)为规划路径的距离作为部分的参考,而不是全部的参考,并引入T(C),由于路径状态对于移动机器人执行路径的效率存在影响,使得F(C)的值能够比最短路径更能反映移动机器人执行路径的效率。

作为示例,如图5所示,移动机器人执行从A到B的调度任务,从图示中可以看到按照A*算法所计算的最短路径的节点区域的个数(能够对应距离)为7个,而按照另一种算法所规划的节点区域的个数为11个。此时,服务器对两个路径所对应的路径代价值进行计算,例如当设定前行的代价t(F)=1,左右转向的代价t(L)=t(R)=2,倒退的代价t(B)=4,α=0.1。

最短路径:t2(C)=8*t(F)+2*t(L)+2*t(L)=8+4+4=16

较长路径:t1(C)=12*t(F)+2*t(R)=11+4=15

而统计规划路径所通过的节点区域,以确定规划路径的距离f1(C)=11,f2(C)=7,所以F1(C)=0.1*11+15=16.1

F2(C)=0.1*7+16=16.7。

通过上述比较,不难得知F1(C)<F2(C)。

因此,最短路径所对应的路径代价值大于较长路径所对应的路径代价值,也就是移动机器人执行较长路径应比执行最短路径更加高效。

从以上针对路径代价值的计算过程来看,其过于繁琐,在实际移动机器人运行的过程中,如果采用实时计算,可能会导致服务器的响应效果降低,不利于移动机器人的高效运行。

在本实施例中,可以是根据标准路径分段,将第一规划路径划分为第一组标准路径分段,并将第二规划路径划分为第二组标准路径分段,其中标准路径分段包括以下中一者或多者:竖直路径分段、水平路径分段和/或转折路径分段;根据所述第一组标准路径分段下各标准路径分段所对应的静态路径代价值来确定所述第一路径代价值,以及根据所述第二组标准路径分段下各标准路径分段所对应的静态路径代价值的来确定所述第二路径代价值。在标准路径的选择上,优选为直线,或者具有一个转弯的路径分段,并对这样的路径进行静态存储。示例性地,如图6所示,可以将点A到点B、点A到点C、点A到点D的路径代价值进行预先计算并存储,而对于点A到点E的路径用虚线标识的路径相对比较复杂,特别如果在该区域内有其他移动机器人的时候可能不会直接按照该路径行走,点A到点E的路径可以不去静态存储。

示例性地,在本实施例所公开的静态计算的过程就会具有较快的响应时间,比如一个3*3的地图中,用矩阵表示节点区域如下:

可以是通过模型等算法根据路径状态等因素,预先计算好各个节点之间的距离,例如:A1到A2的路径代价值为1,A1到A5为2,A1到A6为3等等。作为示例,如果服务器已经静态存储了A1到A2的代价值F(A1,A2)和A2到A3的代价值F(A2,A3),那么经由A1-A2-A3的路径代价值就等于F(A1,A2)+F(A2,A3)。由此,计算量得到大幅度降低,降低了服务器的处理资源消耗,提高了响应性能。

S204、比较第一路径代价值和第二路径代价值,并根据比较结果发送相应的控制指令至移动机器人,其中移动机器人能够识别控制指令并按照第一规划路径或第二规划路径移动。

具体的,可以是当比较结果指示第二规划路径所需要消耗的时长小于第一规划路径时,发送相应的第二控制指令至所述移动机器人,以令移动机器人执行所述控制指令并按照所述第二规划路径移动。

如上所阐述的,当较长路径所对应的路径代价值小于最短路径所对应的路径代价值时,也就指示了较长路径所对应的期望时间要小于最短路径,此时可以选择将较长路径以控制指令的方式分发给移动机器人,令移动机器人按照较长路径来执行移动。相应地,如果经过计算发现最短路径就是最高效的路径,也可以是令移动机器人执行该最短路径,不过不同的是,通过本申请可以保证移动机器人所执行的路径是最高效的路径。并且,整个基于静态代价值计算的过程不涉及模型的计算,计算过程简单,能保障移动机器人高效运作的基础上还能够保障服务器的响应效率,提高移动机器人的传输效率。

在一实施方式中,控制指令可以包括节点区域的分配信息,其中移动机器人能够识别控制指令以按照第一规划路径或第二规划路径移动,以及移动机器人被配置成只从经分配的所述节点区域通过,例如,移动机器人只有在从服务器接收到节点区域的分配信息之后才会执行移动,即使移动机器人可能已经自主确定了规划路线。由此可以通过节点区域信息的分配,控制移动机器人不去执行最短路径,而去执行更加高效的较长路径,并且,通过节点资源表对预定区域内的节点资源实施全局管理和维护,保障了多移动机器人在实施移动任务时不会发生冲突,例如一个节点资源不会同时被分配给两个移动机器人。

如图7所示,本发明一实施例的移动机器人的路径规划系统70,包括:第一路径获取单元701,用于从移动机器人接收第一规划路径,其中所述第一规划路径是预定区域内的由所述移动机器人所自主规划的从移动机器人的当前位置到目标位置的最短路径;第二路径获取单元702,用于为所述移动机器人规划不同于所述第一规划路径的第二规划路径;代价值确定单元703,用于基于预存储的标准路径分段和对应所述标准路径分段的静态路径代价值,确定所述第一规划路径和所述第二规划路径所分别对应的第一路径代价值和第二路径代价值,其中路径代价值与移动机器人执行路径所消耗的期望时间之间呈正相关关系;路径控制单元704,用于比较所述第一路径代价值和所述第二路径代价值,并根据比较结果发送相应的控制指令至移动机器人,其中所述移动机器人能够识别所述控制指令并按照所述第一规划路径或所述第二规划路径移动。

在一些实施方式中,所述代价值确定单元703包括:路径分段模块,用于根据所述标准路径分段,将第一规划路径划分为第一组标准路径分段,并将所述第二规划路径划分为第二组标准路径分段,其中所述标准路径分段包括以下中一者或多者:竖直路径分段和/或水平路径分段;静态值统计模块,用于根据所述第一组标准路径分段下各标准路径分段所对应的静态路径代价值来确定所述第一路径代价值,以及根据所述第二组标准路径分段下各标准路径分段所对应的静态路径代价值的来确定所述第二路径代价值。

在一些实施方式中,所述路径控制单元704包括:第二路径控制模块,用于当所述比较结果指示所述第二路径代价值小于所述第一路径代价值时,发送相应的第二控制指令至所述移动机器人,以令所述移动机器人执行所述第二控制指令并按照所述第二规划路径移动。

在一些实施方式中,所述预定区域包括多个节点区域,其中所述控制指令包括所述节点区域的分配信息,所述移动机器人能够识别所述控制指令以按照所述第一规划路径或所述第二规划路径移动,以及所述移动机器人被配置成只从经分配的所述节点区域通过。

在一些实施方式中,所述第一路径获取单元701包括:调度命令发送模块,用于向所述移动机器人发送调度命令,其中所述调度命令包含所述移动机器人的目标位置信息;规划路径接收模块,用于响应于所述调度命令,从所述移动机器人接收第一规划路径,其中所述规划路径为所述移动机器人根据所述目标位置信息通过A*算法计算所确定的。

需说明的是,本发明实施例所提供的多移动机器人的路径规划系统可以是搭建在用于集中管理多移动机器人的服务器上的,并且如上所述的各个单元和模块可以是指代程序模块或单元。以及,关于本发明实施例系统的更多的细节和相应的技术效果可以参照上文方法实施例的描述,在此便不再赘述。

上述本发明实施例的系统可用于执行本发明中相应的方法实施例,并相应的达到上述本发明方法实施例所达到的技术效果,这里不再赘述。

本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。

另一方面,本发明实施例提供一种存储介质,其上存储有计算机程序,该程序被处理器执行如上服务器所执行的多移动机器人的路径规划方法的步骤。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。

本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。

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