Геометрическое ядро – основа САПР

Геометрическое ядро - набор правил, объектов, интерфейсов, отвечающих за внутреннее представление модели и ее преобразования. Решение проблемы зависимости российского программного обеспечения от иностранных разработок, повышение конкурентоспособности.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 20.04.2019
Размер файла 93,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Геометрическое ядро - основа САПР

Волкова С.Л.,

Воробьева И.В.,

Копорушкин П.А.

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

Основным компонентом САПР является геометрическое ядро, которое представляет собой набор правил, объектов, интерфейсов, отвечающих за внутреннее представление модели и ее преобразования.

В геометрическом ядре выделяют следующие модули:

1. базовые типы и операции;

2. моделирование топологии граничного представления;

3. геометрические объекты и операции над ними;

4. булевы операции и операции редактирования поверхностей;

5. удаление невидимых линий и рендеринг;

6. модули для чтения и записи геометрических файлов популярных форматов.[1]

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

К сожалению, представленные на рынке CAD-продуктов системы автоматизированного проектирования, основаны на ядрах и технологических компонентах зарубежных разработчиков.

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

Ядро

Год

Разработчик

Страна

САПР, использующие ядро

ACIS

1989

Spatial (Dassault Systemes)

США

ADEM 9.0, Bricscad V14,

Creo Elements/Direct

6.0(частично), IRONCAD

2014 neXt Generation,

KeyCreator 13.5.2,

TurboCAD 21, SpaceClaim

Parasolid

1989

Siemens PLM Software

США

IRONCAD 2014 neXt

Generation, MicroStation

V8i 8.11.x, NX 10, Solid

Edge ST7, SolidWorks SP1, T-FLEX 14

SMLib

1998

Solid Modeling Solutions

Япония

-

Open

CASCADE

1999

OPEN

CASCADE

(Areva)

Франция

CAD-Schroer MEDUSA4

5.1.2, FreeCAD 0.15

GRANITE

2001

PTC

США

Creo Elements/Pro (Pro/Engineer) Creo 3.0

SOLIDS++

2004

IntegrityWare

США

Rhino 5.0 (частично)

CGM

2010

Dassault Systemes

США

CATIA V6, SolidWorks SP1

С 3D

2013

Аскон

Россия

Компас V16

RGK

2013

Ледас, T-FLEX

Россия

-

Сложившаяся в 2007 году ситуация на рынке CAD-систем, подтолкнула правительство РФ к созданию собственного геометрического ядра, которое помогло бы решить проблему зависимости российского программного обеспечения от иностранных разработок, и повысило конкурентоспособность отечественной продукции. В рамках федеральной целевой программы "Национальная технологическая база" был объявлен тендер на выполнение научно-исследовательской и опытно-конструкторской работы "Создание отечественного лицензируемого программно-математического ядра трехмерного моделирования как базы для компьютерных систем автоматизированного проектирования сложной машиностроительной продукции".[2] Победителем тендера стал МГТУ "Станкин", под руководством специалистов которого проводилась разработка. Само геометрическое ядро впервые было представлено в 2013 году и получило название Russian Geometric Kernel (RGK).

Также в 2013 году известная российская компания Аскон, лицензировала ядро C3D, которое ранее использовалось только для собственных разработок. ядро интерфейс программный

Ядро RGK

Рассмотрим подробнее ряд преимущественных решений, которые были реализованы в проекте RGK.

1. Многопоточность.

Возможность внутреннего и внешнего распараллеливания ядра.

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

2. Использование вычислений на GPU

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

3. Многоплатформенность

При разработке кода ядра были учтены потребности современного парка вычислительных систем, а также перспективы его развития. Компоненты, входящие в состав ядра должны использоваться как на платформе Windows, так и на других платформах (например, Linux-системах).

4. Многодокументность

В модели ядра реализован набор инструментов, управляющий сессией ядра и обеспечивающий передачу информации о текущей сессии по всем функциям, задействованным в вычислениях. Таким образом, разработчики конечных CAD/CAM/CAE приложений, имеют готовую инфраструктуру для реализации работы с несколькими документами, имеющими свой набор трёхмерных объектов (например, тел), разные параметры точности вычислений и других специфичных настроек.

