Этапы развития средств объемного геометрического моделирования

Артамонов Е.И.
Институт проблем управления им. В.А. Трапезникова РАН, г. Москва

Артамонов Е.И. Этапы развития средств объемного геометрического моделирования // Труды Первой международной конференции Трехмерная визуализация научной, технической и социальной реальности. Кластерные технологии моделирования. — Ижевск. — 2009. — с.22-25.

Средства автоматизированного проектирования зародились практически с момента выпуска первых ЭВМ (50-ые – 60-ые годы прошлого столетия), их развитие проходило по следующим основным этапам: пакетная организация прикладных программ, создание проблемно ориентированных систем проектирования, совершенствование средств взаимодействия пользователей с системами, интеграция систем, использование средств виртуальной реальности.

Пакетная организация прикладных программ

На первом этапе из-за малого быстродействия ЭВМ, а также отсутствия средств компьютерной графики, средства автоматизации проектирования ограничивались пакетами прикладных программ. Решение любой задачи сводилось к написанию общей программы с обращением к конкретным процедурам пакетов прикладных программ, компиляции программы и после этого, ввод исходных данных и решение конкретной задачи. В это время, в первую очередь, решались задачи расчетного характера. Например, в области автоматизированного проектирования под руководством академика А.Я.Матюхина [1] был разработан язык функционального моделирования дискретных систем (МОДИС). МОДИС создавался на ЭВМ М-220 и длительное время эксплуатировался на единой серии ЭВМ, вплоть до появления персональных компьютеров. С появлением графопостроителей в 60-х годах прошлого столетия возникла компьютерная графика и внесла революционные изменения в развитие всей вычислительной техники и, в частности, программных средств геометрического моделирования. В разное время были созданы пакеты графических программ такие, как PLOT 10, Графор [2], Графал, ФАП КФ [3] и т.п. Идеология пакетов прикладных программ (ППП) сохранилась и до настоящего времени, несмотря на то, что в 70-х годах в промышленном применении наметился переход от ППП к проблемно ориентированным системам. ППП совершенствовались далее в направлении стандартизации, на их основе стали создаваться системы проектирования, отдельные алгоритмы стали реализовываться аппаратными средствами. Однако на все это ушло около 40 лет.

К концу 70-х годов наступила эра проблемно ориентированных систем проектирования. Основными задачами, связанными с системной организацией средств проектирования, были разработка структур данных и их стандартизация, разработка принципов структурной организации систем и средств взаимодействия пользователей с системами. По структурам данных одним из первых стандартов обсуждался стандарт на графическое ядро GKS [4], затем IGES — 1982 г., ISO 10303 STEP — 1994 г. и т.п.

Средства взаимодействия пользователей с системами

Первые системы проектирования работали в пакетном режиме, т.е. в систему вводился пакет исходных данных. Анализировался результат и, если результат оказывался неудовлетворительный, то вся процедура повторялась. Каждая система имела собственный язык описания исходных данных [5], начали появляться специальные аппаратные средства, ускоряющие процесс ввода исходных данных, графопостроители постепенно заменялись графическими дисплеями. С начала 70-х годов с развитием средств взаимодействия пользователей с ЭВМ применительно к компьютерной графике и системам автоматизированного проектирова- ния появилось понятие «интерактивные системы (ИС)» [6], которые в реальном времени отрабатывали каждый оператор входного языка. С совершенствованием устройств ввода отпала необходимость вводить операторы входного языка в текстовом виде, достаточно было указать на значки, их заменяющие, в перечне, представленном на экране дисплея. В программном обеспечении наметился переход в структурной организации интерактивных систем от пакетов графических программ к программным системам. К этому времени в 80-х годах появились персональные компьютеры. Сформировалось понятие системной целостности программного обеспечения ИС, объединяющее процессорную часть, средства ввода-вывода информации и управления базами данных. Примерами таких систем являются: АutoCAD, SolidWorks, I-Deas и др.

Интеграция систем

