Научная статья на тему 'РАЗРАБОТКА АЛГОРИТМА ПОСТРОЕНИЯ УНИВЕРСАЛЬНОГО ПОСТПРОЦЕССОРА, ГЕНЕРИРУЮЩЕГО УПРАВЛЯЮЩУЮ ПРОГРАММУ ПОД АНАЛОГИЧНЫЕ СЧПУ'

РАЗРАБОТКА АЛГОРИТМА ПОСТРОЕНИЯ УНИВЕРСАЛЬНОГО ПОСТПРОЦЕССОРА, ГЕНЕРИРУЮЩЕГО УПРАВЛЯЮЩУЮ ПРОГРАММУ ПОД АНАЛОГИЧНЫЕ СЧПУ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
123
37
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УНИВЕРСАЛЬНЫЙ / ПОСТПРОЦЕССОР / POSTPROCESSOR / FANUC / ITHC530 / CAM / СЧПУ / CNC SYSTEM / VERSATILE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Бычик А.В., Егоров О.М., Жилина С.Б.

В статье рассмотрена проблема использования оригинальных функций при генерации управляющих программ для различных систем численного программного управления (СЧПУ) в механообработке, поставлена задача по унификации постпроцессора, рассмотрены подходы к унификации, выдвинуты требования к универсальному постпроцессору. На предмет выполнения поставленных условий проведен обзор существующих решений и предложен алгоритм создания универсального постпроцессора, позволяющего использовать единый проект механообработки для станков, оборудованных различными системами ЧПУ. Реализация описанных алгоритмов произведена в среде VC++ путем разработки постпроцессора, позволяющего на основе одного проекта механообработки генерировать корректные управляющие программы для различных стоек Fanuc 0/16/18/32, Arumatik, iTHC530 с поддержкой оригинального функционала.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Бычик А.В., Егоров О.М., Жилина С.Б.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DEVELOPMENT OF STRUCTURE ALGORITHM FOR VERSATILE POSTPROCESSOR TO CREATE CONTROL PROGRAM FOR ANALOGOUS NUMERICAL CONTROL SYSTEMS

The article considers the problem of using original features in generating control programs for different numerical control systems (CNC) in machining, presents the algorithm of versatile post-processor and considers approaches to versatility. To verify the implementation of assigned conditions, analysis of the existing solutions is presented. Algorithm of generating versatile post-processor, allowing to apply the unified project for machining process on different CNC-machines is proposed. Implementation of described algorithms is performed in VC++ by development of post-processor on the basis of a project for machining process to generate proper control programs for different frames Fanuc 0/16/18/32, Arumatik, iTHc530, supporting original functional.

Текст научной работы на тему «РАЗРАБОТКА АЛГОРИТМА ПОСТРОЕНИЯ УНИВЕРСАЛЬНОГО ПОСТПРОЦЕССОРА, ГЕНЕРИРУЮЩЕГО УПРАВЛЯЮЩУЮ ПРОГРАММУ ПОД АНАЛОГИЧНЫЕ СЧПУ»

УДК 004.9:629.7.05

А. В. Бычик, инженер, ИТ ПАО АНПП «ТЕМП-АВИА»

О.М. Егоров, ведущий инженер, ИТ ПАО АНПП «ТЕМП-АВИА»

С.Б. Жилина, начальник отдела ИТ ПАО АНПП «ТЕМП-АВИА»

РАЗРАБОТКА АЛГОРИТМА ПОСТРОЕНИЯ УНИВЕРСАЛЬНОГО ПОСТПРОЦЕССОРА, ГЕНЕРИРУЮЩЕГО УПРАВЛЯЮЩУЮ ПРОГРАММУ ПОД АНАЛОГИЧНЫЕ СЧПУ

Ключевые слова: универсальный, постпроцессор, Fanuc, iTHC530, CAM, СЧПУ.

В статье рассмотрена проблема использования оригинальных функций при генерации управляющих программ для различных систем численного программного управления (СЧПУ) в механообработке, поставлена задача по унификации постпроцессора, рассмотрены подходы к унификации, выдвинуты требования к универсальному постпроцессору. На предмет выполнения поставленных условий проведен обзор существующих решений и предложен алгоритм создания универсального постпроцессора, позволяющего использовать единый проект механообработки для станков, оборудованных различными системами ЧПУ. Реализация описанных алгоритмов произведена в среде VC++ путем разработки постпроцессора, позволяющего на основе одного проекта механообработки генерировать корректные управляющие программы для различных стоек Fanuc 0/16/18/32, Arumatik, iTHC530 с поддержкой оригинального функционала.

Введение

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

Разработчики САМ признают существование вышеназванной проблемы и частично совершенствуют свои продукты, но никто не может сказать, сколько времени потребуется для их разрешения.

