掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请实施例涉及自动化领域,具体涉及一种仓储机器人的调度方法及相关设备。

背景技术

仓储机器人是一种自动引导机器人,常用作仓库中货物搬运。仓储机器人经常被用于电商下单发货拣选中的货物搬运,以替代工人拣选而提高拣选效率,降低人工成本。

目前的仓储机器人往往由专门的调度人员进行计划调度,仓库管理人员根据待搬运的货物量和自己的工作经验,为各个仓储机器人指定货运任务。这种调度方法对调度人员的工作经验要求较高,且不能保证最终货运任务分配的合理性。

发明内容

本申请实施例提供了一种仓储机器人的调度方法及相关设备,用于控制仓储系统中的仓储机器人自行完成运货任务。

本申请第一方面提供一种仓储机器人调度方法,用于对仓库内多个仓储机器人进行调度,所述仓储机器人包括空闲机器人以及关联有运货任务的忙碌机器人,包括:

接收目标类型的运货任务;

将所述运货任务关联至所述空闲机器人中运货代价最低的目标空闲机器人,并将所述目标空闲机器人标记为忙碌机器人;

在各个所述忙碌机器人中,选择关联的运货任务符合所述目标类型的目标忙碌机器人;

将所述目标忙碌机器人关联的运货任务确定为目标运货任务;

多次将各个目标运货任务分别与各个目标忙碌机器人进行一一关联,得到多个运货计划,其中每个运货计划用于表示所有目标忙碌机器人与所有目标运货任务的一种关联结果;

根据每个所述运货计划中目标忙碌机器人与目标运货任务的关联关系,计算每个所述运货计划的运货总代价;

将运货总代价最低的运货计划确定为目标运货计划。

可选地,所述方法还包括:

检测所述目标运货计划的运货总代价是否达到所述目标计划的预设代价阈值;

若为是,执行所述目标运货计划。

可选地,所述根据每个所述运货计划中目标忙碌机器人与目标运货任务的关联关系,计算每个所述运货计划的运货总代价,包括:

获取所述目标忙碌机器人执行所述运货任务经过的路径单元的长度与热度;

根据所述路径单元的长度与热度,计算所述路径单元的加权长度;

按照所述路径单元的加权长度,计算所述运货计划的运货总代价,所述运货总代价为执行所述运货计划消耗的各目标忙碌机器人的运货代价之和。

可选地,所述根据所述路径单元的长度与热度,计算所述路径单元的加权长度,包括:

统计所述路径单元在目标时间段内经过的仓储机器人数量;

根据所述在所述目标时间段内所述路径单元通过的仓储机器人数量,计算所述路径单元的热度,

综合所述路径单元的长度与热度,得到所述路径单元的加权长度。

可选地,所述根据所述在预设时间段内通过的仓储机器人数量,计算所述路径单元的热度,包括:

获取在目标时间段开始时所述路径单元的历史热度;

根据所述目标时间段的长度,计算所述路径单元的热度衰减值;

根据所述在预设时间段内所述路径单元通过的仓储机器人数量,计算所述路径单元的热度增加值;

将所述历史热度与所述热度衰减值、热度增加值综合计算,得到所述路径单元的热度。

可选地,所述按照所述路径单元的加权长度,计算所述运货计划的运货总代价,包括:

将所述路径单元的加权长度乘以所述运货任务的优先系数,计算所述运货计划的运货总代价。

可选地,所述运货任务的优先系数与所述运货任务分配后经过的时间长度呈正相关。

本申请第二方面提供一种仓储机器人的调度系统,所述调度系统用于对仓库内多个仓储机器人进行调度,所述仓储机器人包括空闲机器人以及关联有运货任务的忙碌机器人,所述仓储机器人的调度系统包括:

接收单元,用于接收目标类型的运货任务;

第一关联单元,用于将所述运货任务关联至所述空闲机器人中运货代价最低的目标空闲机器人,并将所述目标空闲机器人标记为忙碌机器人;

选择单元,用于在各个所述忙碌机器人中,选择关联的运货任务符合所述目标类型的目标忙碌机器人;

