模块三数控铣床编程_第1页
模块三数控铣床编程_第2页
模块三数控铣床编程_第3页
模块三数控铣床编程_第4页
模块三数控铣床编程_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模模块块三三 数控数控铣铣床床编编程程 本课题学习数控铣床编程 核心就是为了掌握数控铣削技术 并且能够运用它进行数控加工 以 FANUC 0MC 系统为主 学习数控铣床编程 并通过大量训练项目 帮助读者掌握数控铣床编程技术 一 建立工件坐标系 坐标尺寸和平面选择 一 与坐标系有关的编程指令 1 用 G92 指令建立工件坐标系 编程格式 G92 X Y Z G92 指令是将加工原点设定在相对于刀具起始点的某一空间点上 这一指令通常出现在 程序的开头 该指令只改变当前位置的用户坐标 不产生任何机床移动 该坐标系在机床 重开机时消失 若程序格式设置为 G92 X20 0 Y10 0 Z10 0 其确立的工件原点在距离刀具起始点 X 20 Y 10 Z 10 的位置上 如图 2 68 所示 图 2 68 G92 设定工件坐标系 2 用 G54 G59 设置程序原点 这些指令可以分别用来建立相应的加工坐标系 编程格式 G54 G90 G00 G01 X Y Z F 该指令执行后 所有坐标值指定的坐标尺寸都是选定的工件加工坐标系中的位置 1 6 学习目标 知识目标 学习和使用 FANUC 数控系统的各种指令 能力目标 能够对铣削零件进行程序的编制与加工 动脑筋 如刀具依然在工件的该位置 该 指令写成 G92 X0 Y0 Z0 则工件原点设 在哪 号工件加工坐标系是通过 CRT MDI 方式设置的 在机床重开机时仍然存在 在程序中可 以分别选取其中之一使用 一旦指定了 G54 G59 之一 则该工件坐标系原点即为当前程 序原点 后续程序段中的工件绝对坐标均为相对此程序原点的值 例如以下程序 N01 G54 G90 G00 X30 0 Y40 0 N02 G59 N03 G00 X30 0 Y40 0 执行 N01 时 系统会选定 G54 坐标系作为当前工件坐标系 然后再执行 G00 移动到该坐 标中的 A 点 执行 N02 句时 系统又会选择 G59 坐标系作为当前工件坐标系 执行 N03 句时 机床就会移动到刚指定的 G59 坐标系中的 B 点 见图 2 69 图 2 69 工件坐标系的使用 G92 指令与 G54 G59 指令都是用于设定工件坐标系的 但它们在使用中是有区别 的 G92 指令是通过程序来设定工件坐标系的 G92 所设定的加工坐标原点是与当前刀具 所在位置有关的 这一加工原点在机床坐标系中的位置是随当前刀具的不同而改变的 G54 G59 指令是通过 CRT MDI 在设置参数方式下设定工件坐标系的 一经设定 加工 坐标原点在机床坐标系中的位置是不变的 它与刀具的当前位置无关 除非再通过 CRT MDI 方式更改 G92 指令程序段只是设定工件坐标系 而不产生任何动作 G54 G59 指令程序段则可以和 G00 G01 指令组合 在选定的工件坐标系中进行位移 3 选择机床坐标系 G53 编程格式 G53 G90 X Y Z G53 指令使刀具快速定位到机床坐标系中的指定位置上 式中 X Y Z 后的值为机床坐 标系中的坐标值 其尺寸均为负值 例 G53 G90 X 100 Y 100 Z 20 则执行后刀具在机床坐标系中的位置如图 2 70 所示 图 2 70 G53 选择机床坐标系 二 坐标尺寸 数控系统的位置 运动控制指令可采用两种坐标方式进行编程 即采用绝对坐标尺寸编程 和增量坐标尺寸编程 1 绝对坐标尺寸编程 G90 G90 指令规定在编程时按绝对值方式输入坐标 即移动指令终点的坐标值 x y z 都是 以工件坐标系坐标原点 程序零点 为基准来计算 见图 2 71 图 2 71 G90 编程 资料卡 使用 G53 需注意以下事项 1 G53 是非模态指令 仅在本程序段有效 2 G53 指令在 G90 状态下有效 在 G91 状态下无效 3 G53 指令取消刀具半径补偿和长度补偿 4 执行 G53 指令前必须以手动或自动完成机床回零操作 铣刀 程序原点 铣刀从 A 点快速移动到 B 点用绝对 坐标尺寸编程 G90 G00 X92 Y60 Z20 2 增量坐标尺寸编程 G91 G91 指令规定在编程时按增量值方式输入坐标 即移动指令终点的坐标值 x y z 都是以 起始点为基准来计算 再根据终点相对于始点的方向判断正负 与坐标轴同向取正 反向取负 见图 2 72 图 2 72 G91 编程 三 平面选择指令 G17 G18 G19 G17 选择 XY 平面编程 G18 选择 XZ 平面编程 G19 选择 YZ 平面编程 平面指定指在铣削过程中指定圆弧插补平面和刀具补偿平面 铣削时在 XY 平面内进行 圆弧插补 则应选用准备功能 G17 在 XZ 平面内进行圆弧插补 应选用准备功能 G18 在 YZ 平面内进行插补加工 则需选用准备功能 G19 如图 2 73 所示 平面指定与坐标轴移动无关 不管选用哪个平面 各坐标轴的移动指令均会执行 图 2 73 平面选择 二 主轴控制 冷却控制和进给控制 一 主轴控制 1 主轴旋转方向的确定 一般规定沿主轴中心线 垂直于工件表面往下看 来判断主轴旋转方向 这种方法可能很 不实用 常见标准视图是从操作人员的位置 面向立式机床的前部观看 基于这种视图 可以 铣刀 程序原点 铣刀从 A 点快速移动到 B 点用增量 坐标尺寸编程 G91 G00 X 58 Y 40 Z 30 准确地使用跟主轴选择相关的术语 顺时针 CW 和逆时针 CCW 如图 2 74 所示 右旋刀具 顺时针 右旋刀具 逆时针 图 2 74 主轴旋转方向 图中所示为立式加工中心的前视图 2 方向说明与主轴启动 如果主轴顺时针旋转 则程序中使用 M03 如果是逆时针旋转 则程序中使用 M04 程序中 的 S 依赖于主轴旋转功能 M03 或 M04 所以他们在 CNC 程序中作用非常重要 主轴地址 S 和主轴旋转功能 M03 或 M04 必须同时使用 只使用其中一个对控制器没有 任何意义 尤其是在接通机床电源时 主轴转速和主轴旋转编程至少有两种正确方法 1 如果将主轴转速和主轴旋转方向编写在同一程序段中 主轴转速和主轴旋转方向将 同时有效 2 如果将主轴转速和主轴旋转方向编写在不同程序段中 主轴将不会旋转 直到将转速 和旋转方向指令都处理完毕 例 N1 G20 N2 G17 G40 G80 N3 G90 G00 G54 X14 0 Y9 5 N4 G43 Z1 0 H01 S600 M03 转速和旋转方向 N5 该例子是在铣削中应用较好的格式 它将主轴转速和主轴旋转方向与趋近工件 的 Z 轴运动设置在一起 同样流行的方法是用 XY 运动来启动主轴 下面例 子中的 N3 N3 G90 G00 G54 X14 0 Y9 5 S600 M03 怎样选择凭个人的喜好了 对于 FANUC 系统 G20 并不一定要放在单独的程 序段中 例 N1 G20 N2 G17 G40 G80 N3 G90 G00 G54 X14 0 Y9 5 S600 只有转速 N4 G43 Z1 0 H01 M03 开始旋转 N5 将将 M03 或或 M04 与与 S 地址地址编编写在一起或在它后面写在一起或在它后面编编写 不要将它写 不要将它们编们编写在写在 S 地址前 地址前 3 主轴定向 M19 与主轴相关的最后一个 M 功能是 M19 该功能最常见的应用是将机床主轴设置在一个确 定位置 主轴定向功能非常特殊 极少出现在程序中 M19 功能主要用在调试过程的手动数据 输入模式 MDI 中 系统在执行 M19 功能时 将产生以下运动 主轴会在两个方向 顺时针和逆时针 上轻微的转动 并在短时间内会激活内部锁定机构 有时也可听到锁定的声音 这样就将主轴锁定在一个精确位置 如果用手转动 则做不到这一 点 准确的锁定位置由机床生产厂家决定 它用角度表示 如图 2 75 所示 警告 警告 错误错误的刀架定位可能会的刀架定位可能会导导致致损损坏工件或机床 坏工件或机床 A 主轴定向角度 图 2 75 主轴定向角度由机床生产厂家决定且不可更改 例 从技术角度上说是正确的 但逻辑上有缺陷 在两个程序段中分开编写主 轴转速和主轴旋转方向是没有任何好处的 这种方法使得程序难以编译 资料卡 对于有多切削刃的刀具 比如钻头 立铣刀 铰刀和面铣刀等 跟主轴停止位置相关的 切削刃的定位并不是那么重要 然而对于单点刀具 比如镗刀杆 调试过程中的切削刃定位 极其重要 尤其是在某些固定循环时 有两种固定循环中使用内置主轴定向功能 即 G76 和 G87 从已加工孔中退刀时主轴并不旋转 为了防止破坏加工完毕的孔 必须对退刀进行 控制 主轴定向可确保刀具从加工完毕的孔中退到非工作方向 精确的初始调试是必需的 二 冷却控制 1 M07 开启雾状冷却液 有喷雾装置的机械 令其开启喷雾泵 喷出雾状冷却液 2 M08 开冷却液 程序执行至 M08 即启动冷却液泵 但必须配合执行操作面板上的 CLNT AUTO 键 处 于 ON 灯亮 状态 冷却液程序键 处于 ON 否则泵不会启动 一般 CNC 机械主轴附近有一阀门可以手动调节冷却液流量大小 3 M09 喷雾及冷却液关闭 命令喷雾及冷却剂泵关闭 停止冷却液喷出 常用于程序执行完毕之前 但常可省略 因为一般 M02 M30 指令皆包含 M09 三 进给控制 在轮廓加工中 因为有交点 切点和间隙 切削运动的方向频繁改变 如要加工零件轮廓 的直角拐角 就意味着一个程序段中沿 X 轴的刀具运动 在下一个程序段中要转换成 Y 轴运 动 要实现这种转换 系统首先得停止 X 轴的运动 然后再启动 Y 轴的运动 如果没有加速就 不可能以最大进给率瞬时启动 同样 如果没有减速 也不可能停止进给 这样就可能发生切 削错误 该错误就可能使得表面上的切削超过预期的直角拐点 尤其是在进给速度非常大和 角度极小的情况下 它仅仅发生在 G01 G02 G03 模式的切削运动中 而不会在 G00 快速运 动模式中 日常的 CNC 加工中 很少发生这种错误 即使出现 也是在公差允许范围内 如果确实 要纠正这种错误 FANUC 数控系统中有两条指令可以解决 1 准停指令 G09 格式 G09 说明 1 G09 为非模态指令 只在一个程序段里有效 2 在 G09 的程序段中 运动轴停止前要进行定位校验 即减速停止 并使运动轴停止在定 位精度允许范围之内 3 G09 可用于切削出尖角 例如铣削图 2 76 所示的零件 ABCD 若程序为 G01 B C G01 C D 则在 C 点有一个小圆弧 铣不出尖叫来 要铣出 C 点尖角 可以这样编程 G09 G01 B C G09 G01 C D 这样在 C 点就可以铣出一个尖角 图 2 76 尖角铣削 2 准停指令 G61 格式 G61 G64 说明 1 这是一组模态指令 G61 一经指定一直有效 只有用 G64 时才能改变 2 G61 方式时 从 G61 指令起到 G64 指令止 每个程序段均作定位校验 三 直线插补 圆弧插补 螺旋线插补及圆柱插补 一 直线插补 G01 格式 G01 X Y Z F 说明 G01 是指令坐标轴按指定进给速度作直线运动 X Y Z 坐标位置为切削终点 可 三轴联动或二轴联动或单轴移动 而由 F 值指定切削时的进给速度 单位一般设定为 mm min G09 与 G61 比较 G09 与 G61 的功能相同 最大的区别就是 G09 是非模态指令 在同一程序中重 复使用 G09 而使程序变得冗长 而 G61 为模态指令 它会一直有效 缩短了编程时 间 现以图 2 77 说明 G01 用法 假设刀具由程序原点往上铣削轮廓外形 G90 G01 Y17 0 F80 X 10 0 Y30 0 G91 X 40 0 Y 18 0 G90 X 22 0 Y0 X0 F 功能具有续效性 故切削速度相同时 下一程序段可省略 如上面程序所示 图 2 77 G01 指令用法 二 圆弧插补 G02 G03 格式 YX G G 03 02 G17 R JI F ZX G G G 03 02 18 R KI F ZY G G G 03 02 19 R KJ F 说明 X Y Z 终点坐标位置 可用绝对值 G90 或增量值 G91 表示 I J K 从圆弧起点到圆心位置 在 X Y Z 轴上的分向量 以 I J K 表示的称为圆心 法 X 轴的分向量用地址 I 表示 I 圆心的 X 坐标值 起点的 X 坐标值 Y 轴的分向量用地址 J 表示 J 圆心的 Y 坐标值 起点的 Y 坐标值 Z 轴的分向量用地址 K 表示 K 圆心的 Z 坐标值 起点的 Z 坐标值 R 圆弧半径 以半径值表示 以 R 表示的称为半径法 F 切削进给速率 单位 mm min 圆弧的表示有圆心法及半径法两种 现分述如下 1 圆心法 I J K 后面的数值定义为从圆弧起点到圆心的距离 用圆心编程的情况如图 2 78 所示 图 2 78 圆心法编程 2 半径法 以 R 表示圆弧半径 此法以起点及终点 和圆弧半径来表示一段圆弧 在圆上会有二段圆弧 出现 如图 2 78 所示 故以 R 是正值时 表示圆心角小于等于 180 的圆弧 R 是负值时 表示 圆心角为大于 180 的圆弧 假设图 2 79 中 R 50mm 终点坐标绝对值为 100 80 则 1 圆心角大于 180 的圆弧 即路径 B 为 G90 G02 X100 0 Y80 0 R 50 0 F80 2 圆心角小于等于 180 的圆弧 即路径 A G90 G02 X100 0 Y80 0 R50 0 F80 图 2 79 半径法编程 CNC 铣床上使用半径法或圆心法来表示某一圆弧 要从工作图上的尺寸标示而定 以使 用较方便者 即不用计算 即可看出数值者 为取舍 但若要铣削一整圆时 只能用圆心法表示 半径法无法执行 若用半径法以两个半圆相接 其真圆度误差会太大 如图 2 80 铣削一整圆的指令写法如下 G91 G02 I 50 F80 图 2 80 整圆程序的编写 现以图 2 81 为例 说明 G01 G02 G03 指令的用法 假设刀具由程序原点向上沿轮廓铣 削 图 2 81 G01 G02 G03 应用例图 程序程序单单 G90 G01 Y12 0 F80 0 程序原点 程序原点 A G02 X38 158 Y40 0 I38 158 J 12 0 A B G91 G01 X11 0 B C G03 X24 0 R12 0 C D G01 X8 0 D E G02 X10 0 Y 10 0R10 0 E F G01 G90 Y10 0 F G G91 X 15 Y 10 0 G H X 20 0 H I G90 G03 X20 158 R18 0 I J G01 X0 J 程序原点 程序原点 3 使用 G02 G03 圆弧切削指令时应注意下列几点 1 一般 CNC 铣床或 MC 开机后 即设定为 G17 XY 平面 故在 XY 平面上铣削圆弧 可 省略 G17 指令 2 当某一程序段中同时出现 I J 和 R 时 以 R 为优先 即有效 I J 无效 3 I0 或 J0 或 K0 时 可省略不写 4 省略 X Y Z 终点坐标时 表示起点和终点为同一点 是切削整圆 如图 2 80 所示 若 用半径法则刀具无运动产生 5 当终点坐标与指定的半径值未交于同一点时 会报警显示 6 直线切削后面接图弧切削时 其 G 指令必须转换为 G02 或 G03 若再执行直线切削时 则必须再转换为 G01 指令 这些是很容易被疏忽的 7 使用切削指令 G01 G02 G03 须先指令主轴转动 且须指令进给速度 F 三 螺旋线插补 螺旋线的形成是刀具作圆弧插补运动的同时与之同步地作轴向运动 其指令格式为 03 02 17FK R JI ZYX G G G 03 02 18FJ R KI ZYX G G G 03 02 19FI R KJ ZYX G G G 式中 G02 G03 为螺旋线的旋向 其定义同圆弧 X Y Z 为螺旋线的终点坐标 I J 为圆 弧圆心在 X Y 平面上 X Y 轴上相对于螺旋线起点的坐标 R 为螺旋线在 X Y 平面上的投影 半径 K 为螺旋线的导程 另两式的意义类同 见图 2 82 所示 图 2 82 螺旋线插补 图 2 83 螺旋线插补示例 如图 2 83 所示螺旋线 其程序为 G17 G03 X0 Y0 Z50 I15 J0 K5 F100 或 G17 G03 X0 Y0 Z50 R15 K5 F100 四 圆柱插补 G07 1 格式 G7 1 旋转轴名称 圆筒半径 1 G7 1 旋转轴名称 0 2 说明 以 1 的指令进入圆柱插补模式 指令圆柱插补的旋转轴名称 以 2 的指令解除圆柱插补模式 例如 O0001 N1 G28 N2 N6 G7 1 C125 0 进行圆柱插补的旋转轴为 C 轴 圆柱半径为 125mm N7 G7 1 C0 圆柱插补模式解除 注意 1 G7 1 必须在单独程序段中 2 圆柱插补模式中 不可再设定圆柱插补模式 再设定时 须将原设定先解除 3 圆柱插补可设定的旋转轴只有 1 个 因此 G7 1 不可指令 2 个以上的旋转轴 4 定位模式 G00 中 不可指令圆柱插补 5 圆柱插补模式中 不可指定钻孔用固定循环 G73 G74 G76 G81 G89 6 刀具长度补偿必须在进入圆柱插补模式前写入 在圆柱插补模式中 不可进行补偿的变更 7 分度盘机能使用中 不可使用圆柱插补指令 例 加工图 2 84 所示的零件 刀具 T01 为 8mm 的刀具 半径补偿号为 D01 图 2 84 例题图 程序如下 O0001 N01 G00 G90 Z100 0 C0 N02 G01 G91 G18 Z0 C0 N03 G07 1 C57 299 N04 G90 G01 G42 Z120 0 D01 F250 N05 C30 0 N06 G02 Z90 0 C60 0 R30 0 N07 G01 Z70 0 N08 G03 Z60 0 C70 0 R10 0 N09 G01 C150 0 N10 G03 Z70 0 C190 0 R75 0 N11 G01 Z110 0 C230 0 N12 G02 Z120 0 C270 0 R75 0 N13 GO1 C360 0 N14 G40 Z100 0 N15 G07 1 C0 N16 M30 四 回参考点 快速定位 刀具选用及补偿 一 自动返回参考点 G27 G28 G29 G27 G28 G29 为非模态指令 必须在使用它的所有程序段中重复编写 1 返回参考点校验功能 G27 格式 G27 X Y Z 其中 X Y Z 是程序原点到机床原点的距离 程序中使用 G27 时 切削刀具将自动快进 不需要 G00 到由 G27 程序段中的轴指定的位置 这一运动可以是绝对模式或增量模式 使 用 G27 指令时 应取消刀具的补偿功能 现代数控机床通常是 24 小时运转做切削加工 为了提高加工的可靠性及工件尺寸的正 确性 可用此指令检查 也就是确认 看包含 G27 程序段中的编程位置是否在机床原点参考 位置 如果是 控制面板上的指示灯亮 表示每根轴均能到达该位置 如果到达的点不是机床 原点 屏幕上 将显示错误条件警告 并中断程序执行 程序如下 M06 T01 换 1 号刀 G40 G49 将刀具补偿取消 G27 X 38 612 Y21 812 Z42 226 其中 X Y Z 值是指 1 号刀的程序原点到机床原点 的距离 2 自动返回参考点 G28 格式 G28 X Y Z 其中 X Y Z 为中间点位置坐标 指令执行后 所有的受控轴都将快速定位到中间点 然后再从中间点返回到参考点 图 2 85 机床回原点的中间点 以 XY 轴为例 设置中间点的目的有两个 其一 可以缩短程序 通常可缩减一个程序段 其二 是为防止 刀具返回参考点时与工件或夹具发生干涉 如图 2 85 所示从工件中间孔开始的刀具运动 这 样一个运动 如果直接编写到原点位置的运动 刀具在到达机床原点的过程中 可能会跟右上 角的夹具碰撞 故在不加长程序的情况下 可以在一个安全的位置编写中间点 可使刀具安全 返回机床原点 程序构造如下 G90 G00 X5 0 Y4 0 已加工孔 G28 X12 0 Y4 0 机床经中间点回原点的运动 G28 指令一般用于自动换刀 所以使用 G28 指令时 应取消刀具的补偿功能 3 自动从参 考点返回 G29 格式 G29 X Y Z G29 通常跟在 G28 之后 执行这条指令可以使刀具从参考点出发 经过由 G28 指定的中 间点到达由 G29 指令的目标点 指令中 X Y Z 是到达点的坐标 由 G90 G91 状态决定是绝对值还是增量值 若为增量 值时 则是指到达点相对于 G28 中间点的增量值 在选择 G28 之后 这条指令不是必须的 使用 G00 定位有时可能更为方便 使用 G29 之 前应取消刀具半径补偿功能和固定循环 G28 和 G29 的应用举例如图 2 86 所示 M06 T01 G90 G28 Z50 0 由 A 点经中间点 B 回到机床参考点 Z 轴 M06 T02 换 2 号刀 G29 X35 0 Y30 0 Z5 0 2 号刀由机床参考点经中间点 B 快速定位到 C 点 图 2 86 G28 G29 指令应用示例 二 快速点定位 G00 格式 G00 X Y Z 说明 G00 指令刀具相对于工件以各轴预先设定的快移速度 从当前位置快速移动到程序 段指令的定位终点 目标点 其中 X Y Z 快速定位终点 在 G90 时为定位终点相对于起点的位移量 注意 注意 在执行 G00 指令时 由于各轴以各自速度移动 不能保证各轴同时到达终点 因而联动直线轴的合成 轨迹不一定是直线 操作者必须格外小心 以免刀具与工件发生碰撞 常见的做法是 将 Z 轴移动到安全高 度 再执行 G00 指令 例 如图 2 87 所示 使用 G00 编程 要求刀具从 A 点快速定位到 B 点 图 2 87 G00 编程 三 刀具选用及补偿 1 刀具选用 格式 M06 T 说明 数控铣床无自动换刀装置 必须用手换刀 所以该功能是用于加工中心的 M06 为 换刀功能 T 功能以地址 T 后面接 2 位数字组成表示所选刀号 加工中心的刀库有二种 一种是圆盘型 另一种为链条型 换刀的方式分无臂式及有臂式 两种 无臂式换刀方式是刀具库靠向主轴 先卸下主轴上的刀具 再旋转至欲换的刀具 上升装 上主轴 此种刀具库大都用于圆盘型较多 且是固定刀号式 即 1 号刀必须插回 1 号刀具库内 资料卡 G00 是模态代码 如果上一段程序为 G00 则本段的 G00 可以不写 G00 一般用于加工前快速定位趋近加工点或加工后快速退刀以缩短加工辅 助时间 不能用于加工过程 G00 的快移速度一般由机床参数对各轴分别设定 不能用进给速度指令 F 规定 快移速度可由机床控制面板上的快速修调旋钮修正 绝对值编程 G90 G00 Z100 先抬到安全高度 X90 Y45 再快移到目标点 增量值编程 G91 G00 Z100 先抬到安全高度 X70 Y30 再快移到目标点 从 A 到 B 快速定位 故换刀指令的书写方式如下 M06 T02 执行时 主轴上的刀具先装回刀具库 再旋转至 2 号刀 将 2 号刀装入主轴孔内 如图 2 88 所示是一个典型的可存放 20 把刀具的刀库 图 2 88 可存放 20 把刀具的刀库侧视图 有臂式换刀大都配合链条型刀具库且是无固定刀号式 即 1 号刀不一定插回 1 号刀具库 内 其刀具库上的刀号与设定的刀号由控制器的 PLC 可程控器 管理 此种换刀方式的 T 指令后面所接数字代表欲呼叫刀具的号码 当 T 功能被执行时 被呼叫的刀具会转至准备换 刀位置 但无换刀动作 因此 T 指令可在换刀指令 M06 之前即以设定 以节省换刀时等待刀 具的时间 故有臂式的换刀程序指令书写如下 T01 1 号刀至换刀位置 M06 T03 将 1 号刀换到主轴孔内 3 号刀至换刀位置 M06 T04 将 3 号刀换到主轴孔内 4 号刀至换刀位置 M06 T05 将 4 号刀换到主轴孔内 5 号刀至换刀位置 执行刀具交换时 并非刀具在任何位置均可交换 各制造厂商依其设计不同 均在一安全 位置 实施刀具交换动作 以避免与床台 工件发生碰撞 Z 轴的机床原点位置是远离工件最 远的安全位置 故一般以 Z 轴先回机床原点后 才能执行换刀指令 通常加工中心的换刀程序如下书写 G91 G28 Z0 Z 轴回 HOME 点 M06 T03 主轴更换为 3 号刀 G91 G28 Z0 M06 T04 主轴更换为 4 号刀 G91 G28 Z0 M06 T05 主轴更换为 5 号刀 2 刀具半径补偿功能 G40 G41 G42 格式 DZY DZX DYX G G G G G G G G 01 00 42 41 40 19 18 17 G40 刀具半径补偿撤消指令 G41 刀具半径左刀补偿指令 G42 刀具半径右刀补偿指令 说明 X Y Z G00 G01 的参数 即刀补建立或取消的终点 D G41 G42 的参数 即刀补号码 D00 D99 它代表了刀补表中对应的半径补偿值存放 的地址 这是一组模态指令 默认为 G40 建立和取消刀具半径补偿必须与 G01 或 G00 指令 组合来完成 实际编程时建议与 G01 组合 D 以及后面的数字表示刀具半径补偿号 刀具半径左 右补偿的判断依据以下定义 站在程序路径上 向铣削前进方向看 铣刀位 于零件轮廓左边时为刀具半径左补偿 如图 2 89 所示 反之 为刀具半径右补偿 如图 2 90 所示 图 2 89 G41 刀具半径左补偿 G90 G00 X110 Y 20 快速定位至 A 点 G01 G41 X92 Y0 D11 F80 A C X0 C G Y60 G F X84 F E G02 X92 Y52 R8 E D G01 Y0 D C 由 A 点向 C 点移动并建立刀具半径 左补偿指令的程序如下 G90 G00 X 20 Y80 快速定位至 B 点 G01 G41 X0 Y60 D11 F80 B F X84 F E G02 X92 Y52 R8 E D G01 Y0 D C X0 C G Y60 G F 由 B 点向 F 点移动并建立刀具半径左 补偿指令的程序如下 G41 刀具半径左补偿指令 它的 切削模式为顺铣 故常用于精铣 削 顺铣模式是 CNC 铣削 尤其 是轮廓铣削中最常见的模式 图 2 90 G42 刀具半径右补偿 1 刀具半径补偿的意义 本节以前所举例书写的程序均以刀具端面中心点为刀尖点 以此点沿工件轮廓铣削 但实 际情形 铣刀有一定的直径 故以此方式实际铣削的结果 外形尺寸会减少一个铣刀直径值 内形尺寸会增加一铣刀直径值 如图 2 91 所示 G90 G00 X110 Y 20 快速定位至 A 点 G01 G42 X92 Y0 D11 F80 A C Y52 C D G03 X84 Y60 R8 D E G01 X0 E F Y0 F G X92 G C 由 A 点向 C 点移动并建立刀具半径 右补偿指令的程序如下 G90 G00 X 20 Y80 快速定位至 B 点 G01 G42 X0 Y60 D11 F80 B F Y0 F G X92 G C Y52 C D G03 X84 Y60 R8 D E G01 X0 E F 由 B 点向 F 点移动并建立刀具半径右 补偿指令的程序如下 G42 刀具半径右补偿指令 它的 切削模式为逆铣 故常用于粗铣 削 a 无刀具补偿铣削外轮廓 b 无刀具补偿铣削内轮廓 图 2 91 无刀具补偿情况 由以上得知若刀具沿工件轮廓铣削 因刀具有一定的直径 故铣削的结果会增加或减少 一个刀具直径值 若以图 2 92 铣刀的刀尖点向内偏一个半径值 如虚线所示 则可铣出正确的尺寸 但如此 写法 每次都要要加 减一个半径值才能找到真正的刀具中心动路 编写程序时十分不方便 所以为了简化编程 最好能以工件图上的尺寸为程序路径再利用刀具半径补偿功能 命令刀 具向右或向左自动偏移一个刀具半径值 如此就不必每次都要计算铣刀的中心坐标值 a 刀具半径右补偿铣削外轮廓 b 刀具半径左补偿铣削内轮廓 图 2 92 有刀具补偿情况 2 使用刀具半径补偿时应注意下列事项 1 G41 和 G42 不能和 G02 G03 一起使用 只能与 G00 或 G01 一起使用 且刀具必须要 移动 即刀具半径补偿指令 必须在前一程序段建立 如图 2 89 及图 2 90 说明 2 程序编制时 程序中只给予刀具半径补偿号 如 D11 D12 每一个刀具半径补偿号均 代表一个补偿值 此补偿值可由参数设定为铣刀的直径或半径值 使用上 一般皆设定成铣刀 的半径值 而铣刀半径值是加工时 预先由操作者键入到控制系统的刀具补偿号的画面中相 对应的号码内的 3 补偿值的正负号改变时 G41 及 G42 的补偿方向会改变 如 G41 指令输入正值时 其 补偿方式为左补偿 若输入负值时 其补偿方式为右补偿 同理 G42 输入正值时 其补偿方式 为右补偿 若输入负值时 其补偿方式为左补偿 由此可见 当补偿值符号改变时 G41 与 G42 的功能刚好互换 所以一般键入补偿值 即铣刀半径值 采用正值较合理 4 当程序处于刀具半径补偿 模态指令 状态时 若加入 G28 G29 G92 指令 当这些指 令被执行时 刀具半径补偿状态将暂时被取消 但是控制系统仍记忆着该补偿状态 因此当执 行下一程序段时 又自动恢复补偿状态 5 当实施刀具半径补偿功能 待加工完成后须以 G40 将补偿状态取消 使铣刀的中心点 回复至实际的坐标点上 亦即执行 G40 指令时 系统会将向左或向右的补偿值 往相反的方 向释放 因此 铣刀会移动一个铣刀半径值 所以使用 G40 的时机 最好是铣刀已远离工件 3 刀具长度补偿 G43 G44 G49 格式 01 00 49 44 43 HZ G G G G G 说明 1 刀具长度补偿是纠正刀具编程长度和刀具实际长度差异的过程 CNC 铣床或 MC 所使 用的刀具 因每把刀具的长度不尽相同 故当一个程序中使用多把长度不一的刀具时 需引入 刀具长度补偿以使每一把刀加工出来的深度均正确 2 格式中代码含义如下 G43 刀具长度正补偿 G44 刀具长度负补偿 Z 指令欲定位到 Z 轴的坐标位置 H 为刀具长度补偿号码 以 2 位数字表示 例如 H01 表示刀具长度补偿号码为 01 号 如其 中存放的刀具长度值为 10 对于数控铣床 执行语句 G90 G01 G43 Z 5 0 H01 后 刀具实际运 动到 Z 5 0 10 Z5 0 的位置 如果该语句改为 G90 G01 G44 Z 5 0 H01 则执行该语句后 刀具实际运动到 Z 5 0 10 Z 15 0 的位置 H00 表示补偿值为 0 使用刀具长度补偿时应注意下列事项 1 使用 G43 或 G44 指令进行刀具长度补偿时 只能有 Z 轴的移动量 若有其它轴向的移 动 则会出现报警画面 2 G43 Z H 补偿号码内的数据为正值时 刀具向上补偿 若为负值时 刀具向下补偿 G44 Z H 补偿号码内的数据为正值时 刀具向下补偿 若为负值时 刀具向上补偿 例 如图 2 93 所示工件 利用 10mm 端铣刀铣削外形 深度 5mm 刀具半径补偿号码用 11 号 刀具长度补偿号码用 01 号 图 2 93 例图 程序如下 O0043 G40 G49 G28 G91 Z0 G28 X0 Y0 G54 G90 M03 S800 G00 X 20 Y 20 M08 G43 Z5 H01 启动刀具长度补偿 命令刀具定位至工件表面上方 5mm 处 G01 Z 5 F60 G42 X12 Y12 D11 F100 启动刀具半径补偿铣削至 12 12 处 X52 G03 X72 Y32 R20 机 床 原 点 G91 X 30 R15 G02 X 24 R12 G01 X 6 G90 Y0 G00 Z20 快速定位至工件表面上方 20mm 处 G40 取消刀具半径补偿 G28 G91 Z0 G28 X0 Y0 M30 五 程序走向控制 一 跳转移加工 G25 格式 G25 Nxxxx xxxx xx 说明 N 后为两个程序段号和循环次数 两个程序段号各要求写满 4 位 循环次数为两位数 前 四位为开始程序段号后四位为结束程序段号 G25 功能执行完毕后的下一段加工程序为跳转移加工结束段号的下一段 G25 程序段中不得出现其它指令 例如 已知某程序为 N0010 G25 N0020 0040 02 N0020 G91 G00 X20 Y25 F100 N0030 X25 N0040 G00 X0 Y0 N0050 M02 则此程序的加工顺序为 N0010 N0020 N0030 N0040 N0020 N0030 N0040 N0050 二 转移加工 G26 格式 G26 Nxxxx xxxx xx 说明 N 后的第一分隔点前为转移加工开始的程序段号 分隔点后为结束时的程序段号 要求 写满 4 位数 第二个分隔点后两位数为循环次数 G26 能执行完毕后的下一段加工程序为 G26 定义的下一段 这是与 G25 的区别之处 其 余与 G25 相同 例 已知某程序为 N0005 G26 N0010 0020 02 N0010 G91 G01 X20 Y20 F100 N0015 X30 N0020 G90 X0 Y0 N0025 M02 则此程序的加工顺序为 N0005 N0010 N0015 N0020 N0010 N0015 N0020 N0010 N0015 N0020 N0025 例 如图 2 94 所示有 a b 两个零件 a 为加工 6 个孔 b 为加工 4 个孔 两个工件有四个 孔一样 在 a 程序中加入跳转语句 即可适用于 b 零件的加工 a b 图 2 94 例题图 程序如下 O0023 N0010 G21 N0060G90 G00 G54 X30 0 Y25 0 M08 N0070 G43 Z25 0 S1200 M03 H04 N0080 G99 G81 R2 5 Z 4 F100 0 孔 1 N0090 X105 0 孔 2 N0100 Y75 0 孔 3 N0105 G25 N0130 0140 N0110 X80 0 Y50 0 孔 4 N0120 X55 0 孔 5 N0130 G98 X30 0 Y75 0 孔 6 N0140 G80 G28 X30 0 Y75 0 Z25 0 N0150 M02 六 孔加工 一 孔加工固定循环功能概述 无此语句加工图 a 零件 有此语句加工图 b 零件 1 固定循环的动作组成 为了提高编程工作效率 FANUC 0 MC 系统对于一些典型加工中几个固定 连续的动 作规定可用固定循环指令来选择 本系统常用的固定循环指令能完成的工作有 镗孔 钻孔和 攻螺纹等 孔加工固定循环指令有 G73 G74 G76 G80 G89 通常由下述 6 个动作构成 如 图 2 95 所示 图中实线表示切削进给 虚线表示快速进给 动作 1 X Y 轴定位 动作 2 快速运动到 R 点 参考点 动作 3 孔加工 动作 4 在孔底的动作 动作 5 退回到 R 点 参考点 动作 6 快速返回到初始点 固定循环的程序格式包括数据表达形式 返回点平面 孔加工方式 孔位置数据 孔加工 数据和循环次数 其中数据表达形式可以用绝对坐标 G90 和增量坐标 G91 表示 如图 2 96 所 示 其中图 a 是采用 G90 的表达形式 图 b 是采用 G91 的表达形式 图 2 95 孔加工固定循环 a G90 b G91 图 2 96 固定循环中绝对和增量输入值 2 固定循环的程序格式 G98 G99 G73 或 G74 或 G76 或 G80 G89 X Y Z R Q P I J F L 式中第一个 G 代码 G98 或 G99 指定返回点平面 G98 为返回初始平面 G99 为返回 R 点平面 第二个 G 代码为孔加工方式 即固定循环代码 G73 G74 G76 和 G81 G89 中的任 一个 固定循环的数据表达形式可以用绝对坐标 G90 和相对坐标 G91 表示 分别如图 2 96 a 和图 2 96 b 所示 数据形式 G90 或 G91 在程序开始时就已指定 因此 在固定循环程 序格式中可不写出 X Y 为孔的位置坐标 Z 为 R 点到孔底的距离 G91 时 或孔底坐标 G90 时 R 为初始点到 R 点的距离 G91 时 或 R 点的坐标值 G90 时 Q 指定每次进给深度 G73 或 G83 时 或指定刀具位移增量 G76 或 G87 时 P 指定刀具在孔底的暂停时间 I J 指 定刀尖向反方向的移动量 F 为切削进给速度 L 指定固定循环的次数 G73 G74 G76 和 G81 G89 Z R P F Q I J 都是模态指令 G80 G01 G03 等代码可以取消固定循环 在固定循环中 定位速度由前面的指令速度决定 二 固定循环 1 深孔钻加工循环 G73 G83 格式 G73 X Y Z R Q F G83 X Y Z R Q F 深孔钻也称断续切削钻 它使用固定循环 G73 高速深孔钻循环 或 G83 标准深孔钻循环 这两个循环的区别在于退刀方式的不同 G73 中钻头退刀距离很小 0 4 0 8mm 之间 而 G83 中钻头每次进给后退刀至 R 平面 通常在孔上方 G73 G83 指令动作循环如图 2 97 所 示 a G73 b G83 图 2 97 深孔钻加工循环 对于太深而不能使用一次进给运动加工的孔 通常使用深孔钻 以下是深孔钻方法在孔 加工中的一些可能的应用 1 深孔钻削 2 断屑 也可以用于较硬材料的短孔加工 3 清除堆积在钻头螺旋槽内的切屑 4 钻头切削刃的冷却和润滑 5 控制钻头穿透材料 2 钻削循环 G81 格式 G81 X Y Z R F 钻孔循环指令 G81 为主轴正转 刀具以进给速度向下运动钻孔 到达孔底位置后 快速退 回 无孔底动作 这是一种常用的钻孔加工方式 G81 指令的循环动作如图 2 98 所示 图 2 98 G81 固定循环 通常用于钻孔 3 带停顿的钻孔循环 G82 格式 G82 X Y Z R F P 该指令除了要在孔底暂停外 其它动作与 G81 相同 暂停时间由地址 P 给出 此指令主 要用于加工盲孔和沉头孔 使孔的表面更光滑 4 精镗循环 G76 格式 G76 X Y Z R F P Q G76 指令的循环动作如图 2 99 所示 精镗时 主轴在孔底定向停止后 向刀尖反方向移动 然后快速退刀 退刀位置由 G98 和 G99 决定 这种带有让刀的退刀不会划伤已加工平面 保 证了镗孔精度 刀尖反向位移量用地址 Q 指定 其值只能为正值 Q 值是模态的 位移方向由 MDI 设定 图 2 99 G76 固定循环 用于高精度加工 G76 应用实例 如图 2 100 所示 孔直径为 25mm 图中只需考虑 25mm 的孔 程序输 入很简单 N G99 G76 X0 Y0 R2 0 Z 31 0 Q0 3 F125 0 使用 G76 循环加工可以得到较高质量 的孔 图 2 100 G76 和 G87 编程实例图 5 镗孔循环 G85 格式 G85 X Y Z R F 镗孔加工循环指令 G85 如图 2 101 所示 主轴正转 刀具以进给速度向下运动镗孔 到达 孔底位置后 立即以进给速度退出 没有孔底动作 图 2 101 G85 固定循环 通常用于镗孔和铰孔 G85 镗削循环通常用于镗孔和铰孔 它主要用在以下场合 即刀具运动进入和退出孔时 可以改善孔的表面质量 尺寸公差和 或 同轴度 圆度等 使用 G85 循环进行镗削时 镗刀返 回过程中可能会切除少量材料 这是因为退刀过程中刀具压力会减小 如果无法改善表面质 量 应该换用其他循环 6 镗孔循环 G86 格式 G86 X Y Z R F G86 与 G85 的区别是 G86 在到达孔底位置后 主轴停止转动 并快速退出 7 镗孔循环 G89 格式 G89 X Y Z R F P 镗削操作中 进入和退出孔时都需要使用进给率 且在孔底指定暂停时间 暂停值是惟一 能区分 G89 循环和 G85 循环的地方 8 背镗循环 G87 格式 G87 X Y Z R Q I J F 尽管背镗循环有一定的应用 但并不常见 该循环的工作方向与其他循环相反 即从工件 背面开始加工 通常背镗操作从孔底部开始加工 镗削操作沿 Z 轴向上 Z 正方向 进行 图 2 100 中还有一个 27mm 的孔 它也将在同一安装中加工 因为它在 工件背面 所以它使用 G87 循环进行背镗加工 注意 通常在 G98 模式下编写 G87 千万不能在 G99 模式下 背镗动作如图 2 102 所示 图 2 102 G87 固定循环 只用于背镗 9 攻左螺纹循环 G74 格式 G74 X Y Z R F 此指令用于攻左旋螺纹 故需先使主轴反转 再执行 G74 指令 则左螺旋丝锥先快速定 位至 X Y 所指定的坐标位置 再快速定位到 R 点 接着以 F 所指定的进给速率攻螺纹至 Z 所指定的孔底位置后 主轴转换为正转且同时向 Z 轴正方向退回至 R 点 退至 R 点后主轴恢 复原来的反转 如图 2 103 所示 图 2 103 G74 固定循环 只用于左旋攻丝 攻螺纹的进给速率 F mm min 导程 mm r 主轴转速 r min 如图 2 104 所示工件 利用 G73 钻孔后 再使用 G74 攻 LM8 1 25 螺纹 钻孔转速 800 r min 进给速率 60 mm min 攻螺纹转速 100 r min 进给速率 1 25 100 125 mm min 工件材质是铝合金 图 2 104 G73 G74 应用实例 程序如下 O0074 G40 G80 G49 G28 G91 Z0 G28 X0 Y0 G54 M06 T01 换 1 号刀 6 8 钻头 M03 S800 G90 G00 X0 Y0 G43 Z10 G01 启动刀具长度补偿 并快速定位至工件表面上方 10mm 起始点高度 G99 G73 X20 Y28 R3 Z 15 Q3 0 F60 R 点在工件表面上方 3mm 钻孔深度 15mm 间歇进给深度 3mm X85 Y38 继续执行 G73 指令 G80 取消自动切削循环 G28 G91 Z0 M05 G49 M06 T02 换 2 号刀 LM8 1 25 丝锥 M04 S100 主转反转 100r min G90 G43 G00 Z10 H02 快速定位至起始点 工件表面上方 10mm 处 G98 G74 X85 Y38 R3 Z 15 F125 攻螺纹 X20 Y28 继续执行 G74 指令 G80 G49 取消自动切削循环状态及刀具长度补偿 G28 G91 Z0 M30 10 攻右螺纹循环 G84 格式 G84 X Y Z R F 此指令

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论