Создание библиотеки пневмо- и гидроцилиндров в T-FLEX CAD
Автор: Баукова Надежда Геннадиевна, Ксенофонтов Павел Константинович
Баукова Надежда Геннадиевна, Ксенофонтов Павел Константинович
ЗАО «Топ Системы»
Заказ на создание библиотеки пневмо/гидроцилиндров поступил в «Топ Системы» от канадской фирмы VirtualCad (http://www.virtualcad.com), специализирующейся, в числе прочего, на разработке Интернет-каталогов для различных производителей машиностроительного оборудования. Библиотека предназначалась для Интернет-каталога американской фирмы Lehigh Fluid Power (http://www.lehighfluidpower.com), одного из ведущих американских производителей пневмо/гидроцилиндров, и должна была включать в себя большую часть ассортимента компании.
По замыслу заказчика, будущий Интернет-каталог призван был повысить уровень поддержки клиентов фирмы Lehigh. Планировалось, что каталог будет работать следующим образом: заказчик, зайдя на сайт фирмы и задав в специальной форме параметры любого из пневмоили гидроцилиндров, тут же получает его 3D-модель и 2D-чертежи в удобном для него формате, для просмотра или использования их в процессе собственного проектирования. Генерация требуемой модели должна осуществляться по обозначению изделия, которое определяет его серию, исполнение, диаметр, диаметр штока, длину изделия, рабочий ход, наличие отверстий для рабочей жидкости/газа и тип конца штока (или штоков).
Почему же VirtualCad обратилась с этим проектом именно в «Топ Системы», а не к пользователям или разработчикам одной из крупных иностранных САПР? Ответ на этот вопрос станет очевиден, если мы рассмотрим, что за библиотеку предстояло создать.
Сайт компании Lehigh с “виртуальной” 3D-моделью пневмоцилиндра |
В качестве исходных данных для создания библиотеки были предоставлены каталоги фирмы Lehigh, охватывающие 7 серий пневмо/гидроцилиндров.
Каталоги включали в себя информацию о вариантах исполнения изделий, типоразмерах, и др. Помимо pdf-каталогов, была предоставлена база данных всех размеров в формате Excel. Каждая серия имела большое количество исполнений. Например, одна из серий включала в себя 20 основных исполнений, половина из которых могла быть выполнена в двух вариантах (шток с одной стороны и шток с двух сторон). Помимо этого, в зависимости от диаметра изделия в пределах одного исполнения тремя различными способами могло меняться количество крепёжных отверстий, стяжек и других конструктивных элементов. У каждого варианта гидроцилиндра этой серии существовало 4 исполнения конца штока и 4 варианта исполнения отверстий для подключения гидравлики. Итого получается (20+10)*4*3*4, то есть более 1000 отдельных исполнений только для одной серии, а таких серий было, напомним, 7. При этом ещё следует учесть, что длины гидроцилиндров могли быть фактически любыми!
Одна из страниц общей базы данных ассортимента фирмы Lehigh в формате Excel |
Создание библиотеки моделей с подобными характеристиками требовало обязательного использования параметризации на достаточно серьёзном уровне, так как создать отдельную 3D-модель на каждый вариант пневмо/гидроцилиндра было просто невозможно. Кроме того, просто напрашивалась мысль о разделении конструкции на параметризированные конструктивные элементы. К таковым в данном случае можно отнести не только отдельные детали, но и части деталей, меняющие свою геометрию или положение при изменении начальных данных. Т.е. требовалось, чтобы система, в которой будет создаваться библиотека, поддерживала возможность сбора отдельных деталей и всей конструкции из разрозненных частей в единую 3D-модель. А также позволяла автоматически генерировать чертежи на полученную 3D-модель.
Таким образом, на решение о выборе базовой системы для исполнения заказа повлияли следующие факторы:
- наличие в T-FLEX CAD мощной и вместе с тем чрезвычайно простой в применении параметризации;
- механизм 3D-фрагментов, являющийся одной из характерных особенностей T-FLEX CAD. Механизм фрагментов позволяет использовать в 3D-модели (так называемой “сборочной 3D-модели”, или “3D-сборке”) геометрию, хранящуюся во внешних файлах. В сборочную 3D-модель такая геометрия вставляется с помощью ссылок на файлы-фрагменты. Со вставленной таким образом геометрией в дальнейшем можно работать как с обычным телом, т.е. использовать её при создании булевых и любых других операций;
- возможность работы с базами данных – внутренними и внешними;
- наличие мощного API – для организации в дальнейшем взаимодействия библиотеки и Интернет-каталога.
Итак, работа над библиотекой началась. Для тех, кто мало знаком с принципами работы в T-FLEX CAD, уточним, что создание библиотеки не требовало навыков программирования. Библиотеки представляют собой набор обычных моделей и для их создания достаточно только хорошего знания T‑FLEX CAD.
После тщательного анализа исходных данных было принято решение использовать механизм фрагментов (т.е. выделения элементов конструкции в отдельные файлы) везде, где это только возможно, пусть и за счет усложнения внутренней структуры и логики основной сборки-модели.
Структура одной из полученных 3D-моделей библиотеки |
В результате были созданы три основных файла – главные модели, охватывающие весь заданный ассортимент изделий. Эти файлы представляют собой сборочные модели сложной структуры. Помимо трёх главных файлов, библиотека включает в себя файлы необходимых фрагментов. Количество 3D-моделей удалось сократить до трёх благодаря тому, что изделия некоторых серий имеют схожую конструкцию, только изготавливаются из разных материалов. Поэтому каждая 3D-модель описывает сразу несколько серии изделий.
Три модели, описывающие весь заданный ассортимент пневмо/гидроцилиндров |
При проектировании структуры итоговых моделей был учтён тот факт, что все основные исполнения (в рамках одной или нескольких близких по конструкции серий) в своей основе одинаковы. Различия между ними состояли в наличии/отсутствии различных отверстий, выступов, пазов и т.п.
Упрощённая схема созданной библиотеки |
Поэтому в главных файлах были созданы лишь те построения, которые являются общими для всех описываемых данным файлом изделий. Все “отличительные черты” вынесены в отдельные файлы и затем вставлены в результирующие модели как фрагменты. Для того, чтобы конечная модель сборки была полноценной (т.е. состояла из деталей, а не набора конструктивных элементов), применялись булевы операции. Они позволяют собирать из отдельных фрагментов требуемые детали.
При создании модели понадобилось управлять набором фрагментов, появляющихся в главной 3D- модели для каждого конкретного исполнения изделия. Для этого применялись два метода.
В главных файлах для управления составом модели использовался метод подавления. Т.е. в зависимости от заданного обозначения изделия часть фрагментов в модели подавляется – скрывается с экрана и исключается из расчёта 3D-модели. Таким образом, на главную модель нанесены все фрагменты, которые могут понадобиться для получения того или иного варианта изделия, но в каждый момент времени часть из них подавлена. Необходимость подавления указывается заданной в параметрах фрагмента переменной. Значение переменной определяется условиями, описанными в редакторе переменных T-FLEX CAD.
Один из фрагментов для модели пневмоцилиндра |
Набор фрагментов второго уровня, т.е. входящих не в саму главную модель, а в один из используемых в ней фрагментов первого уровня, регулировался с помощью переменных имён фрагментов. Т.е. имя фрагмента в модели указывалось с помощью текстовой переменной, отражающей имя файла-фрагмента. Переменная меняла своё значение в зависимости от заданного внешнего условия (т.е. обозначения данного пневмо/гидроцилиндра). Таким образом, например, организовано изменение способа исполнения концов штока.
Добавление конструктивных элементов для разных исполнений |
Размеры для каждого исполнения подбираются по обозначению изделия и базе данных, хранящейся в каждом файле. В принципе, можно было построить модель, вынеся базы данных во внешние файлы – это привело бы к уменьшению размера файлов T-FLEX CAD, а также позволило бы оптимизировать процесс редактирования базы данных. Однако заказчика вполне удовлетворил и реализованный способ хранения данных.
Условие подавление фрагмента определено переменной, заданной в редакторе переменных |
Для каждой главной модели были созданы требуемые чертежи с видами и разрезами, которые автоматически изменяются при изменении 3D модели. Благодаря имеющейся в T-FLEX CAD возможности хранить 3D-модель и 2D-чертежи в одном документе было обеспечено точное соответствие 3D-моделей и чертежей. Кроме того, хранение чертежей в одном документе с 3D-моделью позволяет уменьшить количество файлов, входящих в библиотеку.
Имя фрагмента указано текстовой переменной, заданной в редакторе переменных |
Подобный способ организации библиотеки позволил добиться следующих преимуществ:
Небольшие размеры итогового проекта. Созданная библиотека содержит три главных модели плюс около 50 файлов фрагментов для каждой из них, т.е. менее 200 файлов на весь описываемый ассортимент изделий. А вся библиотека в целом занимает менее 100 МБ.
База данных одной из моделей |
Малое количество времени, потребовавшееся на доработку моделей и на исправление ошибок. Например, для того, чтобы добавить фаску на отверстие, которое есть во всех исполнениях, но находится в них в разных местах, достаточно открыть файл фрагмента, содержащего это отверстие, добавить туда фаску и все исполнения исправятся автоматически. Ещё один пример: ошибка, вкравшаяся в конструкцию или в базу данных, легко находится благодаря тому, что она будет проявляться либо во всех типоразмерах определенного исполнения (ошибка в 3D-модели), либо во всех исполнениях определенного типоразмера (ошибка в базе данных).
Чертёж гидроцилиндра |
Созданная модель была сдана заказчику и одобрена им. Заняла вся работа около двух с половиной месяцев силами одного человека. В дальнейшем с помощью API T-FLEX CAD самим заказчиком было создано программное обеспечение, обеспечивающее взаимодействие полученной модели и собственно Интернет-каталога. Созданная ими программа считывает параметры, введенные пользователем на сайте, запускает T-FLEX CAD с одновременным открытием в нём нужной 3D-модели, передаёт введённые пользователем параметры в эту модель, и запускает пересчёт 3D-модели и 2D-чертежей с заданными параметрами. Далее эта же программа выгружает полученную модель пользователю в том формате, который ему удобен (Parasolid, STEP, DWG, DXF, IGES, Rhino и др.).