4. WCS 任务调度与设备编排

WCS(仓库控制系统)处在 WMS 与底层设备之间,是任务真正“落地”的一层。WMS 下发的往往是一条业务指令,例如“将托盘 P-1024 从 A 区立库出库口送至 B 区打包线 3 号工位”;而 WCS 要把它翻译成设备能执行的动作序列,并在提升机、输送线、AMR 之间分配资源、规划路径、协调时序。本节围绕任务拆分、路径规划、交通管制与协同调度模型展开,并给出常见调度算法的适用场景。

一、任务拆分:从业务指令到设备动作

任务拆分的目标是把一条不可直接执行的业务指令,分解为若干可被单一设备执行的原子任务,并明确它们之间的先后约束。以“立库出库口 → 提升机 → 输送线 → AMR 接驳点 → 打包线 3 号工位”为例,可拆为:

  • T1:立库堆垛机取托盘 P-1024 并放至出库输送线起点;
  • T2:输送线将托盘送至提升机入口;
  • T3:提升机将托盘从 1 层送至 2 层;
  • T4:2 层输送线将托盘送至 AMR 接驳位;
  • T5:AMR 从接驳位取货,送至打包线 3 号工位。

拆分时要标注三类信息:前置依赖(T3 必须在 T2 完成后开始)、资源占用(T2 占用输送线段 SEG-12,T3 占用提升机 EL-02)、可并行性(T5 的 AMR 调度可在 T4 完成前提前预约,但取货动作必须等 T4 结束)。拆分粒度不宜过细,否则调度开销大;也不宜过粗,否则无法做交通管制。工程上通常以“一次设备动作或一段连续输送”为原子单位。

二、路径规划:分层与代价

路径规划分两层:设备内路径(如堆垛机的水平+垂直运动、提升机的楼层切换)和移动体路径(AMR 在路网上的行驶路线)。AMR 路网通常抽象为有向图,节点是站点或路口,边是单向通道,边权可用行驶时间、拥堵系数、转弯代价加权。常用算法有 Dijkstra(单源最短)、A*(带启发式,适合大地图)、以及多机场景下的时间窗 A*(在时空维度上避让)。

示例:某 AMR 路网中,从接驳位 N7 到打包线 N21,两条候选路径分别为 N7→N9→N14→N21(预计 42 s,经过 2 个路口)与 N7→N8→N13→N21(预计 38 s,经过 3 个路口)。若当前 N8 附近有另一台 AMR 正在作业,拥堵系数取 1.4,则第二条路径实际代价约 53 s,调度器应选第一条。这说明路径规划不能只看静态距离,必须结合实时占用。

三、交通管制:避免死锁与碰撞

多台 AMR 共用路网时,交通管制是安全与效率的核心。常见手段包括:

  • 区段锁:把通道划分为若干区段,同一时刻只允许一台 AMR 占用;
  • 路口互斥:交叉路口作为临界区,先到先得或按优先级分配;
  • 单向环流:主干道设为单向,减少对向冲突;
  • 死锁预防:禁止“环形等待”,必要时预留避让点或回退位。

判断是否死锁,可检查等待图是否存在环。例如 AMR-01 等待 AMR-02 释放区段 S3,AMR-02 等待 AMR-03 释放 S5,AMR-03 又等待 AMR-01 释放 S1,即构成环,必须由调度器介入打破。

四、协同调度模型与常见算法

提升机、输送线、AMR 的协同可建模为“资源约束下的任务分配与排序”问题:任务集合、设备集合、每个任务在各设备上的处理时间、设备容量与互斥约束共同决定调度结果。常见算法及适用场景如下:

算法核心思想适用场景
先到先服务 FCFS按任务到达顺序执行任务少、冲突低,实现简单
最短作业优先 SJF优先执行预计耗时短的任务提升机/输送线吞吐优化
最早截止优先 EDF优先处理时限最紧的任务有出库时效要求的场景
匈牙利/拍卖算法求解任务与 AMR 的最优匹配多 AMR 任务分配
遗传/禁忌搜索迭代优化全局目标大规模、多目标调度

实际系统常采用“分层调度”:上层用启发式或优化算法做任务分配,下层用规则做实时避让与抢占。例如提升机 EL-02 同时收到 T3 与另一条紧急出库任务,可按 EDF 让紧急任务先占用,普通任务顺延,并在日志中记录顺延原因,便于复盘。

调度参数建议:AMR 安全距离 ≥ 0.5 m;路口锁超时阈值 8 s,超时触发重规划;提升机单次任务超时 90 s 报警。以上为示例参考值,需按现场实测调整。
WCS 任务拆分与设备协同调度示意 WMS 业务指令 P-1024 出库至打包线3 任务拆分 T1 堆垛机取货 T2 输送线 → 提升机 T3 提升机 1F→2F WCS 调度器 任务分配 + 排序 路径规划 + 交通管制 EDF / 拍卖 / 启发式 堆垛机 SR-01 T1 取托盘 占用货位 A-12 输送线 SEG-12 T2 输送至提升机 区段锁占用 提升机 EL-02 T3 1F→2F 互斥资源 AMR-07 T5 接驳位→工位3 路径 N7→N9→N14→N21 交通管制与死锁预防 区段锁:SEG-12 同一时刻仅 1 台 AMR 占用 路口互斥:N9 路口先到先得,超时 8 s 触发重规划 死锁检测:等待图存在环 → 调度器介入打破 AMR-01 → 等 S3 AMR-02 → 等 S5 AMR-03 → 等 S1(成环)

五、调度结果如何判断

调度是否合理,可从三个指标观察:任务完成时间(从下发到工位签收)、设备利用率(提升机/输送线/AMR 的忙闲比)、冲突与重规划次数。若某台 AMR 频繁触发路口锁超时,说明路网或优先级设置不合理;若提升机长期空闲而 AMR 排队,说明任务分配未考虑设备节拍匹配。实际调参时,建议先固定路网与任务集,再逐步调整优先级权重和锁超时阈值,对比上述指标变化,而不是一次性改动多个参数。

注意:路径规划与交通管制必须使用同一套坐标系和方向定义。若路网图中节点编号与现场地标不一致,会导致 AMR 实际行驶路线与调度预期偏离,务必在部署前核对。