沈 斌 齊黨進(jìn) 樊留群,2 朱志浩,2
1.同濟(jì)大學(xué),上海,200092 2.同濟(jì)大學(xué)-沈陽機(jī)床研究院,上海,201804
雖然自由曲線曲面直接插補(bǔ)方式已成為數(shù)控加工的主流,但以微小直線段離散化曲線加工路徑的微段加工方式仍被廣泛地應(yīng)用。該方式借助CAM軟件,通過后置處理將連續(xù)加工路徑離散化為大量的微小直線段,并生成數(shù)控程序文件后,數(shù)控系統(tǒng)根據(jù)由微小直線段組成的折線進(jìn)行插補(bǔ)和加工。但是,微段加工方式下加工程序量過大和需要頻繁加減速來滿足加工精度要求飽受詬病。!
為了實(shí)現(xiàn)微小直線段的高速平滑加工,提高加工效率,國內(nèi)外學(xué)者做了大量的研究工作。徐志明等[1]用遞歸算法求得微段轉(zhuǎn)接點(diǎn)處的最大允許進(jìn)給速度;王宇晗等[2]利用微小線段速度銜接數(shù)學(xué)模型求得進(jìn)給速度限制的近似最優(yōu)解;許海峰等[3]通過改進(jìn)和完善上述模型,給出了離散化下的速度限制值計算方法;彭芳瑜等[4]進(jìn)一步考慮了機(jī)床的動力學(xué)約束;黃昕等[5]提出了一種以最大進(jìn)給速度為目標(biāo),通過雙向掃描算法,獲得拐點(diǎn)處的最優(yōu)進(jìn)給速度的算法;葉偉等[6]和李小清等[7]也根據(jù)各自的微小段加工速度、加速度銜接模型改進(jìn)了微段加工方法;冷洪濱等[8]進(jìn)一步對單軸的運(yùn)動速度進(jìn)行限制來改善加工;楊開明等[9]則通過在相鄰程序段間加入過渡段,在犧牲局部精度的前提下實(shí)現(xiàn)速度的平滑。
但是,以上算法無法滿足高速、高精加工的需求。為此,將微小直線段用多項(xiàng)式曲線、三次樣條和B樣條等進(jìn)行擬合,然后進(jìn)行直接插補(bǔ)成為更好的改進(jìn)方向。Erkorkmaz等[10]和 Yau等[11]以弦長為參數(shù),分別采用五次樣條曲線和Bézier曲線來擬合微小直線段從而生成新的光滑加工路徑來解決微段加工出現(xiàn)的問題;任錕等[12]對離散加工路徑采用三次樣條曲線擬合,分析三次樣條發(fā)現(xiàn)高曲率點(diǎn),預(yù)估高曲率點(diǎn)處的最優(yōu)速度,并通過S形加減速控制實(shí)現(xiàn)微段優(yōu)化加工;張園等[13]采用五次樣條曲線擬合微小直線段生成新的光滑加工路徑,并附加考慮弓高誤差的限定,對整個樣條擬合曲線進(jìn)行速度規(guī)劃,實(shí)現(xiàn)了進(jìn)給速度的自適應(yīng)控制。
本文采用基于NURBS曲線擬合的微段高速平滑加工算法(簡稱微段平滑算法)來實(shí)現(xiàn)微段小直線的平滑加工。
微段平滑算法的基本思路是將解析得到的刀位點(diǎn)進(jìn)行自適應(yīng)分區(qū),并分區(qū)擬合為NURBS曲線,再進(jìn)行NURBS曲線直接插補(bǔ)。即先進(jìn)行一定段數(shù)的預(yù)讀,然后根據(jù)給定的限制條件將微段自適應(yīng)分為各個區(qū)域,最后對符合擬合條件的區(qū)域逐區(qū)進(jìn)行帶權(quán)因子和一階導(dǎo)數(shù)約束的最小二乘NURBS曲線逼近,并進(jìn)行NURBS曲線實(shí)時插補(bǔ),與此對應(yīng),將不符合擬合條件的區(qū)域劃分為直線段區(qū)域,保持線性插補(bǔ)方式,如圖1所示。
圖1 微段平滑算法基本流程
通過前瞻,可以得到關(guān)于微段的兩個基本信息:相鄰微段間的夾角θi(i=0,1,2,…)和微段的長度Li。擬合的時間與被擬合的點(diǎn)數(shù)相關(guān),因此,自適應(yīng)分區(qū)受擬合最大刀位點(diǎn)數(shù)、微段間夾角和微段長度的限制,三者為自適應(yīng)分區(qū)的限制條件。將臨界處的刀位點(diǎn)作為斷點(diǎn),以斷點(diǎn)為界將微段劃分為不同的區(qū)域,即斷點(diǎn)前為上一區(qū)域(斷點(diǎn)為終點(diǎn)),斷點(diǎn)后為下一區(qū)域(斷點(diǎn)為下一區(qū)域的起點(diǎn))。
針對微段長度小和數(shù)量多的特點(diǎn),首先對最大刀位點(diǎn)數(shù)nlim進(jìn)行限制,將其作為自適應(yīng)分區(qū)的首要約束條件。nlim的大小與數(shù)控系統(tǒng)控制器的運(yùn)算能力和對實(shí)時性的要求(插補(bǔ)周期T)有關(guān)。不失一般性,不妨設(shè)上一斷點(diǎn)為Pr(r=0,1,2,…),當(dāng)前刀位點(diǎn)為Pr+n。當(dāng)n≥nlim時,將刀位點(diǎn)Pr+n作為新的斷點(diǎn),斷點(diǎn)前的從r到r+n的n+1個刀位點(diǎn)劃為一個適合擬合區(qū)域。
根據(jù)給定進(jìn)給速度vf、最大加速度amax和插補(bǔ)周期T估算得到最大夾角θlim,即
微段是由后置處理程序?qū)⒌盾壈凑战o定誤差離散化得到的,反映的是刀軌的幾何特性。當(dāng)?shù)盾壡首兓^小時,微段較長;相反,當(dāng)?shù)盾壡首兓^大時,微段較短。換言之,若微段較短(接近1~2個插補(bǔ)長度),刀軌曲率變化就很大,加入擬合環(huán)節(jié)后得到的加工精度較直接線性插補(bǔ)得到的加工精度變化不大,而只會增加計算的時間和復(fù)雜度;與此類似,若微段較長(超過100個插補(bǔ)長度)時,刀軌更趨近于直線,對這些微段進(jìn)行擬合,反而會使擬合后得到的加工路徑偏離原微段所描述的刀軌,使加工精度變差。因此,必須對微段長度加以約束,即規(guī)定待擬合微段長度必須介于最小微段長度Lmin和最大微段長度Lmax之間,一方面,使擬合得到的加工路徑可以準(zhǔn)確反映刀軌的幾何特性,另一方面,使擬合計算盡可能簡化。
根據(jù)后置處理的原理,微小直線段是刀軌按給定誤差離散化得到的。因此,微段平滑算法的基礎(chǔ)是利用最小二次逼近法,按照給定誤差對適合擬合區(qū)域的微段進(jìn)行擬合,近似得到連續(xù)的加工路徑來逼近原有刀軌。在擬合誤差允許范圍內(nèi),為了進(jìn)一步提高擬合曲線的平滑度,本文提出的算法在NURBS曲線最小二乘逼近算法的基礎(chǔ)上,對各數(shù)據(jù)點(diǎn)增加了權(quán)因子約束和進(jìn)給速度方向限制(一階導(dǎo)數(shù)約束),使擬合得到曲線更逼近原始加工路徑的同時,增加曲線的平滑度。
如圖2所示,帶約束NURBS最小二乘逼近算法基本流程為:首先按照修正弦長法對讀入的數(shù)據(jù)點(diǎn)進(jìn)行參數(shù)化,然后根據(jù)各點(diǎn)的權(quán)因子和一階導(dǎo)數(shù)約束進(jìn)行最小二乘擬合,得到最大逼近誤差范圍內(nèi)的控制點(diǎn),生成新的NURBS曲線加工路徑。
圖2 最小二乘逼近流程圖
假設(shè)適合擬合的r+1個數(shù)據(jù)點(diǎn)為qj(j=1,2,…,r),qj受 權(quán) 因 子hj(hj≥ 1)或 一 階 導(dǎo) 數(shù)fj(進(jìn)給速度方向)的約束,擬合得到的NURBS曲線為C(u)(u∈ [ui,ui+1]? [u3,un+1])[14]。
默認(rèn)權(quán)因子hj=1(若hj通過手工編程指定,則hj為編程值),當(dāng)數(shù)據(jù)點(diǎn)qj最小二乘數(shù)逼近誤差εj超出給定最大逼近誤差εmax時,增大該點(diǎn)處的權(quán)因子(hj←chhj,ch為權(quán)因子修正系數(shù),默認(rèn)ch=5),然后重新迭代計算,直到滿足εj≤εmax。
式中,Nm(k),p為p次基函數(shù)。
首末端點(diǎn)的一階導(dǎo)數(shù)f0和fr可以根據(jù)給定的首末端點(diǎn)邊界條件計算得到,例如q0處的邊界條件為切矢條件時,f0為上一段加工程序在q0處的切矢。中間點(diǎn)的一階導(dǎo)數(shù)按照下列規(guī)則得到:若未給定,則該數(shù)據(jù)點(diǎn)為非約束點(diǎn);若手工編程指定,則fj為編程值;若已給定法向矢量,則fj通過法向矢量近似計算,近似計算方法如下:
假設(shè)法向矢量為nj,qjqj+1為點(diǎn)qj到qj+1的矢量,fj可近似計算得
式中,(xj,yj,zj)、(xj+1,yj+1,zj+1)分別為點(diǎn)qj和qj+1的坐標(biāo);α為qjqj+1與nj的夾角。
通過引入拉格朗日乘數(shù)法,即引入2(s+1)個拉格朗日乘數(shù)因子,帶約束的NURBS曲線最小二乘逼近的算法實(shí)現(xiàn)問題衍化為解一個系數(shù)矩陣為2s+m+3維方陣的線性方程組。設(shè)拉格朗日乘數(shù)因子為λa(a=0,1,…,2s+m+3),令A(yù)=[λ0λ1…λ2s+m+3],可 得 非 約 束 點(diǎn) 滿 足 的方程:
約束點(diǎn)滿足的方程:
非約束點(diǎn)的誤差可以表示為S-MucD,按照最小二乘法逼近原理,在約束條件McD=T下,使誤差S-MucD的加權(quán)平方達(dá)到最小。
因此,根據(jù)拉格朗日乘數(shù)法,應(yīng)使下式達(dá)到最小值:
對Y求A和D求的偏導(dǎo)數(shù),并令其等于0,得
解式(7),并用A/2代替A,得
進(jìn)一步可推得
通過式(9)可以得到拉格朗日乘數(shù)因子矩陣A,將A代入式(8),即可解得所需的控制點(diǎn)矩陣D,得到所需的p次NURBS曲線。
為了驗(yàn)證算法的正確性和有效性,對圖3所示的原始圖形(三瓣花)的連續(xù)加工路徑進(jìn)行后置處理,借助CAM軟件生成微小直線段,微段平均長度為1.0923mm。按照上述算法分別進(jìn)行仿真與實(shí)驗(yàn)。
圖3 待擬合的微段加工路徑原始圖形
分析圖4a可知,三瓣花逼近的實(shí)際最大誤差為3.24μm,位于給定的逼近內(nèi)外公差范圍內(nèi),驗(yàn)證了本擬合算法的可行性。由圖4b、圖4c可知,本文算法的加速度沒有像微段加工方式那樣發(fā)生突變,比較平穩(wěn),進(jìn)給速度較微段加工方式也更平滑,且具有更高的加工效率。由圖4d可知,本文算法的加工誤差也更小,且更均勻。
圖4 算法仿真和驗(yàn)證結(jié)果
為了消除微段加工方式下加工程序量過大和需要頻繁加減速的詬病,實(shí)現(xiàn)微小直線段的高速平滑加工,提高加工效率,本文提出了基于帶權(quán)因子和一階導(dǎo)數(shù)約束的NURBS曲線最小二乘逼近算法,并在此基礎(chǔ)上進(jìn)一步給出了微段平滑加工算法。將離散的微段數(shù)據(jù)點(diǎn)擬合成一條連續(xù)的NURBS曲線并將其作為新的加工路徑,然后根據(jù)該加工路徑進(jìn)行NURBS實(shí)時插補(bǔ),從而實(shí)現(xiàn)微小直線段的平滑加工。驗(yàn)證結(jié)果表明,該算法有助于實(shí)現(xiàn)微小直線段的平滑加工。
[1]徐志明,馮正進(jìn),汪永生,等.連續(xù)微小路徑段的高速自適應(yīng)前瞻插補(bǔ)算法[J].制造技術(shù)與機(jī)床,2003(12):20-23.
[2]王宇眙,肖凌劍,曾水生.小線段高速加工速度銜接數(shù)學(xué)模型[J].上海交通大學(xué)學(xué)報,2004,38(6):901-904.
[3]許海峰,王宇晗,李宇昊,等.小線段高速加工的速度模型研究和實(shí)現(xiàn)[J].機(jī)械工程師,2005(4):9-13.
[4]彭芳瑜,李黎,陳徐兵.連續(xù)小直線段高速高精插補(bǔ)中的動力學(xué)約束條件[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2006,18(12):1812-1816.
[5]黃昕,李迪,李方,等.基于雙向掃描算法的小線段速度規(guī)劃.計算機(jī)集成制造系統(tǒng),2009,15(11):2188-2192.
[6]葉偉,王小椿.一種連續(xù)小線段高速插補(bǔ)算法[J].南京理工大學(xué)學(xué)報(自然科學(xué)版),2008,32(4):443-448.
[7]李小清,朱凱.數(shù)控加工小線段高速平滑銜接插補(bǔ)算法[J].組合機(jī)床與自動化加工技術(shù),2010(9):1-5.
[8]冷洪濱,鄔義杰,潘曉弘.三次多項(xiàng)式微段高速加工速度規(guī)劃算法研究[J].計算機(jī)集成制造系統(tǒng),2008,14(2):336-340.
[9]楊開明,石川,葉佩青,等.數(shù)控系統(tǒng)軌跡段光滑轉(zhuǎn)接控制算法[J].清華大學(xué)學(xué)報(自然科學(xué)版),2007,47(8):1295-1299.
[10]Erkorkmaz K,Altintas Y.High Speed CNC System Design.Part I:Jerk Limited Trajectory Generation and Quintic Spline Interpolation[J].International Journal of Machine Tools and Manufacture,2001,41(9):1323-1345.
[11]Yau H T,Wang J B,Chen W C.Development and Implementation for Real-time Look Ahead Interpolator by Using Bezier Curve to Fit CNC Continuous Short Blocks[C]//2005IEEE International Conference on Mechatronics.Taipei,2005:78-83.
[12]任錕,傅建中,陳子辰.高速加工中速度前瞻控制新算法研究[J].浙江大學(xué)學(xué)報(工學(xué)版),2006,40(11):1985-1988.
[13]張園,陳友東,黃榮瑛,等.高速加工中連續(xù)微小線段的前瞻自適應(yīng)插補(bǔ)算法[J].機(jī)床與液壓,2008,36(6):1-4.
[14]Piegl L,Tiller W.非均勻有理 B樣條[M].趙罡,穆國旺,王拉柱,譯.2版.北京:清華大學(xué)出版社.2010.