
之前手算SPC控制限出了个大事故。我把含异常值的原始数据直接算3σUCL设得过高15批不合格晶圆流到下游300片报废损失45万。后来用GPT-4o写控制图代码5分钟出图错误率从15%降到0.5%。一、手算SPC为什么容易翻车SPC控制限的核心是X-bar/R图需要先按子组算均值再算整体均值和极差。每步都有坑子组大小选错系数就不对异常值不剔除UCL就偏高。我之前用Excel拉公式不小心引用了含异常值的行结果UCL设成了105nm实际应该是100nm。等发现的时候已经报废了15批。二、GPT-4o自动生成核心思路告诉GPT-4o输入格式和输出要求它自动生成X-bar图和R图代码。关键代码50行import pandas as pd, numpy as npimport matplotlib.pyplot as pltdef spc_xbar_r_chart(data, subgroup_size5, titleX-bar/R Chart):data data.dropna()subgroups [data[i:isubgroup_size].values for i in range(0, len(data), subgroup_size)]if len(subgroups[-1]) subgroup_size: subgroups.pop()xbars [np.mean(sg) for sg in subgroups]ranges [np.max(sg)-np.min(sg) for sg in subgroups]xbb np.mean(xbars); rb np.mean(ranges)A2 {2:1.88,3:1.023,4:0.729,5:0.577,6:0.483,7:0.419,8:0.373}.get(subgroup_size, 0.577)D3 {2:0,3:0,4:0,5:0,6:0,7:0.076,8:0.136}.get(subgroup_size, 0)D4 {2:3.267,3:2.575,4:2.282,5:2.115,6:2.004,7:1.924,8:1.864}.get(subgroup_size, 2.115)fig, (ax1, ax2) plt.subplots(2, 1, figsize(10, 6))n len(xbars)ax1.plot(range(1,n1), xbars, o-, color#3498db)ax1.axhline(xbb, colorgreen, ls--, labelfCL{xbb:.2f})ax1.axhline(xbbA2*rb, colorred, ls--, labelfUCL{xbbA2*rb:.2f})ax1.axhline(xbb-A2*rb, colorred, ls--, labelfLCL{xbb-A2*rb:.2f})ax1.set_title(title - X-bar); ax1.legend(fontsize8); ax1.grid(True, alpha0.3)ax2.plot(range(1,n1), ranges, s-, color#e74c3c)ax2.axhline(rb, colorgreen, ls--, labelfR-bar{rb:.2f})ax2.axhline(D4*rb, colorred, ls--, labelfUCL_R{D4*rb:.2f})if D3 0: ax2.axhline(D3*rb, colorred, ls--, labelfLCL_R{D3*rb:.2f})ax2.set_title(title - R图); ax2.legend(fontsize8); ax2.grid(True, alpha0.3)plt.tight_layout(); return figdata np.random.normal(100, 2, 200)fig spc_xbar_r_chart(data, subgroup_size5, title晶圆厚度SPC分析)plt.show()三、效果图1 SPC控制图效率对比图2 GPT-4o自动生成的X-bar控制图手工2小时→5分钟错误率15%→0.5%。关键是GPT-4o自动匹配子组系数(A2/D3/D4)不会再出现用错系数的低级错误。四、踩坑经验1. 数据必须先清洗再输给GPT-4o带异常值它会帮你算错2. 子组大小统一用5A20.577最常用别换来换去3. 正态检验没过别硬用3σ换中位数极差法4. 控制图是工具不是目的——看图发现异常后要去分析根因五、总结GPT-4o写SPC控制图代码的价值秒出图、公式自动匹配、错误率几乎为零。每个工程师都应该掌握这个能力。