数控铣床的编程与操作_第1页
数控铣床的编程与操作_第2页
数控铣床的编程与操作_第3页
数控铣床的编程与操作_第4页
数控铣床的编程与操作_第5页
已阅读5页,还剩130页未读 继续免费阅读

下载本文档

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

文档简介

第4章数控铣床的编程与操作(时间:4次课,8学时)第4章数控铣床的编程与操作教学目标:数控铣是数控技术的典型应用,数控铣的编程指令和方法非常丰富。本章以三轴数控铣床为对象介绍数控铣的加工指令、循环指令和简化编程的指令,并通过实例介绍适用的编程技巧,使读者掌握完整的手工编程方法,为解决更复杂的铣削加工问题建立基础。本章的一系列操作实例与主要知识点相对应,指导读者同步掌握数控铣床的操作方法及步骤,在提高技能素质的同时,加深对各种指令功能和用法的理解。第4章数控铣床的编程与操作教学重点和难点:简单循环类指令。简化编程指令。刀具补偿类指令。子程序编程。宏程序。华中世纪星数控铣床功能与操作方法。

第4章数控铣床的编程与操作4.1数控铣床程序的编制特点4.2数控铣床的程序指令4.3数控铣床基本操作4.4实训4.5习题4.1数控铣床程序的编制特点铣削是机械加工最常用的方法之一,它包括轮廓铣削和平面铣削。使用数控铣床的目的在于解决复杂的和难以加工工件的加工问题,或是把一些通用机床可以加工、但效率不高的工件采用数控铣床加工,以提高加工效率。数控铣床功能各异,规格繁多。编程选择要考虑如何最大限度地发挥数控机床的特点。两坐标联动数控铣床用于加工平面零件轮廓,三坐标以上的数控铣床用于复杂工件的立体轮廓加工。数控铣床的数控系统有多种插补方法,一般都具有直线插补和圆弧插补功能。有的还具有极坐标插补、抛物线插补、螺旋线插补等多种插补功能。编程时要充分合理选用这些功能,以提高加工精度和效率。程序编制时要充分利用数控铣床齐全的功能,如刀具位置补偿、刀具半径补偿、刀具长度补偿和固定循环、对称加工等多种任选功能。直线、圆弧组成的平面轮廓铣削的数学处理一般比较简单。非圆曲线、空间曲线和曲面的轮廓铣削的数学处理比较复杂,一般要采用计算机辅助计算和自动编程。4.2数控铣床的程序指令4.2.1加工准备类指令4.2.2加工类指令4.2.3简单循环类指令及孔加工指令4.2.4简化编程指令及其他指令4.2.5刀具补偿类指令4.2.6子程序编程4.2.7宏程序4.2数控铣床的程序指令数控铣床配备的数控系统种类很多,本章以华中HNC-21M型数控系统为例,介绍它的各功能指令的用法。4.2.1加工准备类指令

1.准备功能G指令华中HNC-21M型数控系统G功能指令见表4.1。4.2.1加工准备类指令G代码组功能后续地址字G00◆G01G02G0301快速定位直线插补顺圆插补逆圆插补X,Y,Z,4THX,Y,Z,4THX,Y,Z,I,J,K,RX,Y,Z,I,J,K,RG04G0900暂停准停校验PG0716虚轴指定X,Y,Z,4THG17◆G18G1902X(U)Y(V)平面选择Z(W)X(U)平面选择Y(V)X(U)平面选择X,YX,ZY,ZG20G21◆G2208英寸输入毫米输入脉冲当量G24G25◆03镜像开镜像关X,Y,Z,4THG28G2900返回到参考点由参考点返回X,Y,Z,4THX,Y,Z,4THG40◆G41G4209刀具半径补偿取消左刀补右刀补DDG43G44G49◆10刀具长度正向补偿刀具长度负向补偿刀具长度补偿取消HHG50G5104缩放关缩放开X,Y,Z,PG52G5300局部坐标系设定直接机床坐标系编程X,Y,Z,4TH4.2.1加工准备类指令G代码组功能后续地址字G54◆G55G56G57G58G5911工件坐标系1选择工件坐标系2选择工件坐标系3选择工件坐标系4选择工件坐标系5选择工件坐标系6选择G6000单方向定位X,Y,Z,4THG61◆G6412精确停止校验方式连续方式G6500子程序调用P,A~ZG68G69◆05旋转变换旋转取消X,Y,Z,RG73G74G76G80◆G81G82G83G84G85G86G87G88G8906深孔钻削循环逆攻丝循环精镗循环固定循环取消定心钻循环钻孔循环深孔钻循环攻丝循环镗孔循环镗孔循环反镗循环镗孔循环镗孔循环X,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RX,Y,Z,P,Q,RG90◆G9113绝对值编程相对值编程G9211工件坐标系设定X,Y,Z,4THG94◆G9514每分钟进给每转进给G98◆G9915固定循环返回到起始点固定循环返回到R点4.2.1加工准备类指令2.辅助功能M代码华中HNC-21M型数控系统M指令功能见表4.2。4.2.1加工准备类指令代码模态功能说明代码模态功能说明M02非模态程序结束M03模态主轴正转起动M30非模态程序结束并返回程序起点M04模态主轴反转起动M98非模态调用子程序M05◆模态主轴停止转动M99非模态子程序结束M07模态切削液打开M06非模态换刀M09◆模态切削液停止表4.2M功能指令4.2.1加工准备类指令3.数控铣床的主轴功能S主轴功能S用来控制主轴转速,其后的数值表示主轴速度(由于铣床的刀具安装在主轴上,主轴转速即为刀具转速),单位为转/分钟(r/min)。S是模态指令,S功能只有在主轴速度可调节时才有效。4.2.1加工准备类指令4.数控铣床的进给速度FF指令用来控制加工工件时刀具相对于工件的合成进给速度,F的单位取决于G94(每分钟给进量,单位为mm/min)或G95(每转进给量,单位为mm/r)。当工作在G01、G02或G03方式时,编程的F值一直有效,直到被新的F值所取代为止。当工作在G00、G60方式时,快速定位的速度是各轴的最高速度,与所指定的F值无关。借助操作面板上的倍率选择开关,F值可在一定范围内进行倍率修调。当执行攻丝循环G84、螺纹切削G33时,倍率选择开关失效,进给倍率固定在100%。4.2.1加工准备类指令5.数控铣床与加工中心的刀具功能TT代码用于选刀,其后的数值表示选择的刀具号,T代码与刀具的关系是由机床制造厂规定的。在加工中心执行T指令时,首先刀库转动并选择所需的刀具,然后等待,直到M06指令作用时自动完成换刀。T指令同时调入刀补寄存器中的刀补值(刀补长度和刀补半径)。T指令为非模态指令,但被调用的刀补值一直有效,直到再次换刀调入新的刀补值。4.2.2加工类指令

