樣條曲線在CAD/CAM領域已得到廣泛應用,但作為CAD/CAM信息的*終執行者,數控系統對它的支持卻顯得不夠有力:這里試圖在不增加系統硬件成本的前提下,通過研究樣條曲線的刀具半徑補償算法,在通用數控系統中引入樣條曲線模型,以提升國產數控系統的性價比。
2樣條曲線的刀具半徑補償算法2.1樣條曲線的表示方法及其編程格式樣條曲線一般由平面上給定的n(n≥3)個型值點(X j,Y j),j=1,2,…,n表示。在數控系統中引入樣條曲線模型,首先要定義其編程格式。
由于ISO未對樣條曲線的編程作規定,為此可選用ISO未指定的G05作為其編程指令,并納入G00/G01/G02/G03指令組。具體編程格式如下:2.2引入樣條曲線后刀具半徑補償的處理任務傳統數控系統由于只有直線、圓弧模型,因而編程軌跡程序段間的過渡方式只有直線接直線、直線接圓弧、圓弧接直線、圓弧接圓弧
四種情況。引入樣條曲線模型后,程序段間的過渡方式將增加直線接樣條曲線、樣條曲線接直線、圓弧接樣條曲線、樣條曲線接圓弧及樣條曲線接樣條曲線五種,因而刀具半徑補償的處理任務相應的應增加這些過渡方式的處理。除了上述刀補進行過程的處理外,刀具半徑補償處理所包括的刀補建立和刀補撤消兩步也需作相應的改進。
2.3引入樣條曲線后刀具半徑補償算法直線接直線、直線接圓弧、圓弧接直線、圓弧接圓弧四種情況的刀具半徑補償算法已相當成熟,文獻有詳盡描述,只研究其他過渡方式的刀具半徑補償算法。
對于每種過渡方式,根據兩個要進行刀補的編程軌跡在轉接處工件內側(非加工側)所形成的角度α的不同,有縮短型(π≤α<2π)、伸長型(π/2≤α<π)和插入型(0≤α<π/2)三種刀補轉接類型。
對于插入型刀補,可以插入一個圓弧段,插入圓弧的半徑為刀具半徑;也可以插入若干個直線段。前者使轉接路徑*短,但尖角加工的工藝性比較差;后者能保證尖角加工的工藝性問題,本文以插入直線段為例說明。
2.3.1直線接樣條曲線或樣條曲線接直線(1)縮短型及伸長型刀補如所示。設編程軌跡為直線L 1(P 0 P 1)、樣條曲線S(P 1,P 2,…,P n-1,P n)和L 2(P n P n+1),刀具半徑為r,則L 1與S之間是縮短型刀補,L 2與S之間是伸長型刀補。
刀具半徑補償軌跡可按下述步驟獲得:按直線接直線的刀補處理方法,以刀具半徑r為間距,求得直線段P 0 P 1、P 1 P 2、P 2 P 3…、P n-1 P n、P n P n+1的等距線P 0'P 1'、P 1'P 2'、P 2'P 3'…、P n-1'P n'、P n'P n+1';在樣條曲線起點和終點外的所有轉接矢量(從編程軌跡交點指向刀具中心軌跡交點的矢量)P i P i'(i=2,3,…n-1)上,截取長度為r的線段P i P i',得到點P i'(i=2,3,n-1);以離散點P 1'、P i'(i=2,3,…n-1)、P n'為型值點構建編程樣條曲線的刀具半徑補償軌跡S'。
求得了S'后,數控系統就可按文獻提供的方法對刀補軌跡進行插補計算了。(2)插入型刀補如所示。編程直線軌跡L 2(P n P n+1)與樣條曲線之間是插入型刀補,其刀具半徑補償軌跡的計算過程如下:按直線接直線插入型刀補的處理方法,以刀具半徑r為間距,求直線段P n-1 P n、P n P n+1的等距線P n-1'P n'、A 3 P n+1',如過P n點作P n-1 P n、P n P n+1的垂線分別交P n-1'P n'、A 3 P n+1'于P n'和A 3點;在P n-1'P n'的延長線上取P n'A 1=r,在P n+1'A 3的延長線上取A 3 A 2=r,連接A 1 A 2;?在樣條曲線起點和終點外的所有轉接矢量P i P i'(i=2,3,…n-1)上,截取長度為r的線段P i P i',得到點P i'(i=2,3,…n-1);以離散點P 1'、P i'(i=2,3,…n-1)、P n'為型值點構建編程樣條曲線的刀具半徑補償軌跡S';P n'A 1、A 1 A 2為插入刀補軌跡段,A 2 P n+1'為編程直線軌跡P n P n+1的刀補軌跡段。
2.3.2圓弧接樣條曲線或樣條曲線接圓弧(1)縮短型及伸長型刀補如,設編程軌跡為圓弧C 1(P 0 P 1)、樣條曲線S(P 1,P 2,…,P n-1,P n)和C 2(P n P n+1),刀具半徑為r,則C 1與S之間是縮短型刀補,C 2與S之間是伸長型刀補。
刀具半徑補償軌跡可按下述步驟獲得:按直線接圓弧的刀補處理方法,以r為間距,求得圓弧段P 0 P 1、P n P n+1的同心圓P 0'P 1'、P n'P n+1'和直線段P 1 P 2、P 2 P 3…、P n-1 P n的等距線P 1'P 2'、P 2'P 3'…、P n-1'P n',如在樣條曲線起點和終點外的所有轉接矢量P i P i'(i=2,3,…n-1)上,截取長度為r的線段P i P i',得到點P i'(i=2,3,…n-1);?以離散點P 1'、P i'(i=2,3,…n-1)、P n'為型值點構建樣條曲線的刀具半徑補償軌跡S'。
(2)插入型刀補圓弧接樣條曲線的插入型刀補,與直線接樣條曲線的插入型刀補類似。假設所示,編程軌跡P n P n+1圓弧,則其刀具半徑補償軌跡的計算過程如下:以r為間距,求直線段P n-1 P n的等距線P n-1'P n'及圓弧段P n P n+1的同心圓P n'P n+1';過P n作P n-1 P n的垂線交P n-1'P n'于P n',過P n作P n P n+1的徑向直線交P n'P n+1'于P n';?在P n-1'P n'的延長線上取P n'A 1=r,在P n+1'P n'的切線上取P n'A 2=r,連接A 1 A 2,則P n'A 1、A 1 A 2、A 2 P n'為插入的刀補軌跡段,P n'P n+1'為圓弧刀補軌跡段;樣條曲線的刀補軌跡同直線接樣條曲線的插入型刀補。
2.3.3樣條曲線接樣條曲線如圖5,設編程軌跡為樣條曲線S 1(P 0,P 1,…P m-1,P m)和S 2(P m,P m+1,…P n-1,P n),刀具半徑為r,則S 1與S 2之間的刀補,可以轉化為直線段P m-1 P m和P m P m+1之間的刀補。只不過這時的轉接類型一般為插入型及縮短型(若為伸長型,一般會將兩樣條曲線合并)。
縮短型(伸長型)刀補計算過程:?以r為間距,求得直線段P 0 P 1、P 1 P 2、…P m-1 P m、P m P m+1…、P n-1 P n、P n P n+1的等距線P 0'P 1'、P 1'P 2'、…、P m-1'P m'、P m'P m+1'…P n-1'P n'、P n'P n+1';在樣條曲線起點和終點外的所有轉接矢量P i P i'(i=2,3,m-1,m+1…n-1)上,截取長度為r的線段P i P i',得到點P i'(i=2,3,m-1,m+1…n-1);以離散點P 1'、P i'(i=2,3,…n-1)、P n'為型值點構建編程樣條曲線的刀具半徑補償軌跡S'。
樣條曲線接樣條曲線插入型刀補的計算過程:以r為間距,求直線段P m-1 P m及P m P m+1的等距線P m-1'P m'及P m'P m+1';過P m作P m-1 P m和P m P m+1的垂線分別交P m-1'P m'和于P m'和P m';在P m-1'P m'的延長線上取P m'A 1=r,在P m+1'P m'的延長線上取P m'A 2=r,連接A 1 A 2,則P m'A 1、A 1 A 2、A 2 P m'為插入的刀補軌跡段;后續過程同直線接樣條曲線的插入型刀補。
2.4引入樣條曲線后刀具半徑補償建立與撤消由于數控系統中刀具半徑補償建立與撤消程序段只能用G00或G01,引入樣條曲線后刀補建立與撤消的處理與傳統數控()系統基本相同,這里僅考慮刀補建立段后緊跟樣條曲線及樣條曲線后緊跟刀補撤消段的情況。
刀補建立可分為以下兩種情況:當刀補建立段與樣條曲線是非縮短型方式時,刀具中心將移至刀補建立段終點的刀具矢量半徑頂點。當刀補建立段與樣條曲線是縮短方式時,刀具中心將移至樣條曲線起點的刀具矢量半徑頂點。
刀補撤消是刀補建立的逆過程,同樣也分兩種情況:如果樣條曲線與刀補撤消段是非縮短型轉接方式,刀具中心將自刀補撤消段起點處刀具半徑矢量的頂點移至編程軌跡終點。如果樣條曲線與刀補撤消段是縮短型轉接方式,刀具中心將直接移到樣條曲線終點處刀具半徑矢量頂點,再移至刀補撤消段終點。
2.5算法分析上述樣條曲線的刀具半徑補償算法,不是編程樣條曲線精確的等距線,但是它能確保各型值點的位置精度。由于樣條曲線本身就是通過型值點擬合的近似曲線,這種處理對*終的輪廓加工精度影響很小,特別是如果給定的型值點足夠多的話。
該算法充分利用傳統數控系統已有的成熟算法,計算工作量小,可確保系統的實時性。因而本文給出的算法具有很好的實用性。
3結論本文研究了在不增加硬件成本的前提下,在通用數控系統中引入樣條曲線模型后,刀具半徑補償的實用算法,實驗表明該算法實時性好,精度滿足要求。該研究在數控系統及樣條曲線插補算法之間架起了橋梁,使得樣條曲線插補算法方面積累的大量研究成果能方便地走向實用。