Open69

STM32F446/Nucleo-F446RE用CANハット基板製作

実践魂(プラスピ)実践魂(プラスピ)

Auduinoにはユニバーサルハット基板まであるのにNucleoのピンをフル活用するハットを見つけることは困難 ユニバーサル基板を乗せるとピン周りのハンダ付けが作業効率を下げていく
そうだ、自分で作ろう そうしよう

実践魂(プラスピ)実践魂(プラスピ)

いつもの流れ

ⅰ)作るべきものは決まっており、作り方も大体分かるので、必要な項目をいくつか検索してネットと書籍、資料書類で復習

ⅱ)白紙無地ノートにシャーペンでスケッチ
 (私は方眼や罫線があると思考が阻止されてしまいがち ペンは油性も水性も使わない
  太めのシャーペンのみが自由かつ無限な感覚を得る 消しゴムは使わず訂正は書きつぶす)
 この段階で仕様、部品、回路、ピンなど大方の重要なことは把握が完了して決まる

ⅲ)Lucidチャートで清書 ここで思考が洗練されていく 資料リンク貼り付けメモにもなる

ⅳ)KiCADなどで実作業に入っていく ここまできたらもう思考を現実化するのみ

実践魂(プラスピ)実践魂(プラスピ)

KiCADは先ず部品を配置する 故に部品選定が決まっていないと始まらない
実装すべき機能は決定済 モジュールや抵抗コンデンサなどはユニバーサルピッチに合うものでいい

問題は端子台 外部とのコネクト 
・コネクター作成が簡単 
・抜き差しも簡単 
・不用意に抜けない
・入手しやすく手頃な価格 
・程よいサイズ 
・出来ればテスター当てる露出部もあるとベスト
・フットプリントデータ付きならなお良し

I2CやSPIの予備はスルーホールにしておこう 端子台も付けられるハイブリッドだ

実践魂(プラスピ)実践魂(プラスピ)

端子台に関するメモ

ネジ式
・医者はどこだ!ではなく
・コスパ最強
・Y型C型O型圧着端子をケーブル側に用いるタイプは信頼性も高い 値段も高い
・精密ドライバーで回すような小型のアレ、当たり外れ大きすぎるし着け辛く緩みやすい

クランプ方式
・精密ドライバ一本で良い
・ケーブル端は剝いただけなので抜き差しが多いと撚り線は性能劣化
・長期的には良くない

プッシュイン方式
・フェルール端子をケーブル端に加工する必要がありカシメと部品が増える
・差し込むだけで引っ張りに強い 安定性は上
・耐久性はこちらに軍配が上がる


https://zubu.jp/プッシュイン-スプリング端子を使おう

実践魂(プラスピ)実践魂(プラスピ)

端子台の方を探すのが大変だな そもそも検索キーワードが分からん
プッシュイン端子台でも出るがアマゾンでは入手安定性にかけるしフットプリントもない
そもそもメーカーが・・・・量産も視野に入れてるんだよ俺は
てなわけでDegikeyで見つけた検索キーワードメモ
・製品索引>コネクタ、相互接続>ターミナルブロック(端子台)>ワイヤ対基板

実践魂(プラスピ)実践魂(プラスピ)

さて絞り込んでいこう 部品専用通販の長所だね 知識ゼロだと混乱するけど
製品ごとに変わる項目あるので専門分野に詳しく成れる
・メーカー>先ずは無指定
・シリーズ>不明だ
・梱包携帯>何でもいい
・製品ステータス>アクティブに限るね
・レベル数>なんぞこれ
・レベルあたりの極数>レベル数がまず分からん
・篏合方向>ケーブル挿す方向か?垂直が無難だが嵩張るよな 水平にすると干渉するしな
・電流>ほぼ信号線用、電源もマイコン相手だから最低ライン2Aでよし
・電圧>電源ラインでも12v、最低ラインが150Vということでよし
・ワイヤゲージ>AWG表記なのね 上記のようなアンペアだ小さくて良し
・取付タイプ>表面実装ではもげるかも、スルーホールでいこう
・ワイヤ終端>ネジなし これ。プッシュインのつもりだからね
・特徴>インターロック これは商品写真を見て決めよう
・色>電源と供給と信号とで分けたいところだが、まぁ妥協枠
あとチェックBOXは
在庫状況 □在庫あり 急ぎだ
環境規制対応状況 □RoHS対応 環境第一、健康第一
メディア □データシート、写真、EDA/CADモデル 全部あると助かるがノーチェック

26品目に絞り込めた!やったぜ あとは2Pと4P、多くて6Pあればいい
さて極数を2に絞り込むと結果は4つ
見た目はどれも同じだが値段は三倍の開き マケプレは一番高い、除外
一番安いのは在庫がこれじゃ足りない 一番在庫が多いものにしよう おっと二番目に安いね
データシートGET うーんこれ無限につなげること出来そうなんだが それも試そう
翌日配送のアマゾンと同じ型があれば急ぎにも対応できるね

次は外部モジュール用にシリアル通信とSPIはコネクタ方式が良いな、調べよう

実践魂(プラスピ)実践魂(プラスピ)

とりあえずターミナルブロックはこれでいこう フットプリントデータはKiCAD用もあるの助かる
回路図を作成して始めたい、がその前に垂直嵌合(かんごう)か水平嵌合か悩む
・CAN 現状水平⇒水平を維持しつつプッシュイン端子台に
・電源入力 新規⇒垂直嵌合?うーん
・RF信号(5ch) 基板裏スルーホール直ハンダ⇒プッシュイン水平端子台でいいかな
・予備シリアル等信号線 コネクタ方式がいいが脱着ロックが欲しい、コンタクト金具が一般的でケーブルカシメが容易なものがいい、小さいと不便、大きくても嵩張るので悩みどころ

選択肢が増えるということは良いことだが・・・

ナナメならいいとこどりか?!そうとも限らないな・・・

プッシュイン端子台はいったん全部水平で設計してみよう RFなど複線をまとめた方がいいものは通常のコネクタの方が良さそうではあるがコネクタの選定が悩ましいな、コンタクト金具不要なものにしようかな プッシュイン端子台のシリーズにそういうコネクタになるものもあるね

実践魂(プラスピ)実践魂(プラスピ)

毎回基板作るごとにコネクタは頭痛い問題 用語も混乱するし てなわけで基礎から学ぶサイト発見

https://www.gec-tokyo.co.jp/components/design-notes/no-019_understanding-connectors-beginners-guide-part-1
https://www.gec-tokyo.co.jp/components/design-notes/no-019_understanding-connectors-beginners-guide-part-1

なるほど自分がいま必要なのは
・電線対基板用コネクタ

モレックスかJSTでいいわけだが、、種類が多すぎて出てこねぇ
またXAしかないのか もっと小さいのはコンタクト金具付けるのが大変だ

もう全部プッシュイン端子台でいいか!いやあとあと考えると面倒なことになるな・・・
手に取って選べるいつもの部品ショップが無くなったのは痛手が大きすぎる

とにかく定番で行こう、圧着は専用工具も手頃になるし不良コンタクトも減るだろう
回路はもう頭の中で組み終わっているのに現実の部品は無限のバリエーションがあって辿り着けない
過去作製したものから品番拾うのが一番早いわな

実践魂(プラスピ)実践魂(プラスピ)

これだ、これだよ!
ST-XHコネクタ キット 500個 基板用 ベース付ポスト ハウジング コンタクト 2p 3p 4p 5p 6pin 2.54mmピッチ端子ング プラグ アダプタ メス オス

これだけ入ってて¥999!!! 税込!!!

実践魂(プラスピ)実践魂(プラスピ)

とはいえマイコン電源12vの受け取りだけは間違えないように違う形状の型番にしたいところ
とはいえ2Pを使うのは電源受入だけとして、2P出力となるCANはプッシュイン端子台だけだから
絶対間違えることはないな
よし、シリアルは4P SPIは6Pだし これでいいな SPIのCSはソルダジャンパも作っておこう
デフォルトでつないでおいていざとなれば他のピンの割り当てをうんぬん
うーん、スルーホールとりだしておけばいいだけか

実践魂(プラスピ)実践魂(プラスピ)

さんざん遠回りして原点回帰って感じだな
これはゲームやってても同じ、散々脇道に入って全部行き止まりって確かめてから真直ぐ進む的な習性
美は細部に宿るっていうだろう、楽しみは道草にありだな

実践魂(プラスピ)実践魂(プラスピ)

2.54㎜とタイトル付けつつ図面では2.0㎜・・・見た目じゃわからねぇ
どっちを信じればいいんだ、もちろん図面を信じるぜ
こういう安いキットの落とし穴の一つだわな

実践魂(プラスピ)実践魂(プラスピ)

XHシリーズ用のコンタクト金具SHXシリーズを同時圧着できるペンチを見つけるのに苦労したぜ


