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 取消 刀具半径补偿
G41 07 左侧 刀具 半径补偿
G42 07 右侧刀具半径补偿
G43 08  刀具长度补偿 +
G44 08 刀具长度补偿-
*G49 08 取消刀具长度补偿
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 主轴反转
cnc编程代码大全
M05 主轴停止
M06 刀具交换
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初始化为空.变量#50 0-#999的数据保存,即使断电也不丢失.
#1000
系统变量
系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置和补偿值.
变量值的范围
局部变量和公共变量可以有0值或下面范围中的值:
-1047到-10-29或-10-2到-1047
如果计算结果超出有效范围,则发出P/S报警NO.111.
小数点的省略
当在程序中定义变量值时,小数点可以省略。
例:当定义#1=123;变量#1的实际值是123.000。
变量的引用
为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。
例如:G01X[#1+#2]F#3;
被引用变量的值根据地址的最小设定单位自动地舍入。
例如:
当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G0 0X12346.
改变引用变量的值的符号,要把负号(-)放在#的前面。
例如:G00X-#1
当引用未定义的变量时,变量及地址都被忽略。
例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1
Y#2的执行结果为G00X0。
双轨迹(双轨迹控制)的公共变量
对双轨迹控制,系统为每一轨迹都提供了单独的宏变量,但是,根据参数N0.6036和6 037的设定,某些公共变量可同时用于两个轨迹。
未定义的变量
当变量值未定义时,这样的变量成为空变量。变量#0总是空变量。它不能写,只能读。
引用
当引用一个未定义的变量时,地址本身也被忽略。
当#1=
当#1=0
G90 X100 Y#1
G90 X100
G90 X100 Y#1
G90 X100 Y0
(b) 运算
除了用赋值以外,其余情况下与0相同。
当#1=时
当#1=0时

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。