簡(jiǎn)化編程指令
3.4.1 子程序編程指令
為了簡(jiǎn)化編程,當(dāng)一組程序段在一個(gè)程序中多次出現(xiàn),或者在幾個(gè)程序中都要使用時(shí),可將這組程序段編寫為單獨(dú)的程序,并通過程序調(diào)用的形式來(lái)執(zhí)行,這樣的程序稱為子程序。
子程序具有以下幾個(gè)特點(diǎn)。
(1) 子程序可以被任何主程序或其他子程序所調(diào)用,并且可以多次循環(huán)執(zhí)行。
圖3-55 子程序的嵌套
(2) 被主程序調(diào)用的子程序,還可以調(diào)用其他的子程序,稱為子程序的嵌套,如圖3-55所示。
(3) 子程序執(zhí)行結(jié)束后,能自動(dòng)返回到調(diào)用的程序中。
(4) 子程序一般都不可以作為獨(dú)立加工程序使用,它只能通過調(diào)用來(lái)實(shí)現(xiàn)加工功能。
(5) 在數(shù)控銑床上,當(dāng)一次裝夾多個(gè)相同零件或一個(gè)零件有多個(gè)相同的加工內(nèi)容時(shí),可使用子程序。
1. 子程序的格式
子程序的形式和組成與主程序大體相同,也是由子程序名、子程序體和子程序結(jié)束指令組成。例如:
O××××; (子程序名,命名規(guī)則與主程序名相同)
……; (子程序體,編程指令和格式與主程序相同)
M99; (子程序結(jié)束)
程序結(jié)束字M99表示子程序結(jié)束,并返回到調(diào)用子程序的主程序中。
2. 子程序的調(diào)用格式
調(diào)用格式:M98 _ _ _ ××××
M98是主程序調(diào)用子程序的指令,指令中,_ _ _表示調(diào)用次數(shù),F(xiàn)ANUC系統(tǒng)允許重復(fù)調(diào)用的最多次數(shù)為999次,如果省略了重復(fù)次數(shù),則為1次。后面四位數(shù)字××××表示被調(diào)用的子程序名。
如M98P3001表示調(diào)用子程序O3001一次,M98P23001表示調(diào)用子程序O3001兩次。
由于子程序的調(diào)用目前尚沒有完全統(tǒng)一,對(duì)于不同的數(shù)控系統(tǒng),使用時(shí)必須參照有關(guān)系統(tǒng)的編程說明。
例:編制如圖3-56所示零件的程序,零件四邊已加工過,尺寸為180mm×110mm×40 mm,零件上4個(gè)方槽的尺寸、形狀相同,槽深2mm,槽寬10mm,未注圓角半徑為R5,設(shè)編程原點(diǎn)為零件左下角點(diǎn),采用直徑為φ10mm的立銑刀。
O3002; (主程序)
G54 G90 G17 G40 G49 G80; (程序初始化)
G00 Z30; (Z軸下刀到安全高度)
M03 S600; (主軸正轉(zhuǎn)速度為600r/min)
G00 X30. Y15.; (刀具定位到第一個(gè)槽加工起始點(diǎn)處)
Z5; (刀具快速靠近工件上表面)
G91; (相對(duì)坐標(biāo))
M98 P3003; (調(diào)用子程序O3003一次,加工第一個(gè)槽)
G00 X70; (定位到第二個(gè)槽加工起始點(diǎn)處)
M98 P3003; (調(diào)用子程序O3003,加工第二個(gè)槽)
G00 X-70. Y50;
M98 P3003; (調(diào)用子程序,加工第三個(gè)槽)
G00 X70;
圖3-56 子程序編程
M98 P3003; (調(diào)用子程序,加工第四個(gè)槽)
G90 G00 X0. Y0. Z200;
M05 M30;
O3003; (子程序)
G01 Z-7. F50; (下刀到切深2mm)
X50.0 F150; (逆時(shí)針加工槽)
Y30;
X-50;
Y-30;
G00 Z7; (抬刀到工件上表面2mm處)
M99; (子程序結(jié)束)
3.4.2 縮放編程指令
指令格式:G51 X Y Z P ;
M98 P ;
G50;
其中:G51——建立縮放;G50——取消縮放;X、Y、Z——縮放中心的坐標(biāo)值;P——縮放倍數(shù);M98 P ——調(diào)用子程序。
G51既可指定平面縮放也可指定空間縮放。在G51后運(yùn)動(dòng)指令的坐標(biāo)值以X、Y、Z為縮放中心,按P規(guī)定的縮放比例進(jìn)行計(jì)算。在有刀具補(bǔ)償?shù)那闆r下,先進(jìn)行縮放,然后才進(jìn)行刀具半徑補(bǔ)償和刀具長(zhǎng)度補(bǔ)償。G51、G50為模態(tài)指令,可相互注銷,G50為默認(rèn)值。
例:使用縮放功能編制如圖3-57所示輪廓的加工程序。設(shè)刀具起點(diǎn)距工件上表面30 mm,切削深度為2mm。
O3004; (主程序)
圖3-57 縮放編程指令
G54 G90 G17 G40 G49 G80; (程序初始化)
G00 Z30.0; (Z軸下刀到安全高度)
M03 S600; (主軸正轉(zhuǎn)速度為600r/min)
G00 X0.0 Y0.0; (刀具定位加工起始點(diǎn)處)
Z5.0; (刀具快速靠近工件上表面)
G01 Z-2.0 F50.0; (刀具下刀到指定切深)
M98 P3005; (調(diào)用子程序O3005,加工縮放前的輪廓)
G51 X15.0 Y15.0 P3; (以(15,15)為縮放中心,輪廓放大3倍)
M98 P3005; (再次調(diào)用子程序,加工放大后的輪廓)
G50; (取消縮放指令)
G00 Z50.0;
M05 M30; (主軸停,程序結(jié)束)
O3005; (輪廓加工子程序)
G41 G00 X10.0 Y4.0 D01;
G01 Y30.0 F100.;
X20.0;
G03 X30.0 Y20.0 I10.0;
G01 Y10.0;
X5.0;
G40 G00 X0.0 Y0.0;
M99; (子程序結(jié)束)
3.4.3 鏡像編程指令
當(dāng)工件相對(duì)于某一軸具有對(duì)稱形狀時(shí),可以利用鏡像功能和子程序,只對(duì)工件的一部分進(jìn)行編程,而能加工出工件的對(duì)稱部分,這就是鏡像功能。當(dāng)某一軸的鏡像有效時(shí),該軸執(zhí)行與編程方向相反的運(yùn)動(dòng)。
指令格式:G51 X Y I J ;
M98 P ;
G50;
其中:G51——建立鏡像;G50——取消鏡像;X、Y——鏡像中心的坐標(biāo)值;I、J分別為1、-1,以X方向?yàn)閷?duì)稱軸鏡像;I、J分別為-1、1,以Y方向?yàn)閷?duì)稱軸鏡像;I、J分別為-1、-1,以X、Y方向?yàn)閷?duì)稱軸鏡像;M98 P ——調(diào)用子程序。
鏡向功能可讓圖形按指定規(guī)律產(chǎn)生鏡像變換。
例:使用縮放功能編制如圖3-58所示輪廓的加工程序。設(shè)刀具起點(diǎn)距工件上表面30 mm,切削深度為2mm。
圖3-58 鏡像編程指令
程序如下:
……
G01 Z-2.0 F100.0; (下刀到指定切深)
M98 P3006; (調(diào)用輪廓加工子程序,加工右上角第一個(gè)輪廓)
G51 X60.0 Y50.0 I-1.0 J1.0;(Y=50為鏡像軸鏡像圖形)
M98 P3006; (加工右下角輪廓)
G50; (取消鏡像指令)
G51 X60.0 Y50.0 I-1.0 J-1.0; (以O(shè)1為鏡像中心鏡像圖形)
M98 P3006; (加工左下角輪廓)
G50;
G51 X60.0 Y50.0 I1.0 J-1.0; (以X=60為鏡像軸鏡像圖形)
M98 P3006; (加工左上角輪廓)
G50;
……
O3006; (輪廓加工子程序)
G42 G01 X60.0 Y60.0 D01;
X115.0;
Y80.0;
X110.0;
G02 X90.0 R10.0;
G03 X70.0 R10.0;
G01 Y50.0;
G40 G01 X60.0;
M99; (子程序結(jié)束)
3.4.4 旋轉(zhuǎn)編程指令
旋轉(zhuǎn)編程指令可使編程圖形按照指定旋轉(zhuǎn)中心及旋轉(zhuǎn)方向旋轉(zhuǎn)一定的角度,G68表示開始坐標(biāo)系旋轉(zhuǎn),G69用于撤銷旋轉(zhuǎn)功能。
指令格式:G17 G68 X Y P ;
M98 P ;
G69;
其中:G68——建立旋轉(zhuǎn);G69——取消旋轉(zhuǎn);X、Y、Z——旋轉(zhuǎn)中心的坐標(biāo)值;P——旋轉(zhuǎn)角度,單位是(°),0°≤P≤360°。
在有刀具補(bǔ)償?shù)那闆r下,先旋轉(zhuǎn)后刀補(bǔ)(刀具半徑補(bǔ)償、長(zhǎng)度補(bǔ)償),在有縮放功能的情況下,先縮放后旋轉(zhuǎn)。
例:使用旋轉(zhuǎn)功能編制如圖3-59所示輪廓的加工程序。設(shè)刀具起點(diǎn)距工件上表面50mm,切削深度為5mm。
圖3-59 旋轉(zhuǎn)變換功能示例
程序如下:
……
G01 Z-2.0 F100.0; (下刀到指定切深)
M98 P3007; (調(diào)用輪廓加工子程序,加工①)
G68 X0 Y0 P45; (旋轉(zhuǎn)45°)
M98 P3007; (加工輪廓②)
G68 X0 Y0 P90; (旋轉(zhuǎn)90°)
M98 P3007; (加工輪廓③)
G69; (取消旋轉(zhuǎn))
……
O3007; (子程序,①的加工程序)
G41 G01 X20 Y-5 D01 F100;
Y0;
G02 X40 I10;
X30 I-5;
G03 X20 I-5;
G00 Y-6;
G40 X0 Y0;
M99; (子程序結(jié)束)
子程序、鏡像、旋轉(zhuǎn)、縮放等指令只是簡(jiǎn)化編程的一種方法,對(duì)提高產(chǎn)品的加工質(zhì)量、提高加工的效率沒有幫助。
免責(zé)聲明:以上內(nèi)容源自網(wǎng)絡(luò),版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請(qǐng)告知,我們將盡快刪除相關(guān)內(nèi)容。