调度方法、装置、系统及计算机可读存储介质与流程

文档序号:18902440发布日期:2019-10-18 22:07阅读:142来源:国知局
调度方法、装置、系统及计算机可读存储介质与流程

本发明涉及计算机技术领域,特别涉及一种调度方法、装置、系统及计算机可读存储介质。



背景技术:

现无人仓穿梭车库中,料箱进入货架之前需要先向智能排产系统请求推荐巷道,料箱进入推荐巷道后再向智能排产系统请求推荐储位。确定推荐储位后,再通过提升机和穿梭车运送到达储位。图1示出了无人仓穿梭车库的结构示意图。



技术实现要素:

发明人研究发现,由于智能排产系统中的设备具有不稳定性,且存在人为移动料箱的情况,料箱可能会重复请求巷道,只能排产系统无法判断同一料箱的两条巷道调度任务是重复的,造成智能排产系统重复为料箱推荐巷道出现异常,从而过多的增加了巷道的巷道调度任务数,甚至导致料箱堵住输送线体。

本发明解决的一个技术问题是,如何消除因智能排产系统中设备的不稳定性以及人为移动目标而为目标重复调度巷道的异常情况,保证目标的正常调度,增强了巷道调度过程的鲁棒性。

根据本发明实施例的一个方面,提供了一种调度方法,包括:接收巷道调度任务,巷道调度任务包含目标标识以及巷道调度任务类型标识;检索数据库任务表,确定是否存在相同目标标识、相同巷道调度任务类型标识、并且巷道调度任务状态标识为未处理或巷道调度成功的任务;若存在,丢弃巷道调度任务。

在一些实施例中,该调度方法还包括:若不存在,在巷道调度任务中增加巷道调度任务状态标识,初始化巷道调度任务状态标识为未处理,并将巷道调度任务存储在数据库任务表中;对数据库任务表中巷道调度任务状态标识为未处理的巷道调度任务进行处理;在巷道调度成功的情况下,在数据库任务表中的巷道调度任务中增加相应的调度巷道标识,并将巷道调度任务状态标识由未处理修改为巷道调度成功;在巷道调度失败的情况下,将巷道调度任务状态标识由未处理修改为巷道调度失败。

在一些实施例中,该调度方法还包括:接收储位调度任务,储位调度任务包含目标标识以及储位调度任务类型标识;检索数据库任务表,确定是否存在相同目标标识且巷道调度任务状态标识为巷道调度成功的任务;若存在,在储位调度任务中增加储位调度任务状态标识,初始化储位调度任务状态标识为未处理,并将储位调度任务存储在数据库任务表中;若不存在,丢弃储位调度任务。

在一些实施例中,储位调度任务还包含当前巷道标识;调度方法还包括:利用储位调度任务中的目标标识查询数据库任务表中的巷道调度任务,判断相应的巷道调度任务中调度巷道标识与当前巷道标识是否相同,并将相应的巷道调度任务中巷道调度任务状态标识由巷道调度成功修改为储位调度完成;在不同的情况下,扣减调度巷道的巷道调度任务数,并对储位调度任务进行处理;若处理成功,将储位调度任务状态标识由未处理修改为储位调度成功,并增加调度储位所在储位层的储位调度任务数;若处理失败,将储位调度任务状态标识由未处理修改为储位调度失败。

在一些实施例中,该调度方法还包括:在相同的情况下,对储位调度任务进行处理;若处理成功,将储位调度任务状态标识由未处理修改为储位调度成功,并扣减当前巷道的巷道调度任务数,增加调度储位所在储位层的储位调度任务数;若处理失败,将储位调度任务状态标识由未处理修改为储位调度失败,并扣减当前巷道的巷道调度任务数。

根据本发明实施例的另一个方面,提供了一种调度装置,包括:巷道调度任务接收单元,被配置为接收巷道调度任务,巷道调度任务包含目标标识以及巷道调度任务类型标识;第一数据库任务表检索单元,被配置为检索数据库任务表,确定是否存在相同目标标识、相同巷道调度任务类型标识、并且巷道调度任务状态标识为未处理或巷道调度成功的任务;巷道调度任务处理单元,被配置为若上述任务存在,丢弃巷道调度任务。

在一些实施例中,巷道调度任务处理单元还被配置为:若上述任务不存在,在巷道调度任务中增加巷道调度任务状态标识,初始化巷道调度任务状态标识为未处理,并将巷道调度任务存储在数据库任务表中;对数据库任务表中巷道调度任务状态标识为未处理的巷道调度任务进行处理;在巷道调度成功的情况下,在数据库任务表中的巷道调度任务中增加相应的调度巷道标识,并将巷道调度任务状态标识由未处理修改为巷道调度成功;在巷道调度失败的情况下,将巷道调度任务状态标识由未处理修改为巷道调度失败。

