Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции Т / Л16 Роль геометрического ядра в САПР

.pdf
Скачиваний:
53
Добавлен:
06.02.2016
Размер:
617.12 Кб
Скачать

Место и роль геометрического ядра в современной САПР

Баранов Л.В.

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

Внастоящее время сложилось единое понимание основной архитектуры современной трехмерной параметрической САПР. В частности, в основе любой системы лежат два важных компонента – параметрическое и геометрическое ядра. Существуют разные взгляды на процедуру взаимодействия этих двух компонент. Главное теоретическое расхождение здесь касается того, какой компонент первичен – геометрический или параметрический. В первом случае мы получаем систему геометрического моделирования, во втором – систему параметрического моделирования, то есть систему, базирующуюся на конструкторскотехнологических элементах (feature-based). Первому принципу соответствуют системы CATIA

иUnigraphics, второму – SolidWorks, Solid Edge, Pro/ENGINEER. Конечно, это деление достаточно условно и приведено здесь лишь как иллюстрация того, какие подходы используются сегодня архитекторами САПР при разработке своих систем. На практике иногда имеет место архитектурный симбиоз разных подходов, но идеология любой системы и, как следствие, её функциональность и «потенциал развития» во многом определяется именно архитектурными решениями разработчиков.

Рис.1 T-FLEX CAD на ядре Parasolid позволяет создавать большие сборки и сложные модели

Рассмотрим подробнее ситуацию с геометрическими ядрами, оставив пока в стороне геометрические процессоры. О том, какие промышленные ядра сейчас присутствуют на рынке, написано достаточно много, так что не будем повторяться. Интереснее другое. История САПР насчитывает уже, по меньшей мере, сорок лет. За это время практически все известные фирмы неоднократно предпринимали попытки разработки собственных ядер. Специалисты, работающие в САПР не один десяток лет, помнят Unigraphics на собственном ядре, первые версии продуктов Autodesk на ядрах, отличных от ACIS – был же Autodesk Mechanical Extension

(AME)! Не говоря уже о том, что ядра поменяли SolidWorks – со своего на Parasolid и CADKEY - со своего на ACIS. Список подобных примеров довольно обширен. В то же время не приходят в голову примеры, так сказать «обратных замен» - отказа от готового ядра в пользу собственного (недавний пример Autodesk с отказом от ACIS в пользу своего ядра - ShapeManager не показателен, потому что пока это только смена вывески). Возникает резонный вопрос: почему это происходит, по какой причине крупные фирмы идут на значительные затраты, чтобы заменить собственную геометрическую базу на покупное ПО? Причин тому много, однако самая главная заключается в том, что это экономически выгодно и в конечном итоге с лихвой окупает все затраты по переходу. В наукоемкой продукции, каковой является геометрическое ядро, действуют те же тенденции, что и в машиностроительном производстве.

Рис.2 Параметрический массив позволяет размножать тела с определенными свойствами. В данном примере каждое тело ориентировано по нормали в каждой точке поверхности. Количество копий каждого пояса вычисляется в зависимости от его диаметра, чтобы обеспечить заданное расстояние

Заказать узел у завода, который на них специализируется, гораздо дешевле, чем производить все на одном предприятии. Входит ли стоимость заказного агрегата в стоимость готовой продукции? Безусловно, но она тем меньше, чем больше объемы производства у субподрядчика, и в любом случае существенно меньше содержания целого завода с малыми сериями. В случае геометрических ядер разница в затратах становится ещё больше, а помимо них в дело вступают и другие факторы, как-то: тестирование на сотнях тысяч рабочих мест, учет пожеланий от заказчиков разных областей и т.д. То есть начинает срабатывать феномен промышленного стандарта – человек, проектирующий сложное и ответственное оборудование, будь то двигатель самолета или системы аварийной защиты реакторов, должен быть уверен, что ядро работает с нужной точностью на всем спектре его задач и что до него уже многие пользователи это проверили, а изделия, полученные после моделирования, изготовлены и работают в реальных условиях. Трехмерное моделирование радикально отличается от подготовки чертежей на компьютере именно тем, что в оперативной памяти возникает некий электронный образ изделия, по которому будет работать изготавливающий станок, именно этот образ будет основой расчетной модели на прочность и жесткость. Это совсем другой уровень технологии, другой уровень требований и, как следствие, другой уровень трудозатрат на создание ядра. Все современные промышленные ядра это - 300-600 человеко-лет работы коллективов из десятков, а то и сотен квалифицированных инженеров и математиков, собранных со всего мира в 4-5 центрах разработки. Может быть не все знают, что основная группа разработки Parasolid превышает 60 человек, в Spatial Technology один только алгоритм

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

Рис.3 С помощью операции «Тело с параметрическим изменением профиля» можно создавать тела со сложной геометрией

