资源描述
数控铣床编程讲义,指导教师:彭 李,华中数控股份有限公司,国家数控系统工程技术研究中心,欢迎您,数控铣床编程与操作培训,数控机床概述 数控编程基础 编程指令体系 编程实例 简化编程指令 宏指令编程,机床:在机械制造行业中的一种主要的生产设备; 数控机床:就是将加工过程中所需的多种操作及刀具的切削用量、走刀方向、切削速度都用数字化的代码表示,并把这些代码输入数控装置,通过计算机对输入的信息进行处理与运算,发出各种指令来控制机床的运动。,数控机床简介,1952年 美国PARSONS公司与麻省理工学院(MIT)合作研制了第一台三座标数控铣床。 相继出现了数控机床:如数控折弯机、数控管弯机、数控步冲机等; 特种加工数控机床:如数控线(电极)切割机、数控火焰切割机、数控激光切割机床等; 数控绘图机、数控三座标测量机等 近来出现了自动换刀数控机床(即加工中心Machining Center)、直接数字控制系统(计算机群控系统,DNC,Direct Numerical Control)、自适应控制系统(AC,Adaptive Control)、柔性制造系统(FMS,Flexible Manufacturing System)、计算机集成(综合)制造系统(CIMS,Computer Integrated Manufacturing System)等,数控机床简介,数控机床简介,数控机床的特点: 能适应不同零件的自动加工 生产效率和加工精度高、加工质量稳定 能高效优质完成复杂幸免零件的加工 工序机中,一机多用 虽然机床价格较高,且要求具有较高技术水平的人原来操作和维修,但其经济效益还是很高的,数控机床简介,一、数控加工的优点 自动化程度高,可以减轻工人的体力劳动强度 加工的零件一致性好,质量稳定 生产效率较高 便于产品研制 便于实现计算机辅助制造。,数控机床简介,数控机床简介,二、 数控加工的缺点 任何事物都是两重性。数控加工虽有上述各种优点,同时在某些方面也存在不足之处: 单位加工成本相对较高 。 只适宜于多品种小批量或中批量生产(占机械加工总量70%80%) 加工中的调整相对复杂 维修难度大,数控机床简介,数控机床编程基础,一、编程概述 二、程序结构 三、坐 标 系,数控机床编程基础之概述,数控编程概述 数控程序:数控机床自动加工零件的工作指令 数控编程的过程: 分析零件图纸工艺处理数学处理编写零件程序程序校验。,数控机床编程基础,编程就是将加工零件的加工顺序、刀具运动轨迹的尺寸数据(运动轨迹与方向、位移量)、工艺参数(主运动和进给运动速度、切削深度)以及辅助操作(换刀、主轴控制、冷却液开关、刀具夹紧、松开)等加工信息,用规定的文字、数字、符号组成的代码和程序格式,编制成加工程序单(相当于普通机床加工的工艺规程),再将程序单中的内容记录在磁盘(或纸带)等控制介质上。这一过程,就称为是编程。,数控机床编程基础,数控机床编程基础,程序编制可分成手工编程和自动编程两类。 手工编程: 手工编程时,整个程序的编制过程是由人工完成的。 自动编程:自动编程是用计算机把人们输入的零件图纸信息改写成数控机床能执行的数控加工程序,数控编程的大部分工作由计算机来完成。相应的典型软件有:UG、 Pro-e、 MasterCAM、 EdgeCAM等,数控机床编程基础,数控机床编程基础,程序代码通用性: 加工程序中所用的输入代码,坐标位移指令,坐标系命名,加工准备功能指令,辅助动作指令,主运动和进给速度指令,刀具指令以及程序和程序段格式等方面都已制定了一系列的国际标准(ISO 1056-1975E标准),我国也参照它制定了相应的标准(GB3208-83),这样极大地方便了数控机床的使用和推广。但是在编程规则上,各国厂家生产的数控机床并不完全相同,因此编程时还应按照具体机床的编程手册中的有关规定来进行,这样所编出的程序才能被该机床的数控系统所接受。,数控机床编程基础,数控机床编程基础,华中世纪星数控系统简介 编程指令代码:符合ISO-840(the International Organization of Standardization 国际标准化组织) 可控轴:X、Y、Z、A四轴 联动轴:X、Y、Z、A四轴 最高速度:(在参数中可以设置,根据软硬件的要求) 最小输入单位:1 um 最大编程数据:/99999.999mm,数控机床编程基础,数控机床编程基础,数控加工程序的结构 数控加工零件程序是若干组程序段组成; 程序段又由若干代码字(或指令字)组成;可表示为一个完整的加工工步或动作! 每个代码字则由文字(地址符)和数字(有些还带有符号)组成。如图所示。,数控机床编程基础之程序结构,数控机床编程基础,程序的结构,数控机床编程基础,数控机床编程基础,主程序和子程序 当一个零件的加工程序中,有一定量的连续的程序段有完全重复出现,如:一块较大的材料上加工出多个相同形状和尺寸的部位的程序,则可将这些重复的程序串单独抽出来,按一定的格式做成子程序。子程序外的部分就成为主程序,在执行过程中,主程序可以随时调用子程序,并自俄在调用过程中,子程序仍可以调用别的子程序,实现所谓的“多层嵌套”(注:我们系统可调用多大8层 ) 调用方法在后面叙述!,数控机床编程基础,坐标系统,数控机床编程基础,数控机床编程基础之坐标,数控机床编程基础,坐标轴:在机械装备中,具有位移(线位移或角位移)控制和速度控制功能的运动轴称为坐标轴(又称坐标或轴)。它有直线坐标轴和回转坐标轴之分。 基本直线轴:ISO(International Organization for Standardization)和EIA(Electronic Industries Association)标准中规定直线进给运动用由右手直角笛卡尔坐标系X、Y、Z为基本坐标系 回(旋)转轴:分别用A、B、C表示,用右手螺旋定则 其他附加轴:分别用U、V、W(第二组),和P、Q、R(第三组)表示,一般表示为分别平行于X、Y、Z,数控机床编程基础,数控机床编程基础,机床坐标系、机床零点和机床参考点,数控机床编程基础,坐标轴的确定顺序和方法机床坐标轴的方向取决于机床的类型和各组成部分的布局:Z轴、X轴、Y轴 Z轴方位: 对只有一个主轴,且主轴无摆动运动的,则平行主轴轴线的坐标轴为Z 坐标 对没有主轴或有多个主轴的数控机床,则规定垂直于工件装夹面的方向的坐标轴为Z 坐标; 对主轴能摆动,且在摆动的范围内只与标准坐标系中的某一坐标平行的数控机床,则该轴便是Z 坐标; Z方向的判断:刀具远离工件的方向为正方向,数控机床编程基础,数控机床编程基础,数控机床编程基础,X轴方位:刀具旋转的机床上(铣床、钻床、镗床等) 对Z 轴轴线在水平方向的机床(如:卧式数控机床),规定从刀具(主轴)向工件看时,X 坐标的正标的正方向指向右边。 如图: 对Z 轴轴线在竖直方向且为单立柱的机床(如:立式数控机床),规定由刀具向立柱看时,X 坐标的正方向指向右边。如图: 对Z轴轴线在竖直方向且为双立柱的数控机床(如:龙门机床),规定由刀具向左立柱看时,X 坐标的正方向指向右边。 如图:,数控机床编程基础,数控机床编程基础,Y轴的判断 Y轴与X轴和Z轴一起构成遵循右手定则的坐标系统。,数控机床编程基础,工件坐标系、程序原点和对刀点 工件坐标系定义: 程序原点(编程坐标系)的概念: 对刀点是零件程序加工的起始点,对刀的目的是确定程序原点在机床坐标系中的位置,对刀点可与程序原点重合,也可在任何便于对刀之处,但该点与程序原点之间必须有确定的坐标联系。,数控机床编程基础,数控机床编程基础,工件坐标系、机床原点和对刀点 的关系图,数控机床编程基础,数控机床编程基础,数控铣床编程指令体系,控制程序流向码 控制主轴状态码 控制工艺参数码 控制刀具状态码 准备功能 G代码 坐标系相关G指令 运动相关G指令 刀补指令 编 程 实 例 简 化 编 程 指令,M指令一览(或辅助功能),数控铣床编程指令体系之控制程序流向码,控制程序流向码:,数控铣床编程指令体系,编程指令体系之控制主轴状态码,控制主轴状态码: 格式:M_S_ 可与别的程序合在一行写,最好是单独一行进行 M03是模态前M功能 M04、 M05是模态后M功能,编程指令体系之控制工艺参数码,控制工艺参数码: 工艺参数包括进给切削速度和背吃刀量 进给切削速度控制指令:F_(指的是单位时间内工件与铣刀沿进给方向的相对位移量mm/min),它是续效代码。 背吃刀量通过轴向上数值的变化来体现,控制刀具状态码: 此功能为加工中心上才能使用,即有刀库时才具有刀具选择和刀具切换的含义。故在此不作详细介绍。 首先用T_选择好刀具号,使刀库定位好 在用M06换刀,此部件功能的实现一般需要有辅助的气动系统。在Zjk7532体系中没有换刀系统。,编程指令体系之控制刀具状态码,有关坐标和坐标系的指令 绝对值编程G90与相对值编程G91 格式: G90 G_ X_ Y_ Z_ G91 G_ X_ Y_ Z_ G90为绝对值编程,每个轴上的编程值是相对于程序原点的;(机床的默认状态) G91为相对值编程,每个轴上的编程值是相对于前一位置而言的,该值等于沿轴移动的距离。,编程指令体系之准备功能G代码,G90、G91为模态功能,G90为缺省值。 区别:图8中给出了刀具由原点按顺序向1、2、3点移动时两种不同指令的区别。,编程指令体系之准备功能G代码,工件坐标系设定G92 格式:G92 X_ Y_ Z_ 其中,X、Y、Z、A、B、C、U、V、W为坐标原点(程序原点)到刀具起点(对刀点)的有向距离。 X、Y、Z 确定原则: 1、方便数学计算和简化编程; 2、容易找正对刀; 3、便于加工检查; 4、引起的加工误差小; 5、不要与机床、工件发生碰撞; 6、方便拆卸工件; 7、空行程不要太长;,数控铣床常用编程指令,执行此段程序只是建立在工件坐标系中刀具起点相 对于程序原点的位置,刀具并不产生运动。执行此程 序段之前必须保证刀位点与程序起点(对刀点)符合。G92指令需要后续坐标值指定刀具当前点(对刀点)在工件坐标系中的位置,因此必须单独一个程序段指定。 G92指令段一般放在一个零件程序的首段。,数控铣床常用编程指令,工件坐标系选择G54-G59 格式:,数控铣床常用编程指令,例如图12所示的使用工件坐标系的程序 N01 G54 G00 G90 X30 Y40 刀具从当前点移动到A点 N02 G59 建立新的工件坐标系 N03 G00 X30 Y30 刀具从A点移动到B点 ,数控铣床常用编程指令,局部坐标设定G52 格式:G52 X_ Y_ Z_ A_ B_ C_ U_ V_ W_ 其中, X、Y、Z、A、B、C、U、V、W为局部坐标系 原点在工件坐标系中的坐标值。 G52指令能在所有的工件坐标系(G54-G59)内形成子坐 标系,即设定局部坐标系。见图14。含有G52指令的程序段中,绝对值方式(G90)编程的移动指令就是在该局部坐标系中的坐标值。即使设定了局部坐标系,工件坐标系和机床坐标系也不变化。 G52指令仅在其被规定的程序段中有效。,数控铣床常用编程指令,直接机床坐标系编程G53 格式:G53 X _ Y _ Z_ 在含有G53指令的程序段中就是移动到机床坐标系中(相对于机床原点)的坐标值去。 G53指令仅在其被规定的程序段中有效。 注意:G53 ,G54G59都是要求机床回过参考点后才使用的指令。,数控铣床常用编程指令,坐标平面选择G17,G18,G19 格式:G17 G18 G19 该指令选择一个平面,在此平面中进行圆弧插补和刀 具半径补偿。 G17选择XY平面,G18选择ZX平面,G19选择YZ平面。 移动指令与平面选择无关。例如在规定了G17 Z_时,Z轴照样会移动。 G17、G18、G19为模态功能,可相互注销,G17为缺省值。,数控铣床常用编程指令,有关单位的设定 尺寸单位选择G20,G21,G22 格式:这3个G代码必须在程序的开头坐标系设定之前用单独的程序段指令。 G20,G21,G22不能在程序的中途切换,数控铣床常用编程指令,进给速度单位的设定G94、G95 格式:G94 F_ G95 F_ G94为每分钟进给,F的单位依G20/G21/G22的设定而分别为mm/min,in/min或脉冲当量/min。此外,G94 F_可以指定旋转轴的速度,旋转轴的速度单位为度/min或脉冲当量/min。 G95为每转进给,在F之后,直接指定刀具在主轴转一转的进给量,单位依G20/G21/G22的设定而分别为mm/r,in/r或脉冲当量/r 。这个功能必须在主轴装有编码器时才能使用。 G94、G95为模态功能,可相互注销,G94为缺省值,数控铣床常用编程指令,进给控制指令 快速定位指令G00 格式:G00 X_Y_Z_ 快速定位至终点,在G90时为终点在工件坐标系中的坐标;在G91时为终点相对于起点的位移量。 G00指令中的快进速度由机床参数对各轴分别设定, 快移速度可由面板上的进给修调旋钮修正。 G00一般用于加工前快速定位或加工后快速退刀。 G00为模态功能,可由G01、G02、G03功能注销。 在“图像显示”时,此程序所显示路径为红色,数控铣床常用编程指令之进给指令,单方向定位指令G60 格式:G60 X_Y_Z_ 其中,X、Y、Z为定位终点。 G60指令仅在其被规定的程序段中有效。 如右图: 从A或B点用G60的方式走到C点 则需要经过中间点的过渡; 这是负方向定位的一种形式。 在精密定位中用到,可消除反向间隙; ZJK7532把设成了0。,数控铣床常用编程指令之进给指令,线性进给指令G01 格式: G01 X _Y_Z_ F _ X、Y、Z为定位终点 G01指令刀具从当前位置以联动的方式,按程序段中F指令规定的合成进给速度,按线性路线(联动直线轴的合成轨迹为直线)移动到程序段所指定的终点。 G01和F都是模态代码,如果后续的程序段不改变加工的线型和进给速度,可以不再书写这些代码。G01可由G00、G02、G03或G33功能注销。,数控铣床常用编程指令之进给指令,圆弧进给及螺旋线进给指令G02,G03 圆弧进给 格式: 其中,a、bX, Y, Z 、I, J, K, R为圆弧半径,当圆弧圆心角小于180时,R为正值,否则R为负值,整圆编程时不可以使用R,只能用、;,数控铣床常用编程指令之进给指令,在不同平面内G02、G03的判断,G17,G18,G19,数控铣床常用编程指令之进给指令,例. 图23所示的圆弧程序。 G91 G03 X-20.0 Y20.0 I-30.0 J-10.0 F100 G90 G03 X20.0 Y40.0 I-30.0 J-10.0 F100 图24所示的整圆程序。 从A点顺时针一周时 G90时:G90 G02 (X30.0 Y0) I-30.0 (J0) F100 G91时:G91 G02 (X0 Y0) I-30.0 (J0) F100,数控铣床常用编程指令之进给指令,螺旋线进给 格式: 是与, 平面相垂直的轴的终点坐标。G02, G03分别为顺螺旋插补和逆螺旋插补,螺旋线插补的进给速度F为合成运动速度。 该指令是对另一个不在圆弧平面上的坐标轴施加运动 指令,对于任何角度(360的圆弧)可附加任一数值 的单轴指令。,数控铣床常用编程指令之进给指令,例. 图27所示的螺旋线程序 G91时:G91 G17 G03 X-30.0 Y30.0 R30.0 Z10 F100 G90时:G90 G17 G03 X0 Y30.0 R30.0 Z10 F100,数控铣床常用编程指令之进给指令,虚轴指令G07及正弦线插补 格式: G07 a 其中,aX,Y,Z,A,B,C,U,V,W。 在G07a0指令之后,a轴就被作为虚轴虚轴只参加计算,不运动 G07仅在其被规定的程度段中有效。虚轴仅对自动操作有效, 正弦曲线插补:是在螺旋线插补前,用G07将参加圆弧插补的某一轴指定为虚轴,则螺旋线插补变为正弦线插补。,数控铣床常用编程指令之进给指令,例.图28所示,关于Y Z平面上的单周期正弦曲线插补,X轴为虚轴。 X2+ Y2 = R2 (R:圆弧半径) Y=R SIN(2 Z /1) (1:单周期Z轴移动量) 程序如下: N01 G92 X0 Y0 Z0 N02 G07 X0 G90 G03 X0 Y.0 I0 J5.0 Z20.0 F100 N04 G07 X1 N05 M30,数控铣床常用编程指令之进给指令,参考点相关指令 自动返回到参考点G28 自动从参考点返回G29 格式:G28 X _Y_ Z_ 格式:G29 X _Y_Z_ N10 G91 G28 X100.0 Y20.0 (由A到B并返回参考点) N20 G29 X50.0 Y-40.0 (从参考点经由B到C),数控铣床常用编程指令之进给指令,刀具补偿功能指令 刀具半径补偿G40,G41,G42 格式: 其中刀补号地址D后跟的数值是刀具号,它用来调用内 存中刀具半径补偿的数值。,G40 _,_D_,数控铣床常用编程指令之进给指令,刀补方向的判别 G40是取消刀具半径补偿功能。 G41是在相对于刀具前进方向左侧进行补偿,称为左刀补 G42是在相对于刀具前进方向右侧进行补偿,称为右刀补, G40、G41、G42都是模态代码, 可相互注销。 在进行刀具半径补偿前,必须用G17或G18、G19指定补偿是在哪个平面上进行。,数控铣床常用编程指令之进给指令,例. 见图32所示的刀具半径补偿程序。设加工开始时刀具距离工件表面50mm,切削深度为10mm.,按增量方式编程 N10 G92 X0.0 Y0.0 Z50 N20 G91 G17 G00 由G17指定刀补平面 N30 G41 X20.0 Y10.0 D01 由刀补号码D01 指定刀补刀补启动 N35 Z-48 M03 S500 N38 G01 Z-12 F200 N40 G01 Y40.0 F100 进入刀补状态 N50 X30.0 N60 Y-30.0 N70 X-40.0 N80 G00 Z60 M05 N85 G40 X-10.0 Y-20.0解除刀补 N90 M30,数控铣床常用编程指令之进给指令,按绝对方式编程 N10 G92 X0.0 Y0.0 Z50 N20 G90 G17 G00由G17指定刀补平面 N30 G41 X20.0 Y10.0 D01 启动刀补 N35 Z2 M03 S500 N38 G01 Z-10 F200 N40 G01 Y50.0 F100 刀补状态 N50 X50.0 N60 Y20.0 N70 X10.0 N80 G00 Z50 M05 N85 G40 X0 Y0 解除刀补 N90 M30,数控铣床常用编程指令,刀具长度补偿G43,G44,G49 格式: 其中,a X,Y,Z,为长度补偿轴的终点坐标, H为长度补偿偏置号。 该指令不改变程序就可实现对a轴运动指令的终点位置进行正向或负向补偿。 无论是绝对指令还是增量指令,由H代码指定的已存入偏置存储器中的偏置值在G43时加,在G44时则是从a轴运动指令的终点坐标值中减去。计算后的坐标值成为终点。 G43、G44、G49都是模态代码,可相互注销。,数控铣床常用编程指令,例.图33所示的刀具长度补偿程序。 在MDI下设置H01= 4.0 (偏置值) N01 G91 G00 X120.0 Y80.0 M03 S500 N02 G43 Z32.0 H01 N03 G01 Z21.0 F1000 N04 G04 P2000 N05 G00 Z21.0 N06 X30.0 Y-50.0 N07 G01 Z41.0 N08 G00 Z41.0 N09 X50.0 Y30.0,数控铣床常用编程指令,N10 G01 Z25.0 N11 G04P2000 N12 G00Z57.0 H00 N13 X200.0 Y60.0 N14 M05 N15 M30 由于偏置号的改变而造成偏置值的改变时,新的偏置值并不加到旧偏置值上。例如,H01的偏置值为20.0,H02的偏置值为30.0时 G90 G43 Z100.0 H01 Z将达到120.0 G90 G43 Z100.0 H02 Z将达到130.0 刀具长度补偿同时只能加在一个轴上,因此下列指令将出现报警。要进行刀具长度补偿轴的切换,必须取消一次刀具长度补偿。 G43 Z_H_ G43 X_H_报警,数控铣床常用编程指令,编程实例,下面将以加工凸轮的实例介绍铣床加工零件的全过程 加工如下图所示的凸轮,毛坯是经过预先铣削加工过的规则铝板,且20、10孔已加工,尺寸为105mm105mm6mm.。,图6-11 凸轮零件,根据图纸要求,毛坯情况制定如下加工方案: 加工机床的选择:使用国产立式数控铣床。型号:XZK7532A(数控系统为华中I型)。 装夹方式:由于该零件有两个孔,可做一个一面两销简单夹具,其中10孔处为菱形销。定位夹紧示意图如图6-13所示。应该注意,由于在加工过程中,切削力是由螺栓螺帽拧紧在夹具、工件、垫板之间的摩擦力承受的,因此在不影响周边铣削的情况下,夹具、垫板的面积尽可能选大一些。,编程实例,刀具的选择:由于是外轮加工,选用立铣刀,又因为该零件轮廓较简单,所以刀具直径和长度的选择只需考虑刀具的刚度,在保证加工过程刀杆、刀具与垫板不发生干涉的情况下,刀具的长度尽可能短。据此,刀具直径选12,长度选50mm。 加工路线:由于零件轮廓较简单,只需考虑切入和切出的方式。按工艺原则的要求,切入和切出段尽可能与零件轮廓相切,以避免直接切入和切出时在工件上留下刀痕。加工路线如图6-12中的所示。 切削用量:主轴转速600rpm,进给速度200mm/min。,编程实例,切削用量:主轴转速600rpm,进给速度200mm/min。 加工程序的编制 确定工件坐标系。选择凸轮20孔圆心(即夹具上芯轴的中心)为X、Y轴零点,工件表面为Z轴零点,建立工件坐标系。起刀点选在O点,其Z坐标值要视装夹螺栓的高度而定,这里假定螺栓伸出高度的Z坐标值为30mm(即螺栓顶端到工件表面的距离),则起刀点Z坐标值可定为35(mm)。参见下图6-12、图6-13 。,B,C,O,Y,图6-12 加工轨迹图,编程实例,数学处理。在编制程序之前要计算每一圆弧的起点坐标和终点坐标值,有了坐标值方能正式编程。计算过程此处不再赘述,算得的基点坐标分别为E(18.856, 36.667),F(28.284,10.000), G(28.284,-10.000),H(18.856, -36.667)。 零件程序编制。根据算得的基点和设定的工件坐标系,编制的零件加工程序如下: %0001 零件程序号 #101=6; 设置f12立铣刀的刀补值(半径) N01 G92 X0 Y0 Z35; 建立工件坐标系 N02 G90 G00 G42 D101 X60.0 Y50.0;快速由点O移到点A(60,50,35), 并建立刀补 N03 Z-7.0 M03 F500 S600; 由点A下刀到(60,50,-7) N04 X0 Y50.0; 由点A到点B,切入 N05 G03 Y-50.0 J-50.0; 加工圆弧BC,编程实例,N06 G03 X18.856 Y-36.667 R20.0; 加工圆弧CD N07 G01 X28.284 Y-10.0; 加工直线DE N08 G03 X28.284 Y10.0 R30.0; 加工圆弧EF N09 G01 X18.856 Y36.667; 加工直线FG N10 G03 X0 Y50.0 R20.0; 加工圆弧GB N11 G01 X-20.0; 由点B到点H,切出 N12 G00 Z35.0; 抬刀 N13 G40 X0 Y0 M05; 取消刀补,回到对刀点O N14 M30; 程序结束,编程实例,加工操作 机床各轴回参考点。 建立机床坐标系 夹紧立铣刀。然后在工作台上安装夹具,并调整夹具的芯轴和销钉中心的连线与Y方向平行。 对刀操作: 调整机床使主轴中心与夹具芯轴中心同心。此时,屏幕上“机床坐标系”项目下显示的X、Y轴的值即为工件原点与机床原点X、Y轴的偏置值。记下此数据。 按图6-13所示安装工件,然后启动主轴,并手动操作X或Y轴,将刀具移到工件毛坯将被切掉的某一位置的上方,再缓慢下降Z轴,当刀具端面与工件表面接触时,表示已找到工件坐标系Z轴的零点,此时,屏幕上“机床坐标系”项目下显示的Z轴的值即为工件原点与机床原点Z轴的偏置值。记下此数据。,编程实例,先将Z轴抬高35mm,然后使X、Y轴移到工件原点,此时,刀具已处在起刀点的位置了。,编程实例,输入凸轮加工程序,并进行程序检验(语法检查、空运行等)、修改,直至程序无错误。 试切并检查零件是否合格,若合格,则说明该程序正确。否则应分析原因并采取相应措施。,编程实例,简化编程指令,镜像指令 缩放指令 旋转指令 固定循环 宏 程 序,镜像功能G24,G25 格式:G24 X_Y_Z_A_B_C_U_V_W_ M98 P_ G25 X_Y_Z_A_B_C_U_V_W_ G24建立镜像,由指令坐标轴后的坐标值指定镜像位置, G25指令用于取消镜像 G24、G25为模态指令,可相互注销,G25为缺省值。,简化编程指令,例. 图34所示的镜像功能程序。 %1主程序 N01 G92 X0 Y0 Z10 N02 G91 G17 M03 N03 M98 P100 加工 N04 G24 X0 Y轴镜像,镜像位置为X=0 N05 M98 P100加工 N06 G25 X0 取消Y轴镜像 N07 G24 X0 Y0 X轴、Y轴镜像,镜像位置为(0,0) N08 M98 P100加工 N09 G25 X0 Y0取消X、Y轴镜像,简化编程指令,N10 G24 Y0X轴镜像镜像位置为Y=0 N11 M98 P100加工 N12 G25 Y0取消X轴镜像 N13 M05 N14 M30 子程序(的加工程序)(略),简化编程指令,缩放功能G50,G51 格式: G51 X_Y_Z_P_ M98 P_ G50 其中,G51中的X、Y、Z给出缩放中心的坐标值,P后跟 缩放倍数。G51既可指定平面缩放,也可指定空间缩放。 用G51指定缩放开,G50指定缩放关。在G51后,运动指 令的坐标值以(X,Y,Z)为缩放中心,按P规定的缩 放比例进行计算。使用G51指令可用一个程序加工出形 状相同,尺寸不同的工件。G51、G50为模态指令,可 相互注销,G50为缺省值。,简化编程指令,例如在图35所示的三角形ABC中,顶点为A(30, 40),B(70, 40),C(50, 80),若缩放中心为D(50, 50),则缩放程序为 G51 X50 Y50 P2 执行该程序,将自动计算A,B,C三点坐标数据为A(10,30),B(90,30),C (50,110),从而获得放大一倍的ABC。 缩放不能用于补偿量,并且对A,B,C,U,V,W轴无效。,简化编程指令,旋转变换G68,G69 格式:G68 _P_ G69 其中,(、)是由G17,G18或G19定义的旋转中心,P为旋转角度,单位是(),0P360.000 G68为坐标旋转功能,G69为取消坐标旋转功能。 在有刀具补偿的情况下,先进行坐标旋转,然后才进行刀具半径补偿、刀具长度补偿。 在有缩放功能的情况下,先缩放后旋转。,简化编程指令,例. 如图36所示的旋转变换功能程序。 %1 主程序 N10 G90 G17 M03 N20 M98 P100 加工 N30 G68 X0 Y0 P45 旋转45 N40 M98 P100 加工 N50 G69 取消旋转 N60 G68 X0 Y0 P90 旋转90 N70 M98 P100 加工 N80 G69 M05 M30 取消旋转,简化编程指令,子程序 (的加工程序) %100 N100 G90 G01 X20 Y0 F100 N110 G02 X30 Y0 I5 N120 G03 X40 Y0 I5 N130 X20 Y0 I10 N140 G00 X0 Y0 N150 M99,简化编程指令,其余编程指令,暂停指令G04: 格式:G04 P (单位:秒) 段间过渡指令 准停校验:G09 非续效代码 精确停止校验方式:G61 续效代码 连续切削方式:G64 续校代码,与G61相互取消,固定循环指令,固定循环 数控加工中,某些加工动作循环已经典型化。例如,钻孔、镗孔的动作是孔位平面定位、快速引进、工作进给、快速退回等,这样一系列典型的加工动作已经预先编好程序,存储在内存中,可用包含G代码的一个程序段调用,从而简化编程工作。这种包含了典型动作循环的G代码称为循环指令 。,孔加工固定循环指令有G73,G74,G76,G80G89,通常由下述6个动作构成(见图37): X、Y轴定位 快速运动到R点(参考点) 孔加工 在孔底的动作 退回到R点(参考点) 快速返回到初始点。 固定循环的数据表达形式可以用绝对坐标(G90)和相对坐标(G91)表示,如图38所示,其中图(a)是采用G90的表示,图(b)是采用G91的表示。,固定循环指令,固定循环指令,固定循环的程序格式包括数据形式、返回点平面、孔加工方式、孔位置数据、孔加工数据和循环次数。数据形式(G90或G91)在程序开始时就已指定,因此,在固定循环程序格式中可不注出。固定循环的程序格式如下: G98(G99)G_X_Y_Z_R_Q_P_I_J_K_F_L_ 式中第一个G代码(G98或者G99)为返回点平面G代码,G98为返回初始平面,G99为返回R点平面 第二个G代码为孔加工方式, 即固定循环代码G73,G74,G76和G81 G89中的任一个,固定循环指令,X、Y为孔位数据,指被加工孔的位置 Z为R点到孔底的距离(G91时)或孔底坐标(G90时) R为初始点到R点的距离(G91时)或R点的坐标值(G90时) Q指定每次进给深度(G73或G83时) ,是增量植, Q0 I、J指定刀尖向反方向的移动量(分别在X、Y轴向上) P指定刀具在孔底的暂停时间 F为切削进给速度 L指定固定循环的次数。 G73、G74、G76和G81G89、Z、R、P、F、Q 、I、J、K不是模态指令。G80、G01G03等代码可以取消固定循环。,固定循环指令,在固定循环中,定位速度由前面的指令速度决定。孔加工类固定循环指令介绍如下: G73:高速深孔加工循环 该固定循环用于Z轴的间歇进给,使深孔加工时容易排屑,减少退刀量,可以进行高效率的加工。Q值为每次的进给深度(q)退刀用快速,其值k为每次的退刀量。Qk。 G73指令动作循环见图39。 例. %0073 N10G92 X0 Y0 Z80 N15G00 N20G98 G73 G90 X100 G90 R40 P2 Q-10 K5 G90 Z0 I2 F200 N30G00 X0 Y0 Z80 N40M30 注意:如果Z、K、Q移动量为零时,该指令不执行。,固定循环指令,固定循环指令,(2) G74:反攻丝循环 图40中给出了G74指令的动作次序。攻反螺纹时主轴反转,到孔底时主轴正转,然后退回。攻丝时速度倍率不起作用。使用进给保持时,在全部动作结束前也不停止。 例. %0074 N10G92 X0 Y0 Z80 F200 N20G98 G74 G91 X100 G90 R40 P10 G90 Z0 N30G0 X0 Y0 Z80 M30 注意:如果Z的移动量为零时。该指令不执行。,固定循环指令,(2) G74:反攻丝循环 图40中给出了G74指令的动作次序。攻反螺纹时主轴反转,到孔底时主轴正转,然后退回。攻丝时速度倍率不起作用。使用进给保持时,在全部动作结束前也不停止。 例. %0074 N10G92 X0 Y0 Z80 F200 N20G98 G74 G91 X100 G90 R40 P10 G90 Z0 N30G0 X0 Y0 Z80 M30 注意:如果Z的移动量为零时。该指令不执行。,固定循环指令,(3) G76:精镗循环 图41给出了G76指令的动作次序。精镗时,主轴在孔底定向停止后,向刀尖反方向移动,然后快速退刀,退刀位置由G98或G99决定。这种带有让刀的退刀不会划伤已加工平面,保证了镗孔精度。刀尖反向位移量用地址Q指定,其值q只能为正值。Q值是模态的,位移方向由MDI设定,可为X,Y中的任一个。 例. %0076 N10 G92 X0 Y0 Z80 N15 G00 N20 G99 G76 G91 X100 G91 R-40 P2 I-20 G91 Z-40 I2 F200 N30 G00 X0 Y0 Z80 N40 M30 注意:如果Z、Q、K移动量为零,该指令不执行。,固定循环指令,固定循环指令,(4) G81:钻孔循环(中心钻) 图42为G81指令的动作循环,包括X,Y坐标定位、快进、工进和快速返回等动作。 例. %0081 N10G92 X0 Y0 Z80 N15G00 N20G99 G81 G90 X100 G90 R40 G90 Z0 P2 F200 I2 N30G90 G00 X0 Y0 Z80 N40M30 注意:如果Z的移动位置为零,该指令不执行。,固定循环指令,(5) G82:带停顿的钻孔循环 该指令除了要在孔底暂停外,其他动作与G81相同。暂停时间由地址P给出。此指令主要用于加工盲孔,以提高孔深精度。 例. %0082 N10G92 X0 Y0 Z80 N15G00 N20G99 G82 G90 X100 G90 R40 P2 G90 Z0 F200 I2 N30G90 G00 X0 Y0 Z80 N40 M30 注意:如果Z的移动量为零,该指令不执行。,固定循环指令,(6) G83:深孔加工循环 在图43的深孔加工循环中,每次进刀量用地址Q给出,其值q为增量值。每次进给时,应在距已加工面d (mm) 处将快速进给转换为切削进给。d是由参数确定的。 例. %0083 N10G92 X0 Y0 Z80 N15G00 N20G99 G83 G91 X100 G90 R40 P2 Q-10 K5 Z0 F200 I2 N30G90 G00 X0 Y0 Z80 N40M30 注意:如果Z、Q、K的移动量为零,该指令不执行。,固定循环指令,(7) G84:攻丝循环 图44为攻丝的动作图。从R点到Z点攻丝时,刀具正向进给,主轴正转。到孔底部时,主轴反转 ,刀具以反向进给速度退出(这里:进给速度F=转速(r/min)螺矩 (mm),R应选在距工件表面7mm以上的地方)。G84指令中进给倍率不起作用,进给保持只能在返回动作结束后执行。 (8) G85:镗孔循环 该指令与G84指令相同,但在孔底时主轴不反转,固定循环指令,固定循环指令,(9) G86:镗孔循环 此指令与G81相同,但在孔底时主轴停止,然后快速退回。 例. %0086 N10G92 X0 Y0 Z80 N15G00 N20G98 G86 G90 X100 G90 R40 Q-10 K5 P2 G90 Z0 I2 F200 N30G90 G00 X0 Y0 Z80 N40M30 注意:如果Z的移动位置为零,该指令不执行。,固定循环指令,(10) G87:反镗循环 图45为G87指令动作图。在X、Y轴定位后,主轴定向停止,然后向刀尖的反方向移动q值,再快速进给到孔底(R点)定位。在此位置,刀具向刀尖方向移动q值。主轴正转,在Z轴正方向上加工至Z点。这时主轴又定向停止,向刀尖反方向位移,然后从孔中退出刀具。返回到初始点(只能用G98)后退回一个位移量,主轴正转,进行下一个程序段的动作。本指令中,刀尖位移量及方向与G76指令相同。 例. %0087 N10 G92 X0 Y0 Z80 N15 G00 F200 N20 G98 G87 G91 X100 Y100 I-10 G90 R0 P2 G90 Z40 I2 N30 G90 G00 X0 Y0 Z80 M05 N40 M30 注意:如果Z的移动量为零,该指令不执行。,固定循环指令,(11) G88:镗孔循环 图46中给出了该指令的循环动作次序。在孔底暂停 ,主轴停止后,转换为手动状态,可用手动将刀具从孔中退出。到返回点平面后,主轴正转,再转入下一个程序段进行自动加工。 例. %0088 N10 G92 X0 Y0 Z80 N15 G00 F200 N20 G98 G88 G90 X100 Y100 G90 R40 P2 G90 Z0 N30 G90 G00 X0 Y0 Z80 M05 N40 M30 注意:如果Z的移动量为零,该指令不执行。,固定循环指令,(12) G89:镗孔循环 此指令与G86指令相同,但在孔底有暂停。 例. %0089 N10 G92 X0 Y0 Z80 N15 G00 N20 G99 G89 G90 X100 Y100 G90 R40 Q-10 K5 P2 G90 Z0 I2 F200 N30 G90 G00 X0 Y0 Z80 N40 M30 注意:如果Z的移动量为零,该指令不执行。,固定循环指令,注意: 1、在固定循环中,定位速度由前面的指令决定。 2、各固定循环指令均为非模态值,因此每句指令的各项参数应写全。 3、固定循环中定位方式取决与上次是G00还是G01,因此如果希望快速定位则在上一行或本语句开头加G00。 (13) G80:取消固定循环 该指令能取消固定循环,同时R点和Z点也被取消。,固定循环指令,使用固定循环时应注意以下几点: 在固定循环指令前应使用M03或M04指令使主轴回转在固定循环程序段中,X, Y, Z, R数据应至少指令一个才能进行。 孔加工在使用控制主轴回转的固定循环(G74、G84、G86)中,如果连续加工一些孔间距比较小,或者初始平面到R点平面的距离比较短的孔时,会出现在进入孔的切削动作前时,主轴还没有达到正常转速的情况,遇到这种情况时,应在各孔的加工动作之间插入G04指令,以获得时间 .,固定循环指令,当用G00G03指令之一注销固定循环时,若G00G03指令之一和固定循环出现在同一程序段,当程序格式为 G00 (G02,G03) G_X_Y_Z_R_Q_P_F_L_ 时,按G_指定的固定循环运行 当程序格式为 G_ G00 (G02,G03) X_Y_Z_R_Q_P_F_L_ 时,按G00(或G02,G03)进行X、Y移动在固定循环程序段中,如果指定了辅助功能M,则在最初定位时送出M信号,等待M信号完成,才能进行孔加工循环。,固定循环指令,例 图47所示的钻孔循环程序(设Z轴开始点距工作表面100mm处,切削深度为20mm)。 G92 X0 Y0 Z10 G91 G00 S300 M03 G99 G81 X10.0 Y10.0 Z22.0 R98.0 F150用G99指令抬刀到R点 G99 G81 Y30.0 Z-22 R-98 G99 G81 X10.0 Y10.0 Z-22 R-98 G99 G81 X10.0 Z-22 R-98 G98 G81 X10.0 Y20.0 Z-22 R-98 G98指令刀具返回初始点 G80 X40.0 Y30.0 M05G80取消固定循环,只移动不加工M30,固定循环指令,例 图48所示的螺纹加工程序(设Z轴开始点距工作表面50mm处,切削深度为10mm)。 (i) 先用G81钻孔 G92 X0 Y0 Z50 G91 G00 M03 G98 G81 X40.0 Y40.0 Z-12.0 R-48.0 F100 G98 G81 X40.0 Z-12 R-98 L3 G98 G81 X-120.0 Y50.0 Z-12 R-48 G98 G81 X40.0 Z-12 R-48 L3 G80 X-160.0 Y-90.0 M05 M30,固定循环指令,(ii) 再用G84攻丝 G91 G00 M03 G99 G84 X40.0 Y40.0 Z17.0 R43.0 F280 G99 G84 X40.0 Z-17 R-43 L3 G99 G84 X120.0 Y50.0 Z-17 R-43 G99 G84 X40.0 Z-17 R-43 L3 G80 Z43.0 X160.0 Y90.0 M05 M30,固定循环指令,宏指令编程,华中型数控系统为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。,宏变量及常量 宏变量 #0#49 当前局部变量 #50#99 全局变量 #100#199 刀补号 100199的补偿值 #200#249 0层局部变量 #250#299 1层局部变量 #300#349 2层局部变量 #350#399 3层局部变量 #400#449 4层局部变量,宏指令编程,#450#499 5层局部变量 #500#549 6层局部变量 #550#599 7层局部变量 #600#699 刀具长度寄存器H0H99 #700#799 刀具半径寄存器D0D99 #800#899 刀具寿命寄存器 #1195#1199为固定循环使用,宏指令编程,常量 PI:圆周率 TRUE:真 FALSE:假,宏指令编程,运算符与表达式 算术运算符: +,-,*,/ 条件运算符: EQ(=),NE(),GT(),GE(),LT(),LE() 逻辑运算符: AND,OR,NOT 函数 SIN,COS,TAN,ATAN, ABS,INT,SIGN,SQRT,EXP,宏指令编程,表达式: 用运算符连接起来的常数,宏变量构成表达式。 例如:175/SQRT2 * COS55 * PI/180 #3*6 GT 14 赋值语句 格式:宏变量=常数或表达式 把常数或表达式的值送给一个宏变量称为赋值。 例如: #2 = 175/SQRT2 * COS55 * PI/180 #3 = 124.0,宏指令编程,条件判别语句IF, ELSE,ENDIF 格式 (i): IF条件表达式 ELSE ENDIF 格式(ii) :IF条件表达式 ENDIF 循环语句WHILE,ENDW 格式: WHILE 条件表达式 ENDW,宏指令编程,宏程序编制举例 例 切圆台与斜方台,各自加工3个循环,要求倾斜10的斜方台与圆台相切,圆台在方台之上,顶视图见图43。 %8002 #10=10.0圆台阶高度 #11=10.0方台阶高度 #12=100.0圆外定点的X坐标值 #13=80.0圆外定点的Y坐标值 #101=12.0刀具半径(偏大,粗加工) #102=6.5刀具半径(偏中,半精加工),宏指令编程,#103=6.0 刀具半径(实际,精加工) N01 G92 X0.0 Y0.0 Z10.0 #0=0 N02 G00 X #12 Y#13 N03 Z#10 WHILE #0 LT 3 加工圆台 N08+#0*6 G01 G42 X#12/2 Y175/2 F280.0 D#0+1 N09+#0*6 X0 Y175/2 N10+#0*6 G03 J175/2 N11+#0*6 G01 X#12/2 Y175/2 N12+#0*6 G40 X#12 Y#13 N13+#0*6 G00 X-#12 Y#13,宏指令编程,#0=#0+1 ENDW N100Z-#10-#11 #2=175/SQRT2*COS55*PI/180 #3=175/SQRT2*SIN55*PI/180 #4=175*COS10*PI/180 #5=175*SIN10*PI/180 #0=0 WHILE #0 LT 3,宏指令编程,加工斜方台 N101+#0*6 G01 G90 G42 X#2 Y#3 F280.0 D#0+1 N102+#0*6 G91 X+#4 Y+#5 N103+#0*6 X#5 Y+#4 N104+#0*6 X#4 Y#5 N105+#0*6 X+#5 Y#4 N106+#0*6 G00 G90 G40 X#12 Y#13 #0=#0+1 ENDW N200 G00 Z10 N201 M05 N202 G00 X0 Y0 N203 M30,宏指令编程,谢谢!各位老师!,
展开阅读全文