一种基于数字化量规的给定平面内直线度评定方法与流程

文档序号:19156253发布日期:2019-11-16 00:49阅读:275来源:国知局
一种基于数字化量规的给定平面内直线度评定方法与流程

本发明属于精密计量与计算机应用领域,涉及一种快速、稳定、形式简单,数字化的给定平面内直线度评定方法,可用于数控机床设备中导轨表面的给定平面内直线度误差评定方法,并为零件加工过程以及加工工艺的改进提供指导。



背景技术:

尺寸误差、形位误差(形状误差和位置误差的简称)直接影响产品质量、装配及其使用寿命,快速、准确地计算零件误差,具有重要的意义。根据国家标准gb/t11336-2004和iso标准中给出了任意方向上直线度的定义和判别方法,零件在任意方向上直线度误差评定需要满足最小区域条件以获得较好的评定验证结果。鉴于当前社会生产中计算机数字化技术的广泛应用以及数字化测量的蓬勃发展,将实体量规以数学模型的方式与测量数据结合来处理零件的方式无疑是全面优于传统实体量规检测。它避免了量规因使用产生的损耗,且由于其以虚拟模型的形式存在,可根据不同零件的检测需求改变自身几何参数。相对于实体量规只能检测合格性的局限,数字化量规还能在检测中给出确切误差数值。

目前,数字化量规用在给定平面内直线度误差评定是学术界的一个研究热点,评定的实现主要存在两大问题。其中之一建立的评定方法模型将测点所在的空间位置与理想直线进行最优匹配,使得测点处于以理想直线为中心线的最小区域内。目前,国内外学者提出了相应的优化评定方法,例如:遗传算法、粒子群算法、包容区域迭代搜索算法、天牛须算法等算法进行最小区域的搜索。这些方法在计算过程中模型的形式比较复杂以及存在随机性,需要相应的方法来保证结果的稳定性,当测点数目较多时,计算效率不高以至于无法满足生产需求。

综上所述,目前仍然缺少一种快速、稳定、形式简单,数字化的给定平面内直线度评定方法。



技术实现要素:

本发明的目的是:

本发明针对现有的技术存在的所述问题,涉及一种快速、稳定、形式简单,数字化的给定平面内直线度评定方法,可用于数控机床设备中导轨表面的给定平面内直线度误差评定方法,并为其加工工艺的改进提供指导。

本发明采用的方案是:

一种基于数字化量规的给定平面内直线度评定方法是通过以下几个步骤实现的:

步骤1:将待测零件置于测量平台上,在三坐标测量机的坐标系中测量并获取测点qj*={xj,yj},所有测点的集合为测点集{qj*},其中:j=1,2,3,…,m。将测量集{qi*}通过绕着坐标原点旋转,旋转公式:,使得评定基线接近于坐标系的原点,y轴垂直于主方向,再对y坐标值预定位,使得测点集更接近于x轴,得到的测点坐标值qi={xi,yi},所有测点的集合为测点集{qi},以下提到的测点都是测点qi

之后,构建数字化量规形状:根据给定平面上直线度几何定义,由常规坐标变换得到的测点坐标值qi={xi,yi}。根据形状误差的评定准则:由评定基线、上边界直线、下边界直线等三条平行线组成的数字化量规,而且上边界直线与最上方的一个测点接触,下边界直线与最下方的一个测点接触为初始状态;

之后,根据测点集{qi},建立特征行向量集{ai}、上下边界元素集{bi}和状态元素集{ti};其中:i=1,2,3,…,ni为测点序号,n为测点总数;

ti为评定基线上方测点的状态元素,即ti’’为评定基线下方测点的状态元素,即,所有的状态元素的集合为状态元素集{ti};

bi=b,是一个大于0的实数,所有的边界元素bi的集合为边界元素集{bi}。

步骤1结束后进行步骤2。

