Структура управляющей программы ЧПУ: кадр, слово, основные G- и M-коды
Из чего состоит программа для станка с ЧПУ, как читать кадр и слово, что делают основные G- и M-коды по ГОСТ 20999-83 и ISO 6983-1 и почему коды надо сверять с руководством к своей системе ЧПУ. С разбором короткой программы.
Редакция MetalGuide7 мин чтенияОбновлено
Кадр, слово, адрес
По ГОСТ 20999-83 кадр — последовательность символов, которая заканчивается символом «конец кадра». На экране стойки это одна строка программы. Кадр состоит из слов: слово начинается с адреса — прописной латинской буквы, — за которой идут знак (если нужен) и цифры.
ISO 6983-1 описывает тот же формат и прямо называет его «программированием в G-кодах» или «ISO-программированием». Стандарт добавляет несколько служебных символов: % — начало программы, текст в круглых скобках — комментарий, который стойка не исполняет, / в начале кадра — пропуск кадра, если оператор включил эту функцию.
Основные адреса и их смысл:
Адрес | Что задаёт |
|---|---|
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-коды
Код | Назначение | Что важно знать |
|---|---|---|
| Ускоренное позиционирование | Не для резания. На многих станках оси идут независимо, и траектория не прямая |
| Линейная интерполяция на подаче F | Все оси приходят в конечную точку одновременно |
| Круговая интерполяция по / против часовой стрелки | В выбранной плоскости; центр — через I, J, K или радиус R (Fanuc-подобные) |
| Плоскость XY, ZX, YZ | От плоскости зависят дуги, коррекция на радиус и циклы |
| Ввод в дюймах / в миллиметрах (Fanuc) | В ISO 6983-1 для этого G70/G71. По руководству Fanuc переключение не пересчитывает смещения нуля и параметры |
| Отмена коррекции на радиус, коррекция слева, справа | Подробнее — в статье о коррекциях |
| Коррекция на длину инструмента, её отмена (Fanuc-подобные) | В ГОСТ 20999-83 G43/G44 — коррекция на положение инструмента, положительная и отрицательная |
| Выбор системы координат детали | В ГОСТ 20999-83 — «заданное смещение 1–6» |
| Размеры абсолютные / в приращениях | Программа, написанная в G90 и запущенная в G91, поведёт станок непредсказуемо |
| Подача в минуту / на оборот | Обычно мм/мин и мм/об |
| Постоянная скорость резания / постоянные обороты | Токарные станки; при G96 обязательно ограничение максимальных оборотов |
Про ускоренный ход: в документации Haas прямо сказано, что при G00 каждая ось движется со своей максимальной скоростью, короткая ось приходит раньше, и путь получается ломаным. В мерах безопасности Fanuc то же называется позиционированием по нелинейной траектории. Поэтому подход на G00 планируют так, чтобы на любом пути между точками не было прихватов и заготовки.
Токарные G96 и G97
При G96 слово S задаёт не обороты, а скорость резания — в метрическом режиме в метрах в минуту. Стойка сама меняет обороты по текущему диаметру: чем ближе резец к оси, тем выше обороты. Руководство Fanuc предупреждает, что у оси детали обороты могут стать чрезмерными, поэтому перед G96 задают предел — на Fanuc и Haas это G50 S…. G97 возвращает режим постоянных оборотов. Его включают перед сверлением по оси и нарезанием резьбы метчиком, где нужны фиксированные обороты.
Основные M-коды
Код | Назначение по ГОСТ 20999-83 | Как работает на практике |
|---|---|---|
| Программируемый останов | Стоп до нажатия «Пуск»; на Haas при этом останавливаются шпиндель и СОЖ |
| Останов с подтверждением | Срабатывает, только если оператор включил «необязательный останов» |
| Конец программы | — |
| Вращение шпинделя по / против часовой стрелки | Нужна заданная частота S |
| Останов шпинделя | — |
| Смена инструмента | Последовательность смены задаёт изготовитель станка |
| Включение СОЖ / выключение | ГОСТ различает M07 и M08 — охлаждение № 2 и № 1 |
| Конец информации | Конец программы с возвратом к её началу |
M-коды за пределами этого базового набора — зажим, стружкотранспортёр, продувка, поворотный стол — назначает изготовитель станка. Смотрите их в документации станка, а не системы ЧПУ.
Пример: контур с безопасными подходами
Фрезеровка наружного контура прямоугольника 60 × 40 мм на глубину 3 мм концевой фрезой Ø10 мм. Нуль детали — левый нижний угол верхней грани. Синтаксис Fanuc-подобный, режимы условные — для своей фрезы их считают по каталогу или в калькуляторе режимов резания.
%
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 мм. Как стойка читает числа без точки, задаётся её настройкой.
Термины
Источники
- ГОСТ 20999-83 Устройства числового программного управления для металлообрабатывающего оборудования. Кодирование информации управляющих программ
- ISO 6983-1:2009 Automation systems and integration — Numerical control of machines — Program format and definitions of address words — Part 1 (ознакомительный фрагмент)
- Haas Automation. Mill Programming Workbook — адресные коды, G- и M-коды, примеры программ
- FANUC Series 0i-MODEL F. Operator's Manual for Lathe System (B-64604EN-1/01) — таблица G-кодов, системы G-кодов A/B/C, меры безопасности при программировании
- HEIDENHAIN. TNC 640 User's Manual, Klartext Programming (NC-Software 34059x-11) — структура программы в диалоге Klartext
- 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 мин
Виды фрез и как выбрать фрезу для станка с ЧПУ
Концевые, торцевые и дисковые фрезы, монолитный твёрдый сплав и сменные пластины, число зубьев, покрытия, попутное и встречное фрезерование — как подобрать инструмент под операцию и материал.