TEМА: Формирование математической модели корпуса теплохода-площадки в программе FastShip6


СОДЕРЖАНИЕ:

Введение

1. Приступая к работе

1.1 Назначение работы

1.2 Описание программы

2. Анализ процесса построения поверхности по ординатам

2.1 Введение

2.2 Математика поверхности

2.3 Описание проблемы

2.3.1 Назначение модели

2.3.2 Ординаты

2.3.3.Формат ординат

2.4 Методы автоматического создания поверхности

2.5 Ручной и полуавтоматические методы

2.5.1 Ручная подгонка/сглаживание

2.5.2 Полуавтоматическая подгонка/сглаживание

2.6. Итоги

3. Основные сведения из теории NURBS

3.1 Что такое NURBS

3.2 Терминология NURBS

3.3 Пример простого кубического В-сплайна

3.4 Пример простого квадратичного В-сплайна

3.5 Пример простого линейного В-сплайна

3.6 В-сплайн кривые против традиционных кривых интерполирования

3.7 Дополнительный контроль

3.8 Что значит “рациональный”?

3.9 От кривых к поверхностям

3.10 Граничные условия и сломы

3.11 Итоги главы. Основные свойства NURBS.

4. Построение теоретической поверхности судна

4.1 Построение плоского листа поверхности

4.2 Скругление форштевня. Передвижение точек в FastShip

4.3 Получение трёхмерной модели

4.4 Изображение поверхности с помощью сечений.

4.5 Изображение ординат на экране

4.6 Построение поверхностей бака и юта

4.7 Получение слома поверхности

4.8 Сглаживание поверхности

Заключение

Используемая литература


ВВЕДЕНИЕ

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

С учётом требований конкурентоспособности и жизнедеятельности предприятий, выдвигаемых современностью, в судостроении почти полностью автоматизированы все проектные и конструкторские работы. На каждом судостроительном предприятии имеются ведущие системы автоматизированного проектирования, такие как TRIBON, FORAN и многие другие. Среди подобных программных продуктов-гигантов находит применение и менее мощное, направленное на решение какой-то определённой узкой задачи, программное обеспечение.

Работа FastShip основана на применении передовой области математики – математики NURBS, хорошо зарекомендовавшей себя при построении поверхностей.

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

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

Исходными данными для выполнения работы послужили таблица основных ординат судна и теоретический чертёж.


1. ПРИСТУПАЯ К РАБОТЕ 1.1 Назначение выполняемой работы

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

1). Уточнения положения пазов и стыков

2). Уточнение и оптимизация размеров листов для изготовления корпуса

3). Плазовые данные для выпуска (перевыпуска) шаблонов, каркасов для сборочно-сварочных постелей.

4). Плазовые данные для выпуска сборочных лесов.

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

1.2 Описание программы

Программа FastShip6, созданная фирмой Proteus Engineering, предназначена для создания поверхностей судовых корпусов любой сложности. Сочетая в себе простоту работы и дружественный интерфейс, FastShip6 позволяет создать математическую поверхность корпуса судна с достаточной степенью надёжности.

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

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


2. АНАЛИЗ ПРОЦЕССА ПОСТРОЕНИЯ ПОВЕРХНОСТИ ПО ОРДИНАТАМ 2.1 Введение

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

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

2.2 Математика поверхности

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

Поэтому следует сфокусировать внимание на использовании математики NURBS, где поверхность определяется с помощью “контрольной сетки’, а вместе с тем и узлового вектора. Контрольная сетка NURBS-это сетка, состоящая из вершин, представленных в виде строк и столбцов, которые в явном виде задают форму поверхности.

Поверхности NURBS имеют два важных свойства, которые непосредственно влияют на решение задачи создания модели по существующим ординатам. Первое, они аппроксимируют сплайновую поверхность, это означает, что поверхность в общем случае не проходит через контрольные точки (поверхность совпадает с контрольными точками (вершинами) только в крайних точках контрольной сетки). Это значит, что просто разместить вершины в местах расположения ординат не приведёт к поверхности, удовлетворяющей заданным ординатам. Однако, это свойство не даёт проявляться осцилляциям, которые имеют место при использовании интерполирующих сплайнов. Использование NURBS поверхностей более чётко удовлетворяет обоим требованиям сглаживания. Второе важное свойство NURBS-это локальная область влияния. Это означает, что любая вершина не влияет на всю поверхность (за исключением очень простых поверхностей). Для кубических поверхностей, которые наиболее часто используются для создания моделей корпусов, каждая вершина влияет в пределах области двух вершин от себя. За пределами этой области вершина не влияет на поверхность (в случае интерполирующих сплайнов изменения, произведённые в носу модели отразятся на форме кормы). Это свойство имеет преимущество в том, что изменения, сделанные на поверхности локализованы, и новое сглаживание происходит в пределах этой локализованной области. Однако, если контрольная сеть составлена слишком плотно, то сглаживаемая изменённая область будет слишком мала, что приведёт к негладкости поверхности. Поэтому по возможности надо стараться работать с как можно более простой сетью.

2.3 Описание проблемы 2.3.1 Назначение модели

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


Таблица 1

Применение поверхности и требования к ней

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

Отсюда возникает два важных вопроса:

1.         Должна ли поверхность точно удовлетворять ординатам или лучше чтобы она хорошо сглаживалась? В следующем разделе мы рассмотрим эту проблему.