(1) 数控铣的主要加工指令有线性进给指令G01,圆弧进给指令G02、G03。编程实例4-1:使用G02/G03对如图4.1所示的整圆编程。从A点顺时针转一周时:G90G02X30Y0I-30J0F300G91G02X30Y0I-30J0F300从B点逆时针转一周时:G90G03X0Y-30I0J30F300G91G03X0Y0I0J30F3004.2.2加工类指令

图4.1整圆编程图4.1整圆编程4.2.3简单循环类指令及孔加工指令在数控加工中,某些加工动作循环已经典型化。例如,钻孔、镗孔的动作是由孔位平面定位、快速进给、工作进给、快速退回等组成,这样一系列典型的加工动作可以预先编好程序,存储在内存中,可用称为固定循环的一个G代码程序段调用,从而简化编程工作。孔加工固定循环指令有G73、G74、G76、G80~G89,通常由下述6个动作构成(如图4.2所示)。通常,带箭头实线表示切削进给,带箭头虚线表示快速移动。① X、Y轴定位。② 定位到R点(定位方式取决于上次是G00还是G01)。③ 孔加工。④ 在孔底的动作。⑤ 退回到R点(参考点)。⑥ 快速返回到初始点。4.2.3简单循环类指令及孔加工指令固定循环的数据表达形式可以用绝对坐标(G90)和相对坐标(G91)表示。如图4.3所示,其中图4.3(a)是采用G90的表示,图4.3(b)是采用G91的表示。固定循环的程序格式包括数据形式、返回点平面、孔加工方式、孔位置数据、孔加工数据和循环次数。数据形式(G90或G91)在程序开始时就已指定,因此,在固定循环程序格式中可不注出。固定循环的程序格式如下。格式:G98(G99)G_X_Y_Z_R_Q_P_I_J__K__F__L__说明:该组指令用于控制孔加工固定循环。G98为返回初始平面;G99为返回R点平面;G为固定循环代码G73、G74、G76和G81~G89中之一;X、Y在G91时为加工起点到孔位的距离,在G90时为孔位坐标;R在G91时为初始点到R点的距离,在G90时为R点的坐标;Z在G91时为R点到孔底的距离,在G90时为孔底坐标;Q为每次进给深度(G73/G83);I、J为刀具在轴反向的位移增量(G76/G87);P为刀具在孔底的暂停时间;K指定每次退刀(G73或G83时)刀具位移增量,K≥0;F为切削进给速度;L为固定循环的次数。G73、G74、G76和G81~G89是同组的模态指令。其中定义的Z、R、P、F、Q、I、J、K地址在各个指令中是模态值,改变指令后需重新定义。G80、G01-G03等代码可以取消固定循环。4.2.3简单循环类指令及孔加工指令图4.2孔加工固定循环4.2.3简单循环类指令及孔加工指令图4.3固定循环的数据形式4.2.3简单循环类指令及孔加工指令1.高速深孔加工循环指令G73格式:G98(G99)G73X_Y_Z_R_Q_P_K__F__L__说明:G73用于高速深孔加工循环,其指令动作循环如图4.4所示。Q为每次进给深度;K为每次退刀距离。4.2.3简单循环类指令及孔加工指令图4.4G73指令动作循环实例4.2.3简单循环类指令及孔加工指令2.反攻丝循环指令G74格式:G98(G99)

G74X_Y_Z_R_P_F__L__说明:G74用于反攻丝循环,其指令动作循环如图4.5所示。4.2.3简单循环类指令及孔加工指令图4.5G74指令动作循环实例4.2.3简单循环类指令及孔加工指令3.精镗循环指令G76格式:G98(G99)G76X_Y_Z_R_P_I_J__K__F__L__说明:G76用于精镗循环,其指令动作循环如图4.6所示。I为X轴刀尖反向位移量;J为Y轴刀尖反向位移量。4.2.3简单循环类指令及孔加工指令图4.6G76指令动作循环实例4.2.3简单循环类指令及孔加工指令4.孔循环(中心钻)指令G81格式:G98(G99)G81X_Y_Z_R_F__L__说明:G81用于钻孔循环,其指令动作循环如图4.7所示。%0081G92X0Y0Z50G00G90M03S600G99G81X100R10Z0F200G90G00X0Y0Z50M05M304.2.3简单循环类指令及孔加工指令5.带停顿的钻孔循环指令G82格式:G98(G99)G82X_Y_Z_R_P_F__L__说明:G82用于带停顿的钻孔循环,其指令动作循环如图4.7所示。4.2.3简单循环类指令及孔加工指令图4.7G81指令实例4.2.3简单循环类指令及孔加工指令6.孔加工循环指令G83格式:G98(G99)G83X_Y_Z_R_Q_P_K__F__L__说明:G83用于深孔加工循环,其指令动作循环如图4.8所示。4.2.3简单循环类指令及孔加工指令图4.8G83指令实例4.2.3简单循环类指令及孔加工指令7.

