机器人充电分配方法、装置、设备、系统及存储介质与流程

文档序号:23340789发布日期:2020-12-18 16:36阅读:148来源:国知局
机器人充电分配方法、装置、设备、系统及存储介质与流程

本公开涉及智能仓储领域,尤其涉及一种机器人充电分配方法、装置、设备、系统及存储介质。



背景技术:

随着智能仓储技术的不断发展,社会对仓储的需求也在不断增加,机器人能够更加高效地实现仓库内货物的搬运和拣选,从而有效降低仓储成本。

为了实现机器人的正常工作,需要配置充电桩为机器人提供充电功能。目前,仓库中的机器人和充电桩是一对一的绑定关系,即每个机器人配置一个充电桩。当机器人需要充电的时候,直接回预先绑定的充电桩充电即可。

但是,在机器人数量很多的情况下,需要配置多个充电桩,不同的充电桩的位置不同。机器人回去充电时,只能回到自己绑定的充电桩,可能要走很远的路程,导致回去充电所花时间较久,整体作业效率较低。



技术实现要素:

本公开实施例提供一种机器人充电分配方法、装置、设备、系统及存储介质,用于解决机器人去充电的效率较低的技术问题。

第一方面,本公开实施例提供一种机器人充电分配方法,包括:

获取待充电的机器人的状态信息以及多个充电位的状态信息;其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项;

根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位;

指示所述机器人去分配到的充电位进行充电。

在一种可能的设计中,所述方法还包括:

获取机器人在自身电量信息低于第一电量阈值时发送的充电请求,确定发送所述充电请求的机器人为所述待充电的机器人;和/或,

获取仓库内所有机器人的电量信息,根据所述所有机器人的电量信息和预设的充电时机策略,确定待充电的机器人。

在一种可能的设计中,根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位,包括:

若所述多个充电位中存在空闲的充电位,则将距离所述机器人最近的充电位分配给所述机器人;

若所述多个充电位中不存在空闲的充电位,则在已预约或占用充电位的机器人中,查找符合预设条件的机器人,与所述待充电的机器人进行置换。

在一种可能的设计中,根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位,包括:

对于每一充电位,根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的预估成本;

根据各个充电位对应的预估成本,确定分配给所述机器人的充电位。

在一种可能的设计中,根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的预估成本,包括:

根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的距离成本、占用成本和充电置换成本;

根据所述距离成本、占用成本和充电置换成本的加权和,确定将所述充电位分配给所述机器人的预估成本。

在一种可能的设计中,根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的距离成本、占用成本和充电置换成本,包括:

根据所述充电位与所述机器人之间的距离,计算距离成本;其中,所述充电位与所述机器人之间的距离与所述距离成本为正相关关系;

根据所述充电位是否处于被占用的状态,计算占用成本;其中,所述充电位被占用时对应的占用成本大于被预约或者空闲时对应的占用成本;

根据所述待充电的机器人的电量信息以及预约或者占用所述充电位的机器人的电量信息,计算充电置换成本;其中,所述预约或者占用所述充电位的机器人与所述待充电的机器人的电量信息之间的差值与所述充电置换成本为负相关关系。

在一种可能的设计中,根据各个充电位对应的预估成本,确定分配给所述机器人的充电位,包括:

在满足分配条件的充电位中,选择预估成本最低的充电位分配给所述机器人;

其中,所述分配条件包括:所述充电位处于空闲的状态;或者,所述充电位处于被预约或被占用的状态,且预约或者占用所述充电位的机器人的电量信息与所述待充电的机器人的电量信息的差值大于第二电量阈值,所述预约或者占用所述充电位的机器人的电量信息高于第三电量阈值。

在一种可能的设计中,所述方法还包括:

若分配给所述待充电的机器人的充电位为被预约或被占用的充电位,则查找与被置换出的机器人距离最近的空闲的休息区,将查找到的所述休息区分配给所述被置换出的机器人。

在一种可能的设计中,所述方法还包括:

若不存在满足分配条件的充电位,则将与所述待充电的机器人距离最近的空闲的休息区分配给所述机器人。

在一种可能的设计中,在所述待充电的机器人有多个时,根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位,包括:

建立充电位列表和空闲休息区列表;其中,所述充电位列表包括所述多个充电位,所述空闲休息区列表包括至少一空闲的休息区;

将全部待充电的机器人按照电量信息由低到高排序,得到机器人优先级列表;

根据所述充电位列表、所述空闲休息区列表、所述机器人优先级列表中的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人优先级列表中的机器人分配充电位或休息区。

在一种可能的设计中,根据所述充电位列表、所述空闲休息区列表、所述机器人优先级列表中的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人优先级列表中的机器人分配充电位或休息区,包括:

重复执行如下步骤,直至所述机器人优先级列表为空或者机器人无法分配到充电位或休息区:

