G-коды для ЧПУ

Дата публикации: 06/09/2022

Появление и использование в производстве станка с ЧПУ порождает необходимость освоить азы его программирования и получить представление о том, как работает система команд. Подавляющее большинство таких станков и ОЦ (обрабатывающих центров) используют систему команд, называемую G-code. С функциональной и технической точки зрения именно G-код покрывает 90% потребности оборудования в стандартизированных и унифицированных командах, которые можно представить в виде структурированной системы кадров и последовательности действий.



Содержание


  1. Что такое G-код ЧПУ
  2. Команды и особенности исполнения G-кода
  3. Методы программирования обработки деталей ДЖИ-кодами для ЧПУ
  4. Почему стоит изучать программирование ЧПУ
  5. Сводная таблица кодов
  6. Подготовительные G-функции ЧПУ


Что такое G-код ЧПУ


G-кодом принято называть базу, на которой построен язык программирования для CNC (числовое программное управление), созданный в 60-х годах прошлого века и финализированный в 1980-м году в виде стандарта RS274D. Позже появился стандарт ISO 6983-1:1982, в СССР это был ГОСТ 20999-83, где язык получил условное наименование ИСО-7 бит. 


С точки зрения программирования G-код – жестко структурированная система команд и параметров (переменных), позволяющая задать последовательность и критерии выполнения операций станками с ЧПУ с возможностью расширения на уровне конечного устройства или базы для нескольких серийных устройств (категорий).


Система G- и М-кодов получила серьезное развитие благодаря усилиям японских производителей ЧПУ FANUC. Именно на этой технике максимально широко использовался язык ISO-7bit, что в итоге привело к его повсеместному распространению. Некоторые специалисты склонны видеть в G-code функциональную разновидность языка ассемблер.


Структурные и функциональные особенности G-кода:


  • жестко выстроенная последовательность строк, начинающихся со знака % в первом кадре и завершающаяся командой М02 (М30);
  • кадр представляет собой группу команд, логично составляющих завершенную последовательность действий и обозначенную переходом ПС/LF/CR к следующему кадру;
  • основные исполнительные команды G-кода принято называть подготовительными, а команды М-кода дополнительными;
  • функционально команда G-кода задает перемещение и позиционирование узла с основным обрабатывающим инструментом, будь то фреза, сверло, шпиндель, сопло принтера или головка с лазером;
  • команда М-кода задает дополнительные действия, связанные с обслуживанием, сменой инструмента и прочими вторичными функциями.


У многих изучающих язык G-кода возникает вопрос: почему это "подготовительные команды"? Ответ следует искать в логике программирования – окончательной командой можно считать импульс, запускающий инструмент. Поэтому ответственный за позиционирование G-код рассматривается как подготовительный. Например, для подачи инструмента применяется функция F, для главного движения – S, для функций инструмента предусмотрены символы T, D, H.


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


Команды и особенности исполнения G-кода


Система команд G-кода имеет строго очерченный круг функциональности:


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


Обычный ненулевой кадр в последовательности G-кода имеет порядковый номер и задает одно конечное действие, например, устанавливает исполнительный узел в начальную точку, перемещает его в точку с другими координатами, задает ускоренное перемещение атрибутом 00.


Следует понимать, что команды G-кода без соответствующих команд М-кода не дадут возможности полноценно использовать ЧПУ, например, без М-кода придется менять инструмент вручную. В простейшем варианте использования ЧПУ можно рассматривать набор G команд как базовый – подать головку с инструментом в определенную точку над плоскостью и начать резку листа. В этом случае нет возможности выбрать один инструмент из нескольких, поменять его, ввести параметры для проверки точности и износа.


Методы программирования обработки деталей ДЖИ-кодами для ЧПУ


Распространение ЧПУ сделало возможным упростить процессы программирования на пользовательском уровне. Существует несколько основных, базовых уровней, позволяющих использовать оборудование. 


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


Программирование на уровне исполнительного кода. Технолог ЧПУ способен сам написать последовательность команд и кадров в G-коде для загрузки программы обработки в станок. При наличии программ-компиляторов задача существенно упрощается, так как появляется возможность автоматизировать написание блоков кода, задавая основные типовые кадры и операции. При хорошей подготовке и опыте отдельные этапы программирования способен выполнить оператор.


Проектное или CAD/САМ программирование. Уровень разработчика и технолога, выполняющего более сложные задачи с использованием трехмерных цифровых моделей и связанных с ними баз данных по стандартам и номенклатуре инструмента/оснастки. Цифровая или оцифрованная модель позволяет компилировать код для последовательности команд, кадров, операций вплоть до получения совокупности – УП, управляющей программой для технологического процесса.


