資源共享
課程章節(jié)-項(xiàng)目十:子程序
學(xué)習(xí)目標(biāo): |
一、子程序
1、概念:
子程序指的是能被其它程序調(diào)用,在實(shí)現(xiàn)某種功能后能自動(dòng)返回到調(diào)用
程序中的程序。作為子程序必須具備三個(gè)條件,一是能被其它程序調(diào)用。調(diào)
用它的程序可以是主程序也可以是其它的子程序;二是能重復(fù)實(shí)現(xiàn)某種功能。通
常是加工某個(gè)零件某個(gè)工步,如:切槽、切斷;三是完成某種功能后自動(dòng)返回到
調(diào)用程序中。
2、結(jié)構(gòu)
子程序與主程序一樣,也有三部分組成,即程序名、程序內(nèi)容、程序結(jié)束。程序名的命名原則與主程序相同,也是由大寫字母O加四位數(shù)字組成;程序內(nèi)容也是若干個(gè)程序段組成;程序結(jié)束指令與主程序不同,用M99指令結(jié)束,也必須單獨(dú)一個(gè)程序段。
二、子程序的調(diào)用
子程序與主程序的最大區(qū)別是,主程序可以單獨(dú)執(zhí)行,而子程序必須被主程
序或其它子程序調(diào)用才能執(zhí)行。在FANUC0i數(shù)控系統(tǒng)中,調(diào)用子
一個(gè)主程序或子程序調(diào)用同一個(gè)子程序并不是無限次調(diào)用的,最大調(diào)用次
數(shù)為999次。若缺省調(diào)用次數(shù),表示僅調(diào)用子程序一次。若一個(gè)零件圖中有多處
相同的形狀,就可以運(yùn)用子程序編程,調(diào)用次數(shù)則取決于相同形狀的數(shù)目。
三、子程序的執(zhí)行過程
當(dāng)子程序被主程序或其它子程序調(diào)用時(shí),子程序才開始執(zhí)行,當(dāng)執(zhí)行到M99時(shí),自動(dòng)返回到主程序或上一級(jí)子程序M98下一個(gè)程序段繼續(xù)執(zhí)行。其調(diào)用過程如圖10-1所示:
圖10-1 子程序執(zhí)行過程
四、子程序的編寫
編寫子程序關(guān)鍵要做好“兩確定,一翻譯”,“兩確定”,即確定主程序調(diào)用子程序的位置;確定每次調(diào)用子程序時(shí)Z向位移量;“一翻譯”即用G代碼翻譯一次調(diào)用時(shí)刀具運(yùn)動(dòng)軌跡;
例1、用主程序調(diào)用子程序的方式加工下圖中等距梯形槽。
解:參考程序如下:
O8888;(主程序) G00 X60. Z100.; T0202;(切槽刀,刀寬4mm) M03 S450; G00 X52. Z3.;(至切槽定位點(diǎn)) M98P36666;(調(diào)用子程序6666三次) G00 X60.Z100.M05; M30;
|
O6666;(子程序) G00 W-20.;(定位至槽的正上方) G01 X30.F0.05; (垂直切槽至槽底) G04 X2; (槽底停留2秒) G01 X52.F0.1; (垂直退刀至槽口) W-3.; X50.; (準(zhǔn)備切左三角) X30. W3.F0.05;(切左三角至槽底)X52.F0.1 (垂直退刀至槽口) W3.; X50.; (準(zhǔn)備切右三角) X30.W-3.F0.05;(切右三角至槽底)X52.F0.1; (垂直退刀至槽口) M99; |
習(xí) 題
編程題:用主程序調(diào)用子程序的方式加工下圖中等距矩形槽