Научная статья на тему 'Алгоритм деления объемной модели на слои для 3Б-печати'

Алгоритм деления объемной модели на слои для 3Б-печати Текст научной статьи по специальности «Математика»

CC BY
821
138
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТЕХНОЛОГИЯ ОБЪЕМНОЙ ПЕЧАТИ / МЕТОД ПОСЛОЙНОГО НАПРАВЛЕНИЯ / STL ФОРМАТ / АЛГОРИТМ РАСЧЕТА ПЕРЕСЕЧЕНИЙ / ЗАПОЛНЕНИЕ МОДЕЛИ / G-CODE / 3D-PRINTINQ TECHNOLOGY / FUSED DEPOSITION MODELINQ (FDM) / STL FILE / INTERSECTIONS FINDING ALGORITHM / INFILL

Аннотация научной статьи по математике, автор научной работы — Гущин Илья Александрович, Авдеев Артем Романович, Швец Андрей Александрович, Дроботов Алексей Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Гущин Илья Александрович, Авдеев Артем Романович, Швец Андрей Александрович, Дроботов Алексей Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DIVIDING MODEL TO LAYERS FOR 3D-PRINTING ALGORITHM

Mathematical and algorithmic aspects of dividing the 3D-product model in STL format to layers in order to print on 3D-printer, errors and how to resolve them are considered. Implementation of the described points, could lead to an increase in software productivity.

Текст научной работы на тему «Алгоритм деления объемной модели на слои для 3Б-печати»

Key words: arrangement equipment, heuristic algorithms, transport and warehouse system, principles of forming of production sites.

Kucelap Kirill Aleksandrovich, postgraduate, kirill. kucelap@,mail. ru, Russia, Moscow, MSTU "STANKIN",

Voronenko Vladimir Pavlovich, doctor of technical science, professor, [email protected], Russia, Moscow, MSTU "STANKIN",

Shaldov Aleksandr Jeduardovich, postgraduate, shaldov_ae@,mail. ru, Russia, Moscow, MSTU "STANKIN"

УДК 004.921

АЛГОРИТМ ДЕЛЕНИЯ ОБЪЕМНОЙ МОДЕЛИ НА СЛОИ

ДЛЯ 3Б-ПЕЧАТИ

И. А. Гущин, А.Р. Авдеев, А. А. Швец, А.В. Дроботов

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

Ключевые слова: технология объемной печати, метод послойного направления, STL формат, алгоритм расчета пересечений, заполнение модели, G-Code.

Технологии объемной печати перестали быть просто средством прототипирования и перешли в область промышленного производства. Все больше промышленных предприятий проводят инновационную политику, заменяя традиционные способы производства на аддитивные технологии [1, 2]. Так как ЭБ-принтеры создают изделие по слоям, то программное обеспечение для подготовки работы принтера должно формировать слои изделия для печати на основе исходной объемной модели изделия, обычно передаваемого в формате STL [Э]. STL файл представляет из себя список координат вершин треугольных граней (фасетов), образующих поверхность. Такой формат представления данных прост, но обладает рядом существенных недостатков: снижается точность геометрического представления модели, погрешность округления координат вершин фасетов приводит к несовпадению логически идентичных вершин различных фасетов, неупорядоченность следования фасетов в файле усложняет алгоритмы обработки. Все это приводит к ошибкам в процессе подготовки программы работы ЭБ-принтера и снижению производительности программного обеспечения. Рассмотрим проблемы, вызванные данными факторами на различных стадиях подготовки программы работы устройства и способы их устранения.

Существует множество алгоритмов для нарезания модели изделия на слои, но все они построены по принципу поиска пересечений фасетов изделия с секущими плоскостями [0]. Основными шагами их работы являются: создание секущих плоскостей, определение векторов, образуемых пересечением секущей плоскости с моделью изделия (состоящей из фасетов) и генерация замкнутых контуров.

