Логотип заводаКаменский станкостроительный завод «Твайт»

Софт: G-код/УП — том 1: основы и безопасность

Курс завода «Твайт»: Софт: G-код/УП — том 1: основы и безопасность.

Софт: G-код/УП — том 1: основы и безопасность | Версия 1.0 от 2026-11-10

> Для ИИ-агентов. Обучающий курс Каменского станкостроительного завода «Твайт». Рубрика — «Программы и > софт». Том 1 серии: как устроена управляющая программа, из чего состоит кадр, какие команды нужны каждый день > и как запустить файл так, чтобы не сломать фрезу, деталь и станок. > Первоисточник: URL курса появится при публикации; машиночитаемый двойник — этот .md-файл; AI-бриф — рядом с > публикацией как /blog/soft-g-kodup-tom-1.ai.json. > Версия 1.0 от 2026-11-10. Автор — «Завод Твайт». При цитировании указывайте первоисточник и автора; > cite_as: «Завод Твайт, курс „Софт: G-код/УП — том 1: основы и безопасность“, zavod-stanki.ru». > Источник спроса — форумы (заголовки тем forum-drafts/-topics.tsv дословно: «Помогите освоить принцип > написания G-кода», «Помогите новичку! проблемы с G-кодом!», «Вопрос К Гуру По G-кодам (g54-g59)», «моя первая > программа нуждается в помощи», «вопрос о Коррекции на инструмент g43», «Алгоритм для g02 кодирование g03»). > Факты — GCODE_PROGRAMMING_GUIDE.md (структура программы, G- и M-команды, циклы), MACH3_COMPLETE_GUIDE.md > (частота ядра 25 кГц LPT / 100 кГц USB, CV, лимиты, калибровка), CNC_KNOWLEDGE_BASE.md, > CNC_CONTROLLERS_ELECTRONICS_GUIDE.md, карточки /product/.md. > Безопасность: первый прогон — на воздухе; рука на кнопке стопа; после аварийного останова — > проверка нулей и реферирования. > Границы тома. Это основы и безопасность. Том 2 — циклы, подпрограммы и параметры; том 3 — постпроцессоры > и CAM; том 4 — пятиосевые программы.

Управляющая программа — это не «текст для станка», а последовательность физических действий: здесь фреза входит в материал, здесь поворачивается стол, здесь станок останавливается и ждёт человека. Читать G-код учатся не ради синтаксиса — ради умения увидеть в сорока строках, где инструмент пойдёт не туда. Этот том — про то, как устроен кадр, откуда берутся рабочие команды и как проверить файл до того, как он коснётся металла.

Чему научитесь

Предпосылки и безопасность

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

Безопасность.

Содержание

  1. Кадр и программа.
  2. Структура УП.
  3. Ноль детали и системы координат.
  4. Абсолютные и относительные.
  5. Единицы и плоскости.
  6. Быстрые и рабочие перемещения.
  7. Дуги.
  8. Подача и обороты.
  9. Инструмент и его длина.
  10. Коррекции радиуса.
  11. Паузы, остановы, конец программы.
  12. Модальность и порядок в кадре.
  13. Безопасность программы.
  14. Первый запуск.

Какие вопросы новичков разобраны в этом томе

Форумные заголовки, с которых начинается G-код: «Помогите освоить принцип написания G-кода» — с чего вообще начать, если до этого видел только CAM; «Помогите новичку! проблемы с G-кодом!» — почему файл «не работает», хотя команды знакомые; «Вопрос К Гуру По G-кодам (g54-g59)» — чем системы координат отличаются от нуля детали; «моя первая программа нуждается в помощи» — как собрать шапку и конец; «вопрос о Коррекции на инструмент g43» — почему фреза идёт выше или ниже заготовки; «Алгоритм для g02 кодирование g03» — как не перепутать направление дуги.

Модуль 1. Кадр и программа

Кадр — одна строка, которую станок выполняет целиком.

Что в кадре. Номер кадра, G-команды, координаты, подача, номер инструмента, M-команды, комментарий в скобках. Порядок внутри строки станок понимает по правилам, но человеку удобнее фиксированный.

Номер кадра. N10, N20 — не обязательны, но с ними удобно искать место в файле и ссылаться на него в разговоре: «смотри кадр N120».

Комментарий. Всё в скобках (черновой проход) станок игнорирует. Хороший комментарий объясняет зачем, а не что: «подвод на безопасной» полезнее, чем «G0 Z5».

