210 likes | 337 Views
4.1 子程序. 4.1.1 子程序的概念 在一个加工程序的若干位置上,如果包含有一连串在写法上完全相同或相似的内容,为了简化程序可以把这 些重复的程序段单独抽出,并按一定的格式编写成子程序,然后象主程序一样将它们存储到程序存储区中。 主程序在执行过程中如果需要某一子程序,可以通过一定格式的子程序调用指令来调用该子程序,子程序执 行完了又可以返回到主程序,继续执行后面的程序段。. 1 、 子程序的嵌套. 2 、子程序的调用与执行. 子程序的调用格式(大多数数控系统用下列格式) M98 P L 主程序调用子程序
E N D
4.1 子程序 4.1.1子程序的概念 在一个加工程序的若干位置上,如果包含有一连串在写法上完全相同或相似的内容,为了简化程序可以把这 些重复的程序段单独抽出,并按一定的格式编写成子程序,然后象主程序一样将它们存储到程序存储区中。 主程序在执行过程中如果需要某一子程序,可以通过一定格式的子程序调用指令来调用该子程序,子程序执 行完了又可以返回到主程序,继续执行后面的程序段。 • 1、 子程序的嵌套 2、子程序的调用与执行 子程序的调用格式(大多数数控系统用下列格式) M98 P L主程序调用子程序 M99 子程序结束并返回主程序
4.1.2子程序编程举例 例1、零件如图4.2所示,在立式数控铣床上加工,用直径为10毫米的立铣刀加工槽, 每次切深4毫米,试利用子程序编写程序。 方法一:(一级套深) O1234;(主程序) N10 G54 G90 G00 X0 Y0 Z100; N20 M03 S800; N30 X-10 Y20; N40 Z5; N50 G01 Z-4 F80 M08; N60 M98 P1111 L5; N70 G90 G00 X-10 Y20; N80 G01 Z-8F100; N90 M98 P1111 L5; N100 G90 G00 Z100 M09; N110 X0 Y0; N120 M05; N130 M30; O1111(子程序) N10 G91 G01 X220 F160; N20 Y25; N30 X-220; N40 Y25; N50 M99;
O1234;(主程序) N10 G54 G90 G00 X0 Y0 Z100; N20 M03 S800; N30 X-10 Y20; N40 Z5; N50 G01 Z0 F80 M08; N60 M98 P1111 L2; N70 G90 G00 Z100 M09; N80 X0 Y0; N90 M05; N100 M30; O1111; N10 G01 G91 Z-4; N20 M98 P2222 L5; N30 G90 X-10 Y20; N30 M99; O2222;(子程序) N10 G91 G01 X220 F160; N20 Y25; N30 X-220; N40 Y25; N50 M99;
4.2 旋转、比例缩放及镜像功能指令 4.2.1 旋转加工功能指令G68 G69 • 旋转变换G68,G69 • 格式: • G17 G68 X__Y__P__ • G18 G68 X__Z__P__ 坐标旋转功能 • G19 G68 Y__Z__P__ • G69 取消坐标旋转功能 • 其中,X、Y、Z 是旋转中心的坐标值;P为旋转角度,单位是(°),0≤P≤360.000° • 注:在有刀具补偿的情况下,先进行坐标旋转,然后才进行刀具半径补偿、刀具长度补偿。 • 在有缩放功能的情况下,先缩放后旋转
O1234; N10 G54 G90 G00 X0 Y0 Z100; N20 M03 S1000; N30 G68 X0 Y0 R13.7 N40 X-30 Y-80; N50 Z5 M08; N60 G01 Z-6 F50; N70 G41 G01 Y-30 D01 F100; N80 Y30; N90 X30; N100 Y-30; N110 X-30; N140 G40 X-80; N120 G69; N130 G00 Z100 M09; N150 M05; N160 M30; 图4.4旋转加工功能举例
O2234;(主程序) N10 G54 G90 G00 X0 Y0 Z100; N20 M03 S1000; N30 M98 P1111 N40G68 X0 Y0 R120; N50 M98 P1111; N60 G68 X0 Y0 R240; N70 M98 P1111; N80 G69; N90 G00 Z100; N100 G40 X0 Y0; N1100M05; N120 M30; O1111;(子程序) N10 G00 X40; N20 Z5 M08; N30 G01 Z-5 F100; N40 G41 X40 Y25 D01 ; N50 G03 X40 Y-25 R25; N60 G40 G00 X40 Y0; N70 Z10; N80 M99;
4.2.2 比例缩放及镜像加工功能指令: • 缩放功能G50,G51 • 格式: G51 X_Y_Z_P_ 缩放开 M98 P_ • G50 缩放关 • 其中,G51中的X、Y、Z给出缩放中心的坐标值,P后跟缩放倍数。G51既可指定平面缩放,也可指定空间缩放。使用G51指令可用一个程序加工出形状相同,尺寸不同的工件。 • G51、G50为模态指令,可相互注销,G50为缺省值。 • 注:有刀补时,先缩放,然后 • 进行刀具长度补偿、半径补偿。
例3:如图4.7所示零件,第二层三角形凸台ABC的顶点坐标为A(10,10),例3:如图4.7所示零件,第二层三角形凸台ABC的顶点坐标为A(10,10), B(90,10),C(50,90),若第一层三角形凸台是在第二层三角形凸台 基础上以(50,30)的点为比例缩放中心,比例缩放系数为0.5, O3234;(主程序) N10 G54 G90 G00 X0 Y0 Z100; N20 M03 S1000; N30 G00 X-20 Y10; N40 Z30 M08; N50 G01 Z16 F100; N30 G51 X0 Y0 P0.5; N40 M98 P1111; N50 G50; N60 G00 X-20 Y10; N70 G01 Z10 F100; N80 M98 P1111; N90 G00 Z100; N100 G40 X0 Y0; N110 M05; N120 M30; O1111;(子程序) N10 G42 G01 X0 D01 ; N20 X90; N30 X50 Y90; N40 X10 Y10; N50Y-10; N60 G00 Z30; N70 M99;
镜像功能G51.1,G50.1 • 格式: G51.1 X__Y__Z__ • M98 P_ • G50.1 X__Y__Z__ • G51.1建立镜像,由指令坐标轴后的坐标值指定镜像位置(对称轴、线、点), • G50.1指令用于取消镜像。 • G51.1、G50.1为模态指令,可相互注销,G50.1为缺省值。 • 注:有刀补时,先镜像 ,然后进行刀具长度补偿、半径补偿。
O3234;(主程序) N10 G54 G90 G00 X0 Y0 Z100; N20 M03 S1000; N30 M98 P1111;型腔① N40 G51.1 X0; N50 M98 P1111;型腔② N60 G50.1; N70 G51.1 X0 Y0; N80 M98 P1111;型腔③ N90 G50.1; N100 G51.1 Y0; N110 M98 P1111;型腔④ N120 G50.1; N130 G00 Z100 M09; N140 M05; N150 M30; O1111;(子程序) N10 G00 X40 Y50; N20 G43 Z5 H01 M08 N30 G01 Z-25 F30; N40 X60 F100; N50 G41 X45 Y40 D01; N60 G03 X60 Y25 R15; N70 G03 X60 Y75 R25; N80 G01 X40 Y75; N90 G03 X40 Y25 R25; N100 G01 X60 Y25; N110 G03 X75 Y40 R15; N120 G01 G40 X60 Y50; N130 G43 G00 Z10; N140 X0 Y0; N70 M99;
4.3 孔加工固定循环功能指令 12种固定循环功能指令和一种取消固定循环功能指令(G80)
固定循环动作组成 • 数控加工中,某些加工动作循环已经典型化。例如,钻孔、镗孔的动作是孔位平面定位、快速引进、工作进给、快速退回等,这样一系列典型的加工动作已经预先编好程序,存储在内存中,可用包含G代码的一个程序段调用,从而简化编程工作。这种包含了典型动作循环的G代码称为循环指令 。 • ①X、Y轴快速定位到孔中心位置 • ②Z轴快速运行到靠近孔上方的安全高度平面R点(参考点) • ③孔加工(工作进给) • ④在孔底做需要的动作 • ⑤退回到安全平面高度或初始平面高度 • ⑥快速返回到初始点位置。 图4.10固定循环的组成
4.3.2固定循环的指令格式: G90(G91) G98(G99) G73 G89 X Y Z RQ PF L 其中: (1)G90和G91:数据输入格式指令:G90绝对坐标,G91增量坐标。 (2)G98和G99:刀具返回的位置指令:G98刀具返回初始平面,G99刀具返回R平面 (R平面也称参考平面,一般距离工件上表面的可取2~5毫米) (3)G73~G89:孔的加工方式指令(见表3-1) (4)X、Y:平面点定位X、Y坐标值,可以用绝对坐标值,也可以用增量坐标值。 (5)Z:刀具到达孔底的Z坐标值,使用绝对坐标时,表示从坐标原点到达孔底Z点的 距离,使用增量坐标时,表示从R平面到达孔底Z点的距离。 (6)R:R平面的Z坐标值,使用绝对坐标时,表示从坐标原点到达R平面的距离,使用 增量坐标时,表示从初始平面到达R平面的距离。 (7)Q:在G73和G83指令中,指定每次进给的深度;G76和G87指令中,指定刀具的 位移量。用增量值给定。 (8)P:刀具在孔底的停留时间。 (9)F:切削进给速度。 (10)L:固定循环次数,不指定时指进行一次。
(1)G81:钻孔、钻中心孔固定循环指令 格式:G90 G98(G99) G81 X Y Z R F 说明: 主轴正传,在初始平面上,刀具快速到达孔的位置定位,快速到达R平面, 从R平面开始刀具以进给速度向下运动钻孔, 到达孔底位置后,快速返回R平面(G99) 或初始平面(G98),无孔底动作。 (2)G82:钻孔、鍃孔、镗阶梯孔、孔口倒角固定循环指令 格式:G90 G98(G99) G82 X Y Z R P F 说明:与G81的主要区别是:孔底有停留,停留时间由地址P 给出。其他动作与G81相同。该指令主要用于加工盲孔或阶梯 孔等,以提高孔底精度。 图4.11 G81钻孔、钻中心孔固定循环
图4.12 G83深孔啄钻固定循环 (3)G83:啄式钻孔固定循环指令 格式:G90 G98(G99) G83 X Y Z RQ F 说明: 与G81的主要区别是:G83用于深孔加工,采用啄式钻孔(间歇进给),以利于排屑。 每次钻削Q的距离后返回到R平面,d为让刀量,其值由CNC系统内部参数设定,末次 钻削的距离小于等于Q。如图4.12所示。
(4)G84:攻右螺纹孔固定循环指令 格式:G90 G98(G99) G84 X Y Z RF 说明: 与G81的主要区别是:G84攻右螺纹时主轴正转进给,攻右螺纹结束后退出时主轴 反转以进给速度返回到R平面(G99)或初始平面(G98)。攻螺纹过程要求进给速 度与主轴转速成严格的比例关系,其比例系数为螺纹的螺距,即:进给速度=螺纹的 螺距X主轴转速,因此,编程时要求根据主轴的转速计算出进给速度。如图4.13所示 图4.13G84攻右螺纹孔固定循环
(4)G85:精镗孔、铰孔固定循环指令 格式:G90 G98(G99) G85 X Y Z R F 说明: 主轴正传,在初始平面上,刀具快速到达孔的位置定位,快速到达R平面,从R平面开 始刀具以进给速度向下运动钻孔,到达孔底位置后,以进给速度返回R平面(G99)或 初始平面(G98),无孔底动作。如图4.14所示。 图4.14 G85铰孔、精镗孔固定循环
图4.15 G76精镗孔固定循环 (5)G76:精镗孔固定循环指令 格式:G90 G98(G99) G76 X Y Z R P Q F 说明: 与G85的区别是:G76在孔底有三个动作,即进给停止、主轴定向停止、刀具沿刀尖 所指的反方向偏移Q值,然后快速返回R平面(G99)或初始平面(G98)。如图4.15所示。