ダイアモンドバッファの設計とトランジスタの熱暴走

はてブ数 2008/04/03電子::アンプ

アンプを作っていて出力段にごく普通のダイアモンドバッファ回路を作ったところ熱暴走してしまいました。どうして熱暴走は起こるのでしょうか?

ダイアモンドバッファの回路定数はどのように決めたら良いのでしょうか?

ダイアモンドバッファ回路とは

アンプの出力段によく使われる下に示すような回路を「ダイアモンドバッファ回路」といいます。4つのトランジスタが対称に配置される様子からダイアモンドバッファと呼ばれるようになりました。

エミッタホロワが2段構成になった増幅率1倍のバッファ回路です。この種のバッファ回路は高入力インピーダンス、低出力インピーダンスの特徴があり、オーディオアンプ等の最終段(出力段)によく利用されます。

この回路はドライバ段と呼ばれる1段目(2SA1015/2SC1815)と出力段と呼ばれる2段目(2SC3421/2SA1015)から成ります。ドライバ段のVbe(ベースエミッタ間電圧。以下同じ)と出力段のVbeが互いに相殺されキャンセルされ、入力電圧と同じ電圧が出力される仕組みです。

熱暴走の発生

dbuf_heat1.gif

入力も出力も接続せずこの回路に電源を投入したところ、100mA近い電流が流れました。それが数秒で200mA、300mAと増え、最後には急激に増え500mAを越えました。直流安定化電源の電流制限のおかげでトランジスタの損傷は免れましたが、あやうくトランジスタを破壊するところでした。

これが世に言うトランジスタの熱暴走です*1。熱暴走なんて数十W出力の世界だ、関係ないやと思っていたのですが考えが甘すぎたようです。さて、一体何が起こっていたのでしょう?

*1 : ちなみにCPUの熱暴走は発生原理が若干異なります。

ベースエミッタ間電圧(Vbe)と熱暴走

一般にトランジスタのベースエミッタ間電圧は0.7Vと言われています。ですがこの電圧は様々な要因で変化し、特に大きく影響するのが温度です。Vbeは温度が上昇すればするほど低くなります。これが熱暴走の原因です。

dbuf_heat2.gif

Vbe1*2とVbe2はほぼ等しくなりますが個体差や種類、ベース電流により差が出ます。今、Vbe1がVbe2より0.01V高いとしましょう。このときコレクタ電流(=エミッタ電流)は0.01V/0.1Ω=100mAも流れます。トランジスタには熱損失というものがあり、エミッタ(E)電圧で0.01Vを出力しているとき、コレクタ電圧との電位差5.99V×100mAはすべて熱として消費します。これをコレクタ損失といい0.6Wにもなります*3

  1. 自己発熱によりVbe2が低下する。
  2. Vbe1との電位差が増え、コレクタ電流がより増加する。
  3. コレクタ電流が増えることでより多く発熱する。

このサイクルを繰り返すことで、最後に異様な電流を流し、高熱と電流でトランジスタ自身が破壊に至ります。この現象が熱暴走です

dbuf_heat3.gif

熱暴走を防ぐためには、右図のようにVbe1とVbe2が互いにキャンセルするように熱結合をしてあげる必要があります。放熱板を共通にしたり、シリコングリスと銅箔テープ等で2つのトランジスタを熱的に結合します。

熱結合をすることで、2SC3421の発熱は2SA1015に伝わり、結果としてVbe2が低下する際、同時にVbe1も低下し熱暴走を防げます。実際試してみたところ、多少電流は増えますが200mA程度で安定し熱暴走は起きませんでした。熱結合は処理が面倒なので省略することが多かったのですが、大切さを思い知りました。

*2 : 説明のため符号の向きを変えてあります。

*3 : 1Wの抵抗に0.6Wの電力を消費させ続ければ、1分経つ前に熱くてさわれなくなります。0.6Wはそれぐらい大きな電力です。

回路定数を決める

熱暴走の説明が終わったところで、回路定数について解説していきます。回路定数の決定には主に次の要求があります。

  1. 出力電圧を十分に取り出せること。
  2. 抵抗やトランジスタの定格(許容コレクタ損失)を許すこと。
  3. 出力インピーダンスが低いこと。
  4. なるべく消費電力を小さくすること。

どれも密接に関係しているので回路設計は試行錯誤が必要になります。これらを念頭に定数の決め方について説明していきます。

R1とR2の決め方

出力電圧を大きく取り出すためには電源電圧が高いことはもちろんですが、見落としがちなのがR1とR2の値です。

入力インピーダンス(Ω)は「R1×ドライブ段hfe/2*4」決まるためR1はできるだけ大きい方がよいのですが、大きすぎると最大出力電圧が低くなってしまいます。

