1、FANUC系统编程全套代码FANUC系统编程TMSFD代码T:刀具号M:辅助代码S:主轴转速F:进给速度D:半径补偿MCS:机械坐标系 工厂生产厂家出厂时固定的永久不变的一个坐标系,它的原点在三个轴的最大位移处 WCS:工件坐标系工件坐标系,为了工作方便自己设定的一个坐标系REL: 相对坐标系起一个临时辅助的作用,个人感觉来讲应该叫临时坐标系模态的概念:一次指定永久有效,只到被同一代码取代。常用的M代码:M0:程序停止 M1:程序选择性停止M2:程序结束 M3:主轴正转M4:主轴反转 M5:主轴停止M6:刀具交换 M8:切削液开启M9:切削液关闭 M30:程序结束返回开头M98:调用子程序 M
2、99:子程序结束G代码注:不同组的G代码写在同一行同时生效,同一组的G代码写一在同一行最后的一个生效G17 G18 G19:平面选择指令平面指令 平面第一轴/平面第二轴 平面第三轴G17 X/Y ZG18 Z/X Y G19 Y/Z X注:平面第三轴的正方向往该平面看,顺时针为正转,逆时针为反转G0:快速定位格式:G17 G0 X_ Y_ 以快速定位的方式到达G17平面的X Y 位置。G0不需要指定速度,是系统预设好的。G1:直线切削运动G43:刀具长度补偿(对刀长)G0 Z0 G43 H1(指定刀具补偿号为1号刀补,并快速定位到Z0位置)G94 G95:进给方式格式1:G17 G94 G1
3、X_ Y_ F100在G17平面以mm/分钟的速度直线切削到XY坐标位置。G94是以 mm/分钟 的速度进给(分钟进给)格式2:G17 G94 G1 X_ Y_ F0.5G95是以 mm/转 为单位,也就是说刀具转一圈往前走多少毫米。通常情况下用G94比较多,很少用G95G90:绝对坐标G91:增量坐标绝对坐标是相对于原点来确定位置的A(40,40) B(40,60) C(30,60)增量坐标是第二个点是相对于第一个点来确定的,也就是说第二个点是第一个点的坐标增量G90 A(40,40) G91 B(0,20) C(-10,0) D(10,30)G0 G1小练习M6 T1; 换1号刀G17 G
4、54 G90; 指定平面、工件坐标,以绝对编程的方式G0 X40 Y40; 到工件起始坐标点准备下刀Z100 G43 H1; 刀具抬到Z100的位置M3 S600; 主轴正转,转速600M8; 开冷却液 G0 Z2; 靠近工件Z2位置G1 Z-2 F20; 刀具下刀深2mm 速度20 开始刀削Y60;X30;X40 Y90;X80;X90 Y60;X80;Y40;X40;G0 Z100; 抬刀到100的位置M9; 关冷却液M5; 主轴停转M30; 程序结束并返回程序开头G2 G3 :圆弧指令 G2:顺时针圆弧 G3:逆时针圆弧格式1:(终点+半径)G17 G2/G3 X_ Y_ R_ F_G1
5、8 G2/G3 X_ Y_ R_ F_G19 G2/G3 X_ Y_ R_ F_G17 G18 G19 为平面选择,X Y 是圆弧终点坐标,R是圆弧半径,F是进给速度。注意半径R有大圆弧和小圆弧区别,大圆弧要用负值(-R),小圆弧用正值(R)例:小圆弧G1 X50.2 Y57.4 F300G2 X68.8 Y71.6 R25大圆弧G1 X50.2 Y57.4 F300G2 X68.8 Y71.6 R-25格式2:I J K 方式(终点+I J K )G17 G2/G3 X_ Y_ I_ J_ F_G18 G2/G3 X_ Z_ I_ K_ F_G19 G2/G3 Y_ Z_ J_ K_ F_在
6、半径不知道的情况下,但知道圆心的坐标。I J K 的意思是:圆心的XYZ坐标相对于起点的XYX坐标的增量。I J K = (圆心XYZ)-(起点XYZ)例:G1 X50.2 Y57.4 F300G2 X68.8 Y71.6 I22.8 J-10.4如果是绕一个整圆,就不能用终点+半径的方式,只能用I J K 方式。G1 X50.2 Y57.4 F300G3 I22.8 J-10.4逆进针整圆,X Y在上一句中已经被指定,所以在下一句中可以省略不写。而且起点与终点重合,所以只需要写一个起点就可以了。C:倒角 R:圆角在用这个命令之前,先了解一个概念:虚拟拐点虚拟拐点:意思是说,在没有倒角或圆角时
7、,两条直线的交点用法也很简单,直接在前面的运动轨迹后面加C或R图a:G1 X70 Y20 C10X100 Y70注意 C为腰长倒角,也就是等腰倒角图b:G1 X70 Y20 R20X100 Y70 (用增量坐标方式也可写成:G1 G91 X30 Y50)圆弧小练习:O0001 文件名G91 G28 Z0 回Z0的参考点(G28)Z轴最高位置,可加可不加,针对老机床换刀时怕回不到换刀位置M6 T1 换刀G17 G55 G90 选择G17平面G55坐标,绝对编程方式G0 X-10.0 Y6.0 快速定位到XY起点位置Z100.0 G43 H1 抬刀到Z100位置 (G43 H1刀具长度补偿)M3
8、S750 主轴正转,转速750G0 Z5.0 靠近零件 5mm位置M8 开启冷却液G1 Z-2.0 F20.0 直线切削,下刀深度2mmY-15.0 R5.0 F300.0 直线走到Y-15位置,插入R5圆角 速度300X0 到X0位置G3 X12.5 Y-8.3 J15.0 逆时针圆弧,终点位置知道X12.5 Y-8.3 , 半径不知道,用I J K 方式,因为I在X 方向的增量是0所以不用写,J的增量是 15G2 X19.9 Y-19.9 R-7.5 顺时针圆弧,知道半径,用终点+半径方式,且大于半圆 R值用负数 G0Z100.0 抬刀到Z100位置M9 关闭冷却液M5 主轴停转M30 程
9、序结束并回程序开头G41 G42 G40 : 刀具半径补偿G41:半径左补偿,沿前进的方向看,刀具在轮廓的左边G42:半径右补偿,沿前进的方向看,刀具在轮廓的右边G40:取消半径补偿(这也是开机时的默认状态)格式:G0/G1 G41/G42 D_ X_ Y_D是刀具半径,在机床里设置。XY是要走到的坐标位置程序规则:1、刀补建立 2、刀补进行 3、刀补取消注意:1、只有在G0 G1程序段才可以建立半径补偿 2、半径补偿模态有效,只到被G40 取消 3、半径补偿的程序段内,不允许出现连续2段或2段以上非当前平面内移动指令G15 G16 : 极坐标G15:取消极坐标G16:开启极坐标格式:G16;
10、 G17 X_ Y_ ;G15;X:代表目标点到原点的长度Y:代表角度图1 打孔小练习G91 G28 Z0M6 T1G17 G54 G90 指定平面(G17) 指定坐标(G54) 绝对编程方式G16 开启极坐标G0 X50 Y30 定位到第一个点(X方向为50,角度30度)Z100 G43 H1 抬刀高度100 刀具长度补偿H1M3 S750 主轴正转,转速750G0 Z5 靠近零件 Z5M8 开冷却液G1 Z-10 F80 向下切削 深度-10 进给速度80G0 Z100 抬刀 Z100X50 Y120 到第二个点(X方向50,角度120度)Z5 靠近G1 Z-10 直线向下切削深度-10
11、G0 Z100 抬刀 Z100X50 Y-150 到第三个点(X方向50,角度-150度)Z5G1 Z-10G0 Z100X50 Y-60 到第四个点Z5G1 Z-10G0 Z100G15 关闭极坐标M9 关冷却液M5 主轴停转M30 程序结并回到程序开头图2 走六边形M6 T2 换刀G17 G54 G90 指定平面(G17) 指定坐标(G54) 绝对编程方式G16 开启极坐标G0 X50 Y0 定位到X50 角度0度Z100 G43 H2 抬刀到Z100位置,刀具补偿 H2M3 S800 主轴正转 转速800G0 Z5 靠近M8 开冷却液G1 Z-2 F200 直线向下切削深度-2 进给速度
12、200X50 Y60 切削走到X50,角度60度位置Y120 切削走到角度120度位置(X50上句已指定)Y180 切削走到角度180度位置,X值不变G91 Y60 采用增量坐标方式(G91)相对于上个角度180增加了60度,所以Y为60度,X值不变Y60 Y增加60度,X值不变G90 Y0 改为绝对编程方式(G90)Y为0度,X值不变G0 Z100 抬刀 到Z100位置G15 关闭极坐标M9 关冷却液M5 主轴停转M30 程序结束并回程序开头G52 : 局部坐标 把工件坐标的原点临时移动到另外一个地方格式: G52 X_ Y_ Z_ G52 X0 Y0 Z0G52 X45 Y65 (到临时坐
13、标点)G52 X0 Y0 (回到坐标原点)局部坐标小练习G91 G28 Z0M6 T1G17 G54 G90 指定平面(G17) 指定坐标(G54) 绝对编程方式G16 开启极坐标G0 X50 Y30 定位到第一个点(X方向为50,角度30度)Z100 G43 H1 抬刀高度100 刀具长度补偿H1M3 S750 主轴正转,转速750G0 Z5 靠近零件 Z5M8 开冷却液G1 Z-10 F80 向下切削 深度-10 进给速度80G0 Z100 抬刀 Z100X50 Y120 到第二个点(X方向50,角度120度)Z5 靠近G1 Z-10 直线向下切削深度-10 G0 Z100 抬刀 Z100
14、X50 Y-150 到第三个点(X方向50,角度-150度)Z5G1 Z-10G0 Z100X50 Y-60 到第四个点Z5G1 Z-10G0 Z100G52 X12 Y25 到临时坐标点G0 X18 Y45Z5G1 Z-10G0Z100X18 Y135Z5G1 Z-10G0 Z100G52 X0Y0 回到原点位置G15 关闭极坐标M9 关冷却液M5 主轴停转M30 程序结并回到程序开头G68 :坐标系旋转G69 :取消旋转把坐标系旋转一定的角度,后面的刀路也会跟着一起旋转。G68 X_ Y_ R_ X Y 是旋转中心,R是旋转角度XY的中心点是可以随便指定的一个点注意:G69取消旋转指令后的
15、每一个运动指令必须用绝对坐标编程。也就是说只能用G90 编程,不可以用G91 编程。G53:机床坐标系 为了把工件移到人的面前好装缷工件用,基本上很少用。 例: G0 G90 G53 Y-2旋转小练习把这个六边形旋转45度M6 T2 换刀G17 G54 G90 指定平面(G17) 指定坐标(G54) 绝对编程方式G68 X0 Y0 R45 开启旋转,以XY为中心点旋转45度G16 开启极坐标G0 X50 Y0 定位到X50 角度0度Z100 G43 H2 抬刀到Z100位置,刀具补偿 H2M3 S800 主轴正转 转速800G0 Z5 靠近M8 开冷却液G1 Z-2 F200 直线向下切削深度
16、-2 进给速度200X50 Y60 切削走到X50,角度60度位置Y120 切削走到角度120度位置(X50上句已指定)Y180 切削走到角度180度位置,X值不变G91 Y60 采用增量坐标方式(G91)相对于上个角度180增加了60度,所以Y为60度,X值不变Y60 Y增加60度,X值不变G90 Y0 改为绝对编程方式(G90)Y为0度,X值不变G0 Z100 抬刀 到Z100位置G15 关闭极坐标G69 关闭旋转M9 关冷却液M5 主轴停转G0 G90 G53 Y-2 把工件移到人的面前好装缷(机械坐标G53很少用,正常都用工件坐标)M30 程序结束并回程序开头镜像指令:G51.1 X_
17、 Y_ 开启镜像G50.1 取消镜像G51.1 后面跟一个数是轴对称,后面跟两个数是中心对称G51.1 Y0 G51.1 X0 G51.1 X0 Y0镜像小练习M6 T1; 换1号刀G17 G54 G90; 指定平面、工件坐标,以绝对编程的方式G51.1 Y0 开启镜像 以Y轴镜像 G0 X40 Y40; 到工件起始坐标点准备下刀Z100 G43 H1; 刀具抬到Z100的位置M3 S600; 主轴正转,转速600M8; 开冷却液 G0 Z2; 靠近工件Z2位置G1 Z-2 F20; 刀具下刀深2mm 速度20 开始刀削Y60;X30;X40 Y90;X80;X90 Y60;X80;Y40;X
18、40;G0 Z100; 抬刀到100的位置G50.1 取消镜像M9; 关冷却液M5; 主轴停转M30; 程序结束并返回程序开头比例缩放指令:G51 G50 G51:开启缩放 G50:取消缩放比例缩放系数的计算O为比例缩放中心:X轴比例系数:Y轴比例系数由图和公式可知:缩放系数其实等于缩放后图形上的某一点到缩放中心的距离与缩放前这一点到缩放中心距离的比值格式1、G51 X_ Y_ Z_ P_G50等比例缩放:XYZ为缩放中心点,P这比例因子。P的取值范围是:1999999 ,分别是指0.001999.999倍。比如 放大1.5倍,就写成1500 ,把放大的倍数乘以1000就是P的值。格式2、G5
19、1 X_ Y_ Z_ I_ J_ K_G50不等比缩放:XYZ为缩放中心,IJK分别为XYZ三轴的缩放比例 。比如:X放大1.5倍,就写成I 1500 Y放大2倍,就写成J 2000 Z放大3倍,就写成K 3000注:如果我们要缩放的是圆弧的话,用等比缩放就是把半径缩放相应的倍数。 用不等比缩放的话,它是不会形成那种随圆的,而是哪个轴的放大倍数大就会自动选择那个大的倍数进行放大。 半径补偿不能放在缩放指令外面的程序段,一定要放在缩放指令程序段里面。缩放小程序练习还是以这个图为例:我们把X缩放0.5倍,Y缩放1.5倍这是一个不等比缩放。M6 T1G17 G54 G90G51 X0 Y0 I500
20、 J1500 开启缩放指令(G51),设XY坐标为0点(X0 Y0),X缩放0.5倍(I500),Y缩放1.5倍(J1500)G0 X40 Y40Z100 G43 H1M3 S600M8G0 Z2G1 Z-2 F20Y60G91 X-10X10 Y30G90 X80G91 X10 Y-30X-10G90 Y40X40 Y40G0 Z100G50 取消缩放M9M5M30钻孔循环:G81 G82 格式 :G81 X_ Y_ Z_ R_ F_;G82 X_ Y_ Z_ R_ P_ F_;动作指令:G81 指令常用于普通孔(浅一点孔),刀具在初始平面快速(G0方式)定位到指定的X、Y坐标位置,再Z向快
21、速定位到R点平面,然后执行切削进给到孔底(Z值)平面,刀具从孔底快速Z向退回到R点平面或初始平面。G82 指令在孔底增加了进给后的暂停动作,以提高孔底表面粗糙度质量,如果指令中不指定暂停参数P,则该指令和G81完全相同 G81打孔时是打到底就抬刀,G82是打到底暂停几秒钟再抬刀,至于暂停几秒钟是根据P值决定的,比如暂停1.5秒,就写成1500。P值是以毫秒为单位的,不能有小数点。钻孔练习程序G91 G28 Z0M6 T1G17 G55 G90G0 X-30 Y0Z100 G43 H1M3 S800M8G81 X-30 Y0 Z-27 R5 F70 如果我们要钻25的深度,假设刀前面的尖角有2毫
22、米,所以我们Z值取-27(Z-27) 此时的程序在每个孔钻孔结束后抬刀是在Z100位置,如果在G81前面加一个G99的话,每个孔结束抬刀会在R点 X0 因为钻孔模态有效,所以打第二个孔时给个坐标就行了X30 第三个孔G80 钻孔循环结束M9M5M30如果把G81那段改成G82只需在里面加一个P值,G82 X-30 Y0 Z-27 P2000 R5 F70这样只要改这一段,钻孔时会在底部停留2秒钟(P2000)深孔啄钻:G83 G73格式:G73 X_ Y_ Z_ R_ Q_ F_;G83 X_ Y_ Z_ R_ Q_ F_;指令动作:X Y是平面坐标,Z是孔底平面位置,R是回退点,Q每次向下钻
23、的深度,F是进给速度 。G83是每次下钻回退点都在R点,而G73是每次不回到R点,只是向上退回一定的深度,这个深度是由机床内部设定的。所以G73的排屑没有G83好。我们编程的时候经常都用G83,很少用到G73。深孔钻练习程序G91 G28 Z0M6 T1G17 G55 G90G0 X-50 Y30Z100 G43 H1M3 S800M8G83 Z-52 Q5 R5 F80 平面X Y坐标前面已经指定过了,这里不需要再指定了X50 第二个孔Y-30 第三个孔X-50 第四个孔G80 钻孔循环结束M9M5M30如果我们要打排孔,比如我们沿X方向每隔15的距离打5个孔,我们就要用到K参数加上G91增
24、量指令:,G91 G28 Z0M6 T1G17 G55 G90G0 X-50 Y30Z100 G43 H1M3 S800M8G83 Z-30 Q5 R5 F80 指定第一个孔的位置G91 X15 K4 用G91增量方式沿X方向每隔15距离再打4个孔(K4)G80 G90 结束钻孔循环,并改回绝对坐标G90方式M9M5M30打圆周孔:G91 G28 Z0M6 T1G17 G55 G90G16 开启极坐标G0 X30 Y25 快速定位第一个孔位置Z100 G43 H1M3 S800M8G81 Z-30 R3 F70 开始钻孔 G91 Y65 K4 以增量方式 每隔65度(Y65)钻一个孔,再钻4个
25、(K4)G80 G15 G90 结束钻孔循环(G81),关闭极坐标(G15),改为绝对编程方式(G90)M9 M5 M30铰孔循环 G85 G89铰孔就是为了获得一个更精确的孔的直径,如果直接钻孔的话有可能会不精确,所以我们就先钻一个稍微小一点的孔再用铰刀钻一次得到一个更精确的孔。用法和G83是一样的。格式:G85 X_ Y_ Z_ R_ F_ ;指令动作:执行G85固定循环时,刀具以切削进给的方式加工到孔底,然后再以切削进给的方式回到R点。与G83唯一不同的一点是G83退刀时是以G0方式快速退刀,而G85是G1方式回到R点G89和G73的用法是一样的,钻到底部时会停留几秒钟,停留时间是P值决
26、定的铰刀程序小练习G91 G28 Z0M6 T1G17 G55 G90G0 X-50 Y30Z100 G43 H1M3 S800M8G81 Z-30 Q5 R5 F80G80M9M5(先打底孔,假设我们要打一个8毫米的孔,那么底孔稍微小一点直径7.8)G91 G28 Z0M6 T2G17 G55 G90G0 X0 Y30Z100 G43 H2M3 S200M8G85 Z-28 R3 F20 用8毫米铰刀开始铰孔G80M9M5M30攻丝 攻螺纹孔G84 右旋螺纹 G74 左旋螺纹格式:G84 X_ Y_ Z_ R_ P_ F_G74 X_ Y_ Z_ R_ P_ F_X、Y是平面坐标,Z螺纹孔底
27、位置,R点回退平面,P停留时间,F进给速度。注意F的进给速度是根据螺纹的大小有要求的,不是随便定的。计算F进给速度的公式:F=SK S是主轴转速,K是螺距练习小程序(这是一个攻M6丝牙为1毫米的螺纹孔)G91G28Z0M6T1G17G55G90G0X0Y0Z100G43H1M3S800G81Z-30R3F80G80M9M5(先打底孔)G91 G28 Z0M6 T2G17 G55 G90G0 X0 Y0Z100 G43 H2M3 S200 这里主轴正转,如果攻反丝的话就要改成主反转(M4) M8G84 Z-10 R7 F200 右攻丝,攻反丝的话把G84改成G74 G80 结束钻孔循环M9M5M30镗孔G76 精镗孔循环G87 反镗孔循环 G87 很少用,正常都用G76。格式:G76 X_ Y_ Z_ R_ Q_ P_ F_ ;X、Y是孔位置,Z孔底面距离位置,R点平面,Q反向距离,P底部停留时间,F进给速度。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1