セット買いで先ほどのコネクター詰め合わせが出てきたが、本当に2.54mmピッチなのか・・・

実践魂(プラスピ)実践魂(プラスピ)

時間も無いので発注してもうた さてKiCADで部品データを見てみよう
フットプリントデータも付いてるといいな・・・

実践魂(プラスピ)実践魂(プラスピ)

圧着セットとXHコネクタセットが届いた。ケーブル作ってみた。完璧である。専用工具バンザイ!!!

実践魂(プラスピ)実践魂(プラスピ)

プッシュ式、試してみたが・・・引っ張り弱くない?
空だと効かないのかな


どうもよろしくない。抜ける。これは端子台側の問題だな。別の型番を探すか・・・
しっかりしたロック機構付きの・・・もう在庫が有り余っているネジ式でいいや(笑)

実践魂(プラスピ)実践魂(プラスピ)

ではKiCADでプリント基板発注のためのデータ作成いきましょう 今からの流れは

1.KiCADインストール(アップデートまたは最新版)
2.回路図設計 
 ⅰ)部品配置 これから始まるので、部品が決まらないと始まらなかったわけ
ⅱ)ERC(電気ルールチェック) 確認大事
3.フットプリントの割り当て ここが山場?回路という概念を現実化するために必須な作業
4.基板レイアウト設計
 ⅰ)配置、配線、デザイン、シルクプリントなどお楽しみ
 ⅱ)DRC(デザインルールチェック) 確認大事
5.ガーバーデータ出力
 ⅰ)ガーバーデータ、ドリルファイル、部品配置データ(今回は手ハンダ予定なので不要)
 ⅱ)PCBエディタから「製造用出力」

これであとは良さげなプリント基板製作会社に発注するだけ!
届いたら部品乗せて(乗るかな)ハンダ付けして(盛るかな)完成(動くかな)!

実践魂(プラスピ)実践魂(プラスピ)

KiCAD7.0が入ってたけど、えーと、何?もうVersion9超えてますか 今月9.0.5出たということで祝
さっそくダウンロード開始。1Gbもあるな。回線重いな。

実践魂(プラスピ)実践魂(プラスピ)

ハット基板を作成したいので、まずはNucleoに合わせた親基板のピンヘッダシンボルを作成し、さらにフットプリントを作る必要がある・・・Nucleonoページに無いかな・・・
あった!!!ありがとうございますDigiKey!

NUCLEO-F446RE のフットプリント & モデル
https://www.digikey.jp/ja/models/5347712

実践魂(プラスピ)実践魂(プラスピ)

初めてのKiCAD Ver9.0.5 特にインターフェイスは変化ないのかな。
回路図エディタ、シンボルエディタ、PCBエディタ、フットプリントエディタ、ガーバービューア、イメージコンバータ、計算機ツール、図面シートエディタ、プラグイン&コンテンツマネージャーと並ぶ。
上から順に使う順ってところだが、だいたい忘れたぞ
Nucleoのデータもどう取り込めばいいのか、そのまま使ってハット基板作成できるのか・・・
KiCAD道を行けばどうなるものか、危ぶむなかれ。危ぶめば道はなし。踏み出せばその一足が道となる。その一足が道となる。迷わず行けよ、行けばわかるさ。1,2,3,ダーーーーーーーーーーーーーーーーーーーッ!!!!

とりあえずヘルプからKiCADことはじめを開いて一読しよう、そうしよう。

実践魂(プラスピ)実践魂(プラスピ)

ヘルプを読みつつ実行していく。それが早い。チュートリアルだな。
https://docs.kicad.org/9.0/ja/getting_started_in_kicad/getting_started_in_kicad.html

1.新規プロジェクト作成 これで新規フォルダを作るのだ。F446RE_HATとでもしておく。フォルダ内にいくつかファイルが自動的に作成された。

2.さっそく回路図エディターを開く。綺麗な白紙だ。ちゃんと枠がある。ファイル名もそこに。

3.回路シートの設定 用紙サイズなど。要はページ設定。とりあえずデフォルトで。

4.回路図にシンボルを追加 これがメイン作業 さてF446REはあるのかな
 チップとごく少数のNucleoボードは初期ライブラリに含まれていたが、お目当てのものはなし。ここはデータ取込へと進むしかないな。

5.KiCAD用のデータが提供されていたのでダウンロード。
  さすがDigiKey、SnapMagic。KiCAD用Ver6移行を選択。展開。
 modファイル:フットプリント
  symファイル:シンボルファイル
 stepファイル:3Dモデルデータ
 読み込ませ方もハイパーテキストでついてきた。やってみる。

それぞれ読み込ませてみた。3Dモデルデータは今回ハットなので入れない方が良い気がしたので関連付けを中止。

6.さっそくF446REを回路図に配置。適当に線をつないでみる。いや適当。
 チュートリアル通り、バッテリー、LED、抵抗も配置してみるか。
 そうすると電源周りへ進めるからね。

実践魂(プラスピ)実践魂(プラスピ)

7.回路図にシンボルを追加する へ戻り実践。
 ・右側の▷シンボルを配置ツールをクリック、出てきたウィンドウの検索窓にLEDと打ち込み、一番目のLEDでOK、回路図エディター上に配置された
・同様に電流制限抵抗Rを配置する 長方形よりギザギザが好きな方にはUSタイプも選べる
・バッテリーも追加

8.オブジェクトの選択、移動、回転
・選択ツール↖をアクティブにしてオブジェクトをクリック 『オフチョベットしたテフをマブガッドしてリットを作る』みたいなもんだ
・クリックや範囲センタ選択はだいたい直感通り。回転がR。移動モードにMとGがあるがワイヤを無視するのがM ご一緒するのがGと覚えておけばいい

9.回路図の配線
・いよいよ配線。ワイヤを追加ツール?Ver9では『\』「ワイヤをドラッグ」がそれのようだ。
 ほぼ直感的な操作可能。つなぐだけのことよ。

10.電源シンボルの追加
・『アースの記号』部品ツールでPOWERと打っても出てくるのにわざわざショートカットが。バッテリーも配置してあるのになぜ?!これには深い訳があるのだろう。アースもあるでよ~

11.配線にラベリング これは上流に付ければいいのかな ワイヤは全部小文字にするなど自分ルール決める
・『A(にアンダーライン)』(ネットラベルを配置)ボタンをクリック

12.注釈、シンボルプロパティ、フットプリント
・各シンボルには、固有の参照指定子を割り当てる必要があります。このプロセスは「注釈」とも呼ばれます。
 左側に自動で割り振るかどうかのツールボタンがある『R??⇒R42』42!!!!!!!!!!!
 生命、宇宙、そして万物についての究極の疑問の答えが書かれているが、気にせず次へ行こう
 要するに抵抗器という概念が基板上の世界にたった一つの個体としての抵抗器になったわけだ

実践魂(プラスピ)実践魂(プラスピ)

13.シンボルのプロパティ
・オブジェクトを右クリックしてプロパティを選択
 リファレンス: 直訳すれば「参考」「参照」「言及」「出典」などを意味する言葉だが、これは種類と連番だな 自動任せでよかろう
 値: これは機能説明的な名前か、具体的な商品の型番でも良かろう とりあえず赤色LEDならREDでもいい
   バッテリなら電圧、抵抗の場合は抵抗値一択だな

14.フットプリントの割り当て いよいよKiCADのメインディッシュが来たな、前菜はサクッと食べました
 ・フットプリント割り当てのツールボタンは上部のツールバーを見てくれ 赤いリンクマークの付いたヨットみたいなやつ
 ・割り当てウィンドウがざくっと開く。左からライブラリ、配置した部品リスト、右側にフィルタリングされたフットプリントリスト。
 ・あまりにも多いのでフィルターも豊富だ。ⅲ(シンボルごとの特徴)#(ピン数)L(ライブラリ)テキスト(名前によるフィルタ)
 ・シンボルのプロパティからもフットプリントの割り当てに進むことが可能だ
・右の枠のフットプリント名を右クリックして表示を選べばプレビューも見ることが出来る

割り当て完了。保存してOKでいいのかな。

実践魂(プラスピ)実践魂(プラスピ)

15.電気規則チェック Electrical Rules Checker (ERC)
 レイアウト前の最終チェック。未接続のピンはないか、電源やアースはどうかなど基本的で簡易なものだが最低限クリアすべきもの。
さっそくERCボタンをクリック。チェックリストに赤い✅マークが入ったようなボタン。
盛大にエラー。F446が未配線だからだな。とりあえず削除して再トライ。電源ピンが駆動されていないとエラー。これがよく出るやつ。
ここで特徴的なのは、『POWER_FLAG』をバッテリー等の電源ライン上にそれぞれシンボルを接続し明示すること。言わずもがな、は通用しないのだ。
部品または電源ボタンからPOWER_FLAGを選択しバッテリのプラス側マイナス側それぞれのラインに接続。
エラーゼロになりました。パチパチパチ。

