Sl-Alex домашняя лаборатория

3D модели для KiCAD. Часть 3 - импорт

Просмотров: 4968Комментарии: 4
Статьи

Перевод: EN
3D модели для KiCAD. Часть 3 - импорт

В этой статье я покажу, как использовать 3D модели, вне зависимости от того, в каком 3D редакторе они были созданы. Напомню, в первой статье цикла мы создавали модель в OpenSCAD, а во второй использовали FreeCAD. Второй путь является более интуитивным и более наглядным, однако OpenSCAD не стоит сбрасывать со счетов: в некоторых случаях он может оказаться предпочтительнее. Возможно, вы нашли третий путь и скачали готовую модель в интернете. В любом случае, какой бы путь создания 3D модели вы бы ни выбрали, вы обязательно столкнётесь с проблемой её использования в KiCAD. В этой статье я постараюсь подробно описать процесс подготовки модели для KiCAD и осветить некоторые подводные камни этого процесса.

Как вы возможно знаете, KiCAD использует формат VRML (расширение *.wrl). Однако, не спешите радоваться. Скорее всего использование вашей модели, сконвертированной в VRML, закончится неудачей. Все дело в том, что формат, который понимает KiCAD, можно получить только при помощи программы Wings3D. Для начинающих (и не только начинающих) все попытки нарисовать что-то там заканчиваются провалом. И не дай Бог, вам понадобится что-то поправить в модели! Это может привести к часам потраченного впустую времени. Даже если вы станете экспертом по Wings3D, вы всё равно не сможете создавать (и тем более, редактировать) модели так же быстро, как, к примеру, во FreeCAD. В моём случае, создание модели во FreeCAD заняло 6 минут. В Wings3D у меня это заняло бы как минимум полчаса. Для меня выбор очевиден.

Для того, чтобы открыть модель в Wings3D и затем сконвертировать её в понятный KiCAD формат, нам надо подготовить входные данные для Wings3D. Обычно я для этого использую формат STL, хранящий всю модель в виде треугольников. Далее мы рассмотрим экспорт из FreeCAD и OpenSCAD в формат STL.

Подготовка файла STL во FreeCAD

Подготовка файла STL во FreeCAD не проста, а очень проста. Просто выделим во FreeCAD два ряда выводов и корпус, а затем сделаем экспорт выделенного в формат STL (меню "Файл/Экспорт"). Не выделяйте все, иначе вы экспортируете также и невидимые объекты. На этом шаге STL-модель из FreeCAD уже готова для импорта в Wings3D.

Подготовка файла STL в OpenSCAD

В OpenSCAD вы тоже можете найти пункт "File/Export/Export as STL". Однако, не спешите радоваться, Wings3D в лучшем случае просто не откроет ваш файл, а в худшем вывалится с ошибкой. Виной всему формат STL-файла. Дело в том, что Wings3D понимает только двоичный формат, в то время как OpenSCAD выдаёт текстовый. Для преобразования формата воспользуемся свободно доступной программой MeshLab. Откроем нашу STL-модель (меню "File/Import Mesh") и сохраним её в тот же файл в том же формате (меню "File/Export Mesh"). Перед сохранением проверьте, что выбрана опция "binary encoding".

Добавляем цвета

Ну вот, наши обе модели открываются в Wings3D (меню "File/Import/StereoLithography (.stl)") и выглядят примерно одинаково. Давайте добавим красок в этот скучный серый мир! Открываем окно с цветовой палитрой (меню "Window/Palette") и список материалов (меню "Window/Outliner"), затем выделяем нужные участки модели и применяем к ним нужный цвет из палитры. Затем выделяем всю модель, нажимаем правую кнопку и в выпадающем меню выбираем "Vertex Attributes/Colors to Materials". После этого в списке материалов появятся несколько материалов, соответствующих выбранным цветам. У каждого материала обнулим значения "Ambient", "Specular" и "Emission". Сохраним модель в формате WRL. На этом подготовка модели для KiCAD готова.

Использование модели в KiCAD

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

Посадочное место для SO-16 Рисунок 1: Посадочное место SO-16

Теперь открываем свойства компонента и добавляем нашу модель в список 3D моделей. Если вы используете дюймовую систему, то вам, скорее всего, не нужно ничего масштабировать. В случае, если вы рисовали всё в миллиметрах, добавьте коэффициент масштабирования 1/2.54 (~0.3937) для каждой оси. Если вам нужно дополнительно сместить модель по какой-либо из осей, посчитайте смещение в миллиметрах и используйте коэффициент 1/25.4 (~0.03937). В моем случае модель понадобилось сместить на 0.2мм (половина ширины вывода) влево, поэтому смещение равно 0.2/25.4 (0.07874)

Свойства посадочного места Рисунок 2: Свойства посадочного места

Посмотрим, что у нас получилось:

Предпросмотр 3D модели Рисунок 3: Предпросмотр 3D модели

Выглядит просто великолепно.

В заключение несколько советов:

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

На этом цикл статей по созданию 3D моделей для KiCAD объявляю завершённым. В заключение видео, показывающее всё вышеизложенное.