第一确定单元,用于将所述目标忙碌机器人关联的运货任务确定为目标运货任务;

第二关联单元,用于多次将各个目标运货任务分别与各个目标忙碌机器人进行一一关联,得到多个运货计划,其中每个运货计划用于表示所有目标忙碌机器人与所有目标运货任务的一种关联结果;

计算单元,用于根据每个所述运货计划中目标忙碌机器人与目标运货任务的关联关系,计算每个所述运货计划的运货总代价;

第二确定单元,用于将运货总代价最低的运货计划确定为目标运货计划。

本申请第三方面提供一种计算机设备,包括中央处理器和存储器,所述存储器为短暂存储存储器或持久存储存储器,所述中央处理器配置为与所述存储器通信,在所述计算机设备上执行所述存储器中的指令操作以执行第一方面中任意一项所述的方法。

本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,所述程序代码可被处理器调用执行如第一方面中任意一项所述的方法。

从以上技术方案可以看出,本申请实施例具有以下优点:本申请将仓储机器人运送货物消耗的时间和物资量化为运货代价,制定了一种根据运货代价调度仓储机器人的调度方法,本方法中,调度系统可以在仓储机器人运力一定的情况下,调度系统自动对仓储机器人运力进行合理分配和利用,减少了调度人员的工作量,提高了仓储机器人的工作效率。

附图说明

图1是本申请仓储机器人的调度方法的一个实施例示意图;

图2是本申请仓储机器人的调度方法的一个实施例示意图;

图3是本申请仓储机器人的调度方法的一个实施例示意图;

图4是本申请仓储机器人的调度方法的一个实施例示意图;

图5是本申请仓储机器人的调度方法的一个实施例示意图;

图6是本申请仓储机器人的调度系统的一个实施例示意图;

图7是本申请计算机设备的一个实施例示意图。

具体实施方式

本申请实施例提供了一种仓储机器人的调度方法,用于控制仓储机器人的执行运货任务。

本申请的仓储系统自动获取订单,根据订单为每个仓储机器人分配运货任务。仓储机器人接到运货任务后,解析运货任务的内容,从运货任务指定的位置取货,并运送到指定位置。每个仓储机器人在工作时都会有一个对应的运货任务,仓储机器人完成该运货任务消耗的时间、电量或占用的其他资源,可以被统一量化为运货代价。例如,仓储机器人完成一个运货任务,会消耗自身的元器件寿命、占用货运通道、耗费燃料等,将这些项目量化并相加,得到的结果可以称为仓储机器人执行运货任务的运货代价。显然,根据仓储机器人的开始位置、性能和运货任务本身的难度,不同的仓储机器人执行同一个运货任务的耗费的运货代价也可能不同,甚至同一个仓储机器人执行同一个运货任务的耗费的运货代价也会不同。本申请的目的在于,降低整个仓储系统整体的运货代价,高效运送货物的同时,降低运货代价,控制成本。

本申请首先提供一种仓储机器人调度方法,用于对仓库内多个仓储机器人进行调度,所述仓储机器人包括空闲机器人以及关联有运货任务的忙碌机器人。本申请所说的空闲机器人,是指未分配有运货任务的机器人,忙碌机器人是指分配有运货任务的机器人,需要说明的是,被标记为忙碌机器人,仅表示该仓储机器人有运货任务,而不表示机器人已经在执行运货任务运送货物。

本申请的仓储机器人调度方法主要包括:

101、接收目标类型的运货任务;

调度系统接收到订单或其他方式下达的运货任务,开始对该运货任务进行分配。该运货任务的目标类型仅表示运货任务的一种属性,例如货物的具体种类、运货难度或其他任意属性,本申请主要以货物种类为例进行讲解,方便本领域技术人员理解本方案。

102、将所述运货任务关联至所述空闲机器人中运货代价最低的目标空闲机器人,并将所述目标空闲机器人标记为忙碌机器人;

需要分配一个运货任务时,调度系统获取从空闲的仓储机器人的状态,计算这些空闲的仓储机器人完成这个运货任务需要的运货代价,从这些空闲机器人中选择运货代价最低的一个空闲机器人为其分配该运货任务。

