数控铣编程.docx
《数控铣编程.docx》由会员分享,可在线阅读,更多相关《数控铣编程.docx(72页珍藏版)》请在冰豆网上搜索。
数控铣编程
数控铣编程
本课题学习数控铣床编程,核心确实是为了把握数控铣削技术,同时能够运用它进行数控加工。
以FANUC—0MC系统为主,学习数控铣床编程,并通过大量训练项目,关心读者把握数控铣床编程技术。
一、建立工件坐标系、坐标尺寸和平面选择
(一)与坐标系有关的编程指令
1.用G92指令建立工件坐标系
编程格式:
G92X-Y-Z-;
G92指令是将加工原点设定在相关于刀具起始点的某一空间点上。
这一指令通常显现在程序的开头,该指令只改变当前位置的用户坐标,不产生任何机床移动,该坐标系在机床重开机时消逝。
假设程序格式设置为:
G92X20.0Y10.0Z10.0
其确立的工件原点在距离刀具起始点X=-20,Y=-10,Z=-10的位置上,如图2-68所示。
图2-68G92设定工件坐标系
2.用G54~G59设置程序原点
这些指令能够分别用来建立相应的加工坐标系。
编程格式:
G54G90G00(G01)X-Y-Z-(F-);
该指令执行后,所有坐标值指定的坐标尺寸差不多上选定的工件加工坐标系中的位置。
1~6号工件加工坐标系是通过CRT/MDI方式设置的,在机床重开机时仍旧存在,在程序中能够分别选取其中之一使用。
一旦指定了G54~G59之一,那么该工件坐标系原点即为当前程序原点,后续程序段中的工件绝对坐标均为相对此程序原点的值,例如以下程序:
N01G54G90G00X30.0Y40.0;
N02G59;
N03G00X30.0Y40.0;
…
执行N01时,系统会选定G54坐标系作为当前工件坐标系,然后再执行G00移动到该坐标中的A点;执行N02句时,系统又会选择G59坐标系作为当前工件坐标系;执行N03句时,机床就会移动到刚指定的G59坐标系中的B点,见图2-69。
图2-69工件坐标系的使用
G92指令与G54~G59指令差不多上用于设定工件坐标系的,但它们在使用中是有区别的:
G92指令是通过程序来设定工件坐标系的,G92所设定的加工坐标原点是与当前刀具所在位置有关的,这一加工原点在机床坐标系中的位置是随当前刀具的不同而改变的。
G54~G59指令是通过CRT/MDI在设置参数方式下设定工件坐标系的,一经设定,加工坐标原点在机床坐标系中的位置是不变的,它与刀具的当前位置无关,除非再通过CRT/MDI方式更换。
G92指令程序段只是设定工件坐标系,而不产生任何动作;G54~G59指令程序段那么能够和G00、G01指令组合,在选定的工件坐标系中进行位移。
3.选择机床坐标系G53
编程格式:
G53G90X-Y-Z-;
G53指令使刀具快速定位到机床坐标系中的指定位置上,式中X、Y、Z后的值为机床坐标系中的坐标值,其尺寸均为负值。
例:
G53G90X-100Y-100Z-20
那么执行后刀具在机床坐标系中的位置如图2-70所示。
图2-70G53选择机床坐标系
〔二〕坐标尺寸
数控系统的位置/运动操纵指令可采纳两种坐标方式进行编程,即采纳绝对坐标尺寸编程和增量坐标尺寸编程。
1.绝对坐标尺寸编程G90
G90指令规定在编程时按绝对值方式输入坐标,即移动指令终点的坐标值x、y、z差不多上以工件坐标系坐标原点(程序零点)为基准来运算,见图2-71。
图2-71G90编程
2.增量坐标尺寸编程G91
G91指令规定在编程时按增量值方式输入坐标,即移动指令终点的坐标值x、y、z差不多上以起始点为基准来运算,再依照终点相关于始点的方向判定正负,与坐标轴同向取正,反向取负,见图2-72。
图2-72G91编程
〔三〕平面选择指令G17、G18、G19
G17—选择XY平面编程;
G18—选择XZ平面编程;
G19—选择YZ平面编程。
平面指定指在铣削过程中指定圆弧插补平面和刀具补偿平面。
铣削时在XY平面内进行圆弧插补,那么应选用预备功能G17;在XZ平面内进行圆弧插补,应选用预备功能G18;在YZ平面内进行插补加工,那么需选用预备功能G19。
如图2-73所示。
平面指定与坐标轴移动无关,不管选用哪个平面,各坐标轴的移动指令均会执行。
图2-73平面选择
二、主轴操纵、冷却操纵和进给操纵
〔一〕主轴操纵
1.主轴旋转方向的确定
一样规定沿主轴中心线,垂直于工件表面往下看,来判定主轴旋转方向。
这种方法可能专门不有用,常见标准视图是从操作人员的位置,面向立式机床的前部观看,基于这种视图,能够准确地使用跟主轴选择相关的术语——顺时针〔CW〕和逆时针(CCW),如图2-74所示。
右旋刀具—顺时针右旋刀具—逆时针
图2-74主轴旋转方向
〔图中所示为立式加工中心的前视图〕
2.方向说明与主轴启动
假如主轴顺时针旋转,那么程序中使用M03;假如是逆时针旋转,那么程序中使用M04.程序中的S依靠于主轴旋转功能M03或M04,因此他们在CNC程序中作用专门重要。
主轴地址S和主轴旋转功能M03或M04必须同时使用,只使用其中一个对操纵器没有任何意义,专门是在接通机床电源时。
主轴转速和主轴旋转编程至少有两种正确方法:
〔1〕假如将主轴转速和主轴旋转方向编写在同一程序段中,主轴转速和主轴旋转方向将同时有效;
〔2〕假如将主轴转速和主轴旋转方向编写在不同程序段中,主轴将可不能旋转,直到将转速和旋转方向指令都处理完毕。
例①:
N1G20
N2G17G40G80
N3G90G00G54X14.0Y9.5
N4G43Z1.0H01S600M03(转速和旋转方向)
N5……
例②:
N1G20
N2G17G40G80
N3G90G00G54X14.0Y9.5S600〔只有转速〕
N4G43Z1.0H01M03〔开始旋转〕
N5……
将M03或M04与S地址编写在一起或在它后面编写,不要将它们编写在S地址前。
3.主轴定向M19
与主轴相关的最后一个M功能是M19。
该功能最常见的应用是将机床主轴设置在一个确定位置。
主轴定向功能专门专门,极少显现在程序中,M19功能要紧用在调试过程的手动数据输入模式〔MDI〕中。
系统在执行M19功能时,将产生以下运动
主轴会在两个方向〔顺时针和逆时针〕上轻微的转动,并在短时刻内会激活内部锁定机构,有时也可听到锁定的声音,如此就将主轴锁定在一个精确位置,假如用手转动,那么做不到这一点。
准确的锁定位置由机床生产厂家决定,它用角度表示,如图2-75所示。
警告:
错误的刀架定位可能会导致损坏工件或机床。
A—主轴定向角度
图2-75主轴定向角度由机床生产厂家决定且不可更换
〔二〕冷却操纵
1.M07:
开启雾状冷却液
有喷雾装置的机械,令其开启喷雾泵,喷出雾状冷却液。
2.M08:
开冷却液
程序执行至M08,即启动冷却液泵,但必须配合执行操作面板上的CLNTAUTO键,处于"ON"(灯亮)状态。
(冷却液程序键,处于ON)否那么泵可不能启动。
一样CNC机械主轴邻近有一阀门能够手动调剂冷却液流量大小。
3.M09:
喷雾及冷却液关闭
命令喷雾及冷却剂泵关闭,停止冷却液喷出。
常用于程序执行完毕之前。
〔但常可省略,因为一样M02、M30指令皆包含M09〕。
〔三〕进给操纵
在轮廓加工中,因为有交点、切点和间隙,切削运动的方向频繁改变,如要加工零件轮廓的直角拐角,就意味着一个程序段中沿X轴的刀具运动,在下一个程序段中要转换成Y轴运动。
要实现这种转换,系统第一得停止X轴的运动,然后再启动Y轴的运动。
假如没有加速就不可能以最大进给率瞬时启动,同样,假如没有减速,也不可能停止进给,如此就可能发生切削错误。
该错误就可能使得表面上的切削超过预期的直角拐点,专门是在进给速度专门大和角度极小的情形下。
它仅仅发生在G01、G02、G03模式的切削运动中,而可不能在G00快速运动模式中。
日常的CNC加工中,专门少发生这种错误,即使显现,也是在公差承诺范畴内。
假如确实要纠正这种错误,FANUC数控系统中有两条指令能够解决。
1.准停指令G09
格式:
G09
说明:
〔1)G09为非模态指令〔只在一个程序段里有效〕。
〔2〕在G09的程序段中,运动轴停止前要进行定位校验,即减速停止,并使运动轴停止在定位精度承诺范畴之内。
〔3〕G09可用于切削出尖角,例如铣削图2-76所示的零件ABCD,假设程序为:
G01B→C;
G01C→D;
那么在C点有一个小圆弧,铣不出尖叫来,要铣出C点尖角,能够如此编程:
G09G01B→C;
G09G01C→D;
如此在C点就能够铣出一个尖角。
图2-76尖角铣削
2.准停指令G61
格式:
G61;
…
G64;
说明:
〔1〕这是一组模态指令,G61一经指定一直有效,只有用G64时才能改变。
〔2〕G61方式时,从G61指令起到G64指令止,每个程序段均作定位校验。
三、直线插补、圆弧插补、螺旋线插补及圆柱插补
〔一〕直线插补G01
格式:
G01X-Y-Z-F-;
说明:
G01是指令坐标轴按指定进给速度作直线运动。
X、Y、Z坐标位置为切削终点,可三轴联动或二轴联动或单轴移动,而由F值指定切削时的进给速度,单位一样设定为mm/min。
现以图2-77说明G01用法。
假设刀具由程序原点往上铣削轮廓外形。
G90G01Y17.0F80;
X-10.0Y30.0;
G91X-40.0;
Y-18.0;
G90X-22.0Y0;
X0;
F功能具有续效性,故切削速度相同时,下一程序段可省略,如上面程序所示。
图2-77G01指令用法
〔二〕圆弧插补〔G02/G03〕
格式:
;
;
;
说明:
X、Y、Z:
终点坐标位置,可用绝对值〔G90〕或增量值〔G91〕表示;
I、J、K:
从圆弧起点到圆心位置,在X、Y、Z轴上的分向量。
〔以I、J、K表示的称为圆心法〕;
X轴的分向量用地址I表示。
I=圆心的X坐标值-起点的X坐标值。
Y轴的分向量用地址J表示。
J=圆心的Y坐标值-起点的Y坐标值。
Z轴的分向量用地址K表示。
K=圆心的Z坐标值-起点的Z坐标值。
R:
圆弧半径,以半径值表示。
〔以R表示的称为半径法〕。
F:
切削进给速率,单位mm/min。
圆弧的表示有圆心法及半径法两种,现分述如下:
1.圆心法:
I、J、K后面的数值定义为从圆弧起点到圆心的距离,用圆心编程的情形如图2-78所示。
图2-78圆心法编程
2.半径法:
以R表示圆弧半径。
此法以起点及终点和圆弧半径来表示一段圆弧,在圆上会有二段圆弧显现,如图2-78所示。
故以R是正值时,表示圆心角小于等于180°的圆弧;R是负值时,表示圆心角为大于180°的圆弧。
假设图2-79中,R=50mm,终点坐标绝对值为〔100,80〕那么:
〔1〕圆心角大于180°的圆弧〔即路径B〕为:
G90G02X100.0Y80.0R-50.0F80;
〔2〕圆心角小于等于180°的圆弧〔即路径A〕
G90G02X100.0Y80.0R50.0F80;
图2-79半径法编程
CNC铣床上使用半径法或圆心法来表示某一圆弧,要从工作图上的尺寸标示而定,以使用较方便者〔即不用运算,即可看出数值者〕为取舍。
但假设要铣削一整圆时,只能用圆心法表示,半径法无法执行。
假设用半径法以两个半圆相接,其真圆度误差会太大。
如图2-80铣削一整圆的指令写法如下:
G91G02I-50.F80;
图2-80整圆程序的编写
现以图2-81为例,说明G01、G02、G03指令的用法。
假设刀具由程序原点向上沿轮廓铣削。
图2-81G01、G02、G03应用例图
程序单
G90G01Y12.0F80.0;〔程序原点→A〕
G02X38.158Y40.0I38.158J-12.0;〔A→B〕
G91G01X11.0;〔B→C〕
G03X24.0R12.0;〔C→D〕
G01X8.0;〔D→E〕
G02X10.0Y-10.0R10.0;〔E→F〕
G01G90Y10.0;〔F→G〕
G91X-15.Y-10.0;〔G→H〕
X-20.0;〔H→I〕
G90G03X20.158R18.0;〔I→J〕
G01X0.;〔J→程序原点〕
3.使用G02、G03圆弧切削指令时应注意以下几点:
〔1〕一样CNC铣床或MC开机后,即设定为G17〔XY平面〕,故在XY平面上铣削圆弧,可省略G17指令。
〔2〕当某一程序段中同时显现I、J和R时,以R为优先〔即有效〕,I、J无效
〔3〕I0或J0或K0时,可省略不写。
〔4〕省略X、Y、Z终点坐标时,表示起点和终点为同一点,是切削整圆,如图2-80所示。
假设用半径法那么刀具无运动产生。
〔5〕当终点坐标与指定的半径值未交于同一点时,会报警显示。
〔6〕直线切削后面接图弧切削时,其G指令必须转换为G02或G03,假设再执行直线切削时,那么必须再转换为G01指令,这些是专门容易被疏忽的。
〔7〕使用切削指令〔G01,G02,G03〕须先指令主轴转动,且须指令进给速度F。
〔三〕螺旋线插补
螺旋线的形成是刀具作圆弧插补运动的同时与之同步地作轴向运动,其指令格式为:
式中:
G02、G03为螺旋线的旋向,其定义同圆弧;X、Y、Z为螺旋线的终点坐标;I、J为圆弧圆心在X-Y平面上X、Y轴上相关于螺旋线起点的坐标;R为螺旋线在X-Y平面上的投影半径;K为螺旋线的导程。
另两式的意义类同,见图2-82所示。
图2-82螺旋线插补图2-83螺旋线插补例如
如图2-83所示螺旋线,其程序为:
G17G03X0.Y0.Z50.I15.J0.K5.F100
或G17G03X0.Y0.Z50.R15.K5.F100
〔四〕圆柱插补G07.1
格式:
G7.1旋转轴名称圆筒半径;〔1〕
G7.1旋转轴名称0;〔2〕
说明:
以〔1〕的指令进入圆柱插补模式,指令圆柱插补的旋转轴名称。
以〔2〕的指令解除圆柱插补模式。
例如:
O0001
N1G28
N2…..
.
.
.
N6G7.1C125.0;进行圆柱插补的旋转轴为C轴,圆柱半径为125mm。
.
.
.
N7G7.1C0;圆柱插补模式解除。
注意:
1.G7.1必须在单独程序段中。
2.圆柱插补模式中,不可再设定圆柱插补模式。
再设定时,须将原设定先解除。
3.圆柱插补可设定的旋转轴只有1个。
因此G7.1不可指令2个以上的旋转轴。
4.定位模式〔G00〕中,不可指令圆柱插补。
5.圆柱插补模式中,不可指定钻孔用固定循环〔G73、G74、G76、G81~G89〕。
6.刀具长度补偿必须在进入圆柱插补模式前写入。
在圆柱插补模式中,不可进行补偿的变更。
7.分度盘机能使用中,不可使用圆柱插补指令。
例:
加工图2-84所示的零件,刀具T01为φ8mm的刀具,半径补偿号为D01。
图2-84例题图
程序如下:
O0001
N01G00G90Z100.0C0;
N02G01G91G18Z0C0;
N03G07.1C57.299;
N04G90G01G42Z120.0D01F250;
N05C30.0;
N06G02Z90.0C60.0R30.0;
N07G01Z70.0;
N08G03Z60.0C70.0R10.0;
N09G01C150.0;
N10G03Z70.0C190.0R75.0;
N11G01Z110.0C230.0;
N12G02Z120.0C270.0R75.0;
N13GO1C360.0;
N14G40Z100.0;
N15G07.1C0;
N16M30;
四、回参考点、快速定位、刀具选用及补偿
〔一〕自动返回参考点〔G27、G28、G29〕
G27、G28、G29为非模态指令,必须在使用它的所有程序段中重复编写。
1.返回参考点校验功能G27
格式:
G27X_Y_Z_;
其中,X、Y、Z是程序原点到机床原点的距离。
程序中使用G27时,切削刀具将自动快进〔不需要G00〕到由G27程序段中的轴指定的位置,这一运动能够是绝对模式或增量模式。
使用G27指令时,应取消刀具的补偿功能。
现代数控机床通常是24小时运转做切削加工,为了提高加工的可靠性及工件尺寸的正确性,可用此指令检查〔也确实是确认〕,看包含G27程序段中的编程位置是否在机床原点参考位置。
假如是,操纵面板上的指示灯亮,表示每根轴均能到达该位置;假如到达的点不是机床原点,屏幕上,将显示错误条件警告,并中断程序执行。
程序如下:
M06T01;〔换1号刀〕
…
G40G49;〔将刀具补偿取消〕
G27X-38.612Y21.812Z42.226;〔其中X、Y、Z值是指1号刀的程序原点到机床原点的距离〕
2.自动返回参考点G28
格式:
G28X_Y_Z_;
其中,X、Y、Z为中间点位置坐标,指令执行后,所有的受控轴都将快速定位到中间点,然后再从中间点返回到参考点。
图2-85机床回原点的中间点——以XY轴为例
设置中间点的目的有两个,其一,能够缩短程序,通常可缩减一个程序段;其二,是为防止刀具返回参考点时与工件或夹具发生干涉。
如图2-85所示从工件中间孔开始的刀具运动。
如此一个运动,假如直截了当编写到原点位置的运动,刀具在到达机床原点的过程中,可能会跟右上角的夹具碰撞。
故在不加长程序的情形下,能够在一个安全的位置编写中间点,可使刀具安全返回机床原点。
程序构造如下:
G90
…
G00X5.0Y4.0〔已加工孔〕
G28X12.0Y4.0〔机床经中间点回原点的运动〕
G28指令一样用于自动换刀,因此使用G28指令时,应取消刀具的补偿功能。
3.自动从参考点返回〔G29〕
格式:
G29X_Y_Z_;
G29通常跟在G28之后,执行这条指令能够使刀具从参考点动身,通过由G28指定的中间点到达由G29指令的目标点。
指令中X_Y_Z_是到达点的坐标,由G90/G91状态决定是绝对值依旧增量值,假设为增量值时,那么是指到达点相关于G28中间点的增量值。
在选择G28之后,这条指令不是必须的,使用G00定位有时可能更为方便。
使用G29之前应取消刀具半径补偿功能和固定循环。
G28和G29的应用举例如图2-86所示:
M06T01;
…
G90G28Z50.0;由A点经中间点B回到机床参考点〔Z轴〕;
M06T02;换2号刀;
G29X35.0Y30.0Z5.0;2号刀由机床参考点经中间点B快速定位到C点。
图2-86G28、G29指令应用例如
〔二〕快速点定位G00
格式:
G00X_Y_Z_;
说明:
G00指令刀具相关于工件以各轴预先设定的快移速度,从当前位置快速移动到程序段指令的定位终点〔目标点〕。
其中:
X、Y、Z:
快速定位终点,在G90时为定位终点相关于起点的位移量。
注意:
在执行G00指令时,由于各轴以各自速度移动,不能保证各轴同时到达终点,因而联动直线轴的合成轨迹不一定是直线。
操作者必须格外小心,以免刀具与工件发生碰撞。
常见的做法是,将Z轴移动到安全高度,再执行G00指令。
例:
如图2-87所示,使用G00编程:
要求刀具从A点快速定位到B点。
图2-87G00编程
〔三〕刀具选用及补偿
1.刀具选用
格式:
M06T××;
说明:
数控铣床无自动换刀装置,必须用手换刀,因此该功能是用于加工中心的。
M06为换刀功能,T功能以地址T后面接2位数字组成表示所选刀号。
加工中心的刀库有二种:
一种是圆盘型,另一种为链条型。
换刀的方式分无臂式及有臂式两种。
无臂式换刀方式是刀具库靠向主轴,先卸下主轴上的刀具,再旋转至欲换的刀具,上升装上主轴。
此种刀具库大都用于圆盘型较多,且是固定刀号式〔即1号刀必须插回1号刀具库内〕,故换刀指令的书写方式如下:
M06T02;
执行时,主轴上的刀具先装回刀具库,再旋转至2号刀,将2号刀装入主轴孔内。
如图2-88所示是一个典型的可存放20把刀具的刀库。
图2-88可存放20把刀具的刀库侧视图
有臂式换刀大都配合链条型刀具库且是无固定刀号式【即1号刀不一定插回1号刀具库内,其刀具库上的刀号与设定的刀号由操纵器的PLC〔可程控器〕治理】。
此种换刀方式的T指令后面所接数字代表欲呼叫刀具的号码。
当T功能被执行时,被呼叫的刀具会转至预备换刀位置,但无换刀动作,因此T指令可在换刀指令M06之前即以设定,以节约换刀时等待刀具的时刻。
故有臂式的换刀程序指令书写如下:
T01;1号刀至换刀位置。
…
M06T03;将1号刀换到主轴孔内,3号刀至换刀位置。
…
M06T04;将3号刀换到主轴孔内,4号刀至换刀位置。
…
M06T05;将4号刀换到主轴孔内,5号刀至换刀位置。
执行刀具交换时,并非刀具在任何位置均可交换,各制造厂商依其设计不同,均在一安全位置,实施刀具交换动作,以幸免与床台、工件发生碰撞。
Z轴的机床原点位置是远离工件最远的安全位置,故一样以Z轴先回机床原点后,才能执行换刀指令。
通常加工中心的换刀程序如下书写:
G91G28Z0;Z轴回HOME点。
M06T03;主轴更换为3号刀。
…
G91G28Z0;
M06T04;主轴更换为4号刀。
…
G91G28Z0;
M06T05;主轴更换为5号刀。
…
2.刀具半径补偿功能〔G40、G41、G42〕
格式:
G40:
刀具半径补偿撤消指令;
G41:
刀具半径左刀补偿指令;
G42:
刀具半径右刀补偿指令;
说明:
X、Y、Z:
G00/G01的参数,即刀补建立或取消的终点。
D:
G41/G42的参数,即刀补号码〔D00~D99〕,它代表了刀补表中对应的半径补偿值存放的地址。
这是一组模态指令,默认为G40。
建立和取消刀具半径补偿必须与G01或G00指令组合来完成,实际编程时建议与G01组合。
D以及后面的数字表示刀具半径补偿号。
刀具半径左、右补偿的判定依据以下定义:
站在程序路径上,向铣削前进方向看,铣刀位于零件轮廓左边时为刀具半径左补偿〔如图2-89所示〕;反之,为刀具半径右补偿〔如图2-90所示〕。
图2-89G41刀具半径左补偿
图2-90G42刀具半径右补偿
〔1〕刀具半径补偿的意义
本节往常所举例书写的程序均以刀具端面中心点为刀尖点,以此点沿工件轮廓铣削。
但实际情形,铣刀有一定的直径,故以此方式实际铣削的结果,外形尺寸会减少一个铣刀直径值;内形尺寸会增加一铣刀直径值,如图2-91所示。
〔a〕无刀具补偿铣削外轮廓〔b〕无刀具补偿铣削内轮廓
图2-91无刀具补偿情形
由以上得知假设刀具沿工件轮廓铣削,因刀具有一定的直径,故铣削的结果会增加或减少一个刀具直径值。