【引言】
在日常质量数据分析中,你是否遇到过这样的“灵异事件”?
客户发来一张Excel表,要求计算**不平度(Flatness)**的Cpk,规格要求是 Max 0.02。你信心满满地打开JMP,导入数据,在列属性里设置规格限:
心想:“不平度嘛,当然不可能小于0,物理极限就是0,设个0肯定没错。”
结果一运行能力分析,傻眼了——JMP算出来的Cpk只有0.5,而客户Excel表里算出来却是1.6!
是你算错了?还是软件出Bug了?
今天就和大家聊聊这个让无数工程师踩坑的**“单边公差”**设置问题。
01 还原案发现场:冤枉的“双边”
为什么结果会差这么大?
因为当你同时输入了 下限(0) 和 上限(0.02) 时,JMP会默认这是一个双边公差。
根据Cpk的定义,双边公差的计算公式是:
Cpk = min(Cpl, Cpu)
这意味着,软件不仅要考察数据离上限(0.02)有多远,还要考察数据离下限(0)有多远。
对于不平度这种参数,工艺控制得越好,数值就越小(比如0.002, 0.003),也就是越接近0。
这时候尴尬的事情发生了:
JMP发现你的数据离下限(0)非常近,判定:“哎呀,你的数据这就快要超下限了,这很危险啊!” 于是它算出了一个极低的 $Cpl$,直接拉低了最终的Cpk。
但我们在工程上都知道:不平度越接近0越完美,怎么反而变成“危险”了呢?
02 核心误区:把“墙壁”当成了“悬崖”
这个问题的根源,在于混淆了**“物理自然边界”与“统计规格界限”**。
我们可以用一个形象的比喻来区分:
规格限(Spec Limit)是“悬崖”:
如果数据掉出这个范围(比如大于0.02),产品就报废了(NG)。Cpk计算的是**“你离悬崖有多远”**。离悬崖越远,你就越安全,Cpk越高。
自然边界(Natural Boundary)是“墙壁”:
比如不平度的0,或者绝对零度。这是物理世界的尽头,你即使紧紧贴着它,也穿不过去。
关键逻辑来了:
如果你把LSL设为0,软件会误以为0也是一个“悬崖”。
当你背靠着坚实的墙壁(0),觉得无比安全时;软件却以为你站在悬崖边瑟瑟发抖,从而给出了差评。
这就是典型的**“由于过于优秀而被误判为高风险”**。
03 深度剖析:不存在的“不合格品”
作为一名专业工程师,我们还要从更深一层的逻辑来看待这个问题。
我们为什么要设规格限?
是为了拦截“可能出现的不合格品”。
只有当“存在产生不合格品的可能性”时,设定规格限才有统计意义。
结论:
凡是物理上无法逾越、或者质量上永远被接受的那个方向,在软件里必须“留空”!
04 正确的JMP操作姿势
回到软件操作层面,正确的做法非常简单:
只设关注的那一边,另一边留空!
(1) 针对不平度/同轴度/圆跳动(只有上限要求):
(2) 针对拉力/推力(只有下限要求):
05 进阶彩蛋:如果不服从正态分布怎么办?
读到这里,你已经解决了90%的Cpk计算错误。但为了严谨(防杠),我们最后再聊一个进阶话题。
细心的朋友可能发现了:不平度这种受物理边界“0”限制的数据,往往天然不服从正态分布。
因为数据被“0”这堵墙挡住了,无法向左延伸,只能向右拖尾。这在统计上通常表现为右偏分布(Skewed Distribution)。

如果你直接用传统的 Cpk 公式(基于正态分布假设),哪怕去掉了下限,计算结果在理论上其实还是有偏差的。
对于这种非正态数据,更专业的做法是:
寻找最佳拟合分布(Best Fit):JMP 分布分析的界面,展示出 “比较分布 (Compare Distributions)” 的那个列表,上面列着 LogNormal, Weibull, Normal 等等,并且有一个被高亮选中为 Best Fit。
数据变换: 在JMP中使用Johnson变换或Box-Cox变换,把数据“拉”成正态再计算。
百分位法(Percentile):(推荐)ISO标准中推荐的方法,直接根据数据在分布中的实际位置(如99.865%分位点)来评估能力,不依赖正态假设。
当然,在大多数日常工程交付中,只要你做到了**“下限留空”**,用正态公式算出来的结果通常已经在客户接受范围内了。但如果我们要追求极致的专业度,记得关注一下数据的分布形态哦!