agentee

ここから始める

最初の基板

空のディレクトリから、チェック済みで配線済みの2層基板と製造パッケージまで: 基板仕様、KiCad部品、回路図、配置、配線、Gerber。

このガイドでは、コマンドを1つずつ実行して、小さな基板を手作業で作ります。2ピン電源ヘッダ、抵抗、緑LED、デカップリングコンデンサを、2層のJLCPCB基板に載せます。エージェントが追うのと同じ手順なので、一度自分でやると、後でエージェントが何をしているのかを読み解くのがずっと楽になります。

agentee が PATH にあり、KiCad ライブラリがインストールされている必要があります。どちらも無い場合は、インストール を参照してください。

プロジェクトを開始する

プロジェクトはディレクトリです。その下に、既知の拡張子を持つものはすべて読み込まれます。

mkdir blinky && cd blinky
agentee new board blinky
agentee check

new boardはblinky.board.tomlを書き出します。50 x 30 mmのアウトライン、JLCPCBの2層1.6 mm層構成、1つのビアタイプ、4つのネットクラス。チェックは読み込み、何も報告しません。

0 sims, 0 layouts, 0 schematics, 1 boards, 0 symbols, 0 footprints: 0 errors, 0 warnings

checkは、プロジェクトがクリーンな場合0、エラーがある場合1、ファイルが読み込めない場合2で終了します。この終了コードにより、エージェントやCIがループできます。

基板を適切なサイズにする

4つの部品に50 x 30 mmは必要ありません。アウトラインを縮小します。

agentee edit board blinky outline --size 30,18 --corner-radius 1mm

agentee editは、TOMLを書き直し、コメントを保持し、変更したファイルにチェックを実行します。この程度のシンプルな基板では、あまり小さくしないことです。すべての基板はシルクにagentee vX.Y.Z-HASHのバージョンを載せ、チェックはそれを配置するために約23 x 1.2 mmの空き帯が必要です。20 mmの基板ではwatermarkエラーを報告し、ファブパッケージは拒否されます。

部品をインポートする

agenteeは独自のライブラリを同梱するのではなく、KiCadのライブラリを読み込みます。検索して、シンボルと使用するべきフットプリントをインポートします。

agentee search symbol conn_01x02
agentee import symbol Connector_Generic:Conn_01x02 --footprint Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical
agentee import symbol Device:R --footprint Resistor_SMD:R_0603_1608Metric
agentee import symbol Device:LED --footprint LED_SMD:LED_0603_1608Metric
agentee import symbol Device:C --footprint Capacitor_SMD:C_0603_1608Metric
agentee check

検索のすべての単語がLibrary:Nameに一致する必要があります。インポートされたシンボルとフットプリントはTOMLとしてsymbols/とfootprints/に保存されます。ここでチェックを実行すると、指摘事項が表示されます。

warning: ./footprints/R_0603_1608Metric.fp.toml: R_0603_1608Metric silk: silk lines under the fab minimum width 0.15mm: 2, thinnest 0.12mm

KiCadはシルクを0.12 mmで描画しますが、JLCPCBは0.15 mmを要求します。各フットプリントを開き、シルクグラフィックスのwidth = 0.12を0.15に変更するか、エージェントに実行させます。これがagenteeでの作業の通常の形です。診断がファイル、項目、数値を特定し、修正は1回の編集で完了します。

回路図を書く

agentee new schematic blinky

スターターは名前だけです。その下にboard = "blinky"を追加して、回路図がどのネットクラスが存在するかを把握できるようにします。次に、部品とネットを1行1コマンドのバッチで追加します。

agentee edit sch - <<'EOF'
add J1 Conn_01x02 PWR --footprint PinHeader_1x02_P2.54mm_Vertical
add R1 R 1k --footprint R_0603_1608Metric
add D1 LED green --footprint LED_0603_1608Metric
add C1 C 100n --footprint C_0603_1608Metric
net VIN J1.1 R1.1 C1.1 --class Power
net LED_A R1.2 D1.A --class Signal
net GND J1.2 D1.K C1.2 --class Ground --style power
EOF