Более эффективный путь - использование одного из нескольких универсальных постпроцессоров, существующих сегодня на рынке. Эти программы совместимы с наиболее популярными САМ-системами и созданы компаниями, которые специализируются в данной области. Универсальные постпроцессоры имеют достаточно инструментов для получения управляющих программ на разнообразные сложные станки и поддерживают специальные функции систем ЧПУ [2].

Возможным решением проблемы использования постпроцессоров было бы принятие станкостроительной промышленностью современного и более жесткого стандарта для NC программирования. Такой стандарт позволил бы программу, разработанную для некоего станка, использовать для любой комбинации «станок - система ЧПУ», независимо от изготовителя. Это фактически устранило бы потребность в разработке постпроцессоров для новых станков, которые соответствуют стандарту.

Как ни странно, такой стандарт уже существует примерно с середины 70-х годов. Известный как ВСЬ, он был создан по инициативе военных ведомств США с тем, чтобы преодолеть проблему несовместимости NC программ со станками в проектах по перемещению производства критических компонентов с одного завода на другой.

Почему BCL стандарт не используется сегодня? Соответствие станков такому стандарту потребовало бы дополнительных затрат, но основная причина - невозможность сотрудничества лидеров станкостроительной промышленности в силу конкурентного характера данной отрасли. Все же несколько производителей станков предлагают в качестве опции соответствие своего оборудования стандарту BCL, но большинство САМ систем не способны генерировать BCL файл [1].

Постановка задачи и методы ее решения

Рассмотрим постановку задачи на примере предприятия ПАО АНПП «ТЕМП-АВИА», хотя все нижеописанное можно обобщить на любое предприятие, используемое СЧПУ разных типов. Для разработки управляющих программ ЧПУ на предприятии используется CAM-система легкого уровня T-Flex ЧПУ 2.5D/3D, под которую за время использования разработано большое количество шаблонов, макросов и пользовательских циклов. Эти наработки позволяют генерировать компактные и гибкие управляющие программы для решения задач связанных с 2.5D, 3D и 3+2D обработкой на обрабатывающих центрах фрезерной и токарной групп.

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

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

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

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

В ходе анализа данной задачи выделено два решения:

- унификация со стороны УП, т.е. отказ от всего специфического функционала обработок присущего любой СЧПУ, и программирование с использованием G-кодов, в соответствии со стандартами DIN 66025/ISO 6983/ГОСТ 20999 [9]. Полученная таким образом программа пригодна к использованию на любых станках-аналогах поддерживающих указанный стандарт;

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

Рис. 1. Потеря универсальности УП при использовании оригинальных функций

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

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

Исходя из вышесказанного, можно обозначить следующие требования к постпроцессору:

- возможность дополнения постпроцессора УП новыми функциями, переменными, расчетными блоками;

- динамические правила формирования кадра, то есть возможность переключения между синтаксисами различных СЧПУ средствами CAM-системы;

- единая среда формирования УП, то есть доступ к любому месту УП во время всего процесса ее создания, что необходимо для размещения номерных ссылок на подпрограммы, отслеживания модальных параметров, а также расчета макро-траекторий (трохоидальное фрезерование) [8].

Рис. 2. Алгоритм формирования УП универсальным постпроцессором

Обзор существующих решений по унификации постпроцессора

Идея унификации постпроцессора в различных ее вариантах существует немногим меньше, чем сами постпроцессоры. На данный момент имеются несколько актуальных направлений унификации, в частности:

- обобщенный постпроцессор;

- универсальный постпроцессор;

- инвариантный постпроцессор.

Рассмотрим особенности каждого подхода.

Обобщенный постпроцессор.

Развитие подхода к унификации со стороны управляющей программы привело к появлению обобщенных постпроцессоров. Если что-либо выходит за пределы ГОСТ 20999-83 [10], то это всегда можно аппроксимировать. УП станет намного длиннее, но в наше время дефицит дискового пространства на станках с ЧПУ - скорее исключение, чем правило.

Примером обобщенного постпроцессора в современных САМ-системах может являться внутренний постпроцессор ПМО Т-Б1ех ЧПУ, в котором имеется базовый набор кадров, используя которые можно с некоторой точностью аппроксимировать любой контур или поверхность.

Однако производители станков в погоне за прибылью внедряют в СЧПУ следующие очень полезные возможности: измерительные циклы, циклы обработки, «умные»

режимы резания, встроенные HSM траектории и прочее, что при использовании обобщенного постпроцессора обычно остается за бортом [6].

Универсальный постпроцессор.

Следующим этапом в унификации со стороны постпроцессора явилось появление универсального постпроцессора (генератора постпроцессоров). Произошло разделение статичного модуля чтения CLData файла и редактируемого свода правил формирования кадров, реализованного в виде UX интерфейса, позволяющего настроить правила преобразования каждого элемента CLData в кадр управляющей программы. В результате имеем интерпретатор с настраиваемой лексикой, который не являясь универсальным «as is», тем не менее обеспечивает быструю доработку (переработку) постпроцессора под новое оборудование (новый синтаксис) [5].