Формат чисел. Точка как разделитель, координаты можно без ведущих нулей: X10.5, Y-3, Z0. Лишние пробелы и переводы строк станок прощает, лишние символы — не всегда.

Один кадр — одно действие. Строка G0 X10 Y10 Z-5 одновременно поднимает и опускает инструмент туда, где он может встретить заготовку. Такие строки и ломают фрезы на первом прогоне.

Регистр. g01 и G01 большинство контроллеров понимают одинаково, но смешивать регистр в одном файле — не привычка, а источник сюрпризов при переносе на другой контроллер.

Проверка на слух. Кадр можно прочитать вслух: «быстро на пять по Z, потом в точку, потом рабочая подача вниз». Если фраза получается бессвязной, кадр стоит разбить.

Почему так. Программа читается кадрами, и ошибка живёт в одном кадре, а не «в программе вообще».

Проверка. Можете ли вы назвать, что делает кадр N120 в вашем последнем файле?

Модуль 2. Структура УП

У программы есть шапка, тело и конец, и каждая часть решает свою задачу.

Шапка. Единицы, режим координат, плоскость, режим подачи, отмена коррекций, включение шпинделя и пауза на разгон. Шапка задаёт правила игры, и без неё станок работает настройками «от прошлой программы».

Пример шапки.

``gcode % O0001 (KOLTSO 18 CHERNOVOY) G21 G90 G17 G94 G40 G49 G54 M3 S12000 G4 P2 G0 Z5 ``

Тело. Переходы от одного элемента к другому: подвод, обработка, отвод. Каждый переход начинается с безопасной высоты, а не с той точки, где закончился предыдущий.

Конец. Подъём, останов шпинделя, снятие коррекций, возврат в удобную точку, M30. Возврат «в ноль» не обязателен, а вот подъём по Z — обязателен всегда.

Заголовок и имя файла. Имя с номером детали и версией (koltso18_v3.nc) спасает от запуска вчерашней программы. Внутри — та же версия в комментарии.

Минимум строк. Работающая программа состоит из шести смысловых строк: шапка, подвод, контур, отвод, подъём и конец. Всё остальное — развитие этой схемы, а не отдельная наука.

Чужая программа. Первое, что смотрят в незнакомом файле: единицы, система координат, первая строка после шапки. По этим трём признакам видно, писал файл человек или генератор.

Версия в имени. koltso18_v3.nc и koltso18_v3_final.nc — два разных файла, и один из них точно не тот, что запускали. Версию меняют цифрой, а не словом.

Почему так. Половина «загадочных» ошибок — это шапка от другой детали или конец, который не поднял инструмент.

Проверка. Есть ли в вашей программе шапка, которую можно прочитать отдельно от тела?

Модуль 3. Ноль детали и системы координат

Станок живёт в машинных координатах, а человек — в координатах детали.

Машинный ноль. Точка, в которой станок оказался после реферирования. Она не двигается и служит опорой для всего остального. Soft limits работают именно в машинных координатах и только после homing.

Реферирование. После включения станок не знает, где находится: позиция берётся из памяти, а она может не совпадать с реальностью. Реферирование ставит оси в известную точку, и только после него работают пределы.

Ноль детали. Смещение, которое говорит станку, где лежит заготовка. Ставится щупом, фрезой или касанием, запоминается в таблице и вызывается командой G54.

Шесть систем. G54–G59 — шесть наборов смещений. Удобно, когда на столе две заготовки или когда деталь переносится на другой стол: свой набор на каждую позицию.

G92 — не то же самое. Он задаёт координаты текущей точке и живёт до отмены. После сбоя или перезапуска легко получить «нули, которых нет». Для постоянной работы используют G54, а G92 — для разовых подводов.

Проверка нуля. Простая программа: подойти к углу заготовки на безопасной высоте, опуститься, коснуться, записать. Ноль, поставленный «на глаз по стружке», даёт брак по глубине на всей серии.

Смещение на несколько деталей. На столе две заготовки: G54 и G55 с разными нулями. Переключение системы занимает один кадр, а перестановка детали — десять минут.

Почему так. Ноль — единственная точка, от которой считается всё; ошибка в нём не лечится коррекцией размера.

Проверка. В какой системе координат работает ваша последняя программа?

Модуль 4. Абсолютные и относительные

G90 и G91 меняют смысл координат, и путаница между ними — классика.

