...

понедельник, 9 июля 2018 г.

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

Создаём посадочную площадку в библиотеке и подключаем трёхмерную модель.
Если на предыдущих шагах всё сделано правильно, то модель должна сразу «лечь» на своё место.

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

Let's block ads! (Why?)

Комментариев нет:

Отправить комментарий