任务调度方法、装置以及系统的制作方法

文档序号:8498914阅读:460来源:国知局
任务调度方法、装置以及系统的制作方法
【技术领域】
[0001] 本发明涉及自动化领域,尤其涉及一种任务调度方法、装置以及系统。
【背景技术】
[0002] AGV(Automated Guided Vehicle,自动引导车辆)已经广泛运用于国内外烟草自 动化物流仓储领域,其中,AGV控制系统负责车辆的任务调度、智能避障、路径规划等,它在 烟草自动化仓储物流系统中的应用一般是一个相对独立的系统,只能通过专用接口实现物 流系统向AGV控制系统下发任务以及获取任务状态反馈信息。
[0003] 现有技术中,AGV任务的产生以及调度方法是:由设备自动或人工触发在 WMS (Warehouse Management System,仓库管理系统)中产生AGV搬运任务;WMS将未执行 的AGV搬运任务下达到WCS (Warehouse Control System,仓库控制系统);WCS周期性地对 所获取WMS的AGV搬运任务,按任务的产生时间升序排序,将未开始执行的任务下发给AGV 控制系统。AGV控制系统获取到WCS下发的任务后,排队分配具体的AGV小车进行搬运作业 操作。但是,由于WCS在调度AGV任务环节中任务是按照其产生时间由早到晚按序下发,会 存在以下问题:优先级不可控,在特殊生产需求时无法干预任务优先级;任务优先级与实 际业务优先级不符,后优先级任务可能优先执行,造成断料、等料现象;WCS任务下放给AGV 控制系统数量过多,大量任务在AGV控制系统中排队等待,WCS对AGV任务的可控性低。
[0004] 因此,有必要提出一种任务调度方法以解决上述问题。

【发明内容】

[0005] 本公开要解决的一个技术问题是如何提供一种可控性高的、可以根据任务执行情 况调控优先级的任务调度方法,从而防止出现造成断料、等料现象。
[0006] 本公开提供一种任务调度方法,包括:以预定的调度周期,确定任务缓冲池中未执 行任务的数量K ;判断未执行任务的数量K是否为0 ;若未执行任务的数量K不为0,则在任 务缓冲池中选取任务优先级最高的前M条未执行的任务,其中未执行任务的优先级以预定 的调整周期进行更新,M与当前处于空闲状态的自动导引车辆AGV的数量相关联;将选取的 M条未执行的任务下发给AGV控制系统,以便AGV控制系统对接收到的任务进行处理。
[0007] 进一步地,在任务缓冲池中选取任务优先级最高的前M条未执行的任务的步骤包 括:确定当前处于空闲状态的AGV的数量N ;判断N是否大于0 ;若N大于0,则在任务缓冲 池中选取任务优先级最尚的前M条未执行的任务,其中M < N。
[0008] 进一步地,将选取的M条未执行的任务下发给AGV控制系统后,还包括:将所述M 条未执行的任务从任务缓冲池中删除。
[0009] 进一步地,未执行任务的优先级以预定的调整周期进行更新的步骤包括:在预定 的调整周期,统计第i个未执行任务的当前等待时间Hi,其中1 < i < K ;判断当前等待时 间氏是否大于第i个未执行任务相应的最长等待时间D i;若当前等待时间H ,大于最长等待 时间Di,则将第i个未执行任务的优先级调整为最高。
[0010] 进一步地,若当前等待时间Hi不大于最长等待时间D i,则进一步统计第i个未执 行任务自最后一次调整优先级以来的等待时间Mi;判断等待时间I是否大于第i个未执行 任务相应的优先级调整周期T i;若等待时间M i大于优先级调整周期T p则按照预定幅度提 高第i个未执行任务的优先级。
[0011] 进一步地,按照预定幅度提高第i个未执行任务的优先级的步骤包括:判断第i个 未执行任务当前的优先级是否为最高;若第i个未执行任务当前的优先级不是最高,则按 照预定幅度提高第i个未执行任务的优先级。
[0012] 本公开还提供一种任务调度装置,包括:确定模块,用于以预定的调度周期,确定 任务缓冲池中未执行任务的数量K ;判断模块,用于判断未执行任务的数量K是否为0 ;任 务选取模块,用于根据判断模块的判断结果,若未执行任务的数量K不为0,则在任务缓冲 池中选取任务优先级最尚的前M条未执行的任务,其中未执行任务的优先级以预定的调整 周期进行更新,M与当前处于空闲状态的自动导引车辆AGV的数量相关联;下发执行模块, 用于将选取的M条未执行的任务下发给AGV控制系统,以便AGV控制系统对接收到的任务 进行处理。
[0013] 进一步地,任务选取模块包括:确定单元,用于确定当前处于空闲状态的AGV的数 量N ;判断单元,用于根据确定单元的结果判断N是否大于0 ;选取单元,用于根据判断单元 的判断结果,若N大于0,则在任务缓冲池中选取任务优先级最高的前M条未执行的任务,其 中 M < N。
[0014] 进一步地,该装置还包括更新模块,用于在下发执行模块将选取的M条未执行的 任务下发给AGV控制系统后,将所述M条未执行的任务从任务缓冲池中删除。
[0015] 进一步地,该装置还包括优先级调整模块,其中:优先级调整模块,用于在预定的 调整周期,统计第i个未执行任务的当前等待时间氏,其中1 < i < K ;判断当前等待时间 氏是否大于第i个未执行任务相应的最长等待时间D i;若当前等待时间H ,大于最长等待时 间Di,则将第i个未执行任务的优先级调整为最高。
[0016]进一步地,优先级调整模块还用于在当前等待时间氏不大于最长等待时间Di时, 进一步统计第i个未执行任务自最后一次调整优先级以来的等待时间Mi;判断等待时间M i 是否大于第i个未执行任务相应的优先级调整周期Ti;若等待时间M i大于优先级调整周期 凡,则按照预定幅度提高第i个未执行任务的优先级。
[0017] 进一步地,优先级调整模块具体判断第i个未执行任务当前的优先级是否为最 高;若第i个未执行任务当前的优先级不是最高,则按照预定幅度提高第i个未执行任务的 优先级。
[0018] 本公开还提供一种任务调度系统,包括:如上述的任务调度装置;以及自动导引 车辆AGV控制系统,用于对所述任务调度装置发送的任务进行处理。
[0019] 本公开提供的任务调度方法、装置以及系统,不仅对AGV任务优先级的灵活控制, 而且使得AGV控制系统按照WCS指定的AGV的任务优先级执行任务,保证各业务的AGV任 务都能在恰当的时间得以执行,避免低优先级任务长时间等待现象。
【附图说明】
[0020] 图1示出本发明一个实施例的任务调度方法的流程图。
[0021] 图2示出本发明另一个实施例的任务调度方法的流程图。
[0022] 图3示出本发明一个实施例WCS往AGV控制系统下发任务的系统流程图。
[0023] 图4示出本发明一个实施例的任务调度装置的结构框图。
[0024] 图5示出本发明另一个实施例的任务调度装置的结构框图。
【具体实施方式】
[0025] 下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。
[0026] WMS仓库管理系统是通过入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等 功能,综合批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合 运用的管理系统,有效控制并跟踪仓库业务的物流和成本管理全过程,实现完善的企业仓 储信息管理。该系统可以独立执行库存操作,与其他系统的单据和凭证等结合使用,可提供 更为完整全面的企业业务流程和财务管理信息。WMS系统可以产生AGV任务和接收WMS返 回的状态反馈。WCS是介于WMS系统和AGV系统之间的一层管理控制系统。一方面,它与 丽S系统进行信息交互,接受丽S系统的任务指令,并将其发送给AGV控制系统,从而驱动 AGV小车产生相应机械动作。另一方面,它将AGV系统的状态反馈及数据实时反映在界面上 并提供给WMS系统,提供对AGV控制系统的自动或手动调试控制接口。
[0027] 图1示出本发明一个实施例的任务调度方法的流程图。如图1所示,该方法主要 包括:
[0028] 步骤101,仓库控制系统WCS以预定的调度周期,确定任务缓冲池中未执行任务的 数量K。
[0029] 在一个实施例中,在WCS中新增一个任务缓冲池,用以存放丽S下发的AGV搬运 任务,在任务下发给AGV控制系统之前,这样,系统周期性的检测该任务缓冲池中的任务信 息,这样可以判断未执行任务的等待时间情况并自动调整执行优先级。
[0030] 步骤102, WCS判断未执行任务的数量K是否为0。
[0031] 步骤103,若未执行任务的数量K不为0,则在任务缓冲池中选取任务优先级最高 的前M条未执行的任务,其中未执行任务的优先级以预定的调整周期进行更新,M与当前处 于空闲状态的自动导引车辆AGV的数量相关联。
[0032] 在一个实施例中,在任务缓冲池中选取任务优先级最高的前M条未执行的任务具 体可以包括:确定当前处于空闲状态的AGV的数量N ;判断N是否大于0 ;若N大于0,则在 任务缓冲池中选取任务优先级最高的前M条未执行的任务,其中M < N。这样,通过选择数 量的确定过程,可以方便AGV任务小车执行搬运任务,防止任务过长时间的等待。
[0033] 在一个实施例中,本发明实施例米用的AGV任务调度方法是一种在固定优先级基 础上,让任务尽可能在截止期即最长等待时间前完成的调度方案。主要步骤是:在预定的调 整周期,统计第i个未执行任务的当前等待时间氏,其中1 < i < K ;若判断当前等待时间 氏是否大于第i个未执行任务相应的最长等待时间D i;若当前等待时间H ,大于最长等待时 间Di,则将第i个未执行任务的优先级调整为最高。
[0034] 在一个实施例中,本发明实施例米用的AGV任务调度方法能对AGV任务优先级的 灵活控制,还包括:若当前等待时间Hi不大于最长等待时间Di,则进一步统计第i个未执 行任务自最后一次调整优先级以来的等待时间M i;判断等待时间I是否大于第i个未执行 任务相应的优先级调整周期Ti;若等待时间Mi大于优先级调整周期Ti,则按照预定幅
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1