王炳杰 趙軍鵬 王春潔*,2
(1.北京航空航天大學 機械工程及自動化學院,北京100191;2.北京航空航天大學 虛擬現(xiàn)實技術與系統(tǒng)國家重點實驗室,北京100191)
直線度誤差是評定機械產品精度的重要指標之一,并且也是平行度、垂直度、圓柱度和同軸度等幾何測量的基礎[1].國標 GB/T 11336—2004中的空間直線度誤差評定方法有:最小包容區(qū)域法、最小二乘法和兩端點連線法[2].最小包容區(qū)域法為精確算法,其評定結果小于或等于其他兩種評定方法,但是該方法求解復雜.目前針對最小包容區(qū)域法的求解已經發(fā)展了遺傳算法[3]、坐標轉換原理[4]、半定規(guī)劃算法[5]、平面投影算法[6]、準粒子群優(yōu)化算法[7]以及組合優(yōu)化算法[8]等.在實際工程檢測中常用兩端點連線法與最小二乘法(LSM,Least Squares Method),這兩者均屬于近似算法,其中兩端點連線法的魯棒性較差,LSM算法的數學模型在原理上存在缺陷[9],該方法由于在最小二乘中線擬合時分別在兩個平面上獨立擬合直線,再合成空間直線,因此不是真正的三維空間直線擬合.當測量點坐標值的數量級不同時,LSM算法的評定結果不能滿足精度要求高的實際工程的要求.
最小二乘法評定空間直線度誤差的關鍵是準確擬合測點的最小二乘中線,其涉及到非線性規(guī)劃問題的求解,通常采用優(yōu)化算法求解[1].非線性規(guī)劃優(yōu)化算法的缺點是需要迭代計算并且難以得到全局最優(yōu)解.針對此問題一些學者提出了無迭代算法[10]、LSABC 算法[11]、改進的 LSABC 算法[12]以及3DLSA 算法[13]等.這些算法雖然完善了空間直線度誤差評定方法,但是空間直線度誤差是一種復雜的形狀誤差,其評定算法仍然值得探索.本文采用三維最小二乘方法建立了空間直線擬合的數學模型,給出了該數學模型的精確解,基于新解法提出空間直線度誤差評定新方法,并用數值算例驗證了新方法的有效性.
按最小二乘法評定空間直線度誤差,首先需要進行測點的最小二乘中線擬合,得到測點最小二乘中線Lf.最小二乘中線是指使實際直線上各點到該直線的距離平方和為最小的一條理想直線[2].如圖 1,設(x1,y1,z1),…,(xk,yk,zk)為 k 個直線度測量點,直線Lf的方向向量為(l,m,n)且通過點(x0,y0,z0),則 Lf的方程為

為了方便起見,單位化直線Lf方向向量使l2+m2+n2=1.

圖1 最小二乘法評定直線誤差度示意圖Fig.1 Diagram of spatial straightness error evaluation with LSM
根據最小二乘原理,使得各測量點到擬合直線距離的平方和最小:

其中 di為測量點(xi,yi,zi)到擬合直線距離:

為了求解該優(yōu)化問題,首先證明直線Lf一定通過各測量點的重心(),其中:


且當[l,m,n]T為矩陣 B 的最大特征值 λmax(B)對應的單位特征向量時式(12)可以取最小值.因此為了求解測點最小二乘中線Lf的方向矢量,只需要求解矩陣B的最大特征值對應的單位特征向量即可.
為了求解測點的最小包容圓柱面直徑,通過空間投影將測點向垂直于最小二乘擬合直線Lf的平面投影,將空間問題轉化為平面問題.顯然投影點點集在該平面上的最小包容圓直徑等于擬合直線最小包容圓柱面直徑.為簡化最小包容圓直徑計算,在投影平面上構建局部坐標系并進行坐標變換,將投影點在空間坐標下的坐標轉化為在局部平面坐標系中的坐標(Xi,Yi).假設Xmax=maxXi,Xmin=min Xi,Ymax=max Yi,Ymin=min Yi(i=1,2,…,k).采用格點法尋找最小包容圓直徑.如圖 2所示,將矩形區(qū)域 Xmin≤X≤Xmax,Ymin≤Y≤Ymax的橫縱坐標均劃分成N等份,從而得到(N+1)×(N+1)個結點,依次計算每一結點與投影點集中點的最大距離Dmaxpq(p=0,1,…,N;q=0,1,…,N),則 Dmaxpq中的最小值即為最小包容圓半徑R.最小包容圓柱面直徑φf=2R即為空間直線度誤差值.

圖2 搜索區(qū)間節(jié)點Fig.2 Nodes in search interval
根據上述算法,利用Matlab R2008編寫空間直線度誤差評定程序.參考文獻中測點數據進行數值實驗,結果見表1.