在一些实施例中,该调度装置还包括:储位调度任务接收单元,被配置为接收储位调度任务,储位调度任务包含目标标识以及储位调度任务类型标识;第二数据库任务表检索单元,被配置为检索数据库任务表,确定是否存在相同目标标识且巷道调度任务状态标识为巷道调度成功的任务;储位调度任务处理单元,被配置为若上述任务存在,在储位调度任务中增加储位调度任务状态标识,初始化储位调度任务状态标识为未处理,并将储位调度任务存储在数据库任务表中;若不存在,丢弃储位调度任务。

在一些实施例中,储位调度任务还包含当前巷道标识;储位调度任务处理单元还被配置为:利用储位调度任务中的目标标识查询数据库任务表中的巷道调度任务,判断相应的巷道调度任务中调度巷道标识与当前巷道标识是否相同,并将相应的巷道调度任务中巷道调度任务状态标识由巷道调度成功修改为储位调度完成;在不同的情况下,扣减调度巷道的巷道调度任务数,并对储位调度任务进行处理;若处理成功,将储位调度任务状态标识由未处理修改为储位调度成功,并增加调度储位所在储位层的储位调度任务数;若处理失败,将储位调度任务状态标识由未处理修改为储位调度失败。

在一些实施例中,储位调度任务处理单元还被配置为:在相同的情况下,对储位调度任务进行处理;若处理成功,将储位调度任务状态标识由未处理修改为储位调度成功,并扣减当前巷道的巷道调度任务数,增加调度储位所在储位层的储位调度任务数;若处理失败,将储位调度任务状态标识由未处理修改为储位调度失败,并扣减当前巷道的巷道调度任务数。

根据本发明实施例的又一个方面,提供了一种调度系统,包括前述的调度装置;以及巷道扫描器,被配置为对目标进行扫描,生成目标的巷道调度任务并发送至调度装置;储位扫描器,被配置为对目标进行扫描,生成目标的储位调度任务并发送至调度装置。

根据本发明实施例的又一个方面,提供了一种调度装置,其中,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述的调度方法。

根据本发明实施例的再一个方面,提供了一种计算机可读存储介质,其中,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现前述的调度方法。

本发明能够消除因智能排产系统中设备的不稳定性以及人为移动目标而为目标重复调度巷道的异常情况,保证目标的正常调度,增强了巷道调度过程的鲁棒性。

通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。

附图说明

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

图1示出了无人仓穿梭车库的结构示意图。

图2示出了本发明一个实施例的调度方法的流程示意图。

图3示出了本发明另一个实施例的调度方法的流程示意图。

图4示出了本发明另一个实施例的调度方法的流程示意图。

图5示出了本发明调度方法的一个应用例。

图6示出了本发明一个实施例的调度装置的结构示意图。

图7示出了本发明一个实施例的调度系统的结构示意图。

图8示出了本发明另一个实施例的调度装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

首先结合图2介绍本发明一个实施例的调度方法。

图2示出了本发明一个实施例的调度方法的流程示意图。如图2所示,本实施例中的调度方法包括步骤s202~步骤s206。

在步骤s202中,接收巷道调度任务,巷道调度任务包含目标标识以及巷道调度任务类型标识。

在步骤s204中,检索数据库任务表,确定是否存在相同目标标识、相同巷道调度任务类型标识、并且巷道调度任务状态标识为未处理或巷道调度成功的任务。

若存在,则在步骤s206中,丢弃巷道调度任务。

若不存在,则在步骤s208中,在巷道调度任务中增加巷道调度任务状态标识,初始化巷道调度任务状态标识为未处理,并将巷道调度任务存储在数据库任务表中。

在步骤s210中,对数据库任务表中巷道调度任务状态标识为未处理的巷道调度任务进行处理。

在巷道调度成功的情况下,则在步骤s212中,在数据库任务表中的巷道调度任务中增加相应的调度巷道标识,并将巷道调度任务状态标识由未处理修改为巷道调度成功。

在巷道调度失败的情况下,则在步骤s214中,将巷道调度任务状态标识由未处理修改为巷道调度失败。

上述实施例能够消除因智能排产系统中设备的不稳定性以及人为移动目标而为目标重复调度巷道的异常情况,保证目标的正常调度,增强了巷道调度过程的鲁棒性。

发明人还发现,智能排产系统的处理逻辑是先确定巷道后确定储位。在逻辑运算确定储位时,如果未能抓取到之前推荐出的巷道信息,智能排产系统会出现逻辑运算失败,料箱阻塞,从而出现未请求巷道直接请求储位的异常情况。为解决这一技术问题,下面结合图3介绍本发明一个实施例的调度方法。