攻丝循环指令G84格式:G98(G99)G84X_Y_Z_R_P_F__L__说明:G84用于攻丝循环,其指令动作循环如图4.9所示。G84攻螺纹时从R点到Z点主轴正转,在孔底暂停后,主轴反转,然后退回。4.2.3简单循环类指令及孔加工指令图4.9G84指令实例图4.9G84指令实例4.2.3简单循环类指令及孔加工指令8.孔循环指令G85G85指令与G84指令相同,但在孔底时主轴不反转。9.孔循环指令G86G86指令与G81指令相同,但在孔底时主轴停止,然后快速退回。4.2.3简单循环类指令及孔加工指令10.反镗循环指令G87格式:G98(G99)G87X_Y_Z_R_P_I_J__F__L__说明:G87用于精镗循环,其指令动作循环如图4.10所示。G87指令动作循环描述如下。① 在X、Y轴定位。② 主轴定向停止。③ 在X、Y方向分别向刀尖方向移动I、J值。④ 主轴正转。⑤ 在Z轴正方向上加工至Z点。⑥ 主轴定向停止。⑦ 在X、Y方向分别向刀尖反方向移动I、J值。⑧ 返回到初始点(只能用G98)。⑨ 在X、Y方向分别向刀尖方向移动I、J值。⑩ 主轴正转。4.2.3简单循环类指令及孔加工指令图4.10G87指令实例4.2.3简单循环类指令及孔加工指令11.镗孔循环指令G88格式:G98(G99)G88X_Y_Z_R_P_F__L__说明:G88指令动作循环如图4.11所示。动作循环描述如下。① 在X、Y轴定位。② 定位到R点。③ 在Z轴方向上加工至Z点(孔底)。④ 暂停后主轴停止。⑤ 转换为手动状态,手动将刀具从孔中退出。⑥ 返回到初始平面。⑦ 主轴正转。4.2.3简单循环类指令及孔加工指令图4.11G88指令实例4.2.3简单循环类指令及孔加工指令12.镗孔循环指令G88G89指令与G86指令相同,但在孔底有暂停。4.2.3简单循环类指令及孔加工指令13.取消固定循环指令G80该指令能取消固定循环,同时R点和Z点也被取消。这一节我们讨论了固定循环,在使用固定循环指令时应注意以下几点。① 在使用固定循环指令前应使用M03或M04指令使主轴旋转。② 在固定循环程序段中,X、Y、Z、R数据应至少指定一个才能进行孔加工。③ 在使用主轴回转的固定循环(G74、G84、G86)中,如果连续加工一些孔间距比较小或者初始平面到R点平面的距离比较短的孔时,会出现在进入孔的切削动作前,主轴还没有达到正常转速的情况。遇到这种情况时,应在各孔的加工动作之间插入G04指令,等待主轴转速上来。④ 当用G00~G03指令注销固定循环时,若G00~G03指令和固定循环出现在同一程序段,则按后出现的指令运行。⑤ 在固定循环程序段中,如果指定了M,则在最初定位时送出M信号,等待M信号完成,才能进行孔加工循环。编程实例4-10:使用G88指令编制如图4.12所示的螺纹加工程序。设刀具起点距工件表面100mm、切削深度为10mm。4.2.3简单循环类指令及孔加工指令图4.12G88指令编程实例4.2.4简化编程指令及其他指令

1.镜像功能指令G24、G25格式:G24X_Y_Z_A_M98P_G25X_Y_Z_A_说明:该组指令用于建立/取消镜像。G24为建立镜像;G25为取消镜像;X、Y、Z、A为镜像位置的参数。4.2.4简化编程指令及其他指令

编程实例4-11:使用镜像功能编制如图4.13所示轮廓的加工程序。设刀具起点距工件上表面100mm,切削深度5mm。4.2.4简化编程指令及其他指令

图4.13G24、G25指令实例4.2.4简化编程指令及其他指令

2.缩放功能指令G50、G51格式:G51X_Y_Z_P_M98P_G50说明:该组指令用于建立/取消缩放。G51为建立缩放;G50为取消缩放;X、Y、Z为缩放中心的坐标值;P为缩放倍数。G51既可指定平面缩放,也可指定空间缩放。4.2.4简化编程指令及其他指令

编程实例4-12:使用缩放功能编制如图4.14所示轮廓的加工程序。已知三角形ABC的顶点为A(10,30)、B(90,30)、C(50,110),三角形是缩放后的图形,其中缩放中心为D(50,50),缩放系数为0.5倍,设刀具起点距工件上表面50mm。4.2.4简化编程指令及其他指令

图4.14G50、G51指令实例4.2.4简化编程指令及其他指令

3.旋转变换G68、G69格式:G17G68X_Y_P_G18G68X_Y_P_G19G68X_Y_P_M98P_G69说明:该组指令用于建立/取消旋转变换。G68为建立旋转变换;G69为取消旋转变换;X、Y、Z为旋转中心的坐标值;P为旋转角度,单位是“°”,0°≤P≤360°。4.2.4简化编程指令及其他指令

编程实例4-13:使用旋转功能编制如图4.15所示轮廓的加工程序。设刀具起点距工件上表面50mm,切削深度5mm。编程:%0068 ;主程序G92X0Y0Z50G90G17M03S600G43Z-5H02M98P200 ;加工G68X0Y0P45 ;旋转45oM98P200 ;加工G68X0Y0P90 ;旋转90oM98P200 ;加工G49Z50G69M05M30 ;取消旋转%200 ;子程序G41G01X20Y-5D02F300Y0G02X40I10X30I-5G03X20I-5G00Y-6G40X0Y0M994.2.4简化编程指令及其他指令

图4.15G68、G69指令实例4.2.5刀具补偿类指令

