子程序•子程序:•一次装夹加工多个相同零件或一个零件有重复加工部分的情况下可使用子程序。•说明:子程序不是NC系统的标准功能,不同的NC系统所用的指令和格式均不相同。•子程序格式:M98P---这这里地址P后面跟数字,前面三位指调用的重复次数,后面四位用于指定被调的子程序序号•例如:M98P51002;调用1002号子程序,重复5次。•例如:M98P1002:;调用1002号子程序,重复1次。•例一:如图所示,加工两个相同的工件,试编写其加工程序。Z轴开始点为工件上方100mm处,切深10mm。O5050100150XYCBAHFDEGMN2•主程序•O0001•G90G54G00X0Y0;•M03S1000;•Z100.0;•M98P0002;•G90G00X80.0;•M98P0002;•G90G00X0Y0M05;•M30;•子程序•O0002;•G91G00Z-95.0;•G41X40.0Y20.0D01;•G01Z-15.0F100.0;•Y30.0;•X-10.0;•X10.0Y30.0;•X40.0;•X10.0Y-30.0;•X-10.0;•Y-20.0;•X-50.0;•Z110.0;•G40X-30.0Y-30.0•M99;使用子程序时的注意事项:•1、编写子程序时,一般采用增量方式编程,这样可减少计算量。•2、主程序中的模态指令可被子程序中同一组的其它G代码所更改。如子程序用了G91代码后,在返回主程序时将继续以G91方式进行,故应特别注意代码的转换,否则可能产生位置错误。•3、调用程序时使用刀补,最好不要在刀具补偿状态下的主程序中调用子程序,换句话说,刀补的建立和取消应在子程序中进行。如果必须在主程序中建立,则应在主程序中消除。决不能在主程序中建立,在子程序中消除,也不能在子程序中建立,在主程序中消除,否则极易出错。•4、子程序不能单独运行。练习:如图所示,加工两个相同的工件,试编写其加工程序。切深10mm。40R10603030yX