Производство
Пакет файлов для производства, спецификация и цены
Генерация Gerber, сверлов, спецификации и расстановки для JLCPCB или любого производителя плат, расчёт стоимости спецификации по ценам Mouser и Farnell и экспорт STEP для корпуса.
Когда в проверке нет ошибок, топология превращается в пакет файлов, который производитель плат и сборочное предприятие принимают без изменений. Это руководство описывает, как его создать, как рассчитать стоимость деталей и как получить 3D-модель для корпуса.
Создание пакета файлов
agentee fab pcb:NAME -o fab/fab отказывается работать, пока в топологии есть ошибки. Если их нет, команда создаёт:
| файл | что |
|---|---|
F_Cu.gbr ... B_Cu.gbr | медь по слоям, RS-274X с атрибутами файла X2, полигоны как области |
F_Mask.gbr, B_Mask.gbr | отверстия паяльной маски по контурам контактных площадок, переходные отверстия закрыты |
F_Paste.gbr, B_Paste.gbr | паста на площадках SMD |
F_SilkS.gbr, B_SilkS.gbr | шелкография шрифтом Hershey stroke, с водяным знаком версии |
Edge_Cuts.gbr | контур платы и каждый вырез |
drill-PTH.drl, drill-NPTH.drl | сверловка Excellon, пазы как G85; на платах HDI по отдельному файлу на каждый слепой, скрытый или микропереход |
bom.csv, bom-jlcpcb.csv | BOM, сгруппирован по значению, посадочному месту, mpn и lcsc |
cpl.csv | размещение, в колонках JLCPCB |
fab-notes.txt | версия, стек слоёв, покрытие, классы импеданса, типы переходных отверстий и что заполнить |
NAME.d356 | схема соединений IPC-D-356A для электрического тестирования платы без компонентов |
testpoints.csv | все тестовые площадки, для создателя тестовой оснастки |
NAME-gerbers.zip | все файлы Gerber и сверловки, готовые к загрузке |
assembly-top.png, assembly-bottom.png | слои производства и шелкографии для линии |
Координаты в миллиметрах, ось Y направлена вверх, одинаковые в файлах Gerber и в файле размещения. Детали с меткой dnp, детали с полем assembly = "no", отверстия для крепления и реперные метки не попадают в BOM и файл размещения.
Заказ в JLCPCB
- Загрузите
NAME-gerbers.zip. - Выберите тот же стек слоёв, который указан в спецификации платы. Для плат с контролем импеданса выбирайте сборку по её коду (
JLC04161H-7628и т. д.); все проверки ширины проводников рассчитаны с учётом этого стека. - Совместите покрытие, цвет паяльной маски и толщину меди с
fab-notes.txt. - Для сборки загрузите
bom-jlcpcb.csvиcpl.csv. Заполните колонкуLCSC Part #, задав каждой детали полеlcscв схеме:
agentee edit sch NAME set C1 --field lcsc=C14663В fab-notes.txt перечислены все операции, которые производитель плат должен выполнить сверх стандартных: переходные отверстия в площадках, которые нужно заполнить и закрыть, краевые площадки, которые нужно сохранить, классы импеданса с целевым значением, слоем и шириной. Вставьте нужные строки в заметки к заказу.
Водяной знак
Каждый пакет несёт в шелкографии agentee vX.Y.Z-HASH: версию, которая его создала, и git-коммит исходников, с -dirty, если в дереве были незакоммиченные изменения. По умолчанию знак находится на нижней шелкографии, в свободном месте ближе к левому нижнему углу, а fab-notes.txt указывает его положение. Отключить его нельзя, и пакет отклоняется, если для знака нет места. Задайте [watermark] at в топологии, чтобы выбрать место самостоятельно.
Расчёт стоимости BOM
agentee parts NAME --boards 5
agentee parts NAME --refs C11,R8 --json
agentee parts NAME --distributor farnell --farnell-store ie.farnell.comparts ищет каждую строку BOM в Mouser и Farnell по полю mpn, поэтому сначала задайте каждой детали mfr и mpn; строки без них пропускаются. Ключи хранятся вне всех проектов, в ~/.config/agentee/distributors.toml:
[mouser]
api_key = "..."
[farnell]
api_key = "..."
store = "uk.farnell.com"Для каждой строки выбирается самое дешёвое предложение, которое есть в наличии на нужное количество и не снято с производства, с учётом минимальных заказов и кратности; покупается до ценового порога, если это дешевле в сумме. Затем ищутся более дешёвые взаимозаменяемые детали:
- резисторы с тем же значением, допуском не хуже и тем же корпусом;
- керамические конденсаторы с тем же значением, напряжением не ниже, диэлектриком не хуже (C0G остаётся C0G, X5R может стать X7R) и тем же корпусом;
- стандартные дискретные компоненты, например 2N7002, BAT54 или SMAJ, с тем же названием и корпусом;
- индикаторные светодиоды того же цвета и корпуса.
Для микросхем и разъёмов допустима только та же деталь у другого дистрибьютора или замена, предложенная дистрибьютором. Впишите замену в поле mpn детали, а не в BOM, чтобы следующий запуск и следующий пакет совпадали.
Экспорт для корпуса
agentee models
agentee export pcb:NAME -o NAME.stepexport создаёт одну сборку STEP: плата как твёрдое тело толщиной стека слоёв с её отверстиями, пазами и вырезами, и каждая деталь как экземпляр с именем по её обозначению. Модели STEP от поставщиков добавляются в том виде, в котором их записал поставщик, один раз, сколько бы деталей их ни использовало; модели VRML и сгенерированные тела добавляются как фасетированные поверхности, а деталь без модели как коробка по контуру производства. Нижняя поверхность платы находится на z = 0, ось Y направлена вверх.
agentee models сначала загружает модели из библиотек KiCad, на которые ссылаются посадочные места, в кэш, и сообщает о тех, которые не найдены. Посадочное место может также ссылаться на URL https:// файла STEP от поставщика, закреплённый за коммитом, чтобы файл не менялся под вами.
Перед нажатием кнопки заказа
agentee checkчист, иagentee drc NAMEтоже, с уведомлениями, которые вы решили игнорировать, записанными вDESIGN.md.- Все симуляции актуальны: проверка предупреждает об устаревших результатах.
- Рендеры выглядят правильно:
agentee render pcb:NAME, и чертежи сборки в пакете файлов. agentee view --3dпоказывает детали там, где вы их ожидаете.- Нужные тестовые площадки на месте:
agentee testpoints NAME --dry-runперечисляет то, что было бы добавлено.