Перейти к содержимому
MetalGuide
G-код и CAM

Структура управляющей программы ЧПУ: кадр, слово, основные G- и M-коды

Из чего состоит программа для станка с ЧПУ, как читать кадр и слово, что делают основные G- и M-коды по ГОСТ 20999-83 и ISO 6983-1 и почему коды надо сверять с руководством к своей системе ЧПУ. С разбором короткой программы.

Редакция MetalGuide7 мин чтенияОбновлено

Кадр, слово, адрес

По ГОСТ 20999-83 кадр — последовательность символов, которая заканчивается символом «конец кадра». На экране стойки это одна строка программы. Кадр состоит из слов: слово начинается с адреса — прописной латинской буквы, — за которой идут знак (если нужен) и цифры.

ISO 6983-1 описывает тот же формат и прямо называет его «программированием в G-кодах» или «ISO-программированием». Стандарт добавляет несколько служебных символов: % — начало программы, текст в круглых скобках — комментарий, который стойка не исполняет, / в начале кадра — пропуск кадра, если оператор включил эту функцию.

Структура кадра управляющей программыВверху — кадр N50 G01 X60. Y-25. F300 S1200 M08, разбитый на слова. Каждое слово начинается с буквы-адреса, за ней идёт число. N50 — номер кадра, G01 — вид движения (линейная интерполяция), X60. и Y-25. — координаты конечной точки, F300 — подача в миллиметрах в минуту, S1200 — частота вращения шпинделя, M08 — включение СОЖ. Кадр заканчивается символом конца кадра. Внизу слева — разбор слова Y-25.: адрес Y, знак минус, число 25 с десятичной точкой. Внизу справа — порядок слов в кадре по ГОСТ 20999-83 и ISO 6983-1: N, G, размерные слова X Y Z, параметры интерполяции I J K, F, S, T, M.Кадр — строка программы, слово — адрес и числоN50номеркадраG01виддвиженияX60.Y-25.F300подача,мм/минS1200обороты,об/минM08включитьСОЖLFконецкадракоординатыконечной точкиСлово Y-25.Y−25.адресзнакчислоСтавьте точку: 25. — это 25 мм,без неё стойка может прочесть 0,025 ммПорядок слов в кадреNGXYZIJKFSTMГОСТ 20999-83 и ISO 6983-1G01, F и S — модальные: действуют,пока их не заменит другая команда
Кадр N50 G01 X60. Y-25. F300 S1200 M08: адреса, значения и порядок слов в кадре. Схема не в масштабе.

Основные адреса и их смысл:

Адрес

Что задаёт

N

Номер кадра

G

Подготовительная функция — вид движения, режим

X, Y, Z

Перемещения по основным осям — координаты конечной точки

A, B, C

Поворот вокруг осей X, Y, Z

I, J, K

Параметры интерполяции: смещение центра дуги от её начальной точки

F

Подача

S

Частота вращения шпинделя (в режиме G96 — скорость резания)

T

Номер инструмента

M

Вспомогательная функция

H, D

Номера корректоров длины и радиуса — так в Fanuc-подобных системах

Порядок слов в кадре по обоим стандартам одинаковый: G, затем размерные слова, параметры интерполяции, F, S, T и в конце M.

Модальные и разовые команды

ГОСТ 20999-83 делит функции на действующие «до отмены или замены» и действующие «только в том кадре, в котором записаны». Первые называют модальными. G01, G90, G54, подача F и обороты S модальные: их не повторяют в каждом кадре. Пауза G04 и выход в систему координат станка G53 — разовые.

Модальные G-коды разбиты на группы: вид движения, плоскость, единицы, система отсчёта. Новый код группы отменяет прежний. В одном кадре можно записать несколько G-кодов из разных групп. По руководству Fanuc, если в кадре два кода одной группы, действует последний.

Основные G-коды

Код

Назначение

Что важно знать

G00

Ускоренное позиционирование

Не для резания. На многих станках оси идут независимо, и траектория не прямая

G01

Линейная интерполяция на подаче F

Все оси приходят в конечную точку одновременно

G02/G03

Круговая интерполяция по / против часовой стрелки

В выбранной плоскости; центр — через I, J, K или радиус R (Fanuc-подобные)

G17–G19

Плоскость XY, ZX, YZ

От плоскости зависят дуги, коррекция на радиус и циклы

G20/G21

Ввод в дюймах / в миллиметрах (Fanuc)

В ISO 6983-1 для этого G70/G71. По руководству Fanuc переключение не пересчитывает смещения нуля и параметры

G40–G42

Отмена коррекции на радиус, коррекция слева, справа

Подробнее — в статье о коррекциях

G43/G49

Коррекция на длину инструмента, её отмена (Fanuc-подобные)

В ГОСТ 20999-83 G43/G44 — коррекция на положение инструмента, положительная и отрицательная

G54–G59

Выбор системы координат детали

В ГОСТ 20999-83 — «заданное смещение 1–6»

G90/G91

Размеры абсолютные / в приращениях

Программа, написанная в G90 и запущенная в G91, поведёт станок непредсказуемо

G94/G95

Подача в минуту / на оборот

Обычно мм/мин и мм/об

G96/G97

Постоянная скорость резания / постоянные обороты

Токарные станки; при G96 обязательно ограничение максимальных оборотов

Про ускоренный ход: в документации Haas прямо сказано, что при G00 каждая ось движется со своей максимальной скоростью, короткая ось приходит раньше, и путь получается ломаным. В мерах безопасности Fanuc то же называется позиционированием по нелинейной траектории. Поэтому подход на G00 планируют так, чтобы на любом пути между точками не было прихватов и заготовки.

Токарные G96 и G97

При G96 слово S задаёт не обороты, а скорость резания — в метрическом режиме в метрах в минуту. Стойка сама меняет обороты по текущему диаметру: чем ближе резец к оси, тем выше обороты. Руководство Fanuc предупреждает, что у оси детали обороты могут стать чрезмерными, поэтому перед G96 задают предел — на Fanuc и Haas это G50 S…. G97 возвращает режим постоянных оборотов. Его включают перед сверлением по оси и нарезанием резьбы метчиком, где нужны фиксированные обороты.

Основные M-коды

Код

Назначение по ГОСТ 20999-83

Как работает на практике

M00

Программируемый останов

Стоп до нажатия «Пуск»; на Haas при этом останавливаются шпиндель и СОЖ

M01

Останов с подтверждением

Срабатывает, только если оператор включил «необязательный останов»

M02

Конец программы

—

M03/M04

Вращение шпинделя по / против часовой стрелки

Нужна заданная частота S

M05

Останов шпинделя

—

M06

Смена инструмента

Последовательность смены задаёт изготовитель станка

M08/M09

Включение СОЖ / выключение

ГОСТ различает M07 и M08 — охлаждение № 2 и № 1

M30

Конец информации

Конец программы с возвратом к её началу

M-коды за пределами этого базового набора — зажим, стружкотранспортёр, продувка, поворотный стол — назначает изготовитель станка. Смотрите их в документации станка, а не системы ЧПУ.

Пример: контур с безопасными подходами

Фрезеровка наружного контура прямоугольника 60 × 40 мм на глубину 3 мм концевой фрезой Ø10 мм. Нуль детали — левый нижний угол верхней грани. Синтаксис Fanuc-подобный, режимы условные — для своей фрезы их считают по каталогу или в калькуляторе режимов резания.

G-код
%
O1001 (KONTUR 60X40 H3)
N10 G21 G17 G40 G49 G80 G90
N20 T1 M06 (FREZA D10)
N30 G54 G00 X-15. Y-15. S3000 M03
N40 G43 H01 Z50. M08
N50 Z5.
N60 G01 Z-3. F150
N70 G41 D01 X0. F400
N80 Y40.
N90 X60.
N100 Y0.
N110 X-10.
N120 G40 X-15. Y-15.
N130 G00 Z50. M09
N140 M05
N150 G91 G28 Z0.
N160 M30
%

Кадр

Что происходит

O1001

Номер и название программы. Комментарии латиницей: не каждая стойка показывает кириллицу

N10

«Безопасная строка»: мм, плоскость XY, коррекции и циклы отменены, абсолютные размеры. Программа не зависит от того, что осталось от прошлой

N20

Смена на инструмент 1

N30

Нуль детали G54, ускоренный подход в точку старта вне детали, шпиндель по часовой стрелке

N40

Коррекция на длину по корректору H01, фреза встаёт на 50 мм над деталью, включается СОЖ

N50

Ускоренно до 5 мм над деталью — ближе на G00 не подходят

N60

Врезание на глубину на рабочей подаче — вне контура детали

N70

Включение коррекции на радиус слева (G41) линейным перемещением. Радиус — в корректоре D01

N80–N110

Обход контура по часовой стрелке: фреза слева от контура, при M03 это попутное фрезерование

N120

Отвод от детали с отменой коррекции G40 — уже вне материала

N130–N140

Подъём на безопасную высоту, выключение СОЖ и шпинделя

N150

Возврат по Z в референтную точку. G91 здесь означает «из текущего положения», иначе Z0 прочитается как верх детали

N160

Конец программы и возврат к началу

Как устроены G54, корректоры H и D и почему подвод с G41 делают только линейным ходом вне детали — в статье «Системы координат и коррекции инструмента».

Для сравнения — начало такой же программы в диалоге Heidenhain Klartext: TOOL CALL 1 Z S3000 вызывает инструмент и одновременно включает коррекцию на длину, L X-15 Y-15 R0 FMAX — ускоренное перемещение без коррекции на радиус. Логика та же, язык другой.

Как проверить программу перед запуском

  • Сверьте коды со своей стойкой: циклы, M-коды и формат чисел — по руководству программиста и документации станка.
  • Первым кадром — безопасная строка. Не рассчитывайте, что режимы остались «правильными» от предыдущей программы.
  • Проверьте все G00: при ломаном пути ускоренного хода ничто не должно стоять на дороге.
  • Прогоните программу в графике стойки или симуляторе. Первую деталь ведите покадрово, с пониженной скоростью ускоренного хода и включённым M01.

Программы для сложных деталей пишут не вручную, а в CAM-системе. Как траектории превращаются в G-код конкретного станка — в статье «CAM и постпроцессор».

Вопросы и ответы

Чем G-код отличается от M-кода?

G-коды — подготовительные функции: задают вид движения (ускоренное, линейное, круговое) и режимы — плоскость, единицы, абсолютные или относительные размеры. M-коды — вспомогательные функции для механизмов станка — шпинделя, СОЖ, смены инструмента, останова программы.

Пойдёт ли программа с одного станка на другом?

Без проверки — нет. ISO 6983-1 прямо оговаривает, что соответствие стандарту не гарантирует взаимозаменяемость программ. Коды циклов, M-коды, формат чисел и даже смысл отдельных G-кодов различаются между системами ЧПУ и зависят от настроек станка.

Нужно ли нумеровать каждый кадр?

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

Почему в конце координат ставят точку — X60.?

На многих Fanuc-подобных стойках число без точки читается в единицах дискретности — X60 может означать 0,06 мм. С точкой X60. — однозначно 60 мм. Как стойка читает числа без точки, задаётся её настройкой.

Термины

Источники

  1. ГОСТ 20999-83 Устройства числового программного управления для металлообрабатывающего оборудования. Кодирование информации управляющих программ
  2. ISO 6983-1:2009 Automation systems and integration — Numerical control of machines — Program format and definitions of address words — Part 1 (ознакомительный фрагмент)
  3. Haas Automation. Mill Programming Workbook — адресные коды, G- и M-коды, примеры программ
  4. FANUC Series 0i-MODEL F. Operator's Manual for Lathe System (B-64604EN-1/01) — таблица G-кодов, системы G-кодов A/B/C, меры безопасности при программировании
  5. HEIDENHAIN. TNC 640 User's Manual, Klartext Programming (NC-Software 34059x-11) — структура программы в диалоге Klartext
  6. Haas Automation. Lathe G-codes — G96 Constant Surface Speed ON, G50 ограничение оборотов

Посчитать

Читать также

  • G-код и CAM7 мин

    Системы координат станка и детали, G54 и коррекции инструмента

    Нуль станка и нуль детали, смещения G54–G59, коррекция на длину G43/G49 и на радиус G41/G42/G40 — как это устроено в Fanuc-подобных системах, чем отличаются Sinumerik и Heidenhain и какие ошибки наладки чаще всего ведут к браку и столкновениям.

  • G-код и CAM6 мин

    CAM и постпроцессор: как устроена цепочка от 3D-модели до станка

    Путь от модели до управляющей программы — CAD, CAM, CLDATA, постпроцессор, проверка и станок. Что делает постпроцессор, почему «чужой» пост опасен, как проверяют программу до первой детали, какие CAM-системы есть на рынке и что передать программисту ЧПУ.

  • ЧПУ-фрезеровка7 мин

    Виды фрез и как выбрать фрезу для станка с ЧПУ

    Концевые, торцевые и дисковые фрезы, монолитный твёрдый сплав и сменные пластины, число зубьев, покрытия, попутное и встречное фрезерование — как подобрать инструмент под операцию и материал.