実践魂(プラスピ)実践魂(プラスピ)

16.部品表 おまけ
 最後のおまけに部品表が出せます。これは便利だね。BOMっていうのだが文字コード関連用語とは別なのね。
ボタンは上部ツールバーの『BOM↑』。押してみる。CSVがまんまプレビューされている。
ここで『エクスポート』ボタンで出力。デフォルトではプロジェクトフォルダ内に保存されるので表計算ソフトなどで表示してみる。

実践魂(プラスピ)実践魂(プラスピ)

KiCad のダウンロードとインストール
基本概念とワークフロー
PCB設計ワークフロー
チュートリアルパート1: プロジェクト
チュートリアルパート2:回路図

ここまで完了しましたね。次行きましょう。

チュートリアルパート3:回路基板

1.PCBエディターの基本
 一度プロジェクトウィンドウ(多分開いたままになってる)に戻り、PCBエディターを起動させよう。
っていうのはめんどくさいので、そのまま回路図エディターの上部ツールに鎮座する緑の正方形の基板ボタンでGO
画面の拡大縮小、パンは同じ操作感。

ああああ、ツールがてんこ盛りだね。さぁ楽しいお絵描きの始まりだ。
▲付のボタンが複数の機能から選択可能なのはフォトショと同じ。

一番右の外観パネルはレイヤー、オブジェクト、ネットと3つのタブが合ってそれぞれ変えることが出来る。
その下部には選択用のフィルター。これも利便性の向上ツールだね。

実践魂(プラスピ)実践魂(プラスピ)

2.ボードのセットアップとスタックアップ 。。。スタックアップってなんなん。
まずはページ設定。用紙にプリントしてナンボですわ。
日付、リビジョン(バージョンみたいなもん)、タイトル付けると、おお、それっぽくなるね。

3.次に、 「ファイル」 → 「ボード設定…」を選択し、PCBの製造方法を定義します。
 と、さらっと入ったにもかかわらず ここから**【最も重要な設定】**

実践魂(プラスピ)実践魂(プラスピ)

4.次に、「設計ルール」 → 「制約」ページに進みます。
 とあるが、Ver9では設計の代わりにデザインと表記されている。漢字に成ったりカタカナになったり忙しいぜ

これはPCBの発注段階で特に重要になってくる。業者によって能力が違うからね。無理な注文は無理。

実践魂(プラスピ)実践魂(プラスピ)

6.回路図からの変更のインポート
まだ真っ黒なPCBレイアウト画面に早くコンポーネントを置きたいぜ。
・「ツール」 → 「回路図からPCBを更新…」をクリック または回路図→PCBなボタン。
窓が開いて更新をいろいろ聞かれる。

とにかく【基板を更新】ボタンをクリック。ドラッグ状態で部品がカーソルにくっついてくるのでいい塩梅でクリックすればドロップされる。密集しておる。

回路を変更するたびに手動で更新する必要がある。

7.ボードのアウトラインを描く
 要するに基板の外寸を決めようぜってことね。右の縦長ツールで□でも〇でも自由に書ける。あとは業者の能力次第

右側の「アピアランス」(外観)パネルの「レイヤー」タブで「Edge.Cuts」を長方形24を追加クリックします。右側のツールバーで長方形ツールを選択し、キャンバス上で最初の角をクリックして配置し、もう一度クリックして反対側の角を配置します。

実践魂(プラスピ)実践魂(プラスピ)

8.基板上にフットプリントを配置する
ここではいろいろな配慮が必要になってくる。部品の物理的形状と用途に対する理解、電気的特性による配置や配線の影響への理解などなど・・・シビアなレベルだとね。どんな周波数で動かす回路かも重要。

配置されているのは部品のフットプリント。移動時にリファレンスや値を選択するとそれだけが動いてしまう。
いい塩梅で選択ツールで選択後、Mキーで移動モードに入るのが吉。

Fキーで基板の裏面にパーツを移動配置できる。エディターではひっくりかえるので鏡像となる。

実践魂(プラスピ)実践魂(プラスピ)

9.ルーティングトラック

・コンポーネントを配置したら、パッドを銅のトラックに接続
・最初のトラックはボードの前面に描画されるので、F.Cu「外観」パネルの「レイヤー」タブでアクティブ レイヤーを変更
・右側のツールバーで「トラックを配線」 をクリック
・パッドをクリックすると、アクティブレイヤーが自動的に に切り替わる

ウインドウズ下のステータスを見て未配線が0になっていれば配線は完了!

実践魂(プラスピ)実践魂(プラスピ)

10.銅ゾーンの配置

・関連付けられたネットを持つ銅線領域
・ゾーンは、同じネットに属する銅線オブジェクトに自動的に接続

例)GND基板の下部にゾーンを追加する
 ①レイヤーを下部の銅箔層に切り替え
 ②右側のツールバーにある「塗りつぶされたゾーンを追加」ボタンをクリック
 ③PCB上をクリックして、ゾーンの最初のコーナーを配置
 ④表示される「銅箔ゾーンプロパティ」ダイアログで、GNDネットを選択

 ⑤「OK」をクリックし、ゾーンの残りの3つのコーナーをクリックして配置
 ⑥「編集」 → 「すべてのゾーンを塗りつぶす」( )でゾーンを塗りつぶし

 サーマルリリーフが描画されるとちゃんとしたプリント基板を作成してる実感があるね プラス極が四角いパッドなのもたまらんち。

実践魂(プラスピ)実践魂(プラスピ)

11.設計(デザイン)ルールチェック DRC

・回路図における電気ルールチェックに相当するレイアウト機能
・回路図とレイアウトの不一致
・クリアランス不足または短絡している銅箔領域
・どこにも接続されていないトラックなどの設計ミスを検出
・カスタムDRCルールを記述することもできます。
・重大度を調整するには、「ファイル」 → 「ボード設定… 」 → 「デザインルール」 → 「違反重大度」に移動
・「検査」 → 「設計ルールチェッカー」、または上部のツールバーのボタンを使用してDRCチェックを実行

実践魂(プラスピ)実践魂(プラスピ)

12.3Dビューア

・「表示」 → 「3Dビューア」で3Dビューアを開きます
仕上がりが予想出来て便利だし、何より楽しい機能だね

実践魂(プラスピ)実践魂(プラスピ)

13.製造出力

・ファイル→プロット…​ でプロットダイアログを開きます。このダイアログでは設計図を複数の形式でプロットできますが、PCB製造業者に発注する場合は通常、Gerber形式が適しています。
・出力ディレクトリを指定
・必要なレイヤーがすべてチェックされていることを確認
・銅箔層(.Cu)、基板外形(Edge.Cuts)、はんだマスク(.Mask)、シルクスクリーン(*.Silkscreen)

いわゆるガーバーファイルを作るのだ

・「プロット」をクリックしてガーバーファイルを生成
・「ドリルファイルの生成」をクリックして、基板にドリルで穴を開けるすべての穴の位置を指定するファイルを生成

これで設計は完了です。!!!!!!!祝!!

実践魂(プラスピ)実践魂(プラスピ)

チュートリアルパート4:カスタムシンボルとフットプリント

カスタムパーツやら、ライブラリに無い部品のシンボルやフットプリントはどうしよう、自分で作れ!ってことよ

・KiCadは、ユーザーのシンボルライブラリとフットプリントライブラリをそれぞれシンボルライブラリテーブルとフットプリントライブラリテーブルに記録します。
・グローバルシンボルおよびフットプリントライブラリテーブルに加えて、シンボルとフットプリント用のプロジェクトライブラリテーブルも存在します。
・ユーザーは、グローバルライブラリテーブルまたはプロジェクト固有のテーブルに独自のライブラリを追加できます。
・シンボルライブラリテーブルは、回路図エディタまたはシンボルエディタウィンドウの「環境設定」 → 「シンボルライブラリの管理… 」で表示または編集できます。
・フットプリントライブラリテーブルは、ボードエディタまたはフットプリントエディタの「環境設定」 → 「フットプリントライブラリの管理…」で表示または編集できます。
・多くの場合、ライブラリへのパスはパス置換変数で定義されます。これにより、ライブラリテーブルを変更することなく、すべてのライブラリを新しい場所に移動できます。必要なのは、新しい場所を指すように変数を再定義することだけです。KiCadのパス置換変数は、プロジェクトマネージャーまたはいずれかのエディターウィンドウの「設定」 → 「パスの設定…」で編集できます。

最初は気にしなくていいな。それよりさっそく作ってみよう。

実践魂(プラスピ)実践魂(プラスピ)

新しいグローバルライブラリまたはプロジェクトライブラリの作成

・新しいシンボルまたはフットプリントを描く最初のステップは、保存先のライブラリを選択すること

