張宏林 杜周洋 程帥 杜玉科 冀永剛 劉智勇
摘 要:本文指出了NURBS在數(shù)控插補(bǔ)算法中的重要作用,分析了傳統(tǒng)插補(bǔ)算法的不足。通過(guò)分析非均勻有理B樣條曲線的參數(shù)表達(dá)形式,總結(jié)了其特點(diǎn)與在插補(bǔ)應(yīng)用中的優(yōu)點(diǎn),為插補(bǔ)算法的設(shè)計(jì)提供參考。
關(guān)鍵詞:NURBS;插補(bǔ);進(jìn)給
DOI:10.16640/j.cnki.37-1222/t.2019.05.152
數(shù)控技術(shù)是一門高新技術(shù),集合了計(jì)算機(jī)技術(shù)、微電子技術(shù)、自動(dòng)控制與自動(dòng)檢測(cè)等技術(shù)于一體。而數(shù)控系統(tǒng)插補(bǔ)算法的優(yōu)劣是評(píng)價(jià)控制系統(tǒng)性能的重要指標(biāo)。非均勻有理B樣條曲線,簡(jiǎn)稱NURBS(Non-Uniform Rational B-Spline),是現(xiàn)代高檔數(shù)控加工系統(tǒng)插補(bǔ)方式中必須支持的功能[1],也是高低檔數(shù)控系統(tǒng)的劃分依據(jù)。NURBS的研究己是當(dāng)前數(shù)控技術(shù)的的熱點(diǎn)與難點(diǎn)問(wèn)題之一。
傳統(tǒng)的插補(bǔ)算法分為粗差補(bǔ)和精差補(bǔ)兩部分,在粗差補(bǔ)階段通過(guò)CAM軟件將曲線按加工精度要求劃分為大量的小直線段或小圓弧段,編寫G代碼輸入到數(shù)控系統(tǒng)中,再由數(shù)控系統(tǒng)插補(bǔ)器對(duì)G代碼中的每一微段進(jìn)行精插補(bǔ)。這種插補(bǔ)算法數(shù)據(jù)傳輸量大,并且加工質(zhì)量較差。
NURBS具有設(shè)計(jì)靈活、算法穩(wěn)定等優(yōu)點(diǎn),國(guó)外先進(jìn)的數(shù)控系統(tǒng)應(yīng)用NURBS在許多方面的處理能力都比較成熟,比如:參數(shù)預(yù)插補(bǔ)、加減速控制、系統(tǒng)前饋、精確補(bǔ)償和最佳拐角確定等,而我國(guó)在這一方面相對(duì)落后。
1 傳統(tǒng)插補(bǔ)方式的算法問(wèn)題
數(shù)控機(jī)床首先應(yīng)用在模具工業(yè),后來(lái)在汽車、航空、航天等領(lǐng)域也得到了普及,這些領(lǐng)域的零件存在大量復(fù)雜型面,如果按傳統(tǒng)的粗、精插補(bǔ)方式進(jìn)行數(shù)控加工,會(huì)存在以下問(wèn)題:
(1)程序文件巨大,傳輸困難,需要機(jī)床有大的數(shù)據(jù)存儲(chǔ)量。
(2)加工精度難以提高。在粗插補(bǔ)階段需要以直代曲,用直線逼近曲線;在精插補(bǔ)階段又需要以曲代直,用折線逼近直線。經(jīng)過(guò)兩次插補(bǔ),原本光滑的零件曲面其插補(bǔ)軌跡已變得不光滑,加工出來(lái)的零件用肉眼可以觀察得到復(fù)雜曲面上有明顯的條紋和棱角,影響加工精度。這是由于數(shù)學(xué)算法的原因,使加工難以得到光順性好的曲面。
(3)進(jìn)給速度難以提高,加速度及加加速度變化劇烈。由于曲面用大量曲線近似,曲線用大量折線近似,曲線軌跡不光滑,影響機(jī)床速度變化不連續(xù),加速度變化嚴(yán)重,加工速度慢且機(jī)床震動(dòng)強(qiáng)烈。如果插補(bǔ)過(guò)程中的加、減速度數(shù)值超過(guò)機(jī)床的承受能力,會(huì)產(chǎn)生失步或丟步,使機(jī)床過(guò)切或切不足,影響零件質(zhì)量;同時(shí)加工時(shí)速度的加、減速改變太頻繁,會(huì)使加工效率變低。
2 空間曲線的描述方式
目前有三種常用的空間曲線描述方式。
其中,為第個(gè)控制頂點(diǎn);,為的權(quán)因子,它越大曲線就越接近控制點(diǎn),為參數(shù)值。為次規(guī)范樣條基函數(shù),與B樣條曲線基函數(shù)相同。NURBS曲線可通過(guò)控制頂點(diǎn)的坐標(biāo)和其所對(duì)應(yīng)的權(quán)因子來(lái)改變曲線形狀,而且屬于局部形狀的更改,曲線的調(diào)節(jié)自由度更大。改變k值,可構(gòu)造不同冪次的樣條曲線,這樣有利于導(dǎo)函數(shù)的求解,并且方便尋找NURBS曲線的高曲率點(diǎn)。
3 NURBS曲線的優(yōu)點(diǎn)
在眾多曲線表達(dá)形式中,非均勻有理樣條曲線設(shè)計(jì)靈活、算法穩(wěn)定,適合成為計(jì)算機(jī)幾何信息表達(dá)、圖形設(shè)計(jì)和數(shù)據(jù)交換等方面的工業(yè)標(biāo)準(zhǔn)[2]。1991年國(guó)際標(biāo)準(zhǔn)化組織(ISO)的數(shù)據(jù)交換國(guó)際標(biāo)準(zhǔn)STEP中把NURBS作為自由型曲線曲面的唯一表達(dá)方式。
NURBS曲線的優(yōu)點(diǎn):
(1)可精確地表示所有曲線。它為現(xiàn)代曲面造型技術(shù)提供了一個(gè)統(tǒng)一的標(biāo)準(zhǔn),并為精確表示標(biāo)準(zhǔn)解析形狀和自由型曲面提供了一個(gè)統(tǒng)一的數(shù)學(xué)形式,可簡(jiǎn)潔、精確地表示直線和圓弧等規(guī)則曲線,因此,這兩類形狀信息可以通過(guò)一個(gè)統(tǒng)一的數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)。
(2)B樣條曲線基函數(shù)具備規(guī)范性,其曲線具有明確的幾何解釋和幾何不變性,即它的數(shù)學(xué)表達(dá)形式、所表達(dá)的形狀都與坐標(biāo)系的選擇無(wú)關(guān),曲線在旋轉(zhuǎn)與平移變換后性質(zhì)不變,曲線投影變換后得到的還是原來(lái)的曲線。
(3)NURBS 曲線計(jì)算量比較大,且計(jì)算也比較繁雜,但一旦建立這種描述關(guān)系,NURBS曲線的計(jì)算穩(wěn)定且速度快,使插補(bǔ)效率得到極大的提高,
(4)形狀控制方便靈活、造型功能強(qiáng)大。NURBS曲線引入權(quán)因子和分母,改變權(quán)因子的數(shù)值,可以很方便的改變控制頂點(diǎn)的位置,從而改變曲線的形狀。NUBBS是一種通過(guò)變化和再組合得到的曲線方程,具有方便的配套幾何計(jì)算工具,可用于節(jié)點(diǎn)刪除、插入、分割和升階等各個(gè)分析、設(shè)計(jì)、處理環(huán)節(jié),在進(jìn)行數(shù)據(jù)處理和存儲(chǔ)時(shí)明顯比傳統(tǒng)方法程序量少,更適合數(shù)控加工和編程。
4 NURBS在插補(bǔ)算法的優(yōu)勢(shì)
NURBS插補(bǔ)在加工中的優(yōu)勢(shì)體現(xiàn)在:
(1)可以直接對(duì)曲線插補(bǔ),而不是劃分微段,程序代碼大為簡(jiǎn)化。NURBS 曲線插補(bǔ)使用一種數(shù)學(xué)模型來(lái)表達(dá)進(jìn)給速度和曲線參數(shù)之間的關(guān)系,NURBS用控制點(diǎn)、權(quán)因子和節(jié)點(diǎn)矢量來(lái)描述曲線信息,因此程序代碼大為減少,粗插補(bǔ)代碼量大約是傳統(tǒng)代碼的0.1倍, 避免了由于離散的小線段產(chǎn)生大量數(shù)據(jù)傳輸問(wèn)題。并且指令精度不會(huì)隨著加工精度的提高而增大。
(2)加工精度更高。NURBS可以精確的表達(dá)各類規(guī)則的圖形曲線而且精度高,可用插補(bǔ)周期所決定的最小步長(zhǎng)構(gòu)成弦線來(lái)逼近輪廓,曲線插補(bǔ)點(diǎn)間隔極短,并且插補(bǔ)點(diǎn)均在曲線上,因此沒(méi)有徑向誤差,同時(shí)輪廓誤差也遠(yuǎn)遠(yuǎn)地小于采用直線逼近時(shí)的輪廓誤差,獲得最高的逼近精度。
相比之下,傳統(tǒng)插補(bǔ)以直代曲的多次逼近,減少了精度損失。NURBS算法雖然在每一個(gè)插補(bǔ)周期內(nèi)機(jī)床也是做平行于導(dǎo)軌的直線運(yùn)動(dòng),但刀具的移動(dòng)量非常小,引起的誤差輪廓誤差大大小于傳統(tǒng)插補(bǔ)中由于直線逼近所引起的誤差。同時(shí)由于不劃分微段,在加減速控制時(shí),數(shù)控機(jī)床運(yùn)動(dòng)連續(xù)而順滑,加、減速段更少,機(jī)床震動(dòng)少而且加工效率更高。
(3)進(jìn)給速度更高,進(jìn)給過(guò)程平穩(wěn)。NURBS同時(shí)具有在分段軌跡銜接點(diǎn)處連續(xù)可導(dǎo)的優(yōu)點(diǎn),可在加、減速控制過(guò)程中實(shí)現(xiàn)平穩(wěn)地速度切換,曲線加工時(shí)刀具軌跡不再是由多條折線來(lái)近似的曲線,而是一條樣條曲線。 NURBS能夠避免折線所引起的刀具運(yùn)動(dòng)方向的突然改變,使刀具沿樣條曲線的軌跡可以平滑地移動(dòng),當(dāng)加工方向變化范圍為一定值時(shí),無(wú)需加速和減速,這樣不但提高了進(jìn)給速度,也提高了加工精度和表面質(zhì)量,因此具有重要的理論和實(shí)踐意義。
(4)NURBS的幾何信息完整。零件加工輪廓的NURBS幾何信息可以完整、準(zhǔn)確的事先傳輸?shù)綌?shù)控系統(tǒng),在參數(shù)預(yù)插補(bǔ)中,完成必要的數(shù)學(xué)運(yùn)算,解決參數(shù)曲線運(yùn)算量過(guò)大的問(wèn)題。
(5)合理規(guī)劃好進(jìn)給速度的大小是提高曲線插補(bǔ)精度的關(guān)鍵, NURBS參數(shù)曲線具有進(jìn)給速度更加平滑且誤差容易控制在容許的范圍內(nèi)的優(yōu)點(diǎn)。高速加工需要速度過(guò)渡曲線平滑,使加工速度快并且響應(yīng)靈敏。NURBS方程參數(shù)插值本身具有進(jìn)給速度更加平滑的優(yōu)點(diǎn),而進(jìn)給速度的連續(xù)性解決了小線段之間的轉(zhuǎn)折連接問(wèn)題。
總之NURBS插補(bǔ)在存儲(chǔ)空間需求量、位置精確度以及速度平穩(wěn)性上具有更多優(yōu)勢(shì),更適合于空間曲面加工中對(duì)高速、高精度的要求。
5 總結(jié)
傳統(tǒng)的插補(bǔ)方法存在二次插補(bǔ)問(wèn)題,加工不連續(xù),加工的零件表面不光滑,加工精度不足。但如果采用NURBS插補(bǔ),則需要5次樣條曲線才能保證端點(diǎn)一階、二階連續(xù),計(jì)算量過(guò)大,因此在數(shù)控插補(bǔ)領(lǐng)域,一般都是用三次的NURBS曲線進(jìn)行插補(bǔ)計(jì)算。
參考文獻(xiàn):
[1]Piegl L,Tiller W.非均勻有理B樣條[M]2版.北京:清華大學(xué)出版社,2010.
[2]李建剛,張婷華,李澤湘等.一種完善的自適應(yīng)NURBS曲線插補(bǔ)算法[J].機(jī)械工程學(xué)報(bào),2008,19(09):1095-1102.
基金項(xiàng)目:西安思源學(xué)院科研項(xiàng)目資助《基于NURBS的高速數(shù)控加工前瞻插補(bǔ)控制算法的研究與實(shí)現(xiàn)》(XASY-B1805)
作者簡(jiǎn)介:張宏林(1972-),男,陜西潼關(guān)人,碩士,高級(jí)工程師,教師,主要從事數(shù)控技術(shù)和機(jī)械設(shè)計(jì)研究。