完整word版5数控铣床编程基础新.docx
《完整word版5数控铣床编程基础新.docx》由会员分享,可在线阅读,更多相关《完整word版5数控铣床编程基础新.docx(22页珍藏版)》请在冰豆网上搜索。
完整word版5数控铣床编程基础新
第5章数控铣床编程基础
铣削是机械加工中最常用的方法之一。
数控铣床可以进行铣削、镗削、钻削、攻丝等加工,不仅适于加工盘、盖板、箱体、壳体类零件,还适于加工各种形状复杂的曲线、曲面轮廓以及模具型腔等平面或立体零件。
对于非圆曲线、空间曲线和曲面的轮廓铣削加工,数学处理比较复杂,一般要借助计算机用CAD/CAM软件来实现。
经济型二轴联动数控铣床只能进行二维平面零件和简单曲面零件轮廓加工,三轴以上联动的数控铣床可以加工难度大的复杂曲面轮廓的零件与模具。
数控铣床的数控装置具有多种插补方式,都具有直线插补和圆弧插补功能,有的还具有极坐标插补,抛物线插补,螺旋线插补等多种插补功能。
编程时要合理地选择这些功能,充分利用数控铣床、加工中心的多种功能:
如刀具半径补偿、长度补偿和固定循环、坐标转换等功能进行加工,以提高加工效率和精度。
5.1坐标系
机床坐标系的概念已经在第一章的1.2数控机床坐标系统中介绍,以下针对铣床坐标
系再加以说明。
5.1.1机床坐标系
图5-1机床坐标系
机床坐标系是机床上固有的机械坐标系,在机床出厂前已设定好。
机床通电后,通过返回机械零点建立机床坐标系,回到零点时屏幕上显示的当前刀具在机床坐标系中的坐标值均为零。
机床坐标系的零点通常设在坐标轴的极限位置上,如图5-1所示。
刀具移动的一些特殊位置,如换刀位置,通常也在零点。
一般情况下用手动返回参考点,建立机床坐标系。
机床坐标系的零点就是机床零点,也称为机械零点。
他是数控系统计算,检验测量等的基准。
5.1.2工件坐标系
工件坐标系用零点偏置代码G54~G59设定,工件坐标系需预先通过对刀的方式得到编程零点相对机床零点的值,并在机床的零点偏置设定参数中设定,然后在程序中用零点偏置(G54~G59)指定。
用户可以一次设定6个工件坐标系,操作时首先将工件安装在工作台上,然后让机床返回原点,建立机床坐标系。
具体操作为分别测量每个需设定的工件坐标系原点相对机床坐标系的偏置,其偏置值即为工件坐标原点偏置,将所测得的各工件坐标原点偏置输入到数控系统中对应的零点偏置数据存放寄存器中,数控系统将记忆这些数据,当程序中出现G54~G59代码时,系统调用其中的数据,则对应的工件坐标系将有效。
图5-2中EXOFS偏置量在FANUC系统中称为外部零点偏置值,在SIEMENS中对应的该偏置量称为基本偏置,ZOFS1~ZOFS6如图5-2所示为G54~G59的零点偏置值。
图5-2机床坐标系与工件坐标系
5.2刀具补偿
5.2.1刀具号T
在加工中心上加工零件,通常要用到多把刀具。
用编程指令T可以预选或调用刀具,
T后面的数字表示刀具号,如T1、T2、...T12...等。
用T指令直接更换刀具还是仅仅进行刀具预选,在机床数据中设定。
换刀编程举例
不用M06更换刀具
N10T1;调用1号刀具
...
N70T40;调用40号刀具
用M6更换刀具
N10T14;预选14号刀具
...
N15M6;执行刀具更换,T14有效
5.2.2刀具半径补偿G41、G42、G40
在数控铣床、加工中心上加工零件时,所使用的刀具直径有一定的大小,不可能为零,用铣刀进行切削时,刀具中心的轨迹相对工件的轮廓就就必须偏移了一个刀具的半径。
若按刀具中心轨迹数据进行编程,手工计算中心轨迹很麻烦且容易出错,更严重的是刀具对工件有可能产生过切或少切现象。
利用刀具半径补偿功能,只要在程序中给出指令G41(左偏)图5-3刀具中心轨迹
或G42(右偏)以及偏置号D,刀具便会自动地沿轮廓走刀方向,往左或往右偏置一个刀具半径。
而编程人员在编程时,则可以直接以工件的标注尺寸(零件轮廓)作为编程轨迹进行编程,不需要计算偏置轮廓的数据,使编程便易。
图5-4中刀具中心偏置——左补(G41)和右补(G42)的判断:
沿着走刀方向望前看,刀具偏在零件的左边就是左补,刀具偏在零件的右边就是右补。
刀具半径补偿功能的取消用G40代码。
图5-4刀具左补、右补图5-5切线方向切入、切出
刀补的建立与取消:
从没有刀补到有刀补,要有一个建立刀补的过程,建立刀补的过程是一段直线,直线的长度必须大于刀具半径,才能保证不发生过切现象。
在零件加工过程中,建立刀补前屏幕显示的是刀具中心坐标,建立刀补后显示的是零件轮廓坐标。
为了保证零件的轮廓加工精度,在使用刀补时尽量沿切线方向过渡切入、切出。
例如铣削图5-5所示的内圆槽时,用一与圆槽相切的圆弧BC、CE过渡切入、切出。
即从O点到B点建立刀补,刀具中心自动偏置到B′,BC过渡切入,顺时针走圆弧CDC,CE过渡切出,这样避免圆槽DC的内壁在C点产生接刀痕。
见图5-5所示。
图5-6建立、取消刀补过程
只有在线性插补时,即刀补指令必须跟在直线段(G00)或(G01)上时,才可以进行G41/G42的选择,否则会出现语法错误而报警。
从图5-6中也可以看出,建立刀补时必须用直线段过渡建立/取消。
刀具半径补偿号D
刀具半径数据存放的寄存器号,用于指定刀具的偏置值。
在SIMENS系统中,一把刀具可以匹配从1到9几个不同补偿的数据组(一把刀具用不同的补偿号可以设定多个不同的补偿半径值)。
用D及其相应的序号可以编程一个专门的切削刃。
如果没有编写D指令,则D1自动生效。
如果编程D0,则刀具补偿值无效。
图5-7刀具与补偿号
刀具调用后,刀具长度补偿立即生效;如果没有编程D号,则D1值自动生效。
半径补偿必须与G41/G42一起执行。
在FANUC系统中补偿号有99个,从D1到D99。
每一把刀都可以使用任一个D补偿号,或一把刀匹配几个D补偿号,实现零件的粗精加工。
刀具半径补偿用法举例:
建立刀补、刀补偏置、取消刀补的路径。
图5-8刀具半径补偿举例
例:
用SIMENS系统编程程序如下。
N0G54S800M03G90G17G00X0Y0Z10设定零偏,主轴正转,快速移到起始位置
N1G01G41X250Y550D1F150...建立刀补,偏置半径由D1指定
N2Y900.............从P1到P2
N3X450.............从P2到P3
N4G3X500Y1150CR=650.....从P3到P4
N5G2X900CR=-250........从P4到P5
N6G3X950Y900CR=650......从P5到P6
N7G1X1150...........从P6到P7
N8Y550.............从P7到P8
N9X700Y650..........从P8到P9
N10X250Y550..........从P9到P1
N11G0G40X0Y0.........取消刀补
例:
换刀指令用法,不用M6换刀,只用T指令。
N5G17;确定待补偿的轴
N10T1;T1刀具的D1中的值生效
N15G0Z ...;在G17平面中,Z是刀具长度补偿
N50T4D2;刀具换成4号,T4中D2中的值生效
...
N70G0Z...D1;刀具4的D1中的值生效
用M6更换刀具
N5G17;确定待补偿的轴
N10T1;预选刀具
...
N15M6;更换刀具,T1中D1表格中的值生效
N16G0Z...;在G17平面中,Z是刀具长度补偿,
...
N20G0Z...D2;刀具1中D2值生效,
N25T4;刀具预选T4。
仍然是使用T1刀具,D2中的值有效
...
N55D3M6;更换刀具,T4刀具的D3中的值生效
...
5.2.3刀具长度补偿G43、G44、G49
通常加工一个工件要使用多把刀具,每把刀具都有不同的长度,如图5-9所示。
当所用刀具都使用一个零点偏置代码,为使加工出的零件符合要求,应预先确定基准刀具,测量出基准刀具的长度和其他每把刀具的长度差(作为刀具长度偏置值),如图5-10所示,并把此偏置值设定在数控系统的刀具数据存放寄存器中。
实际操作时通过对刀确定基准刀具在工件坐标系中的位置,Z方向对刀数值设置在零点偏置中(即零点偏置代码中Z值非0),
图5-9不同长度的刀具
图5-10刀具长度补偿
然后换上其它刀具依次对刀测出其在工件坐标系中的偏置值,并记录在对应的寄存器中。
在程序中通过G43正补偿或G44负补偿及偏置号H指定刀具长度补偿,用G49取消刀具长度补偿。
例:
如图5-11钻孔加工。
H1寄存器中存放刀具长度偏置值-4。
H0表示取消刀具长度补偿。
刀具长度补偿编程举例:
钻三个孔。
H1=-4(刀具长度偏置值)
图5-11刀具长度偏置应用举例
N0T1D1G54M3S600
N7G01Z-41;(7)
N1G91G00X120Y80;
(1)
N8G00Z41;(8)
N2G43Z-32H1;
(2)
N9X50Y30;(9)
N3G01Z-21F100;(3)
N10G01Z-25;(10)
N4G04X1.5;(4)
N11G04X1.5;(11)
N5G00Z21;(5)
N12G00Z57H0;(12)
N6X30Y-50;(6)
N13X-200Y-60;(13)
N14M30;
图5-12粗、精加工
刀具半径补偿除有上述的半径、长度补偿功能之外,可以灵活运用刀具半径补偿功能做加工过程中的其他工作。
如当刀具磨损半径变小后,用磨损后的刀具值更换原刀具值即可,即用手工输入方法将磨损后的刀具半径值输入到原D代码所在的存储器中即可,而不必修改程序。
也可以利用此功能,通过修正刀偏值,完成粗、精加工。
如图5-12所示,若留出精加工余量⊿,可在粗加工前给指定补偿号的刀具半径存储器中输入数值为r+⊿的偏置量(r为刀具半径);而精加工时,程序调用另一个刀具补偿号,该刀具补偿号中的刀具半径偏置量输入为r,通过调用不同的补偿号完成粗、精加工。
同理,通过改变偏置量的大小,可控制零件轮廓尺寸精度,对加工误差进行补偿。
多把刀具选用一个零点偏置代码使用刀具长度补偿,也可以用以下的方法进行,将程序中所用的零点偏置代码中的Z值设定为0,每把刀具的长度值在对刀时都设定在补偿号H的长度寄存器中,调用刀具时指定对应的H号。
当所使用的刀具数少于零点偏置代码数时,每把刀具使用一个零点偏置代码,Z方向对刀数值设置在零点偏置中,刀具参数寄存器中的刀具长度都为0。
就不需使用刀具长度补偿。
5.3数控铣床常用指令
5.3.1直线插补G01
刀具以直线路径从起点移动到目标位置,以地址F下编程的进给速度运行。
具有三轴
以上的机床,在规定的联动轴数以内的坐标轴可以同时运动,即联动。
图5-13直线插补
例N00T1D1G54;调用1号刀具,零点偏置用G54设定
N05S500M03;主轴正转,500转/分
N10G0G90X40Y48Z5;刀具快速移动到P1,3轴联动
N15G1Z-12F100;进刀到Z-12,进给率100毫米/分
N20X20Y18Z-10;刀具3轴联动,移行到P2
N25G0Z100;快速抬刀到Z100
N30X-20Y80
N35M2;程序结束
5.3.2圆弧插补G02、G03
刀具沿圆弧轮廓轨迹从起点移动到终点。
G02顺时针方向;G03逆时针方向
图5-14顺时针圆弧逆时针圆弧
图5-15圆弧插补
格式:
G2/G3X... Y... I...J... ;圆心和终点
G2/G3 CR=...X... Y... ;半径和终点
G2/G3 AR=...I... J... ;张角和圆心
G2/G3 AR=...X... Y... ;张角和半径
G2/G3 AR=...RP... ;极作标圆心和半径
图5-16圆弧插补用半径编程
半径编程举例:
N10G01X1Y1;圆弧起点
N20G2X2Y2CR=—;半径值负,圆弧大于半圆
或
N30G2X2Y2CR=+;半径值正,圆弧小于或等于半圆
图5-17圆心和终点的圆弧插补
圆心和终点的编程举例:
N5G90G1X30Y40;N10圆弧的起始点
N10G2X50Y40I10J-7;终点和圆心
终点和半径的编程举例:
图5-18终点和半径的圆弧插补
N5G90G1X30Y40;N10圆弧的起始点
N10G2X30Y40CR=12.207;终点和半径
注:
CR=-...中的符号会选择一个大于半圆的圆弧段。
终点和张角的编程举例:
图5-19终点和张角的圆弧插补
N5G90G1X30Y40;N10圆弧的起始点
N10G2X50Y40AR=105;终点和张角
圆心和张角的编程举例:
图5-20圆心和张角的圆弧插补
N5G90G1X30Y40;N10圆弧的起始点
N10G2I10J-7AR=105;圆心和张角
极坐标编程举例:
图5-21极坐标圆弧插补
N1G17;在X/Y平面
N5G90G0X30Y40;N10圆弧的起始点
N10G111X40Y33;定义X40Y30为极坐标极点
N15G2RP=12.207AP=21;极坐标圆弧插补
5.3.3暂停G04
通过在两个程序段之间插入一个G4程序段,可以使加工中断给定的时间,比如割退刀槽。
单程序段有效。
编程格式:
G4F...;暂停时间(秒)
G4S...;暂停主轴转数
编程举例:
N5G1F200Z-50S300M3;设定进给率F,主轴转速S
N10G4F2.5;暂停2.5秒
N20Z70
N30G4S30;主轴暂停30转,相当于在S=300转/分
和转速修调100%时暂停t=0.1分钟
N40X...;进给率和主轴转速继续有效
注:
G4S...只有在受控主轴情况下才有效(当转速给定值同样通过S...编程时)。
5.3.4准确定位/连续路径加工G9、G60、G64
针对程序段转换时不同的性能要求,802D提供一组G功能准备代码用于进行最佳匹配的选择。
比如,有时要求坐标轴快速定位;有时要求按轮廓编程对几个程序段进行连续路径加工。
G60;准确定位—模态有效
G64;连续路径加工
G90;准确定位—单程序段有效
G601;精准确定位窗口
G602;粗准确定位窗口
G60或G9功能生效时,当到达定位精度后,移动轴的进给速度减小到零。
如果一个程序段的轴位移结束并开始执行下一个程序段,则可以设定下一个模态有效的G功能:
G601精准确定位窗口,所有的坐标轴都到达“精准确定位窗口”(机床数据中设定值)后,开始进行程序段转换。
G602粗准确定位窗口,开始进当所有的坐标轴都到达“粗准确定位窗口”(机床数据中设定值)后,开始进行程序段转换。
在执行多次定位过程时,“准确定位窗口”如何选择将对加工运行总时间影响很大。
精确调整需要较多时间。
图5-22准确定位窗口
举例:
N5G602;粗准确定位窗口
N10G0G60Z... ;准确定位,模态方式
N20X...Y... ;G60继续有效
...
N50G1G601...;精确定位有效
N80G64Z...;转换到连续路径方式
...
N100G0G9Z...;准确定位,单程序段有效
N110...;仍为连续路径方式
连续路径加工方式的目的就是在一个程序段到下一个程序段转换过程中避免进给停顿,并使其尽可能以相同的轨迹速度(切线过渡)转换到下一个程序段,并可以可预见的速度过渡执行下一个程序段的功能。
在有拐角的轨迹过渡时(非切线过渡)有时必须降低速度,从而保证程序段转换不发生速度的突然变化,或者加速度的改变受到限制(如果SOFT有效)。
图5-23G64方式下的进给率
举例:
N10G64GlX...;连续路径加工
N20Y...;继续
N180G60...;转换到准确定位
在G64连续路径加工方式下,控制系统预先自动确定几个NC程序段的速度,接近切线过渡的情况下,可以连续几个程序段进行加速或减速。
若加工路径几个较短的位移组成,使用连续路径加工方式则能达到编程的进给率进行进给。
如在CAM的曲面加工中。
5.3.5子程序及其调用
原则上讲主程序和子程序之间并没有区别。
用子程序编写经常重复进行的加工,比如某一确定的轮廓形状。
子程序位于主程序中适当的地方,在需要时进行调用、运行。
加工循环是子程序的一种形式,加工循环包含一般通用的加工工序,例如钻削、攻丝、铣槽等等。
通过给规定的计算参数赋值就可以实现各种具体的加工
图5-24一个工件加工中4次使用子程序
子程序的结构与主程序的结构一样(见前面章节的介绍),在子程序中也是在最后一个程序段中用M2结束程序运行。
子程序结束后返回主程序。
程序结束除了用M2指令外,还可以用RET指令结束子程序。
RET要求占用一个独立的程序段。
用RET指令结束子程序、返回主程序时不会中断G64连续路径运行方式。
用M2指令则会中断G64运行方式,并进入停止状态。
子程序程序名规定:
必须以字母L开头,其后值可以有7位。
L之后的每个零均有意
义,不可省略。
例:
L128并非L0128或L00128。
图5-25两次调用之程序
嵌套深度子程序不仅可以从主程序中调用,也可以从其它子程序中调用,这个过程
称为子程序的嵌套。
子程序的嵌套深度可以有三层,也就是四级程序界面(包括主程序界面)。
见图5-26所示。
注释:
在使用加工循环进行加工时,要注意加工循环程序也同样属于四级程序界面中
的一级。
图5-268级程序界面运
5.4编程举例
编程举例1:
编写图6.27所示图形的刻线程序。
图5.27刻线练习
KX1.MPF;程序号KX1
N00T1D1G54;调1号刻线刀
N05M03S1500;主轴正转,1500转/分
N10G90G0X30Y0Z5;快速定位
N15G1Z-0.5F100;Z向进刀
N20G2X30Y0I-30J0;走R30的圆
N25G0Z5;抬刀
N30G0X20Y5;快速定位
N35G1Z-0.5F100;进刀
N38L20;刻C字
N40G0X5Y10;刻N字
N42G1Z-0.5F100
N40Y-10F160
N45X-5Y10
N50Y-10
N55G0Z5;抬刀
N65X-10Y5
N70G1Z-0.5F100
N75L20;调用L20子程序
N80G0Z50
N85M30;主程序结束
L20.SPF;子程序L20,刻C字
N00G91
N05G3X-10Y0I-5J0F160
N10G1Y-10
N15G3X10Y0I5J0
N20G0Z5
N25G90
N30M2;子程序结束
编程举例2:
用子程序编写图6.28的刻线程序。
图5.28图形转换练习用图
L10.SPF;子程序号L10
G90G0X0Y0;移动到起点
Z5
G1Z-0.5F100;Z向进刀
X10Y0F160
X16.43Y3
G2X12.56Y6CR=4
G1X0Y6
X0Y0
G0Z5;抬刀
M02;子程序结束
编程举例3:
毛坯尺寸80×80×15,粗加工后留0.5mm余量精加工,刀具直16mm。
零点设在对称中心,夹具用台虎钳。
图5.29凸台1
XTT.MPF;程序号XTT
N00T1D1G54;D1中设定刀具半径为8.5mm
N05M3S700;主轴正转700转/分
N10G90G0X-50Y-50;移动到起刀点
N15Z5
N20G1Z-5.05F160;进刀
N25G42G1X-30Y-30;N25~N70句为粗加工程序,建立刀补,右补。
N30G1X22Y-30;编程零件轮廓
N35G3X30Y-22CR=8
N40G1X30Y24
N45G3X24Y30CR=6
N50G1X-22Y30
N55G3X-30Y22CR=8
N60G1X-30Y-24
N65G3X-24Y-30CR=6
N70G40G1X-20Y-50;取消刀补
N75G0X-50Y-50
N80G42G1X-30Y-30D2;N80~N135句为精加工程序,建立刀补,右补。
N85G1X22Y-30;D2中设定刀具半径值为8,编程零件轮廓
N90G3X30Y-22CR=8
N95G1X30Y24
N100G3X30Y-22CR=8
N105G1X30Y24
N110G3X24Y30CR=6
N115G1X-22Y30
N120G3X-30Y22CR=8
N125G1X-30Y-24
N130G3X-24Y-30CR=6
N135G40G1X-20Y-50;取消刀补
N140G0Z50;抬刀
N145M30;程序结束