一个运货任务的运货代价不仅和货物本身的数量、重量和类型有关,还和仓储机器人本身相关。例如,各空闲机器人的空间位置存在不同,某些距离运货任务起点更进的仓储机器人,运货代价会更低。或者在运货任务的货物类型是有托盘类货物,使用叉车型的仓储机器人执行运货任务的运货代价较低;运货任务的货物类型是纸类货物时,使用有机械臂的仓储机器人执行运货任务的运货代价较低。在为空闲机器人分配了运货任务之后,将这台仓储机器人标记的类型由空闲机器人修改为忙碌机器人。

103、在各个所述忙碌机器人中,选择关联的运货任务符合所述目标类型的目标忙碌机器人;

调度系统从所有忙碌机器人中,选中分配有目标类型的运货任务的忙碌机器人,将这些机器人分配有目标类型的运货任务的忙碌机器人统一作为目标忙碌机器人。

104、将所述目标忙碌机器人关联的运货任务确定为目标运货任务;

每个目标忙碌机器人都存在一个对应的运货任务,将这些目标忙碌机器人的运货任务作为目标运货任务。

105、多次将各个目标运货任务分别与各个目标忙碌机器人进行一一关联,得到多个运货计划,其中每个运货计划用于表示所有目标忙碌机器人与所有目标运货任务的一种关联结果;

将各目标忙碌机器人的运货任务与目标忙碌机器人重新进行组合,可以得到多种运货计划。具体地,当存在N个目标忙碌机器人时,对应有N个目标运货任务。重新将这N个运货任务分配至N个目标忙碌机器人的组合一共有

106、根据每个所述运货计划中目标忙碌机器人与目标运货任务的关联关系,计算每个所述运货计划的运货总代价;

按照每个运货计划中目标运货任务与目标忙碌机器人的对应关系,分别计算每一种运货计划下,各个目标忙碌机器人完成各自运货任务的运货代价之和,记为该运货计划的运货总代价。当有N个目标忙碌机器人时,共有

107、将运货总代价最低的运货计划确定为目标运货计划。

仓储机器人执行一个运货任务的运货代价可以大致表示一个运货任务的成本,那么一种运货计划的运货总打架就可以表示N个目标忙碌机器人按照运货计划完成N个目标运货任务的总成本。因此,从N个目标忙碌机器人与N个目标运货任务的多种分配方式中,找出运货总代价最低的运货计划,保存为目标运货计划。该目标运货计划的运货总代价最低,相当于目标忙碌机器人以最低的成本,完成了固定量的目标运货任务。

需要说明的是,由于仓储机器人执行运货任务的运货代价并不固定,因此可以将步骤106、107设为一个定时循环任务。每经过若干分钟,就重新执行一次步骤106和107的计算工作,以保证目标运货计划总是当前时刻成本最低的运货计划。

基于图1所示的仓储机器人调度方法,本申请还提供了该调度方法的一个更具体的实施例。具体请参见图2,该实施例包括:

201、接收目标类型的运货任务;

202、将所述运货任务关联至所述空闲机器人中运货代价最低的目标空闲机器人,并将所述目标空闲机器人标记为忙碌机器人;

203、在各个所述忙碌机器人中,选择关联的运货任务符合所述目标类型的目标忙碌机器人;

204、将所述目标忙碌机器人关联的运货任务确定为目标运货任务;

205、多次将各个目标运货任务分别与各个目标忙碌机器人进行一一关联,得到多个运货计划,其中每个运货计划用于表示所有目标忙碌机器人与所有目标运货任务的一种关联结果;

206、根据每个所述运货计划中目标忙碌机器人与目标运货任务的关联关系,计算每个所述运货计划的运货总代价;

207、将运货总代价最低的运货计划确定为目标运货计划;

本实施例的步骤201至207与图1所示实施例的步骤101至107类似,具体此处不再赘述。

208、检测所述目标运货计划的运货总代价是否达到所述目标计划的预设代价阈值;若为是,执行步骤209;