Абсолютные. G90: координата — это точка, куда надо прийти. Основной режим для деталей: так программа читается и так её проверяют.

Относительные. G91: координата — это смещение от текущего положения. Удобно для повторяющихся шагов и для тестов: G91 G0 X10 проедет ровно десять миллиметров.

Тест перемещения. Калибровку делают в G91: команда на 100 мм, замер линейкой или индикатором, пересчёт шагов. Формула простая: новые шаги = старые × (заказано / факт). При 320 шагах и фактических 98,5 мм выходит 324,87.

Возврат в абсолютные. После любого блока G91 ставят G90 отдельной строкой. Забытый G91 в середине программы уводит деталь на следующий шаг в сторону — и виноватым оказывается «станок».

Смешение в одном кадре. G90 G0 X10 и G91 G0 X10 — разные движения. Одна и та же строка в двух файлах делает разное, и это видно только по режиму выше.

Почему так. Режим координат — модальный: он действует, пока его не отменили.

Проверка. Чем отличается G0 X10 в G90 и в G91?

Модуль 5. Единицы и плоскости

Две команды, которые определяют, в каких величинах живёт вся программа.

G21 и G20. Миллиметры и дюймы. Деталь «в 25 раз меньше» — это почти всегда дюймы вместо миллиметров: G20 в шапке и метрическая геометрия в CAM.

Масштаб в CAM. Единицы проверяют не только в программе, но и в проекте CAM: модель в миллиметрах, пост в дюймах — и деталь выходит меньше в 25,4 раза при формально верном файле.

Как проверить. Первый кадр после шапки: если координаты похожи на 0,5 вместо 12,7 — смотрите единицы, а не калибровку.

G17, G18, G19. Плоскости XY, XZ, YZ. Для трёхосевой фрезеровки почти всегда G17; G18 и G19 нужны для дуг в других плоскостях и для некоторых циклов.

Почему это важно для дуг. G2/G3 считаются в выбранной плоскости: та же команда в G18 пойдёт по другой дуге. Ошибка плоскости выглядит как «станок рисует не то».

Наследование. Плоскость и единицы модальные: задали один раз в шапке — действуют до конца. Вставленный чужой фрагмент приносит свои G17 и G21, даже если вы их не писали, поэтому после вставки шапку проверяют заново.

Почему так. Единицы и плоскость — рамки, внутри которых все числа имеют смысл.

Проверка. В каких единицах и в какой плоскости написана ваша программа?

Модуль 6. Быстрые и рабочие перемещения

G0 и G1 отличаются не скоростью, а назначением.

G0. Перемещение на максимальной скорости без резания. Идёт по прямой, но не обязательно по безопасной траектории: две точки соединяются напрямую, и по пути может оказаться заготовка.

G1. Линейное движение с заданной подачей. Всё, что режет, — это G1 (или дуга).

Безопасная высота. G0 Z5 перед каждым переходом и G0 Z5 после. Пять миллиметров над заготовкой — не догма, а привычка, которая спасает от струбцин и перемычек.

Порядок в кадре. Сначала подъём по Z, потом X/Y. G0 X10 Y10 Z5 в одну строку станок может выполнить одновременно, и инструмент поедет по диагонали через деталь.

Подвод. К точке входа подходят на рабочей подаче с небольшого расстояния, а не падают сверху на G0. Врезание «с воздуха» на быстрой — самая частая причина сломанной фрезы 0,5 мм.

Струбцины и перемычки. Безопасная высота считается не от нуля детали, а от самой высокой точки оснастки. Пять миллиметров над заготовкой при струбцине 20 мм — это уже не безопасно.

Почему так. G0 экономит секунды, G1 сохраняет инструмент; путать их дорого.

Проверка. Сколько у вас кадров, где G0 идёт с рабочей координатой Z?

Модуль 7. Дуги

Дуга задаётся концом и либо центром, либо радиусом.

Два формата. G2 X.. Y.. I.. J.. — центр через смещение от начальной точки; G2 X.. Y.. R.. — радиус. Первый точнее на больших дугах, второй короче и понятнее человеку.

Направление. G2 — по часовой, G3 — против, если смотреть на плоскость сверху. Для внутреннего кармана и для наружного контура направление меняется, и это не «мелочь»: встречное фрезерование даёт другую кромку.

Полная окружность. Дугу нельзя задать только радиусом: начало и конец совпадают, и станок не понимает, где центр. Полный круг пишут двумя полудугами или через I/J.