1.刀具半径补偿指令G40、G41、G421) 刀具半径补偿的目的在数控铣床上进行轮廓的铣削加工时。由于刀具半径的存在,刀具中心(刀心)轨迹和工件轮廓不重合。如果数控系统不具备刀具半径自动补偿功能,则只能按刀心轨迹进行编程,即在编程时给出刀具的中心轨迹(如图4.16所示的点画线轨迹),其计算相当复杂,尤其当刀具磨损、重磨或换新刀而使刀具直径变化时,必须重新计算刀心轨迹,修改程序,这样既繁琐,又不易保证加工精度。当数控系统具备刀具半径补偿功能时,数控编程只需按工件轮廓进行(如图4.16中的粗实线轨迹),数控系统会自动计算刀心轨迹,使刀具偏离工件轮廓一个半径值,即进行刀具半径补偿。4.2.5刀具补偿类指令

图4.16刀具编程轨迹4.2.5刀具补偿类指令

2) 刀具半径补偿的方法刀具半径补偿是通过G41、G42、G40代码及D代码指定的刀具半径补偿号,建立或取消半径补偿。格式:G17(G18、G19)G40(G41、G42)G01(G00)X_Y_Z_D_说明:刀补号地址D后跟的数值是刀具号,它用来调用内存中刀具半径补偿的数值,如D01就是调用在刀具表中第一号刀具的半径值。这一半径值是预先输入在内存表中的01号位置上的。刀具半径补偿号地址数有100个,即D00~D99。G40是取消刀具半径补偿功能的。G41是在相对于刀具前进方向左侧进行补偿,称为左刀补,如图4.17(a)所示。G42是在相对于刀具前进方向右侧进行补偿,称为右刀补,如图4.17(b)所示。例如:G90G41G01X50Y40F100D01或G90G41G00X50Y40D01G41、G40、D均为续效代码。4.2.5刀具补偿类指令

图4.17刀具的补偿方向4.2.5刀具补偿类指令

刀具半径补偿的起始,如图4.18所示。刀具由起刀点(位于零件轮廓及零件毛坯之外,距离加工零件轮廓切入点较近的刀具位置)以进给速度接近工件,刀具半径补偿偏置方向由以G41(左补偿)或G42(右补偿)确定,起始段的实际轨迹如图4.18所示。在图4.18中,建立刀具半径左补偿的程序段如下。N10G90G92X-50.0Y-50.0Z0 ;定义程序原点,起始点坐标为〔-50.0,-50.0〕N20S1000M03 ;启动主轴N30G17G01G41X0Y0F100D01 ;建立刀具半径左补偿,刀具半径偏置寄存器号D01N40Y100.0 ;定义首段零件轮廓刀具半径补偿的取消,刀具撤离工件,回到退刀点。取消刀具半径补偿与建立刀具半径补偿过程类似,退刀点也应位于零件轮廓之外,距离加工零件轮廓退出点较近,可与起点相同,也可以不相同。如图4.18所示,假如退刀点与起刀点相同的话,其刀具半径补偿取消过程的命令如下。N150G01X0Y0; 定义末段轮廓N160G01G40X-50.0Y-50.0; 取消刀具半径补偿,退回到退刀点4.2.5刀具补偿类指令

图4.18补偿的起始轨迹4.2.5刀具补偿类指令

3) 刀具半径补偿功能的应用因磨损、重磨或换新刀而引起刀具直径改变后,不必修改程序,只需在刀具参数设置中输入变化后的刀具直径,即可适用于同一程序。同一程序中,对同一尺寸的刀具,利用刀具半径补偿,可进行粗、精加工。例如,刀具半径为R,精加工余量为A。粗加工时,输入刀具半径偏置量D=R+A。精加工时,用同一程序,同一刀具,但输入刀具半径偏置量D=R,则加工出要求的轮廓。4) 刀具半径补偿编程实例编程实例4-14:根据如图4.19所示的零件制定加工工艺、编写零件轮廓加工程序。(1) 工艺分析。① 技术要求。用刀具半径补偿功能完成一次零件的精加工,刀具半径补偿值6mm。② 加工工艺的确定。装夹定位的确定:用螺栓及两块压板在蜡模的两侧固定,使蜡模始终处于工作台中心位置。刀具加工起点及工艺路线的确定,如图4.20所示。刀具加工起点位置应在工件上方,不接触工件,但不能使空走刀行程太长。由于铣削零件平面轮廓时用铣刀的侧刃,为了避免在零件轮廓的切入点和切出点处留下刀痕,应沿轮廓外形的延长线切入和切出。切入和切出点一般选在零件轮廓两几何元素的交点处。此外,应避免在零件垂直表面的方向上下刀,否则会留下划痕,影响零件的粗糙度。所以刀具加工起点(P)位置可选为刀具底部在Z向距工件蜡模上表面10mm处,刀具中心在X向距蜡模右侧面20mm的位置;Y向距蜡模前侧面20mm的位置,即P点坐标为(20,-20,10)。采用逆铣方向,从A点切入,沿零件轮廓A→B→C→C→D→E→F→G→A,通过建立左刀补,调用刀具半径补偿偏置量,完成精加工,从A点切出;最后取消刀补,刀具回到起点位置。加工刀具的确定:圆柱铣刀(12mm)。切削用量:主轴转速为600r/min,进给速度为160r/min。4.2.5刀具补偿类指令

图4.19加工零件图4.2.5刀具补偿类指令

图4.20加工工艺路线4.2.5刀具补偿类指令

