一般程序段由下列功能字组成:
N —— G —— X —— Y —— Z —— F —— S —— T —— M ——
程序号 准备功能 坐标值 进给速度 主轴速度 刀具 辅助功能
(一)准备功能
准备功能字G代码,用来规定刀具和工件的相对运动轨迹(即指令插补功能)、机床坐标系、坐标平面、刀具补偿、坐标偏置等多种加工操作。我国机械工业部根据ISO标准制定了JB3208-83标准,规定G代码由字母G及其后面的二位数字组成,从G00到G99共有100种代码,如表1-3所示。
G代码分模态代码和非模态代码。
表1-3 G功能代码
代码 (1) | 模态代码组别 (2) | 功 能 (3) |
G00 | a | 点定位 |
G01 | a | 直线插补 |
G02 | a | 顺时针圆弧插补 |
G03 | a | 逆时针圆弧插补 |
G04 | 暂停 | |
G05 | 不指定 | |
G06 | a | 抛物线插补 |
G07 | 不指定 | |
G08 | 加速 | |
G09 | 减速 | |
G10~G16 | 不指定 | |
G17 | c | XY平面选择 |
G18 | c | ZX平面选择 |
G19 | c | YZ平面选择 |
G20~G32 | 不指定 | |
G33 | a | 螺纹切削,等螺距 |
G34 | a | 螺纹切削,增螺距 |
G35 | a | 螺纹切削,减螺距 |
G36~G39 | 永不指定 | |
G40 | d | 刀具补偿/偏置注销 |
G41 | d | 刀具左补偿 |
G42 | d | 刀具右补偿 |
G43 | (d) | 刀具正偏置 |
G44 | (d) | 刀具负偏置 |
G45 | (d) | 刀具偏置+/+ |
G46 | (d) | 刀具偏置+/- |
G47 | (d) | 刀具偏置-/- |
G48 | (d) | 刀具偏置-/+ |
G49 | (d) | 刀具偏置0/+ |
代码 (1) | 模态代码组别 (2) | 功 能 (3) |
G50 | (d) | 刀具偏置0/- |
G51 | (d) | 刀具偏置+/0 |
G52 | (d) | 刀具偏置-/0 |
G53 | f | 直线偏移,注销 |
G54 | f | 直线偏移X |
G55 | f | 直线偏移Y |
G56 | f | 直线偏移Z |
G57 | f | 直线偏移XY |
G58 | f | 直线偏移XZ |
G59 | f | 直线偏移YZ |
G60 | h | 准确定位1(精) |
G61 | h | 准确定位2(中) |
G62 | h | 快速定位(粗) |
G63 | 攻螺纹 | |
G64~G67 | 不指定 | |
G68 | (d) | 刀具偏移,内角 |
G69 | (d) | 刀具偏移,外角 |
G70~G79 | 不指定 | |
G80 | e | 固定循环注销 |
G81~G89 | e | 固定循环 |
G90 | j | 绝对尺寸 |
G91 | j | 增量尺寸 |
G92 | 预置寄存 | |
G93 | k | 时间倒数,进给率 |
G94 | k | 每分钟进给 |
G95 | k | 主轴每转进给 |
G96 | i | 恒线速度 |
G97 | i | 每分钟转数(主轴) |
G98~G99 | 不指定 |
(二)坐标功能字
坐标功能字(又称尺寸字)用来设定机床各坐标的位移量。它一般使用X、Y、Z、U、V、W、P、Q、R、A、B、C、D、E等地址符为首,在地址符后紧跟“+”(正)或“-”(负)及一串数字,该数字一般以系统脉冲当量(指数控系统能实现的最小位移量,即数控装置每发出一个脉冲信号,机床工作台的移动量,一般为0.0001~0.01mm)为单位,不使用小数点。一个程序段中有多个尺寸字时,一般按上述地址符顺序排列。
(三)进给功能字
该功能字用来指定刀具相对工件运动的速度。其单位一般为mm/min。当进给速度与主轴转速有关时,如车螺纹、攻丝等,使用的单位为mm/r。进给功能字以地址符“F”为首,其后跟一串数字代码。
(四)主轴功能字
该功能字用来指定主轴速度,单位为r/min,它以地址符“S”为首,后跟一串数字。
(五)刀具功能字
当系统具有换刀功能时,刀具功能字用以选择替换的刀具。它以地址符“T”为首,其后一般跟二位数字,代表刀具的编号。
以上F功能、T功能、S功能均为模态代码。
(六)辅助功能字
辅助功能字M代码主要用于数控机床的开关量控制,如主轴的正、反转,切削液开、关,工件的夹紧、松开,程序结束等。M代码从M00-M99共100种。我国标准JB3208-83的有关规定见表1-4所示。
(1)M00程序停止;(2)M01选择停止;(3)M02程序结束;(4)M30纸带结束。
表1-4 M功能代码
代 码(1) | 功能与程序 段运动同时开始(2) | 功能在程序段 运动完后开始(3) | 功 能(4) |
M00 | * | 程序停止 | |
M01 | * | 计划停止 | |
M02 | * | 程序结束 | |
M03 | * | 主轴顺时针方向 | |
M04 | * | 主轴逆时针方向 | |
M05 | * | 主轴停止 | |
M06 | # | # | 换刀 |
M07 | * | 2号切削液开 | |
M08 | * | 1号切削液开 | |
M09 | * | 切削液关 | |
M10 | # | # | 夹紧 |
M11 | # | # | 松开 |
M12 | # | # | 不指定 |
M13 | * | 主轴顺时针方向切削液开 | |
M14 | * | 主轴逆时针方向切削液开 | |
M15 | * | 正运动 | |
M16 | * | 负运动 | |
M17~M18 | # | # | 不指定 |
M19 | * | 主轴定向停止 | |
M20~M29 | # | # | 永不指定 |
M30 | * | 纸带结束 | |
M31 | # | # | 互锁旁路 |
M32~M35 | # | # | 不指定 |
代 码(1) | 功能与程序 段运动同时开始(2) | 功能在程序 段运动完后开始(3) | 功 能(4) |
M36 | * | 进给范围1 | |
M37 | * | 进给范围2 | |
M38 | * | 主轴速度范围1 | |
M39 | * | 主轴速度范围2 | |
M40~M45 | # | # | 不指定或齿轮换档 |
M46~M47 | # | # | 不指定 |
M48 | * | 注销M49 | |
M49 | * | 进给率修正旁路 | |
M50 | * | 3号切削液开 | |
M51 | * | 4号切削液开 | |
M52~M54 | # | # | 不指定 |
M55 | * | 刀具直线位移,位置1 | |
M56 | * | 刀具直线位移,位置2 | |
M57~M59 | # | # | 不指定 |
M60 | * | 更换工件 | |
M61 | * | 工件直线位移,位置1 | |
M62 | * | 工件直线位移,位置2 | |
M63~M70 | # | # | 不指定 |
M71 | * | 工件角度移位位置1 | |
M72 | * | 工件角度移位位置2 | |
M73~M89 | # | # | 不指定 |
M90~M99 | # | # | 永不指定 |