§子程序
一、 子程序的概念
程序分二類:①.主程序。②.子程序
在一個加工程序中的若干位置上,如果含有一連串在寫法上完全相同或相似的內(nèi)容,為了簡化程序可以把這些重復的程序單獨抽出,并按一定的格式編成子程序,然后像主程序一樣將它們存儲到程序存儲區(qū)中。主程序在執(zhí)行過程中如果需要某一子程序,可以通過一定的格式的子程序調(diào)用指令來調(diào)用該子程序,子程序執(zhí)行完了又可以返回到主程序,繼續(xù)執(zhí)行后面的程序。
二、 子程序的格式
OXXXX;(O04:)
-----------;
-----------;
┇
┇
----------;
M99;
主程序存入存儲器格式:OXXXX;而子程序存入存儲器格式:OXXXX;
與主程序一樣,怎樣區(qū)別主程序和子程序。
主程序結束是 M02/M30。 子程序結束是 M99。
主程序 子程序
OXXXX; OXXXX;
┇ ┇
┇ ┇
M02/M30; M99;
三、 子程序的調(diào)用
調(diào)用子程序的格式:
M98 PXXXXLXXXX;
其中M98是調(diào)用子程序指令,地址P后面的4位數(shù)為子程序號,地址L指令是重復調(diào)用的次數(shù)。當L省略時,子程序只調(diào)用一次。
例:M98 P1002 L5;即重復調(diào)用1002號子程序5次。
①. 子程序還可調(diào)用子程序,可嵌套2次。
主程序 子程序A 子程序B
調(diào)用子程序A 調(diào)用子程序B
返回 返回
②. 調(diào)用子程序指令可以與移動指令在同一程序段中。
例:G01 X100 M98 P1200;
在完成X軸方向移動100mm以后,調(diào)用1200號子程序。
③. 子程序的特殊使用方法
如果在子程序的返回主指令程序段中加入Pn (即格式變成M99 Pn; n 為主程序中的順序號。)則子程序?qū)⒎祷氐街鞒绦蛑许樞蛱枮閚 的那個程序段,但這種情況只用于存儲器工作方式而不能用于紙帶方式。
四、 子程序的應用
①.零件上有若干處具有相同的輪廓形狀。在這種情況下,只編寫一個輪廓形狀的子程序,然后用一個主程序來調(diào)用該子程序。
②. 加工中反復出現(xiàn)具有相同軌跡的走刀路線。被加工的零件從外形上并無相同的輪廓,但需要刀具在某一區(qū)域分層或分行反復走刀,走刀軌跡總是出現(xiàn)某一特定的形狀,采用子程序就比較方便,此時通常要以增量方式編程。
③. 程序中的內(nèi)容具有相對的獨立性。加工中心編寫的程序往往包含許多獨立的工序,有時工序之間的調(diào)整也是允許的,為了優(yōu)化加工順序,把每一個獨立的工序編成一個子程序,主程序只有換刀和調(diào)用子程序等指令,是加工中心編程的一個特點。
④. 滿足某種特殊的需要。
五、 編程舉例
例1:零件如圖4-9所示,用φ8鍵槽銑刀加工,使用半徑補償,每次Z軸下刀2.5mm,用子程序編寫程序。
程序如下:
O100;
G92 X0 Y0 Z20;
M03 S800;
G90 X-4 Y-10 M08;
Z0;
M98 P110 L4;
G90 G00 Z20 M05;
X0 Y0 M09;
M30;
O110;
G91 G00 Z-2.5;
M98 P120 L4;
G00 X-76 M99;
O120;
G91 G00 X19;
G41 D21 X4.5;
G01 Y75 F100;
X-9;
Y-75;
G40 G00 X4.5 M99;
例2:如圖4-10所示,零件上要加工的部分是由七個正六方邊形與外輪廓多邊形邊界之間所組成的寬9.8mm,深4mm的窄槽,試利用子程序功能編寫程序。
本題用φ8鍵槽銑刀加工,程序如下:
O200;
G92 X0 Y0 Z20;
M03 S600;
M08;
M98 P210;
G91 G00 Y162;
M98 P220 L3;
G91 G00 X-70.148 Y202.5;
M98 P220 L2;
G91 G00 X140.296 Y162;
M98 P220 L2;
G91 G00 X-70.148 M05;
M08;
M30;
O210;
G92 X0 Y0 Z20;
G90 G00 Y121.5;
Z5;
G01 Z-4 F20;
G41 D21 X29 F40;
G03 X0 Y126.4 R4.9;
G01 X-26.212;
X-49.594 Y85.9;
X-96.36;
X-122.571 Y40.5;
X-99.189 Y0;
X-122.571 Y-40.5;
X-96.36 Y-85.9;
X-49.594;
X-26.212 Y-26.4;
X26.212;
X49.594 Y-85.9;
X96.36;
X122.571 Y-40.5;
X99.189 Y0;
X122.571 Y40.5;
X96.36 Y85.9;
X49.594;
X26.212 Y126.4;
X0;
G03 X-4.9 Y121.5 R4.9;
G40 G01 X0;
G90 G00 Z20;
Y0 M99;
O220;
G91 G00 Y-81;
G92 X0 Y0 Z20;
G90 G00 Y40.5;
Z5;
G01 Z-4 F20;
G41 D21 X-4.9 F40;
G03 X0 Y35.6 R4.9;
G01 X20.554;
X41.107 Y0;
X20.554 Y-35.6;
X-20.554;
X41.107 Y0;
X-20.554 Y35.6;
X0;
G03 X4.9 Y40.5 R4.9;
G40 G01 X0;
G90 G00 Z20;
Y0 M99;