数控编程中的有关标准与代码为了满足设计、制造、维修和普及的需要,在输入代码、坐标系统、程序格式、加工指令及辅助功能等方面,国际上已经形成了两种通用标准,即国际标准化组织(ISO)标准和美国电子工业协会(EIA)标准。
我国根据ISO标准制定了JB3050—1982《数字控制机床用七单位编码字符》、JB3051—1982《数字控制机床坐标和运动方向的命名》、JB3832—1985《数控机床轮廓和点位切削加工可变程序段格式》、JB/T3208—1999《数控机床程序段格式中的准备功能G和辅助功能M代码》等。
但是由于各个数控机床生产厂家所用的标准尚未完全统一,其所用的代码、指令及其含义不完全相同,因此在编程时必须按所用数控机床编程手册中的规定进行。
2.1.1 数控机床的坐标系统数控加工是基于数字的加工,刀具与工件的相对位置必须在相应坐标系下才能确定。
数控机床的坐标系统,包括坐标系、坐标原点和运动方向,对于数控工艺制定、编程及操作,是一个十分重要的概念。
1.数控机床的坐标系(1)标准坐标系和运动方向标准坐标系采用右手直角笛卡儿定则。
基本坐标轴为X、Y、Z并构成直角坐标系,相应每个坐标轴的旋转坐标分别为A、B、C,如图2-1所示。
图2-1 数控机床标准坐标系基本坐标轴X、Y、Z的关系及其正方向用右手直角定则判定,拇指为X轴,食指为Y轴,中指为Z轴,围绕X、Y、Z各轴的回转运动及其正方向+A、+B、+C分别用右手螺旋定则判定,拇指为X、Y、Z的正向,四指弯曲的方向为对应的A、B、C的正向。
与+X、+Y、+Z、+A、+B、+C相反的方向相应用带“′”的+X′、+Y′、+Z′、+A′、+B′、+C′表示。
注意:+X′、+Y′、+Z′之间不符合右手直角笛卡儿定则。
由于数控机床各坐标轴既可以是刀具相对于工件运动,也可以是反之,所以ISO标准和我国的JB3052—1982部颁标准都规定:①不论机床的具体结构是工件静止、刀具运动,或是工件运动、刀具静止,在确定坐标系时,一律看作是刀具相对静止的工件运动。
②机床的直线坐标轴X、Y、Z的判定顺序是:先Z轴,再X轴,最后按右手定则判定Y轴。
③坐标轴名(X、Y、Z、A、B、C)不带“′”的表示刀具运动;带“′”的表示工件运动。
④增大工件与刀具之间距离的方向为坐标轴正方向。
(2)坐标轴判定的方法和步骤①Z轴规定平行于机床轴线的坐标轴为Z轴(见图2-2、图2-3、图2-4)。
对于有多个主轴或没有主轴的机床(如刨床),标准规定垂直于工件装夹面的轴为Z轴。
对于能摆动的主轴,若在摆动范围内仅有一个坐标轴平行主轴轴线,则该轴即为Z轴;若在摆动范围内有多个坐标轴平行主轴轴线,则规定其中垂直于工件装夹面的坐标轴为Z轴。
规定刀具远离工件的方向为Z轴的正方向(+Z)。
图2-2 卧式车床图2-3 立式升降台铣床图2-4 卧式铣床②X轴对于工件旋转的机床,X轴的方向是在工件的径向上,且平行于横滑座,刀具离开工件旋转中心的方向为X轴的正方向(见图2-2);对于刀具旋转的立式机床,规定水平方向为X轴方向,且当从刀具(主轴)向立柱看时,X轴正向在右边(见图2-3);对于刀具旋转的卧式机床,规定水平方向仍为X轴方向,且从刀具(主轴)尾端向工件看时,右手所在方向为X轴正方向(见图2-4)。
③Y轴Y轴垂直于X、Z坐标轴。
Y轴的正方向根据X和Z坐标轴的正方向按照右手直角笛卡儿定则来判断。
④旋转运动A、B和CA、B和C表示其轴线分别平行于X、Y和Z坐标的旋转运动。
A、B和C的正方向可按图2-1所示右手螺旋定则确定。
判别实例如图2-5、图2-6所示。
⑤附加坐标轴的定义如果在X、Y、Z坐标以外,还有平行于它们的坐标,可分别指定为U、V、W,见图2-5。
若还有第三组运动,则分别指定为P、Q和R。
⑥主轴正旋转方向与C轴正方向的关系从主轴尾端向前端(装刀具或工件端)看,顺时针方向旋转为主轴正旋转方向。
对于普通卧式数控车床,主轴的正旋转方向与C轴正方向相同。
对于钻、镗、铣、加工中心等机床,主轴的正旋转方向为右旋螺纹进入工件的方向,与C轴正方向相反。
所以不能误认为C轴正方向即为主轴正旋转方向。
图2-5立式5轴数控铣床的坐标轴图2-6 卧式5轴数控铣床的坐标轴2.机床坐标系与工件坐标系(1)机床坐标系与机床原点、机床参考点机床坐标系是机床上固有的坐标系,是用来确定工件坐标系的基本坐标系,是确定刀具(刀架)或工件(工作台)位置的参考系,并建立在机床原点上。
机床坐标系各坐标和运动正方向按前述标准坐标系规定设定。
机床原点又称为机械原点或机床零点,是机床坐标系的原点。
该点是机床上的一个固定的点,其位置是由机床设计和制造单位确定的,通常不允许用户改变。
机床原点是工件坐标系、机床参考点的基准点。
数控车床的机床原点一般设在卡盘前端面或后端面的中心,如图2-7(a)所示。
数控铣床的机床原点,各生产厂不一致,有的设在机床工作台的中心,有的设在进给行程的终点,如图2-7(b)所示。
图2-7 数控机床的机床原点与机床参考点机床参考点是机床坐标系中一个固定不变的位置点,是用于对机床工作台、滑板与刀具相对运动的测量系统进行标定和控制的点。
机床参考点通常设置在机床各轴靠近正向极限的位置(如图2-7),通过减速行程开关粗定位而由零位点脉冲精确定位。
机床参考点对机床原点的坐标是一个已知定值,也就是说,可以根据机床参考点在机床坐标系中的坐标值间接确定机床原点的位置。
在机床接通电源后,通常都要做回零操作,即利用CRT/MDI控制面板上的有关按钮,使刀具或工作台退离到机床参考点。
回零操作又称为返回参考点操作,当返回参考点的工作完成后,显示器即显示出机床参考点在机床坐标系中的坐标值,表明机床坐标系已自动建立。
可以说回零操作是对基准的重新核定,可消除由于种种原因产生的基准偏差。
在数控加工程序中可用相关指令使刀具经过一个中间点自动返回参考点。
机床参考点已由机床制造厂测定后输入数控系统,并且记录在机床说明书中,用户不得更改。
一般数控车床、数控铣床的机床原点和机床参考点位置如图2-7所示。
但有些数控机床机床原点与机床参考点重合。
(2)工件坐标系与工件原点工件坐标系是编程人员在编程时设定的坐标系,也称为编程坐标系。
在进行数控编程时,首先要根据被加工零件的形状特点和尺寸,在零件图纸上建立工件坐标系,使零件上的所有几何元素都有确定的位置,同时也决定了在数控加工时,零件在机床上的安放方向。
工件坐标系的建立,包括坐标原点的选择和坐标轴的确定。
工件坐标系原点也称为工件原点(工件零点)或编程原点(编程零点),一般用G92或G54~G59指令指定。
工件原点是由编程人员根据编程计算方便性、机床调整方便性、对刀方便性、在毛坯上位置确定的方便性等具体情况定义在工件上的几何基准点,一般为零件图上最重要的设计基准点。
编程人员以零件图上的某一固定点为原点建立工件坐标系,编程尺寸均按工件坐标系中的尺寸给定,编程是按工件坐标系进行的。
加工时,工件随夹具安装在机床上,这时测量工件原点与机床原点之间的距离,即工件原点偏置值。
该偏置值可预存到数控系统中,在加工中工件原点偏置值便自动加到工件坐标系上,使机床实现准确的坐标运动。
工件坐标系原点选定后,接着就是坐标轴的确定。
工件坐标系坐标轴确定的原则为:根据工件在机床上的安放方向与位置决定Z轴方向,即工件安放在数控机床上时,工件坐标系的Z轴与机床坐标系Z轴平行,正方向一致,在工件上通常与工件主要定位支撑面垂直;然后,选择零件尺寸较长方向或切削时的主要进给方向为X轴方向,在机床上安放后,其方位与机床坐标系X轴方位平行,正向一致;过原点与X、Z轴垂直的轴为Y轴,并根据右手定则确定Y轴的正方向。
(3)装夹原点有的机床还有一个重要的原点,即装夹原点,是工件在机床上安放时的一个重要参考点。
装夹原点常见于带回转(或摆动)工作台的数控机床,一般是机床工作台上的一个固定点,比如回转工作台回转中心,在零位时其与机床原点的偏移量为定值并可通过精确测量存入CNC系统的原点偏置寄存器中,供CNC系统原点偏置计算用。
卧式加工中心主轴和工作台回零后,其工作台回转中心与机床参考点重合。
3.绝对坐标编程与增量坐标编程数控加工程序中表示几何点的坐标位置有绝对值和增量值两种方式。
绝对值是以“工件原点”为基准来表示坐标位置,如图2-8(a)所示。
增量值是以相对于“前一点”位置坐标尺寸的增量来表示坐标位置,如图2-8(b)所示。
在数控程序中绝对坐标与增量坐标可单独使用,也可在不同程序段上交叉设置使用,数控车床上还可以在同一程序段中混合使用,使用原则主要是看何种方式编程更方便。
图2-8 绝对坐标与增量坐标数控铣床或加工中心大都以G90指令设定程序中X、Y、Z坐标值为绝对值,用G91指令设定X、Y、Z坐标值为增量值。
一般数控车床上绝对值的坐标以地址X、Z表示,增量值的坐标以地址U、W分别表示X、Z轴向的增量,X轴向的坐标不论是绝对值还是增量值,一般都用直径值表示(称为直径编程),这时刀具实际的移动距离是直径值的一半。
2.1.2 程序的格式数控加工程序是由一系列机床数控装置能辨识的指令有序结合而构成的。
程序的组成形式随数控系统功能的强弱而略有不同。
对功能较强的数控系统加工程序可分为主程序和子程序。
但不论是主程序还是子程序,每一个程序都是由程序号、程序段和程序结束符等几个部分组成。
例如:O0001N10 G92 X0 Y0 Z1.0;N20 S300 M03;N30 G90 G00 X-5.5 Y-6;……N160 M30;%以上程序中,“O0001”是程序号,“%”是程序结束符,其间每一行都称为一个程序段(Block),程序段是由一个或若干个字(Word)组成的,如N10、S300、M03、X-5.5、G00等都是一个字,每个字都是数控机床为完成某一特定动作的指令。
字是由表示地址的字母(见表2-1)、数字和符号组成的。
即字母和数字组成字,字组成程序段,程序段组成程序。
每一程序段后面加一结束符号“;(EOB)”,以表示一个程序段的结束。
1.程序号目前的计算机数控(CNC)机床,都具有记忆程序的功能,能将程序存储在内存内。
为了区别不同的程序,在程序的最前端加上程序号码。
程序号码以地址O及1~9999范围内的任意数字组成。
不同的数控系统程序号地址码也有所区别。
通常FANUC系统用“O”,SINUMERIK系统用“%”,而AB8400系统用“P”作为程序号的地址码。
编程时一定要根据说明书的规定作指令,否则系统是不会执行的。
2.程序段程序段的格式可分为地址格式、分隔顺序格式、固定程序段格式和可变程序段格式等。
最常用的是可变程序段格式。
所谓可变程序段格式,就是程序段的长短,随字数和字长(位数)都是可变的。