回路シュミュレータLTspiceの導入
こんにちは、くろべこでございます。
本日はLTspiceの導入を解説していこうと思います。
今までの記事でちらほら使ってはいたのですが、導入から基本的な使い方を説明していこうと思います。
LTspiceとは旧リニアテクノロジー社が開発したアナログ電子回路シュミュレータになります。LTspiceの強みが【無償・無制限】であることですね。また、商用のPspiceやTINA-TI(テキサスインスツルメンツ)と同様にSPICEと呼ばれる回路シュミュレータベースのソフトであり、関連書籍も非常に多いこともGoodです。
アナログ回路の開発を行う上で、シュミュレーションを行うことで部品選定も的確に行うこともできますのでトータルの工数・コスト削減に貢献できます。
この記事で学べる事
- LTSpiceの導入~環境設定
- LTspiceでのRLC直列共振回路のシュミュレート
- Spice directiveコマンドで電気量を評価
- .step コマンドで部品の値を可変したシュミュレーション
- .stepと併用した周波数解析(.AC)
LTspiceの導入と環境設定
■導入
LTspiceは以下のANALOG DEVICESのホームページからDLしてください。
ダウンロードしましたら、インストーラーをクリックしてインストールを開始しましょう。ここまでは特別なことは無く、Next & Nextです。
■環境設定
デフォルトのままでも問題ないのですが、基本的なところだけ設定します。まずは、【Tool】⇒【Netlist Options】をクリックして以下のように設定を行います。マイクロの記号からアルファベットの”u”にするという事です。
あとは好みの問題ですが、波形を出すときに背景やトレースラインの色を変えることが出来ます。【Tool】⇒【Color Paletter Editor】から設定可能です。私は、波形の背景は白がいいので以下のような感じでWave Formは設定しています。
とりあえず一旦は環境設定は以上です。他は使っていくうちに好みで変えてみてください。
RLC直列共振回路モデルを作成する
まずは、【File】⇒【New Schematic】をクリックして新規ページを表示し、いったん保存しましょう。この状態では、灰色の背景とツールバーが表示されていると思います。
1.部品を並べていく
【Edit】をクリックすると電子部品のシンボルが表示されると思います。今回は抵抗、コイル、コンデンサを各一つずつ並べていきます。シンボルの向きを変えたい場合にはシンボルを選択した状態で【Ctrl+R】で回転させることが出来ます。
電源に関しては【Edit】⇒【Component】をクリックして”Voltage”と打ち込んでください。シンボルが出てくるはずです。
部品が並べ終わりましたらGNDを配置してください。もしも、間違えてシンボルを置いてしまったら【Edit】⇒【Undo(F9)】か【Delete(F5)】で処理をしましょう。Deleteする時はDrag(F8)でシンボルを選択するのをお忘れなく。
2.シンボルに値を設定する
このままではシンボルに対して何もパラメータが設定されていません。今回は以下のようなパラメータを設定しましょう。
- R1:100Ω
- C1:10uF
- L1:0.1mH
- V1:正弦交流波(Vpp=10V, F=6kHz)
シンボルに対しての値変更はシンボルにカーソルを合わせて右クリックをします。するとパラメータウィンドウが開かれるので上記の値を入れていきます。1000=k, 0.001=mなどの単位を指定することもできます。値を入力して【Select ~】を選択するとリスト内のパラメータを選択することも可能です。
V1に関しては右クリックして【Advanced】をクリックしてみてください。電源の種別を”Function”から選択ができるのでここでは”SINE”を選択してください。
3.シンボル同士を結線する
【Edit】⇒【Draw Wire(F3)】でシンボル同士を結線しましょう。
RLC直列共振回路をシュミュレーションする
1.シュミュレーションする
【Simulate】⇒【run】をクリックして、シュミュレーションの初回は下記のような設定画面が出るので今回はStop timeを5msとしてみましょう。
回路の測定したいところにカーソルを当てるとプローブのような赤い棒が出てくるので、R1の上あたりをクリックしてみましょう。また、シンボルにカーソルを当てるとクランププローブのようなアイコンが出てくるのでクリックしてみましょう、電流が測定できます。波形の表示範囲は±の虫眼鏡で調整可能です。
グラフを右クリックしてみましょう。【Add Traces to Plot】を選択すると表示したいシンボルや電源の電流/電圧を一括して選択/解除が可能です。Windowsと同じように、Ctrl+クリックで複数選択可能です。
Spice directiveコマンドで電気量を評価する
とりあえず、回路モデル作成、シュミュレートはできました。しかし、実際に波形に対して電気量の測定(最大最小電圧や周期)をしたくなると思います。そんな時に使用するのが【Spice directiveコマンド】です。早速やってみましょう。
その前に、測定ポイントに”ラベル”を挿入します。【Edit】⇒【Label Net(F4)】をクリックして”OUT”とします。ラベルが作成できましたら以下の図の所に張り付けましょう。
【Edit】⇒【SPICE DirectiveS】をクリックします。そうすると空白のウィンドウが出ると思いますので、【.meas】と打ち込んでOKをクリックしてみてください。回路内にテキストが表示されると思いますので、任意の場所に設置してみましょう。
設置が出来ましたら、.measにカーソルを合わせて右クリックをしてみます。すると、エディターが出てくると思います。今回は例として先ほどラベルを貼ったV(out)の最大値を測定してみます。測定時間は0.1ms~5msとしましょう。
※クリックすると大きくなります
コマンド:.meas TRAN AMP MAX V(out) FROM 0.002 TO 0.005
コマンドが作成出来たらOKを押して【Ctrl+L】を押します。エラーログのウィンドウが出ると思います。先ほど設定したコマンドの結果が出ていると思いますので確認してみましょう。”amp”というところに格納されていますね。MAX(v(out))=9.99894でした。
次はちょっと応用で、周期を測定してみましょう。
周期を測定する場合は演算式を2個作成する必要があります。まずは、波形の始まりのポイントと1周期の終わりのポイントです。このポイントはどこで判別するというと、V(OUT)の波形が0クロスした時をカウントして判別します。(オシロスコープで言うトリガ機能みたいなやつです)
.meas TRAN res1 FIND time WHEN V(OUT)=0 TD=2m CROSS=5
.meas TRAN res2 FIND time-res1 WHEN V(out)=0 TD=2m CROSS=7
上の式で、開始から2msの所からV(OUT)が0クロスを5ポイント取った時点の時間を返してくれています。下の式では開始から2msの所からV(OUT)が0クロスを7ポイント取った時点の時間をtimeに返し、そこからres1を差し引いて1周期の時間を出しています。
結果はres2(周期)=0.0001666secであり、周波数に直すと6kHzとなり正しいことが分かります。
.stepコマンドで部品の値を振ってシュミュレートする
応用編としてパラメトリック解析(.stepコマンド)を解説します。
パラメトリック解析とは電子部品のパラメータを可変しながらシュミュレーションする解析方法になります。題材とするのは前項でも使用したRLC直列共振回路です。
パラメトリック解析を行うには可変数パラメーター変数を設定する必要があります。今回はコンデンサ(C1)を振って解析を行います。RLC直列回路はコンデンサとコイルのインピーダンスがイコールになった時に回路全体のインピーダンスが最小(位相0)になります。
C1を右クリックして設定画面を開きましょう。周波数の欄に{C1}と入力して変数として定義を行います。
パラメトリック解析は他の解析と併用して行います。今回は周波数特性を測定したいのでAC解析(.と組み合わせての使用になります。AC解析をする場合は電源の設定が必要です。電源のシンボルをクリックして【Small signal AC analysis(.AC)】を設定します。【AC Amplitude】を1Vとし、【AC Phase】は空欄で構いません。
解析時間などの設定を変更したい場合は【Simulate】⇒【Edit Simulation Cmd】⇒【AC Analysisタブ】から設定パラメータを変更可能です。
では、.stepのコマンドをSPICE directiveで打ち込んでいきます。【Edit】⇒【SPICE directive’S’】をクリックします。そうしましたら、”.step”と打ち込んで適当なところにコマンドを配置しましょう。
設置しましたら、.stepにカーソルを合わせて右クリックをします。そうしましたら設定のウィンドウが開きますので変数”C1″に対して開始(Start value)/終了(Stop value)の容量とステップ値(Increment)を設定します。
設定が出来ましたら、シュミュレーションを開始してみましょう。OUTの部分の電圧を見てみます。ステップごとに色分けされたグラフが表示されると思います。ステップ個別にグラフを選択したい場合にはグラフ上で右クリックをして【View】⇒【Select Steps】で選択が可能です。
実線が振幅比(dB)で破線が位相角の差(deg)であり、最初に設定した振幅(1V)/位相(0)からの相対的な量を確認することが出来ます。ちなみに、グラフの線の太さを変えたい場合は【Tool】⇒【Control Panel】⇒【Wave forms】⇒【Data trace width】から変更可能です。
では、グラフを観察してみましょう。初期容量1uFから位相が右にずれていっているのが分かります。ちなみに初期での共振周波数は16kHzくらいです。ということは、コンデンサの容量が増えることで位相が進み共振周波数が左にずれていっているという事ですね。
おわりに
いかがだったでしょうか。
基本的な使い方はできるようになったかと思いますので、あとはコマンドや解析方法の設定の仕方など調べながらやっていけば効率よく開発が出来ると思います。(以下にLTspiceのヘルプページを載せておきます)
今後も定期的に使い方や豆知識を載せていきますのでよろしくお願いします。
ではでは!
コメント