最近エフェクターの回路シミュレーションをやろうとLTspiceを使ってみています。
エフェクターでは定番の2SC1815や2SK30のようなトランジスタのモデルはLTspiceには含まれていないので、自分で追加する必要があります。
調べてみるとLTspiceに部品を追加する方法は3~4通りあるようです。
目次
LTspiceに部品やモデルを追加する方法
次のように整理できそうです:
- 既存のstandard.xxxを編集して、そこにモデルを貼り付ける
- 独立したモデルのファイルをフォルダに格納して、パスを指定する
- LTspiceの画面上にモデルを記入する
2番目の場合、格納するフォルダは2種類に分けられます。一つはLTspiceのlib/subフォルダの下、もう一つはそれ以外の任意フォルダです。
lib/subフォルダはLTspiceのサーチパスになっているので、パスにlib/subを含める必要はありません。
たとえばlib/subの下にmylibのようなフォルダを作成して格納する場合は mylib/hoge.libのようにフォルダのパスから指定する必要があります。
ちなみにLTspiceのlibフォルダは下のような配置になっています:
既存のstandard.xxxを編集する方法
lib/cmpの下にはstandard.bjtなど、標準的な部品のモデルが格納されています。 2SC1815を追加したい場合はバイポーラトランジスタのモデルファイルであるstandard.bjtを編集(末尾に追加)します。
これの問題は、LTspiceが更新した場合はstandard.xxxが上書きされて、自分の編集内容が消える可能性があることですね。
こういう事態を気にしないのであれば、とりあえず動かす場合などはこれが一番楽かも知れません。
独立したモデルのファイルをフォルダに格納して、パスを指定する
例えばmybjt.libのような個別のファイルを準備してlib/subフォルダの下か、それ以外の任意のフォルダに保存する方法です。
この場合パスを指定する必要があるので、
.include mylib/mybjt.lib
のようなSPICE directiveを指定します。
.include は.libでも良いようです。というかlibファイルは.libで読みこむ方が正しそうです。 (LTspice-ドットコマンド「.lib/.include」(ファイル読み込み)の使い方(Spicemanさんのページから))
lib/subではない別のフォルダの場合はフルパスを指定する必要があります。
LTspiceの画面上にモデルを記入する
これはLSspiceの画面上にSPICE directiveとしてモデルをそのまま記載する方法です。
これが一番お手軽かも知れません。LTspiceの見た目はあまり良くないかも知れませんが。
どの方法が良いか
どの方法が良いかは、人それぞれ好みのやり方を選べば良いと思います。
ぼくの場合は2番目の独立したファイルをlib/sub/mylibの下に格納する方法をとっています。 フォルダを1階層深くしているのは、自分が追加したモデルが見付けやすいためです。
ちょっと試すだけなら、3番目のSPICE directiveを直書きする方法を使います。