蔡安江,龐飛彪,吳雋楠
(西安建筑科技大學機電工程學院,陜西 西安 710055)
復雜曲線的加工一般采用生成大量微小直線段來逼近加工曲線的方法,然而微小直線段拐角處只有位置連續,速度方向變化不連續,機床需頻繁的加減速,易引起機床震動,降低加工精度和加工效率[1]。如何生成光滑的刀具路徑是提高復雜曲線加工精度的關鍵。
近年來,學術界在刀具路徑平滑技術上做了大量的研究。文獻[2]針對工業機器人連續路徑軌跡的穩定性及軌跡規劃精度問題,采用三次Bezier三角樣條曲線完成指定的工業機器人連續路徑的軌跡規劃,能得到平滑連續的速度和加速度曲線。文獻[3]提出了一種不對稱過渡輪廓角軌跡平滑方法(AT-CTS),具有較高的重現性和生成的不對稱角,各運動軸的運動極限和動態特性不同時,利用驅動器的性能來獲得周期較短的軌跡;文獻[4]根據樣條曲線擬合算法不能滿足精度要求,曲線插值算法不易于實時局部修改的缺點,提出一種改進B樣條曲線擬合算法。文獻[5]提出了一種基于公差帶的G2連續Bezier曲線刀具軌跡平滑算法,并建立公差帶,對不滿足輪廓誤差要求的二次有理Bezier曲線進行重構,生成一個滿足加工精度的全局G2 連續的加工路徑。文獻[6]對微線段轉角在滿足加工精度的條件下采用圓弧過度,此方法優勢在于機床只需要進行直線插補和圓弧插補,但圓弧轉接的方式不能使曲線的曲率連續,無法達到G2連續。
針對復雜曲線的高精度加工問題,采用基于公差帶的刀位點調整策略,達到降低逼近誤差的效果,對調整后的刀位點進行5次B樣條曲線轉接,實現刀具路C3連續,提高加工精度。
復雜曲線的加工通常以連續的微小線段逼近設計曲線來達到加工精度要求,這樣就不可避免的產生逼近誤差。對于設計曲線為長直線段時,刀位點不需要處理;對連續微小直線段的加工區域應先識別,并進行刀位點調整。
連續微小直線段加工區域的識別,先識別出長直線段加工區域,非長直線段區域即為微小直線段加工區域;再識別出破壞微小直線段連續性的尖點以及影響刀位點調整策略的拐點。將長直線端點、尖點與拐點作為連續微小直線段加工區域分段點。
設定長度閾值,將復雜曲線的最小的直線段作為長度閾值Lmin,相鄰刀位點之間的距離大于等于設置的長度閾值時,設定為可以直接進行直線插補區域;相鄰刀位點之間的距離小于設置的長度閾值時采用微小直線段進行逼近。

圖1 刀具路徑存在尖點Fig.1 Sharp Points in Tool Path
曲線在拐點的前后曲線彎曲方向發生變化,為此設定拐點處的刀位點作為連續微小直線段區域的分段點,拐點的判別方法為:若ρa*ρb>0且ρb*ρc>0,則b點為拐點[8]。
轉接樣條曲線刀具路徑轉接處曲率的連續性可以提高復雜曲線的加工精度,采用B樣條曲線進行拐角過渡,B樣條曲線由基函數Ni,k(u)、n+1 個控制定點Pi=(Xi,Yi)以及樣條曲線次數(k-1)共同定義了插在兩個刀具軌跡段之間的微樣條曲線,表達式如下[9]:

基函數Ni,k(u)是幾何參數u和節點向量U=[u0,u1,…,un+k]的函數,表達式如下:

為滿足采用樣條曲線過渡后生成的刀具路徑達到C3連續,因此通過調整5次B樣條曲線的7個控制點位置,使5次B樣條曲線與直線段過渡點的P0、P6曲率為0,實現曲率連續。
采用樣條曲線轉接形成的轉接誤差為拐角處刀位點P3與樣條曲線肩點的距離ε2。5次B樣條的7個控制頂點的方法設定,如圖2所示。前3個與后3個控制頂點分別置于轉接的兩段直線段中,第4個控制頂點置于拐角處的刀位點,為確保B樣條曲線的對稱性,將節點矢量定義為:

