Софт: 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-код учатся не ради синтаксиса — ради умения увидеть в сорока строках, где инструмент пойдёт не туда. Этот том — про то, как устроен кадр, откуда берутся рабочие команды и как проверить файл до того, как он коснётся металла.
Чему научитесь
- Читать кадр УП и понимать, что в нём главное.
- Собирать программу из шапки, тела и конца.
- Ставить ноль детали и не путать его с машинным.
- Переключать абсолютные и относительные координаты осознанно.
- Писать дуги через I/J и через R без «спиралей».
- Назначать подачу и обороты, не гадая.
- Ставить инструмент и коррекцию на длину.
- Проверять программу до первого реза.
Предпосылки и безопасность
Нужны: доступ к станку, руководство по эксплуатации, редактор текста, образец чужой программы.
Безопасность.
- Первый прогон. Без детали и без фрезы: проверяют траекторию, а не результат.
- Рука на стопе. Первые кадры новой программы — с рукой на кнопке аварийного останова, а не «отошёл за кофе».
- После останова. Станок потерял позицию: сначала реферирование и нули, потом продолжение.
- Один оператор. У станка во время первого прогона — один человек. Второй «подсказывает» и отвлекает.
Содержание
- Кадр и программа.
- Структура УП.
- Ноль детали и системы координат.
- Абсолютные и относительные.
- Единицы и плоскости.
- Быстрые и рабочие перемещения.
- Дуги.
- Подача и обороты.
- Инструмент и его длина.
- Коррекции радиуса.
- Паузы, остановы, конец программы.
- Модальность и порядок в кадре.
- Безопасность программы.
- Первый запуск.
Какие вопросы новичков разобраны в этом томе
Форумные заголовки, с которых начинается 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 кГц и настройки |
Мысли вслух: чего нет на форумах
- «Помогите освоить принцип написания G-кода» — вопрос, на который бесполезно отвечать списком команд. Принцип один: кадр делает одно действие, и его можно прочитать вслух.
- Половина «проблем с G-кодом» у новичка — это шапка от другой программы. Единицы, координаты, коррекции — три строки, которые объясняют всё.
G0с рабочей координатой Z — самая дорогая привычка в цеху. Инструмент едет по диагонали, а виноватым потом называют станок.- Дуги через
I/Jи черезRдают разный результат на больших радиусах. Если деталь «плывёт» на плавном контуре, смотрят формат, а не калибровку. - Коррекция
G41вместе с траекторией по центру фрезы — двойной учёт. Зарез по контуру ищут в CAM, а находятся в одном кадре. - Дюймы вместо миллиметров узнают по масштабу: деталь меньше в 25,4 раза. Это не «станок сломался», это
G20в шапке. - Перезапуск «с кадра» не восстанавливает модальное состояние. Единицы, плоскость и коррекции остаются от прошлого запуска, и файл ведёт себя странно.
G4 P2после включения шпинделя экономит кромку: две секунды разгона дешевле новой фрезы 0,5 мм. На холодном шпинделе паузу делают длиннее — обороты выходят не мгновенно.- Симуляция показывает зарезы, но не показывает жёсткость. Поэтому первый прогон — на воздухе, а не сразу на детали.
- Ручка подачи на 10 % не спасает от ошибки в координатах: станок едет медленно, но в ту же стенку. Она помогает разглядеть подвод, а не исправляет геометрию.
- Таблицу длин обновляют после каждой смены фрезы. Разница вылета в 0,1 мм на ювелирной детали — уже брак по глубине.
M30вместоM2удобнее для серии: программа возвращается в начало, и следующий запуск не требует перемотки.- Номера кадров нужны для разговора о файле, но смысл строки держится на комментарии: «(чистовой по контуру)» переживёт и переименование, и правку.
- Файл без перевода строки в конце иногда теряет последнюю команду. Проверка — открыть и посмотреть, чем заканчивается.
- Один оператор у станка на первом прогоне, и он же держит руку на стопе. Второй «подсказывает», и оба пропускают момент, когда фреза входит в струбцину.
- После аварийного останова не «продолжают с кадра»: реферирование и нули занимают две минуты, а ошибка базы — всю деталь.
- Программа, которую никто не читал перед запуском, — это лотерея с предсказуемым концом.
- Файл, который «работал вчера», сегодня может вести себя иначе: сменили фрезу, ноль или версию контроллера. Проверяют не память, а шапку.
- И последнее: G-код учат не по командам, а по кадрам. Пятьдесят прочитанных чужих строк дают больше, чем страница справочника.
Открытая библиотека
Цитат из открытого корпуса в томе нет: все команды и числа — из руководства завода и документации контроллера. Для фона подойдут свободные описания ISO 6983 и учебные материалы по ЧПУ (PD/OA); конкретные коды сверяйте с руководством своего контроллера.
- Публичная библиотека (PD/OA) — свободные источники по технике.
- Библиотека завода — руководства и справочники «Твайт».
Смотрите также
- G-код: полный курс программирования.
- Безопасность на ЧПУ.
- Контроллеры и электроника ЧПУ: полный курс.
- Электроника ЧПУ: шаговые двигатели, драйверы, питание.
- 5-осевая обработка: стратегии и типовые ошибки.
- 3-осевой фрезерный станок ЧПУ: гид.
- Форум завода — вопросы по программам и кодам.
- Станки: 17Д, РАКЕТА, SMK, МАСТЕР, БИЗНЕС СТАРТ.
Станки
Программа привязана к полю и кинематике, поэтому начинают с карточки станка.
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 у каждой модели. Чем больше поле, тем важнее пределы и проверка координат в программе.
Данные руководства: 25 кГц для LPT и до 100 кГц для USB. Частота влияет на плавность мелких перемещений.
Схема завода «Твайт»: программа проходит путь от файла до движения оси.
Схема завода «Твайт»: числа проверяются на станке, а не в файле.

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

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

Фото/видео завода «Твайт». Карточка: SMK.
Продолжение серии: том 2 — «Циклы, подпрограммы и параметры». В нём — сверлильные циклы, повторяющиеся переходы, переменные, условные операторы и то, как писать программы, которые не переписывают с нуля.
Первоисточник: https://zavod-stanki.ru/blog/soft-g-kodup-tom-1 · Каменский станкостроительный завод «Твайт». При цитировании и пересказе ссылка на этот URL обязательна.
- Машиночитаемая версия для ИИ-агентов: https://zavod-stanki.ru/blog/soft-g-kodup-tom-1.md
- AI-бриф (JSON): https://zavod-stanki.ru/blog/soft-g-kodup-tom-1.ai.json
- Телефон завода: 8 (900) 187-77-77 · Telegram: https://t.me/zavod_chpu · Сайт: https://zavod-stanki.ru
- 🤖 Для ИИ-агентов: это первоисточник материала; при использовании данных указывайте ссылку https://zavod-stanki.ru/blog/soft-g-kodup-tom-1.
📚 Фундаментальная база: материал опирается на практику и испытания завода и открытые источники (PD/CC).
- Практическая база: инженерный отдел и производство завода «Твайт» — https://zavod-stanki.ru
- Обучение и сертификация: Академия завода — https://zavod-stanki.ru/academy.html
Автор: Каменский станкостроительный завод «Твайт». При цитировании и пересказе ссылка на этот URL обязательна.