數控高級編程講義
行切和環切
在數控加工中,行切和環切是典型的兩種走刀路線。
行切在手工編程時多用於規則矩形平面、台階面和矩形下陷加工,對非矩形區域的行切一般用自動編程實現。
環切主要用於輪廓的半精、精加工及粗加工,用於粗加工時,其效率比行切低,但可方便的用刀補功能實現。
1.1環切
環切加工是利用已有精加工刀補程序,通過修改刀具半徑補償值的方式,控制刀具從內向外或從外向內,一層一層去除工件余量,直至完成零件加工。
編寫環切加工程序,需解決三個問題:
環切刀具半徑補償值的計算;
環切刀補程序工步起點(下刀點)的確定;
如何在程序中修改刀具半徑補償值。
1.1.1環切刀具半徑補償值的計算
確定環切刀具半徑補償值可按如下步驟進行:
1、確定刀具直徑、走刀步距和精加工余量;
Advertisements
2、確定半精加工和精加工刀補值;
3、確定環切第一刀的刀具中心相對零件輪廓的位置(第一刀刀補值);
4、根據步距確定中間各刀刀補值。
示例:用環切方案加工圖1-1零件內槽,環切路線為從內向外。
環切刀補值確定過程如下:
1、根據內槽圓角半徑R6,選取φ12鍵槽銑刀,精加工余量為0.5mm,走刀步距取10mm。
2、由刀具半徑6,可知精加工和半精加工的刀補半徑分別為6和6.5mm;
3、如圖所示,為保證第一刀的左右兩條軌跡按步距要求重疊,則兩軌跡間距離等於步距,則該刀刀補值=30-10/2=25mm。
4、根據步距確定中間各刀刀補值,
第二刀刀補值=25-10=15mm
第三刀刀補值=15-10=5,該值小於半精加工刀補值,說明此刀不需要。
Advertisements
由上述過程,可知,環切共需4刀,刀補值分別為25、15、6.5、6mm。
1.1.2環切刀補程序工步起點(下刀點)的確定
對於封閉輪廓的刀補加工程序來說,一般選擇輪廓上凸出的角作為切削起點,對內輪廓,如沒有這樣的點,也可以選取圓弧與直線的相切點,以避免在輪廓上留下接刀痕。在確定切削起點后,再在該點附近確定一個合適的點,來完成刀補的建立與撤消,這個專用於刀補建立與撤消的點就是刀補程序的工步起點,一般情況下也是刀補程序的下刀點。
一般而言,當選擇輪廓上凸出的角作為切削起點時,刀補程序的下刀點應在該角的角平分線上(45°方向),當選取圓弧與直線的相切點或某水平/垂直直線上的點作為切削起點時,刀補程序的下刀點與切削起點的連線應與直線部分垂直。在一般的刀補程序中,為縮短空刀距離,下刀點與切削起點的距離比刀具半徑略大一點,下刀時刀具與工件不發生干涉即可。但在環切刀補程序中,下刀點與切削起點的距離應大於在上一步驟中確定的最大刀具半徑補償值,以避免產生刀具干涉報警。如對圖1-1零件,取R30圓弧圓心為編程零點,取R30圓弧右側端點作為切削起點,如刀補程序僅用於精加工,下刀點取在(22,0)即可,該點至切削起點距離=8mm。但在環切時,由於前兩刀的刀具半徑補償值大於8mm,建立刀補時,刀具實際運動方向是向左,而程序中指定的運動方向是向右,撤消刀補時與此類似,此時數控系統就會產生刀具干涉報警。因此合理的下刀點應在編程零點(0,0)。
1.1.3在程序中修改刀具半徑補償值
在程序中修改刀具半徑補償值可採用如下方法
1、在刀補表中設好環切每一刀的刀具半徑補償值,然後在刀補程序中修改刀具補償號。
示例1.1 直接在G41/G42程序段修改刀具補償號
示例1.2 用宏變數表示刀具補償號,利用循環修改刀具補償號
主程序
%1000
G54 G90 G0 G17 G40;
Z50 M03 S1000;
X0 Y0;
Z5 M08;
G1 Z-10 F60;
G41 X30 D1 F100;
M98 P0010;
G41 X30 D2 F100;
M98 P0010;
G41 X30 D3 F100;
M98 P0010;
G41 X30 D4 F100;
M98 P0010;
M05 M09;
G0 Z50;
M30;
子程序
%0010
G90 G1 Y60;
X-30;
Y0;
G3 X30 R30;
G0 G40 X0;
M99;
補償號 | 刀具補償半徑 |
1 | 25 |
2 | 15 |
3 | 6.5 |
4 | 6 |
示例1.2 用宏變數表示刀具補償號,利用循環修改刀具補償號
%100
G54 G90 G0 G17 G40;
Z50 M03 S1000;
X0 Y0;
Z5 M08;
G1 Z-10 F60;
#1=1; 刀補號變數
WHILE #1 LE 4 DO1;
G41 X30 D#1 F100;
Y60;
X-30;
Y0;
G3 X30 R30;
G0 G40 X0;
#1=#1+1;
End1;
Z50;
M30;
2、使用G10修改刀具補償半徑
示例1.3,使用G10和子程序完成環切
主程序
%100
G54 G90 G0 G17 G40;
Z50 M03 S1000;
X0 Y0;
Z5 M08;
G1 Z-10 F60;
G10 L10 P1 R25;
M98 P0010;
G10 L10 P1 R15;
M98 P0010;
G10 L10 P1 R6.5;
M98 P0010;
G10 L10 P1 R6;
M98 P0010;
M05 M09;
G0 Z50;
M30;
子程序
%0010
G90 G41 X30 D1 F100;
Y60;
X-30;
Y0;
G3 X30 R30;
G0 G40 X0;
M99;
示例1.4 使用G10和循環完成環切
%1000
G54 G90 G0 G17 G40;
Z50 M03 S1000;
X0 Y0;
Z5 M08;
G1 Z-10 F60;
#10=25 ;粗加工起始刀補值
#11=10 ;步距
#12=6 ;精加工刀補值
#1=2 ;粗、精加工控制
WHILE [#1 GE 1] DO1;
WHILE #10 GE #12 DO2;
G10 L10 P1 R#10;
G41 X30 D1 F100;
Y60;
X-30;
Y0;
G3 X30 R30;
G0 G40 X0;
#10=#10-#11;
END2;
#10=#12+0.5 ;半精加工刀補值
#11=0.5;
#1=#1-1;
END1;
Z50;
M30;
3、直接用宏變數對刀補值賦值
示例1.5 直接用宏變數對刀補值賦值,利用循環完成環切。
%1000
G54 G90 G0 G17 G40;
Z50 M03 S1000;
X0 Y0;
Z5 M08;
G1 Z-10 F60;
#10=25 ;粗加工起始刀補值
#11=9.25 ;步距
#12=6 ;精加工刀補值
#1=2 ;粗、精加工控制
WHILE[ #1 GE 1] DO1;
WHILE[ #10 GE #12] DO2;
G41 X30 D[#10] F100;
Y60;
X-30;
Y0;
G3 X30 R30;
G0 G40 X0;
#10=#10-#11;
END2;
#10=#12 ;半精加工刀補值
#1=#1-1;
END1;
Z50;
M30;
說明:在G41 X30 d#10中,#10表示刀具補償號,而在G41 X30 d[#10]中,#10表示刀具半徑補償值,此用法在FANUC說明書中沒有,但實際使用的結果確實如此,如所用系統不支持此用法,就只用示例1.4用法。
1.1.4 環切宏程序
當使用刀具半徑補償來完成環切時,不管我們採用何種方式修改刀具半徑補償值,由於受刀補建、撤的限制,它們都存在走刀路線不夠簡潔,空刀距離較長的問題。對於象圖1-1所示的輪廓,其刀具中心軌跡很好計算,此時如用宏程序直接計算中心軌跡路線,則可簡化走刀路線,縮短空刀距離。
示例1.6 完全使用宏程序的環切加工
如圖1-2所示,用#1、#2表示輪廓左右和上邊界尺寸,編程零點在R30圓心,加工起始點放在輪廓右上角(可削除接刀痕)
%1000
G54 G90 G0 G17 G40;
Z50 M03 S100;
#4=30 ;左右邊界
#5=60 ;上邊界
#10=25 ;粗加工刀具中心相對輪廓偏移量(相當於刀補程序中的刀補值)
#11=9.25 ;步距
#12=6 ;精加工刀具中心相對輪廓偏移量(刀具真實半徑)
G0 X[#4-#10-2] Y[#5-#10-2];
Z5;
G1 Z-10 F60;
#20=2 ;
WHILE [#20 GE 2] DO1;
WHILE [#10 GE #12] DO2;
#1=#4-#10 ;左右實際邊界
#2=#5-#10 ;上邊實際邊界
G1 X[#1-2] Y[#2-2] F200;
G3 X#1 Y#2 R2;圓弧切入到切削起點
G1 X[-#1];
Y0;
G3 X#1 R#1;
G1 Y#2;
G3 X[#1-2] Y[#2-2] R2
#10=#10-#11
END2
#10=#12
#20=#20-1
END1
G0 Z50
M30
1.2 行切
一般來說,行切主要用於粗加工,在手工編程時多用於規則矩形平面、台階面和矩形下陷加工,對非矩形區域的行切一般用自動編程實現。
1.2.1 矩形區域的行切計算
1、矩形平面的行切區域計算
如圖所示,矩形平面一般採用圖示直刀路線加工,在主切削方向,刀具中心需切削至零件輪廓邊,在進刀方向,在起始和終止位置,刀具邊沿需伸出工件一距離,以避免欠切。
假定工件尺寸如圖所示,採用Φ60面銑刀加工,步距50mm,上、下邊界刀具各伸出10mm。則行切區域尺寸為800×560(600+10*2-60)。
2、矩形下陷的行切區域計算
對矩形下陷而言,由於行切只用於去除中間部分余量,下陷的輪廓是採用環切獲得的,因此其行切區域為半精加工形成的矩形區域,計算方法與矩形平面類似。
假定下陷尺寸100*80,由圓角R6選Φ12銑刀,精加工余量0.5mm,步距10mm,則半精加工形成的矩形為(100-12*2- 0.5*2)*(80-12*2-0.5*2)=75*55。如行切上、下邊界刀具各伸出1mm,則實際切削區域尺寸=75*(55+2-12)=75*45。
1.2.2行切的子程序實現
對於行切走刀路線而言,每來回切削一次,其切削動作形成一種重複,如果將來回切削一次做成增量子程序,則利用子程序的重複可完成行切加工。
1、切削次數與子程序重複次數計算
進刀次數n=總進刀距離/步距=47/10=4.5,實際需切削6刀,進刀5次。
子程序重複次數m=n/2=5/2=2,剩餘一刀進行補刀。
步距的調整:步距=總進刀距離/切削次數。
說明:
當實際切削次數約為偶數刀時,應對步距進行調整,以方便程序編寫;
當實際切削次數約為奇數刀時,可加1成偶數刀,再對步距進行調整,或直接將剩下的一刀放在行切后的補刀中,此時不需調整步距。
由於行切最後一刀總是進刀動作,故行切后一般需補刀。
2、示例1.7
對圖1-4零件,編程零點設在工件中央,下刀點選在左下角點,加工程序如下:
主程序
%1000
G54 G90 G0 G17 G40;
Z50 M03 S800;
G0 X-43.5 Y-33.5; 定位到下刀點
Z5;
G1 Z-10 F100;
M98 P0010; 環切加工,該程序省略
G1 X-37.5 Y-22.5; 行切起點
M98 P0020 L2; 行切加工
G1 X37.5; 補刀
Y22.5
X-37.5
G0 Z50;
M30;
子程序
%0020
G91 G1 X75 F150;
Y10;
X-75;
Y10.;
G90 M99;
1.2.3 行切宏程序實現
對圖1-4零件,編程零點設在工件中央,下刀點選在左下角點,加工宏程序如下:
示例1.8(本程序未考慮分層下刀問題)
主程序
%1000
G54 G90 G0 G17 G40
Z50 M03 S800
G65 P9010 A100 B80 C0 D6 Q0.5 K10 X0 Y0 Z-10 F150
G0 Z50
M30
l宏程序調用參數說明:
A(#1)B(#2)-------矩形下陷的長與寬
C(#3)------ -------粗精加工標誌,C=0,完成粗精加工,C=1,只完成精加工。
D(#7)--------------刀具半徑
Q(#17)------------精加工余量
K(#6)--------------步距
X(#24)Y(#25)----下陷中心坐標
Z(#26)-------------下陷深度
F(#9)--------------走刀速度
宏程序
%9010
#4=#1/2-#7; 精加工矩形半長
#5=#2/2-#7; 精加工矩形半寬
#8=1; 環切次數
IF [#3 EQ 1] GOTO 100;
#4=#4-#17; 半精加工矩形半長
#5=#5-#17; 半精加工矩形半寬
#8=2;
N100 G90 G0 X[#24-#4] Y[#25-#5];
Z5;
G1 Z#26 F#9;
WHILE [#8 GE 1] DO1;
G1 X[#24-#4] Y[#25-#5];
X[#24+#4];
Y[#25+#5];
X[#24-#4];
Y[#25-#5];
#4=#4+#17;
#5=#5+#17;
#8=#8-1;
END1;
IF [#3 EQ 1] GOTO 200;只走精加工,程序結束
#4=#1/2-2*[#7+#17]; 行切左右極限X
#5=#/2-3*#7-2*#17+4; 行切上下極限Y
#8=-#5; 進刀起始位置
G1 X[#24-#4] Y[#25+#8];
WHILE [#8 LT #5 DO1];準備進刀的位置不到上極限時加工
G1 Y[#25+#8]; 進刀
X[#24+#4]; 切削
#8=#8+#6; 準備下一次進刀位置
#4=-#4; 準備下一刀終點X
END1;
G1 Y[#25+#5]; 進刀至上極限,準備補刀
X[#24+#4]; 補刀
G0 Z5;
N200 M99
更多精彩請微信關注 zgsklm