154 Обсудить
Поделиться

Синтаксис G-code

Синтаксис G-code

Синтаксис G-code: команды, коды и параметры

G-code — это универсальный язык программирования для станков с числовым программным управлением (ЧПУ). Он используется для описания траектории движения инструмента, скорости обработки, глубины реза и других параметров. В этой статье мы разберём основные команды, технологические коды и параметры, которые помогут вам эффективно работать с G-code.

Таблица основных команд

Основные команды G-code — это базовые инструкции, которые управляют движением инструмента и координатами станка. Эти команды начинаются с буквы **G** и используются для выполнения таких операций, как линейное перемещение, быстрый ход или включение режима круговой интерполяции.

Команда Описание Пример
G00[3] Ускоренное перемещение инструмента (холостой ход). При холостом перемещении НЕ ОБЯЗАТЕЛЬНО производится линейная интерполяция перемещения аналогично команде G01. В некоторых интерпретаторах при выполнении команды перемещения по нескольким осям одновременно, перемещение по осям отрабатывается с максимальной скоростью, поэтому линейное перемещение от исходной точки в конечную точку не обеспечивается, поэтому нельзя производить ходы обработки детали при действии этой модальной команды. G0 X0 Y0 Z100.
G01 Линейная интерполяция, модальная команда. Инструмент (рабочий орган) перемещается по отрезку прямой линии от исходной точки с координатами до исполнения команды в точку с заданными в команде координатами, скорость перемещения задаётся здесь же или ранее модальной командой F. При этом скорость перемещения связана со скоростями перемещения по осям как

 — приращения координат между кадрами;  — скорости по осям.

