数控技术及应用教案及讲稿 上部分:数控技术及编程 第二十二讲 一、 备课教案 适用专业机城设计双其自动靴讲次第二十二讲时调 年月日节 第六章数控机床加工程序编制基础 第六节数控铣床加工程序编制 二、 FANUC系统孔加工固定循环 掌握数控铣床加工程序中FAN 系统孔加工固定循环指令的使用 第七节宏功能应用 容 提纲及 变量 二.宏指令G65 求 三宏功能指令 理解宏功能的应用 四。使用注意 五,用户宏程序应用举例 教学实施手段 效果记录 课堂讲授 重 掌握数控铣床加工程序中FANU( 课堂讨论 点 系统孔加工固定循环指令的使用 现场示教 小结讲评 其它 理解宏功能的应用 教具 CAI,黑板 陈德道主编数控技术及应用北京 教 参 国防工业出版社,2009 学 董玉红主编机床数控技术.哈尔滨 哈尔滨工业大学出版社,2003 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 1 第二十二讲 一、备课教案 适用专业 机械设计制造及其自动化 讲次 第二十二讲 上课 时间 年 月 日 节 教 学 内 容 提 纲 及 要 求 第六章 数控机床加工程序编制基础 第六节 数控铣床加工程序编制 二、FANUC 系统孔加工固定循环 掌握数控铣床加工程序中 FANUC 系统孔加工固定循环指令的使用 第七节 宏功能应用 一.变量 理解宏功能的应用 二.宏指令 G65 三.宏功能指令 四.使用注意 五.用户宏程序应用举例 重 点 掌握数控铣床加工程序中 FANUC 系统孔加工固定循环指令的使用 教学实施手段 效果记录 课堂讲授 √ 课堂讨论 √ 现场示教 小结讲评 难 点 理解宏功能的应用 其 它 教具 CAI,黑板 推 荐 参 考 书 陈德道主编.数控技术及应用.北京: 国防工业出版社,2009 董玉红主编.机床数控技术.哈尔滨: 哈尔滨工业大学出版社,2003 教 学 后 记
数控技术及应用教案及讲稿 上部分:数控技术及编程 二、讲稿 第六章数控机床加工程序编制基础 第六节数控铣床程序编制 二、FANUC系统孔加工固定 在前面介绍的常用加工指令中,每一个G指令一般都对应机床的一个动作,它需要 用一个程序段来实现。为了进一步提高编程工作效率,FANUC--Oi系统设计有固定循环 功能,它规定对于一些典型孔加工中的固定、连续的动作,用一个G指令表达,即用固 定循环指令来选择孔加工方式。 常用的固定循环指令能完成的工作有:钻孔、攻螺纹和镗孔等。这些循环通常包括 下列六个 基本操作动作: 1)在XY平面定位 2)快速移动到R平面 3)孔的切削加工 4)孔底动作 5)同到到R平面 6)返回到起始点 操作1 教平面 作 图6-87固定循环的基本动作 图中实线表示切削进给,虚线表示快速运动。R平面为在孔口时,快速运动与进给 运动的转换位置。 常用的固定循环有高速深孔钻循环、螺纹切削循环、精镗循环等。 编程格式 G90/G91G98/G99G73~G89X~Y~Z~R~Q~P~F~K~ 式中: G90/G91-绝对坐标编程或增量坐标编程: G98 始点 G99 一返回R平面。 G73~G89--孔加工方式,如钻孔加工、高速深孔钻加工、镗孔加工等: X、Y-孔的位置坐标: Z-孔底坐标: R-一安全面(R面)的坐标。增量方式时,为起始点到R面的增量距离:在绝对方式 时,为R面的绝对坐标: Q一每次切削深度: P-一孔底的暂停时间: F--切削讲给速度: 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 2 二、讲稿 第六章 数控机床加工程序编制基础 第六节 数控铣床程序编制 二、FANUC 系统孔加工固定循环 在前面介绍的常用加工指令中,每一个 G 指令一般都对应机床的一个动作,它需要 用一个程序段来实现。为了进一步提高编程工作效率, FANUC-Oi 系统设计有固定循环 功能,它规定对于一些典型孔加工中的固定、连续的动作,用一个 G 指令表达,即用固 定循环指令来选择孔加工方式。 常用的固定循环指令能完成的工作有:钻孔、攻螺纹和镗孔等。这些循环通常包括 下列六个基本操作动作: 1)在 XY 平面定位 2)快速移动到 R 平面 3)孔的切削加工 4)孔底动作 5)返回到 R 平面 6)返回到起始点。 图 6-87 固定循环的基本动作 图中实线表示切削进给,虚线表示快速运动。R 平面为在孔口时,快速运动与进给 运动的转换位置。 常用的固定循环有高速深孔钻循环、 螺纹切削循环、 精镗循环等。 编程格式 G90 /G91 G98/G99 G73~G89 X~ Y~ Z~ R~ Q~ P~ F~ K ~ 式中: G90 /G91--绝对坐标编程或增量坐标编程; G98--返回起始点; G99--返回 R 平面。 G73~G89--孔加工方式,如钻孔加工、高速深孔钻加工、镗孔加工等; X、Y--孔的位置坐标; Z--孔底坐标; R--安全面(R 面)的坐标。增量方式时,为起始点到 R 面的增量距离;在绝对方式 时,为 R 面的绝对坐标; Q--每次切削深度; P--孔底的暂停时间; F--切削进给速度;
数控技术及应用数案及讲癌 上部分:数控技术及编程 K-一规定重复加工次数。 固定循环由G80或01组G代码撤消 1.钻削循环指令G81 G81指令为主轴正转,刀具以进给速度向下运动钻孔,到达孔底位置后,快速退回(无 孔底动作)。 2.钻削循环指令、粗镗循环指令G82 G82指令与G81指令类似,唯一的区别是G82在空底加进给暂停动作,即当钻头加 工到孔底位置时,刀具不做进给运动,而主轴保持旋转状态,使孔的表面更光滑,该指 般用于扩孔 和 沉头孔的加工。 3.深孔钻削指令G G83指令工作过程如图6-88所示。G83指令与G81指令的主要区别是:由于深孔加 工,采用间歇进给(分多次进给),有利于排屑。每次进给深度Q,直到空低位置为止, 在空低加进给暂停。如图6-88所示,虚线表示快速运动,实线表示钻孔运动。 R10 图6-88深孔钻削指令G83 4.高速深孔钻循环指令G73 G73用于深孔钻削,在钻孔时采取间断进给,有利于断屑和排屑,适合深孔加工。 图所示为高速深孔钻加工的工作过程。其中Q为增量值,指定每次切削深度。为排屑 退刀量,由系统参数设定。 a)G73(G98 69高速深孔钻G73G 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 3 K--规定重复加工次数。 固定循环由 G80 或 01 组 G 代码撤消。 1.钻削循环指令 G81 G81 指令为主轴正转,刀具以进给速度向下运动钻孔,到达孔底位置后,快速退回(无 孔底动作)。 2.钻削循环指令、粗镗循环指令 G82 G82 指令与 G81 指令类似,唯一的区别是 G82 在空底加进给暂停动作,即当钻头加 工到孔底位置时,刀具不做进给运动,而主轴保持旋转状态,使孔的表面更光滑,该指 令一般用于扩孔和沉头孔的加工。 3.深孔钻削指令 G83 G83 指令工作过程如图 6-88 所示。G83 指令与 G81 指令的主要区别是:由于深孔加 工,采用间歇进给(分多次进给),有利于排屑。每次进给深度 Q,直到空低位置为止, 在空低加进给暂停。如图 6-88 所示,虚线表示快速运动,实线表示钻孔运动。 图 6-88 深孔钻削指令 G83 4.高速深孔钻循环指令 G73 G73 用于深孔钻削,在钻孔时采取间断进给,有利于断屑和排屑,适合深孔加工。 图所示为高速深孔钻加工的工作过程。其中 Q 为增量值,指定每次切削深度。d 为排屑 退刀量,由系统参数设定。 a) G73(G98) b) G73(G99) 图 6-89 高速深孔钻循环
数控技术及应用教案及讲稿 上部分:数控技术及编程 例3.对图6-89所示的5-中8mm深为50m的孔进行加工。显然,这属于深孔加工。利 用G73进行深孔钻加工。 ⊕ 图6-89应用举例 040 N10G56G90G1Z60F2000 /选择2号加工坐标系,到Z向起始点 N20M03S600 /主轴启动 0Y0Z-50R30Q5F50 /选择高速深孔钻方式加工1号孔 /选择高速深孔钻方式加工2号孔 N50G73X0Y40Z-50R30Q5F50 //选择高谏深孔钻方式加工3号丑 N60G73X-40Y0Z-50R30Q5F50 //选择高速深孔钻方式加工4号孔 N70G73X0Y-40Z-50R30Q5F50 /选择高速深孔钻方式加工5号孔 N80G01Z60F2000 /返回向起始点 N90M05 /1主轴传 N100M30 /程序结束并返回起点 加工坐标系设置:G56X=-400,Y=-150,Z=-50。 上述程序中,选择高速深孔钻加工方式进行孔加工,并以G98确定每一孔加工完后, 回到R平面。设定孔口表面的Z向坐标为0,R平面的坐标为30,每次切深量Q为5, 系统设定退刀排屑量d 5.右旋螺纹加工循环指令G84 G84指令用于切削右旋螺纹孔。向下切削时主轴正转,孔底动作是变正转为反转, 再退出。F表示导程,在G84切削螺纹期间速率修正无效,移动将不会中途停顿,直到 循环结束。G84右旋螺纹加工循环工作过程见图6-90。 起始平画 始平而 平面 主反 Z孔底平面 主轴反转 主轴正转 主轴正料 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 4 例 3. 对图 6-89 所示的 5-ф8 mm 深为 50mm 的孔进行加工。显然,这属于深孔加工。利 用 G73 进行深孔钻加工。 图 6-89 应用举例 O40 N10 G56 G90 G1 Z60 F2000 //选择 2 号加工坐标系,到 Z 向起始点 N20 M03 S600 //主轴启动 N30 G98 G73 X0 Y0 Z-50 R30 Q5 F50 //选择高速深孔钻方式加工 1 号孔 N40 G73 X40 Y0 Z-50 R30 Q5 F50 //选择高速深孔钻方式加工 2 号孔 N50 G73 X0 Y40 Z-50 R30 Q5 F50 //选择高速深孔钻方式加工 3 号孔 N60 G73 X-40 Y0 Z-50 R30 Q5 F50 //选择高速深孔钻方式加工 4 号孔 N70 G73 X0 Y-40 Z-50 R30 Q5 F50 //选择高速深孔钻方式加工 5 号孔 N80 G01 Z60 F2000 //返回 Z 向起始点 N90 M05 //主轴停 N100 M30 //程序结束并返回起点 加工坐标系设置:G56 X= - 400,Y = -150,Z = - 50。 上述程序中,选择高速深孔钻加工方式进行孔加工,并以 G98 确定每一孔加工完后, 回到 R 平面。设定孔口表面的 Z 向坐标为 0,R 平面的坐标为 30,每次切深量 Q 为 5, 系统设定退刀排屑量 d 为 2。 5.右旋螺纹加工循环指令 G84 G84 指令用于切削右旋螺纹孔。向下切削时主轴正转,孔底动作是变正转为反转, 再退出。F 表示导程,在 G84 切削螺纹期间速率修正无效,移动将不会中途停顿,直到 循环结束。G84 右旋螺纹加工循环工作过程见图 6-90
数控技术及应用数案及讲癌 上部分:数控技术及编程 a)G84(G98) bG84G99) 图6-90螺纹加工循环 6.左旋螺纹加工循环指令G74 G74指令用于切削左旋螺纹孔。主轴反转进刀,正转退刀,正好与G84指令中的主 轴转向相反,其它运动均与G84指令相同。 7.镗孔加工循环G85 G85指令用于镗孔加工循环,主轴正转,刀具以进给速度向下运动镗孔,到达孔底位 置后,立即以进给速度退出(孔底无动作)。 镗孔加工循 G86 G86指令与G85指令的区别是:G86到达孔底位置后,主轴停止转动,并快速退出。 9.镗孔加工循环G89 G89指令与G85指令相似,其区别是G89到达孔底后加进给暂停。 10.精镗循环指令G76 G76指令用于精镗孔加工。镗削至孔底时,主轴停止在定向位置上,即准停,再使 刀尖偏移离开加工表面,然后再退刀。这样可以高精度、高效率地完成孔加工而不损伤 工件己加工表面。 程序格式中,Q表示刀尖的偏移量,一般为正数,移动方向由机床参数设定。 G76精镗循环的加工过程包括以下几个步骤: (1)在X、Y平面内快速定位: (2) 快速运动到R平面 向下按指定的进给速度精镗孔: (4) 孔底主轴准停: (5)堂刀偏移: (6)从A内快速很刀 图6-91所示为G76精镗循环的工作过程示意图。 向孔成干正 z宵孔底平面 a)G76G98 b)G76(G99) 图6-91精镗循环的加工 11.背镗循环指令G87 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 5 a) G84(G98) b )G84(G99) 图 6-90 螺纹加工循环 6.左旋螺纹加工循环指令 G74 G74 指令用于切削左旋螺纹孔。主轴反转进刀,正转退刀,正好与 G84 指令中的主 轴转向相反,其它运动均与 G84 指令相同。 7.镗孔加工循环 G85 G85 指令用于镗孔加工循环,主轴正转,刀具以进给速度向下运动镗孔,到达孔底位 置后,立即以进给速度退出(孔底无动作)。 8.镗孔加工循环 G86 G86 指令与 G85 指令的区别是:G86 到达孔底位置后,主轴停止转动,并快速退出。 9.镗孔加工循环 G89 G89 指令与 G85 指令相似,其区别是 G89 到达孔底后加进给暂停。 10.精镗循环指令 G76 G76 指令用于精镗孔加工。镗削至孔底时,主轴停止在定向位置上,即准停,再使 刀尖偏移离开加工表面,然后再退刀。这样可以高精度、高效率地完成孔加工而不损伤 工件已加工表面。 程序格式中,Q 表示刀尖的偏移量,一般为正数,移动方向由机床参数设定。 G76 精镗循环的加工过程包括以下几个步骤: (1) 在 X、Y 平面内快速定位; (2) 快速运动到 R 平面; (3) 向下按指定的进给速度精镗孔; (4) 孔底主轴准停; (5) 镗刀偏移; (6) 从孔内快速退刀。 图 6-91 所示为 G76 精镗循环的工作过程示意图。 11.背镗循环指令 G87 a) G76(G98) b) G76(G99) 图 6-91 精镗循环的加工
数控技术及应用教案及讲稿 上部分:数控技术及编程 背镗循环指令G87如图6-92所示,刀具运动到起始点B(X、Y)后,主轴定向停止, 刀具沿刀尖所指的反方向偏移Q值,然后快速移动到孔底位置,接着沿刀尖所指的方向 偏移0值,主轴正转,刀具向上讲给运动,到R点后,主轴又定向停止,刀具沿刀尖所 指的反方向偏移Q值,快速退回到原始高度,沿刀尖所指的方向偏移Q值B点,主轴正 转,本加工循环结束。 Q B E 图6-92G87背镗加工循环 12.孔加工循环综合应用举例 使用刀具长度补偿功能和固定循环功能加工如图6-93所示零件上的12个孔。 2 2向对刀点 111340直径孔撞孔 开始平面 301 图6-93零件图样 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 6 背镗循环指令 G87 如图 6-92 所示,刀具运动到起始点 B(X、Y)后,主轴定向停止, 刀具沿刀尖所指的反方向偏移 Q 值,然后快速移动到孔底位置,接着沿刀尖所指的方向 偏移 Q 值,主轴正转,刀具向上进给运动,到 R 点后,主轴又定向停止,刀具沿刀尖所 指的反方向偏移 Q 值,快速退回到原始高度,沿刀尖所指的方向偏移 Q 值 B 点,主轴正 转,本加工循环结束。 图 6-92 G87 背镗加工循环 12.孔加工循环综合应用举例 使用刀具长度补偿功能和固定循环功能加工如图 6-93 所示零件上的 12 个孔。 图 6-93 零件图样
数控技术及应用教案及讲稿 上部分:数控技术及编程 图6-94刀具图样 (1)分析零件图样,进行工艺处理 该零件孔加工中,有通孔、盲孔,需钻、扩和镗加工,故选择钻头T01、扩孔刀T02 和镗刀T03,加工坐标系Z向原点在零件上表面处。由于有三种孔径尺寸的加工,按照 先小孔后大孔加工的原则,确定加工路线为:从编程原点开始,先加工6个中6的孔, 再加工4个中10的孔,最后加工2个中40的孔。T01、T02的主轴转数S=600r/min, 进给速度F=120mm/min:T03主轴转数S=300r/min,进给速度F=50mm/min。选刀方法参 见其它资料 (2)加工调整 T01、T02和T03的刀具补偿号分别为H01、H02和H03。对刀时,以T01刀为基准 按图中的方法确定零件上表面为Z向零点,则H01中刀具长度补偿值设置为零,该点在 G53坐标系中的位置为Z-35。对T02,因其刀具长度与T01相比为140-150=-10mm,即 缩短了10mm,所以将H02的补偿值设为-10。对T03同样计算,H03的补偿值设置为-50, 如图5.14所示 换刀时, 9000 子程序实现换刀。 根据零件的装夹尺寸,设置加工原点G54: X=-600, Y=-80,Z=-35。 (3)数学处理 在多孔加工时,为了简化程序,采用固定循环指令。这时的数学处理主要是按固 定循环指令格式的要求,确定孔位坐标、快进尺寸和工作进给尺寸值等。固定循环中的 开始平面为Z=5,R点平面定为零件孔口表面+向3mm处. (4)编写零件加工程序 N10G54G90G00X0Y0Z30 /进入加工坐标系 N20T01M98P9000 /换用T01号刀具 N30G43G00Z5H01 /T01号刀具长度补偿 N40S600M03 /主轴起动 N50G99G81X40Y-35Z-63R-27F120 //加T#1到(同R平面 N60Y- /加工#2孔(回R 面) N70G98Y-115 /加工#3孔(回起始平面) N80G99X300 /加工#4孔(回R平面) N90Y-75 //加工#5孔.(回R平面) N100G98Y-35 /加工#6孔(回起始平面) N110G49Z20 12向抬刀, 撤消刀补 N120G00X500Y0 /回换刀点, N130T02M98P9000 /换用T02号刀 N140G43Z5H02 /T02刀具长度补偿 N150S600M03 /主轴起动 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 7 图 6-94 刀具图样 (1)分析零件图样,进行工艺处理 该零件孔加工中,有通孔、盲孔,需钻、扩和镗加工,故选择钻头 T01、扩孔刀 T02 和镗刀 T03,加工坐标系 Z 向原点在零件上表面处。由于有三种孔径尺寸的加工,按照 先小孔后大孔加工的原则,确定加工路线为:从编程原点开始,先加工 6 个 φ6 的孔, 再加工 4 个 φ10 的孔,最后加工 2 个 φ40 的孔。T01、T02 的主轴转数 S=600r/min, 进给速度 F=120mm/min;T03 主轴转数 S=300r/min,进给速度 F=50mm/min。选刀方法参 见其它资料 (2)加工调整 T01、T02 和 T03 的刀具补偿号分别为 H01、H02 和 H03。对刀时,以 T01 刀为基准, 按图中的方法确定零件上表面为 Z 向零点,则 H01 中刀具长度补偿值设置为零,该点在 G53 坐标系中的位置为 Z-35。对 T02,因其刀具长度与 T01 相比为 140-150=-10mm,即 缩短了 10mm,所以将 H02 的补偿值设为-10。对 T03 同样计算,H03 的补偿值设置为-50, 如图 5.14 所示。换刀时,采用 O9000 子程序实现换刀。 根据零件的装夹尺寸,设置加工原点 G54:X=-600,Y=-80,Z=-35。 (3)数学处理 在多孔加工时,为了简化程序,采用固定循环指令。这时的数学处理主要是按固 定循环指令格式的要求,确定孔位坐标、快进尺寸和工作进给尺寸值等。固定循环中的 开始平面为 Z=5,R 点平面定为零件孔口表面+Z 向 3mm 处。 (4)编写零件加工程序 N10 G54 G90 G00 X0 Y0 Z30 //进入加工坐标系 N20 T01 M98 P9000 //换用 T01 号刀具 N30 G43 G00 Z5 H01 //T01 号刀具长度补偿 N40 S600 M03 //主轴起动 N50 G99 G81 X40 Y-35 Z-63 R-27 F120 //加工#1 孔(回 R 平面) N60 Y-75 //加工#2 孔(回 R 平面) N70 G98 Y-115 //加工#3 孔(回起始平面) N80 G99 X300 //加工#4 孔(回 R 平面) N90 Y-75 //加工#5 孔(回 R 平面) N100 G98 Y-35 //加工#6 孔(回起始平面) N110 G49 Z20 //Z 向抬刀,撤消刀补 N120 G00 X500 Y0 //回换刀点, N130 T02 M98 P9000 //换用 T02 号刀 N140 G43 Z5 H02 //T02 刀具长度补偿 N150 S600 M03 //主轴起动
数控技术及应用教案及讲稿 上部分:数控技术及编程 N160G99G81X70Y-55Z-50R-27F120/加工#7孔(回R平面) N170G98V-95 //加工#8.(回起始平面 N180G99Y270 //加T#g引(同R平面) N190G98Y-55 /加工#10 (回起始平面) N200G49Z20 /1亿向抬刀,撤消刀补 N210G00X500Y0 //回换刀点 T220M0Rp0000 //换用T03号刀具 N230G43Z5H03 //T03号刀且长度补借 N240S300M03 /主轴起动 250G76G99X170Y-35Z-65R3F50 /加工#11孔(回R平面 N260G98Y-115 /加工#12孔(回起始平面) N270G49Z30 /撤消刀补 N280M30 //程序停 参数设置 H01=0,H02=-10,H03=-50: G54:X=-600,Y=-80,Z=-35。 第七节宏功能应用 用户宏功能是提高数控机床性能的一种特殊功能。使用中,通常把能完成某一功能 的一系列指令像子程序一样存入存储器,然后用一个总指令代表它们,使用时只需给出 这个总指令就能执行其功能 用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可 以由机床用户自己编制。 宏指令是代表一系列指令的总指令,相当于子程序调用指令。 用户宏功能的最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。 用户宏功能有A、B两类。这里主要介绍A类宏功能, B类宏功能请参见其它有关E 类宏程序资料的介绍。 1.变量 在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更 具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。 (1)恋的表示 变量可以用“#”号和跟随其后的变量序号来表示:#i(1=1,2,3.) 例:#5,#109, #501。 (2)变量的引用 将跟随在一个地址后的数值用一个变量来代替,即引入了变量。 例:对于下#103,若#103=50时,则为50: 对于Z-#110,若#110=100时,则Z为-100 对于G#130,若#130=3时,则为G03。 (3)变量的类型 0MC系统的变量分为公共变量和系统变量两类 a.公共变量 公共变量是在主程序和主程序调用的各用户宏程序内公用的变量。也就是说,在一 个宏指令中的#i与在另一个宏指令中的#i是相同的 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 8 N160 G99 G81 X70 Y-55 Z-50 R-27 F120 //加工#7 孔(回 R 平面) N170 G98 Y-95 //加工#8 孔(回起始平面) N180 G99 X270 //加工#9 孔(回 R 平面) N190 G98 Y-55 //加工#10 孔(回起始平面) N200 G49 Z20 //Z 向抬刀,撤消刀补 N210 G00 X500 Y0 //回换刀点 T220 M98 P9000 //换用 T03 号刀具 N230 G43 Z5 H03 //T03 号刀具长度补偿 N240 S300 M03 //主轴起动 N250 G76 G99 X170 Y-35 Z-65 R3 F50 //加工#11 孔(回 R 平面) N260 G98 Y-115 //加工#12 孔(回起始平面) N270 G49 Z30 //撤消刀补 N280 M30 //程序停 参数设置: H01=0,H02=-10,H03=-50; G54:X=-600,Y=-80,Z=-35。 第七节 宏功能应用 用户宏功能是提高数控机床性能的一种特殊功能。使用中,通常把能完成某一功能 的一系列指令像子程序一样存入存储器,然后用一个总指令代表它们,使用时只需给出 这个总指令就能执行其功能。 用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可 以由机床用户自己编制。 宏指令是代表一系列指令的总指令,相当于子程序调用指令。 用户宏功能的最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。 用户宏功能有 A、B 两类。这里主要介绍 A 类宏功能,B 类宏功能请参见其它有关 B 类宏程序资料的介绍。 1.变量 在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更 具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。 (1)变量的表示 变量可以用“#”号和跟随其后的变量序号来表示:#i(i=1,2,3......) 例:#5, #109, #501。 (2)变量的引用 将跟随在一个地址后的数值用一个变量来代替,即引入了变量。 例:对于 F#103,若#103=50 时,则为 F50; 对于 Z-#110,若#110=100 时,则 Z 为-100; 对于 G#130,若#130=3 时,则为 G03。 (3)变量的类型 0MC 系统的变量分为公共变量和系统变量两类。 a.公共变量 公共变量是在主程序和主程序调用的各用户宏程序内公用的变量。也就是说,在一 个宏指令中的#i 与在另一个宏指令中的#i 是相同的
数控技术及应用数案及讲癌 上部分:数控技术及编程 公共变量的序号为:#100~#131:#500一#531。其中#100一~#131公共变量在电源 断电后即清零,重新开机时被设置为“0”:#500~#531公共变量即使断电后,它们的 值也保持不变,因此也称为保持型变量。 b.系统变量 系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具 偏置变量,接口的输入/输出信号变量,位置信息变量等。 系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置变量序号为 01一99,这些值可以用变量替换的方法加以改变,在序号1一99中,不用作刀偏量的 变量可用作保持型公共变量#500 53 接口输入信号#1000~#1015,#1032。通过阅读这些系统变量,可以知道各输入口 的情况。当变量值为“1”时,说明接点闭合:当变量值为“0”时,表明接点断开。这 些变量的数值不能被替换。阅读变量#1032,所有输入信号一次读入。 2.宏指令G65 宏指令G65可以实现丰富的宏功能,包括算术运算、逻辑运算等处理功能 一般形式: G65 Hm P#i Q#i R# 式中: -宏程序功能,数值范围01~99: #1-一运算结果存放处的变量名: wj- 被操作的第 一个变量 也可以是 一个常数: 一被操作的第二个变量,也可以是一个常数。 例如,当程序功能为加法运算时 程序P#100Q#101R#102... 含义为#100=#101+#102 程序P#100Q-#101R#102. 含义为#100=-#101+#102 程序 PH100Q101R15.. 含义为#100=#101+15 3.宏功能指令 (1)算术运算指令表(表6.6) 表6.6算术坛算指今表 G码 H码 功能 定义 H01 定义,替换 #=#灯 G65 H02 #i=#j十#k G65 H03 #i=##k G65 H04 #i=#ix#k G65 H05 除 #k G65 H21 平方根 #i三√#j G65 H22 绝对值 #i三# G65 H23 求余 #i=#j-tunc(#j件k)#k Trunc:丢弃小于1的分数部分 BCD码→二进制 #i=BIN (# G65 H24 码 G65 H25 “讲制码→BCD #i=BCD (#i) G65 H26 复合乘除 #=(#1×#j)÷#k G65 H27 复合平方根1 #i=#2+#k3 G65 H28 复合平方根2 #i=√#2#k2 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 9 公共变量的序号为:#100~#131;#500~#531。其中#100~#131 公共变量在电源 断电后即清零,重新开机时被设置为“0”;#500~#531 公共变量即使断电后,它们的 值也保持不变,因此也称为保持型变量。 b.系统变量 系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具 偏置变量,接口的输入/输出信号变量,位置信息变量等。 系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置变量序号为 #01~#99,这些值可以用变量替换的方法加以改变,在序号 1~99 中,不用作刀偏量的 变量可用作保持型公共变量#500~#531。 接口输入信号#1000~#1015,#1032。通过阅读这些系统变量,可以知道各输入口 的情况。当变量值为“1”时,说明接点闭合;当变量值为“0”时,表明接点断开。这 些变量的数值不能被替换。阅读变量#1032,所有输入信号一次读入。 2.宏指令 G65 宏指令 G65 可以实现丰富的宏功能,包括算术运算、逻辑运算等处理功能。 一般形式: G65 Hm P#i Q#j R#k 式中: m--宏程序功能,数值范围 01~99; #i--运算结果存放处的变量名; #j--被操作的第一个变量,也可以是一个常数; #k--被操作的第二个变量,也可以是一个常数。 例如,当程序功能为加法运算时: 程序 P#100 Q#101 R#102...... 含义为#100=#101+#102 程序 P#100 Q-#101 R#102...... 含义为#100=-#101+#102 程序 P#100 Q#101 R15...... 含义为#100=#101+15 3.宏功能指令 (1)算术运算指令表(表 6.6) 表 6.6 算术运算指令表 G 码 H 码 功 能 定 义 G65 H01 定义,替换 # i=# j G65 H02 加 # i=# j+# k G65 H03 减 # i=# j-# k G65 H04 乘 # i=# j × # k G65 H05 除 # i=# j/# k G65 H21 平方根 # i=√# j G65 H22 绝对值 # i=|# j| G65 H23 求余 # i=# j-trunc﹙# j/# k﹚· # k Trunc;丢弃小于 1 的分数部分 G65 H24 BCD 码→二进制 码 # i=BIN﹙# j﹚ G65 H25 二进制码→BCD 码 # i=BCD﹙# j﹚ G65 H26 复合乘/除 # i=﹙# i × # j﹚÷# k G65 H27 复合平方根 1 # i=√# j2+# k2 G65 H28 复合平方根 2 # i=√# j2 -# k2
数控技术及应用教案及讲稿 上部分:数控技术及编程 1)变量的定义和替换#i=#j 编程格式G65HO1P#iQ# 例Cc65H01p#101Q1005 (#101=1005) G65H01P#101Q-#112: (#101=-#112) 2)加法#i=#j十k 编程格式G65H02P#iQ#jRk 例G65H02P#101Q#102R#103:(#101=#102+#103) 3)减法#1=#k 编程格式G65HO3P#i Q#j R 例G65H03P#101Q#102R#103:(#101=#102-#103) 4)乘法#i=#j×k 编程格式G65HO4P#iQ#jR# 例G65H04P#101Q=102R#103:(#101=#102X#103) 5)除法#1=#/ 编程格式G65HO5P i Qj Rk 例G65H05P#101Q#102R#103;(#101=#102/#103) 6)平方根#i=#万 编程格式G65H21P#iQ#j 例G65H21P#101Q#102(件101=√102) 7)绝对值#1=|#1 编程格式G65H22PiQj g方0月-12 编程格式G65H27P#iQ#jRk 例G65H27P#101Q#102R#103:(#101=√022+103 9)复合平方根2#i=√#-#k 编程格式G65H28P#iQ#jRHk 例G65H28P#101Q=102R#103(#101=√#1022-#103 (2)逻辑运算指令(表6.7) 表6.7逻组运算指令 G码 H码 功能 定义 G65 HII 逻辑“或” #i=#i·OR·#k G65 H12 逻辑“与” #i=#j·AND#k G65 H13 异或 #i=#j·XOR#k 1) 逻辑或 OR椒 编程格式G65H11PiQ湖R极 例G65H11P#101Q#102R#103:(#101=#102OR#103) 2)逻辑与#i=#jAND#k 编程格式G65H12P#i0#iR#1 G65H12P#101Q#102R#103:(#101=#102AND#103) (3) 三角函数指令(表6.8) 表6.8 三角函数指令 C色四 山码 功能 G65 H31 正孩 #(#k 兰州交通大学机电工程学院
数控技术及应用教案及讲稿 上部分:数控技术及编程 兰州交通大学机电工程学院 10 1)变量的定义和替换 #i=#j 编程格式 G65 H01 P#i Q#j 例 G65 H01 P#101 Q1005; (#101=1005) G65 H01 P#101 Q-#112;(#101=-#112) 2)加法 #i=#j+#k 编程格式 G65 H02 P#i Q#j R#k 例 G65 H02 P#101 Q#102 R#103;(#101=#102+#103) 3)减法 #i=#j-#k 编程格式 G65 H03 P#i Q#j R#k 例 G65 H03 P#101 Q#102 R#103;(#101=#102-#103) 4)乘法 #i=#j×#k 编程格式 G65 H04 P#i Q#j R#k 例 G65 H04 P#101 Q#102 R#103;(#101=#102×#103) 5)除法 #i=#j / #k 编程格式 G65 H05 P#i Q#j R#k 例 G65 H05 P#101 Q#102 R#103;(#101=#102/#103) 6)平方根 #i= # j 编程格式 G65 H21 P#i Q#j 例 G65 H21 P#101 Q#102;(#101= #102 ) 7)绝对值 #i=│#j│ 编程格式 G65 H22 P#i Q#j 例 G65 H22 P#101 Q#102;(#101=│#102│) 8)复合平方根 1 #i= 2 2 # j +# k 编程格式 G65 H27 P#i Q#j R#k 例 G65 H27 P#101 Q#102 R#103;( #101= 2 2 #102 +#103 9)复合平方根 2 #i= 2 2 # j −# k 编程格式 G65 H28 P#i Q#j R#k 例 G65 H28 P#101 Q#102 R#103(#101= 2 2 #102 −#103 (2)逻辑运算指令(表 6.7) 表 6.7 逻辑运算指令 G 码 H 码 功 能 定 义 G65 H11 逻辑“或” # i=# j · OR · # k G65 H12 逻辑“与” # i=# j · AND · # k G65 H13 异或 # i=# j · XOR · # k 1)逻辑或 #i=#j OR #k 编程格式 G65 H11 P#i Q#j R#k 例 G65 H11 P#101 Q#102 R#103;(#101=#102 OR #103) 2)逻辑与 #i=#j AND #k 编程格式 G65 H12 P#i Q#j R#k 例 G65 H12 P#101 Q#102 R#103;(#101=#102 AND #103) (3)三角函数指令(表 6.8) 表 6.8 三角函数指令 G 码 H 码 功 能 定 义 G65 H31 正弦 # i=# j · SIN ﹙# k﹚