LTspiceでオペアンプのSPICEモデルを追加する方法

※当サイトでは、アフィリエイト広告を利用しています。

オペアンプのSPICEモデルのイメージ図
  • LTspiceで、あらかじめ用意されたSPICEモデルのリストの中に、

    使いたいオペアンプのSPICEモデルがない。
  • 自分で入手したオペアンプのSPICEモデルを

    LTspiceに追加する方法を知りたい。
  • オペアンプのSPICEモデルを追加したけど、

    シミュレーションに時間がかかるので短縮する方法を知りたい、

    あるいはエラーが発生するので、対策方法を知りたい。

このように電子回路シミュレータLTspiceで

オペアンプのSPICEモデル(部品モデル)を用意するときに困ったことはありませんか?

LTspiceでオペアンプのSPICEモデルを追加する方法を知りたい方向けに、

オペアンプモデルの追加方法を解説します。

また、4回路入りのオペアンプでシミュレーションする方法、

シミュレーション時間を短縮する方法、エラー対策、

オペアンプのSPICEモデルを追加するメリットについても解説します。

目次

※ 初心者向けのLTspice通信講座(返金保証あり)

LTspiceの初心者向け通信講座です。

通信講座を利用すると、LTspice習得の近道になりますね。

英語ですが、LTspiceのシミュレーション動画を見れるので、けっこう理解できます。

30日間の返金保証があるので、ノーリスクで始められます。

まずは、右クリックの「日本語に翻訳」を活用してカリキュラムを確認してみましょう。

» 初心者向けのLTspiceチュートリアル(Udemy)はこちら

※この講座ではLTspiceのソースファイルをダウンロードできます。

簡単にできるLTspiceでオペアンプのSPICEモデルを追加する方法

LTspiceであらかじめ用意されたSPICEモデル(部品モデル)のリストの中に

使いたいオペアンプがない場合、自分でオペアンプのSPICEモデルを入手し、

LTspiceに追加する必要があります。

新たな部品(SPICEモデル)を追加する作業は、

時間と手間がかかるイメージがあるかもしれませんが、非常に簡単です。

さっそく説明したいと思います。

オペアンプのSPICEモデルと名前を一致させるだけ

自分の使いたいオペアンプのSPICEモデルを

LTspiceに追加してシミュレーションするために必要な作業は、

簡単にいうと、「回路図のオペアンプの名前」と「SPICEモデルの名前」を一致させるだけです。

具体例を見ていきましょう。

Texas InstrumentsのオペアンプLF356を追加する

まずはLF356のSPICEモデルを入手する

Texas Instruments社のウェブサイトからSPICEモデルを入手します。

>> Texas Instruments社のウェブサイトはこちら

下にスクロールしていくと、

「設計ツールとシミュレーション」のところに

「LF356 PSPICE Model」

があるので、『ダウンロード』をクリックします。

PSPICE Modelと記載されていますが、LTspiceでも使えますのでダウンロードしてください。

オペアンプLF356のSPICEモデルを回路図に追加する

オペアンプLF356のSPICEモデルのシミュレーション

オペアンプ「LF356」のSPICEモデルを追加した非反転増幅回路のシミュレーションです。

V(in)の信号(青線)は回路図の「IN」の波形で、

V(out)の信号(赤線)は回路図の「OUT」の波形です。

入力信号V(in)の1Vに対して

出力信号V(out)が2Vになっていることがわかります。

SPICEモデルの追加手順は以下の通りです。

1. メニューバーのEdit → Component を選択すると、Select Component Symbolが表示される。

2. [Opamps]をクリックして、「opamp2」を選択し、回路図のU1に配置する。

3. メニューバーのEdit → Spice Directive を選択し、
ダウンロードしたSPICEモデル(.MODファイル)の情報を全て入力する。

オペアンプLF356のSPICEモデルの入力方法

4. U1のopamp2
(回路図のopamp2あるいはLF356/NSと記載されている箇所)の上で右クリックを押し、
「opamp2」を「LF356/NS」に変更する

オペアンプLF356のSPICEモデルの名前変更方法

このように「回路図上のオペアンプの名前(opamp2)」を

「SPICEモデルの名前(.SUBCKTの直後にある『LF356/NS』)」と一致させれば、

シミュレーションできるようになります。

もう1つ具体例をみてみましょう。

Texas InstrumentsのオペアンプOPA134を追加する

OPA134のSPICEモデルを入手する

Texas Instruments社のウェブサイトからSPICEモデルを入手します。

>> Texas Instruments社のウェブサイトはこちら

下にスクロールしていくと、

「設計ツールとシミュレーション」のところに

「OPA134 PSpice Model (Rev. D)」

があるので、『ダウンロード』をクリックします。

PSPICE Modelと記載されていますが、LTspiceでも使えますのでダウンロードしてください。

