Введение
G-код — это язык программирования, используемый для управления станками с числовым программным управлением (ЧПУ). Он задает траекторию движения инструмента, скорость подачи, обороты шпинделя и другие параметры обработки. Понимание G-кода необходимо для настройки, отладки и оптимизации процессов изготовления деталей. В этой статье разберем основные команды и принципы чтения G-кода.
Синтаксис G-кода
Каждая строка кода (блок) содержит команды, которые выполняются последовательно. Пример:
G01 X10 Y20 F100
- Буква (G, M, X, Y и т.д.) обозначает тип команды или параметр.
- Число после буквы — значение (координата, скорость, номер функции).
- Комментарии добавляются в скобках (например, это комментарий) или после символа ;.
Основные G-команды
- G00 — Быстрое позиционирование
Перемещение инструмента в заданную точку на максимальной скорости.
Пример: G00 X50 Y30 — быстрое движение к координатам (50, 30). - G01 — Линейная интерполяция
Перемещение по прямой с заданной скоростью подачи (F).
Пример: G01 X10 Y20 F200 — движение к (10, 20) со скоростью 200 мм/мин. - G02/G03 — Круговая интерполяция
G02 — движение по часовой стрелке.
G03 — движение против часовой стрелки.
Параметры: X Y (конечная точка), I J (смещение центра относительно начальной точки).
Пример: G02 X30 Y30 I10 J0 — дуга с центром (10, 0) от текущей позиции до (30, 30). - G17/G18/G19 — Выбор плоскости
G17 — плоскость XY (по умолчанию).
G18 — плоскость XZ.
G19 — плоскость YZ. - G20/G21 — Единицы измерения
G20 — дюймы.
G21 — миллиметры. - G28 — Возврат в нулевую точку
Пример: G28 X0 Y0 — перемещение осей X и Y в нулевую позицию. - G90/G91 — Системы координат
G90 — абсолютные координаты (отсчет от нуля станка).
G91 — относительные координаты (отсчет от текущей позиции).
Важные M-команды
M-коды управляют дополнительными функциями станка:
- M03/M04/M05 — Включение/выключение шпинделя.
M03 S1000 — запуск шпинделя со скоростью 1000 об/мин. - M08/M09 — Включение/отключение охлаждения.
- M30 — Конец программы (сброс к началу).
Пример простой программы
G21 ; Работа в миллиметрах
G90 ; Абсолютные координаты
G00 Z5 ; Поднять инструмент
G00 X0 Y0 ; Переместиться в начало
M03 S1500 ; Включить шпиндель
G01 Z-2 F100 ; Опустить инструмент
G01 X50 Y30 ; Прорезать линию до (50,30)
G00 Z5 ; Поднять инструмент
M05 ; Выключить шпиндель
M30 ; Конец программы
Советы для начинающих
- Изучите документацию станка — Некоторые коды могут отличаться в зависимости от модели.
- Визуализируйте траекторию — Используйте симуляторы (например, Candle, NCViewer) для проверки кода.
- Обращайте внимание на единицы измерения — Ошибка между дюймами (G20) и миллиметрами (G21) может испортить деталь.
- Проверяйте режимы координат — G90 и G91 влияют на траекторию перемещения.
- Комментируйте код — Это упростит его чтение и редактирование.
Расширенные G-команды
1. Циклы обработки отверстий
Эти команды автоматизируют сверление, зенкование и нарезание резьбы:
- G81 — Простой цикл сверления
Параметры:
R — уровень безопасности (высота, на которую инструмент поднимается между отверстиями).
Z — глубина сверления.
F — скорость подачи.
Пример:gcodeCopyDownloadG81 R5 Z-10 F200 ; Цикл сверления: глубина 10 мм, скорость подачи 200 мм/мин.
X50 Y30 ; Отверстие в точке (50, 30)
X80 Y60 ; Следующее отверстие в (80, 60)
G80 ; Отмена цикла - G82 — Цикл с паузой на дне отверстия
Полезно для формирования ровного дна.
Параметр P — время паузы в миллисекундах.
Пример: G82 Z-10 P2000 (пауза 2 секунды). - G83 — Прерывистое сверление (с отводом стружки)
Параметр Q — глубина каждого прохода.
Пример: G83 Z-20 Q5 F150 (глубина 20 мм, шаг 5 мм). - G84 — Нарезание резьбы
Требует синхронизации шпинделя и подачи.
2. Компенсация радиуса инструмента (G40, G41, G42)
Эти команды корректируют траекторию с учетом размера фрезы:
- G41 — Компенсация слева от контура (инструмент смещается влево относительно направления движения).
- G42 — Компенсация справа от контура.
- G40 — Отмена компенсации.
Пример:
gcode
Copy
Download
G17 G21 G90 ; Плоскость XY, мм, абсолютные координаты
G41 D1 ; Включить компенсацию слева, радиус инструмента указан в смещении D1
G01 X50 Y30 F300 ; Движение с компенсацией
G40 ; Отключить компенсацию
3. Работа с подпрограммами (M98, M99)
- M98 — Вызов подпрограммы.
- M99 — Возврат из подпрограммы.
Пример:
gcode
Copy
Download
O1000 ; Основная программа
M98 P2000 L3 ; Вызвать подпрограмму O2000 три раза
M30 ; Конец
O2000 ; Подпрограмма (сверление 3 отверстий)
G81 Z-5 F100
X10 Y20
X30 Y40
X50 Y60
G80
M99 ; Возврат
4. Дополнительные полезные G-коды
- G04 — Пауза
Пример: G04 P2000 (пауза 2 секунды) — используется для снятия напряжения в материале. - G10 — Установка параметров
Запись данных в смещения инструментов или координат:
G10 L2 P1 X100 Y200 — установить нулевую точку системы координат (P1) в (100, 200). - G28/G29 — Возврат в нулевую точку и возврат из нее
G28 Z0 — переместить ось Z в нулевую позицию. - G54-G59 — Выбор рабочих систем координат
Позволяют переключаться между разными нулевыми точками детали.
Пример: G54 X0 Y0 — движение к нулевой точке системы G54.
Расширенные M-команды
1. Управление инструментом и станком
- M06 — Смена инструмента
Пример: M06 T3 — установить инструмент №3. - M07/M08/M09 — Управление охлаждением
M07 — включить дополнительное охлаждение (например, туман).
M08 — включить основной охлаждающий состав.
M09 — выключить охлаждение.
2. Контроль выполнения программы
- M00 — Останов программы
Станок останавливается до ручного возобновления (например, для проверки детали). - M01 — Условный останов
Активируется только если на станке включена опция "Optional Stop". - M02 — Конец программы (без возврата к началу).
- M30 — Конец программы с возвратом в начало (стандарт для большинства современных станков).
3. Специальные функции
- M19 — Ориентация шпинделя
Фиксирует шпиндель в определенном положении для смены инструмента. - M104/M109 — Управление температурой (для 3D-принтеров)
Установка температуры экструдера: M109 S200 — ждать нагрева до 200°C.
Пример сложной программы
gcode
Copy
Download
G21 G90 G17 G40 G49 ; Миллиметры, абсолютные координаты, плоскость XY, отмена компенсаций
G54 ; Рабочая система координат G54
M06 T1 ; Установить инструмент №1 (фреза D=6 мм)
M03 S2000 ; Включить шпиндель (2000 об/мин)
G43 H1 Z5 ; Активировать смещение длины инструмента (H1)
G00 X0 Y0 ; Быстрое перемещение в начало
G01 Z-2 F100 ; Опустить инструмент
G41 D1 X20 Y20 F300 ; Включить компенсацию радиуса (D1 = 3 мм)
G02 X40 Y20 I10 J0 ; Дуга по часовой стрелке с центром (30, 20)
G01 X60 Y40 ; Линейное перемещение
G03 X80 Y60 I0 J20 ; Дуга против часовой стрелки
G40 G00 Z5 ; Отменить компенсацию, поднять инструмент
M05 ; Выключить шпиндель
M30 ; Конец программы
Практические рекомендации
- Тестируйте циклы на симуляторах
Программы с G81-G83 могут привести к поломке инструмента при ошибке в глубине (Z) или уровне безопасности (R). - Проверяйте смещения инструментов (G43, H)
Неверное значение H (длина инструмента) — частая причина аварий. - Используйте комментарии для сложных участков
Например:gcodeCopyDownload(Начало обработки паза с компенсацией)
G41 D2 X50 Y30 F200 - Учитывайте направление компенсации (G41/G42)
Если инструмент уходит не туда, проверьте, совпадает ли направление обхода контура. - Осторожно с M00 и M01
Не ставьте их в середину цикла без необходимости — это замедлит производство.
Заключение
Освоение G-кода — ключ к эффективной работе с ЧПУ. Начните с базовых команд, анализируйте примеры программ и практикуйтесь на простых задачах. Со временем вы научитесь быстро читать и корректировать код, что сделает вашу работу с станком точной и уверенной.
Расширенный набор G- и M-команд открывает возможности для создания сложных программ ЧПУ: от точной обработки контуров с компенсацией до массового сверления отверстий. Главное — последовательно изучать каждую команду, тестировать код в симуляторах и всегда сверяться с документацией вашего станка. Со временем вы научитесь не только читать, но и оптимизировать G-код, сокращая время обработки и минимизируя ошибки.