2.刀具长度补偿指令G43、G44、G491) 刀具长度补偿的目的一般零件的数控加工要经多刀多次加工,为了简化编程,使数控程序与刀具的长度尺寸尽量无关,现代CNC系统除了具有刀具半径补偿功能外,还具有刀具长度补偿功能。刀具长度补偿使刀具长度方向上偏移一个刀具长度修正值。因此,在数控编程过程中,一般无需考虑刀具长度。这样,避免了加工运行过程中多次换刀,而每把刀具长度的不同会给工件坐标系的设定带来困难。可想而知,如果第一把刀具正常切削工件,而更换一把稍长的刀具后如果工件坐标系不变,零件将被过切。刀具长度补偿在发生作用前,必须先进行刀具参数的设置。设置的方法有机内试切法、机内对刀法和机外对刀法。对数控铣床而言,较好的方法是采用机外对刀法。为采用机外对刀法测量的刀具长度,如图4.21所示,E点为刀具长度测量基准点,刀具的长度参数即为图中的L。不管采用哪种方法,所获得的数据都必须通过手动数据输入(MDI)方式将刀具参数输入数控系统的刀具参数表中。4.2.5刀具补偿类指令

图4.21刀具的测量长度4.2.6子程序编程

当同样的一组程序需重复使用多次时,为了简化编程,可以把重复的程序段编成子程序,在主程序不同的地方通过一定的调用格式多次调用。(1) 子程序格式子程序由子程序名、子程序体和子程序结束指令组成。例如:%Oxxxx 子程序名,%后跟程序号 子程序体,每段程序以“Enter”(回车键)结束M99 子程序结束在子程序开头,必须规定子程序号。在子程序的结尾用M99,以控制执行完该子程序后返回主程序。(2) 子程序调用的格式M98P_L_M98是主程序调用子程序的指令。指令中,P后跟被调用的子程序号,L后跟重复调用次数。当L=1时可省略L。M98用来调用子程序,M99指令表示子程序结束。当主程序执行M98时,控制系统将转到子程序去执行,子程序执行到M99返回到主程序断点处。一个子程序还可以调另一个子程序。在主程序呼调一个子程序的时候,是一重呼调,而多重子程序的呼调的执行情况如图4.25所示。4.2.6子程序编程

图4.25多重子程序调用4.2.6子程序编程

一次装夹加工多个相同零件或一个零件有重复加工部分的情况下可使用子程序。编程实例4-16:如图4.26所示,一次装卡,加工两个相同的工件。Z轴开始点为工件上方10mm处,切深10mm。编主程序和子程序。主程序O0001;N10G90G54G00X0Y0Sl000M03;N20Z100.0;N30M98P100;N40G90G00X80.0;N50M98P100;N60G90G00X0Y0M05;N70M30;子程序O100;N10G91G00Z-95.0;N20G41X40.0Y20.0D1;N30G01Z-15.0F100.0;N40Y30.0;N50X-10.0;N60X10.0Y30.0;N70X40.0;N80X10.0Y-30.0;N90X-10.0;N100Y-20.0;N110X-50.0;N120Z110.0;130X-30.0Y-30.0;M99;4.2.6子程序编程

图4.26加工两个相同的工件4.2.7宏程序

宏程序是由用户编写的专用程序,它类似于子程序,可用规定的指令作为代号,以便调用。宏程序的代号称为宏指令。用户可以使用变量进行算术运算、逻辑运算和函数的混合运算。此外,宏程序还提供了循环语句、分支语句和子程序调用语句,有利于编制各种复杂的零件加工程序,减少和免除手工编程时进行繁琐的数值计算,以及精简程序量。宏程序可使用变量,可用变量执行相应操作;实际变量值可由宏程序指令赋给变量。以下是FANUC系统宏程序的应用。4.2.7宏程序

1.宏程序的调用(1) 非模态调用。就是宏程序的简单调用,是指在主程序中,宏程序可以被单个程序段单次调用。格式:G65P

L

(变量分配);说明:G65——宏程序调用指令;P(宏程序号)——被调用的宏程序代号;L(重复次数)——宏程序重复运行的次数,重复次数为1时,可省略不写;变量分配——宏程序中使用的变量赋值。宏程序与子程序相同的一点是,一个宏程序可被另一个宏程序调用,可调用多重(多重调用的次数与系统有关)。(2) 模态调用。就是宏程序调用有续效作用。在模态调用中宏程序调用被取消前,宏程序在主程序中可以被多次调用。格式:G66P

L

(变量分配);调用取消指令:格式:G674.2.7宏程序

4.2.7宏程序

3.宏变量在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。1) 变量的表示变量可以用“#”号和跟随其后的变量序号来表示,如#i(i=1,2,3,…)。也可用表达式来表示变量,如#[表达式]。例如:#5#201#[#50]#[201-1]2) 变量的引用将跟随在一个地址后的数值用一个变量来代替,即引入了变量。例如,对于F#103,若#103=50时,则为F50。对于Z#110,若#110=-100时,则Z为-100。对于G#130,若#130=3时,则为G03。3) 变量的分配类型变量分为直接分配和引数分配两种类型。直接分配。变量可在操作面板直接输入,也可在MDI方式赋值,也可在程序内直接赋值:#_=数值。引数分配。宏程序体以子程序的方式出现,所用变量可在宏程序调用时赋值。如:G65P9120X100Y20F20;其中X、Y、F对应于宏程序中变量号,变量的具体数值由引数后的数值决定。引数与宏程序体中变量的对应关系见表4.3。其中G、L、N、O、P不能作为引数为变量赋值。例如:G65P1000A1.0B2.0I3.0;该程序段为宏程序的简单调用格式,其含义为:调用宏程序号为1000的宏程序运行一次,并为宏程序中的变量赋值,其中:#1为1.0,#2为2.0,#4为3.0。4.2.7宏程序

引数(自变量)变量引数(自变量)变量引数(自变量)变量A#1I#4T#20B#2J#5U#21C#3K#6V#22D#7M#13W#23E#8Q#17X#24F#9R#18Y#25H#11S#19Z#26表4.3引数与宏程序中变量的对应关系4.2.7宏程序

