G代码 分组 功能 *G00 01 定位(移动) *G01 01 直线插补(进给速度) G02 01 顺时针圆弧插补 G03 01 逆时针圆弧插补 G04 00 暂停,停止 G09 00 停止 *G17 02 选择X Y平面 G18 02 选择Z X平面 G19 02 选择Y Z平面 G27 00 返回并检查参考点 G28 00 返回参考点 G29 00 从参考点返回 G30 00 返回第二参考点 *G40 07 取消刀JU半径补偿 G41 07 左侧刀JU半径补偿 G42 07 右侧刀JU半径补偿 G43 08 刀JU长度补偿+ G44 08 刀JU长度补偿- *G49 08 取消刀JU长度补偿 G52 00 设置局部坐标系 G53 00 选择机床坐标系 *G54 14 选用1号工件坐标系 G55 14 选用2号工件坐标系 G56 14 选用3号工件坐标系 G57 14 选用4号工件坐标系 G58 14 选用5号工件坐标系 G59 14 选用6号工件坐标系 G60 00 单一方向定位 G61 15 停止方式 *G64 15 切削方式 G65 00 宏程序调用 G66 12 模态宏程序调用 *G67 12 模态宏程序调用取消 G73 09 深孔钻削固定循环 G74 09 反螺纹攻丝固定循环 G76 09 精镗固定循环 *G80 09 取消固定循环 G81 09 钻削固定循环 G82 09 钻削固定循环 G83 09 深孔钻削固定循环 G84 09 攻丝固定循环 G85 09 镗削固定循环 G86 09 镗削固定循环 G87 09 反镗固定循环 G88 09 镗削固定循环 G89 09 镗削固定循环 *G90 03 指令方式 *G91 03 增量值指令方式 G92 00 工件零点设定 *G98 10 固定循环返回初始点 G99 10 固定循环返回R点 G代码被分为了不同的组,这是由于大多数的G代码是模态的,所谓模态G代码,是指这些G代码不只在当前的程序段中起作用,而且在以后的程序段中一直起作用,直到程序中出现另一个同组的G代码为止,同组的模态G代码控制同一个目标但起不同的作用,它们之间是不相容的。00组的G代码是非模态的,这些G代码只在它们所在的程序段中起作用。标有*号的G代码是上电时的初始状态。对于G01和G00、G90和G91上电时的初始状态由参数决定。 如果程序中出现了未列在上表中的G代码,CNC会显示10号报警。 同一程序段中可以有几个G代码出现,但当两个或两个以上的同组G代码出现时,最后出现的一个(同组的)G代码有效。 在固定循环模态下,任何一个01组的G代码都将使固定循环模态自动取消,成为G80模态。 1.3 辅助功能 本机床用S代码来对主轴转速进行编程,用T代码来进行选刀编程,其它可编程辅助功能由M代码来实现,本机床可供用户使用的M代码列表如下 M代码 功能 M00 程序停止 M01 条件程序停止 M02 程序结束 M03 主轴正转 M04 主轴反转 M05 主轴停止 M06 刀ju交换 M08 冷却开 M09 冷却关 M18 主轴定向解除 M19 主轴定向 M29 刚性攻丝 M30 程序结束并返回程序头 M98 调用子程序 M99 子程序结束返回/重复执行这是普通的指令编程,还有利用变量编制的程序, 统宏程序编程 一 变量 普通加工程序直接用数值G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接或用变量。当用变量时,变量值可用程序或用MDI面板上的操作改变。 #1=#2+100 G01 X#1 F300 说明: 变量的表示 计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号。 例如:#1 表达式可以用于变量号。此时,表达式必须封闭在括号中。 例如:#[#1+#2-12] 变量的类型 变量根据变量号可以分成四种类型 变量号 变量类型 功能 #0 空变量 该变量总是空,没有值能赋给该变量. #1-#33 局部变量 局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时,局部变量被初始化为空.调用宏程序时,自变量对局部变量赋值, #100-#199 #500-#999 公共变量 公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199初始化为空.变量#500-#999的数据保存,即使断电也不丢失. #1000 系统变量 系统变量用于读和写CNC运行时各种数据的变化,例如,刀ju的当前位置和补偿值. 变量值的范围 局部变量和公共变量可以有0值或下面范围中的值: -1047到-10-29或-10-2到-1047 如果计算结果超出有效范围,则发出P/S报警11. 小数点的省略 当在程序中定义变量值时,小数点可以省略。 例:当定义#1=123;变量#1的实际值是123.000。 变量的引用 为在程序中使用变量值,后跟变量号的地址。当用表达式变量时,要把表达式放在括号中。 例如:G01X[#1+#2]F#3; 被引用变量的值根据地址的小设定单位自动地舍入。 例如: 当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346. 改变引用变量的值的符号,要把负号(-)放在#的前面。 例如:G00X-#1 当引用未定义的变量时,变量及地址都被忽略。 例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1 Y#2的执行结果为G00X0。 双轨迹(双轨迹控制)的公共变量 对双轨迹控制,系统为每一轨迹都提供了单独的宏变量,但是,根据参数N0.6036和6037的设定,某些公共变量可同时用于两个轨迹。 未定义的变量 当变量值未定义时,这样的变量成为空变量。变量#0总是空变量。它不能写,只能读。 引用 当引用一个未定义的变量时,地址本身也被忽略。 当#1= 当#1=0 G90 X100 Y#1 G90 X100 G90 X100 Y#1 G90 X100 Y0 (b) 运算 除了用赋值以外,其余情况下与0相同。 当#1=时 当#1=0时 #2=#1 #2= #2=#1 #2=0 #2=#*5 #2=0 #2=#*5 #2=0 #2=#1+#1 #2=0 #2=#1+#1 #2=0 (c)条件表达式 EQ和NE中的不同于0。 当#1=时 当#1=0时 #1EQ#0 成立 #1EQ#0 不成立 #1 NE #0 成立 #1 NE #0 不成立 #1 GE #0 成立 #1 GE #0 不成立 #1 GT #0 不成立 #1 GT #0 不成立 限制 程序号,顺序号和任选程序段跳转号不能使用变量。 例:下面情况不能使用变量: 0#1; /#2G00X100.0; N#3Y200.0; 二 算术和逻辑运算 下面表中列出的运算可以在变量中执行。运算符右边的表达式可包含常量和或由函数或运算符组成的变量。表达式中的变量#j和#k可以用常数赋值。左边的变量也可以用表达式赋值。 说明: 角度单位 函数SIN ,COS,ASIN,ACOS,TAN和ATAN的角度单位是度。如90°30'表示为90.5度。 ARCSIN # i= ASIN[#j] (1)取值范围如下: 当参数(NO.6004#0)NAT位设为0时,270°~90° 当参数(NO.6004#0)NAT位设为1时,-90°~90° (2)当#j超出-1到1的范围时,发出P/S报警11. (3)常数可变量#j ARCCOS #i=ACOS[#j] 取值范围从180°~0° 当#j超出-1到1的范围时,发出P/S报警11. 常数可变量#j 三 程序举例 铣椭圆: 轨迹: 椭圆程序代码如下: N10 G54 G90 G0 S1500 M03 N12 X0 Y0 Z20. N14 G0 Z1 N16 G1 Z-5. F150. N18 G41 D1 N20 #1=0 N22 #2=34 N24 #3=24 N26 #4=#2*COS[#1] N28 #5=#3*SIN[#1] N30 #10=#4*COS[45]-#5*SIN[45] N32 #11=#4*SIN[45]+#5*COS[45] N34 G1 X#10 Y#11 N36 #1=#1+1 N38 IF [#1 LT 370] GOTO26 N40 G40 G1 X0 Y0 N42 G0 Z100 N44 M30 铣矩形槽: 铣矩形槽代码如下: #102=0. N3#100=0. #101=0. #103=200. #104=400. G91G28Z0. G0G90G54X0.Y0. G43H1Z20. M3S2000. N4G0X#100Y#101 G01Z#102F200. #102=#102-2. IF[#102EQ-50.]GOTO1 GOTO2 N2 N4X#104F500. Y#103 X#100 Y#101 #100=#100+10. #101=#101+10. #103=#103-10. #104=#104-10. IF[#100EQ100.]GOTO3 GOTO4 N3 N1 M5 M9 G91G28Z0. G28Y0. M30 铣倾斜3度的面: 轨迹: 铣倾斜3度的面的代码如下: O0001 #[#1+1*2]=1 G65P9012L1A0B0.1C4I100J3K0 M30 宏程序O9012代码如下: G54 G90 G00 X[#3] Y0 Z100 S500 M3 G01 Z0 F300 WHILE[#1LE10]DO1 #7= #1/TAN[#5]+#3 G1Z-#1 X#7 #8=#6/2-ROUND[#6/2] IF[#8EQ0]GOTO10 G1Y0 GOTO20 N10 Y#4 N20#1=#1+#2 #6=#6+1 END1 G0 Z100 铣半球: 轨迹: 铣半球代码如下: G90G0G54X-10.Y0M3S4500 G43Z50.H1M8 #1=0.5 WHILE[#1LE50.]DO1 #2=50.-#1 #3=SQRT[2500.-[#2*#2]] G1Z-#1F20 X-#3F500 G2I#3 #1=#1+0.5 END1 G0Z50.M5 M30 铣喇叭: 铣喇叭代码如下: M03 S500 M06 T01 #1=0 #2=0 G0 Z15 X150 Y0 N11 #2=30*SIN[#1] #3=30+30*[1-COS[#1]] G01 Z-#2 F40 G41 X#3 D01 G03 I-#3 G40 G01 X150 Y0 #1=#1+1 IF [#1 LE 90] GOTO 11 G0 Z30 |
申请免费试听
只要一个电话
我们为您免费回电