Спросить
Войти

МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ВИЗУАЛИЗАЦИИ КРУЧЕНЫХ КАНАТНО-ВЕРЕВОЧНЫХ ИЗДЕЛИЙ ДЛЯ ЗАДАЧ ПРОЕКТИРОВАНИЯ ОРУДИЙ ПРОМЫШЛЕННОГО РЫБОЛОВСТВА

Автор: А. О. Ражев

УДК 004.9:639.2.081.1

А.О. Ражев1, А.А. Недоступ2, Е.Е. Львова2

1 ООО «Лаборатория цифровых технологий», Калининград, 236022 e-mail: razhev@digitechlab.ru;
2 Калининградский государственный технический университет, Калининград, 236022 e-mail: nedostup@klgtu.ru

МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ВИЗУАЛИЗАЦИИ КРУЧЕНЫХ КАНАТНО-ВЕРЕВОЧНЫХ ИЗДЕЛИЙ ДЛЯ ЗАДАЧ ПРОЕКТИРОВАНИЯ ОРУДИЙ ПРОМЫШЛЕННОГО РЫБОЛОВСТВА

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

A.O. Razhev1, A.A. Nedostup2, E.E. L&vova2

1 Digital Technology Laboratory, LLC Kaliningrad, 236022 e-mail: razhev@digitechlab.ru;
2Kaliningrad State Technical University, Kaliningrad, 236022 e-mail: nedostup@klgtu.ru

MATHEMATICAL MODEL OF TWISTED ROPES VISUALIZATION FOR FISH GEAR DEVELOPMENT APPLICATIONS

The mathematical model for visualization of twisted rope products on a personal computer with a heterogeneous architecture, which was proposed for the design of industrial fishing gears in order to reduce the load on the main processor, system bus and main memory, was proposed.

При компьютерной визуализации крученых канатно -веревочных изделий (КВИ), из которых состоят различные рыболовные материалы и элементы, в том числе входящие в состав рыболовного трала, в некоторых задачах необходимо добиваться максимальной их детализации и реалистичности. К таким задачам можно отнести отображение формы орудия рыболовства (ОР) под действием на него различных сил [1, 2] в процессе его проектирования. Особенно это касается систем автоматизированного проектирования орудий промышленного рыболовства, позволяющих отображать форму ОР в стереоскопическом режиме [3] при выполнении процесса проектирования с использованием специализированных трехмерных устройств пользовательского ввода [4-6].

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

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

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

Рис. 1. Архитектура гетерогенной системы персонального компьютера

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

Рис. 2. Архитектура графической подсистемы

На рис. 2 голубым цветом выделены программные стадии графического конвейера: вершинный шейдер (Vertex Shader), геометрический шейдер (Geometry Shader), пиксельный шейдер (Pixel Shader). К аппаратным стадиям относятся сборщик входных данных (Input Assembler), растеризатор (Rasterizer) и модуль слияния выходных данных (Output Merger).

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

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

проволока

внутренний слой пряди

Рис. 3. Двухслойный шестипрядный стальной трос

С требуемой по условию задачи степенью дискретизации (с заданной погрешностью визуализации) разобьем трос на прямолинейные отрезки вдоль его продольной оси при условии, что в пределах одного отрезка часть каждой проволоки можно представить в виде цилиндра. Составим два слоя уравнения, связывающего координаты центральной (1) и обвитых вокруг центральной (2) проволоки в плоскости сечения троса (плоскости ОХУ на рис. 4) в локальной прямоугольной декартовой системе координат с началом в одном конце продольной оси отрезка троса, ось ОХ которой направлена в направлении другого конца отрезка, с координатой X.

;•« •• Л*»*!»

Рис. 4. Проволоки троса в плоскости OXY

2ni

yt = R cos

2ni

■ 2nK ( z У 2nKx (z

x. . = R sin

1 >J 1

+ 2nK ( z + z0 ) + R sin + 2nK2 ( z + z0 )

2ni

y . = R cos--+ 2 nKj (z + z0)

+ R cos

V ■ &2

— + 2лК2 (z + z0)

где 1 и] - порядковые номера пряди в тросе и проволоки в пряди соответственно; Rl и Л2 - радиусы слоя пряди в тросе и проволоки в пряди соответственно; К1 и К2 - значение крутки (круток на метр) пряди в тросе и проволоки в пряди соответственно, для правой крутки значение Ки2) > 0, для левой - К1(2) < 0; п1 и п2 - количество прядей в тросе и проволок в пряди соответственно; z0 - расстояние от начала троса до начала отрезка троса.

Свяжем значение радиусов с количеством прядей и проволок в пряди:

0 _ К + й/2 й