图3示出了本发明另一个实施例的调度方法的流程示意图。如图3所示,在图2所示实施例的基础上,本实施例中的调度方法还包括步骤s316~步骤s322。

在步骤s316中,接收储位调度任务,储位调度任务包含目标标识以及储位调度任务类型标识。

在步骤s318中,检索数据库任务表,确定是否存在相同目标标识且巷道调度任务状态标识为巷道调度成功的任务。

若存在,在步骤s320中,在储位调度任务中增加储位调度任务状态标识,初始化储位调度任务状态标识为未处理,并将储位调度任务存储在数据库任务表中。

若不存在,在步骤s322中,丢弃储位调度任务。

上述实施例通过将巷道调度任务状态标识与储位调度任务进行关联和筛选,能够消除因智能排产系统中设备的不稳定性以及人为移动目标而为目标未请求巷道直接请求储位的异常情况,保证目标的正常调度,进一步的增强了储位调度过程的鲁棒性。

目前智能排产采用先接收推荐巷道和储位任务,然后采用异步woker去处理相关任务,包含推荐出巷道、储位和增加扣减相应巷道、层任务数量的步骤。处理巷道调度任务时,只要有任务就进行推荐,并且增加推荐出的巷道内的任务数;在处理推荐储位时,需要先从任务中获取到之前推荐巷道的信息,然后进行推荐储位操作,并且减少所在巷道的任务数量,增加推荐出的储位所在层的任务数量。发明人进一步发现,只能排产系统中可能存在料箱未进入指定巷道时请求储位的异常,也就是说智能排产在逻辑运算时,抓取的为料箱实际进入的巷道进行推荐储位,造成扣减巷道调度任务数时发生错误,从而产生巷道调度任务数的数据异常。为解决这一技术问题,下面结合图4介绍本发明另一个实施例的调度方法。

图4示出了本发明另一个实施例的调度方法的流程示意图。如图4所示,在图3所示实施例的基础上,本实施例中的调度方法还包括步骤s424~步骤s436。

在步骤s424中,储位调度任务还包含当前巷道标识,利用储位调度任务中的目标标识查询数据库任务表中的巷道调度任务,判断相应的巷道调度任务中调度巷道标识与当前巷道标识是否相同,并将相应的巷道调度任务中巷道调度任务状态标识由巷道调度成功修改为储位调度完成。

在不同的情况下,则在步骤s426中,扣减调度巷道的巷道调度任务数,并对储位调度任务进行处理。

若处理成功,则在步骤s428中,将储位调度任务状态标识由未处理修改为储位调度成功,并增加调度储位所在储位层的储位调度任务数。

若处理失败,则在步骤s430中,将储位调度任务状态标识由未处理修改为储位调度失败。

在相同的情况下,则在步骤s432中,对储位调度任务进行处理;

若处理成功,则在步骤s434中,将储位调度任务状态标识由未处理修改为储位调度成功,并扣减当前巷道的巷道调度任务数,增加调度储位所在储位层的储位调度任务数。

若处理失败,则在步骤s436中,将储位调度任务状态标识由未处理修改为储位调度失败,并扣减当前巷道的巷道调度任务数。

上述实施例能够消除因目标未进入指定巷道就请求储位导致的巷道、储位所在层的储位调度任务数量记录错误以及输送线体阻塞等问题,从而保证料箱正常执行入库操作,更进一步的增强了储位调度过程的鲁棒性。

下面结合图5介绍本发明调度方法的一个应用例。

(一)对巷道调度任务设立任务类型wirtr和四种状态值:0未处理,2推荐巷道完成,3推荐储位完成,9异常推荐失败;对储位调度任务设立任务类型:wirlr和三种状态值:0未处理,2推荐储位完成,9异常推荐失败。

(二)在接收巷道调度任务时,根据料箱号、任务类型(wirtr)、任务状态(0、2)三个条件,在数据库内进行检索任务表;如果存在数据,那么此条任务拒绝接收;如果不存在,则接收并保存,从而解决了重复请求巷道的异常。

(三)处理巷道调度任务时,抓取任务状态为0的任务进行处理。如果推荐成功,修改任务状态为2,增加调度巷道的巷道调度任务数量,并下发推荐出的巷道给请求方;如果推荐失败,修改任务状态为9,并告知请求方失败。

(四)接收储位调度任务,对调度巷道号字段进行校验,如果字段为空说明没有请求过巷道,拒绝接收并告知请求方失败;如果存在巷道号那么正常接收,从而解决了未请求巷道直接请求储位的异常。