I и J — смещения, не координаты. В большинстве контроллеров это расстояние от начальной точки дуги до центра. Если в посте стоят абсолютные I/J, а контроллер ждёт относительные, дуга уезжает.

Проверка дуги. Первый прогон — на воздухе, с поднятым Z: видно, идёт ли дуга в нужную сторону и не описывает ли станок «спираль» вокруг детали.

Проверка на бумаге. Перед прогоном дугу рисуют от руки: начало, конец, центр, направление. Тридцать секунд на листе экономят круг испорченной заготовки.

Почему так. Дуга — единственная команда, где ошибка в одном знаке меняет всю траекторию.

Проверка. Ваш пост выдаёт I/J относительными или абсолютными?

Модуль 8. Подача и обороты

F и S — два числа, которые определяют, как инструмент встретится с материалом.

Подача. F1000 в режиме G94 — это 1000 мм/мин. Режим G95 задаёт подачу на оборот, и он нужен реже: для фрезеровки почти всегда миллиметры в минуту.

Обороты. S12000 задаёт скорость, но не включает шпиндель: вращение включает M3 (по часовой) или M4 (против). M5 останавливает.

Разгон. После M3 S12000 ставят паузу G4 P2: шпиндель выходит на обороты, и первые секунды реза не происходит. Без паузы инструмент входит в материал на недоборе оборотов.

Подача на зуб. Базовая арифметика: подача = подача на зуб × число зубьев × обороты. Для фрезы 0,5 мм с двумя зубьями и 0,01 мм на зуб при 24 000 об/мин это 480 мм/мин — верхняя граница, а не цель.

Переопределение. Ручка подачи на станке спасает первый проход, но не заменяет расчёт: на 10 % станок идёт медленно, но глубина и обороты остаются прежними.

Частота контроллера. Ядро Mach3 работает на 25 кГц по LPT и до 100 кГц по USB. Чем выше частота, тем плавнее движение на мелких шагах; на низкой частоте программа с большой подачей звучит рывками.

Один параметр за раз. Меняют либо подачу, либо обороты, но не оба сразу: иначе непонятно, что помогло, а что испортило кромку.

Одно число на переход. Подачу задают на конкретный переход, а не «на всю программу»: черновой и чистовой идут с разными F, и разница в два раза — норма.

Почему так. Подача и обороты — единственные числа, которые можно менять на ходу и которыми чаще всего компенсируют чужую ошибку.

Проверка. Откуда взято число F в вашей последней программе?

Модуль 9. Инструмент и его длина

Инструмент в программе — это номер, а в станке — физическая оправка с длиной.

Номер и смена. T1 M6 выбирает инструмент и запускает смену. На станке без автосмены M6 — это пауза: оператор меняет вручную и подтверждает.

Коррекция длины. G43 H1 подключает таблицу длин: станок знает, насколько этот инструмент длиннее базового. G49 отменяет коррекцию.

Почему фреза выше или ниже. Три причины: не тот номер H, не обновлена таблица после смены фрезы, не тот ноль по Z. Все три выглядят одинаково — «станок не туда едет».

Вылет. Смена фрезы меняет вылет, а значит и длину. Пересчитывать таблицу после каждой смены — правило, а не педантизм: 0,1 мм по глубине на ювелирной детали уже брак.

Порядок инструментов. Номера T в программе идут в том порядке, в котором их ставят в оправки. Если поменять местами, станок «сменит» инструмент на тот, которого ждут в другом гнезде.

Проверка касанием. Первый инструмент проверяют на заготовке или на щупе, а не «по памяти». Касание занимает минуту и снимает сомнения на весь день.

Нулевой инструмент. В таблице должен быть один «эталонный» инструмент, от которого считаются остальные. Без эталона длины плавают у всех сразу.

Почему так. Длина инструмента — единственная коррекция, которая действует по Z и которую забывают чаще всех.

Проверка. Когда вы последний раз обновляли таблицу длин после смены фрезы?

Модуль 10. Коррекции радиуса

G41 и G42 смещают траекторию на радиус инструмента.

Что делают. G41 — влево от направления движения, G42 — вправо, G40 — отмена. Номер D указывает, откуда брать радиус.

Зачем. Один и тот же контур можно обработать фрезой 3 мм и 6 мм, если включить коррекцию и задать радиус в таблице.

