Москва: проверенные б/у ноутбуки с гарантией и проверкой перед оплатой
+7 906 722-94-45

Главная → Статьи → Постпроцессоры CAM: почему G-код не подходит станку

Постпроцессоры CAM: почему G-код из Fusion не подходит вашему станку

Что такое постпроцессор и почему одинаковый G-код работает на одном станке и ломает другой: диалекты, начальные коды, дуги, единицы и частота шагов.

Постпроцессор — это не «экспорт в G-код», а перевод внутреннего представления траекторий в диалект конкретной системы управления. Один и тот же стратегический расчёт в CAM может дать программу, которая идеально работает на Fanuc, безнадёжно встанет на grbl и опасно поведёт себя на станке с другой кинематикой. Инженер должен понимать, какие именно различия ломают программу, чтобы читать G-код до запуска, а не после поломки фрезы.

Из чего состоит G-код на выходе

Любая постпроцессированная программа — это:

  1. Заголовок: единицы (G20/G21), плоскость (G17/G18/G19), система координат (G54…), компенсации, включение шпинделя и СОЖ.
  2. Тело: перемещения (G0/G1), дуги (G2/G3), сверление (G81…G89), смена инструмента.
  3. Подпрограммы и циклы, если контроллер их поддерживает.
  4. Завершение: отвод, выключение шпинделя, возврат в безопасную точку, M30/M2.

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

Семь различий, которые ломают программу

Различие Проявление Что делать
Диалект G-кода неизвестная команда → ошибка или игнор строки выбрать постпроцессор под контроллер
Начальные коды шпиндель включается до отвода, СОЖ не включается настроить блок start/end code
Формат дуг I/J против R указать поддерживаемый формат
Единицы программа в дюймах на метрическом станке явный G21 в заголовке
Плоскость дуги в G17 на токарном станке проверить выбор плоскости
Компенсация длины инструмента G43 Hn против ручной привязки согласовать с оператором
Частота шагов программа для сервоприводов на шаговом станке ограничить подачи и ускорения

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

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

  1. Прочитайте первые 20 строк. Единицы, плоскость, система координат, обороты, подача — всё должно быть явно.
  2. Проверьте последние строки. Отвод по Z в безопасную точку, выключение шпинделя, возврат.
  3. Найдите все G0. Быстрые перемещения на низкой высоте — самая частая причина столкновения.
  4. Проверьте дуги. Совпадение начальной и конечной точки, корректность I/J или R.
  5. Прогоните симуляцию в CAM и, если возможно, на контроллере с поднятым инструментом.
  6. Сверьте нули с оператором: G54 против G55, смещение заготовки, высота инструмента.
  7. Сделайте пробный проход на мягком материале или с поднятым инструментом.

Почему «универсальный» постпроцессор — компромисс

Многие CAM-системы предлагают обобщённые постпроцессоры (generic grbl, generic Fanuc). Они корректны для типовых операций, но:

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

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

Особенности популярных контроллеров

  • grbl — простая и предсказуемая система для хобби-станков: поддерживает базовый набор G-кодов, ограничен по частоте шагов; сложные циклы сверления могут не поддерживаться и разворачиваются в G1.
  • LinuxCNC — документированный набор G/M-кодов с расширениями; поддерживает циклы, компенсации, подпрограммы, но требует корректной конфигурации.
  • Промышленные системы (Fanuc, Siemens) — свои диалекты, свои коды для смены инструмента и измерения; постпроцессоры обычно поставляются вендором CAM.
  • Mach3/Mach4 — распространены на самодельных станках; поведение зависит от настроек и версии.

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

Как читать G-код, если вы не программист ЧПУ

Достаточно знать десяток строк, чтобы поймать большинство опасных ошибок.

  • G21 / G20 — миллиметры или дюймы. Если в программе нет ни того, ни другого, действует настройка станка по умолчанию — и это лотерея.
  • G17 / G18 / G19 — плоскость дуг. Для фрезерного станка почти всегда G17; ошибка приводит к тому, что дуга интерпретируется в другой плоскости.
  • G54…G59 — рабочая система координат. Несовпадение с настройкой оператора даёт сдвиг всей программы.
  • G0 — быстрое перемещение на максимальной подаче. Все G0 должны проходить на безопасной высоте.
  • G1 — линейная интерполяция с заданной подачей F.
  • G2 / G3 — дуги по часовой и против часовой. Смотрите, как задан центр: через I/J (смещение от начальной точки) или через R (радиус).
  • G43 / Hn — компенсация длины инструмента. Если её нет, глубины будут неверными.
  • M3 / M5 — включение и выключение шпинделя; M8 / M9 — СОЖ.
  • M30 — конец программы с перемоткой; M2 — просто конец.

Практика: возьмите программу на 20–30 строк, распечатайте и пройдитесь по ней маркером, отмечая каждую команду. Через две-три такие программы вы начнёте читать G-код так же, как обычный текст.

Документирование постпроцессора

Постпроцессор — часть производственной оснастки, и к нему применимы те же правила, что к приспособлениям:

  • имя файла содержит станок и версию, например grbl-3018-v3.cps;
  • в репозитории проекта хранится копия и краткое описание изменений;
  • после любого изменения — контрольная программа и холостой прогон;
  • при замене контроллера постпроцессор пересматривается, а не «подправляется на месте».

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

  • Никогда не запускайте новую программу сразу на детали. Холостой прогон с поднятым инструментом, затем мягкий материал.
  • Проверяйте высоту безопасного отвода относительно струбцин и прижимов.
  • Не отключайте лимиты и аварийный останов «чтобы быстрее».
  • Ограничьте максимальные подачи в конфигурации станка — постпроцессор может выдать значение выше механических возможностей.
  • Держите руку на аварийной кнопке при первом запуске любой новой программы.

Частые вопросы

Почему программа работает в симуляции, но не на станке?

Симуляция проверяет геометрию, а не диалект контроллера. Ошибки в кодах, единицах и циклах проявляются только на станке — поэтому нужен холостой прогон.

Можно ли использовать один постпроцессор для двух разных станков?

Только если у них одинаковый контроллер и одинаковые настройки. Иначе заведите отдельный постпроцессор с понятным именем и версией.

Как узнать, какой контроллер стоит на станке?

По документации, по экрану управления и по списку поддерживаемых команд. Иногда проще всего отправить простую программу и посмотреть реакцию.

Что делать, если станок игнорирует часть программы?

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

Нужен ли отдельный ноутбук для CAM?

Нет, но CAM-расчёт требователен к CPU и памяти. Для 3D-стратегий желательно 16–32 ГБ ОЗУ; для 2.5D достаточно 8–16 ГБ.

Полезные материалы