例)スイッチシンボルとフットプリントを新しいプロジェクト固有のライブラリに保存
 ①プロジェクトマネージャーからシンボルエディターを開き
 ②「ファイル」 → 「新規ライブラリ」をクリックし、「プロジェクト」を選択
 ③新しいライブラリの名前(例: )を選択し、プロジェクトディレクトリに保存
 ④空の新しいライブラリが左側の「ライブラリ」ペインで選択され、プロジェクトのライブラリテーブルに自動的に追加されます

新しいシンボルの作成

ⅰ)ライブラリを選択した状態で、「ファイル」 → 「新規シンボル…」をクリック
 ⅱ)「シンボル名」フィールドに部品番号を入力
 ⅲ)スイッチシンボルの参照指定子は で始まる必要があるため、 「デフォルトの参照指定子」フィールドを にSW変更
 ⅳ)その他のフィールドはデフォルトのまま→【OK】
 ⅴ)キャンバスでは、フットプリントの中心を示す十字が表示され、参照指定子のテキストが追加されています。とりあえず、テキストをシンボルの中心から離して邪魔にならないようにしておきます。

シンボルピン

・シンボルの描画を始めるには、まずピンを追加します
・右側のツールバーにある「ピンを追加」ボタンをクリック
・「ピンのプロパティ」ダイアログが表示され
・ピンのプロパティを設定
・「OK」をクリックし、キャンバス上をクリックしてピンを配置
※ピンのプロパティ再編集(ピンをダブルクリックか、ピンを右クリック → 「プロパティ… ​」)

・ピンの追加は【Insertキー】で

・ピン3をスイッチシンボルの右側に配置したいので、プロパティを編集して位置と向きを変更します。

実践魂(プラスピ)実践魂(プラスピ)

グラフィック機能

・ピンを配置したら、円ツール円を追加と線を追加ツールを使ってシンボルをSPSTスイッチのように見せます
・このステップでは、より細かいグリッドに切り替えると便利
・「グリッド」サブメニューからより細かいグリッドを選択
☆グラフィカルな図形を追加したら、50ミルのグリッドに戻し

・シンボルのプロパティ 検索に有用なキーワードを追加したり不要な表示を非表示に変える等。

実践魂(プラスピ)実践魂(プラスピ)

フットプリントの作成

・フットプリント エディターを開き、プロジェクト固有の新しいフットプリント ライブラリを作成
・ファイル→新規ライブラリ
・ライブラリ ペインで新しいライブラリを選択した状態で、新しいフットプリントを作成
・ファイル→新規フットプリント
・フットプリントのプロパティ (モジュールオプション 上部ツールバーのボタン) を編集

フットプリントパッド

・配置を容易にするために、パッドの間隔に合わせてグリッドを調整
・左側のツールバーのボタンを右クリックし、「グリッドの編集…」を選択してグリッド設定を開き
・下部のプラスボタンで新しいグリッドを追加
・新しいグリッドのXサイズを に設定
・ダイアログを承認し、編集キャンバスに戻り、上部のツールバーのグリッドドロップダウンで新しいグリッド選択

・慣例的に、スルーホールフットプリントではピン1(0,0)、左上になるように配置
・KiCadのデフォルトの座標系では、Y軸の正方向は下向き

右ツールバーの「パッドを追加」ツールを使用してパッドを配置

・ESCキーでパッドツールを終了
・パッドをダブルクリックしてプロパティを編集
・パッド番号、位置が正しいことを確認

例)スイッチピンは1.17 mm x 0.8 mmなので、対角線(最大ピン寸法)は1.42 mm
  ・十分な環状リングを形成するには、穴の直径を1.42 mm + 0.2 mm =1.62 mm
 ・パッドの直径を1.62 mm + 2*0.15 mm = 1.92 mmに設定

パッドを追加ツールをもう一度使用して、もう1つのパッドを 配置

・パッド番号が自動的に増加し、パッドサイズや穴サイズなどのプロパティが前のパッドからコピーされる
・「パッドのプロパティを他のパッドにプッシュ… ​」をクリックし、「現在のフットプリントのパッドを変更」をクリック

実践魂(プラスピ)実践魂(プラスピ)

フットプリントグラフィックス

・適切なフットプリントでは、製造レイヤー ( F.Fab) に正確な部品のアウトラインが描画され、シルクスクリーン レイヤー ( ) にはわずかに大きいアウトラインが描画され、他のフットプリントとの重なりを防ぐためにフットプリント全体を囲むF.Silkscreen中庭 ( ) が描画されます。F.Courtyard

・右側のレイヤーパネルでF.Fab をクリックして、前面の製造レイヤーに切り替え
・製造アウトラインは、部品の物理寸法と正確に一致する必要がある
・線24行目を追加、長方形長方形24を追加、またはポリゴングラフィカルポリゴン24を追加ツールを使用して、下のスクリーンショットに示すように部品のアウトラインを描画
・アウトラインを正確に配置する 1 つの方法は、パッドの場合と同じように、正しい X 間隔と Y 間隔で新しいグリッドを作成すること
・グリッド設定ダイアログのリンクチェックボックスをオフにして、X 間隔と Y 間隔が不均等になる
・ボタンを右クリックしてグリッドを選択することで、グリッドの原点を調整できます。

実践魂(プラスピ)実践魂(プラスピ)

シルクスクリーン

・ウトラインをパーツのアウトラインのすぐ外側に配置するため、シルクスクリーンの線は製造レイヤーの線から0.11mm外側に描画されます

コートヤード

・最後にF.Courtyardレイヤーを選択します。中庭のアウトラインがパーツを0.25mmのクリアランスで囲むようにします。

・アウトラインが完成したら、テキストを配置します。これでフットプリントが完成

実践魂(プラスピ)実践魂(プラスピ)

回路図にスイッチを追加する

・シンボルエディタに戻り、スイッチシンボルを開き
・シンボルプロパティを編集
・Footprintフィールド内をクリック
・表示されるライブラリブックアイコンをクリック
・プロジェクトのフットプリントライブラリを参照
・スイッチフットプリントをダブルクリック
・シンボルを保存

レイアウトにスイッチを追加

・「ツール」 → 「回路図からPCBを更新…」
・ラッツネストには、配線が必要な新しい接続が表示されます
・不要なトラックを削除
・Uを数回押して選択範囲を拡張
・ゾーンを補充するには、Bを押します。
・最後に、DRC を再実行して、変更されたボードが設計ルールに違反していないことを確認

実践魂(プラスピ)実践魂(プラスピ)

シンボル、フットプリント、3Dモデルのリンク

・回路図の入力プロセス中に回路図内の各シンボルにフットプリントを割り当てる必要
・各シンボルに割り当てられたフットプリントの名前は、Footprintシンボルのプロパティフィールドに保存されます。
・シンボルの作成時にフットプリントが選択されているシンボルには手動でフットプリントを割り当てる必要はありません。
・ユーザーは、事前に選択されたフットプリントを上書きできます。
・シンボルにはフットプリントフィルターを指定することもできます。

フットプリントと3Dモデル

・コンポーネントの3Dモデルは別々のファイルに保存され
・コンポーネントの3Dモデルのファイル名はフットプリントに保存され
・各フットプリントには任意の数の3Dモデルを追加でき
・3Dモデルのファイル名、スケール、回転、オフセット、不透明度は、フットプリントプロパティの「3Dモデル」タブで設定
・STEP ( .step) と VRML ( .wrl) の両方の 3D モデル形式がサポート
・STEP ファイルは寸法精度が求められる場合に便利
・VRML ファイルはより視覚的に魅力的なレンダリングに使用
・フットプリントには、2 つのモデルのうち 1 つだけを記述する必要があり
・ (通常は VRML ファイル名を指定します)
・KiCad は、機械 CAD 用に基板の 3D モデルをエクスポートする際に、自動的に STEP バージョンに置き換え

実践魂(プラスピ)実践魂(プラスピ)

いざ本番!回路図はラフスケッチしてあるので、部品選定を終わらせよう。
その部品がデフォルトで存在するかシンボルデータ、フットプリントデータをメーカーが用意していることを祈ろう。

1. ** Nucloe F446RE **  これがないと始まらない。幸いにもデータがあったので導入済。データは以下ページのEDA/CADモデルリンクへGO!そこからKiCADを選ぶのじゃ。
https://www.digikey.jp/short/btq47z18

方法はHtmlでZIPファイル内に同梱されている。簡単に導入できる。

Kicad のインポート手順 (V6 以降)
インポートシンボル
*.kicad_symファイルの使用:

ダウンロードした*.zipファイルの内容を抽出します。
KiCad で、「環境設定」に移動します。
シンボルライブラリの管理をクリックします。
グローバルライブラリタブで、ライブラリの参照(小さなフォルダアイコン)をクリックします。
kicad_symファイルを選択し、「開く」をクリックします。
ライブラリが表示されるので、「OK」をクリックします。
シンボルエディターをクリックします。
フィルター検索フィールドに入力し、インポートしたシンボルに移動します。
シンボルをダブルクリックしてファイルを開きます。