バッチは1回の読み込みと末尾の1回のチェックで構成されるため、中間の未完成状態はフラグが立てられません。ピンはREF.PINで、番号または一意なピン名で指定します。D1.Aはアノードであり、出力がどの番号に解決されたかを確認できます。

added J1 (Conn_01x02)
added R1 (R)
added D1 (LED)
added C1 (C)
VIN now joins J1.1, R1.1, C1.1
LED_A now joins R1.2, D1.2
GND now joins J1.2, D1.1, C1.2
warning: /home/you/blinky/blinky.sch.toml: blinky part R1: body overlaps D1 (parts[2])
0 errors, 1 warnings in the files this touched

addは各部品を最後に追加した部品の右側に配置するため、LEDが抵抗の上に乗ってしまいました。LEDを移動し、ついでにコンデンサも移動してから、結果を確認します。

agentee edit sch blinky move D1 25.4,0 --rotation 90
agentee edit sch blinky move C1 12.7,10.16
agentee render sch:blinky -o sch.png

agenteeが描画したblinkyの回路図

配線を描画していません。回路図はネットをピンとして列挙し、agenteeは描画時に1.27 mmグリッドで配線ルーティングを行います。すべてのネットにclassが必要です。Defaultのままのネットは警告の対象です。クラスが基板での配線幅、クリアランス、ビアを決定するためです。

部品を配置する

agentee new layout blinky

スターターにboard = "blinky"とschematic = "blinky"を追加します。ここでチェックは失敗しますが、これが正しい挙動です。

error: ./blinky.pcb.toml: blinky footprints: C1 is not placed

すべてを一度に配置します。

agentee place blinky

placeはコネクタをエッジに配置し、受動部品は接続先付近に保ち、結果を洗練させ、重なりが生じた参照ラベルを移動します。JSONレポートを出力し、部品ごとに[[footprints]]エントリにatとrotationを書き込みます。これはクイックスタートです。実際の基板では、結果を確認し、重要なものを手動で移動してlocked = trueにマークし、残りを再度配置します。

ルーティングする

ここでチェックを実行すると、欠けているすべての接続がリストされます。

error: ./blinky.pcb.toml: blinky net VIN: [unrouted] 2 unrouted: J1.1 | R1.1 | C1.1 are not joined

グランドに両層でベタを追加し、グランドパッドをそれに接続して、残りの2つのネットをルーティングします。

agentee edit pcb blinky zone GND --layers F.Cu,B.Cu
agentee tie blinky
agentee route blinky --nets 'VIN,LED_A'
agentee check

tieは、ベタを持つネットのすべてのSMDパッドの横に短いスタブとビアを配置します。これがグランドや電源パッドがプレーンに接続する方法です。routeは指定されたネットをグリッド上でルーティングし、各クラスの幅とクリアランスを維持して、レイアウトに通常の[[tracks]]と[[vias]]を追加します。これらは後で自由に編集できます。

0 sims, 1 layouts, 1 schematics, 1 boards, 4 symbols, 4 footprints: 0 errors, 0 warnings
agentee render pcb:blinky -o pcb.png

ルーティングされたblinkyのレイアウト

製造パッケージを書く

agentee fab pcb:blinky -o fab/

fabはレイアウトにエラーがある間は拒否します。エラーがない場合、各層のGerber、ドリルファイル、JLCPCBの列形式のBOMと配置ファイル、IPC-D-356ネットリスト、組立図、製造メモ、およびアップロード用のblinky-gerbers.zipを書き出します。

実施した内容

すべてのステップは同じループでした。編集、チェック、確認。ファイルの外に状態は保持されません。そのため、いつでも中断でき、ディレクトリを git で開いたり、スキル を持ったエージェントに引き渡して、逆極性ダイオードを追加するよう依頼したりできます。

次へ:

このガイドを改善する · エージェント向けMarkdown