• 某头部新能源汽车:100多台三坐标数据采集做SPC监控看板

    某头部新能源汽车工厂里有 100 多台三坐标,要把测量结果采进斌果SPC,做实时分析和看板。

    每台三坐标的报告先存在自己那台电脑上。电脑里有一个常驻程序,定期把文件同步到同一个共享文件夹。100 多台都这么同步。

    斌果SPC这边再跑一个采集程序,定期扫这个共享文件夹,把读到的检测数据写入软件。

    SECTION 01

    整个过程

    1. 三坐标写出 xlsx,同步程序把它放到约定的共享文件夹。
    2. 采集程序一直在跑,默认每 60 秒扫一轮。
    3. 先筛文件:只收 xlsx;创建时间要落在回溯窗口里(现场大约 50 分钟);创建和最后修改都要超过大约 10 秒。
    4. 再看这份文件处理过没有。处理过就整份跳过。
    5. 没处理过,先拷到服务器本地再打开解析,不长时间占用共享盘上的原文件。
    6. 第 1 行当说明跳过,第 2 行当表头,第 3 行起逐行写入。
    7. 每一行用关联ID对到检测项目:有就写检测值,没有就先建项目再写。
    8. 这一轮读完,文件没有整份读坏,就打上「已处理」。下一轮不再进。

    从报告落到共享盘,到控制图出现新点,一般在 1 分钟以内。

    SECTION 02

    共享盘

    只扫配置的那一个目录。100 多台机台的报告都要直接放到这个路径。

    只扫描xlsx文件。

    访问共享盘需要账号时,在程序里配置用户名和密码;没有账号,就按当前这台机器的身份去连。连不上,这一轮没有可处理的文件,下一轮再试。

    文件名就是去重依据。两台机台不要写出同名文件,后到的那份会被当成已经处理过,直接跳过。

    SECTION 03

    为什么有的文件这轮不采

    创建或刚改过不到大约 10 秒,先不采。过了静默期,下一轮就会进来。

    创建时间超出回溯窗口(大约 50 分钟)的,不再采,省服务器资源。

    电脑时间比服务器快、文件时间跑到未来的,这一轮也不收。

    读不到文件时间的,跳过并写进日志。

    SECTION 04

    处理一份文件时,程序做什么

    先按文件名查有没有处理过。处理过就整份跳过,不拷、不读。

    没处理过,拷到本地工作目录。读的是单元格算出来的数值。表里如果是公式,文件里需要已经算出结果。

    空文件、没有第 2 行表头、必填表头缺任何一列:整份放弃,不打已处理标记。改好表头,或换一份正确的文件,后面几轮还会再抓。

    拷贝失败、Excel 整份读坏:同样不打标记,下一轮再试。

    表头齐全之后,从第 3 行起一行一行处理。整份走完仍会打已处理标记。被丢掉或写入失败的行,不会因为同一文件名再跑一遍而补上。

    日志会记下这份文件处理了多少行、成功多少、跳过多少、失败多少、新建了多少检测项目。大约每 20 行,或每隔大约 15 秒,打一条进度。

    SECTION 05

    每一行怎么变成一条检测数据

    程序按固定格式整理 Excel。

    必填列的表头必须是这些英文名,多一个空格都不认:

    • item:检测项目编号
    • description:检测项目描述
    • upper_tolerance:上规格限
    • lower_tolerance:下规格限
    • nominal:中心值
    • run:检测值
    • measure_time:检测时间

    检测时间支持常见写法,例如 2026-10-27 14:30:00、2026/10/27 14:30。只有日期时,按当天 00:00:00 写入。

    下面这些列不是必填,有就写到这条检测记录上:

    • part_serial_number:工件流水号
    • part_name:送测零件号
    • op_number:加工工序
    • rawpart_number:工件毛胚号
    • eq_number:设备号
    • axis_number:主轴号
    • measure_machine:测量设备
    • important_level:重要等级
    • reason_for_inspection:检测事由
    • inspector:检验员

    源文件名会记在记录上,以后能查到这条数来自哪一份报告。录入方式记为文件采集。

    检测值不是数字、检测时间为空或解析不了、项目编号为空,这一行丢掉。

    过了这些检查,程序用这一行拼关联ID:

    item + description + 上规格限 + 下规格限 + 中心值

    中间用 + 连接。某一段是空的,写成 null。例如编号 D12、描述孔径、上限 10.05、下限 9.95、中心值 10,关联ID 就是 D12+孔径+10.05+9.95+10。

    SECTION 06

    为什么要用关联ID

    从 Excel 读到的检测数据,并不知道对应斌果SPC里哪一个检测项目。所以用关联ID来对照:有对应的就写入,没有就自动创建检测项目。

    系统里已经有这个关联ID:直接写入检测值。

    没有:按这一行自动建检测项目,名称是「编号 和 描述」,上限、下限、中心值用表里的数,监控默认打开,然后写入检测值。

    新零件试产多出来的测量点,或者图纸改了上下限,不用质量人员先去系统里建档。公差改了,关联ID 跟着变,会建成新项目;旧数据仍挂在原来的规格上。

    SECTION 07

    在斌果SPC里能看到什么

    检测项目按关联ID挂好之后,新点出现在对应控制图上。Cpk 下降或出现连续异常点时可以告警。

    你也可以做成这样的看板:

    image.png

    工件流水号、零件号、工序、设备、检验员这些字段可以跟到控制图和统计里,按机台、零件、人员看差异。

    你可以这样用:

    04 快速寻找检测项之间的相关影响来调整参数优化检测结果

    03 快速原因分析和如何利用不同的CPK来提高客户服务水平

    02 用FFT寻找隐藏的周期性

    01 寻找检测项目的自相关影响

    以前质检员用 U 盘拷,或者打开共享目录再手工誊。100 多台三坐标每天行数多,容易抄错、漏行,分析也滞后。接入之后,现场不再手工录入三坐标报告。

    本页面文章与公众号同步。

    斌果SPC微信公众号二维码

    微信扫码关注