数控铣削编程与加工(第二版)(txt+pdf+epub+mobi电子书下载)

作者:赵刚 主编

出版社:化学工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

数控铣削编程与加工(第二版)

数控铣削编程与加工(第二版)试读:

前言

本书第一版完成于2007年,分为编程指令篇、机床加工操作篇和加工实例篇三个模块,主要针对FANUC 0i系统数控机床的铣削加工进行讲解,以手工编程为主。

随着时代的发展,2010年,我国正式加入了世界技能组织,参加了世界技能大赛。对接世界大赛标准,第二版主要针对FANUC 0i和SINUMERIK 828D这两款世界技能大赛数控铣项目指定系统的数控机床铣削编程加工进行讲解,分为3篇,第1篇为编程与操作基础、第2篇为加工实例、第3篇为项目教学,自动编程软件采用MasterCAM。

本书实用性强,编写过程中力求使理论知识与实践技能并重,书中很多实例均来源于一线教师多年的教学与生产实践。作为教学改革实践,本书新增了项目教学篇,探索教学改革、紧密结合实践是本书的一大特色。

本书可供广大数控机床操作人员与编程人员学习使用,也可作为职业院校数控相关专业师生组织教学及实训环节时的参考用书。

本书由湖南工贸技师学院赵刚任主编,王斌、罗海任副主编,陈夕明、冯涛、谭志明参加了编写,编写过程中得到了学校领导以及兄弟学院相关老师的大力支持和帮助,他们提出了很多宝贵的意见和建议,在此表示衷心的感谢。

由于水平所限,书中不当之处在所难免,恳请广大读者批评指正。编者第1篇 编程与操作基础第1章 数控编程概述

数字控制是由程序中的指令控制系统去执行以往必须由人工操作的所有加工动作。故学习程序编制必须完全了解程序中指令的功能及格式,这样才能将传统人工操作机床设备的加工经验及相关知识,很正常地用指令来描述加工顺序。简而言之,数控铣床(或加工中心)的程序就是依据已具有的加工知识和加工顺序,用正确的指令依序描述组合而成。

特别注意的是,编制数控程序时必须考虑以下几点。

①依工件形状及尺寸标示决定程序原点位置及加工顺序。

②工件的夹持方法:用台虎钳夹持或用T形槽螺栓、垫板或制作特殊夹具。

②刀具的选择:包括铣刀的直径、刀刃长度、材质及其他刀具的选用并决定各把刀具的刀号及刀具半径补正地址、长度补正地址。

④切削条件:包括各把刀具的主轴转速、切削深度、进给率、精铣预留量等。1.1 NC程序简介1.1.1 NC程序格式简介

数控程序是由指令组成,而指令是由英文字母与数值(如N10,G28,G90,G91,M03,F100,S2500,T01 等)或特殊符号(如单节选择性指令“/”、单节结束指令“;”等)组成。不同的系统使用的指令和代码的格式是不同的,不能盲目照搬,本章所用指令均按照在我国应用得较为广泛的FANUC 0i系统的代码格式为蓝本进行编写。

NC程序示例:O0001;N10 G28 G91 Z0;N20 G28 X0 Y0;N30 G54;N40 M06 T01;N50 M03 S1000;N60 G90 G00 G43 Z5.H01;N70 G00 G41 X25.Y30.D11;N80 G01 Z-5.F50;N90 M30;

示例中每一行称为一个程序段,每一程序段由至少一个程序字(Word)组成,程序字由一个地址符(Address)和数值(Number)组成。每一单节后面加一单节结束符号“;”,以界定单节的范围。如此CNC控制器即依照程序中的单节指令,依序执行程序。

地址符用英文字母表示,其含义如表1-1所示,地址符依照已设定的程序功能而有不同的含义,其目的在于限定其后数字的含义。表1-1 地址符的功能及其含义1.1.2 数据输入格式简介

NC程序中的每一指令均有一定的固定格式,使用不同的控制器其格式也不同,故必须依据该控制器的指令格式书写指令,若其格式有错误,则程序将不被执行而出现报警信息。