G01 X0. Y0. Z100. F200.
G02 Круговая интерполяция по часовой стрелке, модальная команда. Инструмент перемещается по дуге окружности по часовой стрелке от исходной точки с координатами до исполнения команды в точку с заданными в команде координатами, скорость перемещения задаётся в этой команде параметром F, радиус дуги задаётся параметром R, либо указанием координат центра дуги параметрами I — (смещение центра по оси X относительно начальной координаты X), J — (смещение центра по оси Y относительно начальной координаты Y), К — (смещение центра по оси Z относительно начальной координаты Z) относительно начальных координат инструмента. Для указания плоскости, в которой производится круговая интерполяция, предварительно должна быть указана плоскость круговой интерполяции (в этом же или в другом предварительном кадре) модальной командой G17 (плоскость X-Y), или G18 (плоскость X-Z), или G19 (плоскость Y-Z). Скорость перемещения задана модальной командой F. G02 G17 X15. Y15. R5. F200.
или
G02 G17 X20. Y15. I-50. J-60.
G03 Круговая интерполяция против часовой стрелки. Параметры и действие аналогичны команде G02. G03 X15. Y15. R5. F200.
G04 Задержка выполнения программы, способ задания величины задержки зависит от реализации системы управления, P обычно задает паузу в миллисекундах, X — в секундах. В некоторых интерпретаторах P задает паузу в секундах и параметр X в этой команде не используется. Также в некоторых интерпретаторах возможно задание задержки параметром U. G04 P500 или G04 X.5
G10 Переключение абсолютной системы координат. В примере начало координат станет в точке 10, 10, 10 старых координат. G10 X10. Y10. Z10.
G15 Переход в полярную (цилиндрическую) систему координат. В этой системе параметр X задаёт радиус, а Y угол в градусах. Если включена абсолютная система координат (G90), то начало полярных координат будет в точке текущих координат 0; 0, если включена инкрементная система координат, то начало координат будет в точке, достигнутой при отработке предыдущего кадра. G15 X15. Y22.5
G16 Отмена полярной системы координат G16 X15. Y22.5
G17 Выбор рабочей плоскости X-Y G17
G18 Выбор рабочей плоскости Z-X G18
G19 Выбор рабочей плоскости Y-Z G19
G20 Режим работы в дюймовой системе G90 G20
G21 Режим работы в метрической системе G90 G21
G22 Активировать установленный предел перемещений (Инструмент не выйдет за их предел) G22 G01 X15. Y25.
G28 Вернуться на референтную точку G28 G91 Z0 Y0
G30 Поднятие по оси Z на точку смены инструмента G30 G91 Z0
G40 Отмена компенсации радиуса инструмента G1 G40 X0. Y0. F200.
G41 Компенсировать радиус инструмента слева от траектории G41 X15. Y15. D1 F100.
G42 Компенсировать радиус инструмента справа от траектории G42 X15. Y15. D1 F100.
G43 Компенсировать длину инструмента в положительную сторону. В основном применяется при смене инструмента. G43 X15. Y15. Z100. H1 S1000 M3
G44 Компенсировать длину инструмента в отрицательную сторону. Действие аналогично G43. G44 X15. Y15. Z4. H1 S1000 M3
G49 Отмена компенсации длины инструмента G49 Z100.
G50 Сброс всех масштабирующих коэффициентов в 1,0 G50
G51 Назначение масштабов. В примере — уменьшение масштаба по оси X в 10 раз. После этой модальной команды все указанные в командах перемещения и координаты по оси X будут умножаться на масштабирующий коэффициент 0,1 и результат интерпретироваться как требуемое перемещение. Если задать масштабирующий коэффициент по некоторой оси (или по любым осям) равным −1, то последующее движение будет зеркальным по этой оси (или осям, где масштабирующий коэффициент −1). G51 X.1
или G51 X-1
G53 Переход в систему координат станка. G53 G0 X0. Y0. Z0.
G54-G59 Переключиться на заданную оператором систему координат G54 G0 X0. Y0. Z100.
G61-G64 Переключение режимов Точный Стоп/Постоянная скорость
G68 Поворот координат на нужный угол G68 X0 Y0 R45.
G70 Цикл продольного чистового точения G70 P10 Q15.
G71 Цикл многопроходного продольного чернового точения G71 P10 Q15. D.5 U.2 W.5
G80 Отмена циклов сверления, растачивания, нарезания резьбы метчиком и т. д. G80
G81 Цикл сверления G81 X0 Y0. Z-10. R3. F100.
G82 Цикл сверления с задержкой G82 X0. Y0. Z-10. R3. P100 F100.
G83 Цикл прерывистого сверления (с периодическим полным выводом сверла). Параметр Z указывает полную глубину сверления от поверхности (Z=0), R — высота вывода инструмента над поверхностью для вывода стружки и также конечное положение после завершения сверления, Q — величина заглубления одного из нескольких заглублений при сверлении, F — скорость подачи (необязательна, при отсутствии этого параметра скорость определяется ранее заданной скоростью в команде G1. G83 Z-20 R1 Q2 f20
G84 Цикл нарезания резьбы G95 G84 M29 X0. Y0. Z-10. R3 F1.411
G90 Задание абсолютных координат опорных точек траектории G90 G1 X0.5. Y0.5. F10.
G91 Задание координат инкрементально относительно координат последней введённой опорной точки, перемещение инструмента в этой системе координат задаётся в виде приращений G91 G1 X4. Y5. F100.
G94 F (подача) — в формате мм/мин G94 G80 Z100. F75.
G95 F (подача) — в формате мм/об G95 G84 X0. Y0. Z-10. R3 F1.411
G99 После каждого цикла не отходить на <проходную точку> G99 G91 X10. K4.

Таблица технологических кодов

Технологические коды — это дополнительные команды, которые начинаются с буквы **M**. Они отвечают за включение/выключение шпинделя, подачу охлаждающей жидкости, завершение программы и другие вспомогательные функции. Эти коды дополняют основные команды и делают программу более функциональной.

Вспомогательные (технологические) команды
Код Описание Пример
M00 Приостановить работу станка до нажатия кнопки <старт> на пульте управления, так называемая <безусловная технологическая остановка> G0 X0 Y0 Z100 M0
M01 Приостановить работу станка до нажатия кнопки <старт>, если включён режим подтверждения остановки. Если этот режим отключён, то команда игнорируется. Используется для начальной проверки (отладки) кода. G0 X0 Y0 Z100 M1
M02 Конец программы, без сброса модальных функций. Указатель номера кадра не изменяется. M02
M03 Начать вращение шпинделя по часовой стрелке M3 S2000
M04 Начать вращение шпинделя против часовой стрелки M4 S2000
M05 Остановить вращение шпинделя M5
M06 Сменить инструмент T15 M6
M07 Включить дополнительное охлаждение M3 S2000 M7
M08 Включить основное охлаждение. Иногда использование более одного M-кода в одной строке (как в примере) недопустимо, для этого используются M13 и M14 M3 S2000 M8
M09 Выключить охлаждение G0 X0 Y0 Z100 M5 M9
M13 Включить одновременно охлаждение и вращение шпинделя по часовой стрелке S2000 M13
M14 Включить одновременно охлаждение и вращение шпинделя против часовой стрелки S2000 M14
M17 Возврат из подпрограммы или из макроса (действие аналогично М99) M17
M48 Разрешить переопределять скорость подачи
M49 Запретить переопределение скорости подачи
M25 Замена инструмента вручную M25
M97 Запуск подпрограммы, находящейся в той же программе (где P — номер кадра, в примере переход осуществится к строке с меткой N25), реализована не во всех интерпретаторах, предположительно — только на станках HAAS M97 P25
M98 Запуск подпрограммы, находящейся отдельно от основной программы (где P — номер подпрограммы, в примере переход осуществится к программе O1015) M98 P1015
M99 Конец подпрограммы и переход в вызвавшую программу M99
M30 Конец программы, со сбросом модальных функций и изменением указателя номера кадра на начало программы. M30

Параметры команд

Каждая команда G-code может включать дополнительные параметры, которые уточняют её действие. Эти параметры задаются с помощью букв и чисел, где каждая буква имеет своё значение:

Код Описание Пример
X Перемещение инструмента в заданную точку с заданной координатой по оси X при работе в абсолютной системе координат (см. G90) или задание смещений относительно точки, достигнутой в предыдущем кадре при работе в инкрементной системе координат (см. G91) G0 X100 Y0 Z0
Y Аналогично Х по оси Y G0 X0 Y100 Z0
Z Аналогично Х по оси Z G0 X0 Y0 Z100
P При использовании в команде вызова подпрограммы (М98) — указание номера вызываемой подпрограммы с именем, заданным после буквы О, например Р301 вызовет подпрограмму с меткой О301. При использовании в команде задержки (G04) указывает время задержки в миллисекундах. G04 P500;

М98 Р301

О Метка подпрограммы с указанным номером О301
F Линейная скорость перемещения инструмента.

Для фрезерных станков это дюймы в минуту (IPM) или миллиметры в минуту (мм/мин),

Для токарных станков это дюймы за оборот (IPR) или миллиметры за оборот (mm/об). Выбор единиц измерения, дюймы или миллиметры выполняется командами G20 и G21.

G1 G91 X10 F100
S Частота вращения шпинделя в оборотах в минуту. S3000 M3
Т Указание номера инструмента в команде смены инструмента. Обычно указывается перед командой М6. Т1 М6
R Расстояние отвода инструмента в повторяющихся циклах обработки, например, прерывистого сверления глубоких отверстий (G81-G89) или радиус дуги при круговых интерполяциях перемещения инструмента (G02, G03). G81 Z-20 R2 или

G2 G91 X12.5 R12.5

D Параметр коррекции радиуса выбранного инструмента G1 G41 D1 X10. F150.
L Число вызовов подпрограммы, число вызовов макроса, или количество циклов в повторяющихся операциях X_Y_R_ — параметры, передаваемые в макрос M98 L82 P10 или G65 L82 P10 X_Y_R_
I Указание смещения по оси X координаты центра дуги при круговой интерполяции перемещения инструмента (см G02, G03). Координаты центра дуги по осям указываются в виде смещения относительно начальной точки (достигнутой в предыдущем кадре). Плоскость интерполяции (плоскость, которая параллельна заданной координатной плоскости указывается командами G17, G18, G19. G03 X10 Y10 I10 J0 F10
J Аналогично параметру I для оси Y. G03 X10 Y10 I0 J10 F10
K Аналогично параметру I для оси Z. G03 X10 Y10 I0 K0 F10

Комментарии ()

    Ваш email не будет опубликован. Обязательные поля отмечены символом *

    Присоединяйтесь для обсуждения на наш ФОРУМ

    Свяжитесь с нами

    Промышленный Форум

    Зарегистрироваться