С начала 90-х годов появилось понятие CALS (Continuous Acquisition and Life-Cycle Support) — технологии непрерывного компьютерного сопровождения изделия на всех этапах его жизненного цикла от маркетинга до утилизации. CALS — технология отличается от традиционной технологии следующими особенностями: на всех этапах жизненного цикла изделия создается электронная документация, используется eдиная обобщенная модель изделия и международные стандарты на форматы и структуры данных по обмену информацией об изделии. Кроме того, CALS технология предусматривает параллельную и территориально распределенную работу над создаваемым изделием. В соответствии с этой технологией на рынке появились интегрированные системы, охватывающие несколько этапов жизненного цикла изделий, например, CAD/CAM, CAD/CAM/PDM и т.п.

В настоящее время области использования интегрированных систем существенно расширились, размерность решаемых задач резко возросла, а средства графического взаимодействия пользователя с ЭВМ (как технические, так и программные) стали более совершенными. Сложность задач 3D моделирования и анимации в реальном времени предъявляют все более высокие требования к производительности и объемам памяти вычислительных систем. Под эти требования быстрыми темпами совершенствуется архитектура процессорной части вычислительных систем, средства 2D и 3D визуализации высокого и сверхвысокого разрешения, графические процессоры и средства интерактивного взаимодействия пользователя с ЭВМ.

Средства виртуальной реальности (СВР)

Развитие СВР позволило по-новому взглянуть на решение некоторых задач автоматизированного проектирования. Существующие системы автоматизированного проектирования не всегда удовлетворяют пользователей по части визуализации сложных объемных геометрических моделей в реальном времени, затруднено создание инструкций и технических руководств по сборке и эксплуатации изделий с использованием 3D моделей. Поэтому некоторые задачи решаются с использованием языков виртуальной реальности VRML, OpenGL, DirectX и др., или в комбинации языковых средств и стандартных структур данных, полученных из систем проектирования.

Как выбрать лучшую реализацию задач геометрического моделирования?

Наличие множеств систем проектирования, различных структур данных и средств виртуальной реальности при решении конкретной задачи ставит проблему выбора лучшей реализации из множества известных [7, 8].

В настоящее время на рынке существует большое количество универсальных и специализированных систем проектирования и управления. Они различаются по классам решаемых задач, общим принципам построения, структурной организации и используемым структурам данных. Примером универсальных систем являются AutoCAD, 3D STUDIO MAX, Inventor, SolidWorks и др. Примером специализированных систем являются системы, реализованные на основе универсальных языков программирования и языков виртуальной реальности таких, как VRML, OpenGL, DirectX и др., или в комбинации универсальных языков и стандартных структур данных, полученных из систем проектирования.

В таблице 1 приведена классификация систем, их назначение, структуры генерируемых и обменных файлов. В последнее время универсальные системы широко используют стандартные структуры данных типа *.gbr (GERBER), *dxf (AutoCAD),*.iges (IDGES), *.stp (STEP), *.wrl (VRML), что позволяет производить обмен данными между системами.

Таблица 1

  Характерист.

Назначение Средства
взаимод.
Структуры
данных
Обменные
файлы
GERBER Программа Управление 2D устройствами Текстов. язык описания 2D графики *.gbr *.gbr
Open GL



Пакет рафических
подпрограмм
Расширение графиче скими функциями
универсальных языков программирования
Текстовое описание функций языка Определяет
пользователь
 
Графика
01-Т

Система программ
2D графика, автотрассировка, проект. РЭА Языковые и интеракт. средства *.bmp,
*.b,
*.i
*.dxf,
*.bmp
AutoCAD
_ ,, _
2D и 3D графика, машиностр и др.
_ ,, _
*.dwg,
*.dxf,
*.bmp
*.dxf,
*.bmp
P-CAD
_ ,, _
2D графика, автотрассировка, проект. РЭА
_ ,, _
*.pcb,
csh, *.plt,
dxf, *.pdf,
*.lib
*.dxf,
*.pcb,
*.csh,
*.dxf,
*.idf
Inventor
_ ,, _
2D и 3D графика, проект. РЭА и др.
_ ,, _
*.ipt,
*.prt, *.iam,
*.idw
*.dxf,
*.ipt
SolidWorks
_ ,, _
2D и 3D графика, проект. машиностр и др.
_ ,, _
*.sldprt,
*.sldasm,
*.slddrw
*.iges,
*.stp,
*.wrl,
*.stl,
*.ipt
*.dxf,
*.dwg,
*.iges,
*.stp,
*.wrl,
*.stl,
*.ipt

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

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