フットプリントのインポート
*.kicad_modファイルの使用:

ダウンロードした*.zipファイルの内容を抽出します。
KiCad で、「環境設定」に移動します。
[フットプリント ライブラリの管理]をクリックします。
グローバルライブラリタブで、ライブラリの参照(小さなフォルダアイコン)をクリックします。
.kicad_modファイルがあるフォルダに移動し、「フォルダの選択」をクリックします。
注意:この手順では、.kicad_mod ファイルがあるフォルダーを選択する必要があるため、通常、.kicad_modファイルは表示されません。

ライブラリが表示されるので、「OK」をクリックします。
フットプリント エディターをクリックします。
フィルター検索フィールドに入力し、インポートしたフットプリントまで移動します。
ダブルクリックしてファイルを開きます。
KiCad (V4 および V5)

ライブラリに登録完了。フットプリントデータも関連付け完了。
白紙の回路図に部品を配置し、フットプリントデータを確認し、3Dデータを見てみよう。


これでもう仕事の大半が完了した気がする(笑)
残るはモジュール2つと端子台にコネクタだ。電源用の保護回路も載せるけど
どれも一般的な部品ばかりでだいたいの大きさも見当がつくし入手性が良く
だからつまり回路図用シンボルもPCB用フットプリントデータもデフォルトであるだろう

実践魂(プラスピ)実践魂(プラスピ)

自動配線にトライ

そうだ、本番前に簡単な回路で自動配線の導入と試験をしておこう。基礎で経験を積んでおく。

KiCAD 自動配線 でググると素敵なサイトが・・・

https://www.kicad.xyz/auto-routing/
見出しや手順の表示がとても分かりやすくていいですね 20210615

https://sakigake-robo.com/kicad-5/
今回作らねばならないシールドと目的が同じですね そのまま参考にしていけるかも! 20240629

https://tomosoft.jp/material/?p=486#
ロゴの作成と貼付け記事も付属。スクショメインの手順で不明な点はスクショをよく見るといい。 20240626

単純にグーグル検索結果を上位から並べてみただけですがとりあえず始めようじゃないの。

実践魂(プラスピ)実践魂(プラスピ)

## 自動配線ツールのダウンロードとインストール
https://www.kicad.xyz/auto-routing/#st-toc-h-2
https://github.com/freerouting/freerouting/releases
Windowsの場合はダウンロードされたfreerouting-2.1.0-windows-x64.msiによってインストール完了

## JAVAのダウンロードとインストール
https://www.java.com/ja/
Desktop用のJAVAをダウンロードして、jre-8u461-windows-x64.exeによってインストール完了

テスト用の回路図を用意してみる。
Ⅰ回路図エディタを開く
1.部品を配置 とりあえずバッテリー、LED、抵抗、スイッチでよかろう
2.フットプリント割り当て スルーホールと表面実装を混ぜて難易度を上げてやれ
3.ワイヤリング(配線) さすがに回路図の配線は手動だわな。意図が分からないし。
4.部品表作成
5.フットプリント割り当て確認
6.ERC
7.アノテーション
8.保存

ⅡPCBエディタ
1.回路図から基板を更新
2.配置 とりあえず初期状態のままで置いてみる。ギュッとコンパクトな配置だがラッツネストも混み混み。
3.基板外形 Edge.Cutsレイヤーをアクティブにして図形を描く


とりあえずこれで。

Ⅲ配線情報(dsnファイル)を出力する
1.「dsn」ファイルを出力します。

KiCADのPCBエディタ(Pcbnew)画面で「ファイル」→「エクスポート」→「Spectra DSN」をクリック
ファイル名を指定して保存をクリック

2.「Freerouting.exe」を起動
3.DSNファイルを開く

4.「オートルータ」ボタンをクリック・・・ってどこ!どれ?

雰囲気と場所からして魔法のステッキみたいなボタンだろう。ポチっとな。
一本しか配線されない、と思ったら数秒後には全部配線された。途中経過の見せ方~

基板裏面GNDを表面実装の負極とつなぐために、自動的にビアが追加されるのね。
5.「File」-「Exports Specctra Session File」をクリックして、SESファイルをエクスポート、
 などというものは無く、単純に「ファイル→名前を付けて保存」しかないV2.1.0の場合。

6.KICADのPCBエディタに戻る。ただいま。
7.「ファイル」-「インポート」-「Specctra セッション」をクリック
8.先ほどのSESファイルを選択して開く。出た!

9.GND基板の下部にゾーンを追加する
 ①レイヤーを下部の銅箔層に切り替え
 ②右側のツールバーにある「塗りつぶされたゾーンを追加」ボタンをクリック
 ③PCB上をクリックして、ゾーンの最初のコーナーを配置
 ④表示される「銅箔ゾーンプロパティ」ダイアログで、GNDネットを選択
⑤「OK」をクリックし、ゾーンの残りの3つのコーナーをクリックして配置
 ⑥「編集」 → 「すべてのゾーンを塗りつぶす」( )でゾーンを塗りつぶし

それっぽく出来た。これはいいね。

練習完了。

実践魂(プラスピ)実践魂(プラスピ)

配線を太くする方法

信号線としての配線であればデフォルトのままでいい気がするけども、電源ラインやモータードライバーや電源リレーなどには多少許容電流量に余裕が欲しいね。というわけで検索してみると
https://marunaka-blog.com/kicad-pattern-width/8689/
https://rt-net.jp/mobility/archives/23732

自動配線後に手動でクラスを割り当ててもいいけれど、自動配線の時にそういうルールが有った方がいいね。
https://rocket-live.blogspot.com/2018/07/kicad_17.html
KiCADでネットクラスを設定してから自動配線ソフト用のファイルを出力すればいいわけだ。

先ずデザインルールエディタ・・・どこにあるんだ!エディターが並ぶ起動画面にも見当たらない。
とりあえずPCBエディターの・・・上部ツール左側、設定ボタン、これだな。
1.基板の設定→デザインルール→ネットクラス

作ってみた

しかし割り当て用にもネットリストに何も出てこないぞ?!配線のプロパティの名前にも反応が無い
助けて!
https://kicad.biz/netlist/
ところがどっこいVer9では「ネットリスト」の生成ボタンもツールにも見当たらないのだった。

助けてRedditニキ。
https://www.reddit.com/r/KiCad/comments/sg0qqu/where_is_the_netlist_button/?tl=ja

これか?!これなのか?
なんもない。その前に回路図エディターでエクスポートしないといけないのか?

Ver9ではこの辺りかなり変わったようだ。

1.PCBエディタを開く
2.配線を選択

実践魂(プラスピ)実践魂(プラスピ)

Google検索AIによれば

AI による概要
KiCad 9では、ネットクラスの割り当てや管理の方法が変更されました。以前のバージョンとは異なり、ネットを選択して直接ネットクラスを割り当てるメニューの場所が異なっているため、戸惑う方が多いようです。
KiCad 9でネットクラスを割り当てるには、主に以下の2つの方法があります。

  1. 回路図エディターで「ネットクラス指示子」を使用する
    この方法は、ネット名やラベルを使って複数のネットにネットクラスをまとめて割り当てるのに便利です。
    回路図エディターを開く
    右側のツールバーから**「ネットクラス指示子を配置 (Place net class directive)」**ツールを選択します。
    ネットクラスを適用したいワイヤー(配線)をクリックして、指示子を配置します。[1]
    指示子をダブルクリックしてプロパティを開き、適用したいネットクラスを選択します。 [2]

試行錯誤だ・・・

すぐにVCCやらPWR_FLAGをつけ忘れてしまうんだぜ
ERC実行。

RC レポート (2025-10-13T15:17:48+0900, エンコーディング UTF8)

***** シート /
[multiple_net_names]: VCC と Batt+ は、ともに同じ配線に接続されています; VCC をネットリスト用ラベルとして選択しました
; warning
@(3800 mils, 3250 mils): Symbol #PWR01 ピン 1 [Power input, Line]
@(3100 mils, 3250 mils): ラベル 'Batt+'
[multiple_net_names]: Earth と GND は、ともに同じ配線に接続されています; Earth をネットリスト用ラベルとして選択しました
; warning
@(3800 mils, 4000 mils): Symbol #PWR02 ピン 1 [Power input, Line]
@(3100 mils, 3900 mils): ラベル 'GND'

** ERC メッセージ: 2 エラー 0 警告 2

