Blender: 3D-модель микросхемы для подключения в библиотеке KiCad
Проектируя печатные платы часто возникает потребность добавить трёхмерную модель электронного компонента на плату. Но не всегда получается найти готовый файл в интернете. Нарисовать такую модель с помощью CAD-программы труда не составляет: задать параметры корпуса и выводов дело десяти минут, если, конечно, нужна габаритная модель, а не фотореалистичная картинка.
Но есть проблема: профессиональный CAD-редактор стоит не дёшево, а свободно распространяемые не всегда удобны в использовании.
К счастью на помощь всегда может прийти Blender. Да, он не предназначен для создания чертежей и точных моделей. Но тем не менее позволяет быстро создавать трёхмерные модели электронных компонентов для последующего их импорта в трассировщики. В этой статье я опишу способ создания модели микросхемы и подключения её к библиотеке компонентов KiCad.
Для примера нарисуем модель микроконтроллера STM32F405xx в корпусе LQFP64. Всю необходимую информацию для работы берем из datasheet.
1. Подготовка Blender’а
Запускаем Blender и для начала удаляем все не нужные компоненты со сцены: свет, куб и камеру. Выделяем объект правой кнопкой мыши и нажимаем «X». Либо выделяем все объекты кнопкой «A» и затем «X».
Для дальнейшей работы нам понадобится боковая панель настроек, для её вызова нажимаем «N». Окно, готовое к работе должно выглядеть примерно так:
Для удобства отключим режим отображения перспективы — цифра »5» на дополнительной клавиатуре.
Оси координат в Blender«е и в KiCad«e не совпадают, поэтому нашу микросхему мы будем рисовать так, чтобы её высота совпадала с осью Y, а длина и ширина с осями X и Z соответственно. Перейдём на вид справа нажатием цифры »3» на дополнительной клавиатуре. Если 3D-курсор находится не в центре, комбинацию клавиш Shift + C.
2. Создаём корпус микросхемы
Корпус микросхемы создадим из куба. Слева в панели Create выбираем фигуру Cube. Или с помощью комбинации клавишь Shift + A в выпадающем меню выбираем Mesh → Cube.
Появившийся куб расположен в центре сцены и имеет размеры 2×2х2 условных единиц. Это видно в правой боковой панели (которую мы вызвали нажатием клавиши «N»). Если изменить сейчас размеры куба, то вместе с размерамы будет изменяться и масштаб фигуры, что в дальнейшем может привести к странным эффектам. Поэтому сбросим масштабирование: выделяем объект и выбираем внизу в панели Object → Apply → Scale (или Cntrl + A; S).
3. Задаём размеры микросхемы
Теперь зададим размеры корпуса. В datasheet находим длину, ширину и высоту корпуса микросхемы: 10 мм на 10 мм на 1.45 мм (макс.). Эти числа используем в качестве размера нашего пока ещё куба. Как уже упоминалось выше, размеры по X и Z — длина и ширина, а размер по оси Y — высота.
4. Размещаем корпус микросхемы
Следующим шагом разместим корпус на правильной высоте. Для этого перейдем в режим редактирования объекта (кнопка «Tab») и выберем поверхность в качестве элемента редактирования (face select). Затем выберем верхнюю поверхность микросхемы — она у нас находится справа и нажмём комбинацию клавиш Shift + S → Cursor to selected:
Выходим из режима редактирования кнопкой «Tab». Далее в окне Tools → Edit устанавливаем точку привязки фигуры с помощью Set Origin → Origin to 3D Cursor.
Видим, что теперь положение объекта по оси Y изменилось с нуля на 0.725. Разместим объект так, что бы верхняя часть корпуса была смещена относительно начала координат на 1,6 мм — это наша максимальная высота компонента.
5. Добавляем грани
Габариты корпуса заданы верно. Теперь можно косметически улучшить вид, добавив грани, как показано в pdf. Точных размеров там нет, поэтому сделаем это на глаз.
Переходим в режим редактировани (клавиша «Tab») и выбираем грани как объект редактирования (edge select). Зажав клавишу Shift выделяем четыре боковые грани объекта.
К выделенным граням применим функцию Bevel — внизу на панели выбираем Mesh → Edges → Bevel, или жмём Cntrl + B. Далее либо на клавиатуре вбиваем число (к примеру 0.05), либо перемещая мышь выбираем нужный размер фаски.
Теперь сделаем скосы сверху и снизу копуса микросхемы, как показано на виде микросхемы сбоку.
Для этого в режиме редактирования добавим новую грань: в меню Tools → Loop Cut and Slide или комбинацией Cntr + R. Расположим грань, как показано на рисунке.
После нажатия правой кнопку мыши, грань автоматически расположится в центре фигуры. И к ней сразу применим модификатор Bevel, как мы это проделывали с боковыми гранями. Размер зададим равным 0.2 (максимальный размер «с» на чертеже).
Теперь уменьшим верхнюю и нижнюю поверхности микросхемы. Включаем режим редактирования поверхностей (Face select) и выделяем верх и низ микросхемы. К двум выделеным поверхностям применим модификатор Scale (клавиша «S»). С помощью мыши на глаз, или вбив определённое число (к примеру 0.96) масштабируем выбранные поверхности.
6. Создаём первый вывод
Можно сказать, что корпус микросхемы готов. Осталось к нему приделать 64 вывода. Для начала рассчитаем положение первого вывода микросхемы. Размер «Е» (12 мм) на чертеже делим пополам и получаем внешюю координату по оси X = 12/2 = 6. Положение по оси Z в нашем случае равно Z = 0.5/2 + 0.5×9 = 4.25
Предварительно выйдя из режима редактирования и сняв выделение с корпуса, создадим поверхность, которую в дальнейшем преобразуем в контакт. Перейдем к виду справа (цифра »3» на дополнительной клавиатуре). И далее Create → Plane (Shift + A → Mesh → Plane). Повернём ее «лицом» к нам: Align to View и зададим расчитанные координаты:
Для дальнейшей обработки сбросим масштабирование и поворот фигуры: Object → Apply → Rotation and Scale. Или Cntrl+A → Rotation and Scale. (Как в шаге 2). Теперь нашей поверхности зададим размеры вывода в сечении: по ширине размер b = 0.27 мм (ось Z), по высоте размер с= 0.2 мм (ось Y). И по координате Y сместим её на значение, равное 0.1
Теперь «выдавим» из поверхности форму ножки микросхемы. Перейдём к виду сверху (»7» на дополнительной клавиатуре). Включим режим редактирования — «Tab» и выделим созданную поверхность. С помощью Tools → Extrude → Region (или клавиши «Е»), затем «Х» (по оси Х), введём -0.6 с клавиатуры и «Enter». Число 0.6 у нас соответствует размеру L на чертеже.
Цвет ножки отличается от цвета микросхемы, потому что она оказалась «вывернута» наизнанку. Если включить отображение нормалей, то можно увидеть, что они все направлены внутрь. Исправим это: выделим фигуру клавишей «А» и в панели Shaidng/UV → Normals нажмём Flip Direction. Теперь фигура построена верно.
Избежать этой процедуры можно было бы развернув поверхность на 180 градусов перед операцией «выдавливания».
Создадим дополнительную грань на выводе микросхемы с помощью команды Tools → Loop Cut and Slide (или Cntrl + R) и расположим ее ближе к внутреннему краю.
Выделим верхний сегмента на созданнай поверхности и выдавим ее (клавиша «Е») вверх по координате «Y» до середины микросхемы.
Новую поверхность сместим слегка в сторону микросхемы: «G» — переместить, «Х» — только по оси Х.
Проделаем вышеописанные операции для верхней части вывода. В итоге должны получить примерно следующую картину.
Для красоты подвинем угловые грани, и получим вполне симпатичную ножку микросхемы.
7. Клонируем вывод микросхемы
С помощью модификатора Array создадим 18 выводов микросхемы с одной стороны. Для начала сбросим позицию и масштабирование вывода. Выходим из режима редактирования «Tab», выделяем ножку, и применяем Apply → Location, Rotation, Scale. Это необходимо, чтобы для следующего модификатора корректно расчиталось смещение клонированных объектов.
Добавляем модификатор Array.
В параметрах модификатора задаём количество = 18, выделяем смещение Constant, и расстояние по оси Z = -0.5
Получили ряд выводов. Создадим их копии для оставшися трёх сторон. Для этого убираем выделение со всех объектов, устанавливаем 3D-курсовр в центр — Shift + C. И создаём пустой объект — Shift+A → Empty → Plain Axes.
Теперь выделяем созданный ранее вывод микросхемы, и создаём ещё раз модификатор Array. Только на этот раз выбираем Object offset, и созданный ранее Empty-объект. Количество копий указываем равным 4.
Чтобы расположить созданные копии в правильном положении, выделяем Empty объект и поворачиваем его относительно оси Y на 90 градусов. Кнопки «R» и «Y», затем вбиваем значение угла »90».
8. Цвет микросхемы
Покрасим для красоты нашу микросхему и выводы в разные цвета. Выделим корпус микросхемы, и в закладке материалов создадим новый материал:
И присваиваем ему тёмно-серый цвет:
Ту же самую операцию проделываем для выводов микросхемы, но цвет делаем чуть поярче.
На этом создание микросхемы можно считать законченым.
9. Экспортируем полученую модель в KiCad
Экспортируем модель в формат vrml. File → Export → VRML2. Если такого меню нет, то сначала идём в File → User Preferences… → Add-ons. В поиске вбиваем vrml и устанавливаем флажок напротив Import-Export VRML2 и Import-Export Web3D X3D/VRML2 format.
При экспорте нам нужно привести единицы измерения к дюймам. Для этого в поле Scale вводим число 0.393701 (1 mm/ 2.54 inch = 0.393701).
Всё, модель микросхемы готова.
10. Подключаем модель в KiCad«e
Создаём посадочную площадку в библиотеке и подключаем трёхмерную модель. Если на предыдущих шагах всё сделано правильно, то модель должна сразу «лечь» на своё место.
Созданную таким методом микросхему вполне можно использовать для визуального контроля посадочной площадки.