UA   EN
ДонНТУ   Портал магистров

Реферат по теме выпускной работы

Внимание! На момент написания данного реферата магистерская работа не завершена. Предполагаемая дата завершения – май 2022 г. Полный текст работы, а также материалы по теме могут быть получены у автора или его руководителя после указанной даты.

Содержание

Введение

CATIA получила широкое распространение в промышленности и используется различными крупными производителями при проектировании транспортных средств, установок, машин.

Инновации в области программного обеспечения САПР продолжают улучшать качество проектирования за счет большей точности и сокращения ошибок проектирования. Программное обеспечение САПР также способно улучшить технологию создания геометрических объектов с помощью создания шаблонов.

1. Актуальность темы

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

В связи с этим расширение функциональных возможностей подсистемы геометрического проектирования в САПР CATIA должно улучшать работу проектировщика за счет уменьшения затраченного времени на создание геометрических объектов при проектировании сложных объектов и иметь удобный пользовательский интерфейс.

2. Цель и задачи исследования, планируемые результаты

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

Основные задачи исследования:

  1. анализ возможных способов создания шаблонов в САПР CATIA;
  2. анализ инструментов системы для автоматизации проектирования;
  3. представление общих методов решения поставленной задачи;
  4. разработка структуры шаблонов для синтеза геометрических объектов;
  5. обоснование требований к создаваемой системе, а также к входным параметрам, вводимым пользователем;
  6. описание алгоритма работы программы;
  7. реализация структуры шаблонов для синтеза геометрических объектов;
  8. представление организации логического вывода;
  9. исследование эффективности применения технологии шаблонов.

Объект исследования: реализация надстройки над САПР CATIA.

Предмет исследования: агрегация прикладных программных интерфейсов графики и интеллектуальных методик проектирования в САПР CATIA.

3. Обзор исследований и разработок

3.1 Обзор международных источников

Katzenbach A., Bergholz W., Rolinger A. в своей работе Knowledge-based Design — An Integrated Approach [1] представляют методологическую концепцию (шаблоны), которая стандартизирует процесс проектирования и его последующие процессы. Также представлены и обсуждены результаты сопутствующего психологического исследования принятия пользователями.

Gruber T. в своей статье The role of common ontology in achieving sharable, reusable knowledge bases [2] представляет стратегию создания библиотек общих, повторно используемых знаний, в которых общие онтологии играют центральную роль в качестве конструкции связи знаний. А также выявляет проблемы при проектировании совместно используемых онтологий.

В работе авторов Harshadeep J., Pooja G., Shraddha S., Sonu M. Automated CAD Modelling of Mechanical Components [3] успешно продемонстрировано, как геометрическое моделирование САПР может быть полностью автоматизировано, снижая вероятность ошибки и повышая общую эффективность процесса проектирования.

3.2 Обзор национальных источников

В работе «Интеграция модуля компьютерной графики в систему CATIА» Барладян Б.Х., Дерябин Н.Б., Шапиро Л.З. [4] рассматривают два подхода к интеграции системы синтеза реалистичных изображений и оптического моделирования в системы автоматизированного проектирования. Предложен подход, обеспечивающий частичную автоматизацию этой интеграции.

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

3.3 Обзор локальных источников

Тема интеллектуальных методик проектирования в современных САПР интересует магистров Донецкого национального технического университета.

И.О. Зимонин занимался исследованием методов разработки графических редакторов в CAD-системах на примере САПР трубопроводов [6]. В своей работе он проанализировал принципы создания, состав и структуру САПР, существующие программные продукты, выявил стратегию дальнейшей разработки оптимального комплекса методов построения CAD-системы в САПР трубопроводов. А также выполнил оценку эффективности выбранного комплекса и обоснование выбранных методов и технологий разработки актуальной современной системы.

В магистерской работе О.В. Малявки «Исследование способов организации построения инструментальной интеллектуальной оболочки для проектирования сложных объектов на базе экспертных методик» [7] произведён анализ существующих инструментальных средств построения САПР, усовершенствованы существующие алгоритмы. Осуществлена оценка их эффективности и построен с их помощью инструментарий для автоматизации создания проблемно–ориентированных САПР.

Также К.В. Ржевский занимался похожим исследованием. Тема его работы: «Исследование методов создания интеллектуальных надстроек над графическими редакторами на примере САПР-трубопроводов» [8].

В.А. Болотова занималась инструментальными средствами создания баз знаний на основе системы онтологий [9]. А.А. Фоменко исследовал инструментальные средства создания интеллектуальных САПР на основе семантических продукций, определенных над формальными грамматиками [10]..

4. Недостатки средств графики

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

Прежде всего, это сложный поиск необходимого инструмента для создания объектов в эскизе. Это связано с тем, что все панели инструментов в программе не могут быть одновременно размещены в окне работы с программой.

Обновление существующего эскиза может доставить трудности. Вы должны переназначить, например, все радиусы, даже если они немного сдвинулись.

В CATIA реализованы сложные операции для работы с мышью. Например, увеличение размеров чертежа на экране недоступно с помощью прокрутки колесика мыши. Вращение объектов производится нажатием мыши на определенную область.

Стоит отметить, что в CATIA невозможен импорт моделей других типов, созданных в других программах. Причем при импорте объектов того же типа в CATIA доступны не все функции для работы с такими объектами, а лишь часть из них [11].

5. Инструменты САПР для автоматизации проектирования

Для автоматизации проектирования в САПР CATIA используют как языковые средства, которые взаимодействуют с системой и могут дополнять ее, так и встроенные инструменты системы. Они способны облегчить работу проектировщика при работе с эскизами в САПР.

Рассмотрим языки программирования, используемые для автоматизации проектирования в САПР CATIA.

САПР CATIA V5, работающая в Windows, может быть автоматизирована с помощью любого приложения, которое может подключаться к компонентной объектной модели Windows (COM), включая VBA (Excel, Word, CATIA и т. Д.), VBScript, JavaScript, Visual Basic 6.0, Microsoft Developers Studio.NET и другие. Для CATIA V5, работающей в UNIX, эмуляторы позволяют запускать сценарии VBScripts без инструментов для создания интерфейса.

Приложения для CATIA можно писать в виде:

1) макросов *.catvba, cкриптов *.CATScript;

2) автономных приложений, скомпилированных в *.exe-файл;

3) в виде приложений, плагинов, используя CAA-RADE - на С++.

5.1 API в CATIA

Для создания автономных приложений можно использовать любой язык программирования, например, VB6, C#, Delphi. При этом взаимодействие с CATIA происходит как с COM-объектом, и для этого используются возможности API.

API - это набор определений и протоколов для создания и интеграции прикладного программного обеспечения. API означает интерфейс прикладного программирования.

API используется в САПР для:

1) автоматизации чертежей;

2) упрощения создания и редактирования чертежей.

API дает возможность полностью контролировать исходный код, оперативно исправлять ошибки и наращивать функционал. Это в своих системах используют разработчики CATIA, NX, Creo Elements/Pro, Solid Edge, Autodesk Inventor, think3, КОМПАС-3D.

Новая разработка, получившая кодовое имя CNext, в 1998 году стала известной всему миру под названием CATIA V5. Она имеет открытую архитектуру — в нее можно вставить собственные наработки и программы (например, тепловой расчет и т.д.), функции, необходимые для расширения возможностей специализированных модулей [12].

Использование программирования на языках VB CATIA, Java, C++, VBA, Basic Script позволяет автоматизировать весь процесс проектирования. API для CATIA называется «CAA» - сокращение от Component Application Architecture. Этот API написан на C ++. CATIA имеет другие API, основанные на Microsoft Visual Basic и Java, но они не такие полнофункциональные и не такие гибкие, как CAA C ++ API. Вместо устаревшего Fortran в качестве языка программирования был выбран С++, а геометрическое ядро новой системы получило название CGM – CNext/CATIA Geometric Modeler [13]. Особенности работы с интерфейсом прикладного программирования прописываются в технической документации. Здесь же указывается, какие значения необходимо подавать на вход конкретной функции, чтобы получить на ее выходе корректные значения, согласно предназначению данной функции.

Таким образом, API позволяет абстрагироваться от реализации отдельных программных блоков при разработке приложений. Наиболее явно эта концепция раскрывается на примере чёрного ящика (рисунок 1).

Чёрный ящик

Рисунок 1 – «Чёрный ящик»

Физически API-функции представляются в виде отдельного программного модуля, который динамически подключается извне к основному проекту в формате DLL-библиотеки [14].

5.2 Макросы

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

Все языки сценариев (VBScript, CATScript и VBA) взаимодействуют с CATIA через динамически связанные библиотеки (DLL). Файл DLL - это тип файла, который содержит инструкции, которые могут вызывать другие программы для выполнения определенных действий. Таким образом, несколько программ могут совместно использовать возможности, запрограммированные в одном файле, и даже делать это одновременно. В отличие от исполняемых программ, таких как программы с расширением EXE, файлы DLL нельзя запускать напрямую, вместо этого они должны вызываться другим уже запущенным кодом.

CATIA хранит макросы в библиотеках макросов. Их можно хранить в одном из трех мест: в папках (макросы VBScript и CATScript), в файлах проекта или в таких документах, как CATParts, CATProducts и CATDrawings. CATIA позволяет использовать одновременно только одну библиотеку макросов [15].

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

