无论何种数控机床的加工,都是按照从外部输入的程序自动地对零件进行加工的。为了与数控机床的内部程序及自动编程使用的零件源程序相区别,把从外部输入的直接用于加工某个零件的程序称为数控加工程序,简称加工程序。加工程序是数控系统的应用软件,它是由一系列指令代码组成的。
在数控编程中,是用G指令代码、M指令代码及F,S,T等指令代码来描述加工工艺过程、数控系统的运动特征、数控机床的起动与停止、切削液的开关等辅助功能,以及给出进给速度、主轴转速等的。
必须注意,国际上广泛应用ISO标准制定的G代码和M代码与我国根据ISO标准制定的JB/T 3208—1999标准完全等效,但也有些国家或集团公司所制定的G代码和M代码的含义与此完全不同,操作时务必根据使用说明书进行编程。
1.加工程序的基础
(1)字符与代码
字符是一个关于信息交换的术语,它是用来表示数据的一些符号。在加工程序中使用的字符有字母、数字及小数点、符号(正负号)和功能字符(程序开始、结束等)。数控系统只接收二进制信息,人们把字符进行编码,使每个字符对应一个8位二进制数,这个编码常称为代码。目前国际上广泛使用的代码有两种标准,即国际标准化组织(ISO)标准和美国电子工业协会(EIA)标准,分别称为ISO代码和EIA代码。
1)EIA代码。
EIA编码是美国电子工业协会(Electronic Industries Association)标准,共有50个字符(其中功能字11个),专门用于数控机床及其辅助设备。这种代码的特点是每个代码的二进制数中1的个数都是奇数,它的第5位专门作补奇用。当代码中1的个数为偶数时,第5位为1;当代码中1的个数为奇数时,第5位为0。以此保证每个代码中1的个数为奇数,目的是为了读入时进行校验。
2)ISO代码。
ISO编码表的特点是每个代码中1的个数都是偶数,它的第3位专门作补偶用,以此保证每个代码中1的个数为偶数。
(2)程序段与程序格式
1)程序段。
程序段是数控加工程序的一个语句,用来指定机床完成某一个动作或功能。在书写、显示和打印时,一般每个程序段占一行,加工程序主体由若干个程序段组成。
2)程序段格式。
程序段格式是指程序段中的字、字符和数据的安排形式。目前加工程序使用字地址可变的程序段格式,也称为字地址格式。程序段由若干个字组成,字首是一个英文字母,称为字的地址,字的功能类别由地址决定;上一程序段中已确定,本程序段又不必变化的那些字仍然有效,可以不再给出;每个字的长度不固定,各个程序段的长度和字的个数是可变的;在程序段中,字的排列顺序无严格要求。下面是某程序中的两个程序段:
N11G01X40.125Z50.458F0.4S250T0303
N12X35.5
第一段中Ni1是程序段号;G01是准备功能,表示本段加工要走一条直线;X40.125和Z50.458是本段加工的终点坐标值;F0.4是进给量;S250是主轴转速;T0303是使用刀具的刀号和刀补号。N12是程序段号,X35.5为终点坐标。第二段中N12表示除了坐标x发生变化外,其他均不变,两个程序段的字数和字符个数相差很大。尽管各个字的排列顺序无要求,但实际编程时习惯上一般按N,G,X,Y,Z,F,S,T,M的顺序编写。
3)常规加工程序的格式。
常规加工程序由开始符、程序名、程序主体和程序指令组成,程序的最后还有一个结束符。程序的开始符和结束符相同,在ISO代码中是%,在EIA代码中是ER。程序结束指令可用M02(程序结束)或M30(纸带结束),M02与M30的共同点是停止主轴切削液和进给,并使系统复位。有的系统M02和M30指令没有区别,有的则有区别,区别是M02程序结束后光标停在程序结束处,M30程序结束后光标自动返回程序开始处,按启动键可再次运行程序。
程序名位于程序主体之前、程序开始符后,它一般独占一行。程序名有两种形式:一种是以规定的英文字母(常用O)打头,后边紧跟若干位数字组成,不同的系统数字位数不同,常见的是2位和4位。另一种是可以用英文字母、数字和“一”混用,如FL20一I20—1。
(3)字与字的7种功能
字是程序字的简称,它是机床数字控制的专用数语。它的定义是一套有规定次序的字符(字符串)。一个字所含的字符数称为字长。加工程序中的字都是由一个字母后跟若干位十进制数组成的,这个字母称为地址符,地址符后边可加正负号。程序字按其功能不同可分7种类型。
1)顺序号字。
顺序号字也叫程序段号,位于程序段之首,其地址符为N,后续标明顺序的数字(2~4位)。
2)准备功能字。
准备功能字的地址符是G,后续标明功能的数字(通常为00~99)。随着数控机床功能的增加,2位数字已不够用,有些数控系统后跟3位数字,还有的系统使用几套G功能字,可用参数设定的方法确定一种G功能字。各公司的系统准备功能不尽相同。
3)尺寸字。
尺寸字用来确定机床运动部件运动到达的坐标位置,表示暂停时间的指令也列入其中。地址符有3组:第1组是X,Y,Z,U,V,W,P,Q,R,用来指定到达的直线坐标尺寸,有些地址(如X)还可用在G04后边指定暂停时间;第2组是A,B,C,D,E,用来指定到达的角度坐标;第3组是I,J,K,用来指定圆弧轮廓的圆心坐标。有的系统坐标尺寸既可使用公制,也可使用英制,此时也要用G功能指定,尺寸字中的数字一般支持小数点,数值直接表示坐标尺寸。有些旧的系统不支持小数点,数字表示脉冲当量数。
4)进给功能字。
进给功能字用来指定运动部件的进给速度。进给一般分为每分钟进给或每转进给量,可用G94或G95功能来选定。进给功能地址符为F,后跟数字直接给出进给速度。在螺纹程序段中F也用来指定导程。
5)主轴转速功能字。
主轴转速功能字用来规定主轴转速,单位为转每分钟。地址符为S,后跟数字直接给出主轴每分钟的转速(rpm),如S300为主轴每分钟转300转。有的以代码形式间接给定转速,这时后跟数字不是速度实际值,而是一个速度等级值。
6)刀具功能字。
刀具功能字用来指定刀具号和刀补号。地址符为T,后跟数字有2位,4位,6位3种格式。2位比较常用,其前一位表示刀具号,后一位表示刀具长度补偿号,如T12表示用1号刀具2号刀补;4位数的前2位表示刀具号,后2位表示刀具长度或半径补偿号,例如:T0203表示用2号刀具3号刀补;6位数字的前2位表示刀具号,中间2位表示刀具半径补偿号,后2位表示刀具长度补偿号,例如:T030507表示用3号刀具5号半径补偿7号长度刀补。
7)辅助功能字。
辅助功能字用来指定数控机床辅助装置的接通或断开。其地址符为M,后跟1~3位数字,与G功能一样,各公司系统中的M功能不尽相同。
2.数控程序的指令代码
(1)准备功能G指令
它是由字母G和其后的2位数字组成,从G00至G99共有100种。该指令主要是命令数控机床进行何种运动,为控制系统的插补运算作好准备。所以,一般它们都位于程序段中坐标数字指令的前面。常用的G指令有以下几种。
G01——直线插补指令。使机床进行二坐标(或三坐标)联动的运动,在各个平面内切削出任意斜率的直线。
G02,G03——圆弧插补指令。G02为顺时针圆弧插补指令,G03为逆时针圆弧插补指令。使用圆弧插补指令之前必须应用平面选择指令,指定圆弧插补的平面。
G00——快速点定位指令。它命令刀具以定位控制方向从刀具所在点以最快速度移动到下一个目标位置。它只是快速定位,而无运动轨迹要求。
G17,G18,G19——坐标平面选择指令。G17指定零件进行xy平面上的加工,G18和G19分别为zx和yz平面上的加工。这些指令在进行圆弧插补、刀具补偿时必须使用。
G40,G41,G42——刀具半径补偿指令。利用该指令之后,可以按零件轮廓尺寸编程,由数控装置自动地计算出刀具中心轨迹。其中:G41为左偏刀具半径补偿指令,G42为右偏刀具半径补偿指令,G40为刀具半径补偿撤销指令。
G90,G91——绝对坐标尺寸及增量坐标尺寸编程指令。其中:G90表示程序输入的坐标值按绝对坐标值取,G91表示程序段的坐标值按增量坐标值取。(www.xing528.com)
(2)辅助功能M指令
辅助功能M指令是由字母M和其后的2位数字组成,从M00至M99共100种。这些指令与数控系统的插补运算无关,主要是为了数控加工、机床操作而设定的工艺性指令及辅助功能。常用的辅助功能指令有以下几种。
M00——程序停止。完成该程序段的其他功能后,主轴、进给、切削液送进都停止。
M01——计划停止。该指令与M00类似。所不同的是,必须在操作面板上预先按下“任选停止”按钮,才能使程序停止,否则M01不起作用。当零件加工时间较长或在加工过程中需要停机检查、测量关键部位,以及交接班等情况时使用该指令很方便。
M02——程序结束。当全部程序结束时使用该指令,它使主轴、进给、切削液送进停止,并使机床复位。
M03,M04,M05——分别命令主轴正转、反转和停转。
M06——换刀指令。常用于加工中心机床刀具库换刀前的准备动作。
M07,M08——分别命令2号切削液和1号切削液开(冷却泵起动)。
M09——切削液停。
M10.M11——运动部件的夹紧及松开。
M30——程序结束并倒带。该指令与M02类似。所不同的是,可使程序返回到开始状态,即使纸带倒回起始位置。
M98——子程序调用指令。
M99——子程序返回到主程序指令。
表7-1和表7-2为准备功能G指令和辅助功能M指令的含义。
表7-1 准备功能G指令
(续)
(续)
注:1.#号表示如选作特殊用途,必须在程序格式说明中说明。
2.如在直线切削控制中没有刀具补偿,则G43到G52可指定作其他用途。
3.在表中左栏括号中的字母(d)表示可以被同栏中没有括号的字母d所注销或代替,亦可被有括号的字母(d)所注销或代替。
4.G45到G52的功能可用于机床上任意两个预定的坐标。
5.控制机上没有G53到G59和G63功能时,可以指定作其他用途。
6.表中的a、c、f、d、e、j、k、I、h表示可以被同类代码所注销或代替。
表7-2 辅助功能M指令
(续)
(续)
注:1.#号表不如选作特殊用途,必须在程序说明中说明。
2.M90~M99可指定为特殊用途。
(3)进给功能F指令
该指令用以指定切削进给速度,其单位为mm/min或mm/r。F地址后跟的数值有直接指定法和代码指定法。现在一般都使用直接指定方式,即F后的数字直接指定进给速度,如:F120即为进给量120mm/min,F0.2即为0.2mm/r,进给速度的数值按有关数控切削用量手册的数据或经验数据直接选用。
(4)主轴转速功能S指令
该指令用以指定主轴转速,其单位为r/min。S地址后跟的数值有直接指定法和代码指定法之分。现在数控机床的主轴都用高性能的伺服电动机驱动,可以用直接法指定任何一种转速,如:“S2000”即为主轴转速2000r/min。代码法用于异步电动机与齿轮传动的有级变速,现已很少运用。
(5)刀具功能T指令
该指令用以指定刀号及其补偿号。T地址后跟的数字有2位(如T11)和4位(如T0101)之分。对于4位,前2位为刀号,后2位为刀补寄存器号。如T0202,第一个02为2号刀,第二个02为从02号刀补寄存器取出事先存入的补偿数据进行刀具补偿。若后2位为00,则无补偿或注销补偿。编程时常取刀号与补偿号的数字相同(T0101),显得直观。
上述T指令中含有刀补号的方法多用于数控车床的编程。
(6)坐标功能指令
坐标功能指令(又称为尺寸功能指令)用来设定机床各坐标之位移量。它一般使用X、Y、Z、U、V、W、P、Q、R、A、B、C等地址符为首,在地址后紧跟着“+”或“一”及一串数字。该数字以系统脉冲当量为单位(如0.01mm/脉冲或以mm为单位),数字前的正负号代表移动方向。
(7)程序段号功能N指令
该指令用以指定程序段名,由N地址及其后的数字组成。其数字大小的顺序不表示加工或控制顺序,只是程序段的识别标记,用作程序段检索、人工查找或宏程序中的无条件转移。因此,在编程时,数字大小的排列可以不连续,也可颠倒,甚至可以部分或全部省略。但习惯上还是按顺序并以5的倍数编程,以备插入新的程序段。如“N10”表示第一条程序段,“N20”表示第二条程序段等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。