【LTspice入門】サブサーキットファイルでのモデル追加 〜 LM358の場合
※ 当ページには【広告/PR】を含む場合があります。
2020/07/11
2021/10/18
LM358
TL;DR
1. 各メーカーのホームページで型式検索を行い、
添付資料・付属項目でモデルファイルが提供してないか調べる。
ファイルがダウンロードできたり、リソーステキストがそのまま貼り付けられていたりと、
メーカーによって対応が異なる。
探せなければ、SPICEモデルを自作するしかない。
2. LTspiceインストール時に作成されるLTspiceXVII/lib/subフォルダ(以降subフォルダ)
配下に先程ダウンロードしたサブサーキット形式のファイルを保存
3. LTspiceインストール時に作成されるLTspiceXVII/lib/symフォルダ(以降symフォルダ)
の適当なシンボルデータファイル(オペアンプの場合はopamp.asyやopamp2.asyなど)をコピーし、
新規コンポーネントとしてファイルをリネームする(hogehoge.asy等)。
リネームしたファイルは新たにsymフォルダ配下に保存
4. シンボルファイルをシンボルエディタで編集する。
もしくはテキストエディタで直接編集する(上級者向け)
5. サブサーキットファイルを編集する。
シンボルのピン配置番号やsubフォルダに配置したモデルライブラリのリンクを設定等を行う
6. 以上が正しく設定されていれば、独自定義のコンポーネントとして利用できる
まえおき
LTspiceの作業フォルダ構造
アプリケーションのフォルダ構造
$ tree -L 3
.
└── LTspiceXVII
├── examples
│ ├── Educational
│ └── jigs
└── lib
├── cmp
├── stamp.bin
├── sub
└── sym
examples
lib
lib
cmp
sub
sym
サブサーキットファイルの準備
lm358.txt
デバイスモデル:
.modelの拡張子で終わるもの。
lib/cmp/直下のstandard.*ファイルへ登録することで
コンポーネントを利用することができる。
データを提供しているメーカーによっては、
.mod/.lib/.txt...などで公開されているので、
中身で判断したほうがよい。
サブサーキット:
lib/sub/直下のフォルダへファイルを置くことで
コンポーネントとして利用できる。
.sub拡張子のファイルはバイナリ形式、
.lib拡張子のファイルはテキスト形式になっている。
.libファイルの場合、データを提供しているメーカーによっては、
.txt/.cir/.subckt/.modなど、こちらも統一性がないので、
最終的には中身をみて判断すること。
.SUBCKT ****
* WARNING : please consider following remarks before usage
*
* 1) All models are a tradeoff between accuracy and complexity (ie. simulation
* time).
* 2) Macromodels are not a substitute to breadboarding, they rather confirm the
* validity of a design approach and help to select surrounding component values.
*
* 3) A macromodel emulates the NOMINAL performance of a TYPICAL device within
* SPECIFIED OPERATING CONDITIONS (ie. temperature, supply voltage, etc.).
* Thus the macromodel is often not as exhaustive as the datasheet, its goal
* is to illustrate the main parameters of the product.
*
* 4) Data issued from macromodels used outside of its specified conditions
* (Vcc, Temperature, etc) or even worse: outside of the device operating
* conditions (Vcc, Vicm, etc) are not reliable in any way.
*
*
** Standard Linear Ics Macromodels, 1993.
** CONNECTIONS :
* 1 INVERTING INPUT
* 2 NON-INVERTING INPUT
* 3 OUTPUT
* 4 POSITIVE POWER SUPPLY
* 5 NEGATIVE POWER SUPPLY
.SUBCKT LM358 1 2 3 4 5
***************************
.MODEL MDTH D IS=1E-8 KF=3.104131E-15 CJO=10F
* INPUT STAGE
CIP 2 5 1.000000E-12
CIN 1 5 1.000000E-12
EIP 10 5 2 5 1
EIN 16 5 1 5 1
RIP 10 11 2.600000E+01
RIN 15 16 2.600000E+01
RIS 11 15 2.003862E+02
DIP 11 12 MDTH 400E-12
DIN 15 14 MDTH 400E-12
VOFP 12 13 DC 0
VOFN 13 14 DC 0
IPOL 13 5 1.000000E-05
CPS 11 15 3.783376E-09
DINN 17 13 MDTH 400E-12
VIN 17 5 0.000000e+00
DINR 15 18 MDTH 400E-12
VIP 4 18 2.000000E+00
FCP 4 5 VOFP 3.400000E+01
FCN 5 4 VOFN 3.400000E+01
FIBP 2 5 VOFN 2.000000E-03
FIBN 5 1 VOFP 2.000000E-03
* AMPLIFYING STAGE
FIP 5 19 VOFP 3.600000E+02
FIN 5 19 VOFN 3.600000E+02
RG1 19 5 3.652997E+06
RG2 19 4 3.652997E+06
CC 19 5 6.000000E-09
DOPM 19 22 MDTH 400E-12
DONM 21 19 MDTH 400E-12
HOPM 22 28 VOUT 7.500000E+03
VIPM 28 4 1.500000E+02
HONM 21 27 VOUT 7.500000E+03
VINM 5 27 1.500000E+02
EOUT 26 23 19 5 1
VOUT 23 5 0
ROUT 26 3 20
COUT 3 5 1.000000E-12
DOP 19 25 MDTH 400E-12
VOP 4 25 2.242230E+00
DON 24 19 MDTH 400E-12
VON 24 5 7.922301E-01
.ENDS
subckt(サブサーキット)
*
lm358n.subckt
sub
sub
STMicroelecronics
STMicro
lm358n.subckt
$ mkdir LTspiceXVII/lib/sub/STMicro
$ mv lm358n.subckt LTspiceXVII/lib/sub/STMicro/
$ ls LTspiceXVII/lib/sub/STMicro/
lm358n.subckt
シンボルの準備
LM358N
opamp2
sym/OpAmps/opamp2.asy
lm358n.asy
Version 4
SymbolType CELL
LINE Normal -32 32 32 64
LINE Normal -32 96 32 64
LINE Normal -32 32 -32 96
LINE Normal -28 48 -20 48
LINE Normal -28 80 -20 80
LINE Normal -24 84 -24 76
LINE Normal 0 32 0 48
LINE Normal 0 96 0 80
LINE Normal 4 44 12 44
LINE Normal 8 40 8 48
LINE Normal 4 84 12 84
WINDOW 0 16 32 Left 2
WINDOW 3 16 96 Left 2
SYMATTR Value opamp2
SYMATTR Prefix X
SYMATTR Description Operational Amplifier symbol for LM358N
PIN -32 80 NONE 0
PINATTR PinName In+
PINATTR SpiceOrder 1
PIN -32 48 NONE 0
PINATTR PinName In-
PINATTR SpiceOrder 2
PIN 0 32 NONE 0
PINATTR PinName V+
PINATTR SpiceOrder 3
PIN 0 96 NONE 0
PINATTR PinName V-
PINATTR SpiceOrder 4
PIN 32 64 NONE 0
PINATTR PinName OUT
PINATTR SpiceOrder 5
sym/OpAmps/
STMicro
lm358n.asy
$ mkdir LTspiceXVII/lib/sym/OpAmps/STMicro
$ mv lm358n.asy LTspiceXVII/lib/sym/STMicro/
$ tree -L 3
.
└ LTspiceXVII
└─ lib
├─ sub
│ └─ STMicro
│ └── lm358n.subckt
└─ sym
└─ STMicro
└── lm358n.asy
シンボルエディタでシンボルを編集
[File]
[Open]
lm358n.asy
Value
opamp2
Value
opamp2
Value
LM358
[Attributes] > [Edit Attributes]
ModelFile
ModelFile
STMicro/lm358n.subckt
Value
ピン番号合わせ
** CONNECTIONS :
* 1 INVERTING INPUT
* 2 NON-INVERTING INPUT
* 3 OUTPUT
* 4 POSITIVE POWER SUPPLY
* 5 NEGATIVE POWER SUPPLY
.SUBCKT LM358 1 2 3 4 5
#....
Invert Input
List Order
Inverting Input
ピン名 | ピン番号 |
---|---|
信号インプット(-) | (1) |
信号インプット(+) | (2) |
出力 | (3) |
+側電源電圧 | (4) |
-側電源電圧 | (5) |
動作チェック
まとめ
参考サイト
記事を書いた人
ナンデモ系エンジニア
電子工作を身近に知っていただけるように、材料調達からDIYのハウツーまで気になったところをできるだけ細かく記事にしてブログ配信してます。
カテゴリー