Главная / Руководство

Руководство

Как подключить навык, собрать первую схему, добыть недостающую деталь и понять отчёт сборки.

Подключение в claude.ai

Скачайте навык

Файл multisim-scheme.zip со страницы релиза. Распаковывать не нужно.

Загрузите

claude.ai → Настройки → Возможности → Навыки → загрузить zip.

Разрешите обновления

В настройках выполнения кода разрешите доступ к raw.githubusercontent.com — тогда навык будет сам подтягивать новые версии. Без этого он работает с версией из архива.

В Claude Code

Склонируйте репозиторий — навык лежит в .claude/skills/multisim-scheme/ и подхватывается автоматически. Обновление — обычный git pull.

git clone https://github.com/vovandel155-tech/multisim-schemes
cd multisim-schemes

Первая схема

Откройте новый чат и отправьте картинку с короткой просьбой — например, «собери эту схему в Multisim». Claude:

  1. разберёт рисунок: элементы, номиналы, цепи;
  2. проверит, все ли детали есть в каталоге;
  3. напишет скрипт и соберёт файл;
  4. посмотрит превью и прогонит схему в ngspice;
  5. пришлёт готовый .ms14 и скажет, что заменил или додумал.
Если на рисунке у входа нет источника, навык поставит ключ на VCC/землю для логики или синусоидальный источник для аналоговых схем — и скажет, что выбрал.

Недостающие детали

В каталоге около 250 деталей. Если нужной нет, её отдаёт сам Multisim на вашем компьютере:

  1. Claude записывает имя детали в файл заказа donors_request.txt (с вариантами написания, например TIP121|TIP121G);
  2. вы закрываете Multisim и дважды щёлкаете get_parts.bat — нужны Windows, Multisim 14 и Python 3;
  3. Multisim через свой интерфейс автоматизации ставит деталь в шаблон и сохраняет файл, навык добавляет её в каталог;
  4. в чате без git вы отправляете Claude файлы из папки donors_new и журнал donors_log.txt.
Имена в базе Multisim часто с суффиксом: TIP121G, BC547B, LM358N. Поэтому в заказе сразу перечисляются варианты.

Готовые узлы

Частые фрагменты собраны в библиотеку — их ставят одной строкой, в любом из восьми поворотов:

cmos_inv — КМОП-инверторcmos_nand2 — 2И-НЕcmos_nor2 — 2ИЛИ-НЕcmos_protect — защита входаnpn_switch — транзисторный ключpush_pull — двухтактный повторительdivider — делительrc_lowpass — ФНЧrc_highpass — ФВЧled_r — светодиод с резистором

Приборы и пробники

ЧтоКак назвать в скрипте
МультиметрS.meter('XMM1', x, y)
Генератор, осциллограф, Боде, частотомерFGEN, SCOPE, BODE, FREQCOUNTER
Ваттметр, анализатор спектра, логический анализаторWATTMTR, SPEC_AN, LOGICAN
ПробникиS.probe('PR1', x, y, 'V' | 'I' | 'VI' | 'P' | 'D')

API на Python

Схема описывается в клетках сетки Multisim: part ставит деталь так, чтобы её вывод попал в клетку, wires соединяет выводы и узлы J(x, y), build делает всё остальное.

from scheme import *

S = Scheme('CMOS_inverter')
inv = S.block('cmos_inv', 20, 14)  # узел
vdd, g = S.vcc(29, -2), S.gnd(29, 30)
x = S.switch('S1', 10, 14)  # вход
y = S.meter('XMM1', 36, 14)  # выход
S.wires([[x, inv['IN']], [inv['OUT'], y],
         [vdd, inv['VDD']], [inv['GND'], g]])
S.build()   # файл + проверки

Полное описание API — в SKILL.md, устройство формата — в reference.md.

Отчёт сборки

Строка отчётаЧто значит
ID references: OKвсе объекты файла ссылаются друг на друга правильно
overlaps: noneнет наложений: провода, подписи и символы не перекрываются
wire runs through the body of Xпровод идёт через корпус элемента — его нужно обвести
slanted wireизлом не на клетке вывода — провод получился косым
ngspice: NANDфункция по таблице истинности: NOT, AND, OR, NAND, NOR, XOR

Если что-то не так

  • Схема открылась с диалогом или не моделируется — пришлите Claude скриншот, он поправит скрипт.
  • Деталь подменена аналогом — попросите добыть именно ту через get_parts.bat.
  • Нашли ошибку в навыке — откройте issue на GitHub: там готовые формы.