CNC常用代码大全如下:
1. 数控程序中字母的含义
O:程序号,设定程序号
N:程序段号,设定程序顺序号
G:准备功能
X/Y/Z :尺寸字符,轴移动指令
A/B/C/U/V/W:附加轴移动指令
R:圆弧半径
I/J/K:圆弧中心坐标(矢量)
F:进给,设定进给量
S:主轴转速,设定主轴转速
T:刀具功能,设定刀具号
M:辅助功能,开/关控制功能
H/D:刀具偏置号,设定刀具偏置号
P/X:延时,设定延时时间
P:程序号指令,设定子程序号(如子程序调用:M98P1000)
L:重复,设定子程序或固定循环重复次数(如:M98 P1000 L2,省略L代表L1)
P/W/R/Q:参数,固定循环使用的参数(如:攻牙G98/(G99)G84 X_ Y_ R_ Z_ P_ F_)
2. 常用G代码解释
G00:定位或快速移动
G01:直线插补
G02:圆弧插补/螺旋线插补CW
G03:圆弧插补/螺旋线插补CCW
G04:停留时间或延时时间
如:G04 X1000(或G04 X1.0)
G04 P1000表示停留1秒钟
G09:准确停止或精确停止检查(检查是否在目标范围内)
G10:可编程数据输入
G17:选择XPYP 平面XP:X 轴或其平行轴
G18:选择ZPXP 平面YP:Y 轴或其平行轴
G19:选择YPZP 平面ZP:Z 轴或其平行轴
G20:英寸输入
G21:毫米输入
G28:返回参考点检测
格式:G91/(G90) G28 X__ Y__ Z__ 经过中间点X__ Y__ Z__返回参考点(绝对值/增量值指令)
G29:从参考点返回
G91/(G90) G29 X__ Y__ Z__ 从起始点经过参考点返回到目标点X__ Y__ Z__的指令(绝对值/增量值指令) G30 返回第2,3,4 参考点
G91/(G90) G30 P2 X__ Y__ Z__;返回第2 参考点(P2 可以省略。)
G91/(G90) G30 P3 X__ Y__ Z__;返回第3 参考点
G91/(G90) G30 P4 X__ Y__ Z__;返回第4 参考点
X__ Y__ Z__:经过中间点位置(绝对值/增量值指令)
G40:刀具半径补偿取消
G41:左侧刀具半径补偿(沿进给方向刀具在左边)
G42:右侧刀具半径补偿(沿进给方向刀具在右边)
G43:刀具长度补偿+方向
G44:刀具长度补偿-方向
G49:取消刀具长度补偿
G50:取消比例缩放
G51:比例缩放,格式:
ON G51 X_ Y_ Z_ P_;
OFF G50 X_ Y_ Z_:设定缩放中心位置
P:缩放比例,范围是1-999999,不能是小数,如果P800代表缩放比例是0.8
G52:设定局部坐标系
G53:选择机床坐标系
G54-G59:选择工件坐标系
1-6
G60:单方向定位,消除传动间隙(代替G00),过目标位置后然后回头至目标位置
G61:准停检查方式,切削进给接近目标位置时减速并检查位置公差范围
G62:自动拐角倍率
G63:攻牙方式
G64:正常切削方式,切削进给接近目标位置时不减速,以及切削段与段之间不减速
G65:宏程序调用
G66:宏程序模态调用
G67:宏程序模态调用取消
G68:坐标旋转,格式:
G17:G68 X_ Y_ R_
G18:G68 X_ Z_ R_
G19:G68 Y_ Z_ R_
G69 坐标旋转取消
G73:多级钻削循环
G74:攻左旋螺纹循环
G76:精镗循环(定向偏心退刀)
G80:取消固定循环
G81:单级钻削循环
G82:单级钻削循环(实现孔底停留或延时)
G83:多级钻削循环
G84:攻右旋螺纹
G85:镗削循环
G86:镗削循环
G87:反镗循环
G88:镗削循环
G89:镗削循环
G90:绝对指令
G91:相对指令
G92:设定工件坐标系
G98:固定循环后退时退回起点
G99:固定循环后退时退回点(R点在固定循环中设定)
3. 常用M代码解释
M00:程序无条件停止
M01 :程序条件停止
M02 :程序结束
M03 :主轴正转
M04 :主轴反转
M05 :主轴停止
M08 :开外冷
M09 :关所有冷却
M26 :开内冷
M30 :程序结束并返回到程序开头
M84 :检查托盘1
M95:检查托盘2
M98 :调用子程序
M99 :返回主程序
M135:刚性攻牙
M417:机床托盘1检查
M418:机床托盘2检查
M419:机床托盘检查结束
M433:刀具断刀检测
M462:托盘号传送
4. 常用算术
加法:#i=#j+#k
减法:#i=#j-#k
乘法:#i=#j*#k
除法:#i=#j/#k
正弦:#i=SIN[#j]
反正弦:#i=ASIN[#j]
余弦:#i=COS[#j]
反余弦:#i=ACOS[#j]
正切:#i=TAN[#j]
反正切:#i=ATAN[#j]
平方根:#i=SQRT[#j]
绝对值:#i=ABS[#j]
舍入:#i=ROUND[#j]
上取整:#i=FIX[#j]
下取整:#i=FUP[#j]
自然对数:#i=LN[#j]
指数函数:#i=EXP[#j] 或:#i=#jOR#k 异或:#i=#jXOR#k 与:#i=#AND#k 从BCD转为BIN:#i=BIN[#j] 从BIN转为BCD:#i=BCD[#j]
5. 逻辑运算符
EQ:等于
NE:不等于
GT:大于
GE:小于或等于
LT:小于
6. 程序转移和循环
无条件转移:GOTO
条件转移:IF [条件表达式] IF [条件表达式] GOTO n,如果条件满足,则跳转至程序段n IF [条件表达式] THEN,如:IF [#I=#J] THEN #K=0
7. 循环语句
WHILE [条件表达式] Dom (m=1,2,,3)
…
ENDm
如果条件满足则执行Dom至ENDm之间的程序(直到条件不满足),否则转而执行ENDm后面的程序