LTspiceを使ってみよう - バッチファイルで複数のシミュレーションを自動実行してみよう!

LTspiceを実務で使っていると、シミュレーション時間が異常に長くなったりすることがありませんか?

そのような時は、「夜中に異なる回路のシミュレーション自動で実行できると楽だな~」と思いますよね?

 

今回その様な悩みを解消する方法として、コマンド・プロンプトを使用して複数の回路シミュレーションを自動的に実行する方法をご紹介します。

 

実行前の注意点

LTspice_バッチファイルで複数のシミュレーションを自動実行_コントロールパネル_Automatically delete .raw files
図1:コントロールパネルのAutomatically delete .raw files[*]

シミュレーション実行後、データを残しておくとハードディスク容量を圧迫するためシミュレーション終了後、自動的に結果のファイルを消去する設定にしている場合が多いと思います。その設定のまま、コマンド・プロンプトを使用したシミュレーションを実行すると、シミュレーション結果が全て消えてしまいます。

 

そのため、今回説明する方法でシミュレーションを実行する場合は、シミュレーション結果を残しておくため、コントロールパネルの「Automatically delete .raw files[*]」のチェックを外しておきます。

1. コマンド・プロンプトを使用する

バッチ・ファイルを作成して複数回路のシミュレーションを実行する前に、一度コマンド・プロンプトでLTspiceのシミュレーションを実行できるか、念のため確認してみましょう。

 

コマンド・プロンプトを開いて、cd C:\Program Files\LTC\LTspiceXVIIにより、LTSPICEのexeファイルが置いてあるディレクトリ 「\Program Files\LTC\LTspiceXVII」 に移行します。

LTspice_バッチファイルで複数のシミュレーションを自動実行_実行ファイルのあるディレクトリーに変更
図2:LTspiceの実行ファイルのあるディレクトリーに変更

2. ネットリストの生成

回路ファイル(.asc)から、ネットリストを生成します。 コマンドプロンプト上で、XVIIx64.exe -netlist "ファイルディレクトリー" を実行することで、ネットリストが生成されます (図3)。ファイルディレクトリーは、実行する回路ファイルがあるフォルダーを指定します。

 

今回は、LTspiceで用意してあるLT1117と言うLDO製品のJIGファイルを使用してみます。

 

コマンドプロンプト上で、C:\Users\ユーザーネーム\Documents\LTspiceXVII\examples\jigs\1117.asc を指定して実行します。すると、回路図ファイルの入っている同一フォルダーにネットリストが生成されます(図4)。

 

 JIGフォルダーに用意してあるファイルの使用方法に関しては、「簡単!5ステップで回路図を書く方法」の記事を参考にしてください。

LTspice_バッチファイルで複数のシミュレーションを自動実行_ネットリストの生成
図3:ネットリストの生成

回路ファイルが格納されているフォルダーに、1117.net と言うネットリストが生成されることを確認してください(図4)。

LTspice_バッチファイルで複数のシミュレーションを自動実行_ネットリストの確認
図4:ネットリストの確認

3. シミュレーションの実行

次に、ネットリスト(.net)を使用して、シミュレーションを実行してみます。

 

コマンド・プロンプト上で、 XVIIx64.exe -b C:\Users\ユーザー名\Documents\LTspiceXVII\examples\jigs\1117.net を実行することで、シミュレーション結果(波形ファイル)1117.rawが生成されます。

LTspice_バッチファイルで複数のシミュレーションを自動実行_シミュレーションの実行
図5:シミュレーションの実行

次のように、1117.rawと言う波形データが出力されます。

LTspice_バッチファイルで複数のシミュレーションを自動実行_シミュレーション結果(波形データファイル)
図6:シミュレーション結果(波形データファイル)

4. シミュレーション結果(波形)の確認

1117.raw ファイルをダブルクリックしてLTspiceで開きます。

次に、ツールバーからView Visible Tracesを選択して、Select Visible Waveformsのメニューを開きます。

LTspice_バッチファイルで複数のシミュレーションを自動実行_シミュレーション結果の表示方法
図7:シミュレーション結果の表示方法

このウィンドウで、見たい波形のノードを選択します。図10は、今回実行したシミュレーションの回路図です。出力波形を確認したいのでOUTのノードが何番か確認します。。JIG回路ファイルで確認したところ、V(n002)が相当します。

事前に、OUTピンのノードが何番か確認しておかないと分からないので注意が必要です。

 

波形を確認したいノードを分かり易くするためには、シミュレーションを実行する前に、ノードにラベルを付けておくと便利です。

 

(参考)LTspiceを使ってみよう -「Label Net」でスッキリ回路図

LTspice_バッチファイルで複数のシミュレーションを自動実行_LT1117の回路図
図8:LT1117の回路図

図9の選択一覧から、OUTのノードに該当するV(n002)と負荷電流(I1)を選択します。

 

LTspice_バッチファイルで複数のシミュレーションを自動実行_波形の選択
図9:波形の選択

波形結果は、次のようになります(図10)。I(I1)は、負荷の電流変化の波形、V(n002)は、OUTの波形になります。

負荷電流 I1 の変動により、出力電圧VOUTが変動することが確認できます。

LTspice_バッチファイルで複数のシミュレーションを自動実行_シミュレーション結果
図10:シミュレーション結果

バッチ処理

1~5の処理が、コマンド・プロンプト上でコマンドを使ってマニュアルでシミュレーションを実施する方法です。 

このコマンド処理をテキストで作成して、batファイルにすることで自動的に複数のシミュレーションを連続して実行することが可能です。

複数の時間がかかるシミュレーションを、寝ている間に処理する際に有効です。

 

参考として、LT1117とLT1118のJIGファイルをバッチ処理するサンプルファイルを作りました。

下記サンプルファイルをダウンロードして検証してみてください。

 

ダウンロードしたZIPファイル内に、LTspice.txt と言うテキストファイルが入っています。

テキスト内の、ディレクトリーについて「ユーザーネーム」の部分を、お使いのPC内のフォルダー名に変更してください。

実行する場合は、拡張子txtをbatに変更して実行してください。

 

※ 長時間シミュレーションを行う場合は、PCがスリープするとシミュレーションが止まるので注意してください。

 

 

最後に

まだLTspiceを使ったことがない方は、下記のリンクよりLTspiceをダウンロードしてみてください!

ぜひ、一度お試しください。

LTspiceのダウンロードはこちら

おすすめ記事/資料はこちら

記事一覧:LTspiceを使ってみようシリーズ

前回記事:LTspiceを使ってみよう - 可変抵抗を作ってみよう 

おすすめセミナー/ワークショップはこちら

LTspice & 電源設計セミナー 導入編 <無料>