Современное оборудование с ЧПУ становится всё более сложным как по устройству, так и по программированию. В связи с этим серьезно повышаются требования к возможностям постпроцессирования в САМ-системах, в том числе к разработке постпроцессоров. В CAD/CAM-системе ГеММа-3D с самого начала постпроцессоры были реализованы в виде скриптов на специализированном языке программирования, которые преобразовывали текст универсальной программы (CLDATA) в программу для конкретного ЧПУ. В связи с этим была достигнута высокая гибкость постпроцессоров и возможность удовлетворить любые требования пользователей.
Однако для разработки таких постпроцессоров требовалось достаточно много времени и высокая квалификация разработчика. Поэтому в качестве развития была предложена концепция конструктора постпроцессоров. Она заключается в том, что в CAD/CAM-систему ГеММа-3D включены библиотеки стандартных функций и шаблонов для основных задач постпроцессирования. Эти библиотеки являются специализированными и ориентированы на группы станков и оборудования (фрезерные, токарные, электроэрозионные). Шаблон представляет собой скрипт, реализующий алгоритм постпроцессирования для группы оборудования. Особенности конкретной системы ЧПУ отражаются в специальном скрипте, содержащем только имена управляющих переменных и их значения. Именно этот скрипт называется табличным постпроцессором. Переменные табличного постпроцессора управляют работой алгоритма, реализованного через шаблон и библиотечные функции.
Для того чтобы пользователь мог самостоятельно настраивать и даже разрабатывать табличные постпроцессоры для любого оборудования с ЧПУ, предлагаются новые программные модули:
- конфигуратор;
- отладчик постпроцессоров.
Структура панелей и параметров, необходимых для генерации скрипта табличного постпроцессора, содержится в текстовом файле формата .json. Этот файл называется конфигурацией постпроцессора. Редактирование конфигурации постпроцессора и генерация по ней табличного постпроцессора выполняется программным модулем Конфигуратор.
Программный модуль конфигуратора открывает указанный пользователем файл и по заданной структуре формирует в левой части панели список групп параметров. При выборе наименования группы в центральной зоне панели перечисляются параметры, входящие в группу. Значения параметров предоставляются справа или как поле ввода текстовой строки, или как окно ввода строк многострочного текста — в зависимости от указанного типа параметра (рис. 1).
Рис. 1. Внешний вид интерфейса
Конфигуратора постпроцессоров
Главное достоинство конфигуратора состоит в том, что он позволяет создать произвольные группы параметров для конкретного устройства ЧПУ и выполнить их редактирование в удобной форме в виде панелей. Например, табличный электроэрозионный постпроцессор был разработан для четырех различных систем ЧПУ электроэрозионной группы: Accutex, AGIE, ONA, WI-640. Имя шаблона используемого алгоритма задается как параметр конфигурации.
Особенность NC-программирования для таких современных станков с ЧПУ, как электроэрозионные станки AGIE (модель E350), заключается в том, что используется XML-представление, которое cодержит большое количество форматирующей информации. Для удобства разработки постпроцессора эта информация задается в файле паспорта постпроцессора (рис. 2).
Рис. 2. XML-представление паспорта постпроцессора
Блоки условно-постоянной информации в паспорте постпроцессора выделяются командой MTEXT, рядом с которой ставится имя блока. Внутри блока могут применяться переменные, значения которых используются постпроцессором. Важно, что это могут быть многострочные переменные неограниченного размера.
При постпроцессировании строки с блоков вставляются в NC-программу в соответствии с алгоритмом, заложенным в подпрограммах библиотеки. В конфигураторе для таких постпроцессоров нужно в группе Подпрограммы указать, что информация задается программой из библиотеки.
В связи с тем что конструктор постпроцессоров — довольно сложная технология, связанная с использованием многих библиотечных файлов, была разработана интегрированная среда для разработки и отладки постпроцессоров (рис. 3).
Рис. 3. Интегрированная среда для разработки и отладки постпроцессоров
Отладчик постпроцессоров может использоваться и как средство отладки стандартных постпроцессоров для различных устройств ЧПУ.
В отладчике разработчик может пошагово отслеживать как выполнение скрипта, так и разбор и преобразование кадров исходной программы. Одновременно происходит графическая отрисовка исходной программы. При этом можно назначить переменные, значения которых выводятся в специальном окне при останове. Также можно получить значение переменной в выпадающем окошке при подводе курсора мыши.
После открытия текст постпроцессора помещается в части панели, которая располагается в левой части головной панели. Текст постпроцессора может быть представлен не одним файлом, а головным и дополнительными файлами (для табличных постпроцессоров) из библиотеки подпрограмм.
Можно работать в режиме отладки или в режиме правки постпроцессора с любым файлом, у которого активна закладка. В режиме отладки останов задается кнопкой для выбранной строки в панели текста постпроцессора или панели АРТ-файла. Также останов может определяться автоматически, если выбраны кнопки пошагового прохождения алгоритма.
В момент останова в окне АРТ отслеживается строка программы, соответствующая шагу алгоритма постпроцесора. Шаг алгоритма постпроцессора и строка АРТ-программы выделяются строками и знаком указательного треугольника. В режиме Шаг с обходом строка с вызовом подпрограммы call рассматривается как один шаг алгоритма. Следующим шагом будет следующая строка за call. В режиме Шаг с заходом строка с вызовом подпрограммы call рассматриваетсся как место вызова подпрограммы. Следующей строкой становится первая строка подпрограммы. Активируется автоматически закладка с файлом, где находится подпрограмма.
В окне NC показывается результат постпроцессирования до момента останова. Одновременно можно посмотреть траекторию в графическом окне (рис. 4).
Рис. 4. Одновременное отображение траектории и управляющей программы
Значение одной переменной можно увидеть во всплывающем окне сообщений при подводе курсора к переменной, значения остальных заданных в списке переменных выводятся в панели Переменные.
Правка выполняется в панелях файлов постпроцессора командами, аналогичными стандартному текстовому редактору.
Описанные выше инструменты значительно облегчают задачу разработки и сложных постпроцессоров, в том числе:
- пользователю предоставляется возможность самостоятельно разрабатывать панели ввода данных для табличных постпроцессоров с использованием конфигуратора;
- при отладке постпроцессоров можно сделать останов в любом месте постпроцессора или строке библиотечных файлов, также в любой строке исходной АРТ-программы и получить значения любых заданных переменных, текст NC-программы, соответствующий точке останова, прорисованную траекторию для сгенерированного фрагмента NC-программы;
- при генерации больших NC-программ можно сделать остановку и посмотреть фрагмент NC-программы и траектории без предврительного указания останова;
- используя шаблон алгоритма, например электроэрозионной обработки и библиотеку подпрограмм, можно быстро получить NC-программы для различных устройств ЧПУ, отличающихся не только форматом вывода перемещений, но и технологическими командами настройки проволоки в начале первого реза, смены направления реза и обрезки проволоки в конце обработки (рис. 5).
Рис. 5. Генерация управляющих программ для разнотипных систем ЧПУ
Таким образом, благодаря новым инструментам постпроцессирования разработан новый тип табличных постпроцессоров со свободным заданием конфигурации в формате .json. В настоящее время табличный постпроцессор такого типа уже внедрен на ряде предприятий России для электроэрозионной 2D- и 4D-обработки, в частности для ЧПУ ACCUTEX, AGIE, ONA.