趙曉運(yùn),霍亞光,宋緒丁
(1.長安大學(xué) 道路施工技術(shù)與裝備教育部重點實驗室,西安 710064;2.臺州學(xué)院 機(jī)械工程學(xué)院,臺州 318000;3.長安大學(xué) 現(xiàn)代工程訓(xùn)練中心,西安 710064)
在現(xiàn)代制造的數(shù)控加工領(lǐng)域,CNC系統(tǒng)NURBS直接插補(bǔ)技術(shù),無論是在三軸還是在多軸系統(tǒng)加工中,都受到了廣泛的重視和深入研究與發(fā)展[1~16]。隨著社會和科學(xué)技術(shù)的進(jìn)步,人們對各種各樣產(chǎn)品的性能和外觀等要求日益增高,對曲面設(shè)計尤其是復(fù)雜曲面已逐漸過渡到了用NURBS參數(shù)形式統(tǒng)一表示[16~20]。而伴隨著數(shù)控加工過程的高速、高精和高效的要求,NURBS直接插補(bǔ)技術(shù)不僅日益凸顯重要,而且是現(xiàn)代高端數(shù)控系統(tǒng)的一個重要發(fā)展方向[1,7,10~14]。CNC系統(tǒng)插補(bǔ)的實質(zhì)是根據(jù)有限的輸入信息,實時完成數(shù)據(jù)點的密化工作,從而使刀具按給定精度沿著規(guī)定的軌跡運(yùn)動。插補(bǔ)技術(shù)是CNC系統(tǒng)的核心,各種輪廓加工均是通過插補(bǔ)技術(shù)來實現(xiàn)的。常規(guī)的CNC數(shù)控系統(tǒng)只包含直線插補(bǔ)和圓弧插補(bǔ)功能,對于復(fù)雜的不規(guī)則的曲面,一般由CAD/CAM系統(tǒng)生成符合精度要求的刀具路徑,其實質(zhì)是將加工對象離散成大量的直線或圓弧段,然后再將數(shù)據(jù)輸入CNC系統(tǒng),由數(shù)控系統(tǒng)執(zhí)行直線插補(bǔ)或圓弧插補(bǔ)實現(xiàn)逼近加工。理論和經(jīng)驗證明[3,6~8,14],采用基本的直線和圓弧插補(bǔ)方式,在面對非圓曲線曲面加工時,其主要不足有:加工質(zhì)量和精度不高,程序量過大,加工效率偏低,因而不能適應(yīng)現(xiàn)代工業(yè)高精、高速和高效的發(fā)展要求。為了彌補(bǔ)上述不足,人們研究發(fā)展了參數(shù)曲線直接插補(bǔ)方式[8,10,21~22]。在參數(shù)曲線中,樣條曲線由于其良好的幾何特性,受到了廣泛的研究和發(fā)展。基于樣條理論而發(fā)展起來的NURBS曲線,其特點是節(jié)點之間不等距,并用有理分式表達(dá)B樣條曲線,吸納了B樣條曲線和貝齊爾曲線的幾何形狀特點,具有分段表示和整體連續(xù)等優(yōu)良特性。目前,對于可以統(tǒng)一表達(dá)初等解析曲線和其它不規(guī)則的自由型曲線的NURBS曲線,由于其既可以較好地保留曲線的幾何特性,又具有良好的操控性等,得到了較高的重視和發(fā)展。樣條插補(bǔ)是指在數(shù)控程序編程時,采用參數(shù)曲線描述加工軌跡曲線,將包含曲線信息的數(shù)控加工程序輸送至數(shù)控系統(tǒng),由數(shù)控系統(tǒng)進(jìn)行數(shù)據(jù)處理和曲線插補(bǔ)工作[14]。NURBS直接插補(bǔ)是基于樣條插補(bǔ)的思想演化而來的,也就是說,在數(shù)控編程時,直接用NURBS曲線的描述參數(shù)進(jìn)行數(shù)控加工軌跡描述,曲線的插補(bǔ)工作由數(shù)控裝置直接計算完成,其實質(zhì)是,基于參數(shù)變化,求出相鄰兩坐標(biāo)之間的增量值,然后,通過坐標(biāo)軸移動來實現(xiàn)插補(bǔ)折線,用于逼近目標(biāo)曲線。NURBS插補(bǔ)可以使數(shù)控機(jī)床切削運(yùn)動,嚴(yán)格按照理論NURBS曲線運(yùn)動[4,23],其主要優(yōu)點有:加工精度高,刀軌光順性好,程序量小,能適應(yīng)高速、高精和高效加工等,其研究成果在不少高檔數(shù)控機(jī)床上得到了應(yīng)用。
本文基于NURBS基本理論,分析了NURBS插補(bǔ)的過程和實現(xiàn)方式,并通過實例,在所選定的機(jī)床上進(jìn)行了加工測試,驗證了NURBS插補(bǔ)方式的優(yōu)良性,對工程編程實踐具有指導(dǎo)意義。
一條k次NURBS曲線可以表示為一分段的有理多項式矢函數(shù):


工程應(yīng)用中多為已知型值點條件,要求根據(jù)型值點數(shù)據(jù)構(gòu)建NURBS曲線,即曲線反求。在反求過程中,首先構(gòu)造節(jié)點矢量,不同的參數(shù)化形式對節(jié)點矢量的構(gòu)造有著較大的影響。常用的參數(shù)化形式[19,25]有:均勻參數(shù)化、積累弦長參數(shù)化、向心參數(shù)化和修正弦長參數(shù)化。當(dāng)參數(shù)化和權(quán)因子確定后,NURBS曲線坐標(biāo)值計算的關(guān)鍵核心問題是控制頂點的反求。控制頂點的反求,可以利用遞推定義的遞推公式,求出所有k次B樣條的表達(dá)式,然后,再利用所選參數(shù)化形式所確定的參數(shù)值與型值點的對應(yīng)值關(guān)系,列出矩陣方程,求出控制頂點。由B樣條遞推定義可知,隨著曲線次數(shù)的升高,B樣條計算的冪次也將上升,將給數(shù)值計算帶來較嚴(yán)重的波動。實際應(yīng)用中,常采用仿射變換直線段長度比不變原理所得到的矩陣表達(dá)式[18,25]計算控制頂點,該方法計算穩(wěn)定,累積誤差不敏感。

其中:


當(dāng)節(jié)點矢量、權(quán)因子和控制頂點這三個參數(shù)完全確定下來之后,便可根據(jù)NURBS曲線方程表達(dá)式進(jìn)行數(shù)據(jù)計算,并進(jìn)行曲線插補(bǔ)工作。
根據(jù)NURBS曲線的理論知識可知,當(dāng)曲線的階次確定后,該NURBS曲線可由其節(jié)點矢量、權(quán)因子矢量和控制頂點三組基本參數(shù)唯一確定。數(shù)據(jù)點參數(shù)化形式,不僅決定了節(jié)點矢量的構(gòu)建,也決定了控制頂點的反求和坐標(biāo)點迭代運(yùn)算的性質(zhì)。NURBS曲線插補(bǔ),就是根據(jù)當(dāng)前插補(bǔ)點的參數(shù),按照給定的條件,求出下一個插補(bǔ)點的參數(shù),然后由NURBS曲線坐標(biāo)方程,計算出下一個插補(bǔ)點坐標(biāo),進(jìn)而由數(shù)控裝置將坐標(biāo)數(shù)據(jù)傳送給驅(qū)動器,對機(jī)床進(jìn)行運(yùn)動控制,實現(xiàn)工件輪廓加工。
NURBS插補(bǔ)代碼格式的特點是將NURBS曲線三個參數(shù)(節(jié)點矢量、權(quán)因子矢量和控制頂點)作為NC程序指令的組成部分。NURBS技術(shù)在CAD/CAM領(lǐng)域已經(jīng)取得較為成熟的應(yīng)用,但在CNC系統(tǒng)領(lǐng)域仍然相對滯后。常用的方法是,在CAD中采用NURBS曲線曲面構(gòu)造出零件幾何模型,然后在CAM中進(jìn)行數(shù)控編程時,將零件的幾何模型轉(zhuǎn)化為含有NURBS插補(bǔ)代碼的NC文件,最后,數(shù)控系統(tǒng)能夠直接識別這些代碼并進(jìn)行NURBS插補(bǔ)運(yùn)算。現(xiàn)行的三坐標(biāo)NURBS插補(bǔ)指令,仍未形成統(tǒng)一的標(biāo)準(zhǔn)格式[10]。不少廠商如SIEMENS、FANUC等都開發(fā)出自己的帶NURBS插補(bǔ)功能的CNC系統(tǒng),但不同供應(yīng)商的數(shù)控系統(tǒng)提供的NURBS插補(bǔ)指令G代碼不盡相同,比較典型的G代碼格式是,由G06.2作為NURBS插補(bǔ)開始的標(biāo)志,數(shù)控裝置讀入三組NURBS刀心點數(shù)據(jù),通過運(yùn)算實現(xiàn)NURBS插補(bǔ)工作。本文選用現(xiàn)有的FANUC立式數(shù)控加工中心進(jìn)行加工,其FANUC數(shù)控系統(tǒng)的NURBS插補(bǔ)功能代碼格式如表1所
示[3,24]。

表1 FANUC18i-MB系統(tǒng)的NURBS插補(bǔ)G代碼
通過NURBS直接插補(bǔ),CNC系統(tǒng)可以精確控制機(jī)床實現(xiàn)NURBS曲線刀具軌跡的運(yùn)動,從而克服由基本線型(直線或圓弧)插補(bǔ)而引起的插補(bǔ)技術(shù)誤差。圖1是NURBS刀具路徑示意圖。

圖1 NURBS刀具路徑示意圖
NURBS刀具路徑是由CNC系統(tǒng)的NURBS插補(bǔ)器來實現(xiàn)內(nèi)部的曲線運(yùn)算,其主要優(yōu)點體現(xiàn)在:可以減少數(shù)控加工代碼的程序段數(shù),提高系統(tǒng)對數(shù)據(jù)的處理能力;可避免直線插補(bǔ)時頻繁的速度變化,縮短加工時間,適應(yīng)高速加工;可以改善加工表面質(zhì)量并提高加工表面的光順性。
在自由曲面加工刀具路徑規(guī)劃中進(jìn)行NURBS曲線擬合的主要任務(wù)是擬合已知的刀位點,將大量有序的刀位點直接擬合成NURBS曲線刀具路徑,便可以直接傳輸給數(shù)控系統(tǒng)進(jìn)行NURBS刀具路徑的數(shù)控加工。這里,給定一組二維拋物線數(shù)據(jù)點如表2所示。
用插值法構(gòu)造3次NURBS曲線,采用積累弦長參數(shù)化法構(gòu)造出節(jié)點矢量為:

用曲線兩端切矢條件構(gòu)造補(bǔ)充方程,根據(jù)所給3次NURBS曲線控制頂點反求矩陣方程,求出控制頂點為:


數(shù)據(jù)點理論曲線如圖2所示。采用積累弦長參數(shù)化的插值曲線誤差如圖3所示。

圖2 數(shù)據(jù)點的理論曲線

圖3 積累弦長參數(shù)化插值曲線誤差
根據(jù)上述計算后得到的節(jié)點矢量和控制頂點,并取所有權(quán)因子為1,編寫FANUC格式的NURBS數(shù)控代碼如下:


