乐于分享
好东西不私藏

用excel手搓cusum控制图(提供excel文件)

用excel手搓cusum控制图(提供excel文件)

很多人做 SPC,默认就是 Xbar-R、I-MR。

图画得很漂亮,八大判异规则背得很熟——可现场偶尔会遇到这种尴尬:

过程其实已经慢慢偏了(比如 0.5σ 到 1.5σ 的慢性漂移),但图上点位依然安安静静地落在上下控制限内。等它真正爆点(突破 3σ)的时候,坏件可能已经生产了一大批,损失不小。

这时候,你可以想想 CUSUM(累积和)控制图

它不盯单点跳不跳 3σ,而是把“相对目标的偏离”一点一点累积起来。小漂移、慢性偏移,往往比常规控制图更早露头。

网上公式一大堆,看着头晕。我干脆用 Excel 把单值子组两套都手搓了一遍,做成可改数据、公式全透明的模板。文末有完整文件,直接下就能复算。

也顺便说一声:我们做的 斌果 SPC,现在也已经支持 CUSUM 控制图了。Excel 适合把算法吃透;产线实时看图、自动判异、多项目看板,还是软件省事。

先讲清楚:CUSUM 在算什么?

常规的休哈特控制图只看当前点;而 CUSUM控制图带有“记忆”。

它的核心思想只有三步:

  1. 算偏差: 每个点先算相对目标(规格中心/目标均值)的偏差:

  2. 双向累加: 分别累积“偏高”和“偏低”两条路径:

  3. 设限判异:

  • 参量解释:

    • k为松弛系数,一般取 k = 0.5(代表能最敏感地捕捉 1σ 的偏移)。

    • h 为控制限系数,一般取 h = 4 或 h = 5(模板里按常见默认:k = 0.5, h = 4)。

    • 敲重点:目标值(均值)必须填规格中心或工程目标值。没有目标值,CUSUM 就失去了“累积偏离”的锚点,是没法正经做的。

文件结构说明

模板文件内分为两个 Sheet:

  1. 单值:一次只测一个观测值(如液位、温度、单件尺寸)。

  2. 子组:每组 5 个值(可自由扩展为你的子组容量 n)。

下面的excel实现的cusum算法,和minitab结果是一模一样的。

单值

1. 表头结构

主要包含:序号Xj(测量值)、ci(偏差)、C+i(上累积)、C-i(下累积)、极差(移动极差 MR),以及 UCL / LCL / CL

2. 右侧参数区(以 K 列和 L 列为例)

参数名称单元格位置Excel 公式 / 填入值逻辑说明
均值(目标)L10(按实际规格中心填)累积偏差的基准锚点
hL24控制限倍数
kL30.5松弛系数
k*sigmaL4=L3*L5k*σ
标准差 σL5=AVERAGE(F3:F26) / 1.128平均移动极差
UCLL7=L2*L5
h*σ
LCLL8=-L7$-h \times \sigma$

3. 数据行公式(以第 3 行为例,即 i=2):

    子组

    如果每次抽样是一个子组(比如一组 5 个样品),不能直接把所有单值混在一起算。子组 CUSUM 的核心在于“以组均值为主线,且标准差要进行子组调整”。

    1. 核心差异点

    1. 点位值: 用子组均值减去目标值,即 

    2. 波动衡量: 估计总体标准差时,推荐采用合并标准差并经 C4 偏置修正,这样能有效消除组间漂移对标准差估算的干扰。

    3. 标准差调整: 控制限和累积扣除项里的标准差,使用的是均值的标准差

    2. 右侧参数区(以 O 列和 P 列为例)

    参数名称单元格位置Excel 公式 / 填入值逻辑说明
    均值(目标)P10(规格中心)目标基准
    h / kP2 / P34 / 0.5默认参数
    自由度 dfP10=25*(5-1)组数* (n-1) = 100
    合并标准差 σP11=SQRT(SUM(J2:J26)/P10)/(EXP(GAMMALN((P10+1)/2)-GAMMALN(P10/2))*SQRT(2/P10))基于组内离差平方和(DEVSQ)汇总,并除以 C4 修正系数
    调整标准差 P5=P11/SQRT(5)关键点:
    k*sigmaP4=P3*P5
    UCL / LCLP7 / P8=P2*P5 / =-P7

    3. 数据行公式(以第 3 行为例):

      Excel实现合并标准差的算法是非常复杂的。如果想进一步了解合并标准差,请看《全网第一个讲清楚CPK如何计算的,Step by step,Excel和Python同时实现》,这里面的CPK分母的sigma就是用合并标准差,有很详细的公式说明和过程。

      总结:什么时候用 Shewhart,什么时候用 CUSUM?

      • Shewhart 控制图(Xbar-R / I-MR):

        适合看大跳变(> 2σ ~ 3σ)、突发性异常、孤立的爆点。直观、好解释,产线接受度高。

      • CUSUM 控制图:

        适合看微小偏离(0.5σ ~ 1.5σ)、刀具缓慢磨损、原料批次间微小漂移、化工连续反应微调。

      建议组合拳: 常规巡检用常规控制图监控大突变,对质量要求极高的关键特性/易漂移工序,并行叠加 CUSUM 进行早期预警。

      如果需要模板

      如果觉得上面的太难无法复刻,Excel我们已经做好了,v下面两个v信获取:

      simple-SPC 或者 simple_spc2

      如果在 Excel 搭建或算法理解上有疑问,欢迎在评论区交流,或者v我们交流!如果觉得搞公式太繁琐,也欢迎体验我们的 斌果 SPC 软件,开箱即用,自动生成专业控制图。

      --end--

      斌果SPC,具有以下特点

        • 1天即可上线

        • 几万的价格

        • 不限用户数不限在线用户数,不限点数,不限看板数量,人手一个账号

        • 所有的用户都通过浏览器使用

        • 服务器授权,一次性终身授权,没有每年授权费用

        • 支持SPC控制图:I-MR、Xbar-S、Xbar-R、MR-R/S、NP、C、P、U

        • 全面支持标准SPC的八大判异规则(以及自定义判异规则)

        • 多种数据录入方式在线手动录入、在线Excel导入、HTTP接口同步、TCP采集、MQTT采集、OPC数据采集、DB2DB采集、共享文件采集

        • 一键SPC分析报告:控制图、正态性检验、彩虹图、箱线图、分布拟合、过程能力分析直方图、机器学习判异图、能力对比图、数据摘要、大模型解读、自相关诊断、基线与震荡分离

        • 创建任意数量的SPC监控看板:动态看板、综合看板、统计看板,可以包含任意检测项目的SPC控制图、彩虹图、直方图和箱线图,最适合车间大屏使用

        • 后台监控SPC控制图判异,CPK和PPK异常监控

        • 通知渠道:邮件、企业微信、钉钉、飞书、MQTT 、接口

        • 控制图实时自动更新

        • 11种语言版本,20种主题配色

        • 多种分析工具:CPK工具、回归分析、相关分析、正态性检验、单样本T检验、双样本T检验、分布拟合等等

        • 开放的SPC判异接口等接口

        • 集成MSA测量系统分析

        • SPC协同管理所有供应商的SPC

        • 企业内网私有化部署,数据安全可控,基于浏览器,无需安装客户端

        如果你们需要快速实施这样的一个SPC软件,可以加我们的v信:
        simple_spc2 或 simple-SPC