(五)处理储位调度任务,根据料箱号、任务类型(wirtr)、任务状态(2)三个条件,在数据库内进行检索任务表;查询出已完成的巷道调度任务,那么取出巷道调度任务中的巷道号和当前储位调度任务中的巷道号做比较。如果两个巷道号相同,进行逻辑运算进行储位调度,如果调度储位成功,那么修改巷道调度任务状态为3,扣减巷道任务数量,修改储位调度任务状态为2,增加储位所在层的储位调度任务数量;如果推荐储位失败,那么修改巷道调度任务状态为3,扣减巷道任务数量,修改储位调度任务状态为9,并下发请求方。如果两个巷道号不相同,修改巷道调度任务状态为3,扣减调度巷道的巷道调度任务数量,进行逻辑运算确定储位,如果储位调度成功,修改储位调度任务状态为2,增加储位所在层的储位调度任务数量;如果推荐储位失败,修改储位调度任务状态为9,并下发请求方,从而解决了未进入指定巷道请求储位的异常。

下面结合图6介绍本发明一个实施例的调度装置。

图6示出了本发明一个实施例的调度装置的结构示意图。如图6所示,本实施例的调度装置60包括:

巷道调度任务接收单元602,被配置为接收巷道调度任务,巷道调度任务包含目标标识以及巷道调度任务类型标识;

第一数据库任务表检索单元604,被配置为检索数据库任务表,确定是否存在相同目标标识、相同巷道调度任务类型标识、并且巷道调度任务状态标识为未处理或巷道调度成功的任务;

巷道调度任务处理单元606,被配置为若上述任务存在,丢弃巷道调度任务。

在一些实施例中,巷道调度任务处理单元606还被配置为:若上述任务不存在,在巷道调度任务中增加巷道调度任务状态标识,初始化巷道调度任务状态标识为未处理,并将巷道调度任务存储在数据库任务表中;对数据库任务表中巷道调度任务状态标识为未处理的巷道调度任务进行处理;在巷道调度成功的情况下,在数据库任务表中的巷道调度任务中增加相应的调度巷道标识,并将巷道调度任务状态标识由未处理修改为巷道调度成功;在巷道调度失败的情况下,将巷道调度任务状态标识由未处理修改为巷道调度失败。

在一些实施例中,调度装置60还包括:

储位调度任务接收单元608,被配置为接收储位调度任务,储位调度任务包含目标标识以及储位调度任务类型标识;

第二数据库任务表检索单元610,被配置为检索数据库任务表,确定是否存在相同目标标识且巷道调度任务状态标识为巷道调度成功的任务;

储位调度任务处理单元612,被配置为若上述任务存在,在储位调度任务中增加储位调度任务状态标识,初始化储位调度任务状态标识为未处理,并将储位调度任务存储在数据库任务表中;若不存在,丢弃储位调度任务。

在一些实施例中,储位调度任务还包含当前巷道标识;储位调度任务处理单元612还被配置为:利用储位调度任务中的目标标识查询数据库任务表中的巷道调度任务,判断相应的巷道调度任务中调度巷道标识与当前巷道标识是否相同,并将相应的巷道调度任务中巷道调度任务状态标识由巷道调度成功修改为储位调度完成;在不同的情况下,扣减调度巷道的巷道调度任务数,并对储位调度任务进行处理;若处理成功,将储位调度任务状态标识由未处理修改为储位调度成功,并增加调度储位所在储位层的储位调度任务数;若处理失败,将储位调度任务状态标识由未处理修改为储位调度失败。

在一些实施例中,储位调度任务处理单元612还被配置为:在相同的情况下,对储位调度任务进行处理;若处理成功,将储位调度任务状态标识由未处理修改为储位调度成功,并扣减当前巷道的巷道调度任务数,增加调度储位所在储位层的储位调度任务数;若处理失败,将储位调度任务状态标识由未处理修改为储位调度失败,并扣减当前巷道的巷道调度任务数。

下面结合图7介绍本发明一个实施例的调度系统。

图7示出了本发明一个实施例的调度系统的结构示意图。如图7所示,本实施例的调度系统70包括:

调度装置60;以及

巷道扫描器702,被配置为对目标进行扫描,生成目标的巷道调度任务并发送至调度装置;

储位扫描器704,被配置为对目标进行扫描,生成目标的储位调度任务并发送至调度装置。

图8示出了本发明另一个实施例的调度装置的结构示意图。如图8所示,该实施例的调度装置80包括:存储器810以及耦接至该存储器810的处理器820,处理器820被配置为基于存储在存储器810中的指令,执行前述任意一个实施例中的调度方法。

其中,存储器810例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)以及其他程序等。

一种调度装置80还可以包括输入输出接口830、网络接口840、存储接口850等。这些接口830,840,850以及存储器810和处理器820之间例如可以通过总线860连接。其中,输入输出接口830为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口840为各种联网设备提供连接接口。存储接口840为sd卡、u盘等外置存储设备提供连接接口。

本发明还包括一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现前述任意一个实施例中的调度方法。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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