步骤2:把测点集{qi}视为刚体,预定位结束后,评定基线一直固定不动,而上、下边界直线收缩时推动测点集{qi}向x轴线发生微小平移和转动,评定基线上方测点的法向量为ni=[0,1]t,评定基线下方测点的法向量为ni=[0,1]t,把测点的运动速度投影到法向量上。根据每个测点qi以及相应的法向量建立特征行向量ai,即:评定基线上方的测点qi对应的特征行向量为ai=([-yi,-xiyi])/ti,评定基线下方的测点qi对应的特征行向量为ai’’=([yi,xiyi])/ti’’,所有的特征行向量的集合为特征行向量集{ai};

步骤2结束后进行步骤3。

步骤3:分别取状态元素titi’’中的最大值对应的测点pm,1和pm,2为关键点,并将其测点序号m1和m2为入到关键点集{m}中。

步骤3结束后进行步骤4。

步骤4:根据关键点集{m}建立分析矩阵a和分析列向量b,其中:

a=[…,akt,…,alt,…]t,是个l行2列的矩阵,l为关键点集{m}中的元素个数,k,l为关键点集{m}中的元素;

b=[…,b,…]t,是个l行的列向量。

步骤4结束后进行步骤5。

步骤5:对分析矩阵a及增广分析矩阵[a,b]进行秩分析。

计算ra=rank(a),rab=rank([a,b]),并比较rarab,只有以下两种情况:

情况一:如果判断准则:ra=rab,那么,应当继续寻优,跳到步骤6;

情况二:如果判断准则:ra<rab,那么,尝试从分析矩阵a和分析列向量b中删掉关键点集{m}中的某一个元素m对应的行,得到缩小矩阵am和缩小列向量bm,计算矩阵am的秩,ram=rank(am),增广矩阵[am,bm]的秩rambm=rank([am,bm]),判断ramrambm是否相等;在ramrambm相等的情况下,则求线性方程amvm=bm-的解vm=vm0,然后计算bm=amvm0;如果在尝试关键点集{m}中的元素m时,得到bm>b,那么,将缩小矩阵am和缩小列向量bm分别更新为a矩阵及分析列向量b,将元素l移出关键点集{m},并跳到步骤6;其中,vm=[vm,1,vm,2]tvm0=[vm0,1,vm0,2]t。关键点集{m}中的每个m元素都尝试过了,每个m元素在ramrambm不相等的情况下,也就是说没有得到任何一个bm>b,那么,包容区域为最小包容区域,应当结束寻优,跳到步骤8;

步骤6:求线性方程av=b的解v=v0,其中,v=[v1,v2]tv0=[v0,1,v0,2]t

步骤6结束后进行步骤7。

步骤7:以追及问题求解新的关键点,计算评定基线上方的点的速度:vi=aiv0,然后,计算测点与上边界接触需要的时间:τi=(tmax–ti)÷(b-vi)或者测点与下边界接触需要的时间τi=(ti+t’’max)÷(b-vi);计算评定基线下方的点的速度vi’’=ai’’v0,计算测点与上边界接触需要的时间:vi’’=(tmax+ti’’)÷(b-vi’’)或者测点与下边界接触需要的时间:τi’’=(t’’max-ti’’)÷(b-vi’’),取τi’’τi中大于零的那部分中的最小值τmin对应的测点pm,3为新的关键点,并将其测点序号m3加入到关键点集{m}中。

之后,将评定基线上方所有ti更新为tiτmin∙vi;将评定基线下方所有ti’’更新为ti’’τmin∙vi;将tmax和t’’max更新为ti的最大值。

步骤7结束后完成一次寻优,进行步骤4。

步骤8:计算t=tmax+t’’max就是所求的给定平面内直线度误差。

为了方便获得测点集{qi},所述y坐标预定位,通过以下但不限以下方法进行处理,以获得测点集接近坐标系的x轴,为一、按坐标的平均值进行移动,或二、按坐标的极值进行移动,或三、按坐标的均方根最小原则进行移动;

为了便于数值计算,可以令b取一个具体的大于0的数值,可以但不限于1。

为了得到更精确的解,可以进行如下优化:在步骤6中,为了控制测点集运动位移量,假定一个阈值q,如果τmin∙vi的单次值或历次迭代的累加值∑τmin∙vi大于给定的阈值q,那么,将τmin∙vi的单次值或历次迭代的累加值∑τmin∙vi等于阈值q,将测点集{qi}更新为qi+τmin∙vqi+∑τmin∙vqi’’+τmin∙vqi’’+∑τmin∙v,并按步骤1和步骤2中的公式更新特征行向量集{ai}、边界元素集{bi}和状态元素集{ti}。

