Круговая интерполяция 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.
| Плоскость | Команда | Направление взгляда | Типичное применение |
|---|---|---|---|
| XY | G17 | От +Z к -Z | По умолчанию на обрабатывающем центре |
| ZX | G18 | От +Y к -Y | По умолчанию на токарном, боковое фрезерование |
| YZ | G19 | От +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На рисунке выше показан результат анализа этой программы в 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 аппроксимирует дуги короткими прямыми отрезками, а для кадров дуг, у которых не сходятся направление или радиус, не придумывает траекторию, а сообщает предупреждение со строкой-причиной. Начальная точка строки с предупреждением — это конечная точка предыдущего кадра, поэтому довольно часто ошибочны координаты линейного кадра прямо над ней, а не сам кадр дуги.