APP下载

评定空间直线度误差的3DLSA算法研究

2010-12-03胡仲勋杨旭静金湘中

中国机械工程 2010年3期
关键词:坐标值直线度计算结果

胡仲勋 杨旭静 金湘中

湖南大学,长沙,410082

0 引言

随着航空、航天、机械制造等领域的精密与超精密加工技术、微纳制造技术以及数字化制造与检测技术的发展,机械产品及其零部件的精度要求越来越高。然而,评价产品精度的一类重要问题——形状误差的评定理论和算法仍不完善,尤其是空间直线度误差,作为一种最复杂的形状误差,其评定算法一直处于探索之中。

空间直线度误差的评定算法主要有两类。一类是符合ISO或国家标准规定的最小条件的精确算法,即最小包容区域法。由于其评定模型的非线性和不可微性,使得这类算法的求解非常困难,因此,国内外许多学者运用各种数学理论或优化算法对此进行了研究。如最小平行六面体包络法[1]、基于柱面坐标系的非线性模型[2-3]、凸壳理论[4]、数学规划理论[5]、基于实数编码的遗传算法[6]、非线性鞍点规划法[7]、改进的遗传算法[8]、粒子群算法[9]、坐标变换原理[10]、半无限线性规划与基于单纯形的算法[11]、半有限规划与内点算法[12-13]、平面化投影处理方法[14]、逐次二次规划法[15]等。虽然上述研究各有其有效性,但仍很不完善。另一类是生产实际中常用的算法,这类算法属于近似算法。如两端点连线算法、最小二乘算法(least squares method,LSM)等。其中,两端点连线算法不稳定,其评定结果有时较精确,有时偏差很大。LSM算法具有一定的精度,是目前较实用的方法。在坐标测量机(coordinate measuring machine,CMM)的误差评定系统中,都是采用LSM算法。但是,由于LSM算法的数学模型在原理上存在缺陷,评定精度不够高,评定结果存在较大的不确定度等问题,所以,有不少学者对LSM算法进行了改进研究。如文献[16-21]在LSM算法的不确定度计算或LSM算法的改进方面作了一些研究,但这些文献中体现的对 LSM算法的原理缺陷的认识都还不够深入。

笔者通过对 LSM算法的分析认为,其原理缺陷是:LSM算法不是三维拟合算法,实质上只是一种二维平面内最小二乘拟合的合成,它不能直接拟合空间直线。而且,当测点在X、Y、Z坐标轴上的坐标值具有相同数量级时,用LSM算法评定空间直线度误差的结果是有效的,但存在一定的评定误差;而当X、Y、Z坐标轴上的坐标值具有不同的数量级时,其评定结果存在严重失真。这种失真会严重影响到空间直线度误差评定结果的有效性;甚至造成被检零件的“误收”或“误废”。因此,有必要提出一种能从根本上克服LSM算法的原理缺陷的新算法。

本文在文献[20-21]研究的基础上,提出评定空间直线度误差的3DLSA算法(three dimensional least squares algorithm),以从根本上克服LSM算法的原理缺陷,并推导出3DLSA算法的数学模型,实现空间直线真正的三维(3D)拟合;最后,用实例验证其有效性,以期能用于较高精度的空间直线度误差评定。

1 3DLSA算法的数学模型

如图1所示,设在坐标测量机CMM 上测得某零件空间直线度的误差测点集为

设k个测点的3D最小二乘拟合直线Lf通过某一点P0(x0,y0,z0),且其方向向量为(l,m,n),则Lf的方程为

若空间直线度误差测点集R中的任一点Pi(xi,yi,zi)到Lf的距离为

根据几何学理论,对空间直线Lf的方向数 l、m、n进行归一化处理,得

根据最小二乘原理,应使di的平方和为最小,有

通过求解式(4)的最小值,并简记:

可得到3D最小二乘拟合直线Lf的方向向量(l,m,n)为

同时得

将式(9)、式(10)、式(11)展开,并在其展开式中还原式(5)的简记,则得

在式(12)、式(13)、式(14)中:

联立求解式(12)、式(13)、式(14)可得到3D最小二乘拟合中心点P0(x0,y0,z0)的坐标:

按上述推导,可由测点集 R中 k个测点Pi(xi,yi,zi)的坐标值计算出 x0、y0、z0 和 l、m 、n,从而计算出各测点至空间最小二乘拟合直线Lf的距离 di,并比较k个di的大小,找出di的最大值max di。

根据国家标准GB/T 11336—2004[22]规定,在实际应用中,可简化计算任意方向上直线度(即空间直线度)的误差值为

而且,该国家标准还规定了用最小二乘法评定任意方向上直线度误差的判别法:用轴线平行于最小二乘中线Lf的圆柱面C包容实际直线时,只有满足下列形式之一,该算法有效:①两点形式(图2);②三点形式(图3)。

上述国家标准规定的实际上是要求3DLSA算法应按上述公式计算得到最小二乘中线Lf的方向向量后,再运用一定的优化算法(如复合形法等),变动最小二乘拟合中心点P0的坐标值 x0、y0、z0,使Lf平移(平行)到图2或图3中的Ls,从而求出di最大值的最小值,即可求得空间直线度的误差值为

根据上述推导可知,3DLSA算法可以由测点集各测点的坐标值直接计算、拟合,确定其3D最小二乘拟合直线Lf,从而实现真正的3D最小二乘拟合。

2 数字实验与结果分析

根据上述 3DLSA算法的数学模型,利用MATLAB7.0编制出空间直线度误差的评定程序。为便于比较和分析,下面引用一些研究同行们对空间直线度误差的测点数据进行数字实验,以验证3DLSA算法的有效性,并与LSM 算法和其他多种算法作对比实验,以分析3DLSA算法的效能。

2.1 3DLSA算法的有效性验证

验证 3DLSA算法的有效性,就是要使3DLSA算法的计算结果满足图2或图3的判别法,即在测点集的三维最小二乘中线包容圆柱面C上有两个或三个测点与其接触。下面以国内外同行的多组测点数据进行数字实验,按 3DLSA算法评定空间直线度误差时,得到的计算结果如表1所示。

表1 按3DLSA算法的计算结果

由表1的计算结果可以看出,用3DLSA算法评定空间直线度误差时,总能得到2个或3个相等的最高点与其最小二乘中线包容圆柱面C相接触。这表明,3DLSA算法能满足国家标准规定的图2或图3的接触形式,因此,3DLSA算法是一种有效的评定空间直线度误差的算法。

2.2 3DLSA算法的效能比较实验及其分析

下面通过与LSM算法及其他多种算法进行比较,以验证3DLSA算法的效能。

对采用3DLSA算法与LSM算法和其他多种算法的计算结果进行比较,分别列于表2、表3。

表2 3DLSA算法与LSM算法的比较

表3 3DLSA算法与其他算法的比较

在表2中,按照测点数据的特点,可以分两种情况进行分析和说明:

(1)测点数据值相差几个数量级。如表2中的第①、第②两组测点数据,按3DLSA算法评定的空间直线度误差值分别为 17.1252μ m、7.2448μ m,而按LSM 算法评定的误差值分别为171 324.3700μ m 、771 845.6700μ m;由于已验证3DLSA算法是有效的,因此,LSM算法的评定结果是可疑的。有鉴于此,Wen等[8]对第①组测点数据的 xi、yi、zi坐标值调换 ,使 xi、yi坐标值具有相同的数量级,得到第③组测点数据,此时按3DLSA算法、LSM算法评定的空间直线度误差值分别为17.1252μ m 、16.6671μ m。对于LSM 算法的计算结果,由于原文献中缺少第⑥、第⑦两组数据的LSM算法的计算结果,表2中的数据是笔者按文献[22]中的LSM算法编程计算得到的结果,且只有第③组测点的计算结果与文献[8]用LSM 算法的计算结果(16.6671μ m)相等。