圖2 5次樣條曲線過渡轉接誤差Fig.2 Transition Transition Error of 5th Spline Curve

通過B樣條曲線次數與節點矢量,可將控制頂點定位后就可建立樣條曲線函數。
根據尖點識別條件,刀位點c點為尖點,曲線A上的刀位點a、b、c調整為a’、b’、c1’;曲線B上的刀位點c、d、e調整為c2’、d’、e’;由于c點處的曲率不連續,導致c1’與c2’不重合,出現調整錯誤,所以尖點處刀位點不作調整,如圖3所示。根據拐點識別條件,拐點d前后曲線凹凸性不同導致d點調整后d1’點與d2’點不重合,出現調整錯誤,所以拐點處刀位點不作調整,如圖4所示。所以基于公差帶約束的刀位點調整區域為:以長直線刀位點、尖點以及拐點作為分段點的微小直線段加工區域,即為連續微小直線段加工區域。

圖3 含尖點的微小直線段Fig.3 Tiny Straight Line Segment with Sharp Points

圖4 含拐點的微小直線段Fig.4 Tiny Straight Line Segment with Inflection Points
為使刀位點逼近誤差減小,則對連續微小直線段區域內部刀位點采用基于公差帶約束的調整方法。設定:上偏差與下偏差為εmax,εmax為最大加工誤差,逼近誤差為ε1。已知ε1<εmax。
媽,你都退休了,怎么又喜歡大紅大綠的衣服了?看見母親身上花得夸張的衣服,蘇楠突然想到了楊小水,盡管她們年齡相當,但楊小水決不會穿這樣的衣服。
曲線C(u)采用連續微小直線段轉接,A、B、C為生成的刀位點,ε1為微小直線段逼近誤差,ε2為5次B樣條曲線轉接誤差,εmax為機床最大加工誤差,如圖5(a)所示。
基于公差帶約束的調整方法為:將誤差敏感方向作為刀位點調整方向,由于在曲率連續變化的曲線中,相鄰微小直線段近似相等,因此將拐角B的角平分線作為刀位點B處的誤差敏感方向。以轉接誤差ε2為調整距離,將刀位點A、B、C的位置調整為A’、B’、C’,如圖5(b)所示。調整后的逼近誤差為ε1’:

圖5 刀位點調整Fig.5 Knife Position Adjustment

由此可知,基于公差帶約束的刀位點調整方法可以使連續微小直線段的逼近誤差大大降低。
采用5次B樣條曲線進行過渡轉接,為了實現接合點P0(u=0)和P6(u=1)的加速度和加加速度連續性,首先需要保證過渡樣條曲線與拐角直線段相接點(P0點、P6點)的C3連續性,條件為樣條曲線P相對于刀具路徑長度S的二階導數、三階導數皆為0。

根據文獻方法[10]得P1=2P2=P3,P0=(5P2-P3)∕2;同理當u=1,P5=2P4=P3,P6=(5P4-P3)∕2,定義P2P3=L,則P0P3=2.5L、P1P2=2L。由5 次B樣條曲線的對稱性可得P3P4=L、P3P6=2.5L、P3P5=2L,上述論證可知,確定了P2P3段長度L確定,則可確定過渡曲線控制點,從而確定了轉接樣條曲線。在刀位點不進行調整的傳統拐角過渡算法中計算L的約束條件為:定義的最大過渡誤差約束ε2max以及拐角兩端直線段長度約束。

由于最大位置誤差應小于用戶定義的位置誤差約束,即:

還受到拐角兩端微小直線段長度L1L2約束。

