【KiCAD】基板の内層のデータをSTEPやSTLでFreeCADにもってくる【FreeCAD】

電磁界シミュレーションのモデルを作るために

電磁界シミュレーションをしたいとかで、プリント基板をモデル化したい時などがあります。そういう時に。。KiCAD(回路作成から基板つくるCAD) からFreeCAD(3Dの図面CAD)へもってきて、FreeCADで寸法を見たり、変更したりしてから、電磁界シミュレータに持ってくるってことをします。

基本的には、この記事の続きですね。

【OpenEMS】KiCAD→FreeCAD→Octave→OpenEMS→Paraviewで基板からシミュレーション【電磁界シミュレーション】

↑これでは、KiCADStepUpで取り込むのがいいかな?という結論でした。 1年ほど前の記事で、KiCADもVer.6⇒8に FreeCADも0.21.2にバージョン上がっていることと、上記では、TopとBottom層の2層だけしか持ってこれなかったので、内層をデータ化するためのことをメモしておきます。

KiCADで3D表現 と STPファイル化

KiCADで3D表現して見た目だけを持ってくるのは、とっても簡単になってます。

見るだけなら、 PCBエディターで、プリント基板を見ている状態で、 表示⇒3Dビューアーでみれます。

こんな感じ。

※この時、部品まで3Dにしようとすると、3D部品のライブラリーの紐づけが必要です。

3D部品のライブラリー紐づけ

いつも紐づけ方を忘れるのでメモです。PCBエディタで、①フットプリントの編集 ②フットプリントのプロパティ ③3Dモデルのタグ ④パス設定 と深いところにあるので。。この紐づけをしておかないと、部品の3Dモデルまで表示されません。 最初からライブラリーを作る時にやっておきましょう。

ちなみに、KiCADのHELPでは、このあたりです。

STEPファイルへのエキスポート

ファイル→エキスポート→STEP で エキスポートできます。

この時の設定で

✅似た名前のモデルを置換します

✅STEPファイルを最適化

✅配線とパッドとビアをエクスポート

ビア(回路の層間の配線)をエクスポートするなら、必須です。

そうすると、FreeCADで読み込むと、ビアまでちゃんと3Dモデル化されています。

STEPファイルのデータはかなり分割して入っているので、それぞれで位置変えたりできます。上は、PCBのガラエポ部分を、非表示にしているので、ビアが見える状態になっています。

基板の厚さは指定できて、ファイル→基板の設定 から

金属面の厚さなどは、この基板の設定で、入力した通りになっているようです。

綺麗に測れていませんが、銅の厚みは、35μm で基板全体のスタック厚は、1.6mmみたいです。

で。。残念なのが。。内部の層が入ってないことです。設定ファイルなどをいじっても、どうやっても入らないみたいです。

もともとは、この機能は、3Dファイルを機械系CADに持って行ってケースを作るとかに便利なように作られているためのようですね。

内部の層の出力とFreeCADデータ化

なかなかこれが、テクニックいるので(笑) 忘れないようにメモです。

FreeCADでは、DXFやSVGファイルも読み込めます。KiCADでは、ガーバーファイルの出力ができます。この機能を使って、内層の金属面をデータ化します。

製造用出力→ガーバー を選びます。

ガーバーしか出ないと思うじゃないですか。。ところが、ファイル出力を選ぶとDXFやSVGなどが選べます。

含めるレイヤーを選んでおいて、単位は㎜にしておく方がいいです。

これでできたDXFファイルをFreeCADで読み込むと

こんな感じで線画のように取り込めます。

で。。

先ほど作ったSTEPファイルと一緒に読み込むと、どうも一番下層の場所に入ってしまうので、少し上に持ってくると。。このように、内層のように表示できます。

 

KiCAD Step upというWorkBenchを使えると、もっと楽にできそうなんですが。。どうも Step Upで読み込んだファイルとDXFのファイル類はスケールが変わっていそうなんで。。うまく行きません。

https://github.com/easyw/kicadStepUpMod

シルクプリントを読み込むツールで読み込むと、下記のように一つのパーツになるので便利なんですが。。銅の部分とそれ以外にも分類されているようですし。。

 

FreeCAD OpenEMS ExportについているKiCAD import

https://github.com/LubomirJagos/FreeCAD-OpenEMS-Export

これ、そのままでは動かないのですが。。

Githubからダウンロードして、Macroをインストールします。

それで、ExportOpenEMSDialog.pyを実行します。

そうすると。。KiCAD PCB import Toolというボタンが出てくるので それを押す

Select Fileで、KiCADの.pcbファイルを指定して、IMPORT KiCAD PCBを押すと。。

結構時間かかりますが。。こんな感じで、全レイヤーと、ビアも全部モデル化してKiCADのファイルが、FreeCADに読み込めました。

あとは、これをSTLなり電磁界解析用のソフトに読み込ませるってことですね。

OpenEMSだと、こんなに複雑なのは、読み込めないような気がする(笑)


ほぼ確かめたいことやってる人がいた。。

toammann/Multilayer_SMA2Microstrip: Development of an SMA coaxial to microstrip transition using open source software (openEMS) (github.com)

toammann/OpenEMS_MultiTermDebyeExperiments (github.com)

他にもこういうツールがありました。

https://github.com/tvelliott/jPCBSim

 

投稿者 tom2rd

コメントを残していただけるとありがたいです

Loading Facebook Comments ...

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください