先说个让我肉疼的数字:47 秒——我们仓一次 WCS 任务超时误判,就是从这 47 秒开始的。
去年 11 月,我们那条二手输送线上,一个纸箱在分拣口停了 47 秒没动。WCS 一看超时,扭头又派了个新任务。可那个纸箱根本没卡死,只是分拣口的光电开关积了灰,反应慢了半拍。第二个任务一下来,推杆把同一个纸箱又推了一次,直接推进了错误的格口。那单是个加急单,客户在洛杉矶等着上架,我们赔了加急运费,还搭进去一下午找货。
我们小仓可烧不起这个钱。从那天起,我把 WCS 超时这事从头捋了一遍,捋出来的东西,今天全倒出来。
先交代下我们的家底:3000 平的小仓,输送线是二手的,提升机是翻新的,唯一的新设备是一台分期买的 AMR。大厂那套"设备毫秒级响应"的标准,在我们这儿根本不存在——二手 PLC 的心跳时不时打个盹,WiFi 穿过两排货架,AMR 回个确认能慢上好几秒。WCS 默认的超时阈值是按新设备设的,搁我们这儿,一天能报十几次超时,十次里九次是假的。
WCS 任务超时的阈值,抄大厂作业是抄不来的
一开始我也想偷懒,问集成商要了个"行业推荐值"照抄。结果越抄越乱:输送线 5 秒超时,一天到晚狼来了;AMR 30 秒超时,真卡住了 WCS 还在那儿傻等。
后来我们请集成商喝了顿酒,才搞明白一个关键:WCS 的"超时"根本不是一回事,得拆成三层看。
第一层是心跳:设备还活着吗。PLC 的心跳一般 1~3 秒一次,连续 3 次没回,基本可以判定设备掉线。这层跟任务没关系,纯粹是签到。
第二层是 ACK:任务收到了吗。WCS 下发任务,设备回个"收到"。输送线这种有线设备,5 秒内回 ACK 是本分;AMR 走 WiFi,15 秒内都算正常。我们那台二手提升机,ACK 经常要 8~10 秒——大厂标准 5 秒超时,我们设 12 秒,不丢人,设备就这体格。
第三层是完成确认:活儿干完了吗。这才是大头。一个输送任务从下发到纸箱落格口,走完要 1~2 分钟;AMR 跨区搬运,5 分钟都正常。这一层的阈值必须按任务类型设,不能一刀切。
我们最后定的分档,抄作业的可以直接拿去改:
| 设备 | ACK 超时 | 完成确认超时 | 备注 |
|---|---|---|---|
| 输送线段 | 8 秒 | 90 秒 | 二手 PLC,心跳偶尔打盹,ACK 留余量 |
| 提升机 | 12 秒 | 120 秒 | 机械动作慢,载重不同速度差一倍 |
| AMR | 15 秒 | 300 秒 | WiFi 穿货架,跨区任务给足时间 |
记住:阈值是按"你们家设备的体格"定的,不是标准答案。设备要都是新的,砍一半也行。
任务超时之后:重派还是等?先看这三件事
阈值设对了,超时还是会发生,设备哪有不闹脾气的。真正要命的是超时之后:重派,还是等?
我们吃过一次大亏才学乖。2025 年 11 月 18 号晚上 9 点多,我们那台 AMR 接了个任务:把一托货从收货区搬到电梯口。它在电梯口回了 ACK,开始等电梯,偏偏那会儿 WiFi 断了 40 秒——活儿干完了,"干完了"三个字没传回来。
WCS 一看 30 秒没收到完成确认,判定超时,扭头派了第二台 AMR(旺季临时租的)去搬"同一托货"。WiFi 恢复后,第一台上报"任务完成",第二台也到了现场,两台车围着一托货转圈。更绝的是,第二台按任务把托盘又叉起来,走了两步发现路被第一台挡了,直接把托盘卸在了消防通道口。
那一晚:4 个人返工 2 小时;消防通道被堵,差点被园区罚款;租来的 AMR 按小时计费,白烧 3 小时。事后一算,那一晚的损失够给全仓 WiFi 加两个接入点还有剩。
根因就一句话:收到过 ACK 的任务,被当成"没执行"重派了。从那以后,我们定了个决策框架,贴在中控屏旁边,超时任务先分类再处置:
第一步,看 ACK 回来了没有。没收到 ACK,说明设备压根没收到任务,大概率是通讯断了,这时候重派是安全的——但重派之前先看心跳,设备连心跳都没了,重派 100 次也没用,先叫人去看设备。
第二步,看任务是不是"可重入"的。查询类、状态同步类的指令,随便重发;但凡是让设备"动手"的——搬运、分拣、推杆——只要 ACK 回来过,就默认"设备可能已经在干了",绝不自动重派。WCS 不知道设备干到哪一步,重派一个"把 A 箱推到 3 号格口",万一设备刚推完,新任务一来,推杆再推一次,遭殃的可能是后面无辜的 B 箱。
第三步,看波次。卡住的货影不影响截单时间?不影响就等,影响就转人工。别为了一个不着急的箱子,把整条线折腾停。
我们的土办法:超时任务池 + 一块旧平板
大厂的解法是上设备孪生、做任务幂等性改造,动辄几十万。我们小仓可烧不起这个钱。我们的土办法花了不到 500 美金。
找了块退役的旧平板,挂在输送线旁边,上面只显示一个界面:超时任务池。WCS 的超时任务不再自动重派,全部进池子,变红。

操作员的活儿很简单:看到红了,走过去看一眼——输送线上的事,肉眼一看就明白,是真卡住了还是只是慢了。真卡住,点"人工处理",任务转人工;只是慢了,点"继续等",WCS 把完成确认的等待时间延长一倍;设备压根没收到任务,点"确认重派"。
就这么个土界面,上线第一个月,假重派从每天十几起降到零。因为误操作导致的找货时间,一个月省了约 20 个小时。500 美金,值。
超时任务人工介入 SOP,贴在墙上的那张
土办法跑顺之后,我们把它写成 SOP,贴在中控室墙上:
L1,系统自动处理:只有"无 ACK、心跳正常"的任务允许自动重派,最多 2 次,间隔拉长(第一次 30 秒后,第二次 60 秒后)。两次还不行,转 L2。
L2,人工确认:有 ACK、无完成确认的任务,全部进超时任务池,操作员 5 分钟内到现场确认。确认"设备已执行",WCS 标记完成;确认"没执行",人工点重派。
L3,锁线停机:同一设备 1 小时内超时 3 次,或连续 2 次 L2 确认设备故障,锁线叫维修,WCS 自动把任务切到备用线路(有的话)。
还有一条铁律:任何情况下,WCS 不许在 30 秒内对同一任务下发两次执行指令。这条是我们用那一晚的学费换来的,写进配置里,谁也别想改。
最后说个反常识的:超时阈值不是越短越"灵敏"。阈值设得太短,等于雇了个一惊一乍的监工,动不动喊出事了。操作员被假警报轰炸一个月,就会学会无视所有警报——包括真的。狼来了的故事,在仓库里天天上演。阈值的意义不是"第一时间发现异常",而是"在该发现的时候发现"。宁可让真超时多等 30 秒,也别让假超时把人的警觉心磨没了。
我们仓的 WCS 是二手的,设备是二手的,连平板都是退役的。但把超时这事捋顺之后,旺季一天 8000 单,再没出过重派事故。
小仓有小仓的活法:大厂靠钱堆稳定性,我们靠"认怂"——承认设备会闹脾气,承认阈值要留余量,承认有些事就得让人去看一眼。认怂不丢人,出事故才丢人。
作者:小马|小仓创业者






