【LTspice】SPICEモデルを定義する『.modelコマンド』の使い方

スポンサーリンク

この記事では.modelコマンドの使い方について詳しく説明します。

『.modelコマンド』とは

.modelコマンドとは、ダイオード、バイポーラトランジスタ、MOSFET、スイッチなどのモデルを定義するコマンドです。

例えば、ダイオードは「飽和電流IS」や「直流抵抗RS」など様々なパラメータを持っています。『.modelコマンド』を用いて各パラメータに値を設定することで、ユーザーが自由にモデルを定義することができるようになります。

補足

『.modelコマンド』は損失のある伝送線路や均一のRCモデル等も定義できます。

『.modelコマンド』の構文

【LTspice】『.modelコマンド』の構文
『.modelコマンド』の構文は以下のようになっています。

構文

.model <modname> <model type> (<param1>=<val1> <param2>=<val2>…)

<modname>

モデル名を入力します。モデル名には規則がなくユーザーが自由に設定することができます。

<model type>

モデルタイプを入力します。このモデルタイプには規則があります(例えばDはダイオード、NPNはNPNトランジスタなど)。以下にLTspiceで使うことができるモデルタイプの表を示します。

モデルタイプ対応回路素子
R抵抗
Cコンデンサ
Lインダクタ
SW電圧制御スイッチ
CSW電流制御スイッチ
URC均一分布RC線路
LTRA損失伝送ライン
Dダイオード
NPNNPNバイポーラトランジスタ
PNPPNPバイポーラトランジスタ
NJFNチャネルJFET
PJFPチャネルJFET
NMOSNチャネルMOSFET
PMOSPチャネルMOSFET
NMESNチャネルMESFET
PMESPチャネルMESFET
VDMOS縦型二重拡散パワーMOSFET

<param1>=<val1> <param2>=<val2>…

モデルのパラメータと値を入力します。各モデルで設定できるパラメータが別々です。また、各モデルで複数のパラメータを持っています。例えば、ダイオードでは飽和電流ISや直流抵抗RSなど、NPNトランジスタではエミッタ抵抗REやコレクタ抵抗RCなどです。今後、各モデルについて設定できるパラメータをまとめて記事にします。

『.modelコマンド』のコマンド例

  • .model D_ideal D(Ron=0.0001 Roff=100G Vfwd=0)
  • →モデルタイプはダイオード(D)でモデル名は「D_ideal」である。パラメータ値はオン抵抗Ronが0.0001Ω、オフ抵抗Roffが100Gオーム、順方向電圧効果VFが0Vである。

上記のようにモデルを定義します。なおこのモデルは理想ダイオードを示しています。理想ダイオードについては以下の記事に記載しています。

『.modelコマンド』の入力方法

【LTspice】『.modelコマンド』の入力方法
ツールバーの「.op」をクリックする(ショートカットキーは”s”)と、[Edit Text on the Schematic]ダイアログボックスが表示されます。「SPICE Directive」が選択されていることを確認して『.modelコマンド』を入力し、[OK]ボタンをクリックします。

シミュレーション例

シミュレーション回路

【LTspice】『.modelコマンド』のシミュレーション回路
上図は電圧源V1とダイオードD1を接続したシミュレーション回路図です。『.dc解析』を行っており、電圧源V1の電圧を0Vから1.2Vまで0.01V刻みで変化させています。また、以下の『.modelコマンド』を用いてダイオードモデルMyDiodeを定義しています。

.model MyDiode D( IS=60p RS=40m BV=1.00k IBV=5.00u JO=15p M=0.3 N=1.4 TT=3u)

ダイオードモデルを使用するためには、ダイオードD1のシンボルを「Ctrl+右クリック」すると表示される[Component Attribute Editor]ダイアログボックスのValueにモデル名「MyDiode」を入力します。
【LTspice】ダイオードにモデルを与える

補足

  • [Component Attribute Editor]ダイアログボックス内にあるSpiceModel,Value2,SpiceLine,SpiceLine2のどれかにモデル名を入力してもダイオードモデルを読み込むことができます。ただし、ValueとSpiceModelなど2箇所にモデル名「MyDiode」を入力するとシミュレーション実行時にエラーが表示されるので注意してください。
  • ダイオードの素子値を右クリックすることで表示される[Enter new Value for D1]ダイアログボックスにモデル名「MyDiode」を入力してもダイオードモデルを読み込むことができます。

シミュレーション結果

【LTspice】『.modelコマンド』のシミュレーション結果
上図の右はダイオードD1に流れる電流I(D1)をプロットしたものとなっています。『.modelコマンド』を用いて定義したダイオードモデルの特性を観測することができます。

基本のおさらい(グラフの表示方法)

I(D1)のグラフ表示方法について説明します(基本的な内容なのですでに知っている方は飛ばしてください)。シミュレーション中(またはシミュレーション実行後)に、回路図ウィンドウをアクティブにして、カーソルをダイオードD1に近づけると、カーソルが電流プローブの形に変わります。その状態で左クリックすると、波形ウィンドウにグラフが表示されます。なお、波形ウィンドウの上部には選択した信号名(今回はI(D1))が表示されます。

まとめ

この記事では『.modelコマンド』について構文を説明した後、実際にシミュレーションで確認をしました。[SPICE Directive]で『.modelコマンド』を記述することでモデルを定義することができますが、一般的には『.modelコマンド』が記述されたSPICEモデルファイル(拡張子がlib,sub,modのもの)を『.libコマンド』を用いて読み込むことの方が多いと思います。

なお、LTspiceに関する記事は以下にまとめてあるのでぜひ参考にしてください。

『LTspice』に関する記事一覧

また、当サイトの全記事一覧は以下にまとめてあるのでぜひ参考にしてください。

当サイトの全記事一覧

スポンサーリンク