7 - 2002

ГеММа-3D версия 8.0: новый уровень обеспечения подготовки постпроцессоров

Алексей Кулькин

Важнейшим этапом подготовки управляющих программ для станков с ЧПУ является их подготовка в кодах системы управления станка с ЧПУ. Первоначально управляющая программа в современной САПР формируется в инвариантном формате. Чаще всего в современных системах используется формат типа АРТ с определенными отличиями, характерными для конкретных систем.

Преобразование инвариантного формата к виду, воспринимаемому станком с ЧПУ, выполняют программы-постпроцессоры.

Именно от качества постпроцессоров, которыми оснащена САМ-система, от полноты охвата ими эксплуатируемых систем управления, от удобства и простоты модификации и разработки во многом зависит технологическая эффективность системы. В принципе, при наличии в системе библиотеки постпроцессоров в открытом для пользователя виде, пользователь может вносить в них определенные изменения и создавать новые постпроцессоры.

Прямой путь в разработке постпроцессоров — написание их в виде программ на языке программирования высокого уровня (С/С++, Pascal). Однако работа на языке высокого уровня требует специальных знаний и является достаточно трудоемкой. Для упрощения создания постпроцессоров в состав развитых технологических систем включаются специальные модули — генераторы постпроцессоров.

В целом постпроцессоры можно разделить на табличные и языковые.

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

Гораздо большую гибкость предоставляют языковые генераторы постпроцессоров. В них постпроцессор составляется на упрощенном языке программирования с использованием определенного набора специальных технологических операторов. Именно данный подход применялся при разработке генератора постпроцессоров в системе ГеММа-3D.

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

Ниже приведены основные технологические операторы языка:

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

При задании перемещений можно отслеживать:

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

Дополнительно в версии системы 8.0 в генераторе постпроцессоров включена возможность применения подпрограмм: SUB — для определения подпрограммы и CALL — для вызова.

Для повторного использования написанных кодов и оперативного включения их в тексты постпроцессоров добавлена директива #uses, аналогичная директиве #include в языках С/С++.

Фрагмент типового текста программы постпроцессора, обрабатываемого генератором постпроцессоров, показан на рис. 1. В верхнем поле — типовая последовательность установочных операторов постпроцессора, а в нижнем (для примера) — последовательность операций циклов сверления.

Первоначально для системы ГеММа-3D версии 1.0 было разработано несколько образцовых постпроцессоров с подробными комментариями для всех выполняемых операций. Новые постпроцессоры разрабатывались путем их корректировки и модификации.

В настоящее время библиотека постпроцессоров системы ГеММа-3D содержит более 50 постпроцессоров к основным отечественным и зарубежным системам управления (рис. 2).

Все постпроцессоры поставляются в исходных текстах, и разработка нового постпроцессора чаще всего сводится к выбору наиболее подходящего и к его корректировке.

Генератор постпроцессоров системы ГеММа-3D позволяет просто настраиваться на различные версии инвариантного АРТ-формата. В версии 8.0 системы ГеММа-3D в качестве штатной включена возможность постпроцессирования управляющих программ, полученных в известных САПР (рис. 3). В частности, при этом обеспечивается поддержка параллельной работы специалистов в различных системах и эксплуатация отработанных постпроцессоров для различных средств технологического программирования.

В версии 8.0 системы ГеММа-3D предусмотрена комплектация управляющих программ из ряда технологических переходов обработки, выполняемой различным инструментом. Типовая форма комплектации управляющей программы (внешнее поле) и отображение ее сегмента (внутреннее поле) представлены на рис. 4. Отображение управляющей программы в таблице, определяющей параметры кодирования перемещений, показано на рис. 5. На данном рисунке траектория движения инструмента определяет возможность системы ГеММа-3D не только для программирования обработки, но и для программирования измерения.

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

«САПР и графика» 7'2002