トランジスタのスイッチングは、マイコン等の出力ポートの出力電流が小さすぎて、直接駆動できない負荷を電流増幅させて使用するときに多用されます。回路図を下記に示します。
毎回、悩むのはベースの電流をどのくらいにしたら、適切にコレクタ電流Icを流すことができるのか? ということです。
ポイント
結論:ベース電流×hFEの値が、必要なコレクタ電流の3倍となるよう設計ください。
最低でも2倍は絶対必要です。
以下にその理由を、シミュレーションを交え説明します。
目次
1 コレクタ電流とベース電流の関係式
トランジスタのベースに流す電流IBの値と、コレクタ電流Icの関係は下記に示されます。
Ic = hFE×IB -----------------------------(1)
IB= I1-I2=(V2-0.6)/R3 – 0.6/R2----------(2)
2 シミュレーション
ここでもう少し具体的な数字でスイッチングの動作の特性を見てみましょう。
マイコンからの出力電圧V2を5Vとし、R3を変数にして次の回路をLTspiceを使って作成しました。この回路でR3の値とコレクタ電圧(Vout)の関係をチェックしてみましょう。
トランジスタをローム社の2SC4081、V1、V2の電源は5V、R1は220Ωとします。
コレクタ電流は 5V/220Ω =23mA となります。
ここで異なる抵抗値の抵抗R3を付け替えながら、各抵抗値におけるトランジスタのコレクタ電圧をシミュレーションするためにステップ解析という方法を使います。
ステップ解析をするために、抵抗R3の素子値の定数を変数化します。抵抗R3を右クリックします。通常は”Value欄”に定数を入力しますが、今回は変数化するために{VR}と入力します。これで「VR」が変数となります。このように、定数を変数化するために、LTspiceでは変数には必ず中括弧{}で囲みます。
次に回路上でキーボードの”s”、またはツールバーの「.op」をクリックし、”Edit Text on the Schematic”を表示させ、”SPICE directive”にチェックがあることを確認してから、.stepコマンドを記入します。今回は”.step param VR 10k 70k 10k ”と記入しました。これは、変数VRを10kΩから70kΩまで10kΩ刻みで変化させるコマンドです。
シミュレーション設定は
メニューバーの[Simulate]から[Edit Simulation Cmd]をクリックすると、「Edit Simulation Command]ダイアログボックスが表示されます。このダイアログボックス内の[Transient]タブで以下の様に設定します。特に時系列で結果を見たいわけではありませんので時間はどれだけでも構いませんがとりあえず0.5sとしておきます。
以上で設定は終わりです。早速シミュレーションしてみましょう。
以下の各トレース線が各抵抗R3の値の時のコレクタ電圧です。各電圧のラインに抵抗値の注記を付加しておきました。
R3が10k、20kΩの時はコレクタの電圧が十分下がって、スイッチングとしての性能を果たしていますが、30kΩになるとドライブ能力が足りないため、コレクタ電圧が0.6Vと少し浮いてしまっています。この傾向は40kΩ以上になるともっとはっきり表れ、コレクタ電圧は2.5V以上になってしまっています。
3 ベース電流とコレクタ電流
今回のシミュレーション結果を第1項に記載した(1)(2)式に照らし合わせてベース電流とコレクタ電流の関係を見てみたいと思います。
計算に当たって、各トレースの電圧を抽出したいと思います。
今回のシミュレーションでは.measコマンドを使用したため各トレースの電圧がわかります。
使用方法は、回路上でキーボードの”s”、またはツールバーの「.op」をクリックし、”Edit Text on the Schematic”を表示させ、”SPICE directive”にチェックがあることを確認してから、.measコマンドを記入します。このコマンドは「.measure」と書いてもOKです。指定した電圧や電流を測定するコマンドです。
今回は” .meas trans max V(Vout)”と記入しました。これで計算結果の値を所得できます。
シミュレーション終了後、右クリックを押し、”View”を選択、そして、”SPICE Error Log”を選択します。
そうすると、以下のwindowが現れます。各トレースの最大電圧が記載されています。今回のシミュレーションでは、値は一定のため最大でも、最小でも、平均でも答えは同じです。
上記の値を使って
(5V-コレクタ電圧)/220Ω
からコレクタ電流を算出し、直流電流の増幅率 コレクタ電流/ベース電流 を算出したものが以下の表となります。
R3抵抗値(kΩ) | ベース電流(mA) | コレクタ電圧(V) | コレクタ電流(mA) | hFE |
10 | 0.434 | 0.097 | 22.286 | 51.35 |
20 | 0.187 | 0.136 | 22.109 | 118.23 |
30 | 0.105 | 0.604 | 19.982 | 190.91 |
40 | 0.064 | 2.51 | 11.318 | 178.24 |
50 | 0.039 | 3.666 | 6.064 | 156.28 |
60 | 0.022 | 4.396 | 2.745 | 122.93 |
70 | 0.011 | 4.817 | 0.832 | 78.69 |
いかかでしょうか。狙い通りのコレクタ電流が流せているのは抵抗の値10kと20kの時だけです。また、30k以上の条件ではコレクタ電圧が不飽和 (VBEに電圧をもっている状態)で、hFEが高くなっていますね。
ちなみにメーカのカタログ表記とhFEのコレクタ電流による変化のグラフを以下に示します。
直流電流増幅率 (hFE) 120 ~ 390 条件VCE = 6V, IC = 1mA
グラフからコレクタ電流1mA時が一番、hFEが高いことが分かります。また、VCEは不飽和状態の6Vです。シミュレーション結果からも分かるように、カタログの記載値は、一番hFEが高いところで表示されています。
先ほどの表でいうとR3の値が30k、40kΩあたりです。翻って、使う領域ではhFEは1/2~1/4になっているのが分かると思います。
4 まとめ
我々がスイッチングとしてトランジスタを使う場合は不飽和状態で使うことはありません。
従って、上の表からも分かるようにhFEは、1/4~1/2倍と思って設計する必要があります。これを誤ると、トランジスタが発熱し、故障の原因となります。
ちなみにこのトランジスタを使用する場合に考慮するhFE値は、カタログ表記のmin値の120で、それに温度による低減と、コレクタ電流による低減を加味した値が、計算上のベース値となります。家庭で使用する機器でこのトランジスタを実装する場合は、周囲環境にもよりますが、概算で120×0.9=108 です。 したがって、実使用ではhFEは36となります。