从所述机器人优先级列表中选择排序第一的机器人,根据所述机器人的状态信息以及所述充电位列表中的各个充电位的状态信息,为所述机器人分配充电位;

若所述机器人分配到充电位,则将所述机器人从所述机器人优先级列表中删除,将分配给所述机器人的充电位从所述充电位列表中删除;

若所述机器人未分配到充电位,则从空闲休息区列表中选择距离所述机器人最近的空闲的休息区分配给所述机器人,并将所述机器人从所述机器人优先级列表中删除,将分配给所述机器人的休息区从所述空闲休息区列表中删除。

在一种可能的设计中,所述方法还包括:

若不存在可分配给机器人的充电位或休息区,则为所述机器人分配临时停靠点;

其中,所述临时停靠点为仓库内除充电区、休息区和出入库点以外的任意位置。

在一种可能的设计中,所述方法还包括:

在获取到紧急作业任务时,查找当前空闲的机器人;

若不存在空闲的机器人,则调度正在充电的机器人执行所述紧急作业任务。

第二方面,本公开实施例提供一种机器人充电分配装置,包括:

获取模块,用于获取待充电的机器人的状态信息以及多个充电位的状态信息;其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项;

分配模块,用于根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位;

指示模块,用于指示所述机器人去分配到的充电位进行充电。

第三方面,本公开实施例提供一种控制设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;

其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述控制设备执行如第一方面任一项所述的方法。

第四方面,本公开实施例提供一种仓储系统,包括第三方面所述的控制设备以及机器人;

所述机器人用于根据所述控制设备的指示,移动至分配到的充电位进行充电。

第五方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面任一项所述的方法。

本公开实施例提供的机器人充电分配方法、装置、设备、系统及存储介质,通过获取待充电的机器人的状态信息以及多个充电位的状态信息,其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项,根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位,并指示所述机器人去分配到的充电位进行充电,能够实现根据多个充电位的状态为当前待充电的机器人分配合适的充电位,从而减少机器人去充电的时间,提高机器人的整体作业效率,有利于节约成本和提高机器人的调度效率,并且设置被预约的状态也可以进一步提高分配的精准度。

附图说明

为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本公开实施例提供的一种应用场景示意图;

图2为本公开实施例提供的一种机器人充电分配方法的流程示意图;

图3为本公开实施例提供的一种充电位的状态示意图;

图4为本公开实施例提供的另一种机器人充电分配方法的流程示意图;

图5为本公开实施例提供的另一种应用场景示意图;

图6为本公开实施例提供的一种机器人充电分配方法中为多个机器人分配充电位的流程示意图;

图7为本公开实施例提供的一种机器人充电分配装置的结构示意图;

图8为本公开实施例提供的一种控制设备的结构示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。

图1为本公开实施例提供的一种应用场景示意图。如图1所示,在仓储系统中,可以设置多个机器人和多个充电位。其中,所述多个充电位可以包括充电桩和/或无线充电区。所述充电桩通过有线的方式对机器人进行充电,所述无线充电区可以对机器人进行无线充电。

每个充电位可以容纳一个机器人进行充电。所述充电位的位置、大小可以根据实际需要来设置。多个充电位可以紧邻设置,也可以分散设置。所述充电位的总数量可以大于、等于或小于所有机器人的数量。

机器人、充电位均可以与控制设备进行通信,所述控制设备可以为服务器、终端设备等任意能够对机器人进行调度的设备。

为了解决机器人去充电的效率较低的问题,本公开实施例可以获取待充电的机器人的电量、位置等信息以及多个充电位的状态如空闲、被预约、被占用等,并根据这些信息来为机器人分配充电位,实现了对机器人充电的调度,无需机器人与充电位一一绑定,提高了充电灵活性和效率,提升了整体作业效果。

下面结合附图,对本公开的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

图2为本公开实施例提供的一种机器人充电分配方法的流程示意图。本实施例中方法的执行主体可以为控制设备。如图2所示,本实施例中的机器人充电分配方法,可以包括:

步骤201、获取待充电的机器人的状态信息以及多个充电位的状态信息;其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项。

所述机器人的状态信息中,电量信息可以是指所述机器人当前剩余的电量信息,位置信息可以是指所述机器人当前所在的位置信息。本步骤中提到的所述待充电的机器人,可以通过多种方式来确定。

一个示例中,控制设备可以获取机器人在自身电量信息低于第一电量阈值时发送的充电请求,确定发送所述充电请求的机器人为所述待充电的机器人。

具体的,所述第一电量阈值可以根据实际需要来设置,例如可以为20%,机器人可以在电量信息低于20%时,主动向控制设备发起充电请求,控制设备将所述机器人设置为待充电的机器人,并为其分配充电位,这种方式能够快速确定待充电的机器人,效率较高。

另一示例中,控制设备可以获取仓库内所有机器人的电量信息,根据所述所有机器人的电量信息和预设的充电时机策略,确定待充电的机器人。