4.算术运算指令变量之间进行运算的通常表达式是:#i=(表达式)(1) 变量的定义和替换。#i=#j(2) 加减运算。#i=#j+#k 加#i=#j-#k 减(3) 乘除运算。#i=#j×#k 乘#i=#j/#k 除(4) 函数运算。#i=SIN[#j] 正弦函数 (单位为度)#i=COS[#j] 余弦函数 (单位为度)#i=TANN[#j] 正切函数 (单位为度)#i=ATANN[#j]/#k 反正切函数 (单位为度)#i=SQRT[#j] 平方根#i=ABS[#j] 取绝对值(5) 运算的组合。以上算术运算和函数运算可以结合在一起使用,运算的先后顺序是,函数运算、乘除运算、加减运算。表达式中括号的运算将优先进行。连同函数中使用的括号在内,括号在表达式中最多可用5层。4.2.7宏程序

5.控制指令(1) 条件转移格式:IF[条件表达式]GOTOn:以上程序段含义为:如果条件表达式的条件得以满足,则转而执行程序中程序号为n的相应操作,程序段号n可以由变量或表达式替代;如果表达式中条件未满足,则顺序执行下一段程序;如果程序作无条件转移,则条件部分可以被省略。表达式可按如下书写。#jEQ#k表示=#jNE#k表示≠#jGT#k表示>#jLT#k表示<#jGE#k表示≥#jEQ#k表示≤(2) 重复执行格式:WHILE[条件表达式]DOm(m=1,2,3)ENDm上述“WHILE…ENDm”程序含意为:条件表达式满足时,程序段DOm~ENDm即重复执行;条件表达式不满足时,程序转到ENDm后执行;如果WHILE[条件表达式]部分被省略,则程序段DOm至ENDm之间的部分将一直重复执行。4.2.7宏程序

以上仅介绍了宏程序应用的基本问题,有关应用的详细说明,请查阅系统说明书。编程实例4-17:如图4.27所示,要求沿直线方向钻一系列孔,直线的倾角由G65命令行传送的X和Y变量来决定,钻孔的数量则由变量T传送。主程序及宏子程序:G90G00X1.0Y1.0Z10; 刀具定位,起始孔位G65P9010X50.0Y25.0Z10.0F10T10; 调用9010宏子程序,传送的参数有X、Y、Z、F、TG28M30; 返回参考点,程序结束并返回O9010; 宏子程序T#20; 钻孔数量传给20号变量G81Z#26F#9; 定义钻孔循环,钻孔深度为10毫米,送给速 度传给9号变量G91; X、Y坐标改为增量坐标WHITLE[#20>0]D1; 如果20号变量>0,循环执行以下语句1次#20=#20-1; 孔数减lIF[#20RQ0]GOTO5; 如果孔数=0,转入N5结束G00X#24Y#25; 移到下一个孔位,增量编程,间距为X=50, Y=25N5END1; WHILE循环过程结束M99; 返回调用处4.2.7宏程序

图4.27直线上的孔位4.2.7宏程序

编程实例4-18:椭圆的表达式为X=a×cos,Y=b×sin,轮廓如图4.28所示。编辑椭圆轮廓程序。宏子程序:O9020;#0=5;定义刀具半径R值#1=20;定义a值#2=10;定义b值#3=0;定义步距角α的值,单位:度N10G92X0Y0Z10;N20G00X[#0+#1]Y[#0+#2];N30G01Z0;N40G41X[#1];N50WHILE#3GE[-360];N60G01X[#1*COS[3.142/180]]Y[#2*SIN[3*[3.142/180]];N70#3=#3-5;ENDWG01G91T[-#0];G00Z10;M99;4.2.7宏程序

图4.28椭圆轮廓4.3数控铣床基本操作4.3.1华中世纪星系统数控铣床介绍4.3.2操作方法及步骤4.3.3程序输入、检查及修改4.3.4数控铣床的操作及对刀操作4.3.5操作编程实例4.3数控铣床基本操作下面以配备华中世纪星HNC-21M系统的ZJK

7532-4数控铣床为例,介绍它的基本操作方法和步骤。4.3.1华中世纪星系统数控铣床介绍1.“世纪星”数控系统操作装置操作装置是操作人员与数控机床(系统)进行交互的工具。一方面,操作人员可以通过它对数控机床(系统)进行操作、编程、调试或对机床参数进行设定和修改;另一方面,操作人员也可以通过它了解或查询数控机床(系统)的运行状态,它是数控机床特有的一个输入/输出部件。4.3.1华中世纪星系统数控铣床介绍2.软件操作界面“世纪星”数控系统上电后,将在液晶显示器上显示它的软件操作界面,如图4.33所示,其界面由如下几个部分组成。4.3.1华中世纪星系统数控铣床介绍图4.33HNC-21M软件操作界面4.3.1华中世纪星系统数控铣床介绍(1) 显示窗口可以根据需要,用功能键F9设置窗口的显示内容。(2) 菜单命令条通过功能键F1~F10选择菜单命令条中的相应功能,来完成系统的菜单操作。(3) 运行程序索引显示自动加工中的程序名和当前正在运行的程序段行号。(4) 刀具在选定坐标系下的坐标值坐标系可在机床坐标系、工件坐标系和相对坐标系之间切换。显示值可在指令位置、实际位置、剩余进给、跟踪误差、负载电流和补偿值之间切换(负载电流只对HSV~11型伺服有效)。(5) 工件坐标系零点显示工件坐标系零点在机床坐标系下的坐标。(6) 倍率修调快速修调为当前快进修调倍率。进给修调为当前进给修调倍率。主轴修调为当前主轴修调倍率。(7) 辅助机能自动加工中的M、S、T代码。(8) 当前加工程序行当前正在或将要加工的程序段。(9) 当前加工方式、系统运行状态及当前时间系统工作方式根据机床控制面板上相应按键的状态可在自动(运行)、单段(运行)、手动(运行)、增量(运行)、回零、急停、复位等之间切换。系统工作状态在运行、出错间切换。系统时钟为当前时间。4.3.1华中世纪星系统数控铣床介绍3.系统菜单结构操作界面中最重要的内容是菜单命令条。系统功能的操作主要通过菜单命令条中的功能键F1~F10来完成。由于每个功能包括不同的操作,菜单采用了层次结构,即在主菜单下选择一个菜单项后,数控装置会显示该功能下的子菜单,编程人员可根据该子菜单的内容选择所需的操作,菜单层次如图4.34所示。

