CNC Path Analyzer

Круговая интерполяция G02/G03: как определить направление и чем R отличается от I/J/K

Как отличить G02 (по часовой стрелке) от G03 (против часовой) с учётом выбора плоскости, проблема 180 градусов у команд R, задание центра через I/J/K и полные окружности — на фрезерном примере с рисунком траектории.

Три сведения, нужные кадру дуги

Прямую можно построить по одной конечной точке, а дугу — нет, потому что через одни и те же начальную и конечную точки проходит бесчисленное множество окружностей. Поэтому кадру дуги нужны направление вращения (G02 или G03), конечная точка и либо радиус, либо положение центра.

По часовой стрелке — если смотреть откуда?

G02 — по часовой стрелке (CW), G03 — против часовой (CCW). Однако «по часовой» определяется при взгляде с плюсовой стороны на минусовую вдоль оси, перпендикулярной выбранной плоскости. В плоскости по умолчанию для обрабатывающего центра G17 (XY) это взгляд на стол сверху, поэтому совпадает с интуицией.

В G18 (ZX) или G19 (YZ) направление взгляда меняется, и направление может казаться обратным по сравнению с рисунком на экране. Токарные станки по умолчанию используют G18, и видимое на чертеже направление вращения меняется на противоположное в зависимости от того, находится ли револьверная головка выше (задняя) или ниже (передняя) оси шпинделя. Запись оси X токарного станка разобрана отдельно в статье Программирование диаметра на токарном станке и G18.

ПлоскостьКомандаНаправление взглядаТипичное применение
XYG17От +Z к -ZПо умолчанию на обрабатывающем центре
ZXG18От +Y к -YПо умолчанию на токарном, боковое фрезерование
YZG19От +X к -XБоковое фрезерование

На что обратить внимание при задании R

Прямое задание радиуса, как в G03 X40. Y10. R10., почти не требует вычислений и широко используется в программах, написанных вручную. Однако даже при тех же начальной точке, конечной точке и радиусе возможны две окружности: короткая (180° и меньше) и длинная (больше 180°).

Большинство УЧПУ трактуют положительный R как дугу 180° и меньше, а отрицательный R — как дугу больше 180°. Если, задумав дугу 270°, забыть о знаке R, получится дуга 90°, и инструмент будет резать не там. Кроме того, полную окружность, у которой начальная и конечная точки совпадают, нельзя задать через R: R даёт только размер окружности и ничего не фиксирует её положение.

Команды I/J/K: прямое задание центра

I, J и K — это расстояния от начальной точки дуги до центра по X, Y и Z соответственно. В большинстве УЧПУ I/J/K читаются как приращения от начальной точки даже в абсолютном режиме G90. G02 X50. Y40. I10. J0. из примера — дуга радиусом 10 с центром в (50,30), на 10 по X от начальной точки (40,30).

Поскольку центр задан явно, способ I/J/K подходит для полных окружностей, дуг больше 180° и случаев, где важна точность, например для вывода из CAM. С другой стороны, если конечная точка на самом деле не лежит на этой окружности, радиусы в начале и в конце различаются, и при превышении допуска выдаётся авария.

Траектория примера

Первая дуга — против часовой стрелки с R, вторая — по часовой с I/J, а последний кадр — полная окружность, у которой начальная и конечная точки совпадают. Рисунок показывает, как все три соединяются в одну траекторию.

Траектория, соединяющая дугу против часовой стрелки с R, дугу по часовой с I/J и полную окружность с I/J

O2002
T2 M6
G21 G90 G17 G94
G54
S2500 M03
G00 X0. Y-5. Z5.
G01 Z-1. F80
Y0. F250
X30.
G03 X40. Y10. R10.
G01 Y30.
G02 X50. Y40. I10. J0.
G01 X70.
G02 X70. Y40. I0. J-15.
G00 Z50.
M30
Траектория, соединяющая дугу против часовой стрелки с R, дугу по часовой с I/J и полную окружность с I/J — XY траекторияXY
Светло-синий пунктир — быстрый ход G00, сплошная оранжевая линия — резание. Дуги показаны как рассчитанные статические кривые.

На рисунке выше показан результат анализа этой программы в CNC Path Analyzer (быстрый ход 2 сегментов, линейное резание 5 сегментов, дуга 3 сегментов).

Чек-лист для поиска ошибок в дугах

  • Плоскость: выбрана ли нужная плоскость из G17/G18/G19? В другой плоскости тот же G02 станет окружностью в другом направлении.
  • Знак R: не записан ли R положительным для дуги больше 180°?
  • Согласование конечной точки: равен ли радиус, вычисленный по I/J, расстоянию от центра до конечной точки? Даже разница округления в третьем знаке после запятой при накоплении может вызвать аварию.
  • Коррекция на радиус инструмента: при активных G41/G42 скорректированную траекторию построить нельзя, если радиус внутренней дуги меньше радиуса инструмента.
  • Подача: при обработке внутренней стороны дуги скорость центра инструмента и скорость на режущей кромке различаются. Для внутренних дуг малого радиуса F обычно снижают.

Практика: перевод команды R в I/J

G03 X40. Y10. R10. из примера — дуга 90° против часовой стрелки радиусом 10 от начальной точки (30, 0) до конечной точки (40, 10). Короткая дуга против часовой стрелки радиусом 10 через эти две точки имеет центр в (30, 10). Расстояние от начальной точки до центра — X 0, Y +10, поэтому ту же дугу можно записать и как G03 X40. Y10. I0. J10..

Завершающая полная окружность G02 X70. Y40. I0. J-15. имеет центр в (70, 25) и радиус 15. Длина окружности — 2 × π × 15 ≈ 94.2 мм, поэтому один оборот при F250 занимает около 22.6 секунды.

Как инструмент отображает дуги

CNC Path Analyzer аппроксимирует дуги короткими прямыми отрезками, а для кадров дуг, у которых не сходятся направление или радиус, не придумывает траекторию, а сообщает предупреждение со строкой-причиной. Начальная точка строки с предупреждением — это конечная точка предыдущего кадра, поэтому довольно часто ошибочны координаты линейного кадра прямо над ней, а не сам кадр дуги.

Частые вопросы

Что будет, если в одном кадре записать и R, и I/J?
В семействе FANUC обычно приоритет имеет R, а I/J/K игнорируются. Поскольку это может зависеть от УЧПУ, правило — использовать в одном кадре только один способ.
Винтовая обработка тоже выполняется через G02/G03?
Да. Если в том же кадре задать ось вне плоскости дуги (Z для G17), эта ось будет двигаться линейно одновременно с дугой, и получится винтовая траектория. Это широко применяется при фрезеровании резьбы и при входе для расширения отверстий.

Следующие шаги

Проверить траекторию в CNC Path Analyzer