Что такое G-код и зачем он нужен?
G-код (G-code) – это язык, на котором вы отдаёте команды вашему ЧПУ-станку. Именно благодаря ему фреза понимает, куда двигаться, с какой скоростью и на какую глубину погружаться, чтобы из заготовки получилось нужное вам изделие. Проще всего представить G-код как маршрут для автомобильного навигатора. Вы загружаете в станок не картинку, а список последовательных команд: «поверни налево», «10 сантиметров прямо», «опусти фрезу на 3 миллиметра», «включи шпиндель» и т.д. Программа на G-коде – это пошаговая инструкция для станка, где описано каждое его действие. Обычно G-код создаётся автоматически с помощью специальных программ, например, ArtCAM или Vectric Aspire. Но для грамотной работы полезно понимать, что внутри этого кода написано, чтобы, например, подправить скорость или глубину, не пересоздавая весь проект. В этой статье мы разберём структуру G-кода и самые важные команды, которые нужно знать для управления фрезерным станком.
Структура G-кода: список координат и дополнительные команды
По сути, G-код – это большая текстовая последовательность простых команд, каждая из которых описывает один шаг работы станка. В любой программе можно условно выделить три типа команд:
① Подготовительные (G-команды) – объясняют станку, как двигаться: быстро в новую точку, по прямой с рабочей скоростью, по дуге и т.д.
② Вспомогательные (M-команды) – управляют опциями станка: включить или выключить шпиндель, сменить инструмент, закончить программу.
③ Координаты – адреса осей X, Y, Z, которые указывают станку, куда именно перемещаться.
Всё вместе это и есть управляющая программа (УП), которая загружается в станок и выполняется строка за строкой.
Самые главные G-команды для старта
Вот несколько базовых G-команд, которые вы будете встречать чаще всего:
✅ G00 – Быстрое перемещение, ускоренный холостой ход. По этой команде станок максимально быстро подводит инструмент к месту начала обработки или отводит его в сторону, когда резание не идёт.
✅ G01 – Линейная интерполяция, основная команда для прямой резки. Станок движется по прямой линии с заданной скоростью (подачей F), снимая материал.
✅ G02 и G03 – Круговая интерполяция используются для создания дуг и окружностей. G02 режет по часовой стрелке, G03 – против.
✅ G17, G18, G19 – Выбор рабочей плоскости. Эти команды задают плоскость, в которой будет работать станок. Для большинства фрезерных задач на плоскости стола всегда выбирается команда G17 – это плоскость XY.
Дополнительные полезные G-команды
✅ G21 / G20 (Единицы измерения). Если поставить G21, станок будет думать в миллиметрах – это наш стандарт. G20 переключает его на дюймы.
✅ G90 / G91 (Координаты). Команда G90 означает абсолютные координаты, то есть положение инструмента считается от нулевой точки заготовки. G91 – относительные координаты, где шаг считается от предыдущей позиции.
✅ G28 – Возврат в нулевую точку. Пример: G28 X0 Y0 – отправить оси X и Y в стартовую позицию. Удобно в конце программы.
✅ G04 – Пауза. Пример: G04 P2000 – остановка на 2 секунды (P – в миллисекундах). Иногда необходимо, чтобы после сверления фреза охладилась.
✅ G54, G55, …, G59 – выбор рабочей системы координат. Позволяют сохранить несколько разных нулевых точек для разных заготовок. Зажали деталь – используете G54, переставили – G55. Не нужно каждый раз перенастраивать ноль.
✅ G40, G41, G42 – компенсация радиуса фрезы. Это нужно, когда вы хотите получить деталь точного размера, а не на глаз. Станок сам учтёт толщину фрезы.
- G41 – смещение влево от контура.
- G42 – смещение вправо.
- G40 – отмена компенсации.
✅ F (Скорость подачи). Это не команда, а параметр (адрес), который указывает, с какой скоростью (обычно в мм/мин) должен двигаться инструмент во время резания по G01.
Вспомогательные команды M
Пока одни команды управляют движением, другие управляют «железом»:
✅ M00 – Безусловная остановка. Станок полностью останавливается, пока вы не нажмёте «пуск». Удобно, чтобы проверить деталь или удалить стружку.
✅ M01 – Условная остановка. Срабатывает только если на панели станка включена опция «Optional Stop». Позволяет делать остановки в нужных местах без правки кода.
✅ M03 – Включение шпинделя по часовой стрелке. Эта команда запускает вращение фрезы. Рядом с ней почти всегда указываются обороты через «S» (S8000 – 8000 об/мин).
✅ M05 – Выключение шпинделя. Полная противоположность прошлой команде – останавливает шпиндель.
✅ M06 – Смена инструмента. Пример: M06 T3 – взять инструмент №3. Полезно, если у вашего станка есть несколько фрез.
✅ M30 – Конец программы. Завершает выполнение всех команд и сбрасывает программу в начало.
💡 Совет: заведите себе «шпаргалку» – обычный блокнот или файл на рабочем столе, куда выпишете самые частые команды. Первое время вы будете в них путаться – это нормально. А потом рука сама начнёт писать правильные коды. Кстати, у нас в сообществе 4PUMAS есть возможность задать интересующие вас вопросы в сообщениях, на которые я обязательно отвечу, так что спрашивайте, не стесняйтесь!
Максимально простое объяснение для новичка
Если видите G0 — станок быстро едет.
Если видите G1 — станок режет или двигается рабочим ходом.
Если видите X, Y, Z — это координаты, куда едет инструмент.
Если видите F — это скорость подачи.
Если видите S — это обороты шпинделя.
Если видите M3 — шпиндель включается.
Если видите M5 — шпиндель выключается.
Если видите M30 — программа закончилась.
Если видите G21 — программа в миллиметрах.
Если видите G90 — координаты считаются от нуля детали.
Если видите G91 — координаты считаются от текущего положения.
Если видите отрицательное Z, например Z-3, значит инструмент уходит ниже нуля Z, то есть обычно входит в материал.
Как выглядит реальная программа (пример с расшифровкой)
💡 Совет: вы всегда можете оставлять комментарии в G-коде. Всё, что написано после точки с запятой (;), станок игнорирует. Это очень удобно, чтобы самому не забыть, что делает тот или иной блок программы.
;Начало программы
G17 G54 G90; Задали плоскость XY, выбрали нулевую точку (G54), включили абсолютные координаты
T1 M6; Вызвали фрезу номер 1
M3 S8000; Включили шпиндель на 8000 об/мин
G0 X-19 Y-19; Быстро переместились в начальную точку (над заготовкой)
G0 Z3; Опустили фрезу на высоту 3 мм над поверхностью
G1 Z-2 F300; Начали фрезеровать – погрузились на глубину 2 мм со скоростью 300 мм/мин
G1 X3 Y3 F600; Прорезали прямую линию в точку (3,3) со скоростью 600 мм/мин
G2 X8 Y3 R8; Прорезали дугу радиусом 8 мм в точку (8,3) по часовой стрелке
M5; Выключили шпиндель
M30; Конец программы
Этот простой пример показывает, как строится общение со станком: сначала настройка (G17, G54, G90), затем подготовка к работе (выбор и включение инструмента), и наконец – сама обработка с помощью G0, G1 и G2.
💡 Совет: никогда не запускайте незнакомый G-код без визуализации. Даже если программа написана вроде бы правильно, всегда есть риск, что фреза уедет не туда или попытается воткнуться в стол. Перед запуском прогоните файл в симуляторе. Это займёт пару минут, зато спасёт от поломки инструмента и брака. Кстати, в сообществе 4PUMAS есть много полезных видео, как использовать G-код.
Частые вопросы новичков
❓ Можно ли писать G-код вручную?
Можно, но это имеет смысл только для простых задач, например, чтобы просверлить несколько отверстий. Для сложных деталей это займёт очень много времени. Обычно такую работу поручают специальным программам.
❓ Как проверить программу перед запуском?
Обязательно используйте визуализацию (симуляцию) перед тем, как запустить станок. Это может быть онлайн-сервис NCViewer или программа CAMotics. Симуляция покажет траекторию движения инструмента и поможет избежать столкновений, поломки фрезы и брака детали.
❓ Что значат строки с точкой с запятой (;) в коде?
Это комментарии. Всё, что написано после точки с запятой в строке, станок игнорирует. Комментарии нужны, чтобы программист или вы сами через месяц могли быстро понять, что делает тот или иной блок программы.
Практические рекомендации: как не сломать станок
📌 Всегда визуализируйте G-код перед запуском. Даже самую простую программу прогнать в симуляторе – 2 минуты, а спасёт от неожиданных проблем. А также тестируйте циклы сверления на симуляторе или на куске ненужной фанеры. Ошибка в глубине (Z) или уровне R может стоить дорогой фрезы.
📌 Проверяйте единицы измерения – путаница между G20 (дюймы) и G21 (миллиметры) превратит вашу деталь в крошку.
📌 Комментируйте сложные участки. Через месяц вы сами скажете себе спасибо.
📌 Изучите документацию вашего станка – некоторые G- и M-команды у разных производителей могут отличаться (особенно китайские контроллеры). Всегда делайте тестовый прогон.
💡 Совет: в этом материале мы разобрали базу G-кода, но на практике часто возникают нюансы: какие обороты и подачу ставить под разные породы дерева, как работать с коррекцией на радиус фрезы (команды G40, G41, G42), какие M-команды отвечают за охлаждение, и как писать циклы для сверления нескольких одинаковых отверстий. Всё это мы подробно разбираем в нашем сообществе 4PUMAS Здесь вы найдете реальные примеры программ с пояснениями каждой строчки. Если захотите по-настоящему разобраться в управлении ЧПУ и перестать бояться кодов – заглядывайте.