Стандартные постоянные циклы (Canned Cycles)

Зачем

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

Предложить правку

Представь: нужно просверлить 20 одинаковых отверстий. Без цикла это 20×5 строк = 100 строк кода. С циклом — одна строка G81 плюс список координат. Именно для этого в G-код ввели постоянные циклы (Canned Cycles).

Ментальная модель

Цикл — это готовый алгоритм для типовой операции. Вместо того чтобы писать каждое движение (подойти, врезаться, выйти, перейти к следующей точке), ты говоришь станку: «сверли здесь вот так» — и он сам знает последовательность.

Каждый цикл содержит встроенный сценарий движений. Ты задаёшь только параметры (глубина, подача, отступ), а станок воспроизводит весь сценарий в каждой заданной точке.


Сверлильные циклы (фрезерный станок, Fanuc)

G81 — Простое сверление

Движения: быстрый ход вниз до R → подача до Z → быстрый ход вверх до исходного уровня.

Синтаксис:

G81 X__ Y__ Z__ R__ F__
Параметр Значение
X, Y Положение отверстия в плане
Z Глубина сверления (от нуля детали, обычно отрицательное)
R Плоскость безопасного подхода (немного выше поверхности, например R2.0)
F Подача сверления, мм/мин

Пример — три отверстия:

G99 G81 X20.0 Y15.0 Z-20.0 R2.0 F120    (1-е отверстие, возврат к R)
X50.0 Y15.0                              (2-е отверстие - X,Y меняются, остальное то же)
X80.0 Y15.0                              (3-е отверстие)
G80                                      (отмена цикла)
  • G99 — возврат к плоскости R после каждого отверстия (по умолчанию)
  • G98 — возврат к исходной точке (Initial Point) — используй над зажимами и выступами
  • G80обязательно отмени цикл после последнего отверстия

G83 — Глубокое сверление с периодическим выходом (Peck Drilling)

Для глубоких отверстий (глубина > 3–5 диаметров) стружка нужно выводить — иначе сверло сломается.

G83 X30.0 Y30.0 Z-50.0 R2.0 Q8.0 F80
  • Q8.0 — шаг врезания (глубина каждого прохода до выхода на R). Всегда положительное значение.

G84 — Нарезание резьбы метчиком

G84 X30.0 Y30.0 Z-20.0 R2.0 F175

При G84 подача F должна строго соответствовать шагу резьбы × частота вращения:
F = S × шаг_резьбы

Например: M10×1.5, S=117 → F = 117 × 1.5 = 175,5 ≈ 175 мм/мин.

Важно

Для нарезания резьбы метчиком стойка должна быть в режиме жёсткого нарезания (Rigid Tapping). Уточняй в документации — на некоторых стойках это включается параметром или отдельной командой.

G85 — Расточка (выход с подачей)

Отличается от G81 тем, что выход из отверстия тоже происходит с рабочей подачей — чтобы не оставить риску.


Токарные черновые циклы (Fanuc)

На токарных ЧПУ Fanuc основные циклы для снятия большого припуска — G71 и G70.

G71 — Черновое точение наружного (или внутреннего) контура

G71 автоматически разбивает съём большого припуска на параллельные проходы. Ты задаёшь: сколько снимать за проход, сколько оставить на чистовую, и — главное — описываешь контур детали. Станок сам рассчитывает все черновые проходы.

Синтаксис (Fanuc 0i):

G71 U__ R__
G71 P__ Q__ U__ W__ F__
Параметр Значение
U (первая строка) Глубина резания за один проход, мм (ap)
R (первая строка) Отступ (выход) инструмента между проходами, мм
P Номер первого блока контура
Q Номер последнего блока контура
U (вторая строка) Припуск на чистовую обработку по X (диаметр), мм
W Припуск на чистовую по Z, мм
F Подача черновых проходов

G70 — Чистовой проход после G71

G70 P__ Q__

P и Q — те же номера блоков, что в G71. G70 проходит контур один раз с параметрами F и S, заданными в самих блоках контура.


Разобранный пример

Полная программа G71 для ступенчатого вала

Деталь: вал из стали 45. Заготовка — пруток Ø50 мм.
Контур: Ø20×20 мм → Ø30×30 мм → Ø40×40 мм (три ступени, нуль — правый торец).

O0021                          (Цикл G71 - ступенчатый вал)
G21 G18 G40 G97                (мм, плоскость ZX, отмена коррекций)
G28 U0. W0.                    (референтная точка)

T0101                          (контурный резец CNMG 120408, коррекция 1)
G96 S200 M03                   (постоянная скорость резания 200 м/мин)
G00 X52.0 Z2.0                 (подход к заготовке)