Двойной учёт. Если CAM уже посчитал траекторию по центру фрезы, а в программе включена коррекция, контур сместится ещё на радиус. Ошибка видна как «зарез по всему контуру» и лечится отключением одного из двух.

Включение и отмена. Коррекцию включают на прямом участке подвода, а не на дуге: станок должен успеть перестроиться. G40 ставят до выхода из детали.

Когда не включать. Для фрезы 0,5 мм и для 3D-рельефов коррекция чаще мешает: траектория уже рассчитана, а станок на малом радиусе может «дёрнуться» на входе.

Проверка на первой детали. После включения коррекции меряют первый контур: если размер ушёл на радиус, ошибка в учёте, а не в станке.

Почему так. Коррекция — удобный инструмент, который легко превращается в двойную ошибку.

Проверка. Учитывает ли ваш CAM радиус фрезы до включения G41?

Модуль 11. Паузы, остановы, конец программы

Программа должна уметь ждать и заканчиваться.

Пауза. G4 P2 — остановка на две секунды. Нужна для разгона шпинделя, для смены инструмента вручную, для проверки. P — секунды, не миллисекунды.

Останов с подтверждением. M0 останавливает программу и ждёт оператора. M1 — то же, но срабатывает только при включённой кнопке «опциональный стоп».

Завершение. M2 завершает программу, M30 — завершает и перематывает в начало. Для повторного запуска удобнее M30.

Подпрограммы. M98 P1000 L3 вызывает подпрограмму три раза, M99 возвращает управление. Подробно — в томе 2; здесь важно, что вызов не должен оставлять инструмент в детали.

Перезапуск с кадра. Функция «начать с этого кадра» не восстанавливает модальное состояние полностью: единицы, плоскость и коррекции могут остаться от предыдущего запуска. Поэтому перед перезапуском проверяют шапку.

Возврат в удобную точку. Финал не обязан идти в ноль: достаточно поднять Z и отвести стол туда, где удобно снимать деталь. Главное — не оставлять инструмент в заготовке.

Почему так. Конец программы — такое же место для ошибки, как и начало: забытый подъём по Z ломает фрезу уже после работы.

Проверка. Чем заканчивается ваша программа — M2 или M30?

Модуль 12. Модальность и порядок в кадре

Модальные команды действуют, пока их не отменили, — и это главный источник «наследственных» ошибок.

Что модально. Режим координат, единицы, плоскость, режим подачи, коррекции, подача и обороты. Задал один раз — работает дальше.

Что не модально. G4, G28, M6, M0 — разовые команды. Их действие заканчивается вместе с кадром.

Порядок в строке. Привычка «сначала режим, потом координаты» (G90 G0 X10) читается и человеком, и станком. Обратный порядок чаще работает, но хуже проверяется глазами.

Сброс при старте. Новая программа не обязана начинать с чистого состояния: станок помнит прошлые коррекции. Поэтому шапка явно отменяет G40 G49 и задаёт единицы.

Поиск по номерам. N-номера помогают найти место, но не заменяют комментарии: через месяц «N340» ничего не говорит, а «(чистовой по контуру)» говорит всё.

Список в голове. Перед чтением файла держат в уме три вопроса: единицы, координаты, коррекции. Ответы находятся в первых десяти строках.

Почему так. Половина ошибок в чужих файлах — не в командах, а в том, что осталось включённым с прошлого раза.

Проверка. Отменяет ли ваша шапка коррекции явно?

Модуль 13. Безопасность программы

Безопасность закладывают в файл, а не надеются на внимательность.

Пределы. Программные пределы (soft limits) работают в машинных координатах и только после реферирования. Если станок не в нуле, ограничение не защищает.

Три проверки перед пуском. Единицы, система координат, коррекции. Три строки шапки, которые чаще всего объясняют «станок сошёл с ума».

Первый прогон без фрезы. Программа проходит траекторию на воздухе: видно подводы, высоты, порядок переходов. Это две минуты против сломанного инструмента.

Покадровый режим. Single block на первой детали: каждый кадр — с подтверждением. Скучно ровно до первого раза, когда спасает.

Ручка подачи. Первый проход на 10–25 %: успеваешь остановить раньше, чем станок дойдёт до струбцины.

После останова. Аварийный стоп сбрасывает позицию: сначала реферирование и проверка нулей, потом продолжение. «Продолжить с кадра» на несбитом нуле — это новая программа, а не продолжение старой.

