Использование в Linux САПР, ориентированных на машиностроение
Владимир Кореньков, Киев, Украина, кафедра Технологии машиностроения НТУУ «КПИ», vnkorenkov@gmail.com
LVEE 2008
Рассматриваются варианты использования в ОС Linux систем автоматизированного проектирования, работающих с трехмерной графикой.
какие бывают САПР
Выбирая тот или иной программный продукт, следует четко представлять круг решаемых им задач:
- если производство не является, мягко говоря, наукоемким, то вполне достаточным будет использование лишь 2D САПР (большинство мелких частных предприятий машиностроительного профиля, деревообработки, раскроя стройматериалов и т.п., довольствуются простыми эскизами, зачастую полученными от самих заказчиков);
- 3D САПР, хотя и могут иметь в своем составе инструментарий для оформления конструкторской документации, предназначены для интеграции всего комплекса инженерных пакетов. Если таковые на предприятии отсутствуют, то использование 3D САПР лишь для создания рабочих чертежей является неоправданным.
Ниже речь пойдет, в основном, о последних системах, поскольку двухмерные «электронные кульманы» достаточно просты по своей сути и уже давно существует целый ряд AutoCAD-подобных: QCAD, Medusa4 (имеется свободно распространяемая версия), JCad, PythonCAD и др.
Определившись с классом систем, необходимо выяснить место, которое будет занимать инженер в процессе подготовки производства. Как правило, это:
1. Технический дизайн.
2. Сугубо конструирование (локальные задачи).
3. Решение технологических задач.
4. Коллективная работа с использованием САПР.
рабочее место инженера
С сожалением следует констатировать, что в Linux сегодня практически отсутствуют свободно распространяемые пакеты САПР, развитые на таком же высоком уровне, как офисные, медиа и пр. Поэтому в сложившейся ситуации видятся следующие пути решения проблемы.
использование свободно распространяемых 2D/3D CAD, изначально создаваемых для Linux
Парадокс состоит в том, что формирование систем трехмерной (да и вообще) графики началось на базе UNIX. Альтернативная ОС перехватила лидерство лишь в 90-х да и то по причине удешевления и повышения производительности аппаратного обеспечения Intel. Ранее каждое предприятие, учебное заведение или просто энтузиасты писали для своих локальных задач софт, который со временем часто становился публичным. В результате имеется порядка сотни проектов, которые так и не объединились «под общей идеологией».
Среди достаточно развитых и поддерживаемых проектов сегодня лидирующие позиции занимают: GraphiteOne, SALOME, FreeCAD (by Jürgen Riegel), K-3D, Varkon parametric 2D/3D CAD и др.
Некоторые из этих программ вошли в специализированный дистрибутив CAELinux. Однако при их использовании могут возникнуть следующие трудности:
- недостаточно развитая функциональность систем;
- отсутствие поддержки национальных стандартов (наверное одна из основных проблем, т.к. нормоконтроль еще никто не отменял);
- отсутствие библиотек; развитой сети обмена моделями; ограничение функций импорта/экспорта (из-за коммерциализации соответствующих форматов) и пр.
- человеческий фактор.
По этим причинам давать какие-либо рекомендации неуместно, в каждом конкретном случае необходимо соизмерять потребности предприятия с возможностями софта.
запуск свободно распространяемых программ, написанных для альтернативной ОС, с помощью проекта wine
От специалистов достаточно часто можно слышать, что «графические и инженерные системы стоят очень больших денег и, по крайней мере, стоимость ОС при их покупке можно в расчет не принимать» или же «экономически выгодней работать в альтернативной ОС, поскольку там есть весь необходимый софт, что очень важно для сокращения времени подготовки производства». Однако существует большое количество графических пакетов, с которыми многие хотели бы работать независимо от ОС. Среди свободно распространяемых более-менее серьезных САПР можно назвать следующие: Delcam PowerSHAPE-e 3D, Solid Edge 2D, MicroStation PowerDraft 2D(Bentley).
Есть еще одна ниша – учебные версии. Некоторые лидеры САПРостроения выпускают в свободный доступ урезанные версии своих программ. Например, учебная версия T-Flex – это полнофункциональная и полностью соответствующая требованиям ЕСКД система 2D/3D моделирования, которая имеет всего пару ограничений, касающихся в основном обмена данными. Если предприятие активно не обменивается с внешним миром конструкторской документацией, то для внутренних нужд ее более чем достаточно.
Не будем философствовать о политике компаний и вдаваться в выяснение причин их перехода на Linux; отметим лишь, то, что вопреки техническим трудностям, использование проекта wine оказывается для инженера наиболее простым, быстрым и «безболезненным» способом начать полноценно работать в новой для него среде.
адаптация популярных дизайнерских пакетов для создания технических моделей
На сегодняшний день системы трехмерной графики, ориентированные на создание фотореалистичных изображений и анимации имеют достаточно развитую функциональность. Поэтому при написании новой системы можно было бы ориентироваться на адаптацию к нуждам технической САПР уже существующих дизайнерских пакетов. В пользу данного предположения, можно привести аргумент, что практически все САПР позиционируются на рынке как гибридные, т.е., содержащие модули не только твердотельного, но и поверхностного моделирования.
Яркий пример тому пакет Blender 3D. Около 5 лет назад была предпринята попытка создания BlenderCAD (к сожалению, не увенчавшаяся успехом). Однако в настоящий момент Blender 3D имеет весь набор команд по созданию технических моделей (функции создания конструктивных элементов, массивов, булевы операции и пр.) и как для полноценной 3D САПР пакету не хватает разве что явной параметризации.
Активный интерес к подобным адаптациям проявляется за рубежом. Так, сайт www.rab3d.com содержит примеры и подробное руководство по применению Blender 3D в техническом моделировании.
Таким образом, если речь идет о создании достаточно серьезной 2D/3D САПР, то, по нашему мнению, это самый быстрый и простой способ.
использование свободно распространяемых ядер геометрического моделирования
Писать «с нуля» САПР достаточно тяжело. Поэтому в мировой практике принято деление на разработчиков графических ядер и компании, занимающиеся написанием интерфейсов для использования функций этих библиотек (например, на ядре Parasolid работают SolidWorks, SolidEdge, T-Flex…).
Среди ядер геометрического моделирования есть и открытые. Приведем лишь два примера: OpenCascade и Coin3d.
Следует отметить, что написание практически с чистого листа САПР - достаточно сложная и трудоемкая задача. Поэтому оправданным данный подход можно назвать лишь в случае «специфических требований» предприятия к софту (т.е. написания функций, которых нет ни в одной из существующих или доступных по приемлемой цене систем).