工作究竟何时真正发生?感知停机的生产排程与按流逝时间的生产排程

在计算时间安排之前先从工作产能中扣除停机、假日和非工作时间窗的生产排程,会显示工作究竟何时真正发生。建立在原始流逝时间上的计划,会夸大工作完成得多早,并低估一次停机在产能上消耗多少。

工厂按班次运行,在假日关闭,为计划性维护而停机,并因故障损失小时数。墙上的钟从不暂停;工作日历却会。每一份生产排程都在回答一个问题:这项工作究竟何时真正发生?答案取决于生产排程是否对产能建模。

计划员每天都在这种错位中生活。计划说周五完成;工厂说下周二。当工作在一条不间断的时钟上被规划,却落进一家并非如此运行的工厂,就会出现这种差距。两种生产排程给出两种答案。一种在计算时间安排之前,从产能中扣除停机和非工作时间窗。另一种把时长放在连续时钟上,让差距稍后(如果会的话)才显现。

当计划把时钟当作产能

按流逝时间规划是一种做法,而不是产品:把作业时长放在连续时钟上,通常放在规划团队维护的电子表格或白板上。工作日历推理并没有缺失:计划员掌握它并手工应用它。缺失的是一个强制实施它的模型。电子表格不会从产能中扣除一次停机,因为它没有可扣除的产能,于是核查要么发生在某个人脑中,要么根本不发生。

按流逝时间的计划以几种可辨认的形态处理停机。工作日历滑动:时长保持不变,并在缺口之后重新应用,于是停机从不表现为损失的产能。墙钟拉伸:结束日期被原始停机时长推后,其后每个作业都继承这个滑移。或者整周被手工重建,这消耗了规划团队的时间,因为没有快速的方法看到停机在下游造成了什么。在缺乏产能模型的情况下,每种都是合理的。失败在于模型的缺席,而不在于维护电子表格的人。

更广泛的证据朝着同一方向。在规划研究中,人们系统性地低估完成时间:在演示研究中,不到一半的参与者在他们自己预测的日期前完成。这种偏差是单向的,也正因如此,连续时钟会跑在现实前面。对正在使用的电子表格的实地审计还发现,其中绝大多数存在公式错误。这是无论哪种方式都不应信任其算数的理由,而不是同一个单向差距的解释。

在排程之前扣除停机,而不是之后

解决之道听起来像算术,但问题在于算术发生在哪里。工作产能应当先被停机、假日或非工作时间窗扣减,然后在剩余部分中计算时间安排。这就是「先扣减再排程」的模式,也是以产能建模的排程所做的。

算术不同,因为问题不同。被一次停机打断的工序不会简单地在原处恢复:打断可以把剩余工作推过一个班次边界,而惩罚可能超过停机本身的时长。在末尾加上停机,等于把时间安排当作产能未受影响。先扣减它,则是把工作导引到真正剩余的时间里。

flowchart LR
    O["一项作业跨越一个停机时间窗"] --> E["按流逝时间的计划<br/>停机在计时后添加"]
    O --> C["产能模型<br/>停机在计时前扣减"]
    E --> P1["完成时间主张<br/>夸大工作完成得多早"]
    C --> P2["完成时间主张<br/>显示工作真正发生的时刻"]

同一次停机到达两种计划,产生两种不同的完成时间主张。

什么让感知产能的时间安排保持诚实

下面每一种机制都承载「诚实的计时」的一部分含义。合在一起,它们是一个与工厂工作日历匹配的模型。

先扣减,再排程。 停机时间窗、假日和非工作时间窗在生产排程计算时间安排之前,从工作产能中划出。工作绕过停机,被导引到剩余的小时里,而不是得到一个无视它的结束日期。

设备加工按工作分钟推进。 一道无法在班次结束前完成的工序,会在下一个班次开始时恢复。生产排程同时记录实际工作的时间和它所跨越的总时长;两者之差就是生产排程吸收的非工作时间。

工序间的等待按墙钟运行,这是有意的。 固化、干燥、冷却或质检等待不是设备加工,化学过程不会为周末而停下:一个 48 小时的等待,无论班次模式如何,都跨越 48 小时的工作日历。模型跟踪两个时钟,并且知道每个时长属于哪一个。这个区分很重要:「流逝时间」对设备加工来说是错误的基础,对等待来说却正好正确。

生产排程与可视化讲述同一个故事。 停机与假日以阴影带呈现在生产排程图上,而跨越班次边界的工序显示为分离的工作段。缺口被显示,而不是被隐藏,因为计时与渲染来自同一份工作日历与停机数据。计划员能看到一个条为何停顿。

等料暂停是可见的。 当一道工序在下一批供应到达之前耗尽物料,生产排程会在加工条之间显示那个暂停,而不是把空闲时间不可见地折进一个长条。在生产排程内部,暂停被限定为供应饥饿:空闲被命名、可归因。

目标按工作日历的术语计算。 排程算法的目标(总生产时间,最后一项作业完成的时间)通过同一个渲染图表的、感知工作日历与停机时间的模型来评估。算法所追求的数字,与计划员看到的处于同一套术语。

当一次停机落地。 计划员记录停机时间窗并重跑生产排程;重新计算的生产排程的时间安排已经排除损失的小时。这是计划员的动作:系统不会自己检测故障或修改生产排程。在 Auto 模式下,重跑会重新计算生产顺序;在 Semi-Auto 模式下,计划员的生产顺序被保留,时间安排围绕它重新计算。

维护,一行搞定。 计划性维护作为停机时间窗录入,并像其他任何停机一样被扣除。没有状态监测、没有传感器数据、没有推导出的时间窗。计划员决定时间窗落在何时并录入它。

一次停机真正消耗多少小时

按流逝时间的计划把停机当作加性:加上那些小时,移动结束日期。因此它低估了停机消耗多少产能。而损失的小时超出了停机本身:故障、换线、微停和速度损失都在扣除真实的工作时间,任何建立在固定加工速率上的计划(包括这份)都看不见。

数字因工厂而异,而且它们始终附着在被测量的工厂上。在一条饮料灌装线上,设备综合效率(排程的生产时间转化为合格产出的比例)平均为 69.35%。纯粹故障占该排程时间的 0.89%,而速度降低是主要损失,约为 28.5%。把它当作它本来的样子来读:一条产线上损失的产能,而不是对任何计划错了多少的裁决。

一次停机的计量单位是损失的小时数和产能占比。

在生产排程中要看什么

当你评估一份生产排程时——无论自己的还是供应商的——问三个问题。时间安排计算之前,停机是否已从工作产能中扣除?图表是显示缺口,还是隐藏它们?记录的工作时间计算的是工作分钟吗?

没有生产排程能保证抵御尚未被任何人录入的干扰。这里的主张更窄、也更强。在建模产能上计算出的时间安排,在那个程度上是可信的,而按流逝时间的计划相对于同一个产能叙事会夸大完成时间。这就是一份说「周五完成」的生产排程与一份工厂能相信的生产排程之间的差别。

准备好优化您的生产排程了吗?

免费试用 Schantt——无需信用卡。60 分钟内从电子表格迈向优化后的甘特图。

免费试用 Schantt