オペアンプOPA134のSPICEモデルを回路図に追加する

オペアンプOPA134のSPICEモデルのシミュレーション

オペアンプ「OPA134」のSPICEモデルを追加した非反転増幅回路のシミュレーションです。

入力信号V(in)の1Vに対して

出力信号V(out)が2Vになっていることがわかります。

追加手順は「LF356」と同じなので割愛しますが、「LF356」から「OPA134」に変更する手順で説明します。

1. 回路図上で、LF356のSPICEモデルの情報が記載されている箇所で右クリックすると、
「Edit Text on the Schematic」ウィンドウが表示される

オペアンプOPA134のSPICEモデルの入力方法

2. U1のLF356/NSと記載されている箇所の上で右クリックを押し、
「LF356/NS」を「OPA134」に変更する。

オペアンプOPA134のSPICEモデルの名前変更方法

OPA134も「回路図上のオペアンプの名前(opamp2)」を

「SPICEモデルの名前(.SUBCKTの直後にある『OPA134』)」と一致させれば、

シミュレーションできることがわかります。

LTspiceで4回路入りオペアンプをシミュレーションする方法

「LF356」と「OPA134」は1回路入りのオペアンプでした。

2回路以上のオペアンプでシミュレーションしたいときは、

同じようにすればシミュレーションできるでしょうか?

結論から言うとできません。

オペアンプのSPICEモデルを修正する必要があります。

具体的に、新日本無線製の4回路入りオペアンプ「NJU7044」でシミュレーションしてみます。

4回路入りオペアンプNJU7044のSPICEモデルを入手する

新日本無線社のウェブサイトからSPICEモデルを入手します。

>> 新日本無線社のウェブサイトはこちら

下にスクロールして、

「設計ツール」の『NJU7044 マクロモデル』をクリックし、ダウンロードします。

NJU7044のSPICEモデルを回路図に追加し、シミュレーションする

オペアンプNJU7044のSPICEモデルを追加した回路図

先程の非反転増幅回路で、オペアンプのモデルを「NJU7044」にした回路図です。

新しくSPICEモデルの追加する手順は、これまでと同じなので割愛します。

これまでと同様、

「回路図上のオペアンプの名前(opamp2)」を

「SPICEモデルの名前(.Subcktの直後にある『NJU7044』)」と一致させて、

シミュレーションしてみます。

すると、4回路入りのオペアンプ「NJU7044」ではエラーが発生します。

オペアンプNJU7044のSPICEモデルのエラー表示

「ポート(ピン)数が一致していません」と表示されていることから、

「回路図の部品(シンボル)opamp2」と「SPICEモデル(NJU7044)」の

端子数が一致してないことが原因であることがわかります。

回路図の部品(シンボル)opamp2の端子数は「5」ですが、NJU7044の端子数は「14」です。

それでは、NJU7044でシミュレーションするにはどうすれば良いでしょうか?

LTspiceで4回路入りオペアンプをシミュレーションする方法

4回路入りオペアンプをLTspiceでシミュレーションするためには、

SPICEモデルを修正して1回路入りのオペアンプにすれば良いのです。

SPICEモデルの修正手順は以下の通りです。

1. 回路図上で、NJU7044のSPICEモデルの情報が記載されている箇所で右クリックすると、
「Edit Text on the Schematic」ウィンドウが表示される。

2. SPICEモデルの以下の記述を削除する。

.Subckt NJU7044 OUT1 -IN1 +IN1 V+ +IN2 -IN2 OUT2
+ OUT3 -IN3 +IN3 V- +IN4 -IN4 OUT4
X_U1 +IN1 -IN1 V+ V- OUT1 NJU7044_s
X_U2 +IN2 -IN2 V+ V- OUT2 NJU7044_s
X_U3 +IN3 -IN3 V+ V- OUT3 NJU7044_s
X_U4 +IN4 -IN4 V+ V- OUT4 NJU7044_s
.ends NJU7044

3. 次にサブサーキット名を変更する。
.subckt NJU7044_s 1 2 3 4 5 → .subckt NJU7044 1 2 3 4 5
.ends NJU7044_s → .ends NJU7044

このように変更した後、シミュレーションを実行してみます。

オペアンプNJU7044のSPICEモデルのシミュレーション

実際にシミュレーションできました。

このように2回路以上のオペアンプで端子数が一致してない場合は、

SPICEモデルを修正する必要があることがわかります。

SPICEモデルのピン配置(端子配列)を確認する

SPICEモデルを修正してもシミュレーションがうまくできないときは、

「オペアンプの部品(シンボル)opamp2」と

「新日本無線からダウンロードしたSPICEモデル」のピン配置が一致してない可能性があります。

ピン配置の確認手順は以下の通りです。