一种基于数字化量规的给定平面内直线度评定方法,其特征在于测量的测点qi*={xi,yi}为数控机床设备中导轨表面中获得。

本发明的有益效果是:

1、充分考虑在给定方向上直线度的几何特点,简化评定形式,该评定方法更易于推广。2、充分考虑在任意方向上直线度的几何特点,每次迭代都通过成熟的线性运算得到一个更优的值,并会最终得到最小的直线度误差,控制了测点集运动位移量而使求解更精确,假定一个阈值q,因此,本算法比较稳定。3、隐含在给定方向上直线度评定中“大部分测点是无效测点”的事实,这些无效的测点不会加入迭代,因此,本发明的迭代次数较少。而且在计算寻优方向时,只考虑关键点集{m}对应的测点,因此,每次迭代的运算量较小,因此,本算法比较快速。

本发明提供了一种数字化的给定平面内直线度评定方法,该方法快速、稳定、形式简单,可用于数控机床设备中导轨表面的给定平面内直线度误差评定方法,并为其加工工艺的改进提供指导,因此具备工业可能性。

附图说明

图1为本发明的流程图。

图2为本发明的数控机床设备导轨零件的给定平面内直线度误差评定实例。

具体实施方式

以下是本发明的具体实施例,参照附图对本发明的方案作进一步的描述,但本发明并不限于这些实施例。

评定测点集{qi}的给定平面内直线度误差值。

步骤1:获取测点集{qi}如下:

通过数据处理之后,评定基线与x轴重合,建立状态元素集{ti}如下:在评定基线上方测点的状态元素ti,即;评定基线下方测点的状态元素ti’’,即

建立边界元素集{bi}如下:

{bi}=[1,1,1,1,1,1,1,1,1,1]t

步骤1结束后进行步骤2。

步骤2:建立特征行向量集{ai},评定基线上方的测点qi对应的特征行向量为ai=([-yi,-xiyi])/ti,评定基线下方的测点qi对应的特征行向量为ai’’=([yi,xiyi])/ti’’,如下:

步骤2结束后进行步骤3。

步骤3:取ti+最大值t4max=0.01和t6max=0.01和t2’’max=0.01对应的测点q2、q4和q6为关键点,并将其测点序号2、4和6加入到关键点集{m}中,使得{m}={2,4,6}。

步骤3结束后进行步骤4。

步骤4:根据关键点集{m}建立分析矩阵a和分析列向量b,其中:

a=[a2t,a4t,a6t]t,是个3行2列的矩阵,关键点集{m}={2,4,6}中的元素个数为3;

b=[1,1,1]t,是个3行的列向量。

步骤4结束后进行步骤5。

步骤5:对分析矩阵a及增广分析矩阵[a,b]进行秩分析。

计算ra=rank(a)=2,rab=rank([a,b])=3,并比较rarab。因为ra<rab,尝试从分析矩阵a和分析列向量b中删掉关键点集{m}中的一个元素2或4或6对应的行。首先,删除关键点中第2个元素对应的行,得到缩小矩阵a2和缩小列向量b2,计算矩阵a2的秩,ra2=rank(a2)=2,增广矩阵[a2,b2]的秩ra2b2=rank([a2,b2])=2,因为ra2=ra2b2则求线性方程a2v2=b2的解v2=v20,然后计算b2=a2v20=-1,因为b2<b,所以关键点2不是虚接触。

之后,删除关键点中第4个元素对应的行,得到缩小矩阵a4和缩小列向量b4,计算矩阵a4的秩,ra4=rank(a4)=2,增广矩阵[a4,b4]的秩ra4b4=rank([a4,b4])=2,因为ra4=ra4b4则求线性方程a4v4=b4的解v4=v40,然后计算b4=a4v40=0,因为b4<b,所以关键点4不是虚接触。

