1一、[新课导入]二、[讲授新课]一、程序段格式所谓程序段格式,是指程序段书写规则,它包括机床所要求执行的功能和运动所需要的所有几何数据和工艺数据。一个零件加工程序是由若干以段号大小次序排列的程序段组成,每个程序段一般由程序号、顺序号、准备功能、坐标字、进给速度、主轴功能、刀具功能、辅助功能等组成。它们的地址、范围、意义见表5—1。表5—1程序段组成及其相应地址、范围和意义每个程序段不一定都必须具有上面这些指令,但在每个程序段中,指令要遵照上述格式来排列。2000M数控系统采用的程序段格式是可变程序段格式,所谓可变程序段格式就是程序段的数据的个数和长度都是可变的。一个程序段由一个或多个程序字组成,程序通常由地址和地址字后的数字和符号组成。例如X-46.38其中:X——地址功能字-——符号46.38——数据字这种程序段格式,以地址功能字为首,后跟一串数字组成,若干个字构成程序段,这一格式,如上一程序段己写明,本程序段里不产生变化的那些字仍然有效,可以不再重写。尺寸字中,可只写有效数字,不规定每个字要写满固定位数。用这种格式写出的各个程序段,长度和数据的个数都是可变的,故称为可变程序段格式。例N0420G03X70Y-36.5I0J-2F100程序中N,G,X,Y,I,J,F均为地址功能字。组成地址范围意义程序号P、N00~99指定程序号、子程序号顺序号N0000~9999程序段号准备机能G00~99指令动作方式坐标字X,Y,Z,A,I,J,K,R±0.001~±9999.999±0.001~±9999.999坐标运动指令圆心坐标、螺距、半径进给速度F9~1800mm/min进给速度指令主轴机能S0~5000r/min主轴转速指令刀具机能T1~20刀具指令辅助功能M0~99辅助指令2N——程序段号(N后要求写满4位数或以上)G——准备功能X,Y,I,J——坐标地址F——进给量“.”“—”为符号,0420,03,70,36.5,0,2,100均为数据字。数据字尺寸字地址可用以下字母表示:X,Y,Z,A,I,J,K,P。非尺寸地址用以下字母表示:N,S,T,G,F,M,P。一个完整的程序由程序号、程序段和相应的符号组成,请看如下程序:P08N0010G00Z2S1000M03N0020G01Z-1F300N0030G91X20Y20N0040X25Y10N0050X30N0060G03X15Y15I0J15N0070G02X15Y15I15J0N0080G01Y10N0090X-5N0100G02X-30Y0I-15J0N0110G01G90X20Y20N0120X0Y0N0130G01Z5N0140M02在通常情况下,程序段是零件加工的一个工步,NC程序段是一个程序语句系列,程序语句作为程序贮存在存储器里。加工零件时,这些语句从存储器整体读出并一次性解释成可执行的数据格式,然后加以执行。程序段号用来标识组成程序的每一个程序段,这由字母N后面跟数字0000~9999组成,程序段号必须写在每一个程序段的开始,并且在N后写满至少4位数(可使用段号自动生成)。在一个程序段中,程序段号可采用0000~9999中的任意值,但各程序段号必须依其在程序的先后次序由小到大排列。为了便于在需要的地方插入新的程序段,建议在编程时不要给程序段以连续序号。如果在CNC面板上进行编程,则程序段以10为间隔进行编号,这样便于插入程序时赋于段号。二、准备功能(G功能)1.G00——快速定位书写格式:G00X_Y_Z_A_说明:(1)所有编程轴同时以G00定义的速度移动,当某轴走完编程值便停止,而其他轴继续运动。(2)不运动的坐标可以省略编程,省略的坐标不作任何运动。(3)目标点的坐标值可以用绝对值,也可用增量值,小数点前最多允许4位数字,小数点后最多允许3位,正数省略“+”号。(4)G00功能起作用时,其移动速度按P参数中的P00参数设定值运行。(5)用G00编程时,也可以写作G0。例如图5—1所示从A点快速移动至B点的程序如下:3图5—1G00快速定位例图绝对值方式编程:G00X170Y150增量方式编程:G91G00X160Y1402.G01——直线插补书写格式:G01X_Y_Z_F_G01X_Y_A_F_说明:(1)每次加工开始,自动处于G01状态。(2)不运动的坐标可以省略。(3)目标点的坐标可以用绝对值或增量值书写,小数点前允许4位,小数点后允许3位,正数省略“+”号。(4)G01起作用时,其进给速度按所给的F值运行,F9~1800mm/min。(5)用G01编程时,也可以写成G1。例如图5—2所示,从A点加工至B点程序如下:绝对值方式编程:G01X210Y120F150增量方式编程:G91G01X190Y104F150图5—2G01直线插补例图3.G02——顺时针圆弧插补书写格式:G02X_Y_I_J_F_或G02X_Z_R_F_说明:(1)X,Y,Z在使用G90时,圆弧终点坐标是相对编程零点的绝对坐标值。在使用G91时,圆弧终点是相对圆弧起点的增量值。I,J是圆心相对于圆弧起点的坐标值,I对4应X方向,J对应Y方向,。圆心坐标在圆弧插补时不得省略,不管是绝对值方式,还是增量方式,圆心坐标总是相对圆弧起点的增量值。当系统提供R编程功能时I,J可不编。(2)用G02指令编程时,可以直接编过象限圆、整圆等。(3)G02指令后的坐标值,小数点前允许4位,小数点后允许3位。(4)铣整圆时注意:圆心坐标I和J不能给错,特别是I和J不能同时为0。(5)用G02指令编程时,也可以写成G2。(6)第四轴A无圆弧插补功能。(7)ZOX,YOZ平面内的圆弧必须定义插补平面(G18,G19)。例1如图5—3所示的加工程序如下:绝对值方式:G02X58Y50I10J8F50增量方式:G91G02X18Y18I10J8F50图5—3G02顺圆编程例图例2如图5—4a)所示的程序如下:绝对值方式:G02X42Y20I8J-18.762F50增量值方式:G91G02X12Y-38.762I8J-18.762F50a)圆弧编程b)整圆编程图5—4G02顺圆编程例图例3整圆编程,如图5—4b)程序如下:绝对值方式:G02X45Y24I-17J0F50增量方式:G91G02X0Y0I-17J0F504.G03——逆时针圆弧插补书写格式:G03X_Y_I_J_F_或G03Y_Z_R_F_5用G03指令编程时,除了圆弧旋转方向相反外,其余跟G02指令完全相同。螺旋线插补书写格式:G02(或G03)X_Y_Z_I_J_K_F_说明:(1)X,Y,Z为螺旋线终点坐标,I,J为圆心坐标,K为螺距。(2)G02(顺时针螺旋线插补)和G03(逆时针螺旋线插补)除了螺旋线的方向相反外,其他内容全部相同。5.G04——暂停指令格式:G04K××.××说明:(1)程序在执行到某一段后,需要暂停一段时间,这时就可以用G04指令使程序暂停。当暂停时间一到,继续执行下一段程序。暂停时间由K后的数值说明,以秒为单位,小数点前允许2位,小数点后允许2位。即:从0.01~99.99s。(2)G04的程序段不能有其他指令。6.G11——对称于Y轴镜像格式:G11N××××.××××.×××循环次数,最多允许写三位数,1~255镜象加工程序段结束时的程序段号,要求4位数镜象加工程序段开始时的程序段号,要求4位数说明:(1)G11指令将本段所定义的两个程序段号之间的程序段沿X轴反向加工,并按编程所给的循环次数执行若干次。(2)镜像加工开始程序段号和结束程序段号,中间用分隔点隔开,镜像加工开始程序段号必须位于结束段之前。(3)循环次数由2个分隔点之后的三位整数决定,省略则为循环一次。(4)当镜像加工完毕后,下一加工程序段应该是G11段的下一段。(5)G11不能作为整个程序的最后一段编程。若G11程序段位于最后时,应再加一句程序M02。(6)G11的用法举例:(图5—6中的编号是刀具中心轨迹运动的顺序)图5—6G11编程例图6N0010G01Z-2M03S1000F100N0020G91G01X30Y30N0030X20N0040G01G90X0Y0N0050G11N0020.0040N0060M02(7)注意:G11所定义的镜像段号之内,不得发生其他转移加工指令,如子程序跳转等。7.G12——对称于X轴镜象格式:G12N××××.××××.×××注:G12指令将定义的两个程序段之间的加工沿Y轴方向进行,其余描述与G11相同。G12的用法举例:从图5—7中可看出刀具中心按程序运动的轨迹,程序如下:图5—7G12编程例图N0010G01Z-1S1000M03F100N0020G91G42G01X20Y20N0030X30Y10N0040X30N0050G03X15Y15I0J15N0060G02X15Y15I15J0N0070G01Y10N0080X-50N0090G02X-30Y0I-15J0N0100G01G90X20Y20N0110G40X0Y0N0120G12N0020.0110N0130M028.G13——原点对称格式:G13N××××.××××.×××G13指令是G11,G12指令同时作用的效果,其余说明与G11,G12相同。G13指令的编程用法举例:如图5—8所示,下面程序加工的图形,先铣图I,用程序段N0020~N0110,用G11功能调程序段N0020~N0110铣图II,用G12功能调程序段N0020~N0110铣图IV,用G13功能程序段N0020~N0110铣图III。7N0010G01Z-1F100S1000M03N0020G91G42G01X20Y20N0030X30Y10N0040X30N0050G03X15Y15I0J15N0060G02X15Y15I15J0N0070G01Y10N0080X-50N0090G02X-30Y0I-15J0N0100G01G90X20Y20N0110G40G01X0Y0N0120G11N0020.0110N0130G12N0020.0110N0140G13N0020.0110N0150G00Z5N0160M02[课堂小结][课后作业]8一、[复习提问]二、[讲授新课]10.G22——子程序定义格式:G22N××说明:(1)N后的二位数为子程序编号,子程序名以N开头。(2)编G22程序段时,不得有其他指令出现。(3)G22与G24成对出现,形成一个完整的子程序。(4)子程序内部的参数数据有2种格式:1)常数格式,数据为编程给定的常数,即0~9。2)变量格式,程序中的功能号、参数等数字部分均可用变量表示,而变量的具体值由调用子程序的调用段传入。本系统可处理10个变量参数。即P0,P1~P9,具体使用请看G20子程序调用。(5)子程序内部不能有转移加工、镜像加工。11.G20——子程序调用格式:G20N××.××P1.××××.×××说明:(1)N后第一个2位数为要调用的子程序的程序名,允许两位数。分隔点后2位数表示本次调用的循环次数,(2)若G20段中无P变量,则子程序中不能出现变量P。(3)子程序中的变量在G20调用时,必须赋于明确的数值。(4)本段程序不得出现以上描述以外的内容。(5)子程序可重复嵌套调用10次。例1下面程序可以说明P变量编写的子程序的含义:主程序:P10N0020G20N05.2P7.200P3.-47.65P9.01P0.0子程序:N05N0010G22N05N1005GP9G90XP0YP0F100N1010XP3FP7N1050G24以上程序相当于如下程序:N0010G22N05N1005G01G90X0Y0F1009N1010X-47.65F200N1015G24以上例子可以说明参数的传递关系。若不遵守以上规则,系统将出错。例2用P变量编写如图5—9所示(铣削深度6mm)子程序实例如下:图5—9参数编程例图主程序:N0010M3S1000N0020G20N50P1.-3N0030G20N50P1.-6N0040M02子程序N