设置一个预设代价阈值,作为目标运货计划的执行条件。当目标运货计划的运货总代价达到这个预设代价阈值时,执行目标运货计划。例如,根据目标忙碌机器人的数量,设置预设代价阈值,目标忙碌机器人的数量越多,预设代价阈值越大。预设代价阈值的设置也可以综合考虑多种条件要素进行设置,例如目标运货任务的类型、运货任务的优先度等,具体此处不作限定。

由于仓储机器人执行运货任务的运货代价会出现变动,因此可以将步骤208设置为一个定时循环任务。每经过若干分钟,调度系统就会重新计算一次目标运货计划的运货总代价,并与预设代价阈值进行比较。优选的,该任务的执行间隔可以与步骤205、206的执行间隔相同,以免去对目标运货计划的运货总代价的重复计算。

209、执行所述目标运货计划。

当目标运货计划的运货总代价达到预设代价阈值时,开始指挥目标忙碌机器人按照目标运货计划,完成这些目标运货任务。

基于图1或图2所示实施例,图3还展示了其中运货计划的运货总代价的一种较优的计算方式。上述实施例中,图1所示步骤106,或图2所示实施例的步骤206可以由图3所示的几个更具体的步骤组成:

S1:获取所述目标忙碌机器人执行所述运货任务经过的路径单元的长度与热度;

计算一个目标忙碌机器人执行目标运货任务的运货代价时,获取目标忙碌机器人执行该目标运货任务时,需要经过的路径单元的长度与热度。其中,路径单元是指将地图中的每一个不可分割的路径作为一个最小单元,单独计算其长度和热度;长度表示该路径单元实际长度,热度则表示该路径单元的繁忙程度。一种较为简单的路径单元确认方法是,使用A*算法直接确认执行目标运货任务的最短路径。

S2:根据所述路径单元的长度与热度,计算所述路径单元的加权长度;

根据路径单元的长度与热度进行综合,计算路径单元的加权长度。具体的计算方法可参见下文,总的来说,需要将根据路径单元的热度与路径单元的实际长度综合后得到加权长度,再将加权长度用于运货代价的计算中。每个路径单元的实际长度通常是固定的,而一个路径单元的热度越大,该路径单元的加权长度也会越大。

S3:按照所述路径单元的加权长度,计算所述运货计划的运货总代价,所述运货总代价为执行所述运货计划消耗的各目标忙碌机器人的运货代价之和。

按照S2中得到的路径单元的加权长度,计算各个运货计划对应的运货总代价。需要说明的是,路径单元的加权长度并不是计算运货总代价的唯一要素,但一定是计算运货总代价的必要要素。计算一个运货计划的运货总代价,需要计算其中每个目标忙碌机器人执行各自的目标运货任务的运货代价后求和。对每个运货计划重复以上计算步骤,即可得到每个运货计划的运货总代价。

在前述实施例的基础上,图4还展示了步骤S2中计算路径单元的加权长度的一种较优的计算方法,包括:

S201、统计所述路径单元在目标时间段内经过的仓储机器人数量;

统计该路径单元在最近一段时间内经过的仓储机器人数量,将这段时间记为目标时间段。

S202、根据所述在所述目标时间段内所述路径单元通过的仓储机器人数量,计算所述路径单元的热度,

根据该路径单元最近一段时间内经过的仓储机器人数量,计算该路径单元的热度,在单位时间内经过路径单元的仓储机器人数量越多,对应的路径单元的热度更高。

S203、综合所述路径单元的长度与热度,得到所述路径单元的加权长度。

一个路径单元的热度表示该路径单元的繁忙程度,经过繁忙程度更高的路径单元更加困难,相当于经过的长度更长。因此,本申请的综合路径单元的长度与热度,得到路径单元的加权长度来表示经过该路径单元需要的成本。

可选地,本申请还提供了展示了步骤S2中路径单元的加权长度的另一种的计算方法,具体请参阅图6,该方法包括:

S211、获取在目标时间段开始时所述路径单元的历史热度;