具体的,控制设备可以对仓储系统内的所有机器人进行监控,并根据预设的充电时机策略从中确定待充电的机器人。这种情况下,可以不必等到某一机器人的电量信息低于一定的阈值才指示其去充电。

一个简单的例子是,当前共有10个机器人和5个充电位,10个机器人的电量都在50%左右,均没有达到必须要充电的程度,但是,考虑到一段时间后,10个机器人的电量可能会先后下降到一定程度,导致充电位不够用,因此,可以让其中部分机器人先去充电,以避免一段时间后充电位紧张的情况。通过这种方式可以合理安排部分机器人提前回去充电,提供更大的总体产能。

本步骤中,所述多个充电位可以仅包含充电桩,也可以仅包含无线充电区,也可以既包含充电桩又包含无线充电区。充电位可以有三种状态:空闲、被预约、被占用。图3为本公开实施例提供的一种充电位的状态示意图。如图3所示,充电位被预约可以是指:所述充电位已经被某机器人预约(如已经被分配给某个机器人),但是机器人还在来充电的路上;充电位被占用可以是指:所述充电位当前已经被某机器人占用,机器人正在该充电位进行充电;充电位空闲可以是指:所述充电位既没有被预约,也没有被占用。

所述充电位的状态信息可以通过多种方式来确定。对于被占用的状态,所述机器人可以在开始充电后,上报充电状态,从而使得控制设备可以确定相应的充电位处于被占用的状态;或者,充电位可以设置有检测部件,当检测到开始充电后,可以将充电状态上报给控制设备;或者,控制设备也可以根据机器人和充电位的当前位置是否重合,确定充电位是否处于被占用的状态。

对于被预约的状态,若已经为某一充电位分配了机器人,但是机器人还没有赶到,充电位当前还处于未被占用的状态,则可以确定所述充电位处于被预约的状态。若某一充电位既没有被占用,也没有被预约,则可以认为处于空闲状态。

步骤202、根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位。

在获取到所述待充电的机器人的状态信息以及所述多个充电位的状态信息后,可以根据获取到的信息为机器人分配充电位。具体的控制策略本实施例不作限制。

可选的,可以先确定多个充电位中是否有空闲的充电位。若所述多个充电位中存在空闲的充电位,则根据所述机器人的位置信息,将距离所述机器人最近的充电位分配给所述机器人。

若所述多个充电位中不存在空闲的充电位,则可以考虑从已预约或占用充电位的机器人中选择一个机器人与所述待充电的机器人进行置换。具体的,可以在已预约或占用充电位的机器人中,查找符合预设条件的机器人,与所述待充电的机器人进行置换。

例如,在充电位已经被预约的情况下,若预约该充电位的机器人的电量信息高于所述待充电的机器人的电量信息,则用所述待充电的机器人替换之前预约的机器人,将该充电位分配给所述待充电的机器人。

又例如,在充电位已经被占用的情况下,置换所需要的条件可以更加苛刻一点,以尽量减少置换的成本。只有占用该充电位的机器人的电量信息与所述待充电的机器人的电量信息之间的差值大于一定的值,才能将所述待充电的机器人替换已经占用该充电位的机器人。

本公开实施例中,在根据充电位的状态信息为机器人分配充电位时,状态信息不仅可以包括空闲和被占用,还可以包括被预约,从而将被预约的充电位与空闲和被占用的充电位区分开来,提高为机器人分配充电位的精准度。

步骤203、指示所述机器人去分配到的充电位进行充电。

在为机器人分配了充电位之后,可以向所述机器人发送充电指令,所述充电指令可以包括分配给所述机器人的充电位的标识或位置信息,从而使得所述机器人可以根据所述充电指令前往分配到的充电位进行充电。

在实际应用中,可以在仓储系统内设置多个机器人和多个充电位,并利用本实施例所述的方法来实现机器人的充电分配。由于可以根据待充电的机器人和多个充电位的状态信息实时为机器人分配充电位,因此,充电位和机器人不必处于一对一绑定的状态。机器人不必每次回到同一个固定的充电位进行充电,而是可以根据当前实际情况选择合适的充电位进行充电,有效提高了机器人的整体作业效率。

此外,由于充电位和机器人不必一对一绑定,因此,充电位的数量可以少于机器人的数量,从而有效减少物料成本和实施成本,还可以减少对仓库的可用面积的占用,提高机器人实际可用的调度场地,进而提高调度效率,进一步提高系统的整体效率。

本实施例提供的机器人充电分配方法,通过获取待充电的机器人的状态信息以及多个充电位的状态信息,其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项,根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位,并指示所述机器人去分配到的充电位进行充电,能够实现根据多个充电位的状态为当前待充电的机器人分配合适的充电位,从而减少机器人去充电的时间,提高机器人的整体作业效率,有利于节约成本和提高机器人的调度效率,并且设置被预约的状态也可以进一步提高分配的精准度。