Системный уровень – внедрение единой платформы, позволяющей интегрировать процессы проектирования, моделирования, компиляции кода и выполнения производственных задач. Это уровень системного управления (администрирования) производством ЧПУ. Он достигается путем внедрения в производство систем типа DPA, позволяющих объединить и автоматизировать все функции от постановки задачи до контроля каждого процесса и результата со сбором и анализом информации по набору выбранных критериев.


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


Почему стоит изучать программирование ЧПУ


Нужно ли знать основы и изучать программирование ЧПУ на пользовательском уровне? Да, нужно, поскольку у работы с таким оборудованием есть ряд особенностей, которые должны быть учтены, чтобы избежать ошибок и потерь.


G-код не стоит путать с искусственным интеллектом. Его жесткая структура и связанность команд (синтаксиса) не позволяют игнорировать базовые принципы.


  1. Станок не имеет первоначального "знания" о своем состоянии. Любой сценарий операции и кадр начинается с определения нулевой точки (координаты) и выхода на нее исполнительного узла. Это должно быть внесено в код ЧПУ на уровне исполнения.
  2. В программах G-кода есть шаблоны для линейного перемещения, кругового движения, вращения по часовой и против часовой стрелки. Эти кадры и сценарии вносятся готовыми модулями, алгоритмами, в которых обозначено начало и конец последовательности действий. Если вы упустите базовые точки и параметры процесса, обработка заготовки будет выполнена неверно.
  3. Существуют коды модальные и немодальные. Модальные или сохраняемые с более сложным синтаксисом кадров позволяют переносить какие-то действия на следующие кадры. Например, начинать новый процесс с точки, где завершился предыдущий. Такие коды позволяют не повторять команды, что означает упрощение кода в целом – это называется оптимизацией программы. Сценарий с модельными кодами в разы и в десятки раз меньше сценария немодального, в котором команды повторяются из кадра в кадр.
  4. Станок ЧПУ воспринимает абсолютные значения по ранее заданным параметрам. Программист должен задать точку отсчета или нулевую координату и привязать любые перемещения к ней. На более сложном уровне возможно использование переменных для придания нулевого значения другим точкам (выше о модальных кодах). Система координат может быть абсолютной и относительной, что означает разные принципы задания точки отсчета.
  5. Все действия на уровне G-кода и М-кода парные. Если у вас есть команда, запускающая шпиндель, то должна быть команда на его останов. Пропустить или игнорировать парность в алгоритме означает испортить заготовку или повредить оборудование. Парность распространяется на всё, в том числе и на перемещение – в программу исполнения зашит запуск и останов любого из приводов по определенным признакам. Иначе вы рискуете получить запуск фрезы или сверла на подвижной заготовке, или начало движения стола при работающем инструменте. Это приведет к аварии на станке.


В сложных УП (управляющих программах) можно перепутать команды G- и М-кода из-за пересечения функций процесса. Отсутствие знаний на уровне программирования и алгоритмизации может стать причиной аварийного нарушения порядка операций и действий в сценарии.


Сводная таблица кодов


Поскольку G-коды унифицированы и стандартизированы, можно ориентироваться на сводные таблицы для определенных кадров и сценариев. Обратите внимание, что сводная таблица G-кодов и М-кодов ЧПУ не содержит всех возможных команд. Для разных систем может отличаться правило использования кадров.





Обратите внимание, что в таблице М-кодов есть команды, позволяющие обратиться не только к служебным функциями самого оборудования, например, к системе охлаждения. Имеется возможность (М97 - М99) управлять выполнением программ и подпрограмм, обращаться к памяти носителя. Это серьезный уровень взаимодействия с техникой, поэтому знание принципа программирования с М-кодом и G-кодом обязательно для полноценной работы с оборудованием.


Подготовительные G-функции ЧПУ


Выше мы уже указывали, что все функции, задаваемые G-кодами, являются подготовительными. С точки зрения программирования это означает, что они позволяют подготовить исполнительный узел и заготовку к запуску и непосредственному взаимодействию. При формировании сценария с кадрами задается точка отсчета координатами X-Y-Z, направление и скорость перемещения (для каждого узла), промежуточная конечная точка перемещения с координатами. Для узла с инструментом и наклонно-поворотного стола используются разные кадры с обращением к определенным приводам.



Эта статья не является инструкцией по программированию на языке G-code, она носит ознакомительный характер. Для получения подробной информации следует обращаться к инструкциям, техническим описаниям и специальной учебной литературе.

telegram-icon whatsapp-icon