Инвариантный постпроцессор.

Дальнейшее развитие идеи универсального постпроцессора привело к тому, что связь «элементCLD^кадрУП» в своде правил формирования кадра дополнилась идентификатором станка (СЧПУ), превратившись, таким образом, в инвариант вида «элементCLD^модель станка^кадрУП», в результате чего стало возможным для каждого станка, для которого заполнен свод правил, формировать свой вариант управляющей программы при помощи одного и того же постпроцессора [7].

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

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

Алгоритм построения универсального постпроцессора и используемый инструментарий

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

Исходным кодом для универсального постпроцессора, описываемого в работе, послужил воркспейс для разработки индивидуальных постпроцессоров, «custom postprocessor» написанный под VC++ 6.0. Данный конструктор уже содержит библиотеку чтения CLD файла и базовый пакет функций формирования и вывода кадров. Инструментарий Visual Studio обеспечивает возможность программирования процесса формирования управляющей программы на любом уровне.

Решение данной задачи сводится к решению двух подзадач:

- обеспечения формирования синтаксиса с учетом специфики станка-аналога;

- внедрения аналогов оригинальных функций.

Обеспечение формирования синтаксиса с учетом специфики станка-аналога достигается отказом от построчного формирования УП (интерпретации CLD файла, что представлено схематично на рисунке 3), в пользу сборки ее в конце процесса компиляции путем введения соответствующих буферов и шаблонов в соответствии с рисунком 4. Это обеспечит возможность полного контроля всего текста управляющей про-

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

Рис. 3. Алгоритм процесса формирования УП методом интерпретации СЬЭ-файла и структура результирующей УП

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

Рис. 4. Алгоритм процесса формирования УП методом компиляции и структура результирующей УП

В ходе сравнительного анализа проектов механообработки выявлены следующие применяемые оригинальные функции:

1) задание частоты вращения шпинделя через скорость резания;

2) автоциклы (измерительные, фрезерные, сверлильные, а также SL цикл трохои-дального фрезерования);

3) применение прямого кодирования в виде блоков G-Code в САМ-проекте. Диаграммы использования различных функций в управляющих программах с

учетом специфики производства представлены на рисунке 5.

команды

Рис. 5. Функциональное сравнение УП для разных СЧПУ

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

1. Задание частоты вращения шпинделя через скорость резания

В СЧПУ ¡ТНС530 имеется встроенная функция задания частоты вращения шпинделя (ЧВШ) через скорость резания (и связанные с ней функции подачи на зуб и наоборот), что дает возможность использовать в обработке инструмент с диаметром отличным от заданного без коррекции режимов резания [3].

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

Предлагается рассчитывать эти параметры в обычной форме (обороты в минуту) с учетом параметров заданного инструмента. Результирующая частота является эквивалентной назначенной при формировании проекта ¡ТНС530. Для реализации функции пересчета был разработан блок обратного перерасчета режимов резания. Исходными данными для расчета режимов резания в ¡ТНС530 является проект механообработки и файл таблицы инструментов.

Если проект механообработки экспортируется из ¡ТНС530, то в нем есть все исходные данные для пересчета. На рисунке 6 представлен алгоритм блока пересчета.

Рис. 6. Блок-схема модуля пересчета частоты вращения шпинделя и рабочей подачи

2. Автоциклы

Автоциклы (как циклы обработки, так и циклы измерения) представляют собой наиболее часто применяемые оригинальные функции стойки iTHC530, широко используемые в качестве инструментария для повышения как скорости разработки, отработки и редактирования управляющей программы, так и точности обработки, например, измерительных циклов [4], реализация которых на станке-аналоге требует написания подпрограмм на макроязыке (Makro B).

Создание макропрограммы-аналога, рассмотрено на примере цикла обработки паза, с представленной на рисунке 7 блок-схемой обработки паза с отдельно вынесенной на рисунок 8 блок-схемой обработки слоя, и ниже - алгоритмом обработки паза.

Алгоритм обработки паза:

1. Инструмент позиционируется в центр.

2. Подходит на первую безопасную высоту.

3. Врезается (маятниковое вертикальное винтовое).

4. Обрабатывает слой.

5. Отводится на первую безопасную высоту.

6. Если нужная глубина не достигнута, GOTO2.

7. Отводится на вторую безопасную высоту.

8. Инструмент позиционируется в центр.

9. Подходит на первую безопасную высоту.

10. Если указан припуск на стенку, то обрабатывается стенка.

11. Если указан припуск на дно, то обрабатывается дно.

12. Отводится на вторую безопасную высоту.

Рис. 7. Блок-схема обработки паза Блок-схема обработки слоя вынесена отдельно и представлена на рисунке 8.

