【電磁界シミュレータ】STLファイルをNEC2形式に変換してモーメント法シミュレーション Scattering【nec2c】

アンテナ形状とかのモデリングメンドクサイ

線状アンテナは、4NEC2で作るのがいいんですが、散乱(Scattering)など、物体をモデリングするのって、かなりメンドクサイので、FreeCADあたりを使って出来たらなぁ~って思っていたら。。 そういうスクリプトを発見したので、紹介します。

STL2NEC

ここを参考にしました。

https://www.aeronetworks.ca/2017/09/scattering-rcs-calculation-with-nec2.html

https://www.aeronetworks.ca/2017/07/olde-skool-antenna-design-with-nec2-on.html

https://www.aeronetworks.ca/search/label/UAV

当初、Google colabで動かしたらいいな。。って思っていたんですが。。うごかな~い(笑)ので。。

ローカルのUbuntuで実行したらできました。 シェルスクリプト自体は、Githubに入れてあります。

使い方

FreeCADMeshlabが要ります。4NEC2でも動きますが。。Max-nr Patchesを5000くらいまで大きくしないと動きません。

sudo apt install nec2c xnecview xnec2c

などで、Ubuntuにインストールして使いました。

xnec2cについてはこちら

https://www.qsl.net/5b4az/pkg/nec2/xnec2c/doc/xnec2c.html

xnecviewについてはこちら を参考に

https://www.pa3fwm.nl/software/xnecview/

モデルファイルは、こんなファイルを、ダウンロードしてきて、それを。。FreeCADでSTL(アスキーファイル形式)にしてエキスポートします。 ちなみに、ここから、3DMAX形式でダウンロードしてSTLに落としました。

次に、Meshlabで、計算できるくらいに粗くリメッシュします。

Filterの設定は、これです。

  • Select ‘Filters’ click ‘Remeshing, Simplification and Reconstruction’.
  • Select ‘Quadratic Edge Collapse Decimation’.
  • Set ‘Target number of faces’ = 10000 and click ‘Apply’.

エキスポートは、メッシュをアスキー形式のSTLで行います。

Select ‘File’, ‘Export Mesh’ file name drone.stl and deselect ‘Binary Encoding’, then click ‘OK’.

ファイルは、Ubuntuからマウントされているところに置きます。(たとえば、C:\4nec2\modelsの下など

Windows10からUbuntuを開いて、コピーしてくるか、そこの場所で

bash ./stl2nec.sh drone.stl drone.nec

などと打ち込みます。結構時間かかります(笑)

で。。ちゃんと NECファイルできます。

xnec2cで動かすのがいいみたい。

これだと、xnec2c -j 8 drone.nec  などとすると、8コアで並列で動いてくれました。

参考に、NECファイルSTLファイルを、Githubおいておきます。

計算の際は、NECファイルの最後の方の、

GS 0 0 .001
GE
FR 0 1 0 0 300
EX 1 1 1 0 0
RP 0 90 90 0 0 0 4 4 0 0 0

は適当にいじってみてください。

スキャッタリングの計算結果

少し斜めから3GHzの平面波を当ててみました。遠方ではわりと丸く散乱するんですね。

3DViewでみたところ

ちなみに、これは4NEC2です。 Windows機で1コアで40分くらいで計算できました。xnec2cでも試してみようと。。

参考

https://www.radartutorial.eu/index.en.html

NEC2++ によるホーン・アンテナのシミュレーション

OpenSCAD による NEC2 モデル生成

投稿者 tom2rd

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

Loading Facebook Comments ...

コメントを残す

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

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