图4为本公开实施例提供的另一种机器人充电分配方法的流程示意图。如图4所示,所述方法包括:

步骤401、获取待充电的机器人的状态信息以及多个充电位的状态信息;其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项。

本实施例中,步骤401的具体实现方式可以参见前述实施例,此处不再赘述。

步骤402、对于每一充电位,根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的预估成本。

其中,对于任一充电位,所述预估成本体现了机器人前往该充电位进行充电所需要的成本。在充电位为空闲状态时,预估成本较小,在充电位为被预约或者被占用的状态时,预估成本较大。

具体的,可以根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的距离成本、占用成本和充电置换成本,并根据所述距离成本、占用成本和充电置换成本的加权和,确定将所述充电位分配给所述机器人的预估成本。

其中,距离成本可以体现机器人移动至充电位需要的成本,占用成本可以体现让一个机器人离开已占用的充电位所需要的成本,充电置换成本可以体现用待充电的机器人置换已经预约或占用所述充电位的机器人带来的电量方面的收益。

通过以上所述的距离成本、占用成本和充电置换成本,可以在计算每个充电位对应的预估成本时,考虑距离、占用状态、电量差异等方面,从而全面地实现对充电位的预估成本的分析,保证为机器人分配充电位的效益。

可选的,计算将所述充电位分配给所述机器人的距离成本、占用成本和充电置换成本,可以通过如下的方式来实现。

根据所述充电位与所述机器人之间的距离,计算距离成本。其中,所述充电位与所述机器人之间的距离与所述距离成本可以为正相关关系。距离越长,机器人前往充电位需要的时间和消耗的能量越多,因此距离成本可以越大,反之则距离成本越小。

根据所述充电位是否处于被占用的状态,计算占用成本。其中,所述充电位被占用时对应的占用成本大于被预约或者空闲时对应的占用成本。一个充电位被占用后,如果再将该充电位分配给其它机器人,那么将原机器人挤出去的成本比较大,而充电位还未被占用时,例如处于被预约或者空闲状态,那么将该充电位分配给其它机器人的成本会相对小一些。因此,被占用状态对应的占用成本可以大于被预约或者空闲状态对应的占用成本。

被预约状态对应的占用成本与空闲状态对应的占用成本可以相同,也可以不同。可选的,被预约状态对应的占用成本可以大于空闲状态对应的占用成本,因为机器人已经在来的路上,此时让机器人放弃已经预约的充电位也需要一定的成本。

进一步的,还可以根据预约所述充电位的机器人与所述充电位之间的距离来确定所述占用成本,距离越近,说明机器人马上要达到预约的充电位,此时再让机器人离开就需要更大的成本。在其它信息相同的情况下,被置换的机器人距离充电位越近,那么置换它需要的成本就越高,因此根据预约的机器人与充电位的距离确定所述充电位的占用成本,能够将很久之后才被占用的充电位优先于马上被占用的充电位分配给待充电的机器人,减少全部机器人们的整体能量消耗。

根据所述待充电的机器人的电量信息以及预约或者占用所述充电位的机器人的电量信息,计算充电置换成本。其中,所述预约或者占用所述充电位的机器人与所述待充电的机器人的电量信息之间的差值与所述充电置换成本可以为负相关关系,因为高的电量差异会带来更大的收益。空闲的充电位对应的充电置换成本可以为0。

本公开实施例中,正相关关系是指,当变量x增大时,变量y也随之增大,即,两个变量的变动方向相同,一个变量x由大到小/由小到大变化时,另一个变量y也由大到小/由小到大变化,那么变量x和变量y可以认为是正相关关系。负相关关系是指,当变量x增大时,变量y随之减小,即,两个变量的变动方向相反,一个变量x由大到小/由小到大变化时,另一个变量y由小到大/由大到小变化,那么变量x和变量y可以认为是负相关关系。

计算上述成本的具体实现策略可以根据实际需要来设置。本公开实施例给出一种计算示例,可以通过如下公式计算预估成本。

cxa=dxa+ox*co+rx*(1-(bcb-bca))*cbc(1)

其中,a代表所述待充电的机器人,x代表正在考虑的充电位。cxa是假设把待充电的机器人a分配给充电位x所产生的预估成本。dxa表示距离成本,通过机器人a与充电位x之间的距离确定。

ox是个二元变量,表示占用成本,值为1表示该充电位已经被某个机器人b占用,值为0表示空闲或者仅仅被预约。系数co表示机器人们需要离开和进入充电位的成本,也就是占用成本的权重。如果多个充电位都被占用了,那么它们对应的占用成本即ox*co是完全相同的。

rx是个二元变量,值为1表示该充电位已经被机器人b预约或者占用,值为0表示空闲。bcb和bca分别表示机器人a和b的电量信息。rx*(1-(bcb-bca))可以表示充电置换成本。系数cbc代表充电置换成本的权重。