其中,以数值资料输入时应特别小心。一般数控铣床或加工中心均可选择用公制单位“mm”或英制单位“in”为坐标数值的单位。公制可精确到0.001mm,英制可精确到0.0001in,这也是一般数控机床的最小移动量。如输入X1.23456时,实际输入值是X1.234mm或X1.2345in,多余的数值即被忽略不计。且字也不能太多,一般以7个字为限,如输入X1.2345678,因超过7个字,会出现报警信息。故在程序编制时,要确定不超过数控机床规定的实际限制(即不要超过最小脉冲当量),一定要参照数控机床制造厂商给出的说明书。1.1.3 坐标位置数值的表示方式

数控程序控制刀具移动到某坐标位置,其坐标位置数值的表示方式有以下两种。(1)用小数点表示法

用小数点表示法即数值的表示用小数点“.”明确地标示个位在哪里。例如“X25.36”,其中5为个位,故数值大小很明确。(2)不用小数点表示法

不用小数点表示法是指数值中无小数点,则CNC控制器会将此数值乘以最小移动量(公制0.001mm,英制0.0001in)作为输入数值。例如“X25”,CNC控制器会将25×0.001mm=0.025mm作为输入数值。要表示“X25mm”,可输入“X25.”或“25000”。一般用小数点表示法较方便,并可节省CNC控制器的存储空间,故常被使用。

以下的地址符均可选择使用小数点表示法或不使用小数点表示法:X、Y、Z、I、J、K、F、R等。但也有一些地址符不允许使用小数点表示法,如P、Q、D等。一般均采用小数点表示方式来描述坐标位置数值。在键入数控程序,尤其是坐标数值是整数时,常常会遗漏小数点。例如想要输入“25mm”,但键入“25”,其实际的数值是0.025mm,相差1000倍,可能会发生撞机或大量铣削,要小心谨慎。1.1.4 选择性执行符“/”

在单节的最前端加一斜线“/”(选择性执行符)时,该单节是否被执行,是由机床操作面板上的单节选择性执行按钮来决定的。当置于“ON”(机床灯亮),则该单节会被忽略而不被执行;当置于“OFF”(灯灭),则该单节会被执行。例如:N1;…/M00;N2;…/M00;

说明:M00为暂停指令,选择性执行时,加工中使用便于操作者对工件的尺寸进行测量,控制工件的加工质量。1.1.5 程序段注释符“()”

为了方便检查、阅读数控程序,在许多数控系统中允许对程序进行注释,注释可以作为对操作者的提示显示在屏幕上,注释对机床动作没有丝毫影响。注释应放在程序号或程序段号的后面,并用“()”括起来,不允许将注释插在地址和数字之间,如以下程序所示:O0007;(PROGRAM NAME-CILUN)(DATE-DD-MM-YY-10-06-05 TIME=HH:MM-20:54)N100 G21 G0 G17 G54 G40 G49 G80 G90;1.2 地址符详解1.2.1 程序段号地址符N

数控程序的每一单节之前可以加一顺序号码,以地址符N后面加上1~9999数字表示。顺序号码与数控程序的加工顺序无关,它只是那一单节的代号,故可任意编号。但最好以由小到大的顺序编写,较符合人们的思维习惯。

使用技巧:为节省存储空间,提高编程效率,每一单节前面无需都书写程序段号,程序段号常跟注释、说明,并不影响加工。例如:N1; (FIRST)G90 G54 G40 G17 G49 G80;…N2;(SECOND)…

