LTspice使ってみた

ちまたではやっている?spiceを使ってみました。まとまっていませんが、忘れないようにざっと記述しておきます。

アナログ回路のシミュレータはこれまで使ったことなかったのですが、フィルタのシミュレーションをしたかったので使うことにしました。Spiceも何種類もあり、有料の高価なものから、機能制限付きの体験版的なものもありますが、リニアテクノロジー社のLTspice IVは無料であるにも関わらず、機能制限なしで使えます。実は、昨日まで、無料とは知らなかったので、使ったことなかったんですが。

デバイスのライブラリ(マクロモデル)はリニアテクノロジー社のものが付属していますが、他社製のマクロモデルも少しの手間で使えるようになります。

操作も簡単で、エディタの使い方はすぐに覚えられました。ネット調べながら、2時間ぐらいで、オペアンプのフィルタの回路を描いて取り敢えずシミュレーションできるようになりました。

●他社製マクロモデルの使用

秋月電子で扱いの多い、ナショセミ(TIに買収)や新日本無線のオペアンプを使いたいのですが、LTspiceには付属していないので、自分で用意する必要があります。PSpice用のファイルなども流用できます。

手順は、シンボルとマクロファイルを特定のフォルダへコピーして、アトリビュートを少し修正するだけですが、シンボルが用意されていない場合は別に用意する必要があります。オペアンプはほとんどの場合、汎用の”opamp2″シンボルが流用できます。

●必要なファイル

デバイスの登録には2つのファイルが必要です。一つはシンボルファイル “*.asy” (オペアンプの場合はたいていはopamp2.asyが流用可能)、もう一つはマクロファイル “*.lib”または”*.sub”です。どちらもテキストファイルです。

マクロファイルは、供給メーカの違いや他社spice用の場合、拡張子が異なりますが、リネームしてそのまま使えるようです。

マクロファイル(*.lib)の中にはデバイス名が記述されていますが、

.SUBCKT xxxx

と書かれているxxxxの部分がデバイス名となります。

この名前は、シンボルのアトリビュート修正時に必要になりますので、あらかじめ、libの中を見て確認しておく必要があります。なお、1つのライブラリの中に複数のデバイスが含まれている場合があります。この場合は、”.SUBCKT”ディレクティブの行が複数あります。

●ファイルのコピー先

標準インストールの場合のファイルの格納場所は次のようになっています。

シンボルファイルは
C:\Program Files (x86)\LTC\LTspiceIV\lib\sym

マクロファイルは
C:\Program Files (x86)\LTC\LTspiceIV\lib\sub

それぞれサブフォルダを作ってまとめてもかまいません。たとえば、マクロファイルでサブフォルダ”myLib“をつくるとすると、フルパスは次のようになります。

C:\Program Files (x86)\LTC\LTspiceIV\lib\sub\myLib

ここに”xxxx.lib”を格納したとすると、アトリビュートでのファイルの指定は

myLib\xxxx.lib”とします。

●アトリビュートの修正

バージョンの違いにより、設定画面が少々異なるようですが、ここでは、最新のIVバージョンの場合で記述します。話が前後しますが、HC123Aを登録したときの画面で説明します。

シンボルとマクロファイルの、”74hct123A.asy”と”74hc.lib”を規定のフォルダへコピーしたのち、LTSpice上で対象のデバイスを回路図の編集画面に配置します。

そのあと、シンボル上で右クリックすると、”Component Attribute Editor”というアトリビュートの設定画面がでます。

lts1

この中で、上の方にある”Open Symbol” のボタンをクリックすると、シンボル編集画面に切り替わります。

lts2

更に、メニューの”Edit”―”Attributes”―”Edit Attributes”をクリックすると、”Symbol Attrifute Editor”というアトリビュート編集画面がでます。

lts3

この中の”Value”という項目に、デバイス名(.SUBCKTで設定されているデバイス名)、”ModelFile”の項目にマクロのファイル名を記述します。ここでは、デバイス名は”74HC123A”となっています。

“ModelFile”の項目には、登録したマクロファイル名を設定します。さきの例のように、ライブラリが”myLib”というサブフォルダに保存してあるとすると、”myLib\74hc.lib”となります。

デバイス名は”74HC123A”となります。この名前は、libファイル中に記述されていた、SUBCKTディレクティブで指定されている名前です。これが一致していないと正常に使えません。

修正がおわったら、シンボルを保存します。汎用部品”opamp2″などを使っている場合は、別名のデバイス名で保存します。ここでは既にあるファイルを修正しているので、上書き保存します。

これで、他のシンボルと同じように登録したデバイスが使えるようになります。

●HC123とか

ちょっと使いたかったのでネットで探して、やっとみつけました。ここにLTSpice用のマクロがたくさんあります。

http://ltwiki.org/index.php5?title=LTspiceIV-library_Library_Listing_Expanded

ここで、”74hc.lib”と”74hct123A.asy”をダウンロードして使わせてもらいました。なお、シンボル(“*.asy”)はデバイス別ですが、”74hc.lib”にはたくさんのデバイスが一緒に登録されているので、デバイスを追加する場合、”.SUBCKT xxxx”で記述があるデバイスなら、必用なシンボル(“*.asy”)のみコピーして、アトリビュート(ライブラリのパス)を書き換えるだけで使用できます。

実際に使ってみたときの画面を示します。アナログシミュレータなのにデジタルのロジックチェックの例です。10KHzのクロック3発を出力したときのワンショット出力の波形です。上が入力クロック、下が出力パルスです。入力と同じ周期で、入力よりもHレベルの時間が伸びているのが確認できます。

lts42
-

コメントは受け付けていません。