5. Многотельное и гибридное моделирование

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

6. Моделирование с управляемой точностью

Все вычисления в ядре выполняются с конечной точностью. В зависимости от типа вычислений используются разные значения точностей:

• Линейная точность используется для сравнения размерных величин. Если расстояние между точками или скалярными величинами меньше этой точности, то такие величины в системе неразличимы.

• Угловая точность используется для сравнения угловых величин.

В пределах этой точности углы неразличимы.

• Относительная точность для сравнения размерных величин на параметрических интервалах кривых и поверхностей. По умолчанию величина относительной точности подобрана с учётом возможной потери точности при преобразовании линейных и двумерных параметров в трёхмерное пространство.

Как и большинство геометрических ядер, RGK, поддерживает параметрическую функциональность в ограниченном объёме. В связи с чем возникает необходимость подключения параметрического ядра, для расширения функциональности разрабатываемых на его основе систем автоматизированного проектирования. В условиях импортозамещения, решатель геометрических ограничений должен быть представлен российской компанией. Самой известной российской разработкой на сегодняшний день является - LGS компании Ледас, но к сожалению права на интеллектуальную собственность в 2011 г. были проданы бельгийской компании Bricsys.

Ядро C3D

Еще одна российская разработка C3D - единственное в мире геометрическое ядро, объединяющее в себе три важнейших модуля САПР:[3]

1. Геометрический моделировщик C3D Modeler: выполняет построение геометрической модели, построение плоских проекций модели, построение триангуляции, вычисление инерционных характеристик модели, определение столкновений элементов модели

2. Решатель геометрических ограничений C3D Solver: обеспечивает взаимосвязи элементов геометрической модели и учитывает геометрические ограничения при редактировании модели

3. Конвертор данных C3D Converter: обеспечивает чтение/запись геометрической модели в основные обменные форматы: STEP, IGES, ACIS, XT, STL, VRML

Разработчику конечного приложения ядро позволяет:

• Улучшить функциональные возможности продукта

• Быстро создать 3D-продукт на основе существующей 2Dсистемы

• Снизить затраты на собственную разработку

• Повысить надежность и быстродействие программного продукта

Заключение

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

Литература

1. Вопрос распараллеливания в разработке ядра геометрического моделирования: [Электронный ресурс ] // ООО "Сингулярис Лаб", Волгоградский Государственный Технический Университет. URL: http://academy.hpc-russia.ru/files/05_shapovalov_rgk_cka.pdf

2. Геометрические ядра в мире и в России: [Электронный ресурс ] // Дмитрий Ушаков. URL: http://isicad.ru/ru/articles.php?article_num=15185

3. Геометрическое ядро C3D: [Электронный ресурс ] URL: http://ascon.ru/products/c3d/

Размещено на Allbest.ru

...