Рисунок 1

Выбраны 4 типа ПО (4 типа дуг, соединяющие вершины «Вход», «Выход»): VRML, OpenGL, АutoCAD, SolidWorks. Овалами обозначена полная сеть преобразований структур данных, то есть каждая вершина внутри овала соединена с другими. Для простоты изображения выбраны только три последовательные множества дуг сети от входа к выходу, соответствующие реализациям операций алгоритма функционирования тренажера.

Алгоритм функционирования тренажера состоит из трех частей. Первая связана с преобразованиями структур данных на входе в структуры, указанные на вершинах первого овала сети, а также с операциями по созданию 3D моделей отдельных деталей генератора и формированию базы данных (БД) деталей.

Вторая — содержит произвольную последовательность операций по выбору одной модели из БД, пространственные ее перемещения, фиксация, выбор модели второй детали, ее перемещения для соединения с первой и т.д. до полной сборки модели всего генератора. Третья часть включает операции преобразования структур данных на выходе (второй овал сети).

Почти все операции могут быть реализованы на каждом из четырех типов ПО, за исключением операций преобразования в реальном времени координат моделей деталей. Создание базы данных моделей деталей лучше выполнять, например, на системах Аuto-CAD или SolidWorks, поскольку в такого рода системах предусмотрены специальные пользовательские средства. Однако разработчику это обойдется от $2000 до $20000 за одно рабочее место, при этом большая часть программных средств, в такого рода 26 тренажерах, не будет использована. Базу данных деталей можно создавать непосредственно на VRML или на OpenGL, в этом случае потребуются высоко квалифицированные программисты и большее время для создания моделей каждой детали.


Рисунок 2

Были разработаны программные средства, структура которых соответствует последовательности дуг, отмеченной на рисунке 2 стрелками. На рисунке 2 показан процесс сборки генератора с использованием этих средств: рисунок 2a) — частично собранный генератор, 2b) и c) — отдельные детали из базы данных. На рисунке 2b) — отмечается требуемая деталь перед сборкой и средствами перемещения курсора она устанавливается на нужное место.

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

Литература

  1. Матюхина Н.Я. Применение вычислительных машин для проектирования цифровых устройств // М.: Советское радио.-1968.
  2. Баяковский Ю.М., Галактионов В.А. Графические протоколы (обзор). - Автометрия.- 1978.- № 5.- С. 3-11.
  3. Горелик А.Г., Буракова В.Я. Автоматизация геометрического моделирования с помо- щью языка “ФAПKФ" //Вестник машиностроения.- 1979.- № 10.- С. 66-69.
  4. ISD/DIN 7942, GKS, VERSION 7.2, ISO TC 97/SC 5/WG2, 1982.
  5. Артамонов Е.И., Загвоздкин В.А., Шурупов А.А., Щегольков М.Ю. Языки взаимодей- ствия пользователя с ЭВМ в системе “Графика-81” //М.: Институт проблем управле- ния.-1993.- С. 256.
  6. Ньюмен и Спрулл. Основы интерактивной машинной графики. 1975 г.
  7. Artamonov E.I. Automation of digital device structure design. B-215, ACTA IMEKO, 1973, p. 561-570.
  8. Артамонов Е.И., Ничипорович Т.А., Тенякшев А.М., Метод формирования обобщенных моделей построения систем. Материалы ХХХШ международной конференции Ин- формационные технологии в науке, образовании, телекоммуникации и бизнесе (IT+S&E*06), журнал «Открытое образование». - 2006 г. 2 стр.