- LTspiceのスイッチの使い方を知りたい。
- LTspiceの電圧制御スイッチと電流制御スイッチの使い方を知りたい。
- スイッチング電源回路でLTspiceのスイッチを使うにはどうすればいいの?
- LTspiceのスイッチを理想ダイオードとして使いたい。
電子回路シミュレータLTspiceで、このように考えたことはありませんか?
現実の回路では、トランジスタなどのスイッチング素子で回路を構成します。
そのスイッチング素子をスイッチに置き換えると、
理想的な電子回路で簡単に動作を確認したり、理解を深めることができるので、非常に便利ですよね。
本記事では、LTspiceのスイッチの使い方を知りたい方向けに、
スイッチの使い方から、スイッチを理想ダイオードとして使う方法、逆位相で動作させる方法、
スイッチを使った昇圧スイッチング電源回路、チャージポンプ回路について解説します。
LTspiceでスイッチを使えるようになるため、この記事がお役に立てば幸いです。
※ 初心者向けのLTspice通信講座(返金保証あり)
LTspiceの初心者向け通信講座です。
通信講座を利用すると、LTspice習得の近道になりますね。
英語ですが、LTspiceのシミュレーション動画を見れるので、けっこう理解できます。
30日間の返金保証があるので、ノーリスクで始められます。
まずは、右クリックの「日本語に翻訳」を活用してカリキュラムを確認してみましょう。
» 初心者向けのLTspiceチュートリアル(Udemy)はこちら
※この講座ではLTspiceのソースファイルをダウンロードできます。
LTspiceのスイッチは2種類ある
電圧制御スイッチ
電圧制御スイッチは、LTspiceのシミュレーションで、よく使われます。
特にスイッチング(ON/OFF)する回路で、回路の動作を確認するため、
スイッチング素子の代わりとして使用することが多いです。
電流制御スイッチ
私の経験上、電流制御スイッチを使用する機会はほとんどありません。
今回、電流制御スイッチについては使い方を説明するまでに留めたいと思います。
LTspiceのスイッチの使い方
電圧制御スイッチの使い方
電圧制御スイッチのシミュレーション
電圧制御スイッチは、入力する電圧の大きさでスイッチをON/OFFすることができます。
電圧制御スイッチのシミュレーションです。
回路図「point_a」の電圧波形:
V(point_a)の信号(青線)
回路図「OUT」の電圧波形:
V(out)の信号(赤線)
電圧源V1:
DC24V(直流電圧24V)を出力
電圧源V2:
0ms → 0V、1ms → 24V、2ms → 0Vの三角波を出力
V(out)の電圧は、最初0Vでしたが、電圧源V2から出力されるV(point_a)の電圧が12Vを超えると、
24Vになっていることが分かります。
逆に、1msからV(point_a)の電圧が徐々に下がると、12Vを下回ったところで、
V(out)の電圧は0Vになっていることも分かります。
つまり、電圧制御スイッチS1に入力される電圧V(point_a)が12V以上だと、スイッチがONになり、
12V以下だと、スイッチがOFFになっているということです。
このように、電圧制御スイッチは、入力する電圧でスイッチをON/OFFできることが分かります。
電圧制御スイッチS1の使い方は以下の通りです。
1. メニューバーのEdit → Component を選択すると、
Select Component Symbolウィンドウが表示される。
2. 「sw」を選択し、回路図のS1に配置する。
3. スイッチS1のシンボルの上で右クリックすると、
Component attribute editorウィンドウが表示される。
4. Valueの項目に「switch1」と入力する。
5. メニューバーのEdit → Spice Directive を選択し、
「.model switch1 sw(Vt=12V Vh=0V Ron=1 Roff=100Meg)」を入力する。
これで以下の設定になります。
スレッショルド電圧(しきい値電圧)Vt:12V
ヒステリシス電圧Vh:0V
ON抵抗(スイッチON時の抵抗値)Ron:1Ω
OFF抵抗(スイッチOFF時の抵抗値)Roff:100MΩ
これで、スイッチのシミュレーションができるようになります。
なお、「.model switch1 …」の「switch1」という表現は、
スイッチS1のシンボルのValueの項目に入力した「switch1」と一致させています。
つまり、一致していれば「mysw」とか「v_sw」とか、好きな表現にして構いません。
スレッショルド電圧(しきい値電圧)Vtを12Vに設定しているので、
12V以上でスイッチがON(回路図のOUTが24V)になり、
12V以下でスイッチがOFF(回路図のOUTが0V)になります。
電圧制御スイッチのヒステリシス電圧を変えてシミュレーションする
ここで、ヒステリシス電圧Vhを変えるとどうなるでしょうか?
以下はヒステリシス電圧Vhを2Vにしたときのシミュレーションです。
電圧制御スイッチS1に入力される電圧V(point_a)が徐々に上がっていくと、
先程は12VでスイッチがON(回路図のOUTが24V)になりましたが、
今回は14VでスイッチがONになっています。
また、1msからV(point_a)の電圧が徐々に下がると、
12Vを下回ったところでV(out)の電圧は0Vになっていましたが、
今回は10Vを下回ったところで、スイッチがOFF(回路図のOUTが0V)になっています。
つまり、ヒステリシス電圧Vhを2Vに設定すると、
スイッチOFF→ONに切り替わる電圧:12V + 2V
スイッチON→OFFに切り替わる電圧:12V - 2V
となることが分かります。
ヒステリシス電圧Vhの変更手順は以下の通りです。
1. 回路図の「.model switch1 … 」のところを右クリックすると、
「Edit Text on the Schematic」ウィンドウが表示される。
2. Vh=0V → Vh=2V に変更し、OKをクリックする。
電圧制御スイッチのON/OFFを逆動作させる方法
電圧制御スイッチはON/OFFの動作を逆にすることができます。
逆動作の方法は簡単で、「ON抵抗(Ron)の値」と「OFF抵抗(Roff)の値」を入れ替えるだけです。
電圧制御スイッチの逆動作のシミュレーションです。
ON抵抗(スイッチON時の抵抗値)Ron:
1Ω → 100MΩ
OFF抵抗(スイッチOFF時の抵抗値)Roff:
100MΩ → 1Ω
※ヒステリシス電圧Vhは0Vに戻しています。
V(out)の電圧は、電圧源V2から出力されるV(point_a)の電圧が12Vを超えると0Vになり、
1msからV(point_a)の電圧が徐々に下がると、12Vを下回ったところで、V(out)の電圧は24Vになっており、
逆の動作をしていることが分かります。
逆動作への変更手順は以下の通りです。
1. 回路図の「.model switch1 … 」のところを右クリックすると、
「Edit Text on the Schematic」ウィンドウが表示される。
2. Ron=1 → Ron=100Meg、Roff=100Meg → Roff=1 に変更し、OKをクリックする。
電流制御スイッチの使い方
電流制御スイッチのシミュレーション
電圧源に流れる電流の大きさによって、スイッチをON/OFFすることができます。
電流制御スイッチのシミュレーションです。
回路図「IN」の電圧波形:
V(in)の信号(緑線)
回路図「OUT」の電圧波形:
V(out)の信号(青線)
回路図「R2」の電流波形:}
I(R2)の信号(赤線)
電圧源V1:
0ms → 0V、2ms → 2Vの電圧を出力
電圧源V2:
電流制御スイッチW1がV2に流れる電流を検知するために配置。
DC 0Vに設定すればショート(導通)しているのと同じ。
V(in)の電圧は「0V → 2V」に変化しています。
V(out)の電圧は、R1(1Ω)とR2(1Ω)の抵抗で半分に分圧されます。
つまり「0V → 1V」に変化します。
ところが、
V(out)の電圧が0.5Vになると、0Vまで下がり、
I(R2)の電流は0.5Aになると、0Aまで下がっています。
これは、電圧源V2に流れる電流が0.5Aになると、電流制御スイッチがONになるように設定したからです。
つまり、電圧源V2やI(R2)に流れる電流が0.5Aになると、
電流制御スイッチW1がONになり、
回路図のOUTがGNDにショート(導通)し、
V(out)が0Vになったのです。
そして、抵抗R2に流れる電流I(R2)も0Aになっていることが分かります。
このように、電流制御スイッチは、電圧源に流れる電流を検知し、スイッチをON/OFFできることが分かります。
電流制御スイッチW1の使い方は以下の通りです。
1. メニューバーのEdit → Component を選択すると、
Select Component Symbolウィンドウが表示される。
2. 「csw」を選択し、回路図のW1に配置する。
3. スイッチW1のシンボルの上で右クリックすると、
Component attribute editorウィンドウが表示される。
4. SpiceModelの項目に「V2」と入力する。
(これで、スイッチW1が電圧源V2の電流を検知できるようになります。)
5. Valueの項目に「c_switch1」と入力する。
6. メニューバーのEdit → Spice Directive を選択し、
「.model c_switch1 CSW(It=0.5A Ih=0.0A Ron=1m Roff=100Meg)」を入力する。
これで以下の設定になります。
スレッショルド電流(しきい値電流)It:0.5A
ヒステリシス電流Ih:0A
ON抵抗(スイッチON時の抵抗値)Ron:1mΩ
OFF抵抗(スイッチOFF時の抵抗値)Roff:100MΩ
これで、電流制御スイッチのシミュレーションができるようになります。
なお、「.model c_switch1 …」の「c_switch1」という表現は、
スイッチW1のシンボルのValueの項目に入力した「c_switch1」と一致させています。
つまり、一致していれば「c_mysw」とか「c_sw」とか、好きな表現にして構いません。
スレッショルド電流(しきい値電流)Itを0.5Aに設定しているので、
0.5A以上でスイッチがON(回路図のOUTが0V)になります。
昇圧スイッチング電源回路でLTspiceのスイッチを使う方法
昇圧スイッチング電源回路のシミュレーション
電圧制御スイッチは、トランジスタなどのスイッチング素子のように使うことができます。
電圧制御スイッチを使った、昇圧スイッチング電源回路のシミュレーションです。
回路図「IN」の電圧波形:
V(in)の信号(緑線)
回路図「OUT」の電圧波形:
V(out)の信号(赤線)
回路図「PULSE」の電圧波形:
V(pulse)の信号(青線)
電圧源V1:
DC24V(直流電圧24V)を出力
電圧源V2:
周期20us、Duty50%、振幅+1.0Vのパルス波形を出力
※周期20usに対して、ON時間を10usにすることでDuty50%となっています。
電圧制御スイッチS1
スレッショルド電圧(Vt):0.5V
ヒステリシス電圧(Vh):0V
ON抵抗(Ron):1Ω
OFF抵抗(Roff):100MΩ
※ 電圧源V2の振幅+1.0Vに対して、
電圧制御スイッチS1のスレッショルド電圧を0.5Vにすることで、
ON/OFFが切り替わるようにしています。
24Vの入力電圧V(in)に対して、
電圧制御スイッチS1をDuty50%でON/OFFすることによって、
電圧出力V(out)は48Vになっています。
V(out) = V(in) / ( 1-Duty ) より、
V(out) = 24V / ( 1-50% ) = 24V / ( 1-0.5 ) = 24V / 0.5 = 48V
なので、理論と一致していることが分かります。
スイッチを理想ダイオードとして利用する
電圧制御スイッチを理想ダイオードとして利用することができます。
昇圧スイッチング電源回路のダイオードを電圧制御スイッチに置き換えて、シミュレーションしてみます。
電圧制御スイッチS2
スレッショルド電圧(Vt):0.0V
ヒステリシス電圧(Vh):0.0V
ON抵抗(Ron):0.5Ω
OFF抵抗(Roff):100MΩ
置き換える前と比べると、ほとんど同じような結果になっていますね。
電圧制御スイッチの両端にかかる電圧を入力電圧として利用することで、
等価的にダイオードと同じように動作することが分かります。
電圧制御スイッチを理想ダイオードとして利用する際に注意することは、
シミュレーションが収束せずに、エラーが発生することがあります。
このようなときは、ヒステリシス電圧Vhにマイナスの小さい値を入れるようにしましょう。
今回はVh=0.0Vで問題ありませんが、収束エラーが発生したときは、
Vhの値を-1mV、-0.1V、-1Vに設定することをオススメします。
これにより、スイッチのON/OFFの急激な変化を避けることができ、エラーが発生しなくなります。
2個のスイッチを逆位相で制御する
2個のスイッチを逆位相で動作させるにはどうすればよいでしょうか?
やり方は色々ありますが、以下の方法が一番シンプルです。
電圧源V2の振幅:
+1.0V → ±1.0V に変更
電圧制御スイッチS1のスレッショルド電圧:
0.5V → 0.0V に変更
電圧制御スイッチS2のスレッショルド電圧:
0.0V に設定
昇圧スイッチング電源回路のダイオードを電圧制御スイッチに置き換えました。
とはいえ、今回は理想ダイオードとして利用するわけではありません。
昇圧スイッチング電源回路のスイッチング素子(回路図:S1)とダイオード(回路図:D1)は
逆位相で動作していますので、電圧制御スイッチに置き換えて逆位相で動作させれば、
これまでと同じ結果が得られるはずです。
シミュレーション結果を見てみると、同じような結果が得られていますね。
逆位相で動作させる方法は、電圧源V2からのパルス出力を、
ダイオードから置き換えた電圧制御スイッチS2のマイナス端子に入力すれば良いです。
+1.0Vが入力されたとき
スイッチS1:ON スイッチS2:OFF
-1.0Vが入力されたとき
スイッチS1:OFF スイッチS2:ON
という逆位相の動作をさせることができます。
逆位相で動作させる方法を習得すると、
次のチャージポンプ回路の動作も簡単にシミュレーションできるようになります。
スイッチの使い方を習得すれば回路の動作を簡単に確認できる
スイッチを使ったチャージポンプ回路のシミュレーション
スイッチの使い方を習得すれば、スイッチング回路の動作を簡単に確認できるようになります。
電圧制御スイッチを使ったチャージポンプ回路のシミュレーションです。
回路図「IN」の電圧波形:
V(in)の信号(緑線)
回路図「OUT」の電圧波形:
V(out)の信号(赤線)
回路図「PULSE」の電圧波形:
V(pulse)の信号(青線)
電圧源V1:
DC5V(直流電圧5V)を出力
電圧源V2:
周期20us、Duty50%、振幅±1.0Vのパルス波形を出力
※周期20usに対して、ON時間を10usにすることでDuty50%となっています。
電圧制御スイッチS1、S2
スレッショルド電圧(Vt):0.0V
ヒステリシス電圧(Vh):0.0V
ON抵抗(Ron):0.1Ω
OFF抵抗(Roff):100MΩ
※電圧源V2の振幅±1.0Vに対して、
電圧制御スイッチS1、S2のスレッショルド電圧を0.0Vにすることで、
ON/OFFが切り替わるようにしています。
チャージポンプ回路のスイッチは、以下のように2通りの動作をします
Phase1
S1:ON S2:OFF S3:OFF S4:ON
Phase2
S1:OFF S2:ON S3:ON S4:OFF
Phase1のとき、
C1に入力電圧5Vを充電し、C1の電圧は入力電圧5Vと等しくなります。
Phase2のとき、
入力電圧5VはC1を介して出力電圧V(out)となりますが、
Phase1で充電されているので、出力電圧は入力電圧5Vの2倍となって出力されます。
シミュレーション結果をみてみると、
入力電圧5Vに対して出力電圧が10Vで、2倍になっていることが分かります。
この動作を実現するため、先ほど解説したスイッチを逆位相でON/OFFする方法を利用しています。
このように、「チャージポンプ回路ってなんだろう?」と思ったときに、
スイッチの使い方を知っていれば、簡単に動作を確認することができます。
スイッチの使い方を習得すれば、別のスイッチング回路の動作を理解することも容易になるでしょう。
まとめ
今回はLTspiceで、スイッチの使い方について解説しました。
LTspiceでスイッチを使ったことがないという人もいるかもしれませんが、
回路の動作を理解したいときに、意外と活躍する機会の多い部品です。
ぜひスイッチの使い方を習得することをオススメします。
※ 初心者向けのLTspice通信講座(返金保証あり)
LTspiceの初心者向け通信講座です。
通信講座を利用すると、LTspice習得の近道になりますね。
英語ですが、LTspiceのシミュレーション動画を見れるので、けっこう理解できます。
30日間の返金保証があるので、ノーリスクで始められます。
まずは、右クリックの「日本語に翻訳」を活用してカリキュラムを確認してみましょう。
» 初心者向けのLTspiceチュートリアル(Udemy)はこちら
※この講座ではLTspiceのソースファイルをダウンロードできます。