虽然数控加工指令与机床形式及数控系统有关, 但数控加工的原理是相同的, 因此, 其基本的编程指令也大致相同。本文谈到的基本指令指的是基于数控技术插补原理设置的, 或各种数控系统通用的编程指令, 典型的有G00/ G01/ G02/ G03、G04、G20/ G21、G28/ G30、G17/ G18/ G19 和G90/ G91 等。其中, G00/ G01/ G02/ G03 基本通用。
1. 英制/ 米制转换指令G20 / G21
(1) 指令格式
数控程序中坐标值的单位可以是英制或米制, 可由G 指令指定, 或由系统参数设定, 指令如下:
英制单位指令: G20, 单位为in (英寸)。
米制单位指令: G21, 单位为mm (毫米)。
(2) 应用技巧与禁忌
1) G20/ G21 代码必须在设定坐标系之前在一个单独的程序段中指定。
2) 程序执行过程中, 不能切换G20 和G21。
3) 国内数控机床的默认设置一般是米制单位, 因此很多人编程时往往省略不写G21指令。
4) 若需加工英制单位的工件时, 建议将英制尺寸转换为米制尺寸后进行编程, 这样可以不必再配置一套英制单位的量具。
5) 系统参数No. 0000 # 2 (INI) 用于默认单位的设置, INI =0 时为米制单位, INI =1时为英制单位, 国内生产与使用的数控机床默认设置为米制。
2. 工作坐标平面选择指令G17 / G18 / G19
学习坐标平面涉及坐标系与坐标轴的概念。
(1) 坐标系、机床坐标系与工件坐标系
坐标系的确定必须遵循GB/ T 19660—2005《工业自动化系统与集成 机床数值控制 坐标系和运动命名》的要求。
数控机床的坐标系是一个右手直角笛卡儿坐标系, 如图1-6 所示, 包括基本的直线运动坐标轴X、Y、Z 和绕相应轴旋转的圆周进给坐标轴A、B、C。对于具体的数控机床, 其各运动轴的定义在GB/ T 19660 中有详细的规则, 这里不展开讨论。
另外, 数控编程时根据图样需要确定的坐标系称为编程坐标系, 而工件装夹后通过对刀确定的坐标系称为加工坐标系, 这两者可统称为工件坐标系。两者常常是重合的。
(2) 机床原点、机床参考点与工件坐标系原点
这几个点实际上是确定相应坐标系的位置。
机床原点是确定机床坐标系位置的参考点, 其位置由机床设计和制造企业确定。
机床参考点是数控机床上一个特殊的固定点, 其位置由数控系统以及各运动轴的行程开关或位置检测装置等确定。该点与机床原点的位置关系由数控系统调试确定, 实际上机床原点的位置只有在机床参考点的位置确定之后才能体现。
工件坐标系原点在编程时由编程人员根据工件图样的特点与编程的需要确定。但工件每次安装在机床上的位置往往是不确定的, 机床操作人员必须使数控系统能够确定编程原点在机床上的位置, 才能保证加工的正确性, 这个操作称为“对刀”。
(3) 坐标轴的方向确定
遵守的是工件静止不动、刀具相对于工件运动的原则, 这个方向是坐标轴的正方向, 即图1-6 中实线所示的方向。图中虚线的方向正好相反, 即刀具固定不动、工件相对于刀具的运动方向。
图1-6 右手直角笛卡儿坐标系
(4) 关于坐标系的学习技巧
1) 各种类型的机床, 其坐标轴的定义由标准规定, 但操作者实际接触的机床往往是有限的, 因此, 不记住坐标轴的定义也没有太大的关系, 只需牢记自己使用的数控机床各坐标轴的定义即可。一般常见的有卧式数控车床与立式数控铣床。
2) 数控机床的操作者不必深究机床原点在哪里, 实际上机床原点的位置在机床参考点位置确定后才能体现。如果机床返回参考点操作后数控系统位置显示为全零, 则可理解为机床参考点就是机床原点。当然, 若不为零, 则显示的绝对坐标值就是机床参考点在机床坐标系中的位置, 机床原点的位置就知道了。
3) 工件固定不动、刀具相对于工件的运动方向为坐标轴的正方向这个原则必须牢记在心。
4) “对刀” 操作是每一位数控编程与操作人员必须熟练掌握的知识, 也是学习数控机床必需的知识。
5) 每一种数控系统必须至少提供一种对刀指令与方法。
6) 在数控系统的实际位置画面的综合显示方式中显示的“机床坐标” 指的是机床坐标系中的坐标, 当机床参考点与机床原点重合时, 其正好也是相对于机床参考点的坐标值。
(5) 工作坐标平面及其选择指令G17/ G18G19
工作坐标平面简称工作平面, 在直角坐标系中有三个———XY 平面、ZX 平面和YZ 平面, 如图1-7 所示, 其对应的指令格式如下:
坐标平面选择指令: G17/ G18/ G19坐标平面选择指令与选择的工作平面见表1-2。
图1-7 坐标平面
表1-2 坐标平面选择指令▼
(6) 关于坐标平面选择指令的应用技巧与禁忌
1) 某些指令必须在指定的坐标平面中进行, 如平面圆弧插补指令和刀具半径补偿指令等。如果程序中没有出现坐标平面选择指令, 那是因为系统默认指定了该指令。同样, 有些指令的执行与坐标平面选择无关, 如直线移动指令等。
2) 系统通电或复位时默认的工作平面可由系统参数No. 3402 的#1 和#2 设定, 对于立式铣床默认设置为G17 指定的XY 坐标平面, 对于数控车床默认设置为G18 指定的ZX 坐标平面。
3) 坐标平面选择指令G17/ G18/ G19 是同一组的模态指令, 可以相互注销。
3. 暂停指令G04
(1) 指令格式
暂停指令又称停刀指令或准确停止指令, 它使程序段执行结束时暂停一段时间, 暂停时间到达后, 系统开始执行下一个程序段。
暂停指令格式为:
其中, X_用于指定时间, 允许用十进制小数点;P_用于指定时间, 不允许用十进制小数点。
用X_指令时, 暂停时间的单位是s, 指令值范围为0. 001 ~ 99999. 999。用P_指令时,暂停时间的单位是ms, 指令值范围为1 ~99999999。
(2) 应用技巧与禁忌
1) 指令暂停时间还可以用参数No. 3405#1 (DWL) 指定, 单位是r, 这在数控车削加工中是有实际意义的。
2) 暂停指令G04 常用于孔加工对孔底有平整度要求、车槽加工中对槽底直径有精度要求, 以及两直角边对转角有加工精度要求的场合, 可实现G09 或G61 的准停功能。
4. 基本的插补功能指令G00 / G01 / G02 / G03
这4 个指令是所有数控系统均具备的基本运动指令, 几乎所有的数控系统均相同。
(1) 快速定位指令G00
主要用于刀具定位, 指令刀具快速移动到指定位置。
指令格式为: G00 X_ Y_ Z_;其中, X_ Y_ Z_指定的是终点位置坐标, 可以由绝对坐标值或增量坐标值指定。当用绝对坐标指定时, 是终点的绝对坐标值; 当用增量值指定时, 相当于刀具移动的距离。
应用技巧:
1) G00 指令移动刀具时仅关注终点的位置精度, 对中间的移动轨迹并不注重。G00 指令的运动轨迹可由系统参数No. 1401#1 (LRP) 设置为直线插补与非直线插补两种, 如图1-8 所示。但即使设定为直线插补, 在执行指令G28、G53 时仍执行非直线插补。
2) G00 指令多用于空行程, 缩短辅助时间, 不能用于切削进给运动。
3) 非直线插补方式下, 各坐标轴的移动速度由系统参数No. 1420 设定, 不能用指令指定与改变。初学者一般不要修改这个速度设置。
4) G00 指令的移动速度可用机床操作面板上的快速倍率修调旋钮或按键在一定范围内修调。
5) G00 指令的终点位置定位精度由参数No. 1826 确定。移动速度包括加速→匀速→减速的过程, 其减速的过程必须确认定位精度在参数No. 1826 设定的范围内, 这个过程称为“到位” 检测。
6) 执行“到位” 检测虽然定位精度很高, 但加工效率略有下降, 故系统提供了参数No. 1601#5 (NCI), 可在程序运行时不执行“到位” 检测。数控系统的默认设置是执行“到位” 检测。
7) 非直线插补方式下的运动轨迹一般为折线, 其轨迹形状与两轴(或三轴) 的增量坐标值有关, 为不确定的折线。因此, 加工时必须注意可能出现的干涉现象。必要时可分轴快速定位。例如: 卧式数控车床常常先X 轴退刀, 然后再Z 轴退刀; 立式数控铣床常常是先Z轴退刀, 然后再X、Y 轴退刀。
8) 开机之初, 机床返回坐标参考点之前, G00 指令的快速移动无效。
应用禁忌:
1) G00 指令格式中不能指定F_指令, 即使指定也不起作用。
2) G00 指令常被称为快速移动指令, 但这里的快速移动仅仅是相对于G01/ G02/ G03 而言。这种说法不能突出“定位” 的特点, 所以不建议采用。但从其多用于空行程移动缩短辅助时间的角度来说, 这种说法也是可以理解的。
3) 严禁G00 指令用于切削加工。实际中有见操作者用机床倍率调节开关将G00 指令的刀具移动速度调到最小时手动移动刀具切削加工的现象, 这是违规的。
(2) 直线插补指令G01
指定机床的各直线运动轴以联动方式控制刀具按直线插补到规定的位置, 其刀具的实际移动速度由进给功能指令F_指定, 这个移动速度属于切削加工的进给速度。
指令格式为: G01 X_Y_Z_F_;其中, X_Y_Z_指定的是终点位置坐标, 可以由绝对坐标值或增量坐标值指定。
G01 与G00 最显着的差异是其更关注中间过程的轨迹精度与移动速度, 主要用于切削加工。
(3) 圆弧插补指令G02/ G03
指定机床中的两个坐标轴以联动的方式在相应的坐标平面中作圆弧插补运动, 刀具的移动速度由进给功能指令F_指定, 与直线插补指令共用。该指令主要用于圆弧轨迹的加工。
指令格式为:
其中, G17/ G18/ G19 指定圆弧插补的工作平面XY / ZX / YZ。
G02/ G03 指定圆弧插补的运动方向———顺时针/ 逆时针圆弧插补, 如图1-10 所示。
图1-10 圆弧插补方向判断
X_ Y_ Z_指定圆弧的终点位置坐标。当用绝对坐标指令(G90) 时为终点的绝对坐标值; 当用增量坐标指令(G91) 时为终点相对于起点的坐标增量。
I_ J_ K_指定圆心位置, 具体为圆弧起点到圆弧中心的矢量在相应坐标轴上的分量, I、J、K 分别对应X、Y、Z 坐标轴。
它与圆弧终点坐标位置是绝对值指令还是增量值指令无关, 始终为增量值坐标。对于尺寸字I0、J0、K0 可以省略不写。指定时没有顺序要求。
R 也是指定圆心位置, 为带符号的圆弧半径。小于180°的圆弧用正值表示, 正号可以不写; 大于180°的圆弧用负值表示; 等于180°的圆弧, 用正、负值均可, 一般用正值。
F 是沿圆弧插补方向的进给速度, 即刀具当前位置处切线方向的速度。
虽然数控加工指令与机床形式及数控系统有关, 但数控加工的原理是相同的, 因此, 其基本的编程指令也大致相同。本文谈到的基本指令指的是基于数控技术插补原理设置的, 或各种数控系统通用的编程指令, 典型的有G00/ G01/ G02/ G03、G04、G20/ G21、G28/ G30、G17/ G18/ G19 和G90/ G91 等。其中, G00/ G01/ G02/ G03 基本通用。
1. 英制/ 米制转换指令G20 / G21
(1) 指令格式
数控程序中坐标值的单位可以是英制或米制, 可由G 指令指定, 或由系统参数设定, 指令如下:
英制单位指令: G20, 单位为in (英寸)。
米制单位指令: G21, 单位为mm (毫米)。
(2) 应用技巧与禁忌
1) G20/ G21 代码必须在设定坐标系之前在一个单独的程序段中指定。
2) 程序执行过程中, 不能切换G20 和G21。
3) 国内数控机床的默认设置一般是米制单位, 因此很多人编程时往往省略不写G21指令。
4) 若需加工英制单位的工件时, 建议将英制尺寸转换为米制尺寸后进行编程, 这样可以不必再配置一套英制单位的量具。
5) 系统参数No. 0000 # 2 (INI) 用于默认单位的设置, INI =0 时为米制单位, INI =1时为英制单位, 国内生产与使用的数控机床默认设置为米制。
2. 工作坐标平面选择指令G17 / G18 / G19
学习坐标平面涉及坐标系与坐标轴的概念。
(1) 坐标系、机床坐标系与工件坐标系
坐标系的确定必须遵循GB/ T 19660—2005《工业自动化系统与集成 机床数值控制 坐标系和运动命名》的要求。
数控机床的坐标系是一个右手直角笛卡儿坐标系, 如图1-6 所示, 包括基本的直线运动坐标轴X、Y、Z 和绕相应轴旋转的圆周进给坐标轴A、B、C。对于具体的数控机床, 其各运动轴的定义在GB/ T 19660 中有详细的规则, 这里不展开讨论。
另外, 数控编程时根据图样需要确定的坐标系称为编程坐标系, 而工件装夹后通过对刀确定的坐标系称为加工坐标系, 这两者可统称为工件坐标系。两者常常是重合的。
(2) 机床原点、机床参考点与工件坐标系原点
这几个点实际上是确定相应坐标系的位置。
机床原点是确定机床坐标系位置的参考点, 其位置由机床设计和制造企业确定。
机床参考点是数控机床上一个特殊的固定点, 其位置由数控系统以及各运动轴的行程开关或位置检测装置等确定。该点与机床原点的位置关系由数控系统调试确定, 实际上机床原点的位置只有在机床参考点的位置确定之后才能体现。
工件坐标系原点在编程时由编程人员根据工件图样的特点与编程的需要确定。但工件每次安装在机床上的位置往往是不确定的, 机床操作人员必须使数控系统能够确定编程原点在机床上的位置, 才能保证加工的正确性, 这个操作称为“对刀”。
(3) 坐标轴的方向确定
遵守的是工件静止不动、刀具相对于工件运动的原则, 这个方向是坐标轴的正方向, 即图1-6 中实线所示的方向。图中虚线的方向正好相反, 即刀具固定不动、工件相对于刀具的运动方向。
图1-6 右手直角笛卡儿坐标系
(4) 关于坐标系的学习技巧
1) 各种类型的机床, 其坐标轴的定义由标准规定, 但操作者实际接触的机床往往是有限的, 因此, 不记住坐标轴的定义也没有太大的关系, 只需牢记自己使用的数控机床各坐标轴的定义即可。一般常见的有卧式数控车床与立式数控铣床。
2) 数控机床的操作者不必深究机床原点在哪里, 实际上机床原点的位置在机床参考点位置确定后才能体现。如果机床返回参考点操作后数控系统位置显示为全零, 则可理解为机床参考点就是机床原点。当然, 若不为零, 则显示的绝对坐标值就是机床参考点在机床坐标系中的位置, 机床原点的位置就知道了。
3) 工件固定不动、刀具相对于工件的运动方向为坐标轴的正方向这个原则必须牢记在心。
4) “对刀” 操作是每一位数控编程与操作人员必须熟练掌握的知识, 也是学习数控机床必需的知识。
5) 每一种数控系统必须至少提供一种对刀指令与方法。
6) 在数控系统的实际位置画面的综合显示方式中显示的“机床坐标” 指的是机床坐标系中的坐标, 当机床参考点与机床原点重合时, 其正好也是相对于机床参考点的坐标值。
(5) 工作坐标平面及其选择指令G17/ G18G19
工作坐标平面简称工作平面, 在直角坐标系中有三个———XY 平面、ZX 平面和YZ 平面, 如图1-7 所示, 其对应的指令格式如下:
坐标平面选择指令: G17/ G18/ G19坐标平面选择指令与选择的工作平面见表1-2。
图1-7 坐标平面
表1-2 坐标平面选择指令▼
(6) 关于坐标平面选择指令的应用技巧与禁忌
1) 某些指令必须在指定的坐标平面中进行, 如平面圆弧插补指令和刀具半径补偿指令等。如果程序中没有出现坐标平面选择指令, 那是因为系统默认指定了该指令。同样, 有些指令的执行与坐标平面选择无关, 如直线移动指令等。
2) 系统通电或复位时默认的工作平面可由系统参数No. 3402 的#1 和#2 设定, 对于立式铣床默认设置为G17 指定的XY 坐标平面, 对于数控车床默认设置为G18 指定的ZX 坐标平面。
3) 坐标平面选择指令G17/ G18/ G19 是同一组的模态指令, 可以相互注销。
3. 暂停指令G04
(1) 指令格式
暂停指令又称停刀指令或准确停止指令, 它使程序段执行结束时暂停一段时间, 暂停时间到达后, 系统开始执行下一个程序段。
暂停指令格式为:
其中, X_用于指定时间, 允许用十进制小数点;P_用于指定时间, 不允许用十进制小数点。
用X_指令时, 暂停时间的单位是s, 指令值范围为0. 001 ~ 99999. 999。用P_指令时,暂停时间的单位是ms, 指令值范围为1 ~99999999。
(2) 应用技巧与禁忌
1) 指令暂停时间还可以用参数No. 3405#1 (DWL) 指定, 单位是r, 这在数控车削加工中是有实际意义的。
2) 暂停指令G04 常用于孔加工对孔底有平整度要求、车槽加工中对槽底直径有精度要求, 以及两直角边对转角有加工精度要求的场合, 可实现G09 或G61 的准停功能。
4. 基本的插补功能指令G00 / G01 / G02 / G03
这4 个指令是所有数控系统均具备的基本运动指令, 几乎所有的数控系统均相同。
(1) 快速定位指令G00
主要用于刀具定位, 指令刀具快速移动到指定位置。
指令格式为: G00 X_ Y_ Z_;其中, X_ Y_ Z_指定的是终点位置坐标, 可以由绝对坐标值或增量坐标值指定。当用绝对坐标指定时, 是终点的绝对坐标值; 当用增量值指定时, 相当于刀具移动的距离。
应用技巧:
1) G00 指令移动刀具时仅关注终点的位置精度, 对中间的移动轨迹并不注重。G00 指令的运动轨迹可由系统参数No. 1401#1 (LRP) 设置为直线插补与非直线插补两种, 如图1-8 所示。但即使设定为直线插补, 在执行指令G28、G53 时仍执行非直线插补。
2) G00 指令多用于空行程, 缩短辅助时间, 不能用于切削进给运动。
3) 非直线插补方式下, 各坐标轴的移动速度由系统参数No. 1420 设定, 不能用指令指定与改变。初学者一般不要修改这个速度设置。
4) G00 指令的移动速度可用机床操作面板上的快速倍率修调旋钮或按键在一定范围内修调。
5) G00 指令的终点位置定位精度由参数No. 1826 确定。移动速度包括加速→匀速→减速的过程, 其减速的过程必须确认定位精度在参数No. 1826 设定的范围内, 这个过程称为“到位” 检测。
6) 执行“到位” 检测虽然定位精度很高, 但加工效率略有下降, 故系统提供了参数No. 1601#5 (NCI), 可在程序运行时不执行“到位” 检测。数控系统的默认设置是执行“到位” 检测。
7) 非直线插补方式下的运动轨迹一般为折线, 其轨迹形状与两轴(或三轴) 的增量坐标值有关, 为不确定的折线。因此, 加工时必须注意可能出现的干涉现象。必要时可分轴快速定位。例如: 卧式数控车床常常先X 轴退刀, 然后再Z 轴退刀; 立式数控铣床常常是先Z轴退刀, 然后再X、Y 轴退刀。
8) 开机之初, 机床返回坐标参考点之前, G00 指令的快速移动无效。
应用禁忌:
1) G00 指令格式中不能指定F_指令, 即使指定也不起作用。
2) G00 指令常被称为快速移动指令, 但这里的快速移动仅仅是相对于G01/ G02/ G03 而言。这种说法不能突出“定位” 的特点, 所以不建议采用。但从其多用于空行程移动缩短辅助时间的角度来说, 这种说法也是可以理解的。
3) 严禁G00 指令用于切削加工。实际中有见操作者用机床倍率调节开关将G00 指令的刀具移动速度调到最小时手动移动刀具切削加工的现象, 这是违规的。
(2) 直线插补指令G01
指定机床的各直线运动轴以联动方式控制刀具按直线插补到规定的位置, 其刀具的实际移动速度由进给功能指令F_指定, 这个移动速度属于切削加工的进给速度。
指令格式为: G01 X_Y_Z_F_;其中, X_Y_Z_指定的是终点位置坐标, 可以由绝对坐标值或增量坐标值指定。
G01 与G00 最显着的差异是其更关注中间过程的轨迹精度与移动速度, 主要用于切削加工。
(3) 圆弧插补指令G02/ G03
指定机床中的两个坐标轴以联动的方式在相应的坐标平面中作圆弧插补运动, 刀具的移动速度由进给功能指令F_指定, 与直线插补指令共用。该指令主要用于圆弧轨迹的加工。
指令格式为:
其中, G17/ G18/ G19 指定圆弧插补的工作平面XY / ZX / YZ。
G02/ G03 指定圆弧插补的运动方向———顺时针/ 逆时针圆弧插补, 如图1-10 所示。
图1-10 圆弧插补方向判断
X_ Y_ Z_指定圆弧的终点位置坐标。当用绝对坐标指令(G90) 时为终点的绝对坐标值; 当用增量坐标指令(G91) 时为终点相对于起点的坐标增量。
I_ J_ K_指定圆心位置, 具体为圆弧起点到圆弧中心的矢量在相应坐标轴上的分量, I、J、K 分别对应X、Y、Z 坐标轴。
它与圆弧终点坐标位置是绝对值指令还是增量值指令无关, 始终为增量值坐标。对于尺寸字I0、J0、K0 可以省略不写。指定时没有顺序要求。
R 也是指定圆心位置, 为带符号的圆弧半径。小于180°的圆弧用正值表示, 正号可以不写; 大于180°的圆弧用负值表示; 等于180°的圆弧, 用正、负值均可, 一般用正值。
F 是沿圆弧插补方向的进给速度, 即刀具当前位置处切线方向的速度。