前言
在实际测量过程中,通常需要查看某一类尺寸的极值,例如在一个曲面上测量很多单点,查找偏差最大的T值;又或者测量很多孔,取出孔位置度的最大实测值。我们以测量多个孔为例,来介绍通过赋值和循环结合的方法取出实测值的最大最小值或超差尺寸的最大最小值。
例一
通过赋值和数组的方式取出实测值的最大最小值
取出FCF1-FCF6六个尺寸的实测值最大最小。可以将六个尺寸的实测值放到一个数组中,再通过“MAX”和“MIN”函数计算极值。
接下来可以通过注释-报告命令或者构造一般特征的方式将结果显示在报告中,我们以注释的方法为例,将结果显示在报告中。
该方法操作比较简单,在参与评价的尺寸总数量较少时,可以快速取出实测值的极值,但是当尺寸很多时,需要在数组中人工输入大量信息,并且数组中的字符存在上限,会出现无法输入全部信息的情况,需要将尺寸拆分到多个数组中,再比较每个数组中的最大值,降低了编程效率。此外,该方法无法计算超差尺寸中的最小值(会被不超差的数据替代),得到超差值最小为0的错误结果。
例二
通过赋值和循环的方式取出实测值和超差值的最大最小值
取出实测值的极值比较简单,以最大值为例,赋值ZD1=FCF1.MEAS作为初始值,循环取出下一个尺寸的实测值,如果数值大于前一个尺寸实测值,则变量ZD1将会被新数值替代,直到所有尺寸均参与比较,循环结束。需要注意的是,建议将赋值尺寸名称变量和赋值实测值变量写成两部,不要直接赋值ZD2=“FCF”+N.MEAS。取最小实测值方法相同。
接下来我们取超差值中的最大值,方法与取实测值类似,如果全部尺寸都没有超差,可以用上文提到的方法在报告中注释“超差值最大为0”,也可以用条件判断添加“所有尺寸均合格”等类似字样的注释。
最后,我们取超差值中的最小值,需要注意的是,应该排除掉不超差的数据,否则最终计算出的最小值为0。方法如下:1.先判断超差值最大值是否为0,如果为0,可以直接跳转到程序结尾或者在报告中输出“所有尺寸均合格”,2.在循环过程中通过条件判断,排除超差值为0的数据,3.注意变量的初始值,如果赋值初始变量ZX1=FCF1.OUTTOL,当第一个尺寸不超差时,最终结果也会为0。可以在第一步超差最大值不为0的条件下,将初始值设置为超差最大值,循环取非0的最小值
例三
通过赋值循环先进行尺寸评价,再取极值
当需要评价的尺寸很多时,先通过循环把某类尺寸创建出来,再取极值会是更便捷的方法。以测量六个孔(圆1至圆6),评价相对于基准的位置度(位置度1至位置度6)为例。将尺寸名称和被评价特征名称作为变量循环,再结合上述例子的方法取出需要的极值。
例四
找出极值对应的尺寸评价
以实测值最大值为例。当我们按照上述方法找到实测的最大值后,可能还需要找出最大值对应的尺寸评价。可以在上述例子的基础上,在IF条件判断中增加一个新变量赋值/MA=N即可。如下图报告,六个尺寸中,实测值最大为位置度3。我们可以通过循环赋值结合使用,即使存在几十甚至上百个尺寸,也可以快速实现创建尺寸评价,取出极值,找到对应尺寸名称的功能。