どゆこと?もしかしてバッテリーに繋がってるラインは始めからPower inputというラベリングがされている?

  1. 回路図設定ダイアログで正規表現を使用する
    この方法は、特定の命名規則を持つネットに対して一括でネットクラスを割り当てるのに非常に強力です。
    回路図エディターで、ファイル -> 回路図設定 -> ネットクラスを開きます。
    左側でネットクラスを選択または新規作成します。
    右側の**「ネットクラスの割り当て」セクションで、+**ボタンをクリックします。
    **「ネット」*の列に、ネット名と一致するパターンを入力します。例えば、「+5V」や「GND」といった特定のネット名に割り当てたり、「PWR」のようにPWRで始まるすべてのネットを対象にできます。
    **「ネットクラス」**の列で、割り当てたいネットクラスを選択します。
    OKをクリックして設定を適用します。
    割り当てたネットクラスが反映されない場合の確認点
    PCBエディターでネットクラスルールを設定する: ネットクラスの割り当てだけでは、パターン幅などの設定は適用されません。
    PCBエディターで、ファイル -> 基板設定 -> デザインルール -> ネットクラスを開きます。
    回路図で設定したネットクラスが表示されているか確認します。
    各ネットクラスのパターン幅やビアサイズなどを設定します。
    回路図とPCBを同期する: 回路図の変更をPCBに反映させるには、**ツール -> 回路図から基板を更新 (F8)**を実行する必要があります。
    ネットにラベルを付ける: 意図的にネットクラスを割り当てたいネットには、ラベルを付けるのが確実です。ラベルのないネットは「Default」ネットクラスに属します。
    これらの手順を踏むことで、KiCad 9で正しくネットクラスの割り当てと、それに伴うパターン幅の設定が行えます。

試してみる。試行錯誤。ふて寝。起床。
やっと分かった。ネットクラスの割り当てで+してパターンのところに文字を打ち込んでも、完全一致でないと右側に候補は出てこない。なんだよそれは。たまたま*(ワイルドカード)を打ってみたらビンゴ!!!

やはりデフォルトでラベリングされているね、基本的に。

よし出来た、のかも知れない。
もう一度自動配線の手順を全部やってみるぞ!

脚注
  1. これか?!
    ↩︎

  2. 余計に意味が分からないw
    ↩︎

実践魂(プラスピ)実践魂(プラスピ)

ここまでやり直しまして。

DSNファイル出力。
freeroutingを起動。マジックステッキ!✨最初の一本描画したら後は停止してるからフリーズしたかと毎回おののく。画面をいじると既に完成している。ビビらせないでよ

さてKiCADに持ち帰るのだ!

ヨーシヨシヨシヨシヨシヨシ・・・・気分はムツゴロウさんだは。

いい子だいい子だ・・・


でかした。これでいいのだ!

実践魂(プラスピ)実践魂(プラスピ)

本番開始だ ハット、もしくはシールドの作成

念には念を入れまして、ようやく本番であります。何はともあれ使いたい部品のシンボルとフットプリントが全て初期ライブラリに入っていたらかなり楽勝となりますが・・・

先ずは先人のブログでお勉強。予習大事。
https://sakigake-robo.com/kicad-5/

1.テンプレートの読み込み

なに?!必死こいてSTEPデータゲットしたのに、最初からテンプレあるのか・・・Nucleoもあるじゃん・・・



すでにもうシールドとしての体裁と最低限の配線、電源周りは終わってるウ!!!

実践魂(プラスピ)実践魂(プラスピ)

2.基板の拡張

このままではちょっと狭い。上部のST-Linkモジュールも覆うサイズにまで基板を拡大して、そこに外部電源入力端子と保護回路を乗せたい。さらにCANモジュールとRFモジュールの5V電源も外部から供給したい。
というわけでとにかくスペースが必要なのだ。出来るかな・・・・

PCBエディターでいじればいいが、ノギスの絵をした右側のツールボタンってどこだ!ねーよ。
というわけでショートカットキーはCtrl+Shift+M メジャーってこったね。

PINヘッダ上端から30㎜伸ばすのがベストだな。やってみよう。
素敵な定規だ・・・

ざっくり線を描き変えたが、DRCで線が閉じていないと警告が・・・どうすんのこれ
何度か描き直してDRC合格!ふぅ、ヤレヤレだぜ。
オリジナルなものになってきたな。

基板の拡張はこれにて完了。

ん?DigiKeyのデータだと最初から拡張されてないか?!まぁ勉強になったので良し・・・

Arduino用のホールも今回不要だし・・・

実践魂(プラスピ)実践魂(プラスピ)

3.回路図エディタで部品の配置

回路図のラフスケッチを元に、必要な部品をリストアップしていく。
仕様:
・マイコンには外部DCDCから12vを供給(ここに保護回路、入力端子台)
・外部モジュール用に外部DCDCから5vを供給(ここにも保護回路、入力端子台)
・CANトランシーバモジュールを2個載せる(端子台は別途必要)
・PWM出力5ch分取り出しコネクタを設置、5vおよびGND,合計7Pコネクタ設置
・予備のSPI、I2C、UARTを取り出せるようにコネクタを設置、これはマイコンから3v3をもらう

無かったー(笑)


2.54mmピッチのスルーホールを並べるだけで基板としては問題ないけれど、写真に合わせればフットプリントにおいて必要な大きさ、必要な面積というか外形も決まる。

部品リストを作成、シンボルとフットプリントの有無を確認をここで。オリジナルフットプリント作成は次回。

名称 部品名 シンボル フットプリント
12v入力端子台 データ1 有り 有り
データ1 データ3 データ4 データ4
実践魂(プラスピ)実践魂(プラスピ)

4.フットプリント作成

先ずは先人たちから学ぼう、勉強しよう
https://www.kicad.xyz/create-footprint/
https://kicad.biz/footprint_editor/
https://rt-net.jp/mobility/archives/23350
https://toragi.cqpub.co.jp/tabid/673/Default.html

3Dモデルも作りたくなってきた・・・やっぱFusionか
https://aisumegane.com/kicad_introduction-of-3d-models/
https://rt-net.jp/mobility/archives/21931
KiCADのおススメはFreeCAD・・・
今回モジュールのシンボル、フットプリントを自作することになるが、これの3Dはもはや一つの小さな基板
それなら各部品の3Dモデルは既にある、基板に基板を重ねる方法もあるようだ
はい、とにかく基板の発注を急ぎたいので3Dモデルで遊ぶのはまた次回ということで。

実践魂(プラスピ)実践魂(プラスピ)

5.シンボル作成

これもCANモジュールに関して作成する必要がある。
PINにはいくつかの機能があるが、併せてここで学んでしまおう。

実践魂(プラスピ)実践魂(プラスピ)

マニュアル一気読み&メモ

1000頁あろうとも目次に目を通して一気に駆け抜ければ記憶の引き出しに取っ手が出来る
PDFならデジタル付箋もいいが、忘備録としてメモを残していく
やりたいことが明確ならば必要なことと役に立つ情報の数は知れている
https://docs.kicad.org/9.0/ja/
ここに現在紹介されているのは
・KiCADことはじめ
・KiCAD
・回路図エディター
・PCBエディター
・ガーバービューアー
・図面シートエディター
・計算機ツール
となっている。

とりあえずざっと見て概要を把握
・KiCADことはじめ(55頁) :チュートリアル間隔で一通りの操作が出来るようになる。
・KiCAD(40頁):インストール手順、ファイルの扱い、基本操作、テンプレ導入法等。
・回路図エディター(247頁):KiCADメイン機能の一つ目 ショートカット集付き
・PCBエディター(233頁):KiCADメイン機能の二つ目 ショートカット集付き
・ガーバービューアー(6頁):ガーバーデータを視覚化
・図面シートエディター(23頁):図面シートをもっといじりたい人に
・計算機ツール(9頁):単なる計算機ではない。部品選定時、必要な値を計算できる。抵抗器のカラーコード表も地味にありがたいね。

重要度や機能の多さがそのままページ数に表れている。

「ことはじめ」だけでも全部実際にやっておけばあとは何とかなる。

実践魂(プラスピ)実践魂(プラスピ)

CANモジュールのフットプリントを作成する

流石に単純すぎるのかフットプリントが転がっていない

ところで回路図はこの中身まで書くべきか、いや要らんな

シンボルも作成するが、とりあえずフットプリントを先に作ってみる。やった感が出るので(笑)

1.フットプリントエディターを起動
 いろんな画面からアイコンボタンで行ける

2.新規ライブラリ作成
 ・ファイル→新規ライブラリ
 ・グローバルを選択
 ・1番目にライブラリがあると検索が楽なのでaで始まるアルファベットにする
  awesomeなら素晴らしいがaudioライブラリの後になってしまうので向上心あふれる野心家たる私は ambitionライブラリとする 頂点apexも捨てがたいがお楽しみはこれからだ
 ※ここでライブラリ名を打ち間違い。ライブラリの操作についても勉強してしまった。失敗大事。
 起動ウィンドウの設定からそれぞれのライブラリの管理が可能だ。