一般来讲,如果机器人a的电量信息低于机器人b的电量信息,那么充电位分配给a是优于分配给b的。1减去两者电量信息的差值再乘以权重系数,含义是高的电量差异会带来大的收益(即小的成本),小的电量差异带来高的惩罚(即大的成本)。

从对以上公式进行分析可知,计算的结果会优先选择距离最近的空闲充电位,因为此类充电位完全没有第二项和第三项成本,那么距离最近的空闲充电位就是预估成本最小的。

如果所有的充电位都不是空闲的,那么对于都是被预约的充电位或者都是被占用的充电位来说(所有被预约的充电位的占用成本都一样是0,所有被占用的充电位的占用成本都一样是1),计算结果会倾向于选择那种当前所预约/占用的机器人电量信息比较高的充电位,因为这类充电位的充电置换成本是最小的。

如果当前所预约/占用的机器人的电量信息相同,即充电置换成本相同,那么计算结果会倾向于选择被预约的充电位而非被占用的充电位,因为被预约的充电位有更小的占用成本。

通过以上提供的公式,可以对充电位的空闲、被预约和被占用的状态进行区分,同时结合机器人的电量信息和位置信息,综合确定充电位对应的预估成本,满足不同情况下的充电分配需求,且计算流程简便,有效节约了计算资源,提高系统的处理效率。

步骤403、根据各个充电位对应的预估成本,确定分配给所述机器人的充电位。

可选的,可以从所有充电位中,选择预估成本最低的充电位分配给所述机器人,从而有效减少成本。

此外,还可以设置需要满足一些额外的条件才能完成分配。可选的,根据各个充电位对应的预估成本,确定分配给所述机器人的充电位,可以包括:在满足分配条件的充电位中,选择预估成本最低的充电位分配给所述机器人。

其中,所述分配条件可以包括:所述充电位处于空闲的状态;或者,所述充电位处于被预约或被占用的状态,且预约或者占用所述充电位的机器人的电量信息与所述待充电的机器人的电量信息的差值大于第二电量阈值,所述预约或者占用充电位的机器人的电量信息高于第三电量阈值。

所述第二电量阈值和第三电量阈值例如可以为10%和50%。当前请求充电的机器人和当前预约或占用充电位的机器人的电量信息差异足够明显,且被置换的机器人的电量信息已经达到一定的水平,才能发生置换,否则发生置换的意义不是很大,因为系统不希望置换出来的机器人也是个低电量的、急需充电的机器人,因此设定分配条件可以避免无意义的置换,保证系统有效运转。

步骤404、指示所述机器人去分配到的充电位进行充电。

本实施例中,通过步骤402至步骤403可以实现根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位。在确定充电位后,可以指示机器人前去分配到的充电位进行充电。

本实施例提供的机器人充电分配方法,在候选的多个充电位中,对于每一充电位,根据所述待充电的机器人的状态信息以及所述充电位的状态信息,通过针对多个可选的充电位中的每一充电位,计算将其分配给机器人进行充电的预估成本,并在多个充电位中选择预估成本最小的一个分配给机器人,能够准确、全面地对各个充电位进行分析,从而从多个充电位中选择最优解,有效降低机器人前去充电的成本。

图5为本公开实施例提供的另一种应用场景示意图。如图5所示,在图1所示应用场景的基础上,还可以进一步设置休息区,从而为机器人们分配休息区。

休息区可以是系统的地图上的一个区域,和充电位的区别在于机器人在这个区域只能休息,不能充电。系统内可以设置有一个或多个休息区,每个休息区可以容纳一个机器人进行休息。

可选的,若分配给所述待充电的机器人的充电位为被预约或被占用的充电位,则可以查找与被置换出的机器人距离最近的空闲的休息区,将查找到的所述休息区分配给所述被置换出的机器人。

其中,被置换出的机器人可以是指原来预约或占用所述充电位的机器人。可以在将所述充电位分配新的机器人后立即通知所述被置换出的机器人前往休息区休息,也可以在一定时间后如新的机器人赶到所述充电位后再通知所述被置换出的机器人前往休息区休息,从而最大限度地利用充电位资源。

可选的,在为待充电的机器人分配充电位时,若不存在满足分配条件的充电位,即,既没有空闲的充电位,预约和占用的充电位的机器人的电量信息也不符合上面的条件,则所述待充电的机器人无法被分配到充电位,那么可以将与所述机器人距离最近的空闲的休息区分配给所述待充电的机器人。休息区以共享的方式被多机器人使用,能够有效减少对场地的占用,节省成本。

在实际应用中,由于系统内的机器人数量众多,因此可能会出现需要同时为多个机器人分配充电位的情况。本公开实施例还提供一种通用的机器人充电分配方法,可以对一个或多个机器人进行充电分配,不仅可以包括给需要充电的机器人分配合适的充电位或者休息区,也可以包括给做完任务后空闲的机器人分配合适的充电位或者休息区。也就是说,只要有机器人想要充电或者回家休息,即可调用该方法。

假设系统有n个机器人,m个充电位和k个休息区,其中n、m、k均为正整数,且一般有n=m+k,也支持n>m+k。如何合理管理这n个机器人共享m个充电位和k个休息区,保证所有机器人的正常运转和尽可能提高系统的机器人工作产能就是该机器人充电分配方法的目标。

机器人充电分配方法由控制设备执行,输入给控制设备的信息可以包括:所有充电位和休息区的位置信息,这些一般是静态的,可以在初始化的时候一次性传入;所有需要分配充电位或者休息区的机器人的信息如机器人id、当前电量信息和位置信息等;当前所有充电位的状态信息如空闲、被预约或被占用,若是被预约或被占用,那么给出预约或占用它的机器人的信息如机器人id、当前电量信息以及位置信息;当前所有休息区的状态信息例如空闲或被占用。

控制设备在执行机器人充电分配方法后,输出的信息可以包括:给出每个请求的机器人分配的充电位或者休息区;若分配的充电位已经有机器人预约或占用,那么同时给出被置换的机器人该换去哪个休息区或者是指明其无家可归。

图6为本公开实施例提供的一种机器人充电分配方法中为多个机器人分配充电位的流程示意图。如图6所示,在所述待充电的机器人有多个时,根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位,可以包括:

步骤601、建立充电位列表和空闲休息区列表;其中,所述充电位列表包括所述多个充电位,所述空闲休息区列表包括至少一空闲的休息区。

可选的,所述充电位列表可以包括系统中的所有充电位,无论充电位是空闲、被预约、还是被占用,都纳入充电位列表。空闲休息区列表可以仅包含空闲的休息区,不包含非空闲的休息区。

步骤602、将全部待充电的机器人按照电量信息由低到高排序,得到机器人优先级列表。

其中,待充电的机器人可以包括电量过低需要立刻充电的机器人,也可以包括有回家需求即做完任务需要回去休息的机器人。有回家需求的机器人也可以被分配到充电位进行充电和休息,因此统一称为待充电的机器人。

全部待充电的机器人按照电量信息由低到高排序,电量信息越低,优先级越高。

步骤603、根据所述充电位列表、所述空闲休息区列表、所述机器人优先级列表中的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人优先级列表中的机器人分配充电位或休息区。

具体的,可以根据优先级依次为每个机器人分配充电位或者休息区。

可选的,可以重复执行如下步骤,直至所述机器人优先级列表为空或者机器人无法分配到充电位或休息区:从所述机器人优先级列表中选择排序第一的机器人,根据所述机器人的状态信息以及所述充电位列表中的各个充电位的状态信息,为所述机器人分配充电位;若所述机器人分配到充电位,则将所述机器人从所述机器人优先级列表中删除,将分配给所述机器人的充电位从所述充电位列表中删除;若所述机器人未分配到充电位,则从空闲休息区列表中选择距离所述机器人最近的空闲的休息区分配给所述机器人,并将所述机器人从所述机器人优先级列表中删除,将分配给所述机器人的休息区从所述空闲休息区列表中删除。

具体来说,在根据所述机器人的状态信息以及所述充电位列表中的各个充电位的状态信息,为所述机器人分配充电位时,可以参考前述实施例提供的方案,例如,可以通过公式(1)来计算各个充电位对应的预估成本,并根据预估成本确定分配给所述机器人的充电位。

如果列表里的某个机器人被分配到一个充电位,则把分配到的充电位从充电位列表中删除,因为后面待分配的机器人的电量信息都高于当前请求的机器人,不可能又会置换掉这个分配结果。

如果列表里的某个机器人不能分配到一个充电位,那么就为其分配一个距离最近的空闲的休息区,让机器人在该休息区暂时等待,之后择机继续请求充电。同理,当机器人被分配到一个休息区时,把分配到的休息区从空闲休息区列表中删除。

对一个机器人处理完毕后,无论是分配到充电位、还是分配到休息区,都把所述机器人从机器人优先级列表中删除,然后继续查找当前机器人优先级列表中排序第一的机器人并进行同样的处理。

在实际应用中,充电位和休息区的数量可以是有限的,以尽量减少对场地的占用。因此,可能会出现机器人分配不到充电位,也分配不到休息区的情况。

如果某个机器人既分不到充电位,也分不到休息区,那么可以把该机器人放入无家可归机器人列表中。排在该机器人后面的其它机器人不需要再执行分配的步骤,因为前面的机器人都分不到,后面的其它机器人也不可能分到,因此,可以将后面的其它机器人全部直接放入所述无家可归机器人列表。在一段时间后,可以为无家可归机器人列表中的机器人继续尝试分配充电位或休息区。

