PSpiceで抵抗値のDC sweepをやってみる

LTspice

前にLTspiceで定電流源をシミュレーションしてみました。

関連記事 LTspiceで、バイポーラトランジスタを使った電流源をシミュレーションしてみる

関連記事 第2回 LTspiceで、バイポーラトランジスタを使った電流源をシミュレーションしてみる

上の回路でシミュレーションしていて、基準電流Irefを抵抗R1とバイポーラトランジスタQ1で作成し、Irefをコピーした電流Icopy1を負荷抵抗R2に流すという回路です。

この時に、負荷抵抗R2を可変抵抗にしてシミュレーションしてみたいと思い、どうやるのか調べてみました。

スポンサーリンク

LTspiceで抵抗のDC sweepはできない???

やってみたいのは、抵抗R2を変化させ、その時のIcopy1の変化を見ることです。

つまり、横軸(x軸)が抵抗R2、縦軸(y軸)をIcopy1にしたグラフを描くことです。

最初は電源のDC sweepと同じ設定できるのかと思い、LTspiceメニュー Simulate -> Edit Simulation Cmdを選択します。

DC sweepさせたいのは抵抗R2なので、以下のように設定しました。

1kΩから10kΩまで、1kΩステップでDC sweepさせる設定です。

これで実行してみます。

エラーです。シミュレーションできません。

Source “r2” not found」と、”Source”と言っているので、電圧源とか電流源じゃないとDC sweepの解析ができないのかもしれません。

ネットで調べてわかった情報は、まず抵抗R2の値を{rval}とする。
rvalの名前は任意ですが、{}で囲う必要があります。

次に”Text”コマンドで、”.step param rval list 1k 5k 6k“と入力します。
“1k 5k 6k”は、R2の値を1kΩと5kΩと6kΩの3パターンでシミュレーションを実行するという意味です。

ちなみに、”Text”コマンドでこの設定を入力するときは、”SPICE directive”を選択しときます。

他にも”Text”コマンドで、”.step param rval 1k 5k 2k”と入力すると、1kΩから5kΩまで 2kΩステップでR2を可変させてシミュレーションを実行してくれます。

つまり、1kΩと3kΩと5kΩの3パターンでシミュレーションを実行してくれます。

以下は、”.step param rval list 1k 5k 6k”の設定で、Transient解析した結果です。

この結果を見ると、確かにR2を3つのパラメータでシミュレーションを実行してるように見えます。

しかし、Transient解析なので、横軸が時間です。

やりたいのは、横軸を抵抗値にすることです。

それをLTspiceでやる方法がわからなかったので、PSpiceならどうだろう?、と思ってPSpiceで調べてみました。

PSpiceで抵抗値のDC sweep

PSpiceで定電流源回路の動作チェック

まずはLTspiceと同じ定電流源回路を、PSpiceでも作ってみます。

関連記事 LTspiceで、バイポーラトランジスタを使った電流源をシミュレーションしてみる

npnバイポーラトランジスタはQ2N2222という部品を使ってますが、この部品の特性は理解せずに使っています。。。

上の回路で、まずはTransient解析をやって、抵抗R1に流れる電流(基準電流)と抵抗R2に流れる電流をシミュレーションしてみます。

抵抗R1とR2に流れる電流が同じになるのが理想ですが、30uAくらいの誤差がありました。

LTspiceの時よりも誤差が大きいです。LTspiceで使ったバイポーラトランジスタは理想に近い部品なので、誤差が小さかったんだと思います。

誤差はちょっと大きい気がしますが、とりあえずこの回路で先に進みます。

負荷抵抗R2のDC sweepのための前準備

まずは負荷抵抗R2の値を{rval}とします。rvalという名称は任意ですが、{}で囲う必要があります。

またrvalは後で使うので覚えておきます。

次に新しい部品を追加します。部品と言ってもトランジスタとか抵抗ではないのですが。

SPECIALライブラリのPARAMという部品を追加します。

これを回路図上に配置すると、青字で”PARAMETERS:”という文字が表示されます。

そしたら、この”PARAMETERS:”をダブルクリックします。

すると以下のような画面が表示されると思いますが、見え方や表示される内容は異なっているかもしれません。

そしたら、上の図の赤で囲った”New Row”をクリックします。場合によっては、”New Column”になっていると思います。

上のウインドウが開いたら、Nameに先ほど決めた”rval”を入力します。

Valueは何に使われるのかわかりませんが、1kにしときました。DC sweep解析をしないときに使われる初期値みたいなものなのかも知れませんが、詳細は不明です。

入力が終わったらOKをクリックします。

すると、下図の赤枠のように、rvalと1kが追加されました。

次は追加されたrvalの行を選択して、”Display”をクリックします。

以下のウインドウが開いたら、”Name and Value”を選択します。そしたらOKをクリックします。

そしたら”PARAMETERS:”をダブルクリックして開いた画面を閉じて、回路図に戻ります。

回路図に戻ると、”PARAMETERS:”の下に”rval=1k”と表示されます。

上の画面で”Name and Value”を選択していないと、rval=1kとは表示されないと思います。

シミュレーションプロファイルの設定

次はシミュレーションプロファイルの設定です。

メニューのPSpice -> Edit Simulation Profileを選択します。

新規にシミュレーションプロファイルを設定する場合は、PSpice -> New Simulation Profileを選択します。

以下のウインドウが開いたら、Analysisタブを選択し、赤枠で囲った個所を設定します。

Sweep typeは以下の設定にしました。
 Start value : 100
 End value : 10k
 Increment : 100

これは負荷抵抗R2のDC sweep設定で、100Ωから10kΩまで100Ωステップでシミュレーションが実行されます。

設定が終わったらOKをクリックします。

シミュレーションの実行

シミュレーション実行結果です。

出ました。ちゃんと横軸が抵抗値、縦軸が電流値になりました。

このDC sweepの結果で、負荷が低抵抗の時は負荷抵抗R2に流れる電流の方が大きいことがわかりました。

R2が5kΩを超えると電流も減っていきますが、これは電源電圧が5Vなので、抵抗が5kΩを超えると1mAの電流を流せなくなるからです。

まとめ

PSpiceのデモ版を使って、とりあえずやりたいことは実現できました。

でも、設定が多くて大変です。

LTspiceで簡単にできると嬉しいのですが。

PSpiceのデモ版を使ってみたい方は、こちらの書籍にCD-ROMが付属されています。

電子回路シミュレータPSpice入門編?電子回路の動作をパソコンで疑似体験! (ツール活用シリーズ)

新品価格
¥1,980から
(2020/7/17 23:44時点)

しかし、古い本なのでwindows10はサポートされていないと思います。

ご購入の際はご注意を。

ただ、私のwindow10の環境では、今のところ、正常に動いています。

関連記事 Windows10でもPSpiceのデモ版が動いた話

タイトルとURLをコピーしました