之后,删除关键点中第6个元素对应的行,得到缩小矩阵a6和缩小列向量b6,计算矩阵a6的秩,ra6=rank(a6)=2,增广矩阵[a6,b6]的秩ra6b6=rank([a6,b6])=2,因为ra6=ra6b6则求线性方程a6v6=b6的解v6=v60,然后计算b6=a6v60=3,因为b6>b,所以关键点6是虚接触,去掉虚接触。

步骤5结束后进行步骤6。

步骤6:求线性方程av=b的解v=v0=[-3,-2]t,计算vi=aiv0,结果如下:

然后计算测点与上边界接触需要的时间:τi=(tmax–ti)÷(b-vi)或者测点与下边界接触需要的时间τi=(ti+t’’max)÷(b-vi);计算评定基线下方的点的速度vi’’=ai’’v0,计算测点与上边界接触需要的时间:vi’’=(tmax+ti’’)÷(b-vi’’)或者测点与下边界接触需要的时间:τi’’=(t’’max-ti’’)÷(b-vi’’),取τi’’τi中大于零的那部分中的最小值τmin对应的测点qm,3为新的关键点,其中最小值τmin=0.0001667对应的测点q7,3为新的关键点,将其测点序号7加入到关键点集{m}中,使得关键点集{m}={2,4,7}。将所有ti更新为tiτmin∙vi,结果如下:

第7步骤结束后返回步骤1更新测点集。

步骤1:更新测点集{qi}如下:

建立边界元素集{bi}如下:

{bi}=[1,1,1,1,1,1,1,1,1]t

步骤1结束后进行步骤2。

步骤2:建立特征行向量集{ai},评定基线上方的测点qi对应的特征行向量为ai=([-yi,-xiyi])/ti,评定基线下方的测点qi对应的特征行向量为ai’’=([yi,xiyi])/ti’’,如下:

步骤2结束后进行步骤3。

步骤3:关键点集{m}={2,4,7}。

步骤3结束后进行步骤4。

步骤4:对分析矩阵a及增广分析矩阵[a,b]进行秩分析。根据关键点集{m}={2,4,7}建立分析矩阵a和分析列向量b

其中:

b=[1,1,1]t,是个3行的列向量。

步骤4结束后进行步骤5。

步骤5:计算ra=rank(a)=2,rab=rank([a,b])=3,因为ra<rab,尝试从分析矩阵a和分析列向量b中删掉关键点集{m}中的一个元素2或4或7对应的行。首先,删除关键点中第2个元素对应的行,得到缩小矩阵a2和缩小列向量b2,计算矩阵a2的秩,ra2=rank(a2)=1,增广矩阵[a2,b2]的秩ra2b2=rank([a2,b2])=2,因为ra2<ra2b2则求线性方程a2v2=b2的解v2=v20,然后计算b2=a2v20=0,因为b2<b,所以关键点2不是虚接触。

之后,删除关键点中第4个元素对应的行,得到缩小矩阵a4和缩小列向量b4,计算矩阵a4的秩,ra4=rank(a4)=2,增广矩阵[a4,b4]的秩ra4b4=rank([a4,b4])=2,因为ra4=ra4b4则求线性方程a4v4=b4的解v4=v40,然后计算b4=a4v40=-1,因为b4<b,所以关键点4不是虚接触。

之后,删除关键点中第7个元素对应的行,得到缩小矩阵a7和缩小列向量b7,计算矩阵a7的秩,ra7=rank(a7)=2,增广矩阵[a7,b7]的秩ra7b7=rank([a7,b7])=2,因为ra7=ra7b7则求线性方程a7v7=b7的解v7=v70,然后计算b7=a7v70=-1,因为b6<b,所以关键点7不是虚接触;

步骤5结束后跳到步骤8。

步骤8:在评定基线上方测点的状态元素ti,即;评定基线下方测点的状态元素ti’’,即,计算t=t2max+t’’4max=0.0098+0.0098=0.0196就是所求的给定平面内直线度误差值。

在上述说明中,通过特定实施例说明了本发明,但本领域的技术人员应理解在不脱离权利要求范围内发明的思想及领域内可进行各种改造及变形。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1