それを説明するために次の回路で実験を行いました。

dbuf_heat21.gif
dbuf_heat22.gif

入力電圧出力電圧
0.0V0.0V
1.0V1.0V
2.0V1.7V
3.0V2.6V
4.0V2.9V
5.0V2.9V
6.0V2.9V

この回路で、入力電圧を0V~6Vまで変化させ出力電圧を観察します。

ダイオードの順方向電圧とトランジスタのVbe電圧は互いにキャンセルするので、本来ならば「入力電圧=出力電圧」となるはずです。結果は表に示したとおり、出力電圧が2.9Vを越えるとそれ以上電圧がでなくなりました。出力が飽和しているのです。

上図で示したとおり、電流はA、B、Cのルートを通りますが、Dのルートは通りません。これはダイオードがあるためです。

ですからダイオードより左側が存在しない状態での出力電圧が最大出力電圧となります。このとき、Bのルートは「(6.0V-0.7V)/(1000Ω+10Ω*hfe)=約2.65mA」(hfe=100で計算)。Cのルートは2.65mA×hfe=約265mA。265mA×10Ω=約2.65V。計算上2.65Vが最大の出力電圧になります。実験結果はもう少し高く出てますが近い値です*5。ダイオードをトランジスタで置き換えても考え方は変わりません。

最大出力電圧はもっと簡単に計算できます。負荷抵抗は、ベース側からはhfe倍した抵抗値としてみることができるので

Rx = 負荷抵抗*hfe

最大出力電圧=(電源電圧-0.7)*Rx/(R1+Rx)

です。元々の回路はR1=220Ωであり、出力に接続する抵抗(負荷抵抗)を6~8Ω*6と考えていました。hfeを100と見積もり計算すると次のようになります。

5.3V*800Ω/(220Ω+800Ω)=4.15V

となり±4Vを出力出来れば十分であろうと定数を決めました。なお負荷抵抗が6Ωのときは3.8V、4Ωのときは3.4Vとなります。

実用時の注意

2SC3421ではなく2SC1815を使用した場合はもっと狭い範囲しか出力することができません。それはコレクタ電流(Cルート)が150mA程度で飽和してしまうからです*7。150mAで10Ωですので±1.5V程度が理論限界になり、実際には1V程度が限度でしょう。

トランジスタのコレクタ電流飽和はたまに見落とすことがあるので、設計時はよく注意してください。コレクタ電流は単純に「大きさ」が効きます。性能の良い小型トランジスタで電流を稼ぐためにパラレル接続するという手段もたまに使用されます。

*4 : 上側と下側が並列なので2で割る

*5 : Vbe=0.6Vで計算すると大体一致します。hfeも100とは違うでしょう。

*6 : エミッタ抵抗0.1Ωは負荷抵抗8Ωよりはるかに小さいので無視しました

*7 : 飽和電流付近ではhfeも低下します。

熱暴走対策

回路図でエミッタ抵抗(出力抵抗)は0.1Ωは十分に小さい適当な抵抗として決めたのですが、非動作時のコレクタ電流が多く電力の無駄になります。この抵抗を小さくする要請は、出力インピーダンスを小さくすることと、抵抗で消費され無駄になる電力を減らすことにあります。

この回路では、Vbe1とVbe2の電位差をエミッタ抵抗(R3,R4)で割ったものがアイドル時のコレクタ電流ですので、この抵抗を倍にすればコレクタ電流は半分になります。例えば、0.33Ω程度に引き上げてあげれば熱結合をしなくてもアイドル時の熱暴走は抑えられるようです。

0.33Ωのとき、Vbe1とVbe2の電位差を0.02Vとすれば、0.02/0.33=60mAがアイドル電流です。

ただし、動作時はもっとコレクタ電流が流れる(コレクタ損失が増える)ので、熱結合はしておいた方が良いです。

終段の許容損失

既に述べたとおりトランジスタのエミッタコレクタ間電圧(Vce)×コレクタ電流(Ic)がトランジスタの熱損失です。トランジスタには許容される損失の最大値が決まっています。2SC3421(pdf)は放熱板を付けないとき1.5Wが許容損失になります。

エミッタコレクタ間電圧(Vce)=電源電圧 - 出力電圧

であるため出力電圧によってトランジスタの損失は変化しますが、エミッタコレクタ間電圧が増える(出力電圧が減ると)とコレクタ電流は減るため(反比例)、電源電圧の半分のとき一番損失が大きくなります。

最大コレクタ損失=電源電圧/2*(電源電圧/負荷抵抗 + アイドル時の電流)

アイドル時の電流が(出力電圧に関わらず)常に流れることに注意します。

この回路では5.3V/2=2.65Vですから、アイドル電流60mA、負荷抵抗8Ωとすると、