4.3.1华中世纪星系统数控铣床介绍图4.34菜单层次4.3.2操作方法及步骤

数控机床接通电源并复位后,首先要进行回参考点操作以建立机床坐标系,然后才能正确地手动控制或自动控制机床的运行。在自动运行之前,一般需要对刀,以建立工件坐标系,并正确设定工作参数和刀具偏置;在进行新零件的加工前,一般应先进行程序测试,以防发生人身事故、损坏刀具或工件。在运行过程中需要观察加工过程时,应设定例行的显示方式。在加工完成后,应用相应的测量工具对零件进行检测,检查是否达到加工要求。4.3.2操作方法及步骤

1.开机、关机及返回参考点1) 开机步骤操作实例4-1:开机操作。① 检查机床状态是否正常。② 检查电源电压是否符合要求,接线是否正确。③ 按下控制面板上的“急停”按钮(此步不是必须的,但建议依此操作)。④ 打开外部电源开关,启动机床电源。⑤ 接通数控系统电源。⑥ 检查风扇电机运转是否正常。⑦ 检查面板上的指示灯是否正常。若开机成功,数控系统自动运行系统软件。此时,液晶显示器显示如图4.33所示的系统上电屏幕(软件操作界面),工作方式为“急停”(“急停”按钮按下时)。2) 复位若在开机过程中按下了“急停”按钮,则系统上电进入软件操作界面时,系统初始模式显示为“急停”,为使数控系统运行,需顺时针旋转MCP右上角的“急停”按钮使其松开,使系统复位,并接通伺服电源。系统依方式选择按键的状态而进入相应的工作方式,软件操作界面的上方显示相应的工作方式。然后,机床操作者可按软件操作界面的菜单提示,运用NC键盘上的功能键和MDI键和控制面板的操作按键,进行后续的手动回参考点、点动进给、增量(步进)进给、手摇进给、自动运行、手动机床动作控制等操作。4.3.2操作方法及步骤

3) 返回机床参考点数控机床在自动方式和MDI方式下正确运行的前提是建立机床坐标系,为此,当数控系统接通电源、复位后,紧接着应进行机床各轴手动回参考点操作(使用绝对式测量装置时,可不回参考点)。此外,数控机床断电后再次接通数控系统电源、超程报警解除以后及急停按钮解除以后,一般也需要进行再次回参考点操作,以建立正确的机床坐标系。操作实例4-2:回参考点的操作。如果数控系统显示的当前工作方式不是回零方式,则按压控制面板上面的“回零”按键,确保数控系统处于“回零”方式。根据X轴机床参数“回参考点方向”,按压“+X”(“回参考点方向”为“+”)或“-X”(“回参考点方向”为“-”)按键,X轴回到参考点后,“+X”或“-X”按键内的指示灯亮。用同样的方法使用“+Y”、“-Y”、“+Z”、“-Z”、“+4TH”、“-4TH”按键,可以使Y轴、Z轴、4TH轴回参考点。当所有轴回参考点后,即建立了机床坐标系。此时,操作者可正确地控制机床自动或MDI运行。4) 关机步骤操作实例4-3:关机操作。① 按下控制面板上的“急停”按钮,断开伺服电源。② 断开数控系统电源。③ 断开数控机床电源。4.3.2操作方法及步骤

2.紧急情况的处理1) 急停机床运行过程中,在危险或紧急情况下,应按下“急停”按钮,使CNC进入急停状态,这时,伺服进给及主轴运转立即停止工作(控制柜内的进给驱动电源被切断);当故障排除后,可松开“急停”按钮(左旋此按钮即自动跳起),使CNC进入复位状态。紧急停止解除后应重新执行回参考点操作,以确保坐标位置的正确性。在上电和关机之前建议按下“急停”按钮,以减少电网对设备的冲击。2) 超程解除在伺服轴行程的两端各有一个极限开关,其作用是防止伺服机构被碰撞而损坏。每当伺服机构碰到行程开关时,就会出现超程报警。当某轴出现超程报警(“超程解除”按键内指示灯亮)时,数控系统视其为紧急情况,自动进入急停状态。操作实例4-4:退出超程状态。① 松开“急停”按钮,置工作方式为“手动”或“手摇”方式。② 一直按压着“超程解除”按键(数控系统会暂时忽略超程的紧急情况)。③ 在手动(手摇)方式下,使该轴向相反方向移动,退出超程状态。④ 松开“超程解除”按键。⑤ 若显示屏上运行状态栏“运行正常”取代了“出错”,表示已退出超程状态,数控系统恢复正常状况。4.3.3程序输入、检查及修改

从数控系统主菜单下,进入程序编辑功能子菜单,命令行与菜单条的显示如图4.35所示。4.3.3程序输入、检查及修改

图4.35编辑功能子菜单4.3.3程序输入、检查及修改

2.零件程序的建立、保存及删除1) 选择一个新文件新建一个文件进行编辑的操作步骤如下。在【选择编辑程序】菜单中,用“”、“”及Enter键选择新文件的路径。按Tab键将蓝色亮条移到【文件名】栏。按Enter键进入输入状态,蓝色亮条变为闪烁的光标。在【文件名】栏输入新文件的文件名,如:“NEW”。⑤ 按Enter键,系统将自动产生一个0字节的空文件。4.3.3程序输入、检查及修改

