まごころせいじつ堂

浜町庄金 研究開発  マイコンで遊んでばっかりで

KiCad

KiCad5 プロジェクトの公開時に独自ライブラリを含める方法

 KiCad 5 でプロジェクトのフォルダをまとめて別のパソコンで開くとローカルで作った独自のライブラリが未参照になってしまう。これらを含んだ設計データ一式を公開する方法について。(KiCad7では変わってるかも)

参考:

※独自のシンボルとフットプリントはまとめて作業中のパソコンで管理しているものとします。

・プロジェクトのフォルダ(${KIPRJMOD})以下にSymbolsフォルダとFootprintsフォルダを作成し、それぞれに独自に作成したシンボルとフットプリントをそのローカルフォルダにコピーする。
・ローカルフォルダを参照するよう設定する。設定が済めばプロジェクトのフォルダ内にsym-lib-tableとfp-lib-tableという設定ファイルがそれぞれ新規に作成される。
・Eschemaから独自シンボルをローカルから参照するよう修正。フットプリントの割付から独自フットプリントをローカルから参照するよう修正。
・プロジェクトをまとめて公開。

設定方法は参考に挙げた記事でできる。SymbolsフォルダにEschemaからシンボルをエクスポート、FootprintsフォルダにPcbnewからフットプリントをエクスポートする。

シンボルを公開した例:
https://github.com/houmei/2532-27512
ここでは2532のシンボルを新規作成し、ローカルフォルダSymbolsにコピーしている。
sym-lib-tableの中身はこのようになる。
(sym_lib_table
  (lib (name 2532)(type Legacy)(uri ${KIPRJMOD}/Symbols/2532.lib)(options "")(descr ""))
)

フットプリントを公開した例:
ここではDIN8pinコネクタのフットプリントを新規作成し、ローカルフォルダFootprintsにコピーしている。
fp-lib-tableの中身はこのようになる。
(fp_lib_table
  (lib (name 0000)(type KiCad)(uri ${KIPRJMOD}/Footprints)(options "")(descr ""))
)
どちらもS式ですね。

公開するときのマイルールは以下のとおり。プロジェクト名をAAAとすると:

AAA/
 AAA.pro - KiCadプロジェクト
 AAA.sch - 回路図
 AAA.kicad_pcb - PCB
 AAAVnnLnnGB/ - ガーバーファイル
 img/ - 回路図などの画像イメージ
 README.md - 説明
 Symbols/
 sym-lib-table
 Footprints/
 fp-lib-table















 最初からローカルのSymbols,Footprintsフォルダ以下に作成する方法もあるけど、自作のライブラリは他で使い回すこともあるしどこかで一元管理したい。このへんうまくやる方法はないものか。

Dsubコネクタのエッジマウント取り付け

 ピンが2.54mmピッチで並んでいない部品はユニバーサル基板で取り付けしにくい。Dsubコネクタもそのひとつ。Dsubコネクタは2列で9/15/21/37ピン、3列で15ピンがよく使われる。Dsubコネクタは装置側用としてつかう基板取付タイプと、コネクタのプラグとして使うはんだ付タイプがある。

 基板取付タイプは左右にマウンティングホール用の金具があり、はんだ付けして止めることができる。この金具はケーブルのプラグが抜けないようにネジ止めする箇所になる。


 もともとが基板用なのでコネクタのプラグとして利用しようとすると左右の金具が邪魔になる。しかしこのネジを外すとDsubコネクタの嵌合とシールドを担当する金具が外れてしまう。この金具と樹脂の本体を接着するのは難しいので低頭ネジで固定することになる。

 実際に超低頭ネジで固定したところ、通常のネジではなかなか回せず潰してしまった。低頭タッピングネジに交換してようやく固定できた。
2022-10-07 22.23.55

 基板取付け型の利点は、基板表面オスコネクタの場合は裏面にメスコネクタをはんだ付けすると同等になることである。


 Dsubコネクタのはんだ付け用のものは、基板のフチに挿入してはんだ付けするためのフットプリントライブラリがKiCadに存在する。(Connector_Dsub:DSUB15-Male_EdgeMount_P2.77mmなど)

2022-09-26 20.35.59

 海外の基板発注で一般的な1.6mm厚の基板に取り付けることができる。コネクタによってはきつかったりゆるかったりする。秋月電子扱いのものはゆるめだった。どうしても挿入できない場合は写真のように列の間に(どうなってもいい)曲尺などをはさみ、こじって広げる。
