数控机床的编程基础
3 数控机床的编程基础
3.1 概述
3.1.1 数控编程的作用与目的
3.1.2 数控编程的内容及步骤
在数控机床上加工零件时,要把加工零件的全部工艺过程、工艺参数、刀具运动轨迹、位移量、切削参数(如主轴转速、刀具进给量、切削深度等)以及辅助功能(如换刀、主轴正反转、切削液开关等),按照数控机床规定的指令代码和程序格式编写程序,再把程序输入到数控系统,从而控制机床加工零件。
数控机床程序编制的内容包括:分析工件图样、确定加工工艺过程、数值计算、编写零件加工程序单、程序输入数控系统、校对加工程序和首件试加工。
3.1.3 数控编程的方法
(1)手工编程:整个编程过程由人工完成(包括程序单和制作控制介质)。
(2)自动编程:借助计算机自动完成程序编制的全过程。
自动编程:
定义:编程人员根据零件图纸的要求,按照某个自动编
程系统的规定,将零件的加工信息用较简便的方APT 语言自动编程
自动编程
CAD/CAM集成系统数控编程适用:①②虽不复杂但编程工作量很大的零件(如有数千个(亦称图形交互式自动编程)孔的零件)
③虽不复杂但计算工作量大的零件(如非圆曲线轮
廓的计算)
APT 是一种自动编程工具(Automatically-Programmed Tools)的简称,是一种对工件、刀具的几何形状及刀具相对于工件的运动等进行定义时所用的一种接近于英语的符号语言。将APT 语言编制的零件加工源程序输入计算机,经计算机的APT 语言编程系统编译产生刀位文件(CLDATA file),然后进行数控后置处理,生成数控系统能接受的零件数控加工程序的过程,称APT 语言自动编程。
APT语言自动编程基本原理:
APT语言源程序的组成:初始语句
注释语句及打印刀位数据语句图形定义语句及运算语句刀具形状指定语句刀具起始位置指定语句初始运动语句
容差指定语句
连续切削的运动语句点位运动语句重复命令语句后置处理程序语句程序终了命令语句
图形交互式自动编程
CAD/CAM集成系统是一种以待加工零件CAD 模型为基础的,集有关工艺规划(process planning)及数控编程为一体的自动编程方法。典型的软件如MasterCAM 、UG 等等。
CAD/CAM集成系统数控编程的主要特点是零件的几何形状可在零件设计阶段采用CAD 的几何设计模块建立零件的几何造型,数控编程的过程包括刀具的定义或选择、刀具相对于零件表面的运动方式的定义、切削加工参数的确定、走刀轨迹的生成、加工过程的动态图形仿真显示、程序验证直到后置处理等。这些一般都是在屏幕菜单下以交互方式完成。
图形交互式自动编程流程
3.2 数控编程的代码
国际上数控机床常用代码有ISO 和EIA 两种代码:(1)ISO 代码:国际标准化组织制定的数控国际标准代码,其中的代码、数字和符号共128个,见表3-1。
(2)EIA 代码:美国电子工业学会制定的标准代码,见表3-2。
我国以等效采用和参照采用ISO 标准的方式制定了我国的数控标准。
3.3 程序段格式和程序结构
3.3.1 程序段格式
加工程序由程序名、程序主体和程序结束符号等组成。程序名如:O1000
N10 G54 G40 G49 G80 G90程序主体N20 G091 G28 X0 Y0 Z0;
……
程序结束N150 M30;
常用的程序段格式有:有分隔符的固定顺序程序
段格式及地址符可变程序段格式。
3.3.1 程序段格式
(1)有分隔符的固定顺序程序段格式
如数控线切割机床的“3B ”或“4B ”格式指令。
(2)地址符可变程序段格式
程序由若干个程序段组成,程序中的每一行均为一个程序段。在一个程序段内字的数目及字长度是可变的。如:N#### G## X##.## Y##.## Z##.## …##.## F## S## T## M##
辅准其助备它功功坐能能标程序字:能表示某一功能的、按一定顺序和规定排列的字符集
合称为程序字。如G01、X30.1等等。程序段号运动坐标切削参数
3.3.2 程序结构
程序是由若干个程序段组成;
不同的数控系统,程序段格式不一定相同,格式不合规定,数控装置会发出出错报警;
目前国内外应用最广泛的是程序字地址符可变程序段格式。
3.4 准备功能G 指令和辅助功能M 指令(JB3208-83)
G 指令(准备功能):
用来规定刀具和工件的相对运动插补方式、机床坐标系、坐标平面、刀具补偿、坐标偏置等多种设置,它由G 字母和后跟两位数字组成;G00,G01,……,G99共100个。见表3-4。
模态代码(续效代码):
a )功能保持到被取消或被同样字母表示
的程序指令所代替;
G 代码b )字母相同为一组,一个程序段当中不能
出现同组中任意两代码。
非模代码(非续效代码):
只有在书写了该代码的程序段中才有效。
常用准备功能G指令:
(1)G90、G91: 绝对坐标编程与增量坐标编程指令
(2)G92: 工件坐标系设定指令(亦称编程原点设定指令)
格式:G92 X ▁Y▁Z ▁
式中:X、Y、Z为当前刀位点在工件坐标系中的绝对坐标,由此也就确定了工件的绝对坐标原点位置。G92指令只是设定工
件原点,并不产生运动,为模态指令。无断电记忆功能。
G92X20 Y10Z10;
在使用G92指令前,必须保证
机床处于加工起始点,该点称为
对刀点。
常用准备功能G指令:
(3)G54-G59: 零点偏置指令(亦称编程原点偏置指令)
在某些零件的编程过程中,为了避免尺寸换算,需多次把工件坐标系平移。将工件坐标(编程坐标)原点平移至工件基准处,称为编程原点(或工件零点)的偏置。
G54-G59:数控机床可以预先设定6个(G54-G59)工件坐标系,这些坐标系的坐标原点在机床坐标系中的值可用手动数据输入方式输入,存储在机床存储器内,在机床重开机时仍然存在,一旦指定了G54-G59之一,则该工件坐标系原点即为当前程序原点,后续程序段中的工件绝对坐标均为相对此程序原点的值。
(4)程序单位指令G20与G21
用来规定程序中各个坐标尺寸的单位:
G20—英制单位1英寸=25.4mmG21—公制单位
(5)坐标平面选择指令G17、G18与G19
G17:指定XY平面进行插补加工,刀具半径补偿在X,Y坐标方向上进行。
G18:指定ZX平面进行插补加工,刀具半径补偿在Z,X坐标方向上进行。
G19:指定YZ平面进行插补加工,刀具半径补偿在Y,Z坐标方向上进行。
(6)快速点定位指令G00
使用时,刀具处于非加工状态。
(7)直线插补指令G01
使用时,刀具一般处于加工状
态。
使机床在各坐标平面内执行圆弧运动,加工出圆弧轮廓。G02-顺圆插补;G03-逆圆插补
。方向判别:沿垂直于圆弧所在平面(如XY平面)的坐标轴向负方向(-Z)看,刀具相对于工件的转动方向是顺时针方向为G02,逆时针方向为G03。
圆弧插补指令格式:(XY平面为例)
①用圆弧终点坐标和圆心坐标表示。
G02
X ▁Y ▁I ▁J ▁F ▁;G03 指令格式:
式中:X、Y是圆弧终点坐标,可以用绝对值,也可以用终点相对于起点的增量值,取决于程序段中的G90、G91指令。I、J是圆心坐标,一般均用圆心相对于起点的增量坐标来表示,而不受G90控制。对于XZ平面,坐标参数相应为X、Z、I、K。YZ平面则为Y、Z、J、K。
(8)圆弧插补指令G02、G03
②用圆弧终点坐标和圆弧半径R表示。
G02
指令格式:X ▁Y ▁R ▁F ▁;G03
式中:R为圆弧半径。用+R表示小于或等于180度的圆
弧,用-R表示大于180度的圆弧。
(9)刀具半径补偿指令G40、G41、G42
指令格式:
G40 ;/刀具半径补偿取消
G41 ;/刀具在工件左侧偏置的刀具半径补偿
G42 ;/刀具在工件右侧偏置的刀具半径补偿
说明:G41/G42中的左侧或右侧是指沿切削方向看,刀
具在工件的左侧或右侧。
(10)刀具长度补偿指令G43、G44、G49
•用G43(正向偏置) ,G44(负向偏置) 指定偏置的方向。
•无论是绝对指令还是增量指令,由H 代码指定的已存入偏置存储器中的偏置值在G43时与刀具轴向移动指令的终点坐标值相加,在G44时则是从刀具轴向移动指令的终点坐标值中减去。计算后的坐标值成为刀具移动的终点坐标。
•偏置号可用H00-H99来指定。偏置值与偏置号对应,通过MDI/CRT预先设置在偏置存储器中。对应偏置号00即H00的偏置值通常为0,因此对应于
H00的偏置量不设定。
•要取消刀具长度补偿时用指令G49或H00。
•G43、G44、G49都是模态代码,可相互注销。
刀具功能T:用于选择刀库中的刀具
a. 格式1(数控车床用):T+四位数字组成。前两位数字代表刀具号,后两位数字代表刀具偏置地址号。如:
T0100—调用“01”号刀具,刀具的偏置量存放在00暂存器中。“00”地址中通常存放的数字为“0”。
b. 格式2(加工中心用):M06
T+二位以内数字组成调用刀具号.
进给功能F:用于指定刀具的进给速度
格式:F+四位以内数字组成,可含小数点。F 的单位可为mm/min或mm/r,由G 功能字来指定。FANUC 0iM:G94-mm/min;G95-mm/r
进给速度F 的计算---
a. 对于开环系统:F=60δf (mm/min)
其中,f-走步频率、δ-脉冲当量,mm;
b.对于闭环和半闭环系统,采用数据采样插补法进行插补计算,速度计算是根据编程的F值,计算每个采样周期的轮廓步长。
主轴功能S:用于指定主轴转速
格式:S+若干个数字组成。当为主轴伺服控制系统时,S 的单位可为m/min或r/min,由G 功能字来指定。如:
G96 S200;/表示切削速度为200m/min
G97 S200;/取消恒线速度控制,切削速度为200r/min
(12)固定循环指令
1.钻孔循环指令
2.镗孔循环指令
3.攻丝循环指令
(12)固定循环指令
1.钻孔循环指令
①高速排屑深孔钻循环指令G73 :
G73 X_Y_Z_R_Q_F_ K_; 式中:
X 、Y 、Z 为孔底的坐标值;R_:R 点平面的Z 坐标值;
Q_:每次切削进给的切削深度;F_:切削进给速度;
K_:重复钻孔次数
(省略为1次)。深孔:孔深与孔径比>5的孔
(12)固定循环指令
1.钻孔循环指令
①高速排屑深孔钻循环指令G73 :
G73 X_Y_Z_R_Q_F_ K_; 用于塑性材料的深孔钻削,Z 轴方向的间断进给有利于深孔加工过程中断屑与排屑。R 指定R 点平面的Z 坐标值,指令Q 为增量值且为正值。图示中退刀距离d 由数控系统内部设
定。其动作如右图所示:
加工结束后,用G80指令取消固定循环。
(12)固定循环指令
1.钻孔循环指令
②钻(浅)孔指令G81与锪孔指令G82G81的指令格式为:
G81 X_ Y_Z_ R_ F_ K_;G82的指令格式为:
G82 X_ Y_ Z_ R_ P_ F_ K_;G82与G81指令相比,唯一不同之处是G82指令在孔底增加了暂停,适用于锪孔、镗阶梯孔,提高了孔台阶表面的加工质量,而G81指令只用于一般要求的钻孔。G81加工动作如右图:
加工结束后,用G80指令取消固定循环。R 点浅孔:孔深与孔径比<3的孔
(12)固定循环指令
1.钻孔循环指令
③深孔往复排屑钻循环指令G83 :G83 X_ Y_ Z_ R_ Q_ F_ K_;指令中各控制字含义与前同。孔加工动作如右图所示。与G73指令略有不同的是每次刀具间歇进给后回退至R点平面,将切屑带出孔外。这种退刀方式排屑畅通,适宜加工脆性材料的深孔。深孔:孔深与孔径比>5的孔d
d d d
加工结束后,用G80指令取消固定循环。
(12)固定循环指令2.镗孔循环指令
①
主轴正转
精镗孔G76指令:
G76 X_ Y_ Z_ R_ Q_ P_ F_ K_;孔加工动作如右图所示。在孔底主轴定向停止后,刀头按地址Q 所指定的偏移量移动,然后提刀。采用这种镗孔方式可以高精度、高效率地完成镗孔加工而不划伤内孔表面。
主轴准停
主轴正转
②镗孔循环指令G85:
G85 X_Y_Z_R_F_K_;
G85的动作与G81类似。在返回行程中,从段为切削进给,以保证孔壁光滑。其循环动作如下图所示:
G85
G85
G85适宜于弹性变形较大的镗孔或铰孔。
R 点平面
③镗孔循环指令G86:
G86 X_Y_Z_R_F_K_;
G86在到达孔底位置后,主轴停止,并快速退出。其加工过程如下图所示:
主轴正转
刀具进给至孔底后,主轴停止,返回到R 点(G99)或起始点
(G98)后主轴再重新启动。
快速退出
工作进给
④反镗孔G87指令:
G98 G87 X_ Y_ Z_ R_ Q_ P_ F_
刀具运动到起始点B(X,Y)后,主轴准停,刀具沿刀尖的反方向偏移q值,然后快速运动到孔底位置(R点),接着沿刀尖正方向偏移q值到E点,主轴正转,刀具向上进给运动,到Z点时主轴准停,刀具沿刀尖的反方向偏移q值,快退,接着沿行下一段程序。
(G 98E 的情况)
R 点 Z 点
刀尖正方向偏移到B点,主轴正转,本加工循环结束,继续执
(12)固定循环指令3.攻丝循环指令
①攻左牙螺纹循环指令G74
G74 X_Y_Z_R_F_K_;先使主轴反转,执行攻丝。当到达孔底时,主轴转换为正转,同时向Z轴正方向退回至R点,退至R点后主轴恢复原来的反转。其加工动作如右图所示:
攻螺纹的进给速度F=Pn; P为导程,n
为主轴转速
(12)固定循环指令3.攻丝循环指令
②攻右牙螺纹循环指令G84:
G84 X_Y_Z_R_F_K_;动作与G74类似,但主轴旋转方向相反。加工动作如右图所示:
攻丝与钻孔加工不同的是攻螺纹结束后的返回过程不是快速运动,而是以进给速度反转退出。
攻螺纹的进给速度F=Pn; P为导程,n 为主轴转速
(13)螺纹切削指令
(13)螺纹切削指令
②.G92-螺纹切削循环
格式:G92 X(U)_ Z(W)_ R_ F_;
R -螺纹部分半径之差:X 向切削起始点坐标小于切削终点坐标时,R 取负;反之取正。
R=0
(13)螺纹切削指令③复合螺纹切削循环G76
复合螺纹切削循环指令G76:与G32、G92相比,可缩短程序、改善刀具切削条件(斜进法进刀)。其指令格式:
m: 精加工重复次数;
r:倒角量,用两位数字指定;α:刀尖角度,用两位数指定;Δdmin:最小切削深度,µm;d:精加工余量,µm ;
X(U)、Z(W):螺纹终点坐标,带小数点为mm,否则为µm ;
I:圆锥螺纹半径差,I=0为圆柱螺纹。x向切削始点坐标小于终点坐标时取负;k:螺纹牙高(X轴方向半径值),µm ;Δd:第一次切入量(半径值指定);f:螺纹导程。
(14)内外圆柱/圆锥切削循环指令G71-纵切削粗车复合循环
格式:G71 U U W F
S
T
;
其中:△d 为粗加工每次切深(半径值编程);e 为退刀量;
ns 为精加工程序组的第一个程序段的顺序号;
nf 为精加工程序组的最后一个程序段的顺序号;△u 为X 轴方向精加工余量(直径值) ;△w 为Z 轴方向精加工余量;G71适用于圆柱毛坯的轴向粗车,是沿着平行于Z轴进行切削循环加工的。
(14)内外圆柱/圆锥切削循环指令
G71-纵切削粗车复合循环
格式:G71 U U W F S T ;
注意:
a. ns→nf精加工程序段中的F、S、T功能,即使被指定也对粗车循环无效;
b. 在序号为ns 的程序段中指定A 及A ′间的刀具路径,且在该段中不能指定沿Z 轴方向移动,刀具移动指令必须垂直于Z 轴
方向;
c. 从A ′到B 的刀具轨迹在X 轴及Z 轴
必须单调增加或单调减少;
d. 粗车循环最后一刀按ns 到nf 间精车
程序段轨迹切削,留余量△u 、△w 。
(14)内外圆柱/圆锥切削循环指令
G72-横切削粗车复合循环
格式:G72 W U W F S T ;
其中:△d 为Z 轴方向切深;e 为退刀量;
ns 为精加工程序组的第一个程序段的顺序号;
nf 为精加工程序组的最后一个程序段的顺序号;
△u 为X 轴方向精加工余量(直径值) ;
△w 为Z 轴方向精加工余量;
G72适用于圆柱毛坯的端面方向粗车,是沿着平行于
X轴进行切削循环加工的。
(14)内外圆柱/圆锥切削循环指令
G72-横切削粗车复合循环
格式:G72 W △d R △e ;
G72 P ns Q nfU △u W △w F S T ;
注意:
a. ns→nf程序段中的F、S、T功能,即使被指定也对粗车循环无效;
b. 在序号为ns 的程序段中指定A 及A ′间的刀具路径,且在该段中不能指定沿X 轴方向移动,刀具移动指令必须垂直于X 轴方向;c. 从A ′到B 的刀具轨迹在X 轴及Z 轴A' 必须单调增加或单调减少;
d. 粗车循环最后一刀按ns 到nf 间精车
程序段轨迹切削,留余量△u 、△w 。
(14)内外圆柱/圆锥切削循环指令
精加工复合循环(G70)
当用G71,G72、G73粗加工完毕后,用G70代码指定精加工循环,切除粗加工中留下的余量。其指令格式为:;
其中:ns为精加工循环的第一个程序段的顺序号;nf为精加工循环的最后一个程序段的顺序号。
注意:
a.精车过程中的F、S、T在程序段ns到nf间指定;
b.在车削循环期间,刀具半径补偿功能有效;
c.在程序段ns到nf间不能调用子程序。
(14)内外圆柱/圆锥切削循环指令
精加工复合循环(G70)
精加工时,G71、G72、G73程序段中的
F、S、T指令无效,只有在ns到nf程序段
中的F、S、T指令才有效。
3.4.2 辅助功能M 指令
辅助功能指令主要是控制机床开/关功能的指令,如主轴的启停、冷却液的开停等等辅助动作。M功能常因生产厂及机床的结构和规格不同而各异。下面为常用的M代码:
(1)M00:程序停止
(2)M01:选择停止
(3)M02 :程序结束
(4)M03、M04、M05:主轴旋转方向指令
(5)M06:换刀指令
(6)M08:冷却液开
(7)M09:冷却液关
(8)M30:程序结束
(9)M98:子程序调用
(10)M99:子程序返回当同一程序段中同时有G 代码和M 代码时,M 代码有段前执行和段后执行之分。
本章测验
例3-3 按FANUC 0iTA数控系统要求编程加工下图所示零件。编A
B
例3-4 按FANUC 0iM数控系统要求编程,在加工中心上加工下图所示零件的1-4、5孔。
13
5
24