VBScript - это подмножество языка программирования Visual Basic (VBA). Все элементы VBScript присутствуют в VBA, но некоторые элементы VBA не реализованы в VBScript. Языки сценариев проще и быстрее кодировать, чем более структурированные, скомпилированные языки, такие как C + и C ++. Код, специфичный для CATIA, сохраняется, как файл .CATScript.

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

Visual Basic для приложений (VBA) – это еще одно подмножество Visual Basic. Visual Basic для приложений, сокращенно VBA, - это язык сценариев, который встроен в отдельное приложение Microsoft, такое как Excel или Access. Используя VBA, можно создавать макросы или небольшие программы, которые выполняют задачи в приложении Microsoft. VBA имеет собственный редактор, отладчик и средство просмотра справочных объектов. Все версии CATIA после V5R8 поддерживают макросы, разработанные с использованием VBA [16].

6. Шаблоны в языках программирования

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

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

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

Системы САПР по способу организации диалога с пользователем с использованием [15]:

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

Схема жизненного цикла шаблона представлена на рисунке 2.

Жизненный цикл шаблона

Рисунок 2 – Жизненный цикл шаблона
(анимация: 13 кадров, 14 килобайт)

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

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

Выводы

В ходе данной работы проведен анализ инструментов системы для автоматизации проектирования и возможных способов создания шаблонов в САПР CATIA и анализ инструментов системы для автоматизации проектирования.

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

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

Список источников

  1. Katzenbach A., Bergholz W., Rolinger A.: Knowledge-based design – an integrated approach, in: S.B. Heidelberg (Ed.), The Future of Product Development, 2007, pp. 13-22.
  2. Gruber T. “The Role of Common Ontology in Achieving Sharable, Reusable Knowledge Bases.” KR, 1991.
  3. Harshadeep J., Pooja G., Shraddha S., Sonu M. (2017). Automated CAD Modelling of Mechanical Components. 10.2991/iccasp-16.2017.37.
  4. Барладян Б.Х., Дерябин Н.Б., Шапиро Л.З. Интеграция модуля компьютерной графики в систему CATIA // Новые информационные технологии в автоматизированных системах. 2013. №16.
  5. Дубовик С.Е., Сошников Д.В. Использование семантических сетей, расширенных деревьями И/ИЛИ для представления структурно-динамических знаний в интеллектуальных системах [Электронный ресурс] // Сборник научных трудов МАИ — Режим доступа: Ссылка.
  6. Исследование методов разработки графических редакторов в CAD-системах на примере САПР трубопроводов [Электронный ресурс] // Портал магистров ДонНТУ. — Режим доступа: Ссылка.
  7. Исследование способов организации построения инструментальной интеллектуальной оболочки для проектирования сложных объектов на базе экспертных методик [Электронный ресурс] // Портал магистров ДонНТУ. — Режим доступа: Ссылка.
  8. Исследования методов создания интелектуальных надстроек над графическими редакторами на примере САПР-трубопроводов [Электронный ресурс] // Портал магистров ДонНТУ. — Режим доступа: Ссылка.
  9. Инструментальные средства создания баз знаний на основе системы онтологий [Электронный ресурс] // Портал магистров ДонНТУ. — Режим доступа: Ссылка.
  10. Инструментальные средства создания интеллектуальных САПР на основе семантических продукций, определенных над формальными грамматиками [Электронный ресурс] // Портал магистров ДонНТУ. — Режим доступа: Ссылка.
  11. Бондаренко Е.С. Исследование API САПР CATIA V5 и перспективы развития создания приложений в ней [Электронный ресурс] / Е.С. Бондаренко, А.В. Григорьев // Материалы студенческой секции X Международной научно-технической конференции «Информатика, управляющие системы, математическое и компьютерное моделирование» (ИУСМКМ - 2019). – Донецк: ДОННТУ, 2019. –с. 105-109.
  12. Зитен Д. Программирование макросов CATIA V5 с помощью скрипта Visual Basic, McGraw-Hill, 2013.
  13. Ledermann C., Hanske C., Wenzel J., Ermanni P., Kelm R. ”Associative parametric CAE methods in the aircraft pre-design”, Journal of Aerospace Science and Technology, Vol. 9, Issue 7, October 2005, pp. 641-651, Elsevier.
  14. Басов К.А. CATIA V5. Геометрическое моделирование. – М.: ДМК Пресс, 2008. – 272 с., ил. (Серия «Проектирование»).
  15. Ходосов В.В. Основы создания деталей в САПР CATIA V5: учебное пособие / В.В. Ходосов; Балт. гос. техн. ун-т. – СПб., 2019. – 66 с.
  16. Koh J. CATIA V5 Design Fundamentals A Step by Step Guide. – ONSIA.
  17. Малюх В.Н. Введение в современные САПР, М.: ДМК Пресс, 2010.
  18. Harris T. CATIA V5 R12. 2004.