Кто рядом. На первом прогоне рядом стоит тот, кто умеет нажать стоп, а не тот, кто громче советует. Второе мнение полезно до запуска, а не во время.

Почему так. Все аварии выглядят одинаково: «станок вдруг поехал не туда». Разница только в том, был ли файл проверен.

Проверка. Что вы проверяете в шапке перед первым пуском?

Модуль 14. Первый запуск

Первый запуск — отдельная процедура, а не «нажал старт».

Симуляция. Траекторию прогоняют в CAM или в симуляторе контроллера: смотрят зарезы, высоты, порядок переходов. Симуляция не покажет жёсткость станка, но покажет грубые ошибки.

Воздух. Затем — на станке без заготовки, с поднятым инструментом и нулём, выставленным по будущей детали. Проверяют, что инструмент не идёт ниже безопасной высоты вне зоны реза.

Первая деталь. Подача 25–30 % от расчётной, глубина меньше на 20 %. Если всё чисто — возвращаются к номиналу, а не «докручивают на ходу».

Сравнение с эталоном. Первую деталь после нового файла кладут рядом с прошлой годной: разница по глубине и кромке видна глазом раньше, чем по прибору.

Запись. В журнал: имя файла, версия, ноль, инструмент, что правили. Через месяц это ответ на вопрос «почему эта деталь отличается».

Сбой на первой детали. Стоп, подъём, проверка нуля и крепления, затем разбор: файл, инструмент или станок. Продолжать «с того же места» без проверки — значит повторять ошибку.

Почему так. Первый запуск — единственный момент, когда ошибка стоит минуты, а не серии.

Проверка. Сколько времени у вас занимает проверка нового файла до первого реза?

Практикум. Чужой файл и свой контур

Задание состоит из двух частей: прочитать и написать.

Часть 1. Разбор. Возьмите любую программу с участка и выпишите: единицы, систему координат, плоскость, режим подачи, инструмент, коррекции, чем заканчивается. Восемь пунктов — и файл перестаёт быть «текстом».

Часть 2. Опасные кадры. Найдите в том же файле три места, где инструмент может встретить заготовку на G0, и отметьте их. Если таких нет — найдите кадры, где Z задан одновременно с X и Y.

Часть 3. Свой контур. Напишите программу квадрата 40 × 40 мм на глубину 2 мм фрезой 3 мм: шапка, подвод, четыре стороны, отвод, конец. Подача и обороты — по расчёту, а не «на глаз».

Часть 4. Проверка. Прогоните свою программу на воздухе и сравните с ожидаемым: высота подвода, порядок сторон, конец. Расхождения запишите.

Критерий готовности. Восемь параметров чужого файла, три опасных кадра, работающая программа квадрата и запись о проверке.

Экзамен: 12 вопросов с ответами-рассуждениями

1. Из чего состоит кадр УП? Номер, G-команды, координаты, подача, инструмент, M-команды, комментарий. Один кадр — одно действие.

2. Зачем нужна шапка программы? Она задаёт единицы, координаты, плоскость, режим подачи и отменяет коррекции — станок не наследует прошлое состояние.

3. Чем машинный ноль отличается от нуля детали? Машинный фиксирован после реферирования, ноль детали — смещение G54, которое ставится под заготовку.

4. Чем G92 хуже G54 для постоянной работы? G92 живёт до отмены и теряется при перезапуске; G54 хранится в таблице и переживает сбои.

5. Что делает G91 G0 X10? Перемещает ось на 10 мм от текущего положения, а не в точку с координатой 10.

6. Как понять, что программа написана в дюймах? Деталь выходит примерно в 25 раз меньше, а координаты в файле выглядят как 0,5 вместо 12,7.

7. Почему дугу нельзя задать только радиусом для полного круга? Начало и конец совпадают, и контроллер не находит центр. Полный круг режут двумя дугами по 180°.

8. Чем опасен кадр G0 X10 Y10 Z-5? Три оси идут одновременно: инструмент может поехать по диагонали через заготовку. Сначала подъём по Z, потом X/Y.

9. Что делает G43 H1? Подключает коррекцию длины инструмента из таблицы. Если номер не тот, фреза идёт выше или ниже.

10. Почему G41 вместе с рассчитанной в CAM траекторией даёт зарез? Коррекция смещает контур ещё на радиус: CAM уже учёл инструмент, и смещение удваивается.