Подобные документы

  • Двухсторонний спутниковый интернет и используемое для него оборудование, оценка преимуществ и недостатков использования. Ядро одностороннего спутникового интернета, области его применения и предъявляемые требования. Wi-Fi: история разработок, доступ.

    контрольная работа [50,6 K], добавлен 14.12.2014

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

    реферат [18,2 K], добавлен 19.01.2013

  • Структура и классификация систем автоматизированного проектирования. Виды обеспечения САПР. Описание систем тяжелого, среднего и легкого классов. Состав и функциональное назначение программного обеспечения, основные принципы его проектирования в САПР.

    курсовая работа [37,7 K], добавлен 18.07.2012

  • Ядро Windows 98. Роль 16-разрядных модулей ядра. Проблемы быстродействия. Кооперативная и вытесняющая многозадачность. Улучшенное использование ресурсов в Windows 98. Использование WordArt. Программа MS Outlook Express: создание и отправка сообщений.

    контрольная работа [120,4 K], добавлен 14.04.2005

  • Понятие и функции систем автоматизированного проектирования (САПР), принципы их создания и классификация. Проектирующие и обслуживающие подсистемы САПР. Требования к компонентам программного обеспечения. Этапы автоматизации процессов на предприятии.

    реферат [19,8 K], добавлен 09.09.2015

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

    курсовая работа [22,1 K], добавлен 27.05.2014

  • Понятие технологии разработки программы. Основа проектирования программного обеспечения. Модели жизненного цикла, возникшие исторически в ходе развития теории проектирования программного обеспечения. Спиральная (spiral), каскадная и итерационная модели.

    презентация [1,0 M], добавлен 11.05.2015

  • Структурная организация операционной системы на основе различных программных модулей. Функции, выполняемые модулями ядра. Модули операционной системы, оформленные в виде утилит. Ядро в привилегированном режиме. Многослойная структура ядра системы.

    презентация [705,2 K], добавлен 16.01.2012

  • Задачи разработчиков следующего поколения многопроцессорных и многопоточных процессоров Oracle. Архитектура процессора SPARC T3. Интерфейсы когерентных связей, ядро процессора. Особенности конвейера, интегрированные сети, управление электропитанием.

    реферат [1,9 M], добавлен 25.10.2012

  • Основные понятия и определения кодирования информации. Кодовая комбинация и ее длина. Классификация кодов по различным признакам, способы их представления, назначение. Представление в виде кодовых деревьев или многочленов, матричное и геометрическое.

    реферат [38,1 K], добавлен 05.08.2009

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

    презентация [114,7 K], добавлен 14.08.2013

  • История создания, архитектура операционной системы и перечень возможностей, реализуемых в Linux. Инструментальные средства и цикл разработки новой версии ядра. Жизненный цикл патча. Структура принятия решений при добавлении новых функций (патчей) в ядро.

    лекция [303,8 K], добавлен 29.07.2012

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

    презентация [259,7 K], добавлен 26.11.2014

  • Понятие программной надёжности объекта. Основные проблемы исследования надёжности программного обеспечения. Аппаратурные отказы. Среднее время безотказной работы. Математические модели. Уравнение для определения значения начального числа ошибок.

    презентация [492,2 K], добавлен 08.11.2013

  • Понятие и сущность матрицы. Правила выполнения операций над матрицами. Матричное представление преобразований, составные преобразования. Аффинное преобразование и его матричное представление. Для чего нужна трехмерная графика. Набор библиотек DirectX.

    научная работа [181,3 K], добавлен 24.04.2015

  • Понятие и ключевое отличие распределенной разработки программного обеспечения, его достоинства и недостатки. Концептуальное решение и выбор типа разработки. Особенности программного обеспечения с открытым исходным кодом. Идея и развитие Open Source.

    курсовая работа [97,7 K], добавлен 14.12.2012

  • Анализ графических пользовательских интерфейсов современных систем оптимизации программ. Создание математической модели и алгоритма системы управления СБкЗ_ПП, ее архитектурно-контекстная диаграмма. Техническая документация программного средства.

    дипломная работа [1,1 M], добавлен 18.04.2012

  • Общий календарный план выполнения этапов проекта программного обеспечения. Последовательность разработки согласно классической каскадной модели. Изображение хода работ по спиральной модели согласно Боему. Технические требования на продукт, WBS-структура.

    лабораторная работа [614,1 K], добавлен 17.01.2014

  • Цели и задачи программной инженерии. Понятие программного обеспечения. Шесть принципов эффективного использования программного обеспечения. Виды программного обеспечения: общесистемное, сетевое и прикладное. Принципы построения программного обеспечения.

    курсовая работа [30,4 K], добавлен 29.06.2010

  • Определение параметров линейной зависимости из графика. Метод парных точек. Метод наименьших квадратов. Блок-схема программного комплекса в Microsoft Visual Studio и Microsoft Excel. Инструкция пользователя, скриншоты. Общий вид программного кода.

    курсовая работа [2,1 M], добавлен 29.11.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.