本实施例提供的为机器人分配充电位的方法,可以建立充电位列表、空闲休息区列表和机器人优先级列表,并按照机器人的优先级,通过所述充电位列表和所述空闲休息区列表,为各个机器人分配充电位或休息区,能够有效提高分配的效率,保证低电量的机器人优先被充电。

在上述各实施例提供的技术方案的基础上,可选的是,若不存在可分配给机器人的充电位或休息区,则为所述机器人分配临时停靠点;其中,所述临时停靠点为仓库内除充电区、休息区和出入库点以外的任意位置。

具体的,若任意一个机器人既分配不到充电位,也分配不到休息区的,那么可以给该机器人寻找一个合理的临时停靠点,让机器人暂时停靠。合理的临时停靠点的选择宗旨应该是尽量不会影响别的机器人工作。临时停靠点理论上可以是仓库任意位置,但是需要避开已经被占用的区域以及机器人或用户必经的区域,例如出入库点往往需要进行货物的入库、出库操作,因此不适合让机器人停靠。

在实际的仓储系统中,可以根据需要来设置充电位、休息区的位置和数量。在一种可选的实现方式中,充电位加上休息区的数量可以等于机器人的数量。这种情况下,当机器人请求充电的时候肯定能分配一个充电位或者休息区。因为休息区不需要准备物理设备,只需要用软件系统配置一下即可,因此休息区的配置不会增加任何成本(包括物料成本,实施成本,维护成本等),同时还可以为无法分配到充电位的机器人提供安全可靠的休息场地。

在另一种可选的实现方式中,充电位加上休息区的数量可以小于机器人的数量。和前一实现方式的区别在于,这种情况下机器人有可能既没有分配到充电位,也没有分配到休息区,而是会分配一个临时停靠点,该临时停靠点的位置可能每次都不一样,可以根据当时系统内其它机器人的状态来确定。

在上述各实施例提供的技术方案的基础上,可选的是,在获取到紧急作业任务时,可以查找当前空闲的机器人,若不存在空闲的机器人,则调度正在充电的机器人执行所述紧急作业任务。

其中,所述紧急作业任务可以是指截止时间距离当前时刻小于一定的时间阈值的作业任务,或者,可以是被用户设置了紧急标记的作业任务。所述作业任务可以是入库任务、出库任务、理库任务等任意需要机器人进行作业的任务。当控制设备接到紧急作业任务时,可以首先查找处于空闲状态的机器人,其中,所述空闲的机器人可以是指既没有在执行任务也没有在进行充电的机器人,优先让空闲的机器人去执行所述紧急作业任务。

若当前不存在空闲的机器人,则可以调度正在充电但未充满的机器人去执行所述紧急作业任务,从而能够将正在充电的机器人纳入分配紧急作业任务的考量范围,提高紧急作业任务的处理效率。

进一步地,在调度正在充电的机器人去执行紧急作业任务时,可以优先调用当前电量信息最大的一个或多个机器人前去执行,从而最大限度地保障紧急作业任务能够被完成。

图7为本公开实施例提供的一种机器人充电分配装置的结构示意图。如图7所示,所述装置可以包括:

获取模块701,用于获取待充电的机器人的状态信息以及多个充电位的状态信息;其中,所述待充电的机器人的状态信息包括所述机器人的电量信息和/或位置信息,所述充电位的状态信息包括空闲、被预约和被占用中的任意一项;

分配模块702,用于根据所述待充电的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人分配充电位;

指示模块703,用于指示所述机器人去分配到的充电位进行充电。

在一个可选的实施方式中,所述获取模块701还用于:

获取机器人在自身电量信息低于第一电量阈值时发送的充电请求,确定发送所述充电请求的机器人为所述待充电的机器人;和/或,

获取仓库内所有机器人的电量信息,根据所述所有机器人的电量信息和预设的充电时机策略,确定待充电的机器人。

在一个可选的实施方式中,所述分配模块702具体用于:

若所述多个充电位中存在空闲的充电位,则将距离所述机器人最近的充电位分配给所述机器人;

若所述多个充电位中不存在空闲的充电位,则在已预约或占用充电位的机器人中,查找符合预设条件的机器人,与所述待充电的机器人进行置换。

在一个可选的实施方式中,所述分配模块702具体用于:

对于每一充电位,根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的预估成本;

根据各个充电位对应的预估成本,确定分配给所述机器人的充电位。

在一个可选的实施方式中,所述分配模块702在根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的预估成本时,具体用于:

根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的距离成本、占用成本和充电置换成本;

根据所述距离成本、占用成本和充电置换成本的加权和,确定将所述充电位分配给所述机器人的预估成本。

在一个可选的实施方式中,所述分配模块702在根据所述待充电的机器人的状态信息以及所述充电位的状态信息,计算将所述充电位分配给所述机器人的距离成本、占用成本和充电置换成本时,具体用于:

根据所述充电位与所述机器人之间的距离,计算距离成本;其中,所述充电位与所述机器人之间的距离与所述距离成本为正相关关系;

根据所述充电位是否处于被占用的状态,计算占用成本;其中,所述充电位被占用时对应的占用成本大于被预约或者空闲时对应的占用成本;

根据所述待充电的机器人的电量信息以及预约或者占用所述充电位的机器人的电量信息,计算充电置换成本;其中,所述预约或者占用所述充电位的机器人与所述待充电的机器人的电量信息之间的差值与所述充电置换成本为负相关关系。

在一个可选的实施方式中,所述分配模块702在根据各个充电位对应的预估成本,确定分配给所述机器人的充电位时,具体用于:

在满足分配条件的充电位中,选择预估成本最低的充电位分配给所述机器人;

其中,所述分配条件包括:所述充电位处于空闲的状态;或者,所述充电位处于被预约或被占用的状态,且预约或者占用所述充电位的机器人的电量信息与所述待充电的机器人的电量信息的差值大于第二电量阈值,所述预约或者占用所述充电位的机器人的电量信息高于第三电量阈值。

在一个可选的实施方式中,所述分配模块702还用于:

若分配给所述待充电的机器人的充电位为被预约或被占用的充电位,则查找与被置换出的机器人距离最近的空闲的休息区,将查找到的所述休息区分配给所述被置换出的机器人。

在一个可选的实施方式中,所述分配模块702还用于:

若不存在满足分配条件的充电位,则将与所述待充电的机器人距离最近的空闲的休息区分配给所述机器人。

在一个可选的实施方式中,在所述待充电的机器人有多个时,所述分配模块702具体用于:

建立充电位列表和空闲休息区列表;其中,所述充电位列表包括所述多个充电位,所述空闲休息区列表包括至少一空闲的休息区;

将全部待充电的机器人按照电量信息由低到高排序,得到机器人优先级列表;

根据所述充电位列表、所述空闲休息区列表、所述机器人优先级列表中的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人优先级列表中的机器人分配充电位或休息区。

在一个可选的实施方式中,所述分配模块702在根据所述充电位列表、所述空闲休息区列表、所述机器人优先级列表中的机器人的状态信息以及所述多个充电位的状态信息,为所述机器人优先级列表中的机器人分配充电位或休息区时,具体用于:

重复执行如下步骤,直至所述机器人优先级列表为空或者机器人无法分配到充电位或休息区:

从所述机器人优先级列表中选择排序第一的机器人,根据所述机器人的状态信息以及所述充电位列表中的各个充电位的状态信息,为所述机器人分配充电位;

若所述机器人分配到充电位,则将所述机器人从所述机器人优先级列表中删除,将分配给所述机器人的充电位从所述充电位列表中删除;

若所述机器人未分配到充电位,则从空闲休息区列表中选择距离所述机器人最近的空闲的休息区分配给所述机器人,并将所述机器人从所述机器人优先级列表中删除,将分配给所述机器人的休息区从所述空闲休息区列表中删除。

在一个可选的实施方式中,所述分配模块702还用于:

若不存在可分配给机器人的充电位或休息区,则为所述机器人分配临时停靠点;

其中,所述临时停靠点为仓库内除充电区、休息区和出入库点以外的任意位置。

在一个可选的实施方式中,所述指示模块703还用于:

在获取到紧急作业任务时,查找当前空闲的机器人;

若不存在空闲的机器人,则调度正在充电的机器人执行所述紧急作业任务。

本实施例提供的装置,可用于执行图1至图6所示方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。

图8为本公开实施例提供的一种控制设备的结构示意图。如图8所示,本实施例的控制设备可以包括:

至少一个处理器801;以及

与所述至少一个处理器通信连接的存储器802;

其中,所述存储器802存储有可被所述至少一个处理器801执行的指令,所述指令被所述至少一个处理器801执行,以使所述控制设备执行如上述任一实施例所述的方法。

可选地,存储器802既可以是独立的,也可以跟处理器801集成在一起。

本实施例提供的控制设备的实现原理和技术效果可以参见前述各实施例,此处不再赘述。

本公开实施例还提供一种仓储系统,包括前述任一实施例所述的控制设备以及机器人;所述机器人用于根据所述控制设备的指示,移动至分配到的充电位进行充电。

本公开实施例提供的仓储系统中,控制设备和机器人的具体工作原理、过程及有益效果可以参见前述实施例,此处不再赘述。

本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如前述任一实施例所述的方法。

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

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

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

上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本公开各个实施例所述方法的部分步骤。

应理解,上述处理器可以是中央处理单元(centralprocessingunit,简称cpu),还可以是其它通用处理器、数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。

总线可以是工业标准体系结构(industrystandardarchitecture,简称isa)总线、外部设备互连(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,简称eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本公开附图中的总线并不限定仅有一根总线或一种类型的总线。

上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。

一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(applicationspecificintegratedcircuits,简称asic)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。

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