表2 所給型值點數(shù)據(jù)


在商業(yè)軟件上構(gòu)建零件的三維模型如圖4所示。選擇FANUC 18i-MB數(shù)控系統(tǒng)的Hardinge/Bridgeport Vmc1000xp立式數(shù)控加工中心(如圖5所示)進(jìn)行銑削加工,定位精度為0.01mm,重復(fù)定位精度為:0.005 mm。分別采用直線插補(bǔ)、直線圓弧組合插補(bǔ)和NURBS插補(bǔ)方式進(jìn)行加工,所得到的工件曲面如圖6所示。
三種不同插補(bǔ)方式數(shù)控加工代碼比較如表3所示。

表3 不同插補(bǔ)方式的數(shù)控代碼

圖4 工件的三維模型

圖5 立式數(shù)控銑加工中心

圖6 工件的加工曲面
在加工過程中發(fā)現(xiàn),針對相同的刀位路線,采用直線插補(bǔ),編程精度為0.01mm時,NC代碼長度為213步;采用直線-圓弧插補(bǔ),編程精度為0.01mm時,NC代碼長度為592步;若要求更高的數(shù)控加工精度,則上述對應(yīng)的數(shù)控加工NC代碼的數(shù)量還會急劇增加。采用NURBS直接插補(bǔ),程序段從G06.2指令開始,數(shù)控裝置讀取G06.2指令后面的三組數(shù)據(jù)進(jìn)行插補(bǔ)計算,按NURBS曲線的定義直接實現(xiàn)NURBS插補(bǔ),不需要近似插補(bǔ)所需的大量指令代碼段。NURBS直接插補(bǔ),程序段精簡短小,與近似直線插補(bǔ)或直線圓弧插補(bǔ)相比,數(shù)控代碼能減少50%至80%左右,大大地提高了效率和數(shù)控高速加工能力。
根據(jù)上述分析和圖6可知,采用NURBS直接插補(bǔ)進(jìn)行數(shù)控加工,不僅可以得到相對簡潔的數(shù)控代碼,而且還可以改善輪廓曲線光順性,提高表面加工質(zhì)量等。
通過分析NURBS曲線的參數(shù)表達(dá)及其數(shù)據(jù)計算方法,研究了NURBS曲線插補(bǔ)過程及其數(shù)控代碼格式。采用積累弦長參數(shù)化方式構(gòu)造出給定數(shù)據(jù)的NURBS輪廓曲線,并編寫出了其NURBS直接插補(bǔ)程序代碼。通過加工實例,驗證了NURBS插補(bǔ)的優(yōu)良性。由實例可知,采用直線圓弧插補(bǔ)方式,數(shù)控加工的NC代碼最長,592步;其次是采用直線插補(bǔ)方式的數(shù)控加工NC代碼,213步;采用NURBS直接插補(bǔ)方式,其對應(yīng)的數(shù)控加工NC代碼最簡練。結(jié)果表明:采用NURBS直接插補(bǔ)方式進(jìn)行數(shù)控加工,數(shù)控加工NC代碼精簡短小,能適應(yīng)高速加工,顯著地提高加工效率和能力,具有較好的刀路光順性和表面加工質(zhì)量,對工程編程實踐具有一定的指導(dǎo)意義。
[1]張小明,朱利民,丁漢,等.五軸加工刀具姿態(tài)球面NURBS曲線設(shè)計及優(yōu)化 [J].機(jī)械工程學(xué)報,2010,46(17):140-144.
[2]黃翔,曾榮,岳伏軍,等.NURBS插補(bǔ)技術(shù)在高速加工中的應(yīng)用[J].南京航空航天大學(xué)學(xué)報,2002,4(1):82-85.
[3]劉萍,王民權(quán),范進(jìn)楨,等.FANUC系統(tǒng)中實時前瞻的NURBS插補(bǔ)研究與實現(xiàn)[J].機(jī)械科學(xué)與技術(shù),2012,31(5):791-795.
[4]霍亞光,宋緒丁,劉海明.NURBS插補(bǔ)方式對數(shù)控銑削加工質(zhì)量的影響[J].現(xiàn)代制造工程,2012,8:57-60.
[5]于志宏,陳剛.NURBS曲線插補(bǔ)理論與實踐[J].制造技術(shù)與機(jī)床,2010,11:142-144.
[6]趙鴻,袁哲俊,盧澤生.NURBS曲線插補(bǔ)技術(shù)的應(yīng)用[J].制造技術(shù)與機(jī)床,1999,12:44-46.
[7]張琿,徐宗俊,郭鋼,等.CNC機(jī)床中的NURBS插補(bǔ)[J].制造技術(shù)與機(jī)床,1999,3:19-21.
[8]張永超,于洋,魏展鵬,等.自由曲面加工中NURBS曲線的插補(bǔ)實現(xiàn)[J].現(xiàn)代制造工程,2010,9:38-41.
[9]蔡善樂,張春政,石凱.反求NURBS曲線及其插補(bǔ)算法[J].新技術(shù)新工藝,2010,6:24-26.
[10]陳良驥,李慧瑩.多軸加工曲線曲面實時插補(bǔ)理論與方法[M].鄭州:鄭州大學(xué)出版社,2016.
[11]陳良驥.復(fù)雜曲面數(shù)控加工相關(guān)技術(shù)[M].北京:知識產(chǎn)權(quán)出版社,2011.
[12]丁漢,朱利民.復(fù)雜曲面數(shù)字化制造的幾何學(xué)理論與方法[M].北京:科學(xué)出版社,2011.
[13]于洋.五軸自由曲面NC加工刀路優(yōu)化及誤差控制[M].北京:國防工業(yè)出版社,2015.
[14]丁國富,江磊,朱紹維,等.五軸數(shù)控加工精度建模、分析及控制技術(shù)[M].北京:科學(xué)出版社,2016.
[15]解乃軍,仲高艷.數(shù)控技術(shù)及應(yīng)用[M].北京:科學(xué)出版社,2015.
[16]趙曉運(yùn),陳燕麗,宋緒丁.基于MATLAB和NURBS的葉片曲面造型[J].機(jī)械設(shè)計與制造工程,2016,26(2):22-26.
[17]Les Piegl, Wayne Tiller.The NURBS Book, 2nd ed[M].New York:Springer-Verlag,1997.
[18]Gerald Farin. Curves and Surfaces for Computer Aided Geometric Design,A Practical Guide, 2nd ed[M].Salt Lake City:Academic Press,1990.
[19]趙罡,穆國旺,王立柱.非均勻有理B樣條[M].2版.北京:清華大學(xué)出版社,2010.
[20]陳燕麗,宋緒丁.基于B樣條遞推算法的NURBUS雙四次曲面矩陣表示[J].制造業(yè)自動化,2014,36(2):90-93.
[21]桂貴生,何慶.高速加工機(jī)理與關(guān)鍵技術(shù)的研究進(jìn)展[J].農(nóng)業(yè)機(jī)械學(xué)報,2004,35(4):192-195.
[22]Bedi S, Ali I, Quan N.Advanced interpolation techniques for CNC machines[J].Journal of Engineering for Industry,Vol.115(3),1993:329-336.
[23]楊旭靜,胡仲勛,鐘志華.面向刀具路徑生成的NURBS曲線擬合算法研究[J].中國機(jī)械工程,2009,20(8):984-987.
[24]楊旭靜.自由曲面高性能數(shù)控加工刀具路徑技術(shù)研究[D].長沙:湖南大學(xué),2006.
[25]施法中.計算機(jī)輔助幾何設(shè)計與非均勻有理B樣條(修訂版)CAGD&NURBS[M].北京:高等教育出版社,2013.