2.65V*(2.65V/8Ω+0.06)=1.0W

となり、許容コレクタ損失を満たしていることが分かります。6Ω負荷でもokですが(1.33W)、4Ω負荷だと越えます(1.9W)。

アイドル電流のみのコレクタ損失

アイドル電流は出力電圧にかかわらず常に流れ続けます。

例えば+6を出力しているとき、負電源側の2SA1358のコレクタ-エミッタ間には6-(-6V)-0.7=約11Vの電圧かかります。アイドル電流を60mAとすると、このときの2SA1358のコレクタ損失は

11*60mA=0.66W

にもなります。これもまた許容損失を越えていないか注意が必要です。*8

*8 : 60mAというのはアイドル時のコレクタ電流を流しすぎ(いわゆるAB級と言われる動作方法)なので、通常はもっと少なくなるように設計します。

ドライバ段(初段)の計算

通常ドライバ段に流れる電流は大して多くないため定格越えをすることはありませんが、消費電流をみるために計算しておきます。

ドライブ段のR1とR2には、それぞれ 6V-0.7V の電圧がかかります。消費電流は、

5.3V/220 = 23mA

です。これがドライバ段のアイドル電流になります。片側に流れる最大電流は、

(12V-0.7V)/220 = 51mA

です。コレクタ電流とコレクタエミッタ間電圧は反比例の関係にあり、中間電圧の出すときもっとも電力を消費するのですから、トランジスタ1つにつき12Vの電位差で動いているため、単純に半分の電圧ということはできません。中間電圧とこの構成ではアイドル時(電源の片側から6Vの位置=0V出力)が一番コレクタ損失が大きくなります。

(6V+0.7V)*23mA = 0.15W

2SC1815の許容損失は 0.4W ですから問題ないことが分かります。

エミッタフォロワの問題/発振防止

エミッタフォロワの発振という問題があります。詳細は省略しますが、入力部に直列に「入力抵抗」を入れる必要があります。

100Ω程度で構いませんが、これを付けないと負荷よって発振してしまうことがあります。手元で試した範囲では、ないと発振してしまいました。発振すると大電流が流れ、大変危険です(回路故障の原因になります)。

ポイント

  • 最大出力電圧(電源の利用効率)を上げようとするとR1,R2を小さくする必要があり、ドライブ段のアイドル電流が増える。
  • 出力インピーダンスを下げようとするとR3,R4を小さくする必要があり、出力段のアイドル電流が増える。

ダイアモンドバッファ回路を作る際は、電源電圧の半分ぐらいを出力電圧として見積もると作りやすいくなります。左の回路図は定数を変更したものです。アイドル電流が多すぎるので調整し、発振防止の入力抵抗を付けました。6~8Ω負荷ならば3Vぐらいまで出力できます。

dbuf_heat4.gif
dbuf_heat5.gif

今までの回路(左図)では「Vbe1>Vbe2」として考えましたが(手元で作成した限りそうなりましたが)、これは必ずしも成り立つわけではないので右のような回路がよく使われます。Raに発生する電圧分だけVbeより電圧を上げて

Raの電圧=R3の電圧  Rbの電圧=R4の電圧

として調整された回路です。Vbe1=Vbe2ならば、Raの0.01VがそのままR3にかかります。*9

この定数変更した回路もですが、このまま使うのはあまりお勧めしません。ヘッドホン駆動用ならばR3=R4=数Ω程度にして使うとよいでしょう。スピーカー駆動用にR3やR4を1Ω以下にしたいとき、基本形のままでは不都合が多すぎます(アイドル電流の問題等々)。

きちんと作るのならばバイアス電圧調整回路を付けたり、または素子数を増やしてアイドル電流を減らすように作るべきです。例えば、出力トランジスタをダーリントン接続にするだけで、R1やR2に対する制限(ドライブ段に10mAは流しすぎです)が緩和されるので(もちろんVbe×2のバイアスが必要になるのでこのままではうまく動かない)定数は決めやすくなります。

*9 : Vbeには誤差が付き物です。

さらに賢い方法

dbuf-crd.png

低電圧ヘッドホンアンプのバッファ段のように、定電流ダイオードを使うのがより賢い方法です。終段の最大電流と終段トランジスタのhFEだけ考えれば済むため、設計が非常に容易になります。おまけに、定電流ダイオードを使用すると広い電源電圧にも対応できるようになります。

いわゆるバッファICは、みんなこういう構成になっています。

参考文献

非常に丁寧に書かれた本です。キルヒホッフの法則が分かっていれば読むことができます。アナログ回路の基礎的事項やコレクタ損失、名前は出てきませんがダイアモンドバッファの話題も出ています。