获取一段时间之前路径单元的热度,记为路径单元的历史热度。例如目标时间段是10分钟,那么获取的历史热度就是该路径单元10分钟前的热度。

S212、根据所述目标时间段的长度,计算所述路径单元的热度衰减值;

根据历史热度的更新时刻与当前时刻的差值,计算路径单元的热度衰减值。每经过一段时间,路径单元就会产生一定的热度衰减值,目标时间段的长度越长,热度衰减值就越大。

S213、根据所述在目标时间段内所述路径单元通过的仓储机器人数量,计算所述路径单元的热度增加值;

根据该路径单元最近一段时间内经过的仓储机器人数量,计算该路径单元的热度,在单位时间内经过路径单元的仓储机器人数量越多,对应的路径单元的热度更高。

S214、将所述历史热度与所述热度衰减值、热度增加值综合计算,得到所述路径单元的热度。

在路径单元的历史热度的基础上,综合热度衰减值和热度增加值,得到路径单元现在的热度。一种较为简单的计算方法是,直接使用历史热度减去热度衰减值,再加上热度增加值,得到路径单元的热度。本领域技术人员还可以采用其他计算方法将以上三者进行综合,具体此处不作限定。

在一些具体实施例中,运货代价的计算可以加入优先度作为其中的一个要素进行计算。例如,某目标忙碌机器人确认执行目标运货任务需要经过的路径单元消耗的基础代价为100,且目标运货任务的优先级较高,具有1.5的优先系数,因此目标忙碌机器人执行该目标运货任务的运货代价为100*1.5=150。这样一来,忙碌机器人在分配到优先级较高的运货任务时,会更快地使目标运货计划的运货总代价达到预设代价阈值的要求,让目标运货计划更早地被调度系统执行。可选地,目标运货任务优先系数与所述目标运货任务分配后经过的时间长度呈正相关,如果一个目标运货任务长时间未被执行,其优先级也会略微上调,避免某些运货任务被长时间积压。

对应于上述仓储机器人的调度方法,请参阅图6,本申请还出示了一种仓储机器人的调度系统,该调度系统主要包括:

接收单元601,用于接收目标类型的运货任务;

第一关联单元602,用于将所述运货任务关联至所述空闲机器人中运货代价最低的目标空闲机器人,并将所述目标空闲机器人标记为忙碌机器人;

选择单元603,用于在各个所述忙碌机器人中,选择关联的运货任务符合所述目标类型的目标忙碌机器人;

第一确定单元604,用于将所述目标忙碌机器人关联的运货任务确定为目标运货任务;

第二关联单元605,用于多次将各个目标运货任务分别与各个目标忙碌机器人进行一一关联,得到多个运货计划,其中每个运货计划用于表示所有目标忙碌机器人与所有目标运货任务的一种关联结果;

计算单元606,用于根据每个所述运货计划中目标忙碌机器人与目标运货任务的关联关系,计算每个所述运货计划的运货总代价;

第二确定单元607,用于将运货总代价最低的运货计划确定为目标运货计划。

请参阅图7,计算机设备700可以包括一个或一个以上中央处理器(centralprocessing units,CPU)701和存储器705,该存储器705中存储有一个或一个以上的应用程序或数据。其中,存储器705可以是易失性存储或持久存储。存储在存储器705的程序可以包括一个或一个以上模块,每个模块可以包括对仓储机器人的调度系统中的一系列指令操作。更进一步地,中央处理器701可以设置为与存储器705通信,在计算机设备700上执行存储器705中的一系列指令操作。计算机设备700还可以包括一个或一个以上电源702,一个或一个以上有线或无线网络接口703,一个或一个以上输入输出接口704,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。该中央处理器701可以执行前述图1至5任一所示实施例的对应操作,具体此处不再赘述。

本申请实施例还提供了一种存储介质,该存储介质中存储有指令,当该指令在计算机上运行时,使得计算机执行如前述图1至图5任一实施例对应的仓储机器人的调度方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

相关技术
  • 一种仓储机器人的调度方法及相关设备
  • 料箱出库方法、装置、调度设备、机器人及仓储系统
技术分类

06120112706822