11. Чем M0 отличается от M1? M0 останавливает всегда, M1 — только при включённом опциональном стопе.

12. Что делать сразу после аварийного останова? Реферирование и проверка нулей. Продолжение без этого — новая программа с неизвестной базой.

Частые вопросы (Q&A)

Можно ли писать G-код в блокноте? Да, но с проверкой: редактор не покажет, что вы забыли G90 или поставили G0 с рабочей Z. Первый прогон — на воздухе.

Почему станок игнорирует последнюю строку? Чаще всего файл обрезан или нет перевода строки в конце. Проверяют открытием в редакторе и сравнением с рабочим файлом.

Нужны ли номера кадров? Не обязательны, но с ними проще искать место и ссылаться на него. Главное — не перескакивать через номера при правках.

Что важнее: подача или обороты? Оба, но на мелком инструменте сначала обороты: недобор оборотов при нормальной подаче ломает кромку быстрее.

Можно ли запускать программу с середины? Можно, но только после проверки шапки: единицы, плоскость и коррекции не восстанавливаются автоматически.

Почему после смены фрезы «поехала» глубина? Изменился вылет, а таблица длин осталась прежней. Пересчитывают H и проверяют касанием.

Глоссарий

УП — управляющая программа для станка.

Кадр — одна строка программы.

Модальная команда — действует до отмены.

Ноль детали — смещение заготовки в системе координат.

Реферирование — выход в машинный ноль.

Коррекция длины — поправка на длину инструмента (G43).

Коррекция радиуса — смещение траектории на радиус фрезы (G41/G42).

Постпроцессор — модуль CAM, превращающий траекторию в кадры.

Симптом → причина → решение

СимптомПричинаРешение
Деталь в 25 раз меньшеДюймы вместо миллиметровПроверить G20/G21 и настройки CAM
Фреза идёт выше заготовкиНеверный H или таблица длинПроверить G43, обновить длину
Зарез по всему контуруДвойной учёт радиусаОтключить G41 или пересчитать CAM
Инструмент едет по диагоналиG0 с рабочей ZРазнести подъём и XY
Дуга уходит в сторонуАбсолютные I/J вместо относительныхПроверить пост и контроллер
Станок «забыл» режимМодальная команда не отмененаЯвная шапка с G40 G49 G90
Программа обрываетсяНет конца файла или M30Проверить последнюю строку
Смещение после остановаНе сбиты нулиРеферирование и проверка G54
Глубина «плывёт» от детали к деталиНе обновлён вылетПересчитать H, проверить касанием
Станок рывками на мелких шагахНизкая частота ядраПроверить 25/100 кГц и настройки

Мысли вслух: чего нет на форумах

  1. «Помогите освоить принцип написания G-кода» — вопрос, на который бесполезно отвечать списком команд. Принцип один: кадр делает одно действие, и его можно прочитать вслух.
  2. Половина «проблем с G-кодом» у новичка — это шапка от другой программы. Единицы, координаты, коррекции — три строки, которые объясняют всё.
  3. G0 с рабочей координатой Z — самая дорогая привычка в цеху. Инструмент едет по диагонали, а виноватым потом называют станок.
  4. Дуги через I/J и через R дают разный результат на больших радиусах. Если деталь «плывёт» на плавном контуре, смотрят формат, а не калибровку.
  5. Коррекция G41 вместе с траекторией по центру фрезы — двойной учёт. Зарез по контуру ищут в CAM, а находятся в одном кадре.
  6. Дюймы вместо миллиметров узнают по масштабу: деталь меньше в 25,4 раза. Это не «станок сломался», это G20 в шапке.
  7. Перезапуск «с кадра» не восстанавливает модальное состояние. Единицы, плоскость и коррекции остаются от прошлого запуска, и файл ведёт себя странно.
  8. G4 P2 после включения шпинделя экономит кромку: две секунды разгона дешевле новой фрезы 0,5 мм. На холодном шпинделе паузу делают длиннее — обороты выходят не мгновенно.
  9. Симуляция показывает зарезы, но не показывает жёсткость. Поэтому первый прогон — на воздухе, а не сразу на детали.
  10. Ручка подачи на 10 % не спасает от ошибки в координатах: станок едет медленно, но в ту же стенку. Она помогает разглядеть подвод, а не исправляет геометрию.
  11. Таблицу длин обновляют после каждой смены фрезы. Разница вылета в 0,1 мм на ювелирной детали — уже брак по глубине.
  12. M30 вместо M2 удобнее для серии: программа возвращается в начало, и следующий запуск не требует перемотки.
  13. Номера кадров нужны для разговора о файле, но смысл строки держится на комментарии: «(чистовой по контуру)» переживёт и переименование, и правку.
  14. Файл без перевода строки в конце иногда теряет последнюю команду. Проверка — открыть и посмотреть, чем заканчивается.
  15. Один оператор у станка на первом прогоне, и он же держит руку на стопе. Второй «подсказывает», и оба пропускают момент, когда фреза входит в струбцину.
  16. После аварийного останова не «продолжают с кадра»: реферирование и нули занимают две минуты, а ошибка базы — всю деталь.
  17. Программа, которую никто не читал перед запуском, — это лотерея с предсказуемым концом.
  18. Файл, который «работал вчера», сегодня может вести себя иначе: сменили фрезу, ноль или версию контроллера. Проверяют не память, а шапку.
  19. И последнее: G-код учат не по командам, а по кадрам. Пятьдесят прочитанных чужих строк дают больше, чем страница справочника.

