周 鵬,吳繼春,周會成,楊世平,李明富,劉金剛
(1.湘潭大學(xué) 復(fù)雜軌跡加工工藝及裝備教育部工程中心,湖南 湘潭 411105;2.華中科技大學(xué) 國家數(shù)控系統(tǒng)工程技術(shù)研究中心, 武漢 430074)
Akima刀位軌跡的遞推式擬合算法研究*
周 鵬1,吳繼春1,周會成2,楊世平1,李明富1,劉金剛1
(1.湘潭大學(xué) 復(fù)雜軌跡加工工藝及裝備教育部工程中心,湖南 湘潭 411105;2.華中科技大學(xué) 國家數(shù)控系統(tǒng)工程技術(shù)研究中心, 武漢 430074)
在數(shù)控加工中,通常用小線段表達刀位軌跡,會導(dǎo)致刀位點龐大且軌跡不平滑?;贏kima曲線具有光順連接且端點連接處保證G1以上連續(xù),將刀位點擬合成Akima樣條曲線,提出了Akima刀位軌跡的遞推式擬合算法。該算法可概述為:在刀位點數(shù)大于三個的前提下擬合首段Akima樣條曲線,保留并延用段末刀位點的切線矢量以保證擬合曲線的凸凹性,然后以該段段末點為下一段的起點,在相鄰刀位點間利用弧長參數(shù)化計算下一個刀位點的切線矢量,進而生成一段Akima樣條。同樣延用該段段末刀位點的切線矢量并作為下一段的起點,在相鄰刀位點間以遞推式擬合生成Akima樣條曲線,以此循環(huán)至終點。利用UG軟件生成了內(nèi)含388個刀位點的文字模型,通過Matlab編程和仿真實驗,以擬合曲線總弧長為評價參數(shù),驗證了算法的有效性。
小線段;Akima算法;弧長參數(shù);遞推式擬合
在數(shù)控加工領(lǐng)域,尤其在多軸加工中,自由曲線面已經(jīng)成為了理論研究和實踐驗證的熱點,在航空、航天、汽車及模具等工業(yè)中得到了越來越廣泛地應(yīng)用。自由曲面的加工,其重點亦即難點在于刀位軌跡的生成及優(yōu)化。多年來,國內(nèi)外學(xué)者對此進行了廣泛而深入的研究。王知行等[1]提出了自適應(yīng)等參數(shù)曲線的刀位軌跡生成算法,克服了用等參數(shù)線法生成刀具軌跡可能產(chǎn)生的刀具軌跡冗余的缺點。郭朝勇等[2]提出了一種自由曲面數(shù)控加工軌跡曲線計算方法,但通過型值點的距離與權(quán)指數(shù)不能對加工曲面形狀及擬合精度有明顯效果。黃常標(biāo)等[3]針對離散三角網(wǎng)格模型提出了一種采用通用環(huán)形刀具進行三坐標(biāo)加工的等高線刀位軌跡生成算法,實例程序證明了該算法的穩(wěn)定性和有效性。Sang等[4]針對缺陷表面的曲面模型提出了一種3軸刀位軌跡生成算法,利用刀位點與刀觸點的相互關(guān)系以分片刀位點替換完整刀位面,有效地減少了刀位點數(shù)量。程耀楠等[5]對整體葉盤等復(fù)雜曲面零件的數(shù)控加工刀位軌跡中的關(guān)鍵技術(shù)進行了分析。趙延國等[6]針對五軸加工中的非線性誤差提出一種減少機床非線性誤差的軌跡優(yōu)化算法,但通過插入刀位點來減少誤差,會加大刀位NC文件,影響加工時長。Kumazawa等[7]提出了一種三軸曲面加工的球端銑刀路徑生成方法,根據(jù)優(yōu)選的進給方向,使得加工生成了更為簡短的刀位軌跡。李浩等[8]提出了一種基于三次多項式曲線的軌跡平滑壓縮算法,利用的相鄰小線段之間的轉(zhuǎn)角大小和段長實現(xiàn)刀軌的平滑壓縮,但無法較大地縮小線性誤差。而數(shù)控加工中刀位軌跡生成的線性誤差,是因為利用了樣條曲線進行插補加工,數(shù)控加工中使用樣條插補克服了傳統(tǒng)的直線和圓弧插補在加工編程程序段和進給率加工光順性的不足。進行刀位軌跡擬合的十分常用的算法比如NURBS曲線,因其表達式的計算復(fù)雜且擬合曲線只能保持C0連續(xù),不利于數(shù)控加工尤其是高速高精加工中(加)速度的順利過渡[9-11]。針對自由曲面的刀位軌跡特點及其產(chǎn)生的線性誤差,本文提出基于Akima樣條曲線的刀位軌跡遞推式擬合算法,利用弧長參數(shù)自由確定刀位點的切矢,對曲線的線性誤差進行局部修整分析,在Matlab實驗中驗證算法的有效性。
Akima算法是一種在已知數(shù)據(jù)點間進行曲線擬合的三次多項式算法[12]。在每兩個數(shù)據(jù)點間建立一條三次擬合曲線,整條曲線保證一階導(dǎo)數(shù)連續(xù),該算法也被稱為五點擬合算法。區(qū)別于其他常用的多項式插值算法、三次樣條算法,它的計算更為簡便,生成曲線也更平滑自然,且Akima樣條自身具有的“改變一個數(shù)據(jù)點僅會影響其周圍六個數(shù)據(jù)點的曲線形態(tài)[13]”的特點。
已知n個數(shù)據(jù)點(xi,yi)(i=0,1,2,n-1),在子區(qū)間[ui,ui+1]即在任意兩相鄰數(shù)據(jù)點(xi,yi)和(xi+1,yi+1)間唯一確定一個三次多項式:
y(x)=A+B·(x-ui)+C·(x-ui)2+D·(x-ui)3,
x∈[ui-1,ui]
(1)
其中,
(2)
為了計算多項式的系數(shù)向量A,B,C和D,在Akima算法中,利用切線矢量d(ui)近似替換其一階導(dǎo)數(shù)R′(ui)即(xi,yi)處的切線斜率,其表達式如下:
(3)
其中,相鄰兩數(shù)據(jù)點間線段的斜率向量mk:
(4)
方程式(4)是建立在數(shù)據(jù)點(節(jié)點)參數(shù)的斜率向量表達式,不僅與數(shù)據(jù)點的坐標(biāo)值有關(guān),還與方程(2)有著一定的制約關(guān)系。因計算需要,在整條曲線的首末數(shù)據(jù)點前后分別定義兩個輔助斜率向量,計算如下:
(5)
在子區(qū)間[uk,uk+1],Akima曲線的系數(shù)向量A,B,C和D可以求得,其計算表達式為:
(6)
從方程(3)可以看出,為了求解方程(6),需要計算兩個切線向量,而切線向量需要五個斜率向量,起點和終點的斜率向量通過輔助斜率向量方程(5)求解。
這種Akima算法是由整體變量的節(jié)點參數(shù)ui進行控制,盡管在數(shù)據(jù)計算量相比其他算法有所減少,但對數(shù)據(jù)點尤其在數(shù)控加工中的分布不均的刀位點的全局?jǐn)M合,也會加大實時數(shù)據(jù)計算量,擴充數(shù)控加工程序的緩沖區(qū)間以及增加實時運行時間,然而下面將提出的“弧長參數(shù)化”的Akima擬合算法能有效解決這些問題。
2.1 刀位點弧長參數(shù)化的遞推式擬合
文獻[12]考慮到區(qū)別于一般三次多項式的Akima曲線的帶有節(jié)點參數(shù)ui的特殊表現(xiàn)形式,方程(1)中的節(jié)點參數(shù)ui是全局參數(shù)變量,即對于整體上的每個刀位點都會對應(yīng)存在取值范圍為[0,1]的節(jié)點參數(shù)ui,反之,若對局部刀位點進行修整,相應(yīng)的節(jié)點參數(shù)也會作出改變,進而會影響其后的Akima曲線形態(tài)。因此,本節(jié)中提出的Akima算法可以稱為一種全局控制算法。
針對刀位點的局部修整問題,全局的Akima算法的節(jié)點參數(shù)ui計算受刀位點的約束,根據(jù)刀位點的累計弦長計算每個刀位點的參數(shù)值,這種節(jié)點參數(shù)計算方法,不能實現(xiàn)刀位點增加而使節(jié)點值遞推計算。這里提出刀位點“弧長參數(shù)化”,直觀地講就是相鄰刀位點之間的直線距離,以刀位點的弦長近似弧長,實現(xiàn)刀位點的弧長參數(shù)化用如下方程組替換方程(4) :
(7)
方程(7)與方程(4)對比有個明顯的特點,那就是式中的弧長參數(shù)lk在確定刀位點坐標(biāo)后是不變的,從而斜率向量(包括輔助斜率向量)mk也不會變化,在擬合中,前一段的末點已計算的切點向量保留為下一段起點切線向量,以保證擬合曲線的G1連續(xù)性,下一段末點切線向量,根據(jù)弧長參數(shù)化,以遞推方式計算。
如圖1所示,點Pi,Pi+1,Pi+2,Pi+3,Pi+4,Pi+5,Pi+6表示的是部分刀位點,li,li+1,li+2,li+3,li+4,li+5分別是相鄰刀位點之間的距離,近似為相鄰刀位點的“弧長”,圖中粗箭頭表示遞推式擬合方向,細箭頭表示相應(yīng)刀位點的切線矢量方向,di+j,k(j=0,1,2,…;k=1,2)分別表示對應(yīng)刀位點的切線矢量大小,其中的下標(biāo)k指相應(yīng)“弧長”li的首末刀位點。
圖1 刀位點弧長參數(shù)化遞推式擬合示意圖
按圖中粗箭頭的方向,在已知“弧長”li的段首刀位點Pi的切矢信息的前提下,當(dāng)擬合過程進行到其段末刀位點Pi+1時,利用“弧長參數(shù)化”,依次通過式(7)、式(5)和式(3)求解切線矢量di,2,并保留其切線矢量,作為下一段“弧長”li+1的段首刀位點Pi+1的切線矢量di+1,1,使得di+1,1=di,2(如圖所示),在相鄰刀位點之間依次利用弧長參數(shù)進行Akima曲線的遞推式擬合,以此循環(huán)直至結(jié)束。以“弧長參數(shù)化”進行Akima曲線遞推式擬合,在實際加工中可以做到“邊加工邊調(diào)試”的同步進行,比起全局?jǐn)M合后再回過頭來修整NC程序更節(jié)省加工時間,尤其在復(fù)雜輪廓曲線面的加工零件體現(xiàn)得比較明顯。
2.2 刀位點的遞推式擬合流程
利用UG10.0軟件, 以煙灰缸模型為加工實例,如圖2所示,在選擇好刀具、余量、加工方法等加工參數(shù)后,生成的刀位點云圖(如圖3所示)。
圖2 煙灰缸三維模型圖
圖3 煙灰缸刀位點云圖
針對刀位點特點以及擬合Akima樣條曲線的優(yōu)點,提出了基于弧長參數(shù)的Akima刀位軌跡遞推式擬合方法。算法流程按以下步驟進行:
(1) 提取刀位NC文件的前3個刀位點擬合第一段Akima曲線,并保留該段最末刀位點的切線矢量,以保證曲線一致的凹凸性。
(2) 延用上一段段末的切矢信息作為下一段段首刀位點的切線矢量,利用弧長參數(shù)化,依次通過式(7)、式(5)和式(3)求解該刀位點的切線矢量(如圖1中的di+j,k),同樣也保留該刀位點的切矢信息。
(3) 當(dāng)擬合進行到某段曲線存在較大的線性誤差即弦誤差時,對該刀位點進行適度修整,然后回到步驟(2)。若無較大弦誤差,繼續(xù)利用弧長參數(shù)化進行擬合,在相鄰刀位點間以“邊修整邊擬合”的遞推式擬合直至終點。
利用三維建模軟件建立模型,通過后置處理生成刀位點,將刀位點通過本文提出方法擬合成Akima曲線,與文獻[12]中提出的節(jié)點參數(shù)化的Akima曲線進行對比,通過分別計算其總弧長來驗證算法有效性。利用UG建立“求索”的文字模型,生成388個刀位點NC文件。如圖4所示,表示利用弧長參數(shù)化遞推式擬合生成Akima曲線。
(a)Akima曲線
(b)局部放大圖圖4 弧長參數(shù)化與節(jié)點參數(shù)化的Akima曲線對比圖
圖4中的曲線分別表示弧長參數(shù)化與節(jié)點參數(shù)化擬合方法計算的Akima曲線。從圖4a中可以看出,通過弧長參數(shù)化的遞推式擬合,生成的Akima曲線與節(jié)點參數(shù)化方法生成Akima曲線十分逼近、用紅色曲線重疊藍色曲線,呈現(xiàn)是紅色也說明了重疊度好,圖4b為局部放大圖,經(jīng)過充分放大后兩條曲線有誤差。經(jīng)計算確定,弧長參數(shù)化的Akima曲線的總弧長為17.4481mm,而節(jié)點參數(shù)化的Akima曲線的總弧長為17.4220mm?!扒笏鳌蔽淖州喞獢M合對比,表明提出的弧長參數(shù)化擬合方法不僅具有節(jié)點參數(shù)化的Akima擬合方法效果,保證曲線的凸凹性,且能實現(xiàn)邊擬合表插補,擬合的曲線具有弧長信息,為后續(xù)控制刀位軌跡、提高計算效率帶來便利。
將刀位點擬合成Akima樣條曲線,本文提出了Akima刀位軌跡遞推式擬合算法研究,利用弧長參數(shù)化,對刀位點的切矢適當(dāng)進行局部修整以更加逼近小線段,實現(xiàn)遞推式擬合過程,即實現(xiàn)輸入刀位點—對其進行弧長參數(shù)化—分段擬合的Akima曲線遞推式擬合模式,且上一段終點刀位點切線向量等幾何信息也是下一段起點的幾何信息,不需要重復(fù)計算從而提高計算效率。利用UG生成的文字模型,驗證了提出方法的有效性。
[1] 王知行,王哲. 一種新的數(shù)控加工刀具軌跡生成算法的研究[J].機械設(shè)計,2000,17(11):20-22.
[2] 郭朝勇,黃海英. 自由曲面數(shù)控加工刀具軌跡曲線的一種生成算法[J].現(xiàn)代制造工程,2015(1):39-40.
[3] 黃常標(biāo),江開勇. 三角網(wǎng)格模型等高線刀具軌跡生成研究[J].機床與液壓,2009,37(12):1-4.
[4] CP Sang,M Chang.Tool path generation for a surface model with defects[J].Computers in Industry,2010,61(1):75-82.
[5] 程耀楠,安碩,張悅,等. 航空發(fā)動機復(fù)雜曲面零件數(shù)控加工刀具軌跡規(guī)劃研究分析[J]. 哈爾濱理工大學(xué)學(xué)報,2013,18(5):30-36.
[6] 趙延國,趙吉賓,鄒強,等. 參數(shù)曲面五軸加工軌跡優(yōu)化方法[J]. 組合機床與自動化加工技術(shù),2014(12):1-4.
[7] GH Kumazawa,HY Feng,MJB Fard. Preferred feed direction field: A new tool path generation method for efficient sculptured surface machining[J].Computer-Aided Design, 2015(67):1-12.
[8] 李浩,黃艷,馬巖蔚. 基于三次多項式曲線的軌跡平滑壓縮算法[J].組合機床與自動化加工技術(shù),2016(6):12-15.
[9] 王乾廷,桂貴生,劉全坤.三次NURBS曲線輪廓數(shù)控加工刀位數(shù)據(jù)計算[J].組合機床與自動化加工技術(shù),2003(6):19-21.
[10] 劉巖,陳建良,童水光,等.采用三次NURBS曲面構(gòu)造鞋楦模型及刻楦仿真[J].浙江大學(xué)學(xué)報(工學(xué)版),2003,42(5):875-879.
[11] 陳思,高雪霞,丁國富,等.NURBS曲線插值參數(shù)化及其在數(shù)控加工中的應(yīng)用[J].機械設(shè)計與制造,2011(3):52-54.
[12] Wang Y S,Yang D S,Liu Y Z. A real-time look-ahead interpolation algorithm based on Akima curve fitting[J]. International Journal of Machine Tools & Manufacture, 2014,85(5):122-130.
[13] Hiroshi Akima.A new method of interpolation and smooth curve fitting based on local procedures[J]. Journal of the Association for Computing Machinery,1970,17(4):589-602.
(編輯李秀敏)
StudyontheAkimaAlgorithmofRecursionCurve-FittingwithTool-Path
ZHOU Peng1,WU Ji-chun1,ZHOU Hui-cheng2,YANG Shi-ping1,LI Ming-fu1,LIU Jin-gang1
(1.The Engineering Center of Ministry of Education of Complex Trajectory Processing Technology and Equipment, Xiangtan University,Xiangtan Hunan 411105,China;2.The Research Center of Engineering Technology of National Numerical Control System, Huazhong University of Science and Technology, Wuhan 430074,China)
In NC machining, tool-path was usually expressed by short-line segment, which could result in the magnititude of the cutter location(CL)points whose trajectory was unsmooth. The CL points were fitted into Akima spline curve with its advantages of smooth junction and the node points for over G1-continuity,thus the Akima algorithm for tool-path with recursion curve-fitting is proposed. The algorithm can be summarized: the first Akima spline curve, in the condition of outnumbering three CL points, is fitting and the tangent vector of the end CL point of the segment is preserved and followed to ensure the concavity and the convexity of the fitting curve, then the end point is regarded as the start one of the next segment, and the tangent vector of the next CL point will be calculated by the the arc-length parameterization between the adjoining point, then the Akima spline can be produced. The tangent vector of the end one of the very segment, in the same way, will continue to be used as the start point of the next one, so the Akima spline curve will be generated via the recursion curve-fitting between the adjacent CL point, as the circle to the end. The model of the characteristic sole(consists of 388 CL points) is generated by ultilizing UG software. Meanwhile, the number of the final fitting segments and the arc-length of the fitting curve, through Matlab programming and simulation experiment, are used as the evaluating parameters to validate the effectiveness of the algorithm.
short-line segment; Akima algorithm; arc-length parameterization; recursion curve-fitting
TH166;TG506
:A
1001-2265(2017)09-0027-04
10.13462/j.cnki.mmtamt.2017.09.008
2016-11-01;
:2016-12-12
國家自然科學(xué)基金項目資助(51575210,51575466,51475402);省自然聯(lián)合基金(2017JJ4053);省教育廳創(chuàng)新平臺(17K091)
周鵬(1991—),男,湖南邵陽人,湘潭大學(xué)碩士研究生,研究方向為樣條擬合、三維造型,(E-mail)peyton47@163.com。