3.零件程序的校验程序校验用于对调入加工缓冲区的零件程序进行校验,并提示可能的错误。以前未在机床上运行的新程序在调入后最好先进行校验运行,正确无误后再启动自动运行。程序校验运行的操作步骤如下。(1) 调入要校验的加工程序。(2) 按机床控制面板上的“自动”按键进入程序运行方式。(3) 在【程序运行】子菜单下按F3键,此时软件操作界面的工作方式显示改为【校验运行】。(4) 按机床控制面板上的“循环启动”键,程序校验开始。(5) 若程序正确,校验完后,光标将返回到程序头且软件操作界面的工作方式显示改回为【自动】,若程序有错,命令行将提示程序的哪一行有错。4.3.4数控铣床的操作及对刀操作1.对刀方法数控铣床有几种对刀方法,但对刀的工作原理是相同的。常用的对刀方法有:①试切对刀;②采用百分表或千分表对刀;③采用寻边器对刀。一定要根据零件加工精度要求确定对刀方法。当零件加工精度要求较高时,可用杠杆百分表或千分表找正,使刀位点与对刀点一致。对刀点是工件在机床上定位装夹后,用于确定工件坐标系在机床坐标系中位置的基准点。为确保加工的正确,在编制程序时,应合理设置对刀点。一般来说,铣床对刀点应选在工件坐标系的原点上;或至少X、Y方向重合,Z方向选在工件表面上方,以免铣刀刃划伤工件表面。4.3.4数控铣床的操作及对刀操作2.试切对刀法的操作步骤试切法对刀需要对X轴、Y轴、Z轴分别对刀,确定对刀点和机床坐标值。操作实例4-5:试切对刀。(1) X轴对刀① 确定主轴上为加工所选的刀具,在手动工作方式下启动主轴中速旋转。② 手动移动铣刀,沿X方向靠近被测边,沿Z方向降低铣刀高度。③ 在步进工作方式下低速移动铣刀,直到铣刀刃轻微接触工件侧表面。④ 保持X坐标不变,沿Y方向切削工件被测边。⑤ 将此时机床坐标系下的X值记下来,根据刀具与工件被测边的位置关系加上或减去刀具半径值,其结果值就是被测边的X偏置值。如刀具在工件被测边左侧,则:X偏置值=试切被测边所得机床坐标系下的X值+刀具半径如刀具在工件被测边右侧,则:X偏置值=试切被测边所得机床坐标系下的X值-刀具半径4.3.4数控铣床的操作及对刀操作(2) Y轴对刀沿Y方向重复以上操作,记下试切被测边所得机床坐标系下的Y值。被测边的Y偏置值计算方法如下。如刀具在工件被测边前方,则:Y偏置值=试切被测边所得机床坐标系下的Y值-刀具半径如刀具在工件被测边后方,则:Y偏置值=试切被测边所得机床坐标系下的Y值+刀具半径(3) Z轴对刀① 手动移动铣刀,使刀具靠近被测工件上表面,沿Z方向降低铣刀高度。② 在步进工作方式下用0.01mm低速移动铣刀,直到铣刀刃轻微接触工件侧表面。③ 保持Z坐标不变,将此时机床坐标系下的Z值记下来,该值就是被测边的Z偏置值。4.3.5操作编程实例

操作实例4-6:加工工件如图4.41所示,完成零件上部平面轮廓和4组孔的铣削编程与加工。坯料尺寸120mm×100mm×22mm。4.3.5操作编程实例

图4.41加工工件图4.3.5操作编程实例

1.数控铣削过程2.工装夹具及刀具的准备 3.对刀和坐标系的建立4.编程5.程序的输入与检查6.切削用量7.刀补的建立和加工8.检查与检验9.加工注意事项4.4实训1.实训目的:(1) 掌握零件平面轮廓铣削的手工编程。(2) 正确选择刀具和切削参数。(3) 正确安装工件。(4) 掌握铣床对刀方法,建立工件坐标系。(5) 掌握程序的输入与编辑。(6) 熟悉数控铣床的操作。4.4实训2.实训内容:如图4.42所示,加工工件毛坯为85mm×30mm的圆柱,材料为硬铝,加上其上部轮廓后形成如图所示的凸台。要完成零件上部平面轮廓和孔的铣削编程与加工。进行如下实训。(1) 铣削加工的零件工艺分析(包括设备、装夹方式、加工顺序和走刀路线)。(2) 编制数控加工程序。(3) 加工操作的详细过程(包括:开机、装夹工件、对刀、程序输入及校验、刀补参数的输入、加工)。4.4实训图4.42加工工件图4.5习题填空题(1) 数控铣床的默认加工平面是________。(2) G41的指令是________。(3) 数控铣床的基本控制轴数是________。(4) 圆弧插补指令G03X_Y_R_中,X、Y后的值表示________。(5) 辅助功能中主轴停止的M指令是________。4.5习题选择题(1) G00指令与下列的()指令不是同一组的。A.G01 B.G02,G03 C.G04(2) 刀具长度补偿值的地址是()。A.D_ B.K_ C.R_ D.J_(3) 数控机床开机时,一般要进行回参考点的操作,其目的是()。A.建立机床坐标系 B.换刀准备开始加工C.建立局部坐标系 D.A、B、C都是(4) 在铣削内槽时,刀具进给路线应采用()加工比较合理。A.行切法 B.环切法 C.综合行切、环切法 D.都不正确(5) 用华中世纪星系统孔的加工循环功能加工深孔时,可采用()指令。A.G81 B.G82 C.G83 D.G84(6) ()情况下经常用子程序编程。A.零件加工部位完全一样。 B. 零件尺寸变化有规律C.零件尺寸按比例变化 D. 在需要简化编程计算时4.5习题判断题(1) 圆弧插补中,对于整圆,其起点和终点相重合,用R编程无法定义,所以只能用圆心坐标编程。 ()(2) 数控机床编程有绝对值和增量值编程,使用时不能将它们放在同一程序段中。 ()(3) G代码可以分为模态G代码和非模态G代码。 ()(4) 顺时针圆弧插补(G02)和逆时针圆弧插补(G03)的判别方向是:沿着

温馨提示

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

最新文档

评论

0/150

提交评论