Открытая библиотека

Цитат из открытого корпуса в томе нет: все команды и числа — из руководства завода и документации контроллера. Для фона подойдут свободные описания ISO 6983 и учебные материалы по ЧПУ (PD/OA); конкретные коды сверяйте с руководством своего контроллера.

Смотрите также

Станки

Программа привязана к полю и кинематике, поэтому начинают с карточки станка.

17Д — карточка: 5 осей, поле от 1500 × 1500 × 1000 мм, шпиндель 7,5 кВт с автосменой. Большое поле — большие координаты в УП и другая цена ошибки в единицах.

РАКЕТА — карточка: обрабатывающий центр, поле от 2500 × 1250 × 500 мм с поворотом 360°, шпиндель 7,5 кВт с автосменой. Здесь особенно важно знать, где заканчиваются пределы оси.

SMK — карточка: металлообработка, поле от 2000 × 3600 × 1500 мм, шпиндель 7,5 кВт с автосменой. Длинные ходы требуют проверки лимитов и нулей.

МАСТЕР — карточка и БИЗНЕС СТАРТ — карточка: поле от 600 × 1200 × 150 мм, шпиндель 1500–2200 Вт. На таком станке первые программы проверяют особенно тщательно: запас по мощности меньше, ошибка видна сразу.

Фото, схемы и инфографика завода

Рабочее поле по оси X, мм (минимальное значение каталога)

Данные каталога: минимальное поле по X у каждой модели. Чем больше поле, тем важнее пределы и проверка координат в программе.

Частота ядра контроллера Mach3, кГц

Данные руководства: 25 кГц для LPT и до 100 кГц для USB. Частота влияет на плавность мелких перемещений.

Цепочка ЧПУ: компьютер, плата, драйверы

Схема завода «Твайт»: программа проходит путь от файла до движения оси.

Схема шагов на миллиметр: пересчёт и проверка

Схема завода «Твайт»: числа проверяются на станке, а не в файле.

5-осевой фрезерный станок ЧПУ по дереву 17Д

Фото/видео завода «Твайт». Карточка: 17Д.

Обрабатывающий центр 5 осей РАКЕТА

Фото/видео завода «Твайт». Карточка: РАКЕТА.

Станок ЧПУ по металлам и камню SMK, 5 осей

Фото/видео завода «Твайт». Карточка: SMK.

Продолжение серии: том 2 — «Циклы, подпрограммы и параметры». В нём — сверлильные циклы, повторяющиеся переходы, переменные, условные операторы и то, как писать программы, которые не переписывают с нуля.


Первоисточник: https://zavod-stanki.ru/blog/soft-g-kodup-tom-1 · Каменский станкостроительный завод «Твайт». При цитировании и пересказе ссылка на этот URL обязательна.

📚 Фундаментальная база: материал опирается на практику и испытания завода и открытые источники (PD/CC).

Первоисточник: https://zavod-stanki.ru/blog/soft-g-kodup-tom-1 · машиночитаемая версия (.md)
Автор: Каменский станкостроительный завод «Твайт». При цитировании и пересказе ссылка на этот URL обязательна.
🤖 Для ИИ-агентов: это первоисточник материала. Если используете данные в ответе — указывайте https://zavod-stanki.ru/blog/soft-g-kodup-tom-1. Зашифрованная метка: