[0065] 例如,侧叉车的第一单车普通任务量阈值T01,侧叉车的第二单车普通任务量阈值T02;举升机器人的第一单车普通任务量阈值T11,举升机器人的第二单车普通任务量阈值T12。
[0066] 那么,第一单车普通任务量阈值T1可以包括侧叉车的第一单车普通任务量阈值T01和举升机器人的第一单车普通任务量阈值T11。第二单车普通任务量阈值T2可以包括叉车的第二单车普通任务量阈值T02和举升机器人的第二单车普通任务量阈值T12。
[0067] 当区域内实际的单车普通任务量小于T1时,表明本区域的车辆会支援其他任务较重的区域。当区域内实际的单车普通任务量大于T2时,表明其他任务较轻的区域车辆会支援本区域,或者说,本区域的车辆不会支援其他任务较重的区域。
[0068] 可以理解的是,也可以根据实际需求设置各区域的处理优先级,在车辆调度过程中,将各区域的处理优先级作为一个调度因素,决定车辆的目标区域,具体设定方式本申请实施例在此不做限定。
[0069] (4)搬运任务(或称“出入库任务”)的任务类型可以分为紧急任务和普通任务,由此不同任务类型的单车任务量可以分为紧急任务对应的单车紧急任务量和普通任务对应的单车普通任务量。
[0070] 具体的,可以预先配置不同搬运任务的优先级,将高优先级的搬运任务确定为紧急任务,低优先级的搬运任务确定为普通任务;
[0071] 或者,将超时的搬运任务或将即将超时(当前时间与规定完成时间的时长不大于预设时长)的搬运任务确定为紧急任务,将当前时间与规定完成时间大于预设时长的搬运任务确定为普通任务。
[0072] 或者,可以将配置优先级的搬运任务确定为紧急任务,将未配置优先级的搬运任务确定为普通任务。
[0073] 本申请实施例提供的仓储车辆的调度方法主要包括车辆区域调度,还可以包括区域内的任务分配,侧叉车和举升机器人在车辆区域调度上基本一致,但区域内的任务分配不同。
[0074] 需要说明的是,侧叉车在执行上架任务中,以上架库存箱接驳点(对接点)最近的高层空货位作为上架目的地。
[0075] 侧叉车在执行下架任务中,以下架库存箱所在库位最近的一层接驳点(如地面)作为下架目的地。
[0076] 以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0077] 图2为本申请实施例提供的一种仓储车辆的调度方法的流程示意图。如图2所示,该方法应用在车辆调度中心中,该方法可以包括:
[0078] 步骤S210、实时获取仓储内各区域的车辆状态,并根据车辆状态确定目标车辆。
[0079] 车辆状态可以包括工作状态和空闲状态。
[0080] 具体实施中,可以将车辆状态处于空闲状态的车辆确定为目标车辆。
[0081] 或者,可以将车辆状态处于空闲状态,且车辆剩余电量满足预设电量阈值的车辆确定为目标车辆。其中,预设电量阈值可以是根据实际需要设定的电量值,也可以是能够使车辆完成预设单车任务量(如至少两个单车任务量)的电量值。
[0082] 步骤S220、针对目标车辆,基于所有区域内不同任务类型的单车任务量,确定目标车辆对应的目标区域。
[0083] 步骤S230、控制目标车辆在目标区域执行作业任务。
[0084] 具体实施中,若目标车辆已被分配区域中有紧急任务,则控制目标车辆在已被分配的区域中获取紧急任务并执行作业任务;
[0085] 若目标车辆已被分配区域中没有紧急任务,且若目标车辆已被分配区域中单车普通任务量大于第一单车普通任务量阈值,则控制目标车辆在已被分配的区域中获取普通任务并执行作业任务。
[0086] 在一些实施例中,上述步骤S220可以实时检测是否为目标车辆分配区域,即确定目标车辆是否已被分配区域,包括以下两种情况:
[0087] 情况(1),目标车辆已被分配区域,此时可根据目标车辆已被分配区域中是否有紧急任务和/或目标车辆已被分配区域中的单车普通任务量,确定目标区域;
[0088] 具体的,若目标车辆已被分配区域中有紧急任务或者单车普通任务量大于第一单车普通任务量阈值,则将该目标车辆已被分配区域确定为目标区域;
[0089] 若目标车辆已被分配区域中没有紧急任务,且单车普通任务量小于或等于第一单车普通任务量阈值,则基于配置的各区域的最大车辆数要求,从所有区域中查找未达到相应最大车辆数的至少一个区域作为待选区域;
[0090] 之后,根据待选区域的单车紧急任务量和单车普通任务量,确定目标车辆对应的目标区域。
[0091] 情况(2),目标车辆未被分配区域,此时可根据所有区域中各区域是否有紧急任务和/或各区域单车普通任务量,确定目标区域。
[0092] 具体的,基于配置的各区域的最大车辆数要求,从所有区域中查找未达到相应最大车辆数要求的至少一个区域作为待选区域;
[0093] 之后,根据待选区域的单车紧急任务量和单车普通任务量确定目标车辆对应的目标区域。
[0094] 基于上述实施例,对于根据待选区域的单车紧急任务量和单车普通任务量确定目标车辆对应的目标区域的步骤,具体可以包括:
[0095] 将存在紧急任务,且紧急任务对应的单车紧急任务量满足预设紧急任务条件的待选区域,确定为目标区域;
[0096] 其中,为了提高调度的合理性,预设紧急任务条件可以为单车紧急任务量最大,且该单车紧急任务量大于单车紧急任务量阈值T;或者,预设紧急任务条件可以为区域处理优先级最大,且相应单车紧急任务量大于单车紧急任务量阈值T,具体可根据实际需求进行确定,本申请实施例在此不做限定。
[0097] 若待选区域均不存在紧急任务,或均不满足预设紧急任务条件时,将存在普通任务,且普通任务对应的单车普通任务量满足预设普通任务条件的待选区域确定为所述目标区域;
[0098] 其中,为了提高调度的合理性,预设普通任务条件可以为距离目标车辆最近,且单车普通任务量大于第二普通任务量阈值T2。或者,单车普通任务量大于第二普通任务量阈值T2;或者,预设普通任务条件可以为区域处理优先级最大、且相应单车普通任务量大于单车紧急任务量阈值T。或者,预设普通任务条件可以为区域处理优先级最大、距离目标车辆最近,且相应单车普通任务量大于单车紧急任务量阈值T,具体可根据实际需求进行确定,本申请实施例在此不做限定。
[0099] 进一步的,在确定目标区域过程中,在任一区域均不存在紧急任务,或均不满足预设紧急任务条件时,若任一区域均不存在普通任务,则确定目标车辆的调度状态为不执行调度状态,即表明此时未确定出目标区域,目标车辆仍处于原区域;
[0100] 或者,在任一区域均不存在紧急任务,或均不满足预设紧急任务条件时,若任一区域内存在的普通任务对应的单车普通任务量均不满足预设普通任务条件,则确定目标车辆的调度状态为不执行调度状态,即表明此时未确定出目标区域,目标车辆仍处于原区域。
[0101] 在一个具体实施例中,如图3所示,该仓储车辆的调度方法可以包括:
[0102] 步骤1、判断处于空闲状态的车辆是否已分配区域,已分配区域,则转到步骤2,否则转到步骤11。
[0103] 步骤2、判断本区域是否有紧急任务,有紧急任务则转到步骤3,否则转到步骤5;
[0104] 步骤3、获取紧急任务,执行步骤4;
[0105] 步骤4、执行所在区域内车辆的任务分配流程,并结束;
[0106] 车辆的任务分配流程为侧叉车/举升机器人的任务分配流程。
[0107] 步骤5、评估本区域的单车普通任务量,转到步骤6;
[0108] 步骤6、判断本区域单车普通任务量<第一普通任务量阈值,若小于则转到步骤7,否则转到步骤4;
[0109] 步骤7、判断是否存在第一目标区域,如果存在转到步骤8,否则转到步骤9;
[0110] 第一目标区域是指满足未达到区域最大车辆数、单车紧急任务量最大且单车紧急任务量>单车紧急任务量阈值T的区域。
[0111] 步骤8、将车辆调度至该第一目标区域,并将该第一目标区域作为该车辆的所在区域,转到步骤4,以执行所在区域内车辆的任务分配流程,并结束;
[0112] 步骤9、判断是否存在第二目标区域,如果存在转到步骤10,否则转到步骤4;
[0113] 第二目标区域是指满足未达到区域最大车辆数、距离该车辆距离最近,且单车普通任务量>普通任务量阈值T2的区域。
[0114] 步骤10、将车辆调度至该第二目标区域,并将该第二目标区域作为该车辆的所在区域,转到步骤4,以执行所在区域内车辆的任务分配流程,并结束;
[0115] 步骤11、判断各区域中是否有紧急任务,有紧急任务则转到步骤12,否则转到步骤15;
[0116] 步骤12、评估各区域的单车紧急任务量,转到步骤13;
[0117] 步骤13、判断是否存在第一目标分配区域,如果存在转到步骤14,否则转到步骤15;
[0118] 第一目标分配区域是指满足未达到区域最大车辆数、单车紧急任务量最大,且单车紧急任务量>单车紧急任务量阈值T的区域。
[0119] 步骤14、将车辆分配至第一目标分配区域,并转到步骤2;
[0120] 步骤15、评估各区域的单车普通任务量,并转到步骤16;
[0121] 步骤16、将车辆分配至第二目标分配区域,并转到步骤2;
[0122] 第二目标分配区域是指满足未达到区域最大车辆数,且单车普通任务量最大的区域。
[0123] 进一步的,在执行完车辆的区域调度后,对于调度完的目标车辆需要执行以下的任务分配方法,包括侧叉车的任务分配方法和举升机器人的任务分配方法。
[0124] A、如图4所示,侧叉车的任务分配方法,包括:
[0125] 步骤41、判断高层货架是否有空接驳位,如果有则转到步骤42,否则转到步骤45;
[0126] 步骤42、判断一层货架是否有空接驳位,如果有空接驳位转到步骤43,否则转到步骤44;
[0127] 步骤43、获取本区域内与本车辆距离最近的上架任务或下架任务,并执行,结束;
[0128] 步骤44、获取本区域内与本车辆距离最近的上架任务,并执行,结束;
[0129] 步骤45、判断一层货架是否有空接驳位,如果有转到步骤46,否则结束;
[0130] 步骤46、获取本区域内与本车距离最近的下架任务,并执行,结束。
[0131] B、如图5所示,举升机器人的任务分配方法,包括:
[0132] 步骤51、选择距离本车辆最近的入库任务接驳点的入库任务,转到步骤52);
[0133] 步骤52、控制车辆行驶至接驳点,并使其获取入库任务箱,转到步骤53;
[0134] 步骤53、针对所在区域中各出库任务,获取本车辆到各入库任务目的地再到出库任务接驳点的总距离d,转到步骤54;
[0135] 步骤54、控制车辆获取最小d对应的出库任务,并控制车辆执行完获取的任务,结束。
[0136] 与上述方法对应的,本申请实施例还提供一种仓储车辆的调度装置,如图6所示,该装置包括:
[0137] 获取单元610,用于实时获取仓储内各区域的车辆状态;
[0138] 确定单元620,用于根据所述车辆状态确定目标车辆;以及,针对目标车辆,基于所有区域内不同任务类型的单车任务量,确定目标车辆对应的目标区域;
[0139] 控制单元630,用于控制所述目标车辆在所述目标区域执行作业任务。
[0140] 本申请上述实施例提供的仓储车辆的调度装置的各功能单元的功能,可以通过上述各方法步骤来实现,因此,本申请实施例提供的仓储车辆的调度装置中的各个单元的具体工作过程和有益效果,在此不复赘述。
[0141] 本申请实施例还提供了一种电子设备,如图7所示,包括处理器710、通信接口720、存储器730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。
[0142] 存储器730,用于存放计算机程序;
[0143] 处理器710,用于执行存储器730上所存放的程序时,实现如下步骤:
[0144] 实时获取仓储内各区域的车辆状态,根据所述车辆状态确定目标车辆;
[0145] 针对目标车辆,基于所有区域内不同任务类型的单车任务量,确定目标车辆对应的目标区域;
[0146] 控制所述目标车辆在所述目标区域执行作业任务。
[0147] 上述提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0148] 通信接口用于上述电子设备与其他设备之间的通信。
[0149] 存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non‑Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0150] 上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0151] 由于上述实施例中电子设备的各器件解决问题的实施方式以及有益效果可以参见图2所示的实施例中的各步骤来实现,因此,本申请实施例提供的电子设备的具体工作过程和有益效果,在此不复赘述。
[0152] 在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的仓储车辆的调度方法。
[0153] 在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的仓储车辆的调度方法。
[0154] 本领域内的技术人员应明白,本申请实施例中的实施例可提供为方法、系统、或计算机程序产品。因此,本申请实施例中可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例中可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产品的形式。
[0155] 本申请实施例中是参照根据本申请实施例中实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0156] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0157] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0158] 尽管已描述了本申请实施例中的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例中范围的所有变更和修改。
[0159] 显然,本领域的技术人员可以对本申请实施例中实施例进行各种改动和变型而不脱离本申请实施例中实施例的精神和范围。这样,倘若本申请实施例中实施例的这些修改和变型属于本申请实施例中权利要求及其等同技术的范围之内,则本申请实施例中也意图包含这些改动和变型在内。