连续抽样检验CSP-1方案设计器|SPC实战工具
这个工具解决什么问题
来料或成品检验常年在两种错法之间摇摆:要么 100% 全检把人累垮,要么定个「抽 1/10」的 经验比例却说不清放走了多少不良。CSP-1(连续抽样检验)正好适合「连续流、不合格品率较低 且相对稳定」的产线:全检到连续 i 件合格后转入抽检,一旦抽到不合格品立即退回全检。 本工具把 (i, f) 两个参数的组合全部算一遍,给出平均检验比例 AFI、平均检出质量 AOQL, 并按「AOQL 达标下检验量最小」推荐方案,同时用产线流水仿真验证解析式结论。
输入数据格式
数据文件 csp1_production_log.csv,列顺序为:序号、判定(0合格/1不合格)。
示例首行:1,0
示例输出(真实运行结果节选)
============================================================================== 连续抽样检验 CSP-1 方案设计报告 ============================================================================== 一、输入条件 产线平均不合格品率 p0 = 0.80%(评估正常运行时的检验负担用此值)。 企业可接受的平均检出质量上限 AOQL = 1.20%。 CSP-1 规则:先 100% 全检,连续 i 件合格后转入抽检期; 抽检期按比例 f 抽检,一旦抽到不合格品,立即退回全检期。 二、候选方案网格(i = 连续合格数,f = 抽检比例) 方案 AFI@运行 AOQL AOQL对应p 是否达标 ------------------------------------------------------------------ i=10 f=1(全检) 100.0% 0.000% 0.00% 达标 i=10 f=1/2 52.0% 2.618% 11.47% 不达标 i=20 f=1(全检) 100.0% 0.000% 0.00% 达标 i=20 f=1/2 54.0% 1.349% 6.05% 不达标 i=30 f=1(全检) 100.0% 0.000% 0.00% 达标 i=30 f=1/3 38.9% 1.507% 4.68% 不达标 i=40 f=1(全检) 100.0% 0.000% 0.00% 达标 i=40 f=1/4 31.5% 1.479% 3.88% 不达标 i=50 f=1(全检) 100.0% 0.000% 0.00% 达标 i=50 f=1/6 23.0% 1.600% 3.53% 不达标 i=75 f=1(全检) 100.0% 0.000% 0.0
一句话
把「抽多少件」从拍脑袋变成一个可算的方案:在 AOQL 达标前提下把检验量压到最低。
运行环境与快速开始
纯 Python 标准库,零第三方依赖,Python 3.8+ 开箱即跑。首次运行自动生成示例流水与中文报告。
python csp1_plan_designer.py
输入数据格式(换成你的数据即可)
· 脚本顶部常量区:产线平均不合格品率 P0、可接受质量上限 AOQL_TARGET、 候选连续合格数 I_LIST、候选抽样比例 F_LIST。 · 生成的 csp1_production_log.csv 是示例产线流水(序号, 判定),仅供仿真演示; 实际应用中只需把 P0 换成你产线的实测不合格品率。
输出说明
候选方案网格表(每档 i 的最省工达标方案)、推荐方案(i、f、AFI、AOQL)、 与经验方案(i=50、f=1/10)的对比、解析式与仿真一致性校验、上线注意事项。
算法口径(关键公式)
· AFI = f / [ f + (1−f)·(1−p)^i ] · AOQ(p) = p · (1 − AFI(p)),AOQL = max{p∈(0,0.2]} AOQ(p) · 检验量折算 = AFI × 日产量
判定标准说明
公式取自 Dodge 连续抽样检验(CSP-1)经典结果;AOQL 由扫描法数值求得, 避免了近似式在极端参数下的偏差。示例数据为自动生成的演示场景, 接入真实不合格品率后结论即为真实结论。
常见问题
· 能改参数吗? 能。所有常量集中在脚本顶部,改完重跑即可。 · 和 AQL 抽样方案有什么区别? AQL 方案按「批」抽,本工具按「连续流」抽, 无需分批,适合自动化产线。 · 报告能导出吗? 每次运行自动生成 示例输出报告.txt,可直接归档或贴进周报。 · i 越大越好吗? 不是。i 越大越省检验量,但转全检越迟钝、应对异常越慢, 必须在 AOQL 约束下取折中。
可调参数与计算口径
脚本顶部集中了主要阈值与常量:RPT_PATH=os.path.join(HERE, "示例输出报告.txt")、SEED=20261005、I_LIST=[10, 20, 30, 40, 50, 75, 100, 125, 150]。改完直接重跑即可,不必改动计算逻辑。
会生成哪些文件
运行后除控制台输出外,还会生成:csp1_production_log.csv、示例输出报告.txt。
脚本里的主要处理步骤
afi():平均检验比例(Dodge CSP-1 解析式)。p 不合格品率,i 连续合格数,f 抽样比例。aoq():平均检出质量:抽检期未查出的不合格品流入下道工序。aoql():在 (0, hi] 上扫描 p,取 AOQ 的最大值作为 AOQL。simulate():按 CSP-1 规则跑一遍产线流水,返回实测 (检验比例, 检出不合格率)。
以上步骤在脚本中是分开的函数,可以单独调用或按需替换其中一段,不必整体重写。
工具中出现的字段与提示
- 平均检出质量:抽检期未查出的不合格品流入下道工序。
- 在 (0, hi] 上扫描 p,取 AOQ 的最大值作为 AOQL。
- 按 CSP-1 规则跑一遍产线流水,返回实测 (检验比例, 检出不合格率)。
- 判定(0合格/1不合格)
- 连续抽样检验 CSP-1 方案设计报告
- 一、输入条件
- 产线平均不合格品率 p0 = %.2f%%(评估正常运行时的检验负担用此值)。
- 企业可接受的平均检出质量上限 AOQL = %.2f%%。
- CSP-1 规则:先 100% 全检,连续 i 件合格后转入抽检期;
- 抽检期按比例 f 抽检,一旦抽到不合格品,立即退回全检期。
- 二、候选方案网格(i = 连续合格数,f = 抽检比例)
- 1(全检)
- (每档 i 仅列出最省工的达标方案;全格网格见脚本内 grid 变量)
- 三、推荐方案
- 建议加大 i 或提高 f,或与客户重新协商 AOQL。
- 推荐方案:i = %d,f = %s
- 把连续合格数提高到 %d、抽检比例放宽到 %s,既能拦住不良又比它更省检验量。
- 每天节省约 %.0f 件检验工时。
其余字段以界面与示例报告为准。
下载与文件清单
压缩包内包含:主程序脚本、示例数据文件、示例输出报告、中文说明文档,以及同主题 AI 提示词一套。解压后按说明运行即可,示例数据可直接试跑。
主程序文件:csp1_plan_designer.py。
本站工具免费下载,无需注册。工具为 Python 脚本,Python 3.8 及以上环境可直接运行,核心功能尽量不依赖第三方库。
常见问题
输入数据要准备成什么样?
按 示例首行中的列顺序准备即可,共 2 列:序号、判定(0合格/1不合格)。列为空或格式不符时结果会失真,建议先用示例数据试跑一遍。
阈值可以改成我们自己的标准吗?
可以,脚本顶部已把主要阈值与常量集中声明,按自己产线的标准修改后重跑即可,不需要改计算逻辑。
附赠的提示词怎么用?
把提示词与自己的数据一起交给大模型,可以让它按同一套口径帮你改写分析流程或扩展报告字段。
示例数据能直接跑吗?
可以。示例数据与主程序在同一压缩包内,解压后直接运行即可看到完整输出,确认无误再替换成自己的台账。
同分类的其它工具
分类归属:SPC与质量分析工具包;完整清单在 工具资源包下载页。