Для этого сперва создается множество плоскостей, параллельных плоскости ОХУ. Каждая плоскость имеет нормальный вектор п и отстоит от предыдущей на высоту слоя Т. Расстояние от начальной плоскости ОХУ - гсп = п ■ Т, где п - номер плоскости. Пересечение (рис. 1) каждой из этих плоскостей 2 с моделью изделия 1 и образует печатаемый слой 3.

0 х

Рис. 1. Модель изделия, пересекаемая плоскостью

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

В 1

Рис. 2. Возможные варианты пересечения фасета ABC и секущей плоскости

100

Первый вариант (см. рис. 2, В 1) показывает случай пересечения фасета плоскостью по двум граням. Координаты 2 конечных точек А( ха, уа, 2а), В( хь, уь, ) и С (хс, ус, 2с) сторон фасета должны удовлетворять выражению

тт( 2а, 2ь, 2С) < 2сп < тах( 2а, 2ь, 2С ). (1)

Второй вариант (см. рис. 2, В 2) также удовлетворяет выражению 1, но результатом пересечения являются три точки, две из которых одинаковы.

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

Четвертый вариант (см. рис. 2, В 4) возможен, когда две вершины фасета лежат на секущей плоскости. Тогда вектор пересечения будет совпадать с гранью фасета [0].

Для определения границ вектора I пересечения фасета и секущей плоскости (см. рис. 1) определяют радиус-вектора I и ] (рис. 3), проведенные к вершинам фасета из начала координат и рассчитывают расстояния и dj от каждой из вершин до плоскости по выражениям 2 и 3:

^ = Г • Я - 2сп. (2)

dj = j'Я - 2сп. (3)

Рис. 3. Определение точек пересечения фасета плоскостью: а - фасет, пересеченный плоскостью; б - определение вектора е грани и радиус-вектора р пересечения грани с плоскостью

Вектор грани e может быть найден из выражения 4 как разность двух векторов вершин. Далее, пользуясь основными векторными выражениями, а также свойством подобия треугольников рассчитывают пересечения каждой из граней фасета с плоскостью по выражению 5 (см. рис. 3, б):

R = R - R , (4)

101

(5)

Повторяя действия, описанные выше для всех трех граней, получают вектор пересечения 1 (6) на основе радиус-векторов р и д , либо точку, если плоскость пересекает фасет только в одной вершине

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

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

Следующим этапом процесса нарезания модели изделия на слои является генерация замкнутых контуров. Особенности экспортирования модели изделия из систем автоматизированного проектирования в формат STL и округление координат вершин фасетов в файле приводят к тому, что найденные на предыдущем этапе вектора l не образуют замкнутый контур. Этому мешает случайный порядок и направление векторов l в образованном контуре, несовпадение координат окончания одного вектора и начала другого.

Для устранения проблемы случайного порядка расположения и направления векторов l контура необходима их сортировка по следующему алгоритму: выбирается конец первого вектора lt - B (x, y\), ищется ближайшая точка Aj (Xj, y.) другого вектора l., независимо от того, является

l = p - q .

(6)

Рис. 4. Выделение отдельных фасетов для обработки

ли эта точка началом или концом вектора . Вектор , имеющий ближайшую точку, становится смежным. Расстояние от конца Б{ первого вектора ^ до ближайшей точки А^ (Xj, у]-) смежного вектора I^ вычисляют по выражению

Б = ^ (х - х] )2 + (у - у )2. (7)

Если ближайшая точка А■ (Xj, у^ ) является началом смежного вектора ^, то этот вектор располагается в контуре вслед за предыдущим без изменения его направления. Если Aj (Xj, у]- ) - окончание вектора lj , то у вектора lj меняют направление (т.е. меняют местами точки начала и конца вектора).

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

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

1) измеряют расстояние Б1 между окончанием открытого вектора и началами других векторов, берут минимальное расстояние Б1 и соответствующий смежный вектор;

2) измеряют расстояние Б2 между окончанием открытого вектора и началом первого вектора контура.