Поэтому при рассмотрении вопроса о том, какое ядро использовать в качестве соответствующего компонента для системы T-FLEX CAD 3D, было очевидно, что попытки повернуть время вспять малопродуктивны. Базироваться надо на известных ядрах и предоставлять пользователям системы максимальную функциональность в области моделирования. Такое решение основано на убежденности, что пользователи системы, вопервых, не должны платить за исследовательский пыл разработчиков, которым вдруг захотелось пройти весь тернистый путь разработки нового ядра с функциями уже существовавших на момент начала работы ядер, а во-вторых, не должны выступать в роли «подопытных» - ведь если что-то пойдет не так, работу придется начинать сначала. Согласитесь, трудно предположить, что у людей, до той поры не разработавших ни одного промышленного ядра, все получиться правильно. Дело в том, что известные ядра созданы не на пустом месте. Костяк подобных команд составляют специалисты, делавшие ядра CATIA, Unigraphics, CADDS, - набившие шишки, но получившие богатый опыт. Именно наличие уникальной команды позволило в свое время PTC довольно быстро разработать свое ядро, которое сейчас известно как Granite One. Начинали же они одновременно с ShapeData – разработчиком первых версий Parasolid и STI – разработчиком ACIS почти 20 лет назад - в 80-е годы. А до этого было малоизвестное ядро Romulus…

К сожалению, в советский период в России так и не было создано свое твердотельное ядро, а строить здание без фундамента можно лишь тогда, когда не собираешься в нем жить…

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

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

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

Поэтому поверхностный взгляд на функциональность различных САПР через призму внутренних ядер, на которых базируются системы, имеет мало общего с реальностью. Ведь заявления, что ядро ACIS больше предназначено для решения задач поверхностного моделирования, в то время как Parasolid – твердотельного, для специалиста значит примерно то же, что автомобили BMW лучше ездят по мокрым дорогам, а Mercedes - по сухим. Каждому понятно, что в обоих случаях речь идет о хороших машинах, а поведение их на дороге - на совести водителя.

Рис.4 Объединение геометрического ядра Parasolid с параметрическим ядром T-FLEX CAD приводит к эффективным проектным решениям

Как отмечалось выше, любая система ориентирована на определенный класс задач и развивается вместе с этим набором задач. Практика промышленного использования систем показывает, что при всей мощности стандартных ядер существуют различные практические задачи, которые не решаются обычной функциональностью ядер. В качестве простого примера можно привести операцию построения тела по сечениям с заданным трехмерным путем – траекторией центра сечений. В настоящее время такая функциональность отсутствует в Parasolid, однако этот факт не помешал тому, что в системах SolidWorks и T-FLEX CAD 3D

данная функция есть, хотя и работает по разным алгоритмам. Ещё один пример: в T-FLEX CAD 3D версии 7.1 по просьбам заказчиков, проектирующих обувь, была сделана функция «постелить профиль на набор граней табулированного цилиндра без искажений». Такой функции нет в Parasolid, а также в системах «среднего уровня», она имеется только в «больших» системах типа CATIA, Unigraphics, Pro/Engineer. Однако заказчикам она была нужна. То же касается пружин с поджатием и шлифованием и некоторых других функций. Спору нет – быстрое и качественное решение подобных задач во многом стало возможным благодаря мощным базовым инструментам, предоставляемым ядром, но основные алгоритмы все равно разрабатывались программистами и математиками фирмы «Топ Системы».

Есть ещё один вариант подъема решаемых задач на качественно новый уровень - за счет тесной интеграции параметрического и геометрического ядер, когда в ходе построения геометрической формы используется параметрически изменяемая геометрия. Примером таких построений служат «параметрический путь», «параметрический массив» и «параметрическое тело по траектории», реализованные в T-FLEX CAD.

Представленный на рис.4 пример компании Digital Marine Technology, выполненный в T- FLEX CAD 3D является полностью параметрическим - изменяя ширину, длину и высоту борта, а также некоторые другие параметры, можно автоматически получить новые обводы судна. Якорь и якорная ниша также подбираются автоматически.

Можно задать вопрос: «Все ли возможности Parasolid использует T-FLEX CAD?». Ответ на него следует из всего вышеизложенного - T-FLEX CAD использует всё то, что позволяет решать задачи пользователей, применяющих его в своей работе. В конце концов, вряд ли конечного пользователя должна интересовать внутренняя технология САПР. Назначение системы – во-первых, помогать пользователю решать задачи просто и эффективно, а во-вторых, динамично расти вместе со сложностью пользовательских задач. Именно в этом и состоит главное направление развития T-FLEX CAD. Что до геометрического ядра, то чем оно надежнее, быстрее и точнее, тем больше гарантий, что в созданном изделии не будет возникать проблем. Как будет называться ядро, может быть, и не столь важно, важно лишь точно знать, что реакторы, спроектированные при помощи этой математики, работают, а самолеты летают.