KiCadでPCBを作成し、Fusion360で設計した筐体と組み合わせることはよくあるかと思います。
その際、PCBの3DモデルをFusion360に読み込ませることができれば、部品と筐体との干渉などを確認できて便利です。
しかし、KiCadのPCBエディター(旧Pcbnew)からSTEPファイルやVRMLファイルを書き出してFusion360に読み込ませても、多くの場合は理想とかけ離れた見た目になります。
KiCadからSTEPファイルを書き出してFusion360にインポート
KiCadからVRMLファイルを書き出して、BlenderでFBXに変換してからFusion360にインポート
このような状況を解決し、下記のようにキレイにPCBの3Dモデルをインポートさせる方法を紹介します。
TL;DR
- KiCadから直接書き出すより、FreeCADのアドオン
KiCad StepUp
経由で書き出した方がキレイ - KiCad StepUpの導入方法が昔と変わっており、今はGitHubリポジトリから手動でダウンロードしなくてよい
- StepUpは
.kicad_pcb
ファイルを直接読み込んでくれるが、シルクだけは別途KiCadから書き出す必要あり - PCBによっては読み込み時に激重になるので注意
バージョン
KiCad 6.0.1
FreeCAD 0.19
KiCad StepUp 2022/07/18時点の最新
Fusion 360 2.0.13615 個人用ライセンス
FreeCADとKiCad StepUpの導入
まずは公式サイトからFreeCADをインストールします。
choco install freecad
winget install freecad
brew install --cask freecad
もいけるっぽいです。
FreeCADを起動します。
ツール > アドオンマネージャー
からアドオンマネージャーを開きます。
kicadStepUpMod
を選択し、選択をインストール/更新する
を押してStepUpをインストールします。
再起動するよう言われるので再起動します。
初期設定
StepUpを有効化するために、KiCadStepUp
ワークベンチに切り替えます。
編集 > 設定
から、StepUpを使うのに必要な各種設定を行います。
デフォルトのワークスペース
必須ではありませんが、ほかの用途でFreeCADを使うことがないならば、
標準 > 標準 > 起動 > 起動後に自動ロードされるモジュール
から、起動後に直接KiCadStepUpワークベンチがロードされるようにした方が便利かと思います。
3Dモデルのディレクトリ
KiCadの各種フットプリントの3Dモデルが格納されているフォルダを指定します。
KiCadを起動してフットプリント ライブラリーを開き、下記の変数に対応するパスをメモします。
${KICAD6_3DMODEL_DIR}
${KICAD6_3RD_PARTY}
FreeCADの設定に戻り、kicadStepUpGui > General > 3D Prefix working folder
の中の
main 3D folder location
に ${KICAD6_3DMODEL_DIR}
の値を、
secondary 3D folder loc
に ${KICAD6_3RD_PARTY}
の値を入力します。
DXFの読み込み設定
インポート/エクスポート > DXF
を開き、下記のように設定します。
-
従来型の Python インポーターを使用
をオンに -
インポート・オプション > 作成
をパート形状を単純化
に -
インポート・オプション > ジオメトリーを結合
をオンに
仮に設定し忘れても、シルクのインポート時にエラーが出るので大丈夫です。
KiCad側の下準備
ここから先はPCBを変更するたびに行う作業です。
いざ、FreeCADに読み込み…と行きたいところですが、いったんKiCad側で下準備をします。
PCBエディターを開き、ファイル > プロット
からシルクスクリーンのDXFファイルを出力します。
KiCadのバージョンが公式のガイドと異なっており画面が少し違いましたが、下記の設定でいけました。
エクスポート単位を mm
にするのが重要です。
製造ファイル出力
を押してKiCad側の作業は完了です。
FreeCADにPCBを読み込み
一番の山場です。
外形とフットプリント
FreeCAD内にある下記画像のようなアイコンを押して、外形とフットプリントを読み込みます。
.kicad_pcb
ファイルを指定すると読み込みが開始されます。
基板によっては読み込みに時間がかかる場合があるようです。
私の場合は11分ほどかかりました。時間がかかる場合は下記のようなダイアログが出ます。
(追記: 基板外形のデータを修正したところ、1分以内で完了するようになりました。)
メモリもドカ食いされました。
PCBの外形と各種フットプリントの3DモデルがFreeCAD上に表示されたら成功です。
配線
FreeCAD内にある下記画像のようなアイコンを押して、配線を読み込みます。
.kicad_pcb
ファイルを指定すると読み込みが開始されます。
配線がFreeCAD上の基板に表示されたら成功です。
シルクスクリーン
FreeCAD内にある下記画像のようなアイコンを押して、シルクスクリーンを読み込みます。
ここで指定するのは .kicad_pcb
ファイルではなく、先の工程で出力されたDXFファイルです。
2つのDXFファイルのそれぞれについてこれを行います。
シルクスクリーンが基板の裏表に表示されていれば成功です。
(そもそもKiCad上でシルクを付加していない場合は、表示されていなくても正常です。)
書き出し
画面左側のコンボビューから、一番上層にある階段マークを選択した後に、
ファイル > エクスポート
を選択します。
STEP形式で書き出してFusion 360に読み込ませると、冒頭の結果が得られます。