1、57第一篇:编程 51. 综述 51.1 可编程功能 51.2 准备功能 51.3 辅助功能 72. 插补功能 72.1 快速定位(G00) 72.2 直线插补(G01) 82.3 圆弧插补(G02/G03) 93. 进给功能 103.1 进给速度 103.2 自动加减速控制 103.3 切削方式(G64) 103.4 精确停止(G09) 及精确停止方式 (G61) 113.5 暂停( G04 ) 114. 参考点和坐标系 114.1 机床坐标系 114.2 关于参考点的指令( G27、 G28、G29 及 G30 ) 114.2.1 自动返回参考点(G28) 114.2.2 从参考点自动返回
2、(G29) 124.2.3 参考点返回检查(G27) 124.2.4 返回第二参考点(G30) 124.3 工件坐标系 134.3.1 选用机床坐标系(G53) 134.3.2 使用预置的工件坐标系(G54G59) 134.3.3 可编程工件坐标系(G92) 144.3.4 局部坐标系(G52) 144.4 平面选择 155. 坐标值和尺寸单位 155.1 绝对值和增量值编程(G90 和 G91) 156. 辅助功能 156.1 M 代码 156.1.1 程序控制用 M 代码 166.1.2 其它 M 代码 166.2 T 代码 166.3 主轴转速指令(S 代码) 166.4 刚性攻丝指令(
3、M29) 177. 程序结构 177.1 程序结构 177.1.1 纸带程序起始符(Tape Start) 177.1.2 前导(Leader Section) 177.1.3 程序起始符(Program Start) 177.1.4 程序正文(Program Section) 177.1.5 注释(Comment Section) 177.1.6 程序结束符(Program End) 177.1.7 纸带程序结束符(Tape End) 18577.2 程序正文结构 187.2.1 地址和词 187.2.2 程序段结构 187.2.3 主程序和子程序 198. 简化编程功能 218.1 孔加工
4、固定循环(G73,G74,G76,G80G89) 218.1.1 G73(高速深孔钻削循环) 248.1.2 G74(左螺纹攻丝循环) 258.1.3 G76(精镗 循环) 258.1.4 G80(取消固定循 环) 268.1.5 G81(钻削循 环) 268.1.6 G82(钻削循 环,粗镗削循环) 278.1.7 G83(深孔 钻削循环) 278.1.8 G84(攻丝 循环) 278.1.9 G85(镗削循 环) 288.1.10 G86(镗 削循环) 288.1.11 G87(反 镗削循环) 298.1.12 G88(镗 削循环) 298.1.13 G89(镗 削循环) 308.1.14
5、 刚性攻丝方式 308.1.15 使用孔加工固定循环的注意事项 319. 刀具补偿功能 319.1 刀具长度补偿(G43,G44,G49) 319.2 刀具半径补偿 329.2.1 补偿向量 329.2.2 补偿值 329.2.3 平面选择 329.2.4 G40、G41 和 G42 329.2.5 使用刀具半径补偿的注意事项 33第二篇:NC 操作 341. 自动执行程序的操作 341.1 CRT/MDI 操作面板 341.1.1 软件键 341.1.2 系统操作键 341.1.3 数据输入键 341.1.4 光标移动键 341.1.5 编辑键和输入键 341.1.6 NC 功能键 341.
6、1.6 电源开关按钮 351.2 MDI 方式下执行可编程指令 351.3 自动运行方式下执行加工程序 351.3.1 启动运行程序 351.3.2 停止运行程序 352. 程序验证和安全功能 362.1 程序验证功能 362.1.1 机床闭锁 362.1.2 Z 轴闭锁 36572.1.3 自动进给的倍率 362.1.4 快速进给的倍率 362.1.5 试运行 362.1.6 单程序段运行 362.2 安全功能 362.2.1 紧急停止 362.2.2 超程检查 363. 零件程序的输入、编辑和存储 373.1 新程序的注册 373.2 搜索并调出程序 373.3 插入一段程序 373.4
7、删除一段程序 373.5 修改一个词 383.6 搜索一个词 384. 数据的显示和设定 384.1 刀具偏置值的显示和输入 384.2 G54G59 工件坐标系的 显示和输入 394.3 NC 参数的显示和设定 394.4 刀具表的修改 395. 显示功能 405.1 程序显示 405.2 当前位置显示 406.在线加工功能 406.1 有关参数的修改: 406.2 有关在线加工的操作. 417.机床参数的输入 输出 418.用户宏 B 功能 448.1 变量 448.1.1 变量概述 448.1.2 系统变量 458.2 算术和逻辑操作 508.3 分支和循环语句 518.3.1 无条件分
8、支(GOTO 语句) 518.3.2 条件分支(IF 语句) 528.3.3 循环(WHILE 语句) 528.3.4 注意 538.4 宏调用 538.4.1 简单调用(G65) 548.4.2、模调用(G66、G67) 558.4.3 G 码调用宏 568.4.4、M 码调用宏 568.4.5 M 码调用子程序 578.4.6 T 码调用子程序 578.5 附加说明 57附录 1:报警代码表 59571. 程序报警(P/S 报警) 592. 伺服报警 603. 超程报警 614. 过热报警及系统报警 61附录 2:CRT/MDI 面板图 6257第一篇:编程1. 综述1.1 可编程功能通过
9、编程并运行这些程序而使数控机床能够实现的功能我们称之为可编程功能。一般可编程功能分为两类:一类用来实现刀具轨迹控制即各进给轴的运动,如直线/圆弧插补、进给 控制、坐标系原点偏置及变换、尺寸单位设 定、刀具偏置及补偿等,这一类功能被称为准备功能,以字母 G 以及两位数字 组成,也被称为 G 代码。另一 类功能被称为辅助功能,用来完成程序的执 行控制、主 轴控制、刀具控制、辅助设备控制等功能。在这些辅助功能中,Tx x 用于选刀,Sx x x x 用于控制主轴转速。其它功能由以字母 M 与两位数字组成的 M 代码来实现。1.2 准备功能本机床使用的所有准备功能见表 1.1:表 1.1G 代码分组
10、功能*G00 01 定位(快速移动)*G01 01 直线插补(进给速度)G02 01 顺时针圆弧插补G03 01 逆时针圆弧插补G04 00 暂停,精确停止G09 00 精确停止*G17 02 选择 X Y 平面G18 02 选择 Z X 平面G19 02 选择 Y Z 平面G27 00 返回并检查参考点G28 00 返回参考点G29 00 从参考点返回G30 00 返回第二参考点*G40 07 取消刀具半径补偿G41 07 左侧刀具半径补偿G42 07 右侧刀具半径补偿G43 08 刀具长度补偿G44 08 刀具长度补偿*G49 08 取消刀具长度补偿G52 00 设置局部坐标系G53 00
11、 选择机床坐标系*G54 14 选用 1 号工件坐标 系G55 14 选用 2 号工件坐标 系57G56 14 选用 3 号工件坐标 系G57 14 选用 4 号工件坐标 系G58 14 选用 5 号工件坐标 系G59 14 选用 6 号工件坐标 系G60 00 单一方向定位G61 15 精确停止方式*G64 15 切削方式G65 00 宏程序调用G66 12 模态宏程序调用*G67 12 模态宏程序调用取消G73 09 深孔钻削固定循环G74 09 反螺纹攻丝固定循环G76 09 精镗固定循环*G80 09 取消固定循环G81 09 钻削固定循环G82 09 钻削固定循环G83 09 深孔钻
12、削固定循环G84 09 攻丝固定循环G85 09 镗削固定循环G86 09 镗削固定循环G87 09 反镗固定循环G88 09 镗削固定循环G89 09 镗削固定循环*G90 03 绝对值指令方式*G91 03 增量值指令方式G92 00 工件零点设定*G98 10 固定循环返回初始点G99 10 固定循环返回 R 点从表 1.1 中我们可以看到,G 代码被分为了不同的组 ,这是由于大多数的 G 代码是模态的,所 谓模态 G 代码,是指这些 G 代码不只在当前的程序段中起作用,而且在以后的程序段中一直起作用,直到程序中出现另一个同组的 G 代码为止,同组的模态 G 代码控制同一个目标但起不同的
13、作用,它们之间是不相容的。00 组的 G 代码是非模态的, 这些 G 代码只在它 们所在的程序段中起作用。标有*号的 G 代码是上电时的初始状态。对于 G01 和 G00、G90 和 G91 上电时的初始状态由参数决定。如果程序中出现了未列在上表中的 G 代码,CNC 会显示 10 号报警。同一程序段中可以有几个 G 代码出现,但当两个或两个以上的同组 G 代码出现时,最后出现的一个(同组的)G 代码有效。在固定循环模态下,任何一个 01 组的 G 代码都将使固定循 环模态自动取消,成为G80 模态。1.3 辅助功能本机床用 S 代码来对主轴转速进行编程,用 T 代码来进行选刀编程,其它可编程
14、辅助功能由 M 代码来实现,本机床可供用户使用的 M 代码列表如下(表 1.2):57表 1.2M 代 码 功 能M00 程序停止M01 条件程序停止M02 程序结束M03 主轴正转M04 主轴反转M05 主轴停止M06 刀具交换M08 冷却开M09 冷却关M18 主轴定向解除M19 主轴定向M29 刚性攻丝M30 程序结束并返回程序头M98 调用子程序M99 子程序结束返回重复执行一般地,一个程序段中,M 代码最多可以有一个。2. 插补功能2.1 快速定位(G00)G00 给定一个位置。格式:G00 IP;IP在本说明书中代表任意不超过三个进给轴地址的组合,当然,每个地址后面都会有一个数字作
15、为赋给该地址的值,一般机床有三个或四个进给轴即 X,Y,Z ,A 所以 IP可以代表如 X12. Y119. Z-37. 或 X287.3 Z73.5 A45. 等等内容。G00 这条指令所作的就是使刀具以快速的速率移动到 IP指定的位置,被指令的各轴之间的运动是互不相关的,也就是说刀具移动的轨迹不一定是一条直线。G00 指令下,快速倍率为 100时,各轴 运动的速度:X 、Y、Z 轴均为 15m/min,该速度不受当前 F 值的控制。当各运动轴到达运动终 点并发出位置到达信号后,CNC 认为该程序段已经结束,并转向执行下一程序段。位置到达信号:当运动轴到达的位置与指令位置之间的距离小于参数指
16、定的到位宽度时,CNC 认为该轴已到达指令位置,并发出一个相应信号即该轴的位置到达信号。G00 编程举例:起始点位置为 X-50,Y-75. ;指令 G00 X150. Y25.;将使刀具走出下 图所示轨迹(图2.1)。57图 2.12.2 直线插补(G01)格式:G01 IP-F-;G01 指令使当前的插 补模态成为直线插补模态,刀具从当前位置移动到 IP 指定的位置,其轨迹是一条直线,F-指定了刀具沿直线运动的速度,单位为 mm/min(X、Y、Z 轴)。该指令是我们最常用的指令之一。假设当前刀具所在点为 X-50. Y-75.,则如下程序段N1 G01 X150. Y25. F100 ;
17、N2 X50. Y75.;将使刀具走出如下图(图 2.2)所示轨迹。大家可以看到,程序段 N2 并没有指令 G01,由于 G01 指令为模态指令,所以 N1 程序段中所指令的 G01 在 N2 程序段中继续有效,同样地,指令 F100 在 N2 段也继续有效,即刀具沿两段直线的运动速度都是 100mm/min。2.3 圆弧插补(G02/G03)下面所列的指令可以使刀具沿圆弧轨迹运动:在 X-Y 平面G17 G02 / G03 X_ Y_ ( I_ J_ ) / R_ F_ ;在 X-Z 平面G18 G02 / G03 X_ Z_ ( I_ K_ ) / R_ F_ ;57在 Y-Z 平面G19
18、 G02 / G03 Y_ Z_ ( J_ K_ ) / R_ F_ ;序号 数据内容 指 令 含 义G17 指定 X-Y 平面上的 圆弧插补G18 指定 X-Z 平面上的圆弧插补1 平面选择G19 指定 Y-Z 平面上的圆弧插补2 G02 顺时针方向的圆弧插补圆弧方向G03 逆时针方向的圆弧插补G90 模态 X、Y、Z 中的两 轴指令 当前工件坐标系中终点位置的坐标值3 终点位置 G91 模态 X、Y、Z 中的两 轴指令 从起点到终点的距离有方向的4 起点到圆心的距离 I、J、K 中的两 轴指令 从起点到圆心的距离有方向的圆弧半径 R 圆弧半径5 进给率 F 沿圆弧运动的速度在这里,我们所讲
19、的圆弧的方向,对于 X-Y 平面来说,是由 Z 轴的正向往 Z 轴的负向看 X-Y 平面所看到的 圆 弧方向,同 样,对于 X-Z 平面或 Y-Z 平面来说,观测的方向则应该是从 Y 轴 或 X 轴的正向到 Y 轴或 X 轴的负向(适用于右手坐标系如下图所示)。圆弧的终点由地址 X、Y 和 Z 来确定。在 G90 模态,即绝对值模态下,地址 X、Y、Z给出了圆弧终点在当前坐标系中的坐标值;在 G91 模态,即增量值模态下,地址 X、Y、Z给出的则是在各坐标轴方向上当前刀具所在点到终点的距离。在 X 方向,地址 I 给定了当前刀具所在点到圆心的距离,在 Y 和 Z 方向,当前刀具所在点到圆心的距
20、离分别由地址 J 和 K 来给定, I、J、K 的值的符号由它们的方向来确定。对一段圆弧进行编程,除了用给定终点位置和圆心位置的方法外,我们还可以用给定半径和终点位置的方法对一段圆弧进行编程,用地址 R 来给定半径值,替代给定圆心位置的地址。R 的值有正负之分,一个正的 R 值用来编程一段小于 180 度的圆弧,一个负的 R 值编 程的 则是一段大于 180 度的圆弧。编程一个整圆只能使用给定圆心的方法。3. 进给功能3.1 进给速度上一章,我们讲述了基本插补命令的用法以及一些相关指令,同时,也涉及到了一些与进给速度有关的一些知识,在本节中,我 们将归纳 性地讨论这些问题。数控机床的进给一般地
21、可以分为两类:快速定位进给及切削进给。57快速定位进给在指令 G00、手动快速移动以及固定循环时的快速进给和点位之间的运动时出现。快速定位 进给的速度是由机床参数给定的,并可由快速倍率开关加上 100、 50、25及 F0 的倍率。快速倍率开关在 100的位置时,快速定位进给的速度对于 X、Y、Z 三轴来说,都是 15000mm/min。快速倍率开关在 F0 的位置时,X、Y 、Z 三轴快速定位进给速度是 2000mm/min。快速定位 进给时 ,参与进给的各轴之间的运动是互不相关的,分别以自己给定的速度运动,一般来 说,刀具的轨迹是一条折线。切削进给出现在 G01、G02/03 以及固定循环
22、中的加工进给的情况下,切削进给的速度由地址 F 给定。在加工程序中, F 是一个模态的值,即在给定一个新的 F 值之前,原来编程的 F 值一直有效。CNC 系统刚刚通电时, F 的值由 549 号参数给定,该参数在机床出厂时被设为 100mm/min。切削进给的速度是一个有方向的量,它的方向是刀具运 动的方向,模(即速度的大小)为 F 的值。参与进给的各轴 之间是插补的关系,它们的运动的合成即是切削进给运动。F 的最大值由 527 号参数控制,该参数在机床出厂时被设为 4000mm/min,如果编程的 F 值 大于此值,实际的进给切削速度也将保持为 4000mm/min。切削进给的速度还可以由
23、操作面板上的进给倍率开关来控制,实际的切削进给速度应该为 F 的给定值与倍率开关给定倍率的乘积。3.2 自动加减速控制自动加减速控制作用于各轴运动的起动和停止的过程中,以减小冲击并使得起动和停止的过程平稳,为了同 样的目的自动加减速控制也作用于进给速度变换的过程中。对于不同的进给方式,NC 使用了不同的加减速控制方式:快速定位进给:使用线性加减速控制,各轴的加减速时间常数由参数控制522525号参数 。切削进给:用指数加减速控制,加减速时间常数由 530 号参数控制。手动进给:使用指数加减速控制,各轴的加减速时间常数也由参数控制,参数号为601604。3.3 切削方式(G64)一般地,为了有一
24、个好的切削条件,我 们希望刀具在加工工件时要保持线速度的恒定,但我们知道自动加减速控制作用于每一段切削进给过程的开始和结束,那么在两个程序段之间的衔接处如何使刀具保持恒定的线速度呢?在切削方式 G64 模态下,两个切削进给程序段之间的过渡是这样的:在前一个运动接近指令位置并开始减速时,后一个运动开始加速,这样就可以在两个插补程序段之间保持恒定的线速度。可以看出在 G64模态下,切削进给时,NC 并不检查每个程序段执行 时各轴的位置到达信号,并且在两个切削进给程序段的衔接处使刀具走出一个小小的圆角。3.4 精确停止(G09)及精确停止方式(G61)如果在一个切削进给的程序段中有 G09 指令给出,则刀具接近指令位置 时会减速,NC 检测到位置到达信号后才会继续执行下一程序段。这样,在两个程序段之间的衔接处刀具将走出一个非常尖锐的角,所以需要加工非常尖锐的角时可以使用这条指令。使用 G61 可以 实现同样的功能,G61 与 G09 的区别就是 G09 是一条非模态的指令,而G61 是模态的指令,即 G09 只能在它所在的程序段中起作用,不影响模态的变化,而 G61可以在它以后的程序段中一直起作用,直到程序中出现 G64 或 G63 为止。