1、第二节第二节 轮廓加工与子程序轮廓加工与子程序一、一、子程序的概念子程序的概念 编程时,当一个零件上有相同的或经常重复的加工内容时,为了简化编程,将这些加工内容编成一个单独的程序,再通过调用这些程序进行多次或不同位置的重复加工。在系统中调用程序的程序称为主程序;被调用的程序称为子程序。二、子程序的格式二、子程序的格式格式:O;M99;1 1格式一:格式一:M98 PM98 PL L 子程序的程序名与普通数控程序完全相同由英文字母“O”和其后的四位数字组成,数字前的“0”可以省略不写。子程序的结束与主程序不同,用M99指令来表示,子程序在执行到M99指令时,将自动返回到主程序继续执行主程序下面的
2、程序段。三、子程序的调用三、子程序的调用 地址P后面的四位数字为子程序序号,地址L后的数字表示重复调用的次数,子程序序号及调用次数前的0可以省略不写。例如,M98P0010L0002可以简写成M98P10L2,表示调用子程序0010两次。2 2格式二:格式二:M98 PM98 P 地址P后面是由八位数字所组成,前四位表示调用次数,后四位表示子程序号,在编写程序时,表示调用次数的前四位数字最前的0可以省略不写,但表示子程序号的后四位数字0不可省略。例如,M9800020020可以简写成M98P20020,表示调用子程序0020两次。系统允许主程序重复调用子程序的次数为9999次,如只调用一次,此
3、项可以省略不写。主程序可以调用子程序,同时子程序也可调用另一个子程序,即子程序的嵌套,如图517所示。在FANUC系统中,子程序最多可嵌套4级。图517 子程序嵌套四、子程序的特殊使用方法四、子程序的特殊使用方法1 1子程序使用子程序使用P P指令返回指令返回 在子程序的结束指令M99后加入Pn(n为主程序的程序段号),则子程序执行完后,将返回到主程序中程序段号为n的那个程序段,如下图所示。图5-18 使用P指令返回2 2自动返回到程序头自动返回到程序头 主程序中插入M99指令,系统在执行到M99指令时将自动返回到程序的开头位置继续执行程序,从而实现无限次循环。为了能够停止或执行下面的程序段,
4、通常在M99指令前加上一个“/”,并按下数控系统面板的“跳过键”按钮,程序在执行到带有“/”符号的程序段时,将跳过这个程序段,而执行下一个程序段。主程序中插入M99Pn,数控系统面板的“跳过键”按钮未按下,主程序执行到该程序段时,则不返回到程序开头,而是返回到程序段落号为n的程序段。如图519所示,系统在执行到M99P0020时,将返回到程序段落号为0020的程序段。图519 返回到指定程序段3 3强制改变子程序的循环次数强制改变子程序的循环次数 如果将子程序结束指令M99改写为M99L的格式,将强制改变主程序规定调用子程序的次数。如主程序中调用子程序的指令为M98P0010L5,表示主程序调
5、用子程序0010为5次。如子程序的结束指令为M99L1,则该子程序的重复执行次数变为1次。五、编程实例一五、编程实例一 如图520所示的零件,上下面以及外形为已加工表面,现要加工两个相同形状台阶的外形轮廓,台阶高度为5mm,利用子程序编写台阶的程序如下。图520 子程序应用(1)1 1工艺分析工艺分析 图520中,加工部位是长50mm、宽为60mm、高度为5mm的台阶。台阶的轮廓外形由直线和圆弧组成,在轮廓中存在半径为10mm的凹圆弧。另外,两个台阶在零件的中心形成一个宽度为25mm的直槽,故选择刀具时,刀具的半径必须小于或等于10mm,本例选择直径为16mm的平底铣刀。图中两个台阶的形状和尺
6、寸完全相同,可采用子程序的方式编程。其加工路线如图521所示。图521 加工路线图 工件编程原点位于零件上表面的中心,如下图所示,编程时,为了通过调用子程序实现两个台阶的加工,在主程序中采用G90方式编程,只定位刀具的起始点;在子程序中采用G91方式编程编写轮廓的加工程序。加工左边的台阶时,主程序中首先使刀具定位到“1”点(G90方式),然后在子程序中采用G91方式编程实现台阶轮廓的加工。加工右边的台阶时,只需要在主程序中将刀具定位到“1”点(G90方式),再调用一次子程序即可实现第二个台阶的加工。各个基点的绝对坐标和相对坐标见表54。2 2选择切削用量选择切削用量 (1)背吃刀量(ap)如图
7、520所示,台阶的加工深度为5mm。台阶的深度没有公差要求,选择背吃刀量为5mm。(2)主轴转速(n)主轴转速选择400r/min。(3)进给速度 进给速度为40mm/min。3 3装夹装夹根据零件的形状采用平口钳和垫铁进行装夹。4 4填写数控加工工艺卡填写数控加工工艺卡 数控加工工艺卡见表55。5 5程序编制程序编制 加工程序见表56。六、编程实例二六、编程实例二 如下图所示,零件的上下面以及外形为已加工表面,加工部位为60mm60mm高度为15mm的台阶,试编写该数控程序。图522 子程序应用(2)1 1工艺分析工艺分析 如图522所示,加工部位为60mm60mm高度为15mm的台阶。台阶
8、的轮廓外形由直线和凸圆弧组成,不存在凹圆弧,因此,在选择刀具时,对刀具直径的大小没有要求,本例选择16mm的平底铣刀。由于台阶的深度较深,考虑到刀具的强度和零件加工表面的质量,刀具不能一次加工到深度,加工时需要采用分层的方式进行,每层加工深度为5mm,共分为三层。加工路线如图523所示。图523 加工路线图 如左图所示,工件的编程原点位于工件上表面的中心。编程时,为了采用一个程序实现工件的分层加工,刀具在XY平面内移动采用G90方式,刀具在Z向采用G91方式。工件各基点的坐标见表57。2 2选择切削用量选择切削用量 (1)背吃刀量(ap)根据工艺分析台阶的深度较深,不能一次加工到深度,需要采用
9、分层方式进行加工,每层5mm,分三次完成。因此,每层的背吃刀量选择为5mm。(2)主轴转速(n)主轴转速选择400r/min。(3)进给速度 进给速度为40mm/min。3 3装夹装夹 根据零件的形状采用平口钳和垫铁进行装夹。4 4数控加工工艺卡数控加工工艺卡 数控加工工艺卡见表58。5 5程序编制程序编制 加工程序见表59。1为了在使用子程序时实现某种功能(如分层加工、平移加工),编程时通常使用G90和G91方式混合编程。利用子程序方式对工件进行分层或平移加工时,主程序中通常使用G90方式编程,子程序通常使用G91方式编程。子程序中采用G91编程模式,从而避免了重复执行子程序过程中,刀具在同一深度进行加工。但需要及时进行G90与G91模式的转换。如下程序。2在半径补偿模式中的程序不能被分支。如半径补偿的建立是在主程序中,刀补的进行则是在子程序中,而刀补的取消又回到了主程序。如下左程序。在执行此种程序的过程中,有时系统会出现报警。在编程的过程中应尽量避免编写这种形式的程序。正确的书写格式如下右程序。