同时,程序段号也可以作为循环语句的标识。例如:N1 IF[#2 LT 1.0] GOTO3#1=#1+5.0;#2=#2-1.0;GOTO1;N3#2=#2-1.0;

使用CAM软件时,生成的刀路文件经过后处理,程序段号可以自动生成,自动换行,省去了单节结束指令“;”,具体的示例如下:%00000(PROGRAM NAME-HY10)(DATE=DD-MM-YY-27-02-02 TIME=HH:MM-12:50)((UNDEFINE)T00L-1 DIA.OFF.-41 LEN.-1 DIA.-10.)N100G21N102G0G40G49G80G90N104T1M6N106G0G90G54X-19.305Y-15.6S1200M3N108G43H1260.M8N110234.8N112G1Z29.8F2.N114X19.305N116G0250.N118X24.248Y-5.21.2.2 主轴功能地址符S

用代码指定主轴速度,并不会使机床主轴转动,需和M03、M04指令配合使用。一个程序段只能包含一个S代码,关于S代码后的数值位数和S代码与运动指令在同一程序段时程序如何执行可参考相关的机床说明书。

直接指定主轴速度值,主轴速度可以直接用地址符S后的最多5位数值(r/min)指定。指定主轴转速的5位数值的单位,取决于机床厂的规定,详细情况见机床制造厂提供的说明书,操作时结合机床操作面板的主轴倍率开关一起使用。1.2.3 刀具功能地址符T

在地址符T后一般指定2位数字用以选择机床上的刀具。在一个程序段中只能指定一个T代码。数控铣床无ATC(自动换刀装置),只能手动换刀,所以T功能只用于加工中心,且加工中心并不是在任意位置都可以换刀,要避免与工作台、工件、夹具等发生碰撞,一般是设定在参考点换刀的。例如:G91 G28 Z0;(Z轴回归参考点)G28 X0 Y0; (X、Y轴回参考点)M06 T03; (主轴更换第3把刀具)1.2.4 进给功能地址符F

直线插补G01及圆弧插补G02、G03等的进给速度是用F代码后面的数值指令的,主要用如下两种方式指定。(1)每分进给(G94)

在地址符F之后指定每分钟的刀具进给量,单位为mm/min,如图1-1所示。图1-1 每分进给量示意图(2)每转进给(G95)

在地址符F之后指定主轴每转的刀具进给量,单位为mm/r。1.2.5 辅助功能地址符M

辅助功能又称M功能,由地址符M及其后的两位数字组成。它与数控系统的插补运算无关,是根据加工时机床操作的需要给予规定的工艺性指令。常用的M代码及其功能如表1-2所示。表1-2 常用的M代码及其功能

通常在一个程序段中仅能指定一个M代码,对于M03和M04,主轴的正转和反转是从Z轴的正向朝负向观察,主轴顺时针转动为M03,主轴逆时针转动为M04,具体可参见图1-2。图1-2 M03和M04示意图1.2.6 准备功能G指令

准备功能又称G功能,它是建立机床或控制系统工作方式的一种命令,它由地址符G及其后的两位数字组成。常用的G代码及其功能如表1-3所示。表1-3 常用的G代码及其功能

可以看到,G代码被分为了不同的组,这是由于大多数的G代码是模态的。模态G代码,是指这些G代码不只在当前的程序段中起作用,而且在以后的程序段中一直起作用,直到程序中出现另一个同组的G代码为止。同组的模态G代码控制同一个目标但起不同的作用,它们之间是不兼容的。

00组的G代码是非模态的,这些G代码只在它们所在的程序段中起作用。标有带★号的G代码是机床通电时默认的代码。对于G00和G01、G90和G91,机床通电时的状态由系统参数决定。如果程序中出现错误的G代码,CNC会显示报警。

同一程序段中可以有几个G代码出现,但当两个或两个以上的同组G代码出现时,最后出现的一个(同组的)G代码有效。

在固定循环模态下,任何一个01组的G代码都将使固定循环模态自动取消,成为G80模态。(1)快速点定位(G00)

指令格式:G00 IP ;

IP 在本书中代表任意不超过三个进给轴地址的组合,当然,每个地址后面都会有一个数字作为赋给该地址的值,一般机床有三个或四个进给轴即X、Y、Z、A,所以IP 可以代表如 X18.Y179.Z-39.或 X257.3 Z73.5 A45.等内容。

G00这条指令就是使刀具快速移动到IP 指定的位置,被指令的各轴之间的运动是互不相关的,也就是说刀具移动的轨迹不一定是一条直线。其移动速率可由执行操作面板上的“快速进给率”旋钮调整,并非由F机能制定。

若X、Y、Z轴最快移动速率为3000mm/min,则“快速进给率”旋钮调整方式如表1-4所示。表1-4 “快速进给率”旋钮调整方式

只要非切削的移动,通常使用G00指令,如由机床原点快速定位至切削起点,切削完成后的Z轴退刀及X、Y轴的定位等,以节省加工时间。

G00编程举例:起始点位置为X10 Y10,执行指令G00 X40 Y40将使刀具走出如图1-3(a)所示的轨迹;如果起始点位置仍为X10 Y10,执行指令G00 X40 Y60将使刀具走出如图1-3(b)所示的轨迹,这是CNC装置插补运算的结果。图1-3 G00示意图(2)直线插补(G01)

指令格式:G01 IP  F ;

G01指令使当前的插补模态成为直线插补模态,刀具从当前位置移动到 IP指定的位置,其轨迹是一条直线,F指定了刀具沿直线运动的速度,单位为mm/min(X、Y、Z轴)。该指令是最常用的指令之一。

假设当前刀具所在点为X10 Y10,执行如下程序段:N10 G01 X40 Y40 F100;N20 X80 Y40;

将使刀具走出如图1-4所示轨迹。图1-4 G01示意图

由上可知,程序段N20并没有指令G01,由于G01指令为模态指令,所以N10程序段中所指令的G01在N20程序段中继续有效;同样地,指令F100在N20段也继续有效,即刀具沿两段直线的运动速度都是100mm/min。(3)圆弧插补(G02/G03)

下面所列的指令可以使刀具沿圆弧轨迹运动。

在XY平面:

在ZX平面:

在YZ平面:

①平面选择。

G17:指定XY平面上的圆弧插补。

G18:指定ZX平面上的圆弧插补。

G19:指定YZ平面上的圆弧插补。

②圆弧方向。

G02:顺时针方向的圆弧插补。

G03:逆时针方向的圆弧插补。

这里所讲的圆弧方向,对于XY平面来说,是由Z轴的正向往Z轴的负向看XY平面所看到的圆弧方向;同样,对于ZX平面或YZ平面来说,观测的方向则应该是从Y轴或X轴的正向到Y轴或X轴的负向(图1-5)。图1-5 圆弧判别方向示意图

③终点位置。

G90 模态:当前工件坐标系中终点位置的坐标值。

G91 模态:从起点到终点的距离(有方向)。

④两种不同的编程方式。

方法一 给定终点和向量。【例1-1】 编写如图1-6所示刀具从A点到B点的加工程序。图1-6 向量编程G17 G03 X5.0 Y14.0 I-10.0 J0 F100;

地址符I、J后的数据表示的是圆弧起点指向圆心的向量,数值的计算方法是用圆心的坐标减去圆弧起点的坐标差值。

方法二:给定半径和终点。

对一段圆弧进行编程,还可以用给定半径和终点位置的方法,用地址符R来给定半径值,替代给定圆心位置的地址。R的值有正负之分,一个正的R值用于一段小于或等于180°圆弧的编程,一个负的R值则用于一段大于或等于180°圆弧的编程。编程加工一个整圆时,只能使用给定终点和向量的方式。【例1-2】 编写如图1-7所示刀具从A点到B点的加工程序。图1-7 半径编程G17 G03 X5.0 Y14.0 R10.0 F80;

G17在机床通电时默认,进给率也可以由自保持功能不写,故以上程序段也可以写为:G03 X5.0 Y14.0 R10.0;【例1-3】 编写如图1-8所示刀具从A点到B点再沿顺时针方向回到B点的加工程序。图1-8 半径和向量编程G3 X10.0 Y15.0 R-15.0 F240;G2 I0 J15.0;

以上第二个程序段也可以写为:G2 J15.0;(4)绝对值和增量值编程(G90和G91)

有两种指令刀具运动的方法:绝对值指令和增量值指令。在绝对值指令模态下,指定的是运动终点在当前坐标系中的坐标值;而在增量值指令模态下,指定的则是各轴运动的距离。

G90和G91这对指令被用来选择使用绝对值模态或增量值模态。在同一程序中可以绝对和增量值混合使用,原则是依据工件图上的尺寸的表示,用哪种方式表示方便,则使用哪种。现以图1-9~图1-11说明。图1-9 G90示意图图1-10 G91示意图图1-11 绝对值和增量值的混合使用示意图

指令格式:G90 X  Y  Z ;

     G91 X  Y  Z ;

在使用上,人工编程大都以绝对值和增量值混合使用较多。简而言之,哪种方式不用计算即可得到坐标位置,则以哪种方式表示,这样比较方便。现以图1-11进行说明。

设定刀具在H点,沿着A→B→C→D→E→F→G→工件原点→A点,完成轮廓切削的程序如下:G90 G01 X18.F100;(H→B,用绝对值表示较方便)G91 X35.Y-20.;(B→C,用增量值表示较方便)G90 X92.;(C→D,用绝对值表示较方便)Y15.;(D→E,用绝对值表示较方便)G91 X-60.;(E→F,用增量值表示较方便)Y-15.;(F→G,用增量值或绝对值表示均方便,但沿用上单节增量指令,可不必再用G90设定为绝对值,故用增量值表示)X-32.;(G→程序原点,理由同上)Y60.;(程序原点→A,理由同上)(5)英制/公制单位选择(G20/G21)

G20:设定程序以in为单位,最小数值为0.0001in。

G21:设定程序以mm为单位,最小数值为0.001mm。

数控铣床或加工中心一开机即自动设定为公制单位(mm),故程序中不需再指定G21。但若加工以in为单位的工件,则于程序的第一单节必须先指定G20,如此以下所指令的坐标值、进给率、螺纹导程、刀具半径补偿值、刀具长度补偿值、手动脉冲发生器(MPG)手轮每格的单位值等均被设定为英制单位。

G20或G21通常单独使用,不和其他指令一起出现在同一单节,且应位于程序的第一单节。同一程序中,只能使用一种单位,不可公、英制混合使用。刀具补偿值及其他有关数值均需随单位系统改变而重新设定。(6)暂停(G04)

指令格式:G04 X ;或G04 P ;

例如想要暂停2s,则应写成:G04 X2.0;G04 X2000或G04 P2000;

由以上可知X后面可用带小数点或者是不用小数点的方式来表示;但P后面的数值不可以用带小数点的方式表示。

暂停指令用于下列情况。

①主轴有高、低速挡切换时,于M05指令后,用G04指令暂停几秒,使主轴真正停止时再换挡,以避免损伤主轴的伺服电机。

②孔底加工时暂停几秒,使孔的深度正确及增加孔底面的光洁度。(7)设定坐标系(G92,G54~G59,G52,G53)

编写CNC程序时必须根据编程坐标系来描述工件轮廓尺寸,此编程坐标系的零点即编程原点。

①G92指令。指令格式:G92 X Y ;

X、Y值是指程序原点到刀位点的向量值,在使用时,必须将X、Y值表示出来。

②G54~G59指令。其后不需写X、Y值,用于指定机床原点与程序原点的向量值。一般使用G54~G59指令后,就不再使用G92指令。但如果使用,则原来G54~G59设定的程序原点将被G92后面的X、Y值取代。

③注意事项。

a. G54与G55~G59的区别。G54~G59设置加工坐标系的方法是一样的,但在实际情况下,机床厂家为了用户的不同需要,在使用中有以下区别:利用G54设置机床原点的情况下,进行回参考点操作时机床坐标值显示为G54的设定值,且符号均为正;利用G55~G59设置加工坐标系的情况下,进行回参考点操作时机床坐标值显示零值。

b. G92与G54~G59的区别。G92指令与G54~G59指令都是用于设定工件加工坐标系的,但在使用中是有区别的。G92指令是通过程序来设定、选用加工坐标系的,它所设定的加工坐标系原点与当前刀具所在的位置有关,这一加工原点在机床坐标系中的位置是随当前刀具位置的不同而改变的。

c. G54~G59的修改。G54~G59指令是通过MDI在设置参数方式下设定工件加工坐标系的,一旦设定,加工原点在机床坐标系中的位置是不变的,它与刀具的当前位置无关,除非再通过MDI 方式修改。

④G52指令。

局部坐标系指令G52用于将原坐标系中分离出数个子坐标系统。

指令格式:G52 X Y ;

X、Y的定义是原坐标系程序原点到子坐标系程序原点的向量值,G52 X0 Y0表示回复到原坐标系。

⑤G53指令。指令格式:G53 G90 X  Y  Z ;

G53指令使刀具快速定位到机床坐标系中的指定位置上。X、Y、Z后面的值为机床坐标系中的坐标值,其尺寸均为负值。【例1-4】 G53 G90 X-100.0 Y-100.0 Z-20.0;

执行后刀具在机床坐标系中的位置如图1-12所示。图1-12 G53选择机床坐标系

⑥附加工件坐标系。

除了6个工件坐标系(标准工件坐标系)G54~G59外,还可以使用48个附加工件坐标系。

指令格式:G54.1Pn;或G54Pn;

Pn指定附加工件坐标系的代码,n的范围从1~48。

例如,G90 G17 G40 G54.1 P23表示调用的是23号附加工件坐标系。(8)刀具长度补偿(G43、G44、G49)

指令格式:

指令欲定位至Z轴的坐标位置。H后为长度补偿号,用2位数字表示。例如H01表示刀具长度补偿号为01,01号的数据-412.867表示该刀具的长度补偿值为-412.867mm。执行G43或G44指令时,控制器会到H所指定的刀具长度补偿号内提取长度补偿值,作为补偿依据。

G43或G44是模态指令,H指定的补偿号也是模态的,使用这条指令,编程人员在编写加工程序时就可以不必考虑刀具的长度而只考虑刀尖的位置。刀具磨损或损坏后更换新的刀具时也不需要更改加工程序,可以直接修改刀具补偿值。

G43指令为刀具长度正补偿,也就是说Z轴到达的实际位置为指令值与补偿值相加的位置;G44指令为刀具长度负补偿,也就是说Z轴到达的实际位置为指令值减去补偿值的位置(一般较少使用),如图1-13所示。图1-13 刀具长度补偿示意图

H的取值范围为00~200,H00意味着取消刀具长度补偿。取消刀具长度补偿的另一种方法是使用指令G49。NC执行到G49指令或H00时,立即取消刀具长度补偿,并使Z轴运动到不加补偿值的指令位置。补偿值的取值范围是-999.999~999.999mm或-99.9999~99.9999in。

注意事项如下。

①使用G43或G44进行长度补偿时,只能是Z轴的移动,如果出现其他坐标轴,机床就会出现报警画面。

②若对刀时没有建立基准刀具,而是通过长度补偿来设定工件坐标系中的Z值,即使用指令G54时工件坐标系中的Z值为0,则不要使用G49取消长度补偿,否则可能引起撞刀。(9)刀具半径补偿(G40、G41、G42)

使用数控机床进行铣削编程加工时,使用刀具下表面中心作为刀位点,代替整把刀具进行编程加工。

为了编程方便,数控系统使用G41或G42指令,按照零件实际尺寸编写加工程序,如图1-14所示。图1-14 刀具半径补偿示意图

指令格式:;

G41:左侧刀具半径补偿,它产生的效果相当于顺铣。

G42:右侧刀具半径补偿,它产生的效果相当于逆铣。

执行该指令,刀具中心就在运动轨迹的法线方向上偏移一个距离,距离的大小通过程序指定。X、Y、Z三轴中配合平面选择(G17、G18、G19)任两轴。D后为半径补偿号,以2位数表示。例如D11表示半径补偿号为11,11号的数据是4.0,表示铣刀半径为4.0mm。执行G41或G42指令时,控制器会到D所指定的半径补偿号内提取刀具半径补偿值,以作为补偿依据。

在G41或G42指令中,D指定了一个补偿号,每个补偿号对应一个补偿值。补偿号的取值范围为0~200。和长度补偿一样,D00意味着取消半径补偿,取消半径补偿的另外一种方法是使用G40,补偿值的取值范围和长度补偿相同。

刀具半径补偿方向判别方法如下:沿着刀具路径,向铣削前进的方向观察,铣刀在工件的右侧,以G42指令;反之,以G41指令,如图1-15所示。图1-15 左、右刀具补偿方向判别示意图

刀具补偿的建立是在该程序段的终点也就是下一个程序段的起点作出一个偏置量,大小等于D中指定的数值,方向由G41/G42规定。取消刀具补偿是在上一个程序段的终点,也就是本段的起点作出一个偏置量,大小等于D中指定的数值,方向由G41/G42规定,如图1-16所示(刀具开始位置在X0 Y0 Z0)。图1-16 刀具半径补偿建立和取消的过程N10 G90 G17 G00 G41 D08 X250.0 Y550.0;(开始刀具半径补偿,刀具用D08指定的距离偏移到编程轨迹的左边)N20 G01 Y900.0 F150;(从P到P加工)12N30 X450.0;(从P到P加工)23N40 G03 X500.0 Y1150.0 R650.0;(从P到P加工)34N50 G02 X900.0 R-250.0;(从P到P加工)45N60 G03 X950.0 Y900.0 R650.0;(从P到P加工)56N70 G01 X1150.0;(从P到P加工)67N80 Y550.0;(从P到P加工)78N90 X700.0 Y650.0;(从P到P加工)89N100 X250.0 Y550.0;(从P到P加工)91N110 G00 G40 X0 Y0;(取消偏置方式,刀具返回到开始位置)

使用刀具半径补偿时应注意下列事项。

①不能和G02、G03一起使用,只能与G00或G01一起使用,且接下来的两个程序单段中不能都是Z轴的移动,或者刀具不移动,否则会产生过切。

②补偿值的正负号改变时,G41及G42的补偿方向会改变。如G41指令给予正值时,其补偿向左;若给予负值时,其补偿会向右;G42同理。故一般键入正值(即铣刀半径值)较合理。

③当刀具处于半径补偿状态,若加入G28、G29、G92指令,当这些指令被执行时,补偿状态将暂时被取消,但是控制系统仍记忆着此补偿状态,因此在执行下一单节时,又自动恢复补偿状态。

④使用G40的时机,最好是铣刀已远离工件。

⑤在补偿状态下,铣刀的直线移动量及内侧圆弧切削的半径值要大于或等于铣刀半径,否则补偿向量产生干涉,会发生过切,控制器命令停止执行,且显示报警号码。(10)参考点(G27、G28、G29)

①G27返回参考点检查。指令格式:G27 IP ;(IP:指定参考点的指令)

G27指令,刀具快速定位。如果刀具到达参考点返回参考点指示灯亮;如果刀具到达的位置不是参考点则显示报警。

②返回参考点(G28)。指令格式:G28 IP ;(IP:中间点坐标)

各轴快速执行中间点或参考点的定位。为了安全,在执行该指令前应清除刀具半径补偿和刀具长度补偿。中间点的坐标存储在CNC中,每次只存储G28程序段中指令轴的坐标值,对其他轴用以前指令过的坐标值,具体示例如图1-17所示。图1-17 G28与G29指令

③从参考点返回(G29)。指令格式:G29 IP ;(IP:指定返回点的坐标)

在G28指令后立即使用从参考点返回指令,各轴快速经中间点返回指定点,具体示例如图1-17所示。

G28与G29指令及其含义如下:M06 T01;(调1号刀)G90 G28 Z50.;(由A点经中间点B回到机床原点(Z轴))M06 T02;(换2号刀)G29 X35.Y30.Z5.;(2号刀由机床原点经中间点B快速定位至C点)第2章 子程序的调用

加工程序分为主程序和子程序,当刀具需要多次运行一段同样的轨迹时,可将这段轨迹编成子程序存储在机床的程序内存中,每次在程序中需要运行这段轨迹时便可以调用该子程序。一般地,数控系统执行主程序的指令,当执行到一条子程序调用指令时,系统转向执行子程序,在子程序中执行到返回指令时,再回到主程序。

当一个主程序调用一个子程序时,该子程序可以调用另一个子程序,这样的情况,称为子程序的两重嵌套。一般机床可以允许最多达四重的子程序嵌套。在调用子程序时,可以指令重复执行所调用的子程序,指令重复最多达999次。2.1 子程序的格式

子程序格式如下。

O××××;子程序号

…子程序内容

M99;返回主程序

在程序的开始,应该有一个由地址符O指定的子程序号,在程序的结尾,返回主程序的指令M99是必不可少的。M99可以不必出现在一个单独的程序段中作为子程序的结尾:G90 G00 X0 Y100.0 M99;

在主程序中,调用子程序的程序段应包含如下内容。

M98 ××××××××;

P后共有8位数字,前4位为调用次数,省略时为调用1次;后4位为调用的子程序号。例如:M98 P51002;(调用1002号子程序5次)M98 P1002;(调用1002号子程序1次)M98 P50004;(调用4号子程序5次)2.2 执行方法和顺序

子程序调用指令可以和运动指令出现在同一程序段中。例如:G90 G00 X-75.Y50.Z53.M98 P40035;

该程序段指令快速定位到指令位置,然后调用执行4次35号子程序。

包含子程序调用的主程序,程序执行顺序如下:

和其他M代码不同,M98和M99执行时,不向机床侧发送信号。当数控系统找不到地址符P指定的程序号时,发出报警。子程序调用指令M98不能在MDI方式下执行,如果需要单独执行一个子程序,可以在程序编辑方式下编辑如下程序,并在自动运行方式下执行。

× ×××;

M98 P××××;

M02(或M30);

在M99返回主程序指令中,可以用地址符P来指定一个顺序号,当这样的一个M99指令在子程序中被执行时,返回主程序后并不是执行紧接着调用子程序的程序段后的那个程序段,而是转向执行具有地址符P指定的顺序号的那个程序段。例如:主程序N10 …;N20 …;N30 M98 P1010;N40 …;N50 …;N60 …;N70 …;子程序O1010;N1020 …;N1030 …;N1040 …;N1050 …;N1060 …;N1070 M99 P60;

这种主-子程序的执行方式只有在程序内存中的程序能够使用。如果M99指令出现在主程序中,执行到M99指令时,将返回程序头,重复执行该程序。这种情况下,如果M99指令中出现位址符P,则执行该指令。【例2-1】 在120mm×120mm×23mm的45钢材料上,使用ϕ18mm的高速钢立铣刀加工如图2-1所示的方形台阶,取零件上表面的中心为工件原点,编写加工程序。图2-1 方形台阶

主程序O7;N10 G54 G17 G90 G80 G40 G49;(建立工件坐标系,加工状态初始化)N20 M03 S560;(主轴启动)N25 G00 X-80.0 Y-80.0;(快速定位到毛坯外面一点)N30 Z50.0;(Z方向降刀)N40 Z0;N50 M98 P20008;(调用2次8号子程序铣削加工外形轮廓)N60 G90 G00 Z150.0;(抬刀)N70 M05;(主轴停)N80 M30;(程序结束)

子程序O8;N10 G91 G01 Z-4.0 F300;(刀具深度方向每次切深4mm)N20 G90 G41 G01 X-48.0 D01 F120;(建立刀具半径补偿)N30 Y48.0;(切削加工)N40 X48.0;(切削加工)N50 Y-48.0;(切削加工)N60 X-80.0;(切削加工)N70 G40 G00 X-80.0;(取消刀具半径补偿)N80 M99;(子程序返回)【例2-2】 在2A12铝合金材料上使用ϕ8mm的键槽铣刀加工如图2-2所示的字母“N”,每个字母的深度为2mm,工件上表面的左下角点为工件原点,编写加工程序。图2-2 字母“N”形凹槽

主程序O10;N10 G54 G17 G90 G80 G40 G49;(建立工件坐标系,加工状态初始化)N20 M03 S720;(主轴启动)N25 G00 X15.0 Y50.0;(快速定位到第一个字母“N”的左下角角点)N30 Z40.0;(Z方向降刀)N40 Z2.0;N50 M98 P20;(调20号子程序加工字母“N”)N60 G90 G00 X50.0 Y50.0;(快速定位到第二个字母“N”的左下角角点)N70 M98 P20;(调20号子程序加工字母“N”)N80 G90 G00 X85.0 Y50.0;(快速定位到第三个字母“N”的左下角角点)N90 M98 P20;(调20号子程序加工字母“N”)N100 G90 G00 X 15.0Y10.0;(快速定位到第四个字母“N”的左下角角点)N110 M98 P20;(调20号子程序加工字母“N”)N120 G90 G00 X50.0 Y10.0;(快速定位到第五个字母“N”的左下角角点)N130 M98 P20;(调20号子程序加工字母“N”)N140 G90 G00 X85.0 Y10.0;(快速定位到第六个字母“N”的左下角角点)N150 M98 P20;(调20号子程序加工字母“N”)N160 G90 G00 Z40.0;(抬刀)N170 M05;(主轴停)

试读结束[说明:试读内容隐藏了图片]

下载完整电子书

若在网站上没有找合适的书籍,可联系网站客服获取,各类电子版图书资料皆有。

客服微信:xzh432

登入/注册
卧槽~你还有脸回来
没有账号? 忘记密码?