2.         Насколько плотной допускается быть контрольной сетке? Если поверхность будет использоваться только для промежуточных действий (расчёт сечений, расчёт гидростатики, расчёт элементов поверхности, раскрой листов и расстановка шпангоутов), и не будет изменяться в дальнейшем, то допустима плотная сетка. В противном случае, сетка должна содержать разумное количество вершин.

2.3.2 Ординаты

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

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

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

2.3.3 Формат ординат

Часто подгоняемые ординаты являются шпангоутами. Шпангоутов бывает достаточно, чтобы описать форму корпуса в районе мидель-шпангоута, где ватерлинии обычно параллельны диаметральной плоскости. Но в оконечностях, где форма судна резко меняется при переходе в нос или корму, шпангоуты - не лучший способ описания формы корпуса. Форму форштевня и ахтерштевня очень трудно определить с помощью шпангоутов. По возможности, таблица ординат, с которой вы работаете, должна содержать профиль судна по диаметральной плоскости, окончания ватерлиний в оконечностях судна, точки слома на корпусе, а также характерные линии корпуса, такие как плоские участки бортов и днища. Компьютер сам не сможет отобразить эти особенности, если они не заданы явно.

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

2.4 Методы автоматического создания поверхности

Существует много программ и алгоритмов для создания поверхностей по ординатам, включая основные CAD системы, такие как ProEngineer™, Autodesk’s AutoSurf®, Intergraph EMS™, а также другие программы конструирования корпусов. Почему бы не нажать кнопку одной из этих программ и не получить результат? Это классический пример, “когда вещь слишком хороша, чтобы быть правдой’.

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

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

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

Почему эти автоматические методы неуспешны? Чтобы лучше разобраться в проблемах построения поверхностей будет полезно сравнить эту работу с обычным и более понятным процессом построения аналитических кривых по точкам.

Известно, чтобы построить кривую нужно иметь набор точек. Возможно, это является пережитком школьных времён, когда ученику давалась упорядоченные пары чисел для изображения на плоскости. Было упущено из вида, что точки расставлены в определённой последовательности, показывая, таким образом, связь между точками. Если при проведении кривой по точкам затрагивается вычислительная сторона, то этот процесс называется монотонным возрастанием параметра. Здесь студент начинает размышлять о том, чего не дано в задании. Как минимум, он должен ответить на следующие два вопроса:

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

·           Как значения параметра должны соответствовать заданным точкам?

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

Математически единственным требованием является то, чтобы значения параметра монотонно возрастали при переходе по кривой в заданном направлении.

2.5 Ручной и полуавтоматический методы

Существует лучший, более практичный метод создания модели по ординатам. В FastShip заложены некоторые инструменты, которые сделают этот процесс как можно более и эффективным. Эти инструменты можно подразделить на две категории: ручной подгонки и полуавтоматической подгонки. Хотя эти инструменты не являются автоматическим, мгновенным решением проблемы, они способны достаточно реально и эффективно решать проблему построения модели по существующим ординатам.

2.5.1 Ручная подгонка/сглаживание

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

Для этой работы в FastShip имеются следующие инструменты:

·           Возможность видеть ординаты и/или маркеры, наложенные на поверхность.

Любые ординаты можно показать на экране, наложив их на поверхность, а также сечения поверхности, проведённые в местах расположения ординат. Это позволяет сразу увидеть разницу между ординатами и построенной поверхностью.

·           Редактирование в реальном времени.

·           Использование нескольких видовых экранов

·           FastShip позволяет проектировщику измерить координаты любой точки на поверхности, а также измерить расстояние между ординатой и точкой поверхности. Также можно вычислить элементы гидростатики, чтобы знать имеет ли судно соответствующие водоизмещающие свойства. Можно также измерить кривизну поверхности и кривизну любого сечения

·           Функция двойной сетки

Иногда случается, что на каком-то участке поверхности нужно большее количество вершин, чтобы более точно подогнать поверхность по ординатам. В процессе проектирования в любое время можно добавить ряд или столбец в контрольную сетку. Однако, в некоторых случаях это может причинять неудобства. Чтобы решить эту проблему, FastShip предусматривает функцию удвоения числа столбцов или рядов поверхности, не меняя при этом формы поверхности. Данную функцию можно использовать вместе с функцией split-net, которая позволяет расщепить поверхность на две части, и рассматривать их как самостоятельные. Т.о. эта функция применяется, чтобы не загромождать модель.

·           Использование макросов для сообщения о несоответствии поверхности ординатам

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

В основном процесс ручной работы начинается с плоского листа NURBS поверхности, который затем преобразуется в нужную форму, посредством вставки дополнительных вершин при необходимости. Можно снизить расход времени на построение модели, если в библиотеке проектировщика уже есть модель с подобной топологией. Например, многие контейнеровозы имеют схожую топологию; у них один винт, имеются плоские участки бортов и днища, радиус скулы, бульбообразный нос, бак и ют. Даже если имеющаяся поверхность совершенно отличается по размерам, но имеет такую же топологию, то её можно масштабировать, и затем по месту подогнать по ординатам.



Информация о работе «Формирование математической модели корпуса теплохода-площадки в программе FastShip6»
Раздел: Информатика, программирование
Количество знаков с пробелами: 69253
Количество таблиц: 1
Количество изображений: 30

0 комментариев


Наверх