К ———;—:—т, К — 1 sin (л/n V 2sin (л/ n)&

где d - диаметр проволоки.

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

Рис. 5. Аппроксимация участка проволоки прямоугольниками Запишем координаты вершин прямоугольников в векторной форме:

*&=( х,; И ;Q) + [ d

. 2лк d 2лк ^

sin-;—cos-;0

где k - порядковый номер прямоугольника; m - количество разбиений.

При переходе от локальной системы координат к модельной к каждой вершине прямоугольника применим аффинное преобразование:

>\\Т

r = r +(Mr;)(5)

где г0 - координаты конца отрезка троса; M - матрица поворота оси OZ до оси цилиндра в модельной системе координат относительно конца отрезка троса.

Для нахождения M достаточно найти преобразование поворота единичного вектора e = (0;0;1) на угол ф вокруг вектора a, перпендикулярного плоскости, проходящей через ось OZ и ось цилиндра:

a = e • r, cos ф = e • r, r = rk

где rk и rk+m - координаты концов оси цилиндра.

Матрица поворота вокруг единичного вектора e на угол ф определяется как [10]:

M(e, ф) =

cos ф + (1 - соэф)^ (1 -ЦсовфЦ) eey - ezyj1 - cos2 ф (1 - ^ф^^ + e, V1- cos2 ф (1 - ^ф)^ + e_sj 1 - cos2 ф ||cos + (1 -| |cos ) e^ (1 - ^ф)^ - ex*J1 - cos2 ф (1 - cos ф)^^ - eyy]1 - cos2 ф (1 -1|cos ф||)ejey + ex*J1 - cos2 ф

cos ф + (1 - cos фХ

В имитационной модели математические зависимости (1)-(3) вычисляются на центральном процессоре, а (4)-(7) - на графическом в геометрическом шейдере. В результате на каждый отрезок проволоки приходится обрабатывать 6m вершин. С учетом того, что графический процессор способен одновременно по одному алгоритму обрабатывать множество однотипных данных (в данном случае отрезков проволоки), при реализации описанной модели происходит существенное повышение производительности вычислений. За один вызов графического шейдера обрабатываются все вершины одного отрезка проволоки. В графическом процессоре одновременно

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

Результат работы алгоритма для шестипрядного каната с количеством разбиений по его длине n = 381 и количеством разбиений поверхности каждой пряди m = 17 показан на рис. 6.

Рис. 6. Вид шестипрядного каната на ЭВМ при n = 381, m = 17

Материал подготовлен при поддержке Фонда содействия развитию малых форм предприятий в научно-технической сфере (Фонда содействия инновациям) в рамках проекта «Разработка системы автоматизированного проектирования орудий промышленного рыболовства».

Литература

1. Nedostup A.A., Razhev A.O. The problem of dynamic modeling of the trawl system // 13th International workshop Methods for the Development and Evaluation of Maritime Technologies: DEMAT, 2017. - Japan. Sapporo, 2017. - V. 10. - P. 35-42.
2. Обоснование создания тренажерного комплекса по проектированию и моделированию траловых систем / В.А. Волкогон, А.А. Недоступ, А.О. Ражев, Н.А. Кострикова, Р.К. Поляков,

B.И. Кузин // Морские интеллектуальные технологии. - № 4 (38). - Т. 2. - 2017. - С. 177-185.

3. Рожков С.Н., Овсянникова Н.А. Стереоскопия в кино-, фото-, видеотехнике. - М.: Парадиз, 2003. - С. 95-101. - ISBN 5-98547-003-2.
4. 3D User Interfaces. Theory and Practice / Jr. LaViola, Е. Kruijff, R. McMahan, D. Bowman, I. Poupyrev. - Second Edition. - Addison-Wesley, 2017. - ISBN 978-0-13-403432-4.
5. Robertson A. Leap Motion&s revamped hand tracking is getting built straight into VR headsets. The Verge [Electronic resource]. - URL: https://www.theverge.com/2016/2/17/11021214/leap-motion-hand-tracker-virtual-reality-orion-mobile-vr (дата обращения: 25.02.2020).
6. Official Website of Ultraleap [Electronic resource]. - URL: https://www.ultraleap.com] (дата обращения: 25.02.2020).
7. Салибекян С.М., Панфилов П.Б. Построение распределенных гетерогенных вычислительных систем на базе объектно-атрибутной архитектуры // Объектные системы. - 2011. - № 5 (5). C. 83-88.
8. Недоступ А.А., Ражев А.О. Математическое моделирование инженерных сетных конструкций в гетерогенной среде // Разностные схемы и их приложения: Тезисы Международной конференции, посвященной 90-летию профессора В.С. Рябенького. - М., 2013. - С. 81-82.
9. Боресков А. Разработка и отладка шейдеров. - БХВ-Петербург, 2006. - ISBN 5-94157-712-5.
10. Лурье А.И. Аналитическая механика. - М.: Физматлит, 1961. - 824 с.
САПР трал алгоритм модель gpu шейдер cad trawl algorithm model
Другие работы в данной теме:
Контакты
Обратная связь
support@uchimsya.com
Учимся
Общая информация
Разделы
Тесты