1. 回路図上のオペアンプの上でCtrl+右クリックを押し、
Component Arribute Editorの上側にあるOpen Symbolを左クリックすると、
「opamp2.asy」ウィンドウが表示される。

オペアンプNJU7044のシンボル

2. 青枠で示された端子が5つあるので、各端子を右クリックし、
Pin/Port Properties の Label と Netlist Order を確認する。

オペアンプNJU7044のピン配置

3. 上図では、左下の端子を右クリックしたときのPin/Port Propertiesを表示しており、

Label :In+ Netlist Order: 1

であることが確認できる。
同様に残りの4端子を右クリックして確認すると、

Label :In- Netlist Order: 2
Label :V+ Netlist Order: 3
Label :V- Netlist Order: 4
Label :OUT Netlist Order: 5

であることが確認できる。

4. 新日本無線のウェブサイトからダウンロードしたSPICEモデル
「nju7044_v2.lib」のピン配置を確認する。

オペアンプNJU7044のSPICEモデルのピン配置

non-inverting input (In+):1
inverting input (In-):2
positive power supply (V+):3
negative power supply (V-):4
output (OUT):5

「opamp2」と「NJU7044のSPICEモデル」のピン配置は一致していることが確認できました。

なので、先程は問題なくシミュレーションができたのです。

もし、ピン配置が一致してない場合は、SPICEモデルの番号を修正し、

オペアンプ部品(シンボル)のNetlist Orderに合わせるようにしてください。

シミュレーションに時間がかかる(収束しにくい)場合の対処方法とエラー対策

Gminを小さくする

オペアンプSPICEモデルを追加して、実際にシミュレーションしてみると、

計算時間が非常に長いことがあります。

あるいは、『Time step too small』というエラーが発生することもあります。

これらを改善する手段は、シミュレーションの精度を下げることです。

メニューバーの

Tools → Control Panel → SPICEタブ

Gmin1e-010に変更する。

シミュレーションの精度を下げる方法

これでシミュレーション時間を短縮することができます。

まだシミュレーションの計算時間が長い場合は、Gminの値をより小さくすると改善されると思います。

エラーも回避できる可能性がありますので、ぜひトライしてみてください。

また、以下の方法でも、同じようにシミュレーション精度を下げることができます。

メニューバーの

Edit → Spice Directive

を選択し「.options Gmin=1e-10」を入力する。

シミュレーションの精度を下げる別の方法

好みの方を利用してください。

『Unknown subcircuit called in』エラーの対策方法

オペアンプの部品(シンボル)opampを使用したときに表示されるエラーです。

理想オペアンプを使用したときのエラー表示

opampは、メニューバーの

Edit → Component → [Opamps] → opamp

で選択できます。

opampは回路図上の部品(シンボル)であり、

別途、オペアンプの動作を記述したSPICEモデルが必要となります。

しかしながら、LTspiceには、

このシンボルに適合した理想オペアンプのSPICEモデルが標準で用意されているので、

それを以下の手順で追加すれば、エラーは発生しなくなります。

メニューバーのEdit → Spice Directive を選択し、「.include opamp.sub」を入力する。

理想オペアンプのSPICEモデル

opampを使うときは、上記のコマンドを入力してください。

『singular matrix』エラーの対策方法

回路図上で電気的に浮いている箇所(ノード)があると、

singular matrix』というエラーが発生することがあります。

絶対的な解決方法はではありませんが、以下の方法で改善できたことがあります。

  • オペアンプを別のSPICEモデルに変更する
  • 浮いている箇所(ノード)に.ICコマンドで初期電圧を設定する

この方法でも改善されない場合は、トランジェント解析の設定を変えると改善することもあります。

メニューバーの

Simulate → Edit Simulation Cmd → 「Skip_initial_operating_point_solution」

をチェックする。

シミュレーション実行開始時の動作改善方法

これで、シミュレーション実行開始時に収束の悪いところをスキップして先に進めることができます。

ぜひ参考にしてみてください。

SPICEモデルを追加できるとオペアンプの選定に役立つ

より現実に近いシミュレーションができるようになると以下のメリットがあります。

  • 試作回数が減る
  • オペアンプの選定に役立つ

「ユニバーサルオペアンプ」と「オペアンプのSPICEモデル」を比較してみていきます。

ボルテージフォロワ構成で比較する

ユニバーサルオペアンプでシミュレーションする

ユニバーサルオペアンプを使用したボルテージフォロワ回路のシミュレーション

オペアンプの「UniversalOpamp2」を使用し、ボルテージフォロワ構成で、DC解析したシミュレーションです。

UniversalOpamp2は、メニューバーの

Edit → Component → [Opamps] → UniversalOpamp2

で選択できます。

電圧源Vinの信号を-15V~+15Vまで1V間隔でスイープしています。
(グラフの横軸)