表1 計算結果Table 1 Calculation results
計算結果顯示新算法評定空間直線度誤差時,可以得到2個或3個測量點與最小二乘中線包容圓柱面相接觸,滿足國家標準的要求[2].因此該算法是一種有效的評定空間直線度誤差的算法.
表1中的測量點分為3類:
1)文獻[4]測量點數值數量級不同,LSM算法結果為771 845.670 0,3DLSA算法得出的結果為7.2448,本文方法結果為6.2399;
2)文獻[3]與文獻[6]測量點數值數量級相同,LSM算法結果分別為18.100 0和30.000 0,3DLSA算法結果分別為13.500 0和36.300 0,本文方法結果分別為9.9764和28.4760;
3)文獻[15]與文獻[5]中測量點坐標相對差值相同,只是調換了坐標軸次序,它們的空間直線度誤差值應該相同,但是LSM算法的評定結果相差較大,3DLSA算法滿足此要求,本文方法亦滿足此要求,而且本文方法評定的直線度誤差值更小.
由此可知,本文方法是一種更加準確穩(wěn)健的直線度誤差評定方法.
本文方法評定結果的誤差大小只與搜索區(qū)間的劃分精度有關,搜索區(qū)間劃分越細密精度越高.本文數值實驗將搜索區(qū)間細分成1001×1001個結點,計算機運算時間不超過3 s.
1)本文采用三維最小二乘方法建立了空間直線擬合的數學模型,并給出了該數學模型的精確解,完善了空間直線擬合的理論基礎.
2)本文方法相較于算例中提及的算法具有更好的穩(wěn)定度和準確度.
3)本文方法計算效率較高可應用于精密測量以及數據處理中.
References)
[1]張新寶,謝江平.空間直線度誤差評定的逼近最小包容圓柱法[J].華中科技大學學報:自然科學版,2011,39(12):6-9 Zhang Xinbao,Xie Jiangping.Evaluating spatial straightness errorby approaching minimum enclosure cylinder[J].Journal of Huazhong University of Science and Technology:Natural Science Edition,2011,39(12):6-9(in Chinese)
[2]GB/T 11336—2004 直線度誤差檢測[S]GB/T 11336—2004 Measurement of departures from straightness[S](in Chinese)
[3]廖平,喻壽益.基于遺傳算法的空間直線度誤差的求解[J].中南大學學報:自然科學版,1998,29(6):586-588 Liao Ping,Yu Shouyi.A method of calculating 3-D line error using genetic algorithms[J].Journal of Central South University:Science and Technology,1998,29(6):586-588(in Chinese)
[4]李淑娟,劉云霞.基于坐標變換原理的最小區(qū)域法評定空間直線度誤差[J].計測技術,2006,26(1):24-25 Li Shujuan,Liu Yunxia.A method for minimum zone evaluation of space linearity error based on principle of coordinate transformation[J].Metrology & Measurement Technology,2006,26(1):24-25(in Chinese)
[5] Ding Y,Zhu L M,Ding H.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
[6]黃富貴,崔長彩.任意方向上直線度誤差的評定新方法[J].機械工程學報,2008,44(7):221-224 Huang Fugui,Cui Changcai.New method for evaluating arbitrary spatial straightness error[J].Chinese Journal of Mechanical Engineering,2008,44(7):221-224(in Chinese)
[7] Wen X L,Xu Y X,Li H S,et al.Monte Carlo method for the uncertainty evaluation of spatial straightness error based on new generation geometrical product specification[J].Chinese Journal of Mechanical Engineering,2012,25(5):875-881
[8] Endrias D H,F(xiàn)eng H Y,Ma J,et al.A combinational optimization approach for evaluating minimum-zone spatial straightness errors[J].Measurement,2012,45(5):1170-1179
[9]胡仲勛,楊旭靜,金湘中.LSM算法評定空間直線度誤差的分析與改進[J].湖南大學學報:自然科學版,2010,37(2):27-31 Hu Zhongxun,Yang Xujing,Jin Xiangzhong.Analysis and improvement of the LSM algorithm for assessing spatial straightness error[J].Journal of Hunan University:Natural Sciences,2010,37(2):27-31(in Chinese)
[10]郭際明,向巍,尹洪斌.空間直線擬合的無迭代算法[J].測繪通報,2011(2):24-25 Guo Jiming,Xiang Wei,Yin Hongbin.Three-dimensional line fitting without iteration[J].Bulletin of Surveying and Mapping,2011(2):24-25(in Chinese)
[11]胡仲勛,楊旭靜,王伏林.空間直線度誤差評定的LSABC算法研究[J].工程設計學報,2008,15(3):187-190 Hu Zhongxun,Yang Xujing,Wang Fulin.Research on LSABC algorithm for evalution of spatial straightness error[J].Journal of Engineering Design,2008,15(3):187-190(in Chinese)
[12]胡仲勛,王伏林,周海萍.空間直線度誤差評定的新算法[J].機械科學與技術,2008,27(7):879-882 Hu Zhongxun,Wang Fulin,Zhou Haiping.A new algorithm for evaluation of spatial straightness error[J].Mechanical Science and Technology for Aerospace Engineering,2008,27(7):879-882(in Chinese)
[13]胡仲勛,楊旭靜,金湘中.評定空間直線度誤差的3DLSA算法研究[J].中國機械工程,2010,21(3):325-329 Hu Zhongxun,Yang Xujing,Jin Xiangzhong.Research on 3DLSA for evaluating spatial straightness errors[J].China Mechanical Engineering,2010,21(3):325-329(in Chinese)
[14]張筑生.數學分析新講(第二冊)[M].北京:北京大學出版社,1990:294-295 Zhang Zhusheng.New lecture of mathematical analysis(book two)[M].Beijing:Peking University Press,1990:294-295(in Chinese)
[15] Wen X L,,Song A G.An improved genetic algorithm for planar and spatial straightness error evaluation[J].International Journal of Machine Tools & Manufacture,2003,43(11):1157-1162