G71 U2.0 R0.5                  (глубина 2 мм за проход, отступ 0.5 мм)
G71 P100 Q200 U0.4 W0.1 F0.25  (блоки N100-N200, припуск X=0.4мм, Z=0.1мм)

N100 G42 G01 X0. F0.1          (начало контура: к оси, включить коррекцию радиуса)
G01 Z0.                        (к торцу)
G01 X20.0                      (первая ступень - диаметр 20)
G01 Z-20.0                     (вдоль Z - длина 20 мм)
G01 X30.0                      (переход на диаметр 30)
G01 Z-50.0                     (вдоль Z - итого длина 50 мм от торца)
G01 X40.0                      (переход на диаметр 40)
G01 Z-90.0                     (вдоль Z - итого длина 90 мм от торца)
G01 X52.0                      (отход за пределы контура)
N200 G40                       (конец контура, отмена коррекции радиуса)

G00 X100.0 Z100.0              (отход - смена инструмента)

T0202                          (чистовой резец DNMG 110404, коррекция 2)
G96 S280 M03                   (скорость чистовой - выше)
G00 X52.0 Z2.0                 (подход)

G70 P100 Q200                  (чистовой проход по тому же контуру N100-N200)

G00 X100.0 Z100.0              (отход)
M05                            (шпиндель стоп)
M30                            (конец программы)

Разбор ключевых моментов:

  • G71 U2.0 R0.5 — снимаем 2 мм за проход, между проходами отходим на 0,5 мм.
  • P100 Q200 — контур описан между метками N100 и N200.
  • U0.4 W0.1 — оставляем 0,4 мм по диаметру и 0,1 мм по Z для чистового прохода G70.
  • N100 G42 G01 X0. — контур начинается с оси вращения (торцевание), G42 включает коррекцию радиуса вершины.
  • Блоки контура (N100–N200) описывают конечную форму детали, а не движения чернового инструмента. G71 сам рассчитывает смещения.
  • G70 P100 Q200 — чистовой проход по тому же контуру. Подача и скорость для G70 берутся из строк N100–N200.
Иллюстрация готовится

G76 — Цикл нарезания резьбы (токарный)

G76 P020060 Q50 R0.05
G76 X28.05 Z-30.0 P975 Q300 F1.5

Параметры первой строки G76:

  • P020060 — количество чистовых проходов (02), угол при вершине нитки (00=остроугольная, 60=60°), угол подачи (60)
  • Q50 — минимальная глубина резания, мкм (0,05 мм)
  • R0.05 — припуск на чистовой проход

Параметры второй строки G76:

  • X28.05 — конечный диаметр по дну резьбы
  • Z-30.0 — конечная позиция по Z
  • P975 — высота профиля резьбы, мкм (0,975 мм для М30×1.5)
  • Q300 — глубина первого прохода, мкм (0,3 мм)
  • F1.5 — шаг резьбы, мм

Отмена цикла G80

Всегда заканчивай серию сверлильных циклов командой G80. Если забыть — при следующем G00 или G01 с координатами XY стойка попытается снова выполнить цикл в новой точке.

G80                              (обязательная отмена любого цикла G81-G89)

Проверь себя

  1. Чем G83 отличается от G81 и зачем нужен параметр Q?
  2. В программе G71 что означают блоки P и Q? Можно ли в эти блоки включать движения G00?
  3. Что будет, если после G84 (нарезание резьбы) не написать G80 и следующим кодом поставить G00 с новыми координатами?

Предложить правку

Документы и ресурсы

У этой статьи пока нет внешних источников.

Войдите, чтобы предложить качественный источник

Практическое задание

Напиши программу для следующего задания (Fanuc, токарный станок):

Деталь: ступенчатый вал. Заготовка Ø45 мм. Контур: торцевание → Ø25×20 мм → фаска 2×45° → Ø35×35 мм → отход.

  1. Напиши полный цикл G71 (черновое точение) с параметрами: ap=2,5 мм, припуск на чистовую U=0,4 мм / W=0,1 мм, подача F=0,25 мм/об.
  2. Добавь G70 для чистового прохода.
  3. Укажи номера блоков N_ для начала и конца контура.
  4. Проверь: фаска — это линия с одновременным движением X и Z; запиши её двумя командами G01.

Запиши программу в рабочий журнал. Проверь по чек-листу: есть G71 + G70, контур начинается с X=0, заканчивается отходом за пределы заготовки, G40 в конце контура.

Предложить правку

Поддержи проект!

IndustrialProfi пока разрабатывается на энтузиазме силами одного человека. Помоги создать лучшую открытую энциклопедию для востребованных и полезных профессий. Спасибо за участие!