基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法
【專利摘要】基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法包括以下步驟:對給定的型值點(diǎn)及權(quán)因子進(jìn)行參數(shù)密化,用累計(jì)弦長參化數(shù)法給出參數(shù)u的初值,用計(jì)算節(jié)點(diǎn)矢量U,然后根據(jù)控制頂點(diǎn)矩陣求出全部控制頂點(diǎn)與權(quán)因子,最后將節(jié)點(diǎn)矢量中的新參數(shù)、控制頂點(diǎn)以及權(quán)因子依次代入到三次NURBS曲線方程中求出下一插補(bǔ)點(diǎn)的位置實(shí)現(xiàn)軌跡計(jì)算。不斷重復(fù)參數(shù)密化和軌跡計(jì)算兩個(gè)實(shí)時(shí)插補(bǔ)步驟直至曲線終點(diǎn),即可完成插補(bǔ)軌跡。本發(fā)明的方法利用Obrechkoff的高局部截?cái)嗾`差提高了插補(bǔ)精度;通過后向差分代替微分的方法簡化了計(jì)算復(fù)雜度,保證了插補(bǔ)的實(shí)時(shí)性;插補(bǔ)曲線曲率變化平緩,保證了插補(bǔ)曲線的光順性。對實(shí)現(xiàn)計(jì)算機(jī)數(shù)字控制機(jī)床高精度、高質(zhì)量加工異形曲線曲面零件具有重要意義。
【專利說明】基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法 所屬【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種曲線插補(bǔ)算法,尤其涉及一種基于Obrechkoff算法的三次NURBS 曲線實(shí)時(shí)插補(bǔ)方法。
【背景技術(shù)】
[0002] 針對傳統(tǒng)數(shù)控系統(tǒng)只支持直線段或圓弧段插補(bǔ),難以滿足復(fù)雜曲線曲面零件的 高精度、高質(zhì)量加工要求的缺點(diǎn),許多計(jì)算機(jī)輔助設(shè)計(jì)與制造(CAD/CAM)系統(tǒng)開始引入曲 線的參數(shù)描述方法,并進(jìn)行了大量參數(shù)曲線插補(bǔ)技術(shù)的研究。因此,設(shè)計(jì)自由參數(shù)曲線及 其插值算法成為了CAD/CAM系統(tǒng)研究的核心問題。而非均勻有理B樣條(NURBS)能為自 由曲線和標(biāo)準(zhǔn)解析曲線提供統(tǒng)一的表達(dá)形式,因此對NURBS方法的研究成為了復(fù)雜曲線 曲面零件加工技術(shù)研究的關(guān)鍵。在工程實(shí)踐中,通常要根據(jù)待加工零件輪廓上的一些已 知點(diǎn)或可測點(diǎn),按照一定的數(shù)學(xué)方法進(jìn)行輪廓逼近。實(shí)際上就是要根據(jù)一組給定的離散 的有序型值點(diǎn)來構(gòu)造一條順序通過該組型值點(diǎn)的NURBS曲線。在這個(gè)過程中,數(shù)據(jù)點(diǎn)參 數(shù)化方法的選取對曲線的形狀、插補(bǔ)精度以及光順性方面有較大的影響。為了提高NURBS 曲線的插補(bǔ)精度及光順性,國內(nèi)外研究人員在經(jīng)典的參數(shù)化插補(bǔ)算法基礎(chǔ)上,進(jìn)行了深入 的研究。文獻(xiàn)I"FastNURBSinterpolationbasedonthebiarcguidecurve"(The InternationalJournalofAdvancedManufacturingTechnology,2012,58 (5))利用 步長參數(shù)和高斯積分對待插補(bǔ)軌跡進(jìn)行采樣,然后利用雙圓弧擬合方法對基于參數(shù)u和 弧長s的采樣點(diǎn)進(jìn)行擬合,得到插補(bǔ)的引導(dǎo)曲線,依靠引導(dǎo)曲線實(shí)現(xiàn)NURBS的快速插補(bǔ), 避免了截?cái)嗾`差,提高了插補(bǔ)精度。文獻(xiàn)2 "全程S曲線加減速控制的自適應(yīng)分段NURBS 曲線插補(bǔ)算法"(中國機(jī)械工程,2010,21(2))對經(jīng)自適應(yīng)算法生成的NURBS曲線在曲率 尖角處進(jìn)行分段,然后采用S曲線加減速控制方法重新規(guī)劃進(jìn)給速度,各NURBS曲線段按 照該進(jìn)給速度方案完成曲線插補(bǔ)。該方案雖然增加了插補(bǔ)次數(shù),延長了插補(bǔ)時(shí)間,但插補(bǔ) 最大加速度和加加速度滿足了限制條件,插補(bǔ)效率得到了提高。文獻(xiàn)3"Interpolation bygeometricalgorithm"(Computer-AidedDesign, 2007, 39 (4))提出了一種基于迭代 求取參數(shù)曲線控制頂點(diǎn)的幾何插值算法,簡化了參數(shù)插值的計(jì)算,但減慢了曲線插補(bǔ)的速 度。文獻(xiàn) 4"AnimprovedparameterizationmethodforB-splinecurveandsurface interpolation"(Computer-AidedDesign, 2013, 6 (45))針對現(xiàn)有的參數(shù)化法不能滿足所 有給定型值點(diǎn)特征的問題,將密切圓引入到所有給定的型值點(diǎn)上,提出了一種新的修正的 向心參數(shù)化方法,實(shí)現(xiàn)了對急劇變化的型值點(diǎn)的良好適應(yīng)。文獻(xiàn)5"NURBS曲線泰勒展開插 補(bǔ)法的平穩(wěn)性與改進(jìn)研究"(中國機(jī)械工程,2012, 23 (4))提出了通過界定搜索鄰域并采用 二分插值搜索方法來精確求取插補(bǔ)點(diǎn)參數(shù)的改進(jìn)方法,將插補(bǔ)曲線的位移相對誤差減小了 8個(gè)數(shù)量級。文獻(xiàn)6 "基于阿當(dāng)姆斯算法的NURBS曲線插補(bǔ)"(吉林大學(xué)學(xué)報(bào)(工學(xué)版), 2009, 39 (SI))針對一階泰勒展開和二階泰勒展開方法涉及一階、二階導(dǎo)數(shù)的繁瑣計(jì)算、算 法迭代精度低,且會導(dǎo)致插補(bǔ)弦長誤差的缺點(diǎn),提出了基于三步四階阿當(dāng)姆斯法求解微分 方程的參數(shù)插補(bǔ)算法。該方法用差分代替微分,減少了計(jì)算量,并將局部截?cái)嗾`差的階次 由ο(τ2)提高到O(T5),提高了插補(bǔ)精度。以上所述均為基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法提供了理論依據(jù)。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的是提供一種基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法, 該方法能夠綜合考慮插補(bǔ)復(fù)雜曲線曲面零件輪廓的精度、實(shí)時(shí)性和生成插補(bǔ)曲線的光順性 因素,采用單步四階Obrechkoff微分方程算法進(jìn)行復(fù)雜曲線曲面輪廓的參數(shù)密化,然后進(jìn) 行控制頂點(diǎn)與權(quán)因子的反算,生成自由曲線插補(bǔ)軌跡。
[0004] 為了達(dá)到上述目的,本發(fā)明采用如下技術(shù)方案:
[0005] 針對型值點(diǎn)的參數(shù)密化,引入單步四階的Obrechkoff微分方程:
[0006] >;,Η-.V,,=M凡令節(jié)點(diǎn)矢量un=yn,插補(bǔ)周 期T=h,則un' =yn',un"=yn",代入ObrechkofT微分方程得出參數(shù)u的 遞推方程:=w,, +ΙΡ,,,Χ卜甚ρ,,χ卜采用后向差分代替微分,即 ": =U;i_______=2l^t______?£--_________3_____對遞推方程進(jìn)行簡化得出參數(shù)u的遞推關(guān)系式 ,+Μ" 2;μ因累計(jì)弦長參數(shù)化法是目前公認(rèn)的最佳參數(shù)化法,且計(jì)算簡便, 參數(shù)化插補(bǔ)效果好,故根據(jù)給定的離散型值點(diǎn),運(yùn)用經(jīng)典的累計(jì)弦長參數(shù)化法給出參數(shù)U的初值,進(jìn)一步求得節(jié)點(diǎn)矢量U。
【專利附圖】
【附圖說明】
[0007] 圖1是基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法流程圖;
[0008] 圖2是基于Obrechkoff算法生成的三次NURBS曲線圖;
[0009] 圖3是基于Obrechkoff算法生成的三次NURBS曲線曲率圖。
【具體實(shí)施方式】:
[0010] 圖1是基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法流程圖;本發(fā)明的基 于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法包括以下步驟:
[0011] (1)針對給定的一組三次NURBS開曲線的離散型值點(diǎn)Pi及其權(quán)因子qi(i= 0, 1,...,6)(如表1),用本發(fā)明的單步四階Obrechkoff算法求取節(jié)點(diǎn)矢量,如表2。
[0012]表1型值點(diǎn)及權(quán)因子
[0013]
【權(quán)利要求】
1. 基于Obrechkoff算法的三次NURBS曲線實(shí)時(shí)插補(bǔ)方法,包括以下步驟: (1) 型值點(diǎn)的參數(shù)密化,用累計(jì)弦長參數(shù)化法計(jì)算給定型值點(diǎn)的節(jié)點(diǎn)矢量參數(shù)u的初 值,然后代入《β+ι -9wn , +M,, 算式中計(jì)算基于Obrechkoff微分方程的節(jié)點(diǎn)矢量。 7 (2) 反算控制頂點(diǎn)和權(quán)因子,然后將求得的節(jié)點(diǎn)矢量、控制頂點(diǎn)和權(quán)因子代入三次 NURBS參數(shù)曲線方程中,完成NURBS曲線的插補(bǔ)。
2. 根據(jù)權(quán)利要求1所述的基于單步四階Obrechkoff算法的三次NURBS曲線 實(shí)時(shí)插補(bǔ)方法,其特征在于,所述步驟(1)中引入單步四階的Obrechkoff微分方 程:H, "JY(凡+i-兄,),令節(jié)點(diǎn)矢量un =yn,插補(bǔ)周期T=h, 則u/ =y/ ,un "=yn ",代入單步四階Obrechkoff微分方程得出參數(shù)u的遞 推方程:+<卜甚^X),采用后向差分代替微分,即用 和w/=iZ^L±5LA對遞推方程進(jìn)行簡化,得出參數(shù)u的遞推關(guān)系式 II
【文檔編號】G05B19/4103GK104317251SQ201410624370
【公開日】2015年1月28日 申請日期:2014年11月7日 優(yōu)先權(quán)日:2014年11月7日
【發(fā)明者】任洪娥, 張小燕, 董本志, 于鳴, 朱佳梅 申請人:東北林業(yè)大學(xué)