司昆明,樊留群,朱 蓓,趙建華
在數(shù)控加工中,粗加工時(shí),為實(shí)現(xiàn)高速高效加工,需要對(duì)待加工的曲線曲面進(jìn)行光順處理;精加工時(shí),為了得到較光滑的曲面,也要對(duì)CAD/CAM處理后擬合的曲線進(jìn)行光順處理。可見,光順處理在數(shù)控加工中發(fā)揮著舉足輕重的作用。
目前,針對(duì)曲線的光順處理方法大致可以分為以下兩類:選點(diǎn)修改法和優(yōu)化法。選點(diǎn)修改法[1-2]指的是逐次找出造成不光順的數(shù)據(jù)點(diǎn)(即“壞點(diǎn)”)并對(duì)其進(jìn)行修正處理。而優(yōu)化法則分為兩種:整體優(yōu)化法和局部?jī)?yōu)化法。整體優(yōu)化法[3]一次對(duì)所有的型值點(diǎn)進(jìn)行修正,可以起到很好的整體光順作用,但其計(jì)算量過大,且操作速度較慢。局部?jī)?yōu)化法[4-6]則兼具選點(diǎn)修改法和整體優(yōu)化法的優(yōu)點(diǎn),該方法不僅計(jì)算量小,而且整體光順效果好。
在對(duì)“壞點(diǎn)”判定時(shí),文獻(xiàn)[1]、[7]僅從曲率的角度來(lái)考慮,這種判定“壞點(diǎn)”的方法在數(shù)控加工中是不合理的,會(huì)導(dǎo)致修正后的曲線越來(lái)越往直線的趨勢(shì)發(fā)展。因此,本文提出一種同時(shí)考慮相鄰弦間夾角和曲率的“壞點(diǎn)”判定方法。文獻(xiàn)[8]~[10]僅對(duì)“壞點(diǎn)”的位置做了修正處理,卻都沒有對(duì)“壞點(diǎn)”處的切向量進(jìn)行修改。一般如果控制點(diǎn)的位置有問題,那么它所對(duì)應(yīng)的切向量也應(yīng)該進(jìn)行修正處理。針對(duì)以上情況,本文提出了針對(duì)“壞點(diǎn)”的位矢和切矢同時(shí)進(jìn)行修正處理的局部光順?biāo)惴ā?/p>
已知型值點(diǎn)列為 Qi(i=0,1,2,…,n),設(shè)Q(t)是插值于{Qi}的非均勻三次樣條曲線,ki是樣條曲線Q(t)在型值點(diǎn)Qi處的相對(duì)曲率。為滿足曲線光順性的要求,選點(diǎn)修改法一般分兩個(gè)步驟進(jìn)行,即粗光順和精光順兩個(gè)階段。
在粗光順階段,通常按以下方法判定“壞點(diǎn)”[7]:
a.相對(duì)曲率的符號(hào)序列{sign(ki)}中連續(xù)變號(hào)的點(diǎn),即但凡滿足條件
成立的型值點(diǎn)Qi稱為“潛在壞點(diǎn)”。
b.對(duì)于已知的樣條曲線,設(shè)允許的相鄰弦間夾角的最小值為θmin,Qi點(diǎn)與相鄰的兩個(gè)型值點(diǎn)Qi-1,Qi+1構(gòu)成的弦夾角記為 θi,若 θi< θmin且滿足式(1),則稱點(diǎn) Qi為“壞點(diǎn)”。
c.由于在同一條曲線上存在出現(xiàn)多個(gè)“壞點(diǎn)”的可能,為減少工作量并獲得理想的光順效果,首先應(yīng)找出“壞點(diǎn)”中的“最壞點(diǎn)”進(jìn)行修正。此處令
在精光順階段,通常將ki的一階差分符號(hào)序列{sign(Δki)}中連續(xù)變號(hào)的點(diǎn),即滿足條件
成立的點(diǎn)稱作“壞點(diǎn)”。同時(shí),令
式中:li= ‖Qi- Qi-1‖,為弦長(zhǎng);Si為曲線 Q(t)在點(diǎn)Qi處的剪力躍度。在精光順階段,把剪力躍度最大處的點(diǎn)Qi稱為“最壞點(diǎn)”。
設(shè)插值于給定型值點(diǎn)Qi的參數(shù)三次非均勻樣條曲線為:
根據(jù)條件
可求出
式中:Δi=ti+1-ti。
由于累加弦長(zhǎng)參數(shù)化能夠如實(shí)地反映出數(shù)據(jù)點(diǎn)弦長(zhǎng)的分布情況,并一直被認(rèn)為是最佳參數(shù)化法,因此本文采用累加弦長(zhǎng)參數(shù)化,即
式中:ΔQi-1=Qi- Qi-1,為向前差分矢量,即弦線矢量。
樣條曲線的應(yīng)變能為 E=C∫(Q″(t))2d t,其中C為與樣條剛度有關(guān)的系數(shù)。記光順前后樣條曲線的應(yīng)變能分別為E和E*,光順前后樣條曲線的應(yīng)變能的變化量記ΔE??汕蟮?/p>
式中:Δk=tk+1-tk。要使得光順后的應(yīng)變能最小,將式(9)分別對(duì) ΔQk和 ΔQ'k求偏導(dǎo),并令偏導(dǎo)分別為零,即
帶入數(shù)值,求得:
最后,將“壞點(diǎn)”的位置矢量和切矢分別修正為:
使用該種方法對(duì)“壞點(diǎn)”進(jìn)行修正時(shí),要考慮一種情況:位矢修正量ΔQk大到一定程度,而超出數(shù)控加工時(shí)所允許的誤差公差帶。在純粹進(jìn)行曲線光順處理時(shí)該種情況可以不加考慮,但在數(shù)控加工時(shí),該類情況卻不容忽視。否則,會(huì)在提高工件光滑性的同時(shí)降低加工精度。因此,在保證加工精度的前提下,為使得數(shù)控加工出的工件盡可能光滑,本文引入位矢最大允許修正量ΔQmax,其值由數(shù)控加工時(shí)允許的誤差公差帶決定。當(dāng)ΔQk≥ΔQmax時(shí),令ΔQk=ΔQmax。這樣處理雖會(huì)使得樣條曲線的光順性較引入ΔQmax之前有所降低,卻能在保證加工工件精度的前提下,盡可能使加工出的工件光滑。
步驟1,過型值點(diǎn)構(gòu)造三次非均勻樣條插值曲線C0(t)。
步驟2,按照能量最優(yōu)原則分別將“壞點(diǎn)”的位矢和切矢分別修正為Q*k和。
步驟3,若“壞點(diǎn)”位矢修正量ΔQk大于最大允許修正量 ΔQmax,則取 ΔQk=ΔQmax,而切矢修正大小仍取ΔQ'k。
步驟4,對(duì)修正后的型值點(diǎn)重新進(jìn)行樣條插值,若仍舊有“壞點(diǎn)”則繼續(xù)按照以上步驟進(jìn)行修正,反之,輸出得到修改后的參數(shù)樣條曲線C(t)。
光順處理流程如圖1所示。
下面通過一組算例來(lái)驗(yàn)證本算法的有效性。選取如表1所示的實(shí)驗(yàn)數(shù)據(jù)點(diǎn),對(duì)表中的數(shù)據(jù)點(diǎn)進(jìn)行三次非均勻樣條曲線擬合,設(shè)定允許的相鄰弦間夾角的最小值 θmin為45°,允許的最大修正量ΔQmax設(shè)為0.5(單位量綱為1)。找出造成樣條曲線不光順的點(diǎn),并按本文介紹的“壞點(diǎn)”修正方法進(jìn)行光順處理。經(jīng)MATLAB仿真得出光順前后的4幅圖,其中,圖2和圖3分別表示光順處理前后的樣條曲線;圖4和5分別表示光順處理前后的樣條曲線曲率。通過對(duì)比可看出采用本文算法對(duì)原擬合曲線進(jìn)行光順處理后,曲線的斜率更均勻了,曲線也比原來(lái)光滑了,從而驗(yàn)證了本文算法的有效性。
表1 選取的數(shù)據(jù)點(diǎn)列
圖2 光順前的曲線
圖3 光順后的曲線
圖4 光順前的曲線曲率
圖5 光順后的曲線曲率
本文在國(guó)內(nèi)外學(xué)者研究的基礎(chǔ)上,提出在判定不光順點(diǎn)時(shí)同時(shí)考慮相鄰弦間夾角和曲率因素的“壞點(diǎn)”判別方法。另外,在處理這些不光順點(diǎn)時(shí),本文采用基于能量最優(yōu)的局部光順?biāo)惴▽?duì)“壞點(diǎn)”位矢和切矢同時(shí)進(jìn)行修正處理。仿真實(shí)驗(yàn)表明,通過該算法進(jìn)行處理后,曲線的曲率更均勻了,曲線也更光順了。
[1] Kjellander J A P.Smooting of cubic parametric spline[J].CAD,1983,15(3):175- 179.
[2] Farin G,Rein G,Sapidis N,et al.Fairing of cubic B-spline curves[J].CAGD,1987,12(4):91~103.
[3] Poliakoff JF.An improved algorithm for automatic fairing of nonuniform parametric cubic splines[J].Computer- Aided Design,1996,28(1):59-66.
[4] 龍小平.局部能量最優(yōu)法與曲線曲面的光順[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2002,14(12):1109-1113.
[5] 王遠(yuǎn)軍,沈燕南.五次參數(shù)樣條曲線的能量最優(yōu)光順?biāo)惴ǎ跜]//第二屆全國(guó)幾何設(shè)計(jì)與計(jì)算學(xué)術(shù)會(huì)議論文集.合肥:中國(guó)科學(xué)技術(shù)大學(xué)出版社,2005:203-206.
[6] 穆國(guó)旺,宋秀琴,臧婷.一種選點(diǎn)法和能量法相結(jié)合的曲線光順方法[J].工程圖學(xué)學(xué)報(bào),2005,22(6):118-121.
[7] 羅青.數(shù)控代碼光順處理方法研究[D].廣州:廣東工業(yè)大學(xué),2007.
[8] 鄭興國(guó),朱婉婕,夏成林,等.帶形狀參數(shù)控制的三次B樣條曲線曲面的光順[J].大學(xué)數(shù)學(xué),2012,28(4):87-91.
[9] 章虎冬.一種參數(shù)三次樣條曲線光順優(yōu)化算法[J].工程圖學(xué)學(xué)報(bào),2011,17(3):41 -44.
[10]羅衛(wèi)蘭,楊勛年,鄭建民.B樣條曲線的約束光順?biāo)惴ǎ跩].浙江大學(xué)學(xué)報(bào),2004,31(1):51 -57.