3. Hexagon测量系统分析的数据结构
做MSA时,很多人把注意力放在“用哪个公式算GRR”上,却忽略了更前置的一件事:数据是怎么被组织起来的。同一台Hexagon三坐标、同一套程序、同一批零件,如果数据结构设计得不对,后面无论用Q-DAS还是Excel,算出来的重复性、再现性、偏倚都可能失真。本节要讲清楚MSA数据的五个基本维度,以及PC-DMIS和Q-DAS各自如何承载这些维度。
一、MSA数据的五个基本维度
任何一份可用于GRR或偏倚分析的数据集,本质上都是围绕五个维度展开的:
- 零件(Part):被测对象。GRR要求零件之间存在真实差异,通常取10个零件,编号P1~P10。零件差异越大,越容易把测量系统的变异从零件变异中分离出来。
- 操作者(Operator/Appraiser):执行测量的人。一般取3人,记为A、B、C。再现性主要来自操作者之间的差异,包括装夹手法、测点选择、探针路径习惯等。
- 试验次数(Trial/Replicate):同一操作者对同一零件的重复测量次数,通常为2~3次。它承载的是重复性信息。
- 参考值(Reference):零件的约定真值或基准值,来自更高等级设备、标准件或图纸标称值。偏倚、线性分析必须有参考值;纯GRR分析可以没有,但有了它才能判断测量系统是否“准”。
- 测量值(Measured Value):三坐标实际输出的结果,是上述四个维度交叉后得到的观测值。
这五个维度的关系可以用一句话概括:测量值 = f(零件, 操作者, 试验次数),并可与参考值比较得到偏倚。数据结构设计的目标,就是让每一次测量都能被唯一地定位到“哪个零件、谁测的、第几次”,并且能追溯到参考值。
二、PC-DMIS侧的数据组织方式
在PC-DMIS中,测量数据天然是“按程序、按特征”组织的。一个典型测量程序里,每个被测特征(圆、平面、圆柱、位置度等)都有理论值(Nominal)和实测值(Actual)。理论值来自CAD模型或图纸,本质上就是参考值;实测值是探针触测后计算出的结果。
当我们要做MSA时,需要把PC-DMIS的输出“翻译”成MSA能用的结构。常见做法有两种:
- 报告直接导出CSV:在PC-DMIS中设置报告模板,输出包含“零件编号、操作者、运行次数、特征名、理论值、实测值”的表格。每次测量前手动或通过程序变量写入PartID和Operator,Run字段由程序计数器自动累加。
- 通过Q-DAS接口导出:PC-DMIS支持将测量结果写入Q-DAS格式(如DFQ/DFX),此时零件号、操作者、试验次数需要在程序头或测量计划中预先定义,否则Q-DAS收到的是“无主数据”的裸测量值,无法直接做GRR。
这里有一个容易踩的坑:PC-DMIS默认按“特征”输出,而MSA要求按“零件×操作者×试验次数”组织。如果程序里没有把零件号和操作者写进输出,后期用Excel手工补,极易错行。建议在程序开头用注释或变量明确记录:
PartID = "P03"
Operator = "B"
Run = 2
Feature = "CIRCLE_D10"
Nominal = 10.000
Actual = 10.012
这样导出的每一行都自带完整维度,后续无论进Q-DAS还是Excel,都不需要再猜“这是谁测的”。
三、Q-DAS侧的数据组织方式
Q-DAS(如qs-STAT、destra)对MSA数据有更严格的表结构要求。它通常采用宽表形式:每一行是一个零件,列则包含参考值、操作者A的多次测量、操作者B的多次测量、操作者C的多次测量。例如:
| Part | Reference | A_Run1 | A_Run2 | B_Run1 | B_Run2 | C_Run1 | C_Run2 |
|---|---|---|---|---|---|---|---|
| P01 | 10.000 | 10.012 | 10.010 | 10.015 | 10.013 | 10.009 | 10.011 |
| P02 | 10.050 | 10.061 | 10.059 | 10.064 | 10.062 | 10.058 | 10.060 |
| P03 | 9.980 | 9.991 | 9.989 | 9.994 | 9.992 | 9.988 | 9.990 |
这种结构的优点是:Q-DAS可以直接识别“操作者”和“试验次数”两个因子,自动计算重复性、再现性和GRR。缺点是:如果某个操作者少测了一次,整行数据就不完整,软件可能拒绝分析或给出警告。因此,在Q-DAS中做MSA,数据完整性比格式美观更重要。
另外,Q-DAS对参考值的处理很灵活:可以每行一个参考值(如上表),也可以单独维护一个“零件-参考值”对照表,通过零件号关联。对于Hexagon三坐标来说,参考值通常来自CAD理论值或已校准的标准件,建议在Q-DAS中单独建一列“Reference”,不要和测量值混在一起。
四、数据结构设计中的三个关键判断
第一,参考值从哪来?如果做GRR,参考值可以暂时空缺,但做偏倚和线性时必须要有。Hexagon用户常用两种来源:CAD模型的理论值,或更高精度设备(如计量型三坐标、标准件)测得的基准值。两者不能混用,否则偏倚计算会失去意义。
第二,试验次数是否平衡?MSA标准要求每个操作者对每个零件测量相同次数。如果A测了3次、B只测了2次,Q-DAS会按不平衡数据处理,GRR结果的可信度下降。建议在PC-DMIS程序里用循环控制,确保每个操作者、每个零件都跑满设定次数。
第三,零件编号是否唯一且稳定?零件编号是连接测量值与参考值的钥匙。如果同一零件在不同操作者手里被编成不同号,数据就无法按零件聚合。建议在零件上贴固定标签,PC-DMIS程序里用变量读取,而不是每次手动输入。
总结来说,Hexagon MSA的数据结构并不复杂,核心就是让每一次测量都能被“零件、操作者、试验次数”唯一标识,并且能关联到参考值。PC-DMIS负责产生带维度标签的测量值,Q-DAS负责把这些值组织成可分析的宽表。两者之间的字段映射,才是实际工作中最需要提前设计好的部分。