对于表2第①、第②两组数据,只是调换了坐标轴的次序,各测点的相对差值并没有改变,它们的空间直线度误差值也应是相同的,3DLSA算法的评定结果验证了这一点;而LSM算法的评定结果却相差悬殊。由此表明:3DLSA算法对各种测点数据,都能得到较正确的评定值,具有非常好的鲁棒性;而LSM 算法不能用于评定 xi、yi坐标值相差几个数量级的测点数据。

鉴于3DLSA算法的鲁棒性非常好,所以表2中的比较结果是以该算法的评定结果为基准的。

(2)测点数据值具有相同的数量级。由表2中的第③~第⑦组测点数据比较可知:按 LSM算法评定的误差值相对于按3DLSA算法评定的误差值,有时大于,有时小于,表明按 LSM 算法评定的评定结果是不稳定的,不确定度较大。其原因是因为LSM算法存在投影和合成误差。

上述实验证明,由于3DLSA算法能较精确地拟合出空间直线 Ls,在评定空间直线度误差中,具有非常好的鲁棒性和较高的正确度。而LSM算法的评定结果不稳定、不确定度较大,且在评定值相差几个数量级的测点数据时,其评定结果是严重失真的。由于原文献中缺少第①组数据的两端点连线算法的计算结果,表3中的数据是笔者采用文献[22]中的两端点连线算法编程计算得到的结果。

在表3中,对第⑤、第⑦两组空间直线度误差测点数据运用3DLSA算法、两端点连线算法以及相应的文献算法得到评定结果,比较可知,3DLSA算法评定的误差值是最小的。

根据形位误差评定理论,按最小区域法评定的形位误差值应该是唯一精确的最小值,按其他所有近似算法得到的形位误差值一般都大于(或等于)这个最小值。由此可知,采用近似算法评定的形位误差值越小,则表明按该近似算法的评定结果越接近按最小区域法评定的最小值,因而,其正确度越高。表3的比较结果表明,3DLSA算法比两端点连线算法、文献[6]的遗传算法、文献[9]的粒子群算法的逐次二次规划算法及文献[14]的平面化处理算法等具有更高的正确度。

值得注意的是,尽管文献[6,9]的算法是基于最小区域法的,但其评定结果却大于本文3DLSA算法的评定结果,这也表明了,目前对符合最小条件的精确算法的研究还很不完善。

综合上述实验结果证明:3DLSA算法是一种有效的评定空间直线度误差的好算法,具有非常好的鲁棒性和较高的正确度;3DLSA算法优于LSM算法、两端点连线算法以及其他多种算法。

2.3 3DLSA算法的计算效率分析

在上述实验中,对各组测点数据运用两端点连线算法、LSM 算法、3DLSA算法进行计算的平均计算时间为 0.0117s、0.0177s、280.8431s,显然,3DLSA算法计算效率较低,但一般不超过5min,在工程实际中还是可以应用的。

3 结论

(1)3DLSA算法从根本上克服了国家标准GB/T 11336—2004[22]中的LSM算法的原理缺陷,实现了空间直线的真正三维拟合,具有重要的理论意义。

(2)3DLSA算法在评定空间直线度误差中能保证与其最小二乘中线包容圆柱面实现两点或三点接触,是一种有效的算法,具有非常好的鲁棒性和较高的正确度;3DLSA算法优于LSM算法、两端点连线算法及其他多种算法。

(3)3DLSA算法除了在计算机辅助形位误差评定中实用性强之外,在逆向工程中的三维空间直线拟合、数控侧铣加工三维曲面时的铣刀轴线初定位计算[13]、数控加工误差的在机检测与补偿计算、以及激光加工小孔时小孔轴线的拟合计算等工程实际问题中,也将具有很好的应用价值。

[1]Huang S T,Fan K C,Wu J H.A New Minimum Zone M ethod for Evaluating Straightness Errors[J].Precision Engineering,1993,15(3):158-165.

[2]张青,范光照,徐振高,等.按最小条件评定空间直线度误差的理论研究[J].计量学报,1998,19(4):246-253.