Рис. 8. Блок-схема обработки слоя

В результате при разработке макропрограммы все расчетные блоки вынесены в макрос, постпроцессор считывает и назначает только переменные, сохраняя, таким образом, структуру цикла ¡ТНС530, Заголовок цикла формируется из массива переменных, тело цикла, состоящее из параметрического описания формообразующих движений, однократно записывается постпроцессором в конец УП.

3. Применение прямого О-кода в САМ-проекте (разработка обработчика О-кодов)

Сложность передачи из Бапио в ¡ТНС530 заключается в том, что некоторые функции делятся на несколько технологических траекторий, поэтому обработчик О-кодов должен обладать буфером и набором шаблонов, чтобы выдавать результат в том виде и в той последовательности, которая применяется при написании родных для него программ. Например, поворот плоскости, формируемый одним кадром в ¡ТНС530, занимает три кадра в Бапио. Алгоритм написания обработчика О-кодов представлен на рисунке 9.

Буфер

М11

Б9Оа$Р56СЭДВ90

Формирований кадра УП запулен не буфера

Рис. 9. Алгоритм написания обработчика О-кодов

Заключение

1. Поставлена и решена задача обеспечения совместимости проектов механообработки для станков с различными системами типа Бапио, ¡ТНС530.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2. Разработаны алгоритмы обработки проектов механообработки с реализацией недостающих функций за счет ввода подсистем анализа САМ-проекта и реализации шаблонов вывода управляющей программы в проекте постпроцессора;

3. На основе предложенных алгоритмов разработан универсальный постпроцессор на языке VC++, позволяющий использовать один САМ-проект для механообработки на различных СЧПУ Fanuc 0/16/18/32, Arumatik, iTHC530 с поддержкой оригинального функционала, что позволяет имеющиеся САМ-проекты в максимально сжатые сроки переводить на iTHC530 без потери качества.

Список литературы:

[1] BCL-industrial CNC standart, F. Mahieddine, D. C. Webb, Computer-Aided Engineering Journal. Volume 7 Issue 2. Institution of Electrical Engineers Stevenage. UK. Apr. 1990. - Pages 54-56.

[2] David F. Schultz «What's Wrong With Postprocessors?». Numerical Control Computer Sciences. Irvine. California. USA. - 4(1)1998.

[3] Руководство по программированию. Обрабатывающий центр Mycenter - HX400iH. Kitamura Machinery Co. LTD. 2012. - Japan 350 c.

[4] Dr. Johannes Heidenhain Руководство пользователя Программирование открытым текстом Heidenhain iTNC530. Heidenhain GmbH. 2009. Germany.

[5] Сергеев О.С. Автоматизация подготовки управляющих программ для станков с числовым программным управлением // Известия Самарского научного центра РАН, - 2012. т. 14. -№4(2).

[6] Ловыгин А.А. Современный станок с ЧПУ и CAD/CAM система. - Москва: ДМК, 2012. -279 с.

[7] Филиппович К.В. Идеология постпроцессирования в современных CAD/CAM-системах. -Пермь, ООО «Евразия Лимитед», 2000. - 60 с.

[8] Sinha, S. K.CNC Programming using Fanuc Custom Macro B. McGrawHill Companies 2010. -USA - 288 c.

[9] Аверченков В.И., Жолобов А.А., Мрочек Ж.А., Аверченков А.В., Шкаберин В.А., Терехов М.В., Левкина Л.Б. Автоматизация подготовки управляющих программ для станков с ЧПУ учеб.пособие для вузов. - Брянск. БГТУ, 2010. - Ч.2. - 216 с.

[10] ГОСТ 0300 20999-83. Устройства числового программного управления для металлообрабатывающего оборудования. Кодирование информации управляющих программ. - Москва: Изд-во стандартов, 1983. - 29 с.

DEVELOPMENT OF STRUCTURE ALGORITHM FOR VERSATILE POSTPROCESSOR TO CREATE CONTROL PROGRAM FOR ANALOGOUS NUMERICAL CONTROL SYSTEMS

A. V. Bichik, O.M. Egorov, SB. Zhylina

Key words: versatile, postprocessor, Fanuc, iTHC530, CAM, CNC system

The article considers the problem of using original features in generating control programs for different numerical control systems (CNC) in machining, presents the algorithm of versatile post-processor and considers approaches to versatility. To verify the implementation of assigned conditions, analysis of the existing solutions is presented. Algorithm of generating versatile post-processor, allowing to apply the unified project for machining process on different CNC-machines is proposed. Implementation of described algorithms is performed in VC++ by development of post-processor on the basis of a project for machining process to generate proper control programs for different frames Fanuc 0/16/18/32, Arumatik, iTHc530, supporting original functional.

Статья поступила в редакцию 10.10.2016 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.