Проектируя печатные платы часто возникает потребность добавить трёхмерную модель электронного компонента на плату. Но не всегда получается найти готовый файл в интернете. Нарисовать такую модель с помощью CAD-программы труда не составляет: задать параметры корпуса и выводов дело десяти минут, если, конечно, нужна габаритная модель а не фотореалистичная картинка.
Но есть проблема: профессиональный CAD-редактор стоит не дёшево, а свободно распространяемые не всегда удобны в использовании.
Да, он не предназначен для создания чертежей и точных моделей. К счастью на помощь всегда может прийти Blender. В этой статье я опишу способ создания модели микросхемы и подключения её к библиотеке компонентов KiCad. Но тем не менее позволяет быстро создавать трёхмерные модели электронных компонентов для последующего их импорта в трассировщики.
Для примера нарисуем модель микроконтроллера STM32F405xx в корпусе LQFP64. Всю необходимую информацию для работы берем из datasheet.
1. Подготовка Blender'а
Запускаем Blender и для начала удаляем все не нужные компоненты со сцены: свет, куб и камеру. Выделяем объект правой кнопкой мыши и нажимаем «X». Либо выделяем все объекты кнопкой «A» и затем «X».
Окно, готовое к работе должно выглядеть примерно так: Для дальнейшей работы нам понадобится боковая панель настроек, для её вызова нажимаем «N».
Для удобства отключим режим отображения перспективы – цифра «5» на дополнительной клавиатуре.
Перейдём на вид справа нажатием цифры «3» на дополнительной клавиатуре. Оси координат в Blender’е и в KiCad’e не совпадают, поэтому нашу микросхему мы будем рисовать так, чтобы её высота совпадала с осью Y, а длина и ширина с осями X и Z соответственно. Если 3D-курсор находится не в центре, комбинацию клавиш Shift + C.
2. Создаём корпус микросхемы
Корпус микросхемы создадим из куба. Слева в панели Create выбираем фигуру Cube. Или с помощью комбинации клавишь Shift + A в выпадающем меню выбираем Mesh → Cube.
Это видно в правой боковой панели (которую мы вызвали нажатием клавиши «N»). Появившийся куб расположен в центре сцены и имеет размеры 2х2х2 условных единиц. Поэтому сбросим масштабирование: выделяем объект и выбираем внизу в панели Object → Apply → Scale (или Cntrl + A; S). Если изменить сейчас размеры куба, то вместе с размерамы будет изменяться и масштаб фигуры, что в дальнейшем может привести к странным эффектам.
3. Задаём размеры микросхемы
Теперь зададим размеры корпуса. В datasheet находим длину, ширину и высоту корпуса микросхемы: 10 мм на 10 мм на 1.45 мм (макс.). Эти числа используем в качестве размера нашего пока ещё куба. Как уже упоминалось выше, размеры по X и Z – длина и ширина, а размер по оси Y – высота.
4. Размещаем корпус микросхемы
Следующим шагом разместим корпус на правильной высоте. Для этого перейдем в режим редактирования объекта (кнопка «Tab») и выберем поверхность в качестве элемента редактирования (face select). Затем выберем верхнюю поверхность микросхемы – она у нас находится справа и нажмём комбинацию клавиш Shift + S → Cursor to selected:
Далее в окне Tools → Edit устанавливаем точку привязки фигуры с помощью Set Origin → Origin to 3D Cursor. Выходим из режима редактирования кнопкой «Tab».
725. Видим, что теперь положение объекта по оси Y изменилось с нуля на 0. Разместим объект так, что бы верхняя часть корпуса была смещена относительно начала координат на 1,6 мм – это наша максимальная высота компонента.
5. Добавляем грани
Габариты корпуса заданы верно. Теперь можно косметически улучшить вид, добавив грани, как показано в pdf. Точных размеров там нет, поэтому сделаем это на глаз.
Зажав клавишу Shift выделяем четыре боковые грани объекта. Переходим в режим редактировани (клавиша «Tab») и выбираем грани как объект редактирования (edge select).
Далее либо на клавиатуре вбиваем число (к примеру 0. К выделенным граням применим функцию Bevel – внизу на панели выбираем Mesh → Edges → Bevel, или жмём Cntrl + B. 05), либо перемещая мышь выбираем нужный размер фаски.
Теперь сделаем скосы сверху и снизу копуса микросхемы, как показано на виде микросхемы сбоку.
Расположим грань, как показано на рисунке. Для этого в режиме редактирования добавим новую грань: в меню Tools → Loop Cut and Slide или комбинацией Cntr + R.
И к ней сразу применим модификатор Bevel, как мы это проделывали с боковыми гранями. После нажатия правой кнопку мыши, грань автоматически расположится в центре фигуры. 2 (максимальный размер «с» на чертеже). Размер зададим равным 0.
Включаем режим редактирования поверхностей (Face select) и выделяем верх и низ микросхемы. Теперь уменьшим верхнюю и нижнюю поверхности микросхемы. С помощью мыши на глаз, или вбив определённое число (к примеру 0. К двум выделеным поверхностям применим модификатор Scale (клавиша «S»). 96) масштабируем выбранные поверхности.
6. Создаём первый вывод
Можно сказать, что корпус микросхемы готов. Осталось к нему приделать 64 вывода. Для начала рассчитаем положение первого вывода микросхемы. Размер «Е» (12 мм) на чертеже делим пополам и получаем внешюю координату по оси X = 12/2 = 6. Положение по оси Z в нашем случае равно Z = 0.5/2 + 0.5 * 9 = 4.25
Перейдем к виду справа (цифра «3» на дополнительной клавиатуре). Предварительно выйдя из режима редактирования и сняв выделение с корпуса, создадим поверхность, которую в дальнейшем преобразуем в контакт. Повернём ее «лицом» к нам: Align to View и зададим расчитанные координаты: И далее Create → Plane (Shift + A → Mesh → Plane).
Или Cntrl+A → Rotation and Scale. Для дальнейшей обработки сбросим масштабирование и поворот фигуры: Object → Apply → Rotation and Scale. Теперь нашей поверхности зададим размеры вывода в сечении: по ширине размер b = 0. (Как в шаге 2). 2 мм (ось Y). 27 мм (ось Z), по высоте размер с= 0. 1 И по координате Y сместим её на значение, равное 0.
Перейдём к виду сверху («7» на дополнительной клавиатуре). Теперь «выдавим» из поверхности форму ножки микросхемы. С помощью Tools → Extrude → Region (или клавиши «Е»), затем «Х» (по оси Х), введём -0. Включим режим редактирования — «Tab» и выделим созданную поверхность. Число 0. 6 с клавиатуры и «Enter». 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.
5 В параметрах модификатора задаём количество = 18, выделяем смещение Constant, и расстояние по оси Z = -0.
Создадим их копии для оставшися трёх сторон. Получили ряд выводов. И создаём пустой объект – Shift+A → Empty → Plain Axes. Для этого убираем выделение со всех объектов, устанавливаем 3D-курсовр в центр – Shift + C.
Только на этот раз выбираем Object offset, и созданный ранее Empty-объект. Теперь выделяем созданный ранее вывод микросхемы, и создаём ещё раз модификатор Array. Количество копий указываем равным 4.
Кнопки «R» и «Y», затем вбиваем значение угла «90». Чтобы расположить созданные копии в правильном положении, выделяем Empty объект и поворачиваем его относительно оси 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. При экспорте нам нужно привести единицы измерения к дюймам. 54 inch = 0. 393701 (1 mm/ 2. 393701).
Всё, модель микросхемы готова.
10. Подключаем модель в KiCad’e
Создаём посадочную площадку в библиотеке и подключаем трёхмерную модель. Если на предыдущих шагах всё сделано правильно, то модель должна сразу «лечь» на своё место.
Созданную таким методом микросхему вполне можно использовать для визуального контроля посадочной площадки.