3) если Б1 < Б2, то создают вектор между окончанием открытого вектора и началом смежного вектора. В противном случае создают вектор между окончанием открытого вектора и началом первого вектора контура.

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

Список литературы

1. Дроботов А.В., Авдеев А.Р., Швец А.А. Анализ способов повышения производительности устройств объёмной печати для изготовления сборочных изделий // Сборка в машиностроении, приборостроении. 2015. № 11. C. 3-6.

2. FDM Technology. About Fused Deposition Modeling [Электронный ресурс] / Stratasys Ltd. 2014. Режим доступа: http: //www.stratasys. com/3 d-printers/technologies/fdm-technology (дата обращения: 16.03.2016).

3. Принципы создания программы работы устройства объёмной печати по трёхмерной модели / И. А. Гущин, А.Р. Авдеев, А.А. Швец, А.В. Дроботов // Известия ВолгГТУ. Сер. Прогрессивные технологии в машиностроении. Волгоград. 2015. № 11 (173). C. 50-53.

4. Slicing Triangle Meshes: An Asymptotically Optimal Algorithm [Электронный ресурс] / DAINF - UTFPR. 2014. Режим доступа: http://www.dainf.ct.utfpr.edu.br/murilo/public/slicing.pdf (дата обращения: 16.03.2016).

5. Computational Geometry: Algorithms and Applications / M. D. Berg [et al.]. 3rd ed. Santa Clara, CA, USA: Springer-Verlag TELOS. 2008. 386 p.

6. An Enhanced Slicing Algorithm Using Nearest Distance Analysis for Layer Manufacturing / M. Vatani [et al.] // International Journal of Mechanical, Aerospace, Industrial, Mechatronic and Manufacturing Engineering. 2009. Vol. 3, No. 1. P. 74-79.

Гущин Илья Александрович, студент, fr\>lock3434agmail.com, Россия, Волгоград, Волгоградский государственный технический университет,

Авдеев Артем Романович, асп., avdartromagmail. com, Россия, Волгоград, Волгоградский государственный технический университет,

Швец Андрей Александрович, асп., shvetsandrewagmail.com, Россия, Волгоград, Волгоградский государственный технический университет,

Дроботов Алексей Владимирович, канд. техн. наук, доц., alexey.drobotova gmail.com, Россия, Волгоград, Волгоградский государственный технический университет

DIVIDING MODEL TO LAYERS FOR 3D-PRINTING ALGORITHM I.A. Gushchin, A.R. Avdeev, A.A. Shvets, A. V. Drobotov

Mathematical and algorithmic aspects of dividing the 3D-product model in STL format to layers in order to print on 3D-printer, errors and how to resolve them are considered. Implementation of the described points, could lead to an increase in software productivity.

Key words: 3D-printing technology, Fused Deposition Modeling (FDM), STL file, intersections finding algorithm, infill, G-Code.

Gushchin Ilya Alexandrovich, student, [email protected], Russia, Volgograd, Volgograd State Technical University,

Avdeev Artem Romanovich, postgraduete, avdartrom@gmail. com, Russia, Volgograd, Volgograd State Technical University,

Shvets Adrew Alexandrovich, postgraduete, shvetsandrew @,gmail com, Russia, Volgograd, Volgograd State Technical University,

Drobotov Alexey Vladimirovich, candidate of technical science, docent, alex-ey. drobotov@gmail. com, Russia, Volgograd, Volgograd State Technical University

УДК 681.31:621.95(075)

СОВЕРШЕНСТВОВАНИЕ КОНСТРУКЦИИ ИНСТРУМЕНТА НА ОСНОВЕ МОДЕЛИРОВАНИЯ ПРОЦЕССА РАСТАЧИВАНИЯ

ГИЛЬЗЫ ГИДРОЦИЛИНДРА

А.Ю. Горелова, М.Г. Кристаль

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

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

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

105

i Надоели баннеры? Вы всегда можете отключить рекламу.