3.アンカーを打つ(基準点の設置)Ver9のボタンは【+←(0.0)】みたいな感じ
 とりあえず原点でいいか。これも使い方やテクニック、Tipsがありそうね。

4.単位設定:尺度をmmに設定:左側の縦長ツールバー【mm↔】的な。
 回路図エディタではインチというかミル(mil1000分の一インチ)でないと回路が繋がらないが
 PCBエディタなど物理層はmmを単位とするのだった

5.グリッド設定:上部ツールバーのプルダウンから0.1000㎜(3.94mil)を選択
 これは任意だがモジュールのような大きなものは実際0.1㎜の分解能でこと足りる。
 いや待て、今回のパーツのピッチは2.54㎜なので2.54㎜にしようぜ(100mil)

6.パッドの追加:右側メニュー【◎】パッドの追加→適当な場所でクリック

7.置いたパッドのプロパティを編集
 今回はスルーホールにして円にしてみる。

これで閉じようとしたら「穴が無い!」と𠮟られちゃったよ。デフォルト値とかないのか。
ユニバーサル互換だと穴径はφ0.9㎜~φ1.0㎜ってところ。ランドはスルーホールなら小さくてもハンダ面積を穴の内側でも稼げるのでそれほど大きくする必要はないが、まぁ1.5~1.8㎜ってところか・・・。

参考ページ
https://www.p-ban.com/magazine/htmlmail/htmlmail_qanda/2013/06/

8.パッドをまとめて配置するグリッド配列なんてテクニークがあることを並べ終わったら見つけたぜ

9.外形線を書く ついでにシルク印刷も文字追加したぜ

10.ネジ穴もあるから対応させたくなってきたな・・・
 Mechanical-MountingHoleを、PCBではなく部品のフットプリントに追加できるだろうか??
Copilotによれば、

「Pad」ツールでホールを追加
Pad Type: Through Hole
Pad Shape: Circular
Drill Size: 例えば 3.2mm(M3ネジ用)など
Pad Number: 通常は「0」や「MH1」など、電気的接続がない番号にする
Pad Type: Mechanical に設定(電気的接続なし)

試してみるっぺ 分からん。どこやねん。そうだ、スルーホールのフットプリントを調べてみよう。

一見良さそうだが、フットプリントチェッカーかけるとコートヤードの定義がない、だと?なんぞそれ。
助けてAI!!!

KiCadにおけるコートヤード(Courtyard)とは、部品を基板上に安全に実装するために必要な部品の占有領域や余白を示すレイヤーです。
このレイヤーは、部品同士が物理的に接触しないように、また、部品から出る配線部分の導体皮膜を安定して形成できるように、最小限必要な禁止領域を定義します。
主な特徴は以下の通りです。
目的 部品の実装時に、隣接する部品やランドパターンに干渉しないようにするための安全な間隔を確保します。
レイヤー名 KiCadでは、基板表面のコートヤードは「F.Courtyard」または「F.CrtYd」、基板裏面は「B.Courtyard」または「B.CrtYd」と表記されます。
DRC(デザインルールチェック) 基板設計中にDRCを実行すると、「コートヤードのオーバーラップ」という警告が表示されることがあります。これは、部品間の余白が十分に確保されていないことを意味します。DRCの設定で、オーバーラップしたコートヤードのチェックを有効にすることができます。
表示 コートヤードレイヤーは、最終的な基板には印刷されず、設計段階でのみ使用される情報です。
コートヤードを適切に設定し、DRCで確認することで、部品の実装不良を防ぎ、基板の信頼性を高めることができます。

ありがとうございます。試してみましょう。
コートヤードレイヤーで四角書けばいいだろ、という安直な方法でエラー表示はなくなった。成功。

で、穴の方は446のボードにある固定穴のプロパティを使おう!

なぜかパッドスタックの項目がこちらでは出てこないが、細かいことは気にしない(気になる)
ひとまずいい塩梅。微妙に対称性に欠けるが、遊びを取ればいいよね。

オリジナルフットプリント、完成!!!

実践魂(プラスピ)実践魂(プラスピ)

KiCAD用語シリーズ

スタックアップ

「stack up」直訳すれば「積み重ねる」「積み上げる」という意味の英単語
そうです、基板の層、レイヤー構成のことですね

ここで勉強してみようっと。
https://kicad.biz/kicad-ver-9_stack-up/

デザインブロックライブラリ

今日ライブラリを管理せざるを得なくなって初めて気付いた。これVer9からの新機能らしい。
様々な回路を作ると言っても、現状はマイコンのグレードやPIN数が変わってペリフェラルが変わる程度の事が多い。そうすると、電源保護回路やらCAN周りやら毎回出番のある回路は定番となっていく。
これをブロックとしてライブラリ化出来るというわけ。
以前の回路を更新したり切った貼ったするよりもより美しく利便性も向上する・・・?
まだ用意されたライブラリは無いようなので自作を貯めていくことになりそうだけど、電源周りやDCDC,ノイズやECM対策回路などは期待しちゃうなぁ!

ご紹介ありがとうございます。
https://kicad.biz/kicad-ver-9_stack-up/

実践魂(プラスピ)実践魂(プラスピ)

将来的には下図のようなモジュールがデザインブロックライブラリに追加されていくと予想する
JPGではなくライブラリファイルで提供されるようになれば表面実装化やカスタムが格段に効率化する

実践魂(プラスピ)実践魂(プラスピ)

DigiKey KiCad回路図シンボル & フットプリントライブラリに、デザインブロックライブラリ登場が待たれる・・・
さて、ということでDigiKeyのライブラリも入れておこうか。
https://www.digikey.jp/ja/resources/design-tools/kicad

ここからGitHubへ飛ぶ DownloadZipで丸ごと落ちてくるので任意のフォルダへ
そのままでは登録できないので解凍すべし。
KiCADのライブラリ管理へいきまし

大量にあるんだけど・・・ライブラリはそれぞれがフォルダのように機能するが、さらにそれをまとめるフォルダ的なものはないみたい。しかしライブラリ名の全ての接頭語としてdk_がついているので、まとめて並ぶだろう。

全選択して一気に追加できた。

良かった良かった。フットプリントも似たような手順だろう。
と思いきや!こちらはフォルダごと登録せねばならない。いいけど。
ちゃんとフットプリントエディタのライブラリを確認すると、入ってるぜ。

一仕事終えたな。

実践魂(プラスピ)実践魂(プラスピ)

KiCADでシンボル作成

はい。ことはじめをおえたなら、先ずは先人から学ぶ。
https://rt-net.jp/mobility/archives/16816

1.シンボルエディタ―を開こう

2.ファイル>新規ライブラリ>グローバル

3.ブラウザが開くので保管場所と名前を決める 自作物は自分専用フォルダが吉。ライブラリ名は01~で一番目に躍り出たぜ

4.ファイル>新規シンボル>新しいシンボル設定ウィンドウが開く

5.とりあえずシンボル名とリファレンス指定子はフットプリントに合わせて後はよく分からないのでデフォルトで

いきなりどでかリファレンス指定子文字でビビらせて来るのやめてもらっていいですか・・

6.右側のツールであれこれ。先ずはフットプリント同様にアンカーを原点に打っておくか。おまじないだ。

7.右側ツールから「ピンを描画」クリック。ピンのプロパティ窓が開く。
・ピン名:任意
・ピン番号:任意
・エレクトリカルタイプ:用途に合わせて
・グラフィックスタイル:お好みで
以下デフォルト。向きは実物と合わせておくも良し、回路図作成時に分かりやすくなるようにしても良し
しかしエレクトリカルタイプってなんだ。

どうにも検索に網羅的なの出てこない。ええ、不器用ですから。助けてAI!というわけでCopilot先生の回答


🔌 KiCADのエレクトリカルタイプ一覧と解説

タイプ名 意味・用途 使用例(代表的な部品やピン)
Input 外部から信号を受け取るピン。信号源ではなく、受信側。 マイコンのGPIO入力、オペアンプの反転/非反転入力など
Output 外部へ信号を出力するピン。他のピンに信号を供給する。 マイコンのGPIO出力、ロジックICの出力ピン
Bidirectional 入出力両方可能なピン。通信や双方向制御に使われる。 I²C SDA、SPI MISO/MOSI、GPIO(双方向)
Tri-state 出力可能だが、ハイインピーダンス状態にもなれるピン。バス接続に必須。 バスドライバ、メモリICのデータバスピン
Passive 信号の方向性を持たないピン。抵抗やコンデンサなどの受動部品に使う。 抵抗の両端、コンデンサ、インダクタなど
Free 接続ルールに縛られない自由なピン。特殊用途や一時的な接続に使う。 汎用ピン、未定義の用途のピン
Unspecified タイプ未定義。設計中や仮置きの段階で使われる。 ラフスケッチ中のピン、部品未確定のピン
Power input 電源供給を受けるピン。電源ラインに接続される。 VCC、GND、VDD、VSSなどの電源ピン
Power output 電源を供給するピン。他の部品に電力を分配する。 レギュレータの出力、電源ICのVOUT
Open collector トランジスタのコレクタ出力。外部プルアップが必要。 ロジックICのオープンコレクタ出力、フォトカプラ出力
Open emitter トランジスタのエミッタ出力。特殊な回路構成で使われる。 一部のトランジスタ回路、アナログ出力用途
Not connected 回路的に未接続のピン。意図的に使わないピンを明示する。 NCピン、未使用のGPIO、オプション機能のピン

💡補足ポイント

  • KiCADではこの設定により、**ERC(Electrical Rules Check)**での警告やエラーを制御できます。
  • 特に「Power input」「Output」「Input」などは、誤接続を防ぐために正しく設定することが重要です。
  • 「Open collector」「Tri-state」はバス設計複数出力の接続での衝突回避に役立ちます。

これは合ってるんじゃないか。助かる。

エレクトリカルタイプの例)
・VCC Power input
・GND Power input 感覚的にはoutputにしたくなるが、受給側はインなのだ
・CTX input TXは送信側なのだがマイコンのTXにつないでね、という意味で使われており仕方ない
・CRX output 同上の理由
・CANH Bidirectional 双方向通信。差動通信もこれでいいか。ERCの時にエラーを吐かなくなるだけ。
・CANL Bidirectional 同上
・S   Bidirectional サイレントモード信号用 使わないけど
・NC Unconnected 最初から最後まで使わないことが明確なピンはこれでOK

8.枠付けて部品名をテキストで書き込んで上書き保存して

9.上部ツールから「シンボルチェッカー」でチェック

10.上部ツール「シンボルのプロパティ」から先ほど作成したフットプリントを登録

11.保存マークをクリック

完成!!!

ほ~ら紐づいた♪

実践魂(プラスピ)実践魂(プラスピ)

CANシールド作成開始

まだ全ての部品のシンボルとフットプリントを確認できていないが、順次やっていこう。
1.回路エディタでシンボルを配置

2.PCBエディタでフットプリントを配置

3.3Dビューアで収まりを確認

いいね。配線しなくても一気にここまで確認できるのはとてもいい。部品選定の助けにもなる、というか必須。

実践魂(プラスピ)実践魂(プラスピ)

端子とコネクタを並べてみよう。
・XA端子[1]2P 12v電源入力用 保護回路付き 供給先:F446RE
・XH端子2P 5V電源入力用 保護回路付き 供給先:CANトランシーバ、RFモジュール、その他5v駆動用
・ネジ式端子台2P x2 CAN出力用
・XH端子4P I2C通信用
・XH端子4P UART用
・XH端子6P SPI用
・XH端子5P+2P RF出力用

とりあえず端子は以上?多いな。

参考図および引用元ホームページ


https://www.pcb-hero.com/blogs/lickys-column/uart-vs-spi-vs-i2c-routing-layout-guidelines

端子はだいたい乗ったな。ふぅ・・・端子だけでパンッパンだな・・・


保護回路上部に配置したら、もう予備端子で接続したモジュールは・・・
・・・シールドのシールドを作ればいいんだよ!!!

脚注
  1. 12vはダメージでかいので端子の形状を変えて誤挿入を防ぐ ↩︎

実践魂(プラスピ)実践魂(プラスピ)

電源入力に保護回路を付ける

12vINと5vINを設ける。それぞれに最低限の保護は付けておきたいものだ。
手頃な感じでAIに部品リストを頼むと

手ハンダ実装向けにTHT(スルーホール)部品で揃えた保護回路用の部品リスト
すべてDigiKeyで入手可能で、KiCAD用のシンボル・フットプリントも利用しやすいもの


🔩 THT部品リスト(12V → VIN保護回路)

用途 部品名(型番) パッケージ DigiKeyリンク 備考
TVSダイオード 1.5KE12A DO-201 🔗 12Vクランプ、サージ保護
逆接防止ダイオード 1N5822 DO-201AD 🔗 ショットキー、3A対応
ヒューズ 0251001.MRL Axial 🔗 1Aガラス管ヒューズ
インダクタ RLB0912-102KL Axial 🔗 1mH、ノイズ除去用
コンデンサ ECQ-E1104KF Radial 🔗 0.1µF、フィルタ用
電圧監視IC(任意) TL7705ACP DIP-8 🔗 5V監視、リセット制御

💡 すべてTHT(スルーホール)で、手ハンダ作業に適したサイズと形状です。KiCADの標準ライブラリまたはDigiKeyのKiCAD Pluginでシンボル・フットプリントを取得可能です。


ヒューズは自動復帰に変更する
手ハンダ向けTHTタイプの自動復帰型ヒューズ(PTC)
12V入力保護に適した部品。
すべてDigiKeyで入手可能で、KiCADでもシンボル・フットプリントが扱いやすい部品。


🔁 THT自動復帰型ヒューズ(PTC)部品リスト

部品名(型番) メーカー 定格電流(保持/トリップ) 最大電圧 パッケージ DigiKeyリンク
MF-RX075 Bourns 0.75A / 約1.5A 60V ラジアル 🔗
MF-RX110 Bourns 1.1A / 約2.2A 60V ラジアル 🔗
RXEF075 Littelfuse 0.75A / 約1.5A 60V ラジアル 🔗
RXEF110 Littelfuse 1.1A / 約2.2A 60V ラジアル 🔗

💡 MF-RXシリーズはBourns製で、RXEFシリーズはLittelfuse製。どちらも信頼性が高く、12V入力の保護に最適


🔧 選定のポイント

  • 保持電流(Ih):通常動作時に流せる電流。Nucleoの消費電流+周辺回路を考慮。
  • トリップ電流(It):過電流時に遮断される電流。突入電流も考慮。
  • 最大電圧:12V入力なら60V定格で十分余裕あり。
  • パッケージ:ラジアル型で手ハンダしやすく、KiCADでも標準フットプリントあり。

TVSダイオード 1.5KE12A

逆接防止ホットキーダイオード 1N5822

PTCヒューズ RXEF075

インダクタ B78148E1103K000
代用品 https://amzn.asia/d/4GsXGBG

コンデンサは0.1μFいっぱい転がってるからいいや

とりあえず回路を組む

実践魂(プラスピ)実践魂(プラスピ)

12vINの保護回路完成

5vもほぼ同様。

すべてラジアル型(THT)で揃えた5V版の部品リスト


🔩 5Vモジュール用 保護・フィルタ回路部品リスト(ラジアル型)

用途 部品名(型番) 備考
TVSダイオード 1.5KE6.8A 単方向、5Vライン用。クランプ電圧約10.5V。DO-201パッケージ。
PTCヒューズ RXEF050 自動復帰型、保持電流0.5A、トリップ約1A。ラジアル型。
逆接防止ダイオード 1N5819 ショットキー、1A対応。DO-41パッケージ。
インダクタ B78148E1103K000 10µH、2.25A対応。12V版と共通で使用可能。
コンデンサ ECQ-E1104KF 0.1µF、50V、X7R。ノイズ除去用。ラジアル型。

✅ 実装上のポイント

  • TVSダイオード(1.5KE6.8A)は、5Vラインに対して過電圧保護として最適。クランプ電圧が10V前後なので、DCDCの出力が安定していれば問題なし
  • RXEF050は、0.5Aまでのモジュールに最適。もし電流が大きい場合は、**RXEF075(0.75A)やRXEF110(1.1A)**も検討可能。
  • 1N5819は、電圧降下が約0.3〜0.4Vと小さく、5Vラインでも許容範囲
  • インダクタとコンデンサは12V版と共通で流用可能。設計の統一性が保てます。

部品がほぼ出そろったので、PCBエディタで反映させ、プレビュー。図面シートも印刷だ!

ぎゅうぎゅう。3Dモデルの方は

こちらは抵抗器以外の3Dモデルが無いおかげですっきり見える(笑)
そしてガーバーデータをガバッと印刷!

いいね。いいね。本日は終了。予備通信のピン配置が決まらないと自動配線もやりようがないっすね。

実践魂(プラスピ)実践魂(プラスピ)

KiCADの3Dモデル

ここまで来ると、3Dモデルが付属していない部品に不足を感じてくる。
もちろんこれも自作可能で、勉強は
https://qiita.com/mapletree/items/b93ae8f6b22826e0dcb5

・・・なんだけど、割り当ての時にスケール、シフト、回転がXYZ自在のようなので
似たようなモデルを割り当ててやればとりあえずイメージ、ハンダ付けの難易度、必要なケースの大きさなど、実務に事足りる3Dモデルにはなりそう。やってみよう。

もう一つ勉強になるサイト
https://sakigake-robo.com/kicad-8/