agentee

Начните здесь

Переход из KiCad

Что agentee берёт из KiCad и чем отличается: библиотеки для импорта, импорт целой платы и соответствие концепций.

agentee, это не замена KiCad с другим форматом файлов. Это инструмент проектирования для агентов, который заимствует библиотеки KiCad и читает платы KiCad. Если вы знаете KiCad, большинство концепций переносятся; что меняется, так это то, что файлы являются интерфейсом, а человек редактирует через агента и просмотрщик, а не через редактор.

Библиотеки

У agentee нет собственной библиотеки компонентов. agentee search и agentee import читают библиотеки УГО и посадочных мест KiCad из:

  • /usr/share/kicad и /usr/local/share/kicad на Linux,
  • /Applications/KiCad/KiCad.app/Contents/SharedSupport на macOS,
  • KICAD9_SYMBOL_DIR и KICAD9_FOOTPRINT_DIR в любом другом месте, включая Windows. KICAD8_* и KICAD_* также работают.
agentee search symbol lm358
agentee import symbol Amplifier_Operational:LM358 --with-footprint
agentee import footprint Package_TO_SOT_SMD:SOT-89-3

Импорт записывает .sym.toml или .fp.toml в symbols/ или footprints/. С этого момента проект владеет им: нет ссылки обратно в библиотеку, поэтому компонент никогда не меняется под вами при обновлении KiCad. Путь к .kicad_sym или .kicad_mod работает вместо Library:Name для компонентов вне стандартных библиотек.

3D-модели берутся из KICAD9_3DMODEL_DIR и аналогичных переменных, 3dmodels/ в проекте или кэша, который agentee models заполняет из репозитория kicad-packages3D.

Как концепции соответствуют друг другу

KiCadagentee
Настройка платы .kicad_pro: слои, правила, классы цепей*.board.toml: пресет производителя, пресет стека слоёв, [rules], [[netclasses]], [[vias]]
запись в библиотеке УГО*.sym.toml, по одному на каждое УГО
посадочное место*.fp.toml, с рядами контактных площадок вместо одной записи на каждую площадку
лист схемы с проводниками*.sch.toml: компоненты и цепи как списки выводов; проводники необязательны
иерархические листыsheets = [...] в верхней схеме, цепи соединяются по имени
.kicad_pcb*.pcb.toml: размещения, проводники, переходные отверстия, полигоны, шелкография
DRCagentee check, все правила перечислены командой agentee drc NAME --list
заполнение полигоновавтоматически при загрузке, с кэшем; agentee fill сохраняет результат в файл
вывод Gerber и файлов сверловкиagentee fab
поля посадочного места mpn, lcscте же поля на компоненте схемы, читаются BOM и agentee parts

Вещи, которые ведут себя иначе:

  • Ширины классов цепей - это минимумы. В KiCad ширина класса - это значение по умолчанию для новых проводников; в agentee проводник уже своего класса - это ошибка, если это не короткое сужение к контактной площадке.
  • Импеданс и ток задаются на классе. Укажите классу impedance = "50ohm" или current = "2A", и проверка рассчитает ширину для каждого слоя стека.
  • Стеки слоёв - это собственные стеки производителя. Выберите JLC04161H-7628 или сборку PCBWay из agentee stackups, вместо того чтобы вводить толщины вручную.
  • Y растёт вниз во всех файлах, как в редакторе посадочных мест KiCad, а поворот против часовой стрелки на экране.
  • Неизвестные ключи - это ошибки. Опечатка в ключе сообщается, а не игнорируется.
  • Каждая плата несёт водяной знак версии в своей шелкографии: версия agentee и коммит, которым собран пакет для производителя.

Импорт целой платы

agentee import board path/to/NAME.kicad_pcb --dir NAME
cd NAME
agentee check
agentee render pcb:NAME -o NAME.png

Импорт записывает:

файлиз
NAME.board.tomlконтур Edge.Cuts и его вырезы, стек слоёв с толщиной, диэлектрической проницаемостью и тангенсом угла потерь, покрытие и цвет маски, правила проектирования и классы цепей из NAME.kicad_pro
NAME.pcb.tomlразмещения посадочных мест, проводники (дуги как короткие сегменты), переходные отверстия и полигоны с сохранённым заполнением, а также текст и линии шелкографии и маркировки производителя, с подстановкой ${TITLE} и текстовых переменных проекта
NAME.sch.tomlкаждый компонент со своим значением, и каждая цепь как список выводов, нарисованный с помощью меток цепей
footprints/каждое посадочное место так, как оно находится на плате, нижние перевёрнуты обратно на верхнюю сторону
symbols/одно прямоугольное УГО на каждое посадочное место, с выводом на каждый номер контактной площадки

Схема - это сетевой список, а не ваш чертёж: схема KiCad не читается, поэтому имена выводов, графика УГО и структура листов не переносятся. Этого достаточно, чтобы проверить, отрисовать, смоделировать плату и отправить её на производство, а также чтобы агент изменил топологию платы.

Переходные отверстия сохраняют свой тип. micro в KiCad становится микровиа, blind - слепым или скрытым переходным отверстием в зависимости от пролёта, и каждое уникальное сочетание сверла, площадки, пролёта, заполнения и backdrill становится типом переходного отверстия платы. Координаты сдвигаются так, чтобы контур начинался с 0, 0.

Оставлено без переноса и сообщено: капли, области запрета и петли в Edge.Cuts за пределами контура. Класс, проводники которого уже его ширины, получает самую узкую, поскольку agentee рассматривает ширину как минимум. Зазоры проверяются с допуском 0,5 мкм KiCad.

На собственных демо video и complex_hierarchy KiCad каждая контактная площадка импортированной топологии попадает туда, куда её помещает экспорт IPC-D-356 KiCad: 2089 и 165 площадок. Пример HackRF Pro - это целая плата, импортированная таким образом.

Обратный путь

Экспорта в файлы KiCad нет. Из agentee выходит пакет для производителя (Gerber с атрибутами X2, сверла Excellon, BOM, файл размещений и сетевой список IPC-D-356) и STEP собранной платы, который читает любой производитель и любой инструмент MCAD.

Улучшить это руководство · Markdown для агентов