Обработка в Unigraphics моноколес (импеллеров)

После нескольких попыток обработать поверхность лопаток моноколеса в Unigraphics с использованием штатных стратегий (Sequential Milling, Variable Contour) возникла идея написать свое UG\Open приложение, которое облегчило бы эту работу. Не сказать, что те попытки были совсем безуспешными, но к стратегии UG для обработки подобных изделий не совсем приспособлены. Стратегия Swarf, которая якобы прикладывает максимально боковую поверхность инструмента к обрабатываемой поверхности, делает это плохо. Sequential Milling - вещь в себе, с коническим инструментом Ball Mill вообще не работает, и у прикладываемого инструмента видит только условное колечко Ring, которое и пытается контролировать. В результате, обработку приходится вести сферическим концом конического инструмента и для получения требуемого качества поверхности необходимо сделать огромное количество проходов, так как радиус инструмента Довелось посмотреть обработку моноколес в программном обеспечении MAX5 (NREC Company), надо отдать должное - делает этот софт обработку очень красиво, и основные подходы подсмотрели в обработке именно там.

Прежде всего - несколько замечаний об одном устойчивом мифе в головах многих технологов-программистов. Миф настолько устойчив и типичен, настолько распространен и трудно искореним, что встречаясь с этим предубеждением на новом предприятии уже не приходится удивляться. А собственно миф состоит в следующем: "Поверхность лопатки линейчатая, поверхность коничесого инструмента - линейчатая, стало быть - можно эти линии образующих совместить!" Светлая идея, но такая возможность существует не для всех линейчатых поверхностей! Грубо говоря, к конической поверхности приложить конический инструмент по линиям образующих можно, в ряде случаев - нет.

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

В основе алгоритма, рассчитывающего положение инструмента на обрабатываемой поверхности - метод деления пополам. То есть, есть диапазон изменения положения оси инструмента между нормалью к поверхности и вектором образующей. В каждом из положений производится проверка на пересечение инструмента с обрабатываемой поверхностью, и диапазон сокращается вдвое, так до тех пор, пока "коридор" этого диапазона не сократится до 0.001 градуса (более чем достаточно). Остальное - дело техники.

Вот как происходит работа с приложением:

 

 

1. Создается операция MillUser (при этом неважно, из какой группы операций, можно создать из раздела Planar Mill). В окне "Точка входа обработки" указываете путь к DLL-библиотеке, которая и будет производить расчет траектории.

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

2. В предложенном меню последовательно выбираем все пункты (см. дальше)

2.1 "Обрабатываемые поверхности"

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

2.2 "Направление резания"

Для каждой из поверхностей указываете направление резания из условия сохранения попутного фрезерования (например).

2.3 "Вектор SWARF"

На этом этапе указываете тот вектор, к которому инструмент должен стремится максимально близко "привалиться"

Далее - последовательно задаются параметры инструмента, режимы резания, моменты включения и выключения охлаждения и т.п. Последнее нажатие - "Завершение ввода параметров"

Операцию можно генерировать.

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

Вот результат работы приложения..

На главную страницу