采用的基于公差帶調整的B樣條曲線拐角過渡算法將確定P2P3段長度L的情況分為兩類:第一類是拐角刀位點調整的連續微小直線段區域,相鄰微小直線段之間的過渡轉接;第二類是拐角刀位點不進行調整的非連續微小直線段區域內直線段過渡轉接,包括長直線段之間的過渡轉接、長直線段與連續微小直線段區域之間的過渡以及相鄰連續微小直線段區域之間的過渡(拐點及尖點)。
第一類過渡轉接是連續微小直線段區域內的過渡轉接,此類型過渡轉接前將刀位點沿敏感方向進行調整,調整的大小為過渡誤差ε2,即為樣條曲線中點P(0.5)與樣條曲線的控制定點P3之間的距離,所以基于公差帶的刀位點調整會預先補償由采用樣條曲線過渡帶來的轉接誤差,在確定L時不需考慮設定的位置誤差ε2max,只與相鄰微小直線段的長度相關,即L=min(L1∕5,L2∕5)。
調整后的刀位點信息為AB≈A′B′、BC≈B′C′、∠B≈∠B′調整后的刀位點A′B′C′處采用5次B樣條過渡后樣條曲線的中點P(0.5)與刀位點A、B、C基本重合,調整前最大誤差為采用微小直線段逼近的逼近誤差ε1,調整后的最大誤差為逼近誤差減去刀位點調整距離在逼近誤差方向上的分量即為ε1-ε2*cos(α∕2),大大降低了逼近誤差。
第二類是非連續微小直線段區域內的過渡轉接,包括長直線段之間的過渡轉接、長直線段與連續微小直線段區域之間的過渡以及相鄰連續微小直線段區域之間的過渡(拐點及尖點)。此類過渡轉接中拐角的刀位點沒有調整。存在于長直線段之間的過渡轉接時,過渡樣條曲線控制點定位,只需要考慮轉誤差是否滿足要求,即L≤4ε2max∕3cos(α∕2);存在于長直線段與連續微小直線段區域之間的過渡轉接,過渡樣條曲線控制定點定位時需要考慮轉接誤差約束以及微小直線段端的長度約束,即L≤min(4ε2max∕3cos(α∕2),L2∕5);存在于相鄰連續微小直線段區域之間尖點及拐點的過渡轉接,過渡樣條曲線控制定點定位時需要考慮轉接誤差約束及過渡曲線兩端微小直線段的長度約束,即L≤min(4ε2max∕3cos(α∕2),L1∕5,L2∕5)。算法流程,如圖6所示。

圖6 算法流程圖Fig.6 Algorithm Flowchart
仿真驗證采用的復雜曲線,如圖7所示。CATIA軟件設置加工精度為0.02mm,生成由288個刀位點,即生成287段微小直線段以逼近原加工曲線。將288個刀位點信息輸入到VERICTU軟件中完成實驗輪廓曲線的加工。

圖7 仿真輪廓曲線Fig.7 Simulation Contour Curve
微小直線插補刀位點的誤差分布圖,如圖8(a)所示。使用MATLAB 軟件對CATIA 軟件生成的刀位點進行基于公差帶約束,進行刀位點調整處理,將處理后的288 個刀位點信息輸入VERICUT進行仿真加工。處理方法如下:計算處本次實驗復雜曲線存在4個拐點,分別是X=-97.878、Z=-37.764,X=85.433、Z=-18.322,X=96.997、Z=22.535,X=-96.582、Z=34.677,可將曲線分為四段進行處理,根據2.1中的方法對刀位點進行分類,仿真實驗輪廓屬于第一類過渡轉接。對于第一類過渡轉接,刀位點調整距離計算,其中,L=min(L1∕5,L2∕5)。使用算法后加工路徑的誤差分布,如圖8(b)所示。

圖8 誤差分布Fig.8 Error Distribution
未使用算法最大誤差為0.02021mm,平均誤差為0.01191mm,使用算法最大誤差為0.01417mm,平均誤差為0.00834mm。對比結果表明該算法可使刀具路徑誤差減小,能有效提高復雜曲線加工精度。
(1)提出的基于公差帶約束的連續微小直線段刀位點調整方法及采用C3連續的5次B樣條曲線刀具路徑拐角過渡算法,實現了刀具路徑的平滑轉接,有效提高了復雜曲線的加工精度。
(2)提出了基于公差帶約束的刀位點調整方法。根據轉接誤差將刀位點在誤差敏感方向上進行調整,得到的刀位點比調整前的刀位點逼近誤差更小,有利于實現高精度加工。
(3)將拐角過渡轉接方式分為拐角刀位點調整的第一類轉接與拐角刀位點不進行調整的第二類轉接,對兩類過渡轉接方式采用不同約束條件,簡化了過渡轉接曲線的求解,提高了曲線求解效率。