В статье я дам пошаговую инструкцию по имитации простеньких сварных швов в Компас 3Д. Мы сделаем не просто схематичное обозначение на чертеже, а сгенерируем настоящие, объёмные, подходящие для 3Д печати швы.
Cпособ не самый простой и немного через одно место, но это лучше чем ничего :)
Но сначала расскажу про суть подхода, зачем так сложно и про различные нюансы и проблемы с которыми я столкнулся.
Мой способ далеко не самый оптимальный и можно 100% сделать гораздо лучше. Но он работает. И подойдёт как стартовая точка, если вы делаете швы в первый раз. Думаю этот подход, в целом, подойдёт для всех CAD программ, просто надо учитывать нюансы интерфейса.
Я опишу все шаги текстом, но в конце блока будет видео, где я опишу те же самые шаги более наглядно.
Суть подхода
Схаматично шаги можно описать так:
1. Берём две детали, которые формируют шов, урезаем до минимальных габаритов и сохраняем как два STL файла.
2. Импортируем оба STL файла в проект в Blender-е и делаем так, чтобы детали слегка пересекались.
3. По месту соприкосновения применяем Welder Addon, который сгенерирует шов.
4. Сохраняем результат в STL файл и затем открываем его в Компас 3Д.
5. Вставляем результат работы в сборку и накладываем на нужное место с помощью сопряжений.
Больно и сложно только в первый раз :) Плюс многие швы можно переиспользовать, например на бонках.
Почему так сложно?
Проблема в том, что все популярные CAD редакторы, такие как Solid Works, Fusion 360, Компас 3Д и другие работают с простыми объектами, которые можно описать параметрически. Они не умеют работать с конкретными вертексами (вершинами) объекта.
Взять, например, цилиндр - в CAD у него нет вообще ни одной вершины. Просто координаты в пространстве, высота и радиус.
То есть в CAD мы описываем объекты параметрически.
Для швов же нам нужна программа, которая позволяет рисовать 3Д объекты. Программа в которой все объекты будут состоять из полигонов и где мы можем как угодно манипулировать их вертексами напрямую. То есть программа в которой можно творить :) В нашем случае это Blender.
Почему Blender? Потому что он мощный, бесплатный и доступен на всех популярных десктоп платформах. Для наших целей его более чем достаточно. В нём даже есть неплохие инструменты для лепки. Нам они не пригодятся, но в теории их можно было бы использовать, чтобы доработать наш шов.
В общем мы будем совмещать два пути - CAD программу для инженерного 3Д проектирования и программу для творческого 3Д моделирования.
Альтернативные методы
Стоит упоминуть, что можно поступить проще: Если вы хорошо владеете программами для скульптинга (например Z-brush), то можно осуществить добавление сварных швов и следов сварки на самом финальном этапе - когда готовая модель сохранена уже в формате для печати.
Но мне этот подход не подходит по двум причинам:
1. Я не умею мастерски вручную гибко лепить/генерировать сварные швы по месту, просто не владею навыками. Да и не вижу особого смысла, слишком редко и мало это пока нужно в проекте.
2. Отсутствие гибкости. Если допустим, во время тестовой сборки я обнаружу, что часть геометрии надо переделать - мне придётся вносить изменения в CAD файл. И после этого рисовать все швы по новой. Всё таки, на мой взгляд, удобнее, когда шов, по сути, добавляется в сборку как независимый компонент.
Начнём
Я буду делать шов на примере этой детали:
Все локальные размеры нам известны:
Зная их создаём новый файл, ограничив его участком, на котором будет находиться шов:
Рекомендую вторую фигуру строить от плоскости, а не от первой фигуры, чтобы первую можно было независимо её скрыть. Далее сохраняем прямоугольную фигуру в отдельный файл и цилиндрическую фигуру тоже в отдельный файл.
Нажимаем "Файл" -> "Сохранить как...", выбираем тип "STL", далее "Сохранить с параметрами". Параметры выставляем как на картинке:
То есть достаточно выставить только одну галочку - "Максимальное угловое отклонение" с значением 4. Если упростить, то, грубо говоря, тут мы задаём на сколько полигонов нужно дробить крулгые поверхности. Сильно загоняться тут не стоит, в конце поймёте почему.
Далее нам понадобится Blender. В версии 4.0 и 3.6 LTS у меня аддон не заработал, но заработал на 3.3 LTS, рекомендую скачать на официальном сайте:
В самом блендере понадобится установить аддон, вот ссылка на файл:
https://tsartank.pro/assets/downloads/Welder_v1.3.9.zip
Если не знаете как устанавливать аддоны, то вот инструкция:
Далее по очереди импортиуем оба STL файла:
Обе фигуры окажутся ровно одна над другой. Далее нам надо одну фигуру едва едва задвинуть внутрь второй:
Убеждаемся что выбран "Object Mode", зажав Shift выделяем оба объекта, кликаем на кнопку справа, чтобы открыть панель:
Активируем таб со словом Welder, выбираем нужный стиль шва и кликаем на кнопку Weld:
На месте стыка появится шов. Повертев и покликая кнопку мыши придаём ему нужную форму:
Вроде бы всё круто, но присмотревшись мы видим шляпу :) Вернее рукав. Конец шва мало того, что странно отклонён в сторону, так ещё и полый внутри! Будем исправлять. Выделяем объект шва и применяем к нему все модификаторы (потребуется нажать Apply на трёх элементах списка):
Потом переходим в Edit Mode:
И просто удаляем крайние рёбра хвостика, ряд за рядом. Чтобы ускорить процесс, можно придерживать следующего алгоритма: Зажимаем Alt, кликаем на ребро (чтобы выделить все рёбра по контуру), нажимаем Delete, выбираем Vertices:
И так контур за контуром рукав будет уменьшаться. Для наглядности можно временно скрыть две базовые фигуры, кликнув на значки глазка:
В итоге рукав будет выпирать совсем чуть чуть и примет приличный вид, типа такого:
Но по хорошему оба рукова (а их естественно два), надо бы заткнуть с обоих сторон, чтобы превратить поверхностную модель в твёрдое тело. Для этого мы аналогично описанному выше способу выделяем их, но вместо удаления нажимаем кнопку F:
Получилась этакая скрученная в кольцо колбаска сама залезающая в свои текстуры на концах :) Далее экспортируем проект как STL файл и на данном шаге с Blender мы наконец-то закончили.
В блендере есть довольно продвинутые инструменты для лепки/скульптинга. Так что в теории можно было бы ещё поиграться с режимом Sculpting, чтобы придать шву более интересную форму. Могу порекомендовать это видео по теме, если нужны основы:
Наконец-то возвращаемся к нашему любимому Компасу. Выбираем меню "Файл" -> "Открыть" и открываем STL файл, не забыв указать его тип:
Далее переключаемся на сборку и добавляем компонент, выбрав наш шов из списка активных:
С сопряжениями всё довольно просто. Рука тянется к "Соосность", но это не сработает, ведь для компаса это просто набор полигонов, формально цилиндра тут нет :) Но ничего страшного, "совпадение" тоже прекрасно решает наши задачи: выделяем любое вертикальное ребро "цилиндра" компонента и основной цилиндр в сборке:
Повторяем на ещё паре аналогичных ребёр и объект оказывается великолепно отцентрован. Далее примагнитим лицевые плоскости через "совпадение" и объекты оказываются полностью наложены друг на друга. На этом этапе можно словить такой эффект, когда компонент слегка закручен:
Но делать с этим ничего не нужно, нам это совершенно не мешает :) Потому что теперь мы переключаемся обратно на таб с компонентом загруженным из SVG файла и скрываем цилиндр и параллелепипед:
После этого в сборке останется только сварной шов:
Фух. Мы закончили. Надеюсь вы не утонули в скриншотах.
Так же я описал все шаги в данном видео:
Ещё один важный момент. Иногда шов имеет синий цвет:
Я не знаю почему, но у меня есть теория. Помните мы работали с рукавами шва и закрывали концы недостающими полигонами? То есть превращали поверхностную модель в твёрдое тело. У меня есть подозрение, что синим обозначается объект, который не является твёрдым телом (а значит не пригоден для 3д печати). Но я не уверен насчёт этого момента, буду рад если в комментариях отметится знающий человек.
Мысли и идеи
В перспективе я хотел бы скульптить швы сам.
Похоже, что лучший инструмент для этого Z-brush. И туториалов на ютубе у него тьма, в том числе и по швам:
Но, к сожалению, программа сделана для инопланетян и, соответственно, имеет инопланетный интерфейс. Времени на освоение пока нет. Да и не взлетит она на моей Ubuntu.
У Blender тоже есть мощный инструментарий скульптинга, но видео примеров по сварным швам почти нет. Лучшее, что я нашёл это вот это скомканное видео. Мне даже удалось с десятой попытке воспроизвести что-то подобное, но результат меня не устроил, когда делаешь сам всплывает много нюансов:
Можно ещё покопать в сторону Adobe Substance Painter, швы мне показались симпатичными:
Надеюсь материал будет полезен, ну или хотя бы был интересен. Если да, то не скупитесь на лайк.