上了APS,计划还需要分两层吗?
当前位置:点晴教程→知识管理交流
→『 企业管理交流 』
主计划和日计划之间,到底该怎么分工?客户原来的世界:两拨人,两件事讨论之前,先说背景。客户本身已经有主计划员和日计划员了。原来是线下排产,分工很清楚: 主计划员负责长周期的、核心的、整体统筹性的计划。日计划员更多是跟单——每个领域设有对应的日计划员,计划发到车间后,详细的跟进、协调和调度,全由日计划员负责。 说白了,主计划员管"排",日计划员管"跟"。 这是客户做了多年的业务定义,运转得也没大问题。但现在要上APS了。整个排程搬进系统,未来的分工会长什么样?客户不清楚。 客户问了一个很直接的问题:"上了APS之后,是不是就不需要两层计划了?主计划员直接把日计划排好,是不是就行了?跟单员是不是也不需要了?" 这个问题,不好回答。 第一反应:逻辑确实一样我们先给了一个初步建议,思路沿用以前的分工:主计划做长周期,日计划做短期,包括日计划的确认和跟进。 把这套思路类比到系统里,发现有相通性。 主计划的逻辑是:先确定交付计划,然后根据交期倒排,按照优先级把工单分解到各工序。第二步再顺排,考虑资源负荷做产能平滑,把工单排到具体资源上。 日计划要做的,本质也是类似的事情——先倒排建优先级,再顺排考虑资源。 客户一听:逻辑一样啊,那以后是不是一个计划就够了?先确定交货计划,倒排,然后顺排考虑产能,最后出一份可执行的计划。一步到位。 听上去很合理。 但经过几轮讨论,我们发现事情没那么简单。
▲ 主计划员用望远镜看远方,日计划员用放大镜看细节——两个人看的不是同一个东西 为什么不能合成一个?主计划和日计划的区别,比想象中大。 展望期不同。主计划的展望期长,通常6到8周。它不仅要看近期可执行的排程,还要看中远期的计划分布和能力负荷——未来几周会不会出现产能不足,或者产能富余。 日计划更偏执行。它的展望期短,通常在1周以内。对于前工序,可能只关注未来3天,每天滚动下达的计划理论上只需做一天。 执行频次不同。主计划不需要天天跑,每周滚动一次就够了。日计划是每天滚动,每天检讨第二天的计划。 颗粒度不同。主计划考虑的是工作中心的能力,颗粒度到天就行。日计划要排到具体设备或设备组,颗粒度到小时甚至分钟。 约束条件不同。日计划还要考虑很多主计划不需要管的细节:比如后续工序的跟单期限制(保质期要求)、防止批次间混料的防混规则等。这些规则放进主计划里,不仅没必要,还会拖垮运行速度。 所以,虽然两套计划的底层逻辑相似——都是先倒排再顺排——但它们看的世界完全不同。主计划是望远镜,日计划是放大镜。 但这些都是表象。真正让我们必须把两套计划拆开的,是另一个更底层的问题。 真正的原因:系统跑不动回想一下,很多APS项目做不成功,有一个很重要的原因:系统跑得太慢。 APS要运行得好,需要把大量精细的业务逻辑转化成规则化的基础数据。为了全面性,所有相关数据都要参与计算。再加上较长的展望期——3个月甚至半年——需要运算的数据量非常庞大。逻辑复杂,数据量大,运行速度就自然成了大问题。 很多项目上线后,跑一次APS整体计划,少则几十分钟,多则好几个小时。有的甚至要在凌晨设好计划任务,第二天早上才能看到结果。 这就引出了一个致命的问题。 计划排出来后,计划员一定会发现跟理想中有差异。某个订单的顺序要调一下,某个资源的负荷要匀一匀,临时来了个急单要插进去。改一个点,可能影响全局。影响全局,就得重新跑一次。 如果重新跑一次要等两小时——那计划员可等不起。 计划员的需求是:调一下,马上看结果。系统给不了这个响应速度,计划员就不愿意用。不用,系统就成了摆设。 这就是我们拆分主计划和日计划的核心驱动力。
▲ 主计划追求"全"和"快",日计划追求"细"和"准"——两个目标没法在同一层同时满足 主计划:粗一点,但要快主计划的定位是考虑全面性,展望期长。但正因为全面和长周期,就没法按细颗粒度运算——否则系统性能扛不住。 所以主计划做了几个"妥协": 排产对象到工作中心就行,不用到具体设备或设备组。一个工作中心下包含多类型、多台设备,主计划不关心具体排到哪台设备,只关心这个工作中心的产能够不够。 颗粒度到天,不到小时。主计划要知道的是"下周二的产能满了没有",不是"周二下午2点到3点要生产什么"。 提前期提前算好,不实时计算。正常情况下,APS在展开BOM时要逐层展开工艺路线、逐道工序累计工时来算提前期——这个过程很慢。我们的做法是:在运行APS之前,为每个产品按BOM结构提前计算好每一层的提前期,直接存进基础表。运行主计划时,直接调用这些预计算的数据。 工艺路线只考虑一条。一个产品可能有多条工艺路线,主计划只能选主要的、常用的那条,没法考虑太细。 这些妥协的结果是:主计划算出来的不是最准确的解,但它在效率和准确性之间找到了一个平衡。它是一个可接受的解,不是最优解。 而且,计划员拿到主计划结果后,可能要调整,可能要多版本对比。每次调整都要重新跑一次,所以主计划的单次运行时间必须控制在可接受的范围内——分钟级能出结果,而不是几个小时。 日计划:细到设备或设备组,但每次只跑一个工序日计划就不一样了。它的展望期短,数据量小,所以规则可以考虑的非常细致。 日计划的排产对象是工序订单——不是整个工单,而是工单下的某一道具体工序。颗粒度到小时或分钟,要考虑设备级和设备组级的细化生产能力。所以提前期的计算也要精细得多。 但关键在于:日计划不需要一次性把所有数据全跑一遍。 我们的做法是:主计划先用倒排把工单推到瓶颈工序。在瓶颈工序排定日计划后,前工序逐层倒排——每次只处理一个排产点的一道工序。后工序也一样,每次只运行一个排产点工序。对于非排产点的工序,用工序提前期做简单时间推演,不做详细排程运算(强跟随逻辑)。 也就是说,每次日计划运算,只需要跑一个排产点工序的数据。虽然运算逻辑复杂、规则细致、要考虑明细的设备产能,但由于每次运算数据量小——运行时间自然就短。 算一层,给当序日计划员看,等该序计划员确认了,再推下一层。这个节奏,跟计划员实际工作的节奏也基本是吻合的,相互协作起来完成各工序计划的确认。 分工的本质:在性能和精度之间画一条线回过头来看,主计划和日计划的分工,表面上是展望期和颗粒度的差异,本质上是在系统性能和排程精度之间画了一条线。 主计划在那条线的左边:范围大、数据多、规则粗、速度快。它负责回答"未来几周,产能够不够,哪些单子可能有风险"。 日计划在那条线的右边:范围小、数据少、规则细、精度高。它负责回答"明天这台设备,具体做什么,什么顺序"。 如果硬要把两边合成一个——既要全面又要精细——那系统就跑不动了。跑不动,计划员就不用。不用,项目就失败了。 所以,客户问"是不是不需要两个计划员了",答案其实是:APS不是替代计划员,而是给两个层级的计划员各自的工具。主计划员用主计划模块做宏观判断,日计划员用日计划模块做微观排程。跟单员可能确实可以减少——因为系统替他跟了一部分——但计划的核心判断,还是在人手里。 ![]() ▲ 线左边是主计划的领地——粗、快、全;线右边是日计划的领地——细、准、小。这条线画在哪,取决于系统跑得动多少 至于这条线具体画在哪里——主计划的展望期设多长,日计划的滚动频率设多高,颗粒度切到多细——这些没有标准答案。取决于你的产品工艺、你的设备特性、你的数据基础,也取决于你的系统算力。 每个项目都得自己摸。 但有一点是确定的:分层的思路是对的。不分层,你就在追求一个跑不动、也用不起的"完美系统"。分层了,你得到的才是两个跑得动、用得起的"够用系统"。 够用,比完美重要。 · · · 你们的APS项目里,主计划和日计划是怎么分工的?有没有遇到过"系统跑一次要几小时"的痛苦? 阅读原文:点击这里 该文章在 2026/7/19 14:17:04 编辑过 |
关键字查询
相关文章
正在查询... |