[3]Zhang Qing,Fan K C,Li Zhu.Evaluation Method for Spatial Straightness Errors Based on Minimum Zone Condition[J].Precision Engineering,1999,23(4):264-272.

[4]Huang J P.An Exact Minimum Zone Solution for Three—dimensional Straightness Evaluation Problems[J].Precision Engineering,1999,23(3):204-208.

[5]刘文文,费业泰.空间直线度包容评定的线性逼近算法[J].中国科学技术大学学报,1999,29(2):242-247.

[6]廖平,喻寿益.基于遗传算法的空间直线度误差的求解[J].中南工业大学学报,1998,29(6):586-588.

[7]粟时平,李圣怡,王贵林.基于鞍点规划及遗传算法的空间直线度误差优化评定[J].长沙电力学院学报(自然科学版),2001,16(3):39-42.

[8]Wen Xiulan,Song Aiguo.An Improved Genetic Algorithm for Planar and Spatial Straightness Error Evaluation[J].International Journal of Machine Tools&Manufacture,2003,43(11):1157-1162.

[9]茅健,曹衍龙.基于粒子群算法的空问直线度误差评定[J].工程设计学报,2006,13(5):291-294.

[10]李淑娟,刘云霞.基于坐标变换原理的最小区域法评定空间直线度误差[J].计测技术,2006,26(1):24-25.

[11]Zhu Limin,Ding Ye,Ding Han.Algorithm for Spatial Straightness Evaluation Using Therories of LinearComplexChebyshevApproximation and Semi—infinite Linear Programming[J].Transaction of the ASM E:Journal of Manufacturing,Science and Engineering,2006,128(2):167-174.

[12]Ding Ye,Zhu Limin,Ding Han.A Unified Approach forCircularity and Spatial Straightness Evaluation Using Semi—definite Programming[J].International Journal of Machine Tools&Manufacture,2007,47(10):1646-1650.

[13]Ding Ye,Zhu Limin,Ding Han.Semidefinite Programming for Chebyshev Fitting of Spatial Straight Line with Applications to Cutter Location Planning and Tolerance Evaluation[J].Precision Engineering,2007,31(4):364-368.

[14]黄富贵,崔长彩.任意方向上直线度误差的评定新方法[J].机械工程学报,2008,44(7):221-224.

[15]岳武陵,吴勇.基于多目标优化的空间直线度误差评定[J].光学精密工程,2008,16(8):1423-1428.

[16]Zhu Xiangyang,Ding Han,Wang M Y.Form Error Evaluation:An IterativeReweighted Least Squares Algorithm[J].Transaction of the ASM E:Journal of Manufacturing Science and Engineering,2004,126(8):535-541.

[17]王金星,蒋向前,徐振高,等.空间直线度坐标测量的不确定度计算[J].华中科技大学学报(自然科学版),2005,33(12):1-3.

[18]倪骁骅,邓善熙.空间直线度最小二乘评定结果的不确定度估计[J].工具技术,2006,40(5):72-74.

[19]赵凤霞,张琳娜,郑玉花,等.基于新一代GPS的空间直线度误差评定及其不确定度估计[J].机械强度,2008,30(3):441-444.

[20]胡仲勋,杨旭静,王伏林.空间直线度误差评定的LSABC算法研究[J].工程设计学报,2008,15(3):187-190.

[21]胡仲勋,王伏林,周海萍.空间直线度误差评定的新算法[J].机械科学与技术,2008,27(7):879-882.

[22]中国国家标准化管理委员会.GB/T 11336—2004直线度误差检测[S].北京:中国标准出版社,2004.

猜你喜欢

坐标值直线度计算结果
长导轨直线度分段测量拼接方法研究
探讨数控铣床操作实训中零件装夹及对刀方法
探讨Excel2007与ArcGis10.0结合提取小班四至界限的坐标值
基于西门子840D数控系统的直线度自动计算程序研究
基于MATLAB的直线度测量不确定度评定程序设计
趣味选路
扇面等式
直线度误差曲线形成机理与形位特性研究
基于宏程序的数控车削加工应用
超压测试方法对炸药TNT当量计算结果的影响