2022-09-26 20.35.59

 この取付方法の場合ははんだ付け部分でのみ固定しているためコネクタがもげる可能性がある。気休めではあるが基板の内側にコネクタを引っ込めることである程度保護できる。
 Dsub9ピンコネクタの場合、基板の外形から内側へ5.715mm、端子の幅を19.05mmにしてぴったりはまった。
PYUUTAJOY2V01L01-pcb

 はんだ付けタイプのDsubコネクタの方が安価なので便利に使える。コネクタの嵌合も基板取付タイプと異なり金具部分が一体化しているので比較してしっかりはまる。ただネジ止めはないのであくまでも簡易な方法。
 基板の内側方向へ引っ込めるための凹みのサイズはコネクタごとに異なり、KiCadで表示される外寸はあまり当てにならない。実測して基板を作り確認するしかない。


KiCadの浮きベタ

 前回、FM11のバスとそのサブセットで作りかけた、FM-11用のメモリをKiCadで製図しプリント基板をALLPCBに製造依頼した。

 デバッグのために4個のSRAMの*CSに対応したLEDを付けている。
2021-06-27 21.49.45

 さて動作確認してみると2番め(U2)のSRAMだけ読み書きでデータが化ける。一部のビットしか読み書きできない。アドレス/データバスは正しくつながっている。ほかのSRAMは正常に読み書きできるのでショートなどしているわけではなさそう。SRAMを交換しても現象はU2の位置についてまわる。基板の問題だがU2の下はビアが多く配線が混んでいる。製造不良だろうか?

 そんな中このつぶやきを見て気付いた。

 CMOSデバイスは電源の配線を忘れていても信号線から回り込んだ電力で動いてしまうことがある。SRAMの電源はみていなかった。テスタで確認するとU2のpin16がGNDに接続されていない。

 メッキ線で基板を修正したらU2もメモリチェックをパスした。
2021-06-29 15.12.35


 さて、次は個別故障なのか設計ミスなのか。

 KiCad (5.1.8)-1 で設計した配線でU2周辺を確認。

スクリーンショット 2021-06-30 032745

 16ピンはベタ経由でGNDにつながっているはずが、そのベタが周囲から浮いている。
スクリーンショット 2021-06-30 032820

 これは浮きベタというやつ。DRCでは警告されなかった。
コートヤードのオーバーラップは無視して製造に出したが、基板セットアップでこの警告が出ないよう消してみても配線に関するDRCエラーは出なかった。
スクリーンショット 2021-06-30 025502

































 これは目視確認漏れによるミスになるなあ。この浮きベタ内にGND属性のビアがあって、それをもってGNDに接続されているとDRCは判断したのかもしれない。あと予防策としてはベタに接続できるよう GND(電源端子)を囲ってしまうような配線を引かないこと、だろうか。

 改版作業中。



KiCad:FusionPCBでのV-CUT指示

 KiCadでFusionPCB向けのV-CUT指示はEco2.Userレイヤー(.gml)で行い、基板全体の外形をEdge.cuts(.gko)で指示する。

 秋月電子のD基板サイズ(47mmx36mm)で二種設計した。これらを個別に発注せず100mm x 100mm以内にまとめて製造依頼するために面付けというのをやってみた。4枚分の面積は秋月電子のB基板サイズ(95x72mm)で、基板を4枚に分割するためのV-CUTを指示するとその部分に溝を掘ってくれる。ここから折ると目的の基板が得られる。
 その指示だがなにか間違えたらしく外形とV-CUT指示がわからないよという通知があったので色々参考にして再提出した。

面付け後の基板はこのようなかんじ。
スクリーンショット 2020-12-04 145328

・面付けした基板の外形をEdge.cutsレイヤーで描き、ガーバー出力後に.gkoにリネームする。
スクリーンショット 2020-12-04 145624

・Eco2.Userレイヤーで外形とV-CUT指示の直線を描く。
スクリーンショット 2020-12-04 145543

 Edge.Cutsレイヤーは文字が描けないらしい。ECO2.Userは描けるけど今回は直線と曲線で描画してみた。これで再提出後OKとなり製造工程にはいった。

 2種面付けで注文した基板はこのようなかんじ。
2020-12-04 15.48.06

 PCBGoGoだとECO2.Userに外形とV-CUT指示をまとめてしまっても問題なかったのでこの辺を間違ったのかもしれない。なおPCBGoGoはガーバーのリネームも不要でそのままzipでまとめて提出可能。以下はPCBGoGoに出した外形とV-CUT指示を入れたECO2.Userの例。
スクリーンショット 2020-12-04 161348



記事検索
プロフィール

hardyboy

カテゴリ別アーカイブ
月別アーカイブ
QRコード
QRコード
  • ライブドアブログ