V(out)の信号は回路図の「OUT」の電圧波形で、電圧源Vinに比例して変化しているのがわかります。
(グラフの縦軸)

ボルテージフォロワはゲイン(増幅率)1倍で、よくインピーダンス変換を目的として使用されます。

1倍なので、入力した電圧が、そのまま出力電圧V(out)に出てきており、

オペアンプの電源電圧±15Vの範囲で動作していることがわかります。

Texas InstrumentsのオペアンプLF356でシミュレーションする

オペアンプLF356のSPICEモデルを使用したボルテージフォロワ回路のシミュレーション

オペアンプのSPICEモデルに「LF356」を使用し、

ボルテージフォロワ構成で、DC解析したシミュレーションです。

UniversalOpamp2と同じく、電源電圧±15Vの範囲で動作していることがわかります。

しかし、入力電圧(横軸)が±15V付近では、出力電圧V(out)は±13V程度となっています。

実際のオペアンプLF356には出力範囲に制限があるためで、動作に異常があるわけではありません。

オペアンプLF356のデータシート

LF356 JFET 入力オペアンプ のデータシートより抜粋

データシートをみると、出力範囲はtyp. ±13Vとなっているので、

LF356の特性がシミュレーションに反映されていることがわかります。

このようにSPICEモデルでシミュレーションすると、実際の動作を事前に確認することができ、

±15Vまで出力できると思っていたけど、実際に回路を作成し動作させたら

±13Vまでしか出力しなかった・・・

という事態を防ぐことができます。

つまり試作回数を減らすことができるのです。

積分回路→非反転増幅回路→直流電圧出力 で比較する

1kHzのPWM信号を積分回路に入れて、直流電圧を出力する回路で比較してみます。

ユニバーサルオペアンプでシミュレーションする

ユニバーサルオペアンプを使用した電圧出力回路のシミュレーション

オペアンプの「UniversalOpamp2」を使用し、トランジェント解析したシミュレーションです。

電圧源Vinから

Duty 50%、60%、70%、80%、90%、100%

のPWM信号を出力しています。

V(out)の信号は回路図の「OUT」の電圧波形で、電圧が立ち上がるまで5ms程度の時間がかかっています。

また、電圧源VinのDutyに比例して

7.5V、9.0V、10.5V、12.0V、13.5V、15.0V

と変化しているのがわかります。

Texas InstrumentsのオペアンプLF356でシミュレーションする

オペアンプLF356のSPICEモデルを使用した電圧出力回路のシミュレーション

オペアンプのSPICEモデルに「LF356」を使用し、トランジェント解析したシミュレーションです。

この場合、やはり13.0V以上を出力できないことがわかります。

では直流電圧を15.0Vまで出力できるようにするにはどうすればよいでしょうか?

電源電圧を大きくするという方法も考えられますが、オペアンプを変更するという方法もあります。

Analog DevicesのオペアンプOP184でシミュレーションする

電源電圧15.0Vまで直流電圧を出力できるようにするには、レールtoレールのオペアンプを選びます。

またプラスの電圧しか出力しないのであれば、単電源で動作するオペアンプでよいので、

Analog Devicesの「OP184」でシミュレーションしてみます。

オペアンプOP184のSPICEモデルを使用した電圧出力回路のシミュレーション

オペアンプのSPICEモデルに「OP184」を使用し、トランジェント解析したシミュレーションです。

OP184であれば、15.0V付近まで出力できていることがわかります。

このようにSPICEモデルを追加できるようになると、

実際の動作に近いシミュレーションができるため、オペアンプの選定にも役立てることができます。

まとめ

今回はオペアンプのSPICEモデルの追加方法について解説しました。

オペアンプのSPICEモデルを追加できるようになれば、試作回数を減らせることが期待でき、

オペアンプの選定にも役立てることができるので、ぜひ追加方法を習得してください。

よりオペアンプのSPICEモデルを活用したい方には、以下の参考図書をオススメします。

この本では、LTspiceを活用して「オペアンプの正しい選び方」を解説しています。

また、オペアンプのSPICEモデルを追加した後、シミュレーションと実測で、

オペアンプの動作確認をする方法についても解説されているので、ぜひ参考にしてください。

人気記事:【無料の特典と返金保証あり】電子回路のオンライン入門セミナー5選!

※ 初心者向けのLTspice通信講座(返金保証あり)

LTspiceの初心者向け通信講座です。

通信講座を利用すると、LTspice習得の近道になりますね。

英語ですが、LTspiceのシミュレーション動画を見れるので、けっこう理解できます。

30日間の返金保証があるので、ノーリスクで始められます。

まずは、右クリックの「日本語に翻訳」を活用してカリキュラムを確認してみましょう。

» 初心者向けのLTspiceチュートリアル(Udemy)はこちら

※この講座ではLTspiceのソースファイルをダウンロードできます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次