自励式PWMによるシンプルなD級ヘッドホンアンプ

はてブ数 2012/02/01電子::HPA

※2016/05/29 更に改良を重ねたVer2の回路を公開

※2014/10/13 改良版へのVersion UPキットが販売されてます

※2014/10/13 改良版を掲載。

※2012/12/12 推奨オペアンプを修正・追加

※2012/06/15 回路変更を追記(箇条書き下のほう)

※2012/05/08 プリント基板頒布しました。

※2012/03/05 長ったらしいので、略称「D級HPA」あたりで。

※2012/02/12 回路図を少し変更。補足を修正。


単3(単4)電池2本で動くD級ヘッドホンアンプです。しかもBTLではないので普通のヘッドホンで使用出来ますし、回路が非常にシンプルで作りやすいのが特徴です。

  • 約2MHzで発振する本格的なD級アンプ
  • オペアンプ2つに少しの外付け部品というシンプルな回路構成
  • ±1.2Vで動く低電圧動作
  • D級オーディオアンプではめずらしいDC直結
  • 10mA以下の動作電流(±1.25V電源時。無音なら正電源6.5mA、負電源6.5mA)
    • 電池が異様に持ちます。単3エネループなら連続1週間ぐらい使える
  • 単3電池か単4電池推奨(電池2本)*1

当ブログでは久しぶりの新型ヘッドホンアンプとなります。

*1 : 4本でも動きます。

目次

プリント基板頒布中です。

ことの発端

pwm-hpa-simple.jpg

strvさんのフルディスクリートD級アンプDPA01に触発されてオペアンプでD級アンプを作り始めました。はじめはDPA01と全く同じ原理の三角波比較による他励式でいじっていたのですが、ノイズや歪みとの戦いで苦戦。

自励式だとどうなるだろうかと考えていたとき、オペアンプ1個の+入力をGNDに落とした状態で、-入力にRC遅延をかけるだけで矩形発振する(非安定マルチバイブレータになる)という勘違いからできた回路になります。LTSpiceでLTC6253をシミュレーションしたとき矩形発振しなかったら、この回路は生まれなかったでしょう(笑)*2

*2 : LTC6253の位相回転や立ち上がり特性を喜ぶべきか、その情報を詳細に入力・再現してたLTSpiceに感謝すべきか(苦笑)

回路図と部品表

pwm-hpa-simple.png

部品番号部品備考
U1LT6203,LT1807,AD8028,LTC6247…1低電圧・高速オペアンプ
U2ADA4891-21低電圧・高速・高出力電流オペアンプ
FB1-2フェライトビーズ2MMZ2012R102A。2012サイズ/500mA
L1-2チップコイル 100uH/40mA/4.5Ω2GLCR2012T101M-HC
L3-4チップコイル 47uH/70mA/0.67Ω2CBC3225T470MR
VRボリューム 10KA(or 20KA)1RD925G等
R1-4音響用金属皮膜抵抗 4.7KΩ(or 10KΩ)4LMFQLGMFSを強く推奨。カーボン不可
R5-6抵抗 1Ω2カーボンでも何でも
R21-22抵抗 10Ω2カーボンでも何でも
C1-C4PPSチップフィルム 470pF4ECH-U1C471GX5
C21-C24OS-CON SEPC 2.5V/2700uF4固体コンデンサ/OS-CON等
C7-C8,C31-C34PSチップフィルム 0.1uF6ECP-U1C104MA5
C5-C6,C41-C44PPSチップフィルム 0.01uF6ECH-U1C103GX5
C51-C54PPSチップフィルム 1nF(1000pF)4ECH-U1C102GX5
  • オペアンプの選択は別項参照。
  • C1-C4,R3,R4はU1に可能な限り近づけて実装してください。
  • C41-44,C51-C54はなくても多分大丈夫ですが、C31-C34は省略せずにオペアンプに可能な限り近づけて実装してください。(オペアンプの裏面等を推奨します。C51等もつける場合は、ICに近い方からC51,C41,C31としてください)
  • (2012/05/09) U2出力の1,7pinとGND間に100pF程度のフィルムコンをつけると、音質が向上する模様です。(6/4)これをすると音場が潰れてしまいます。付けてしまった人は外してください。
  • (2012/06/29)ボリュームを省略する場合は、入力(L/R)と直列に1KΩの音響用入力抵抗を付けてください。
  • (2012/07/05)U2の駆動力に限界があるため、R5,R6を外したほうが音の広がりが良いのですが、代わりに音の雑味が増えます(少しガヤガヤします)。また、ヘッドホンとの相性で外すと酷くなることもあるかなという印象です。

回路のレイアウト例

pwm-hpa-layout.png

部品をどのように配置してわからない人は大体この通りに配置すれば間違えはありません。水色の線はGNDパターンです。銅箔テープがある人はもっと太くすると良いと思います。R1,R2はU2付近。

あとリード線は使わずジャンパー線で配線を。

回路図の補足と解説

  • フェライトビーズはつけなくても構いません(わずかに音質が劣化します)
  • L1-2は100uHでも150uHでも何でも構いません(差はありませんでした)。音質は落ちますが省略しても支障はありません。
  • コイルは電力用である必要はありませんが、電力用でも構いません。50mAも流せれば充分でしょう。
  • 「C41-C44(0.01uF)」「C51-C54(1nF)」は省略しても構いませんが、0.1uF(C31-C34)はフィルムコンを可能な限り付けてください(ICになるべく近づけて)。国内ならここでECPU 0.1uFが買えます
  • ボリュームは10KΩを推奨。20KΩでも構いませんが、50K以上は非推奨です。*3
  • C1-C8はフィルムコンであればECPUやECHUでなくても構いません*4
  • R1-R4は必ず音響用抵抗でノイズの少ないものを選んでください。特にR3,R4は負帰還をかけていますので、音質に直結します。

以下は回路定数や部品を変更したい人向け。

  • R1-R4は10KΩでも、4.7KΩより低くても構いません。
    • U1の出力は(負帰還がかかってないため)かなりハイインピーダンスになっています。外からのノイズが乗りやすくそれを防ぐためにU2の入力換算電流雑音の影響を受けにくくするためR1,R2でGNDに落としています。多分1KΩでも動作するとは思いますが、4.7KΩより下は試してません。低くなるほどノイズが減り明瞭感が向上しますが、電源ノイズとアイドル電流が増えるので気になる人は色々試してみてください。
  • R3-R4は10KΩでも構いません。詳しくは後述します。
  • ボリュームが10KΩならば、C1,C2は1000pFでもかまいません。
  • U2は矩形波を比較的綺麗に出せるADA4891-2を推奨します。
  • 面倒ならばU1,U2の電源を共通で1つにしても構いませんが、明らかに音質は劣化します。
  • コンデンサを個体コンデンサ以外に変更すると満足な性能がでない可能性があります。

U1の選択や回路定数の自由は高くありません。よく分からない人は必ず指定のオペアンプを使ってください

回路は簡単ですが初心者には部品レイアウトが多少難しいかもしれません。高周波回路なので、配置や配線が悪いとノイズが乗る等の問題が起こる可能性があります。レイアウト例を参考に、U2の出力から戻りラインのGNDが、それより手前の回路のGNDと絶対に混在しないようにしてください。

あと、おそらく苦労することになるので電源をレールスプリットにするのはおすすめしませんが、製作・動作報告は仮想GNDでのみ2件ほど届いてますので、ちゃんと作れば問題はなさそうです*5。またブレッドボードは不可能とまでは言いませんが、かなり無茶です。*6

*3 : これはC1-C2と共にローパスフィルターを形成するためと、高周波ノイズ(スイッチノイズ)が回りこむのを防ぐためです。

*4 : 実際、テスト回路のC3,C4はニッセイAPSです(苦笑)

*5 : MHzの矩形波が起こす電源変動を綺麗に分圧するのは大変(不可能)なので、音や動作は多少悪くなりそうな気もします。

*6 : 普通のアナログアンプじゃなくて高周波回路ですので……。ブレッドボード+レールスプリットだとこういう苦難があるようです(苦笑)

回路の原理

オペアンプによる矩形発振回路(非安定マルチバイブレータ)の基準点に音声信号を突っ込むことにより、直接PWM変調してそれを出力しています。ですから、音声信号に対する積分器も、三角波の生成もありません。

この回路の最大の特徴はまともな矩形発振回路ではないことです(苦笑)

オペアンプで回路を作ったりしたことのある人なら経験があると思いますが、オペアンプには位相遅れと言ってそれ自体元々発振しやすい要素があります。この回路ではそれを利用して、C3/R3のフィルタで位相を更に遅らせてフィードバックすることでオペアンプを位相回転させ、わざと発振させています。そのためU1に使えるオペアンプは限られますし、オペアンプにより発振(可能)周波数も限られます。

それだけでは、特定周波数のsin波となってしまうところですが、U2のコンパレーター兼バッファを用意することで波形を強制的に矩形波に整えPWM変調しています*7

*7 : LTC6247, LTC6253は非常に強烈なオペアンプでU2を省略して、この回路で1ピンから直接フィードバックをかけても矩形発振し、音もちゃんと鳴ります。最初はそうやってましたが出力負帰還に変えたらその方が音が良かったので現在はこの形に。

負帰還と周波数特性

原理で解説したとおり、負帰還部R3/C3で発振回路を形成しているのですが、同時に音声信号に対するフィードバックの役目もしています。ここの定数が発振周波数の調整をすると同時に、周波数特性の変更にもなっています(2つが一緒になっており、個別に調整できないのがこの回路の欠点です)。

C3=470pF, R3=4.7KΩ時の周波数特性

pwm-hpa-470p-4.7K.png

標準状態でも若干ハイ上がりになっています。発振周波数2MHz。

C3=470pF, R3=10KΩ時の周波数特性

pwm-hpa-470p-10K.png

ハイ上がりになりますが、聴覚上はあまり感じませんでした。人によるかも……。C3=1000pF, R3=4.7KΩでも同じ。発振周波数1.7MHz。

発振周波数の変更と意味

R3,R4=4.7KΩのままC3,C4を220pF程度にすると発信周波数が2.4MHzぐらいになります。周波数が高ければ高いほど音が良いように感じますが、少し音割れしやすくなりますのでお好みで選択してください。

オペアンプの選択と電圧変更

U1,U2ともの高速オペアンプ、U2に至っては加えて駆動力も必要です。動作確認の取れているオペアンプは次の通り。オシロで測れない人は非推奨品への載せ替えは大変だと思います。

  • U1。高速オペアンプで入力レールツーレールなら比較的何でも動く。ただし数十MHzレベルの帯域では難しく、100MHz以上の帯域と高いスルーレートが必要。
    • LT6203最推奨/100MHz/約1.2MHz発振)。一番音が良い
    • LT1807(推奨/325MHz/約2.0MHz発振)。好みでこちらも。LT6203より歪まない
    • AD8028(推奨/190MHz/約1.8MHz発振)。初期推奨品
    • LTC6247(推奨/120MHz/約2.0MHz発振)。
    • ※周波数表記は±1.2V/4.7k/470pF/U2=ADA4891-2時
  • U2。駆動力のある高速オペアンプなら大体なんでも動作はしますが、出力波形が崩れると音質が悪化します。また出力の正負バランスが悪いと大きなオフセットが出てしまいます。出力レールツーレールを推奨。
    • ADA4891-2(強く推奨/約1.8MHz)。出力波形が綺麗で動作が最も安定する。
    • LT1807(約1.5MHz)。どうやらこれでも問題無さそう。ADA4891-2と比べ、音が少し固く、SNは上、低音は弱め。波形が少しオーバーシュート。
    • LTC6253(約2.0MHz)。明瞭感が劣る。歪みやすい。盛大なオーバーシュート。
    • ※周波数表記は±1.2V/4.7k/470pF/U1=AD8028時
  • 補足
    • U1=U2=LT1807にすると音質が良いようです(1.5MHz)。やや不安定なのかキーンという音がすることもありましたが、他の組み合わせに比べ明らかに音質が優れます(2014/09/15。今聴き比べるとそうでもないようです)。LT1807は12.6V(±6.3V)まで使えますが、±1.2V以外はテストしておりません。

何MHzで発振させると一番いいのかはわかりませんが、フィルタが弱めなことや色々テストした感じから1MHz以上がよさそうです。あとは出力のPWM波形が崩れない範囲で……となります。電源電圧が変わると発振周波数は変動します。

同じオペアンプなら、矩形波さえ追従すれば周波数が高いほうが音が良いようです*8。あとU1、U2のノイズ特性が優れている(普通のアナログアンプとして使った時に音質が良い)ほうが音質が良い模様。

LT6203/ADA4891-2使用時、標準定数で発振周波数が1.2MHz前後になりますが、これ以上発振周波数を上げず、このまま470pF/4.7KΩのほうが音が良いようです。

その他の組み合わせはあまりテストしていません。オシロで波形見られれば一番良いのですが、オペアンプの組み合わせで音を調整する場合はC3/C4の容量を変更してみてください。同一構成ならば周波数が高い方が音は良くなりますが歪みやすくなります。歪みを取るなら周波数を下げてみてください。*9

Rail to Railとオーバーシュートの問題

この回路の帰還が正しく動作するためには、U1の入力電圧範囲にあらゆる信号が収まっている必要があります。U1が入力レールツーレールでないと音声信号の入力はもちろん、出力信号(の帰還)も正しく演算できなくなり、音が歪んでしまいます。

出力オーバーシュートの問題も同様です。出力波形歪みはPWMの理想から離れてしまうこともありますが、それでも負帰還のお陰で音声帯域内はさほど問題なく動作します。しかし、出力オーバーシュートによりU1の入力電圧範囲を超える出力が帰還されるとこれまた帰還を正しく処理できなくなり音が歪みます。

電源電圧の変更

電圧の変更は、電池4本(±2.5~3V)まではこのままで問題ありません。電圧があがるとオペアンプのノイズが増える(消費電流も増える)ので多少音質的に不利ですが、その分歪みにくくはなります。更に電圧を上げることはあまりおすすめしませんが、LT1807+LT1807なら難なく動くような気もします。試してはいません。

*8 : C3,C4=220pFとか色々、あまり検証してません。またこれが周波数なのかLPF(負帰還)の特性の変化によるものなのかも不明。

*9 : オペアンプの組み合わせによってはどんなに周波数を変更しても歪みが解消できない場合があります。

音が歪んで聞こえる場合 2013/01/17

回路図通り製作して音が歪んで聞こえる場合、考えられる一番の原因はオペアンプの組み合わせによるものです。オペアンプの項目でも述べましたが、U2はADA4891-2にすることを強く推奨します。C3/C4にて発振周波数を速くしている場合は、470pF程度まで下げて改善されるか確認してください。

また再生装置側との相性問題でボリュームを大きくした時にのみ歪みっぽくなることがあります。電源電圧の関係から音割れしているのでなければ、ボリュームの手前に1KΩ程度の抵抗(LGMFSや無誘導巻線抵抗推奨)を直列に挿入することで改善することがあります。特にボリュームレス仕様で製作する場合は、必ずこの1KΩの入力抵抗を入れてください。

ユメカゴさんからの情報によると、配線以外にもチップコンを溶かしてしまったときに音が歪むことがあるようです。詳しくはコメント欄を参照してください。

高音ノイズが聞こえる場合(再生機器との相性問題)

一番に考えられるのが実装ミスや部品レイアウト・配線がうまくいってない場合です。実装技術によるのでコメント欄などを参考に頑張ってください。

実装に問題がない場合、再生機器との相性問題が考えられます。再生装置がD級出力になっていたり、DACのオーバサンプリングノイズにあたる高周波成分を再生装置の出力フィルタが除去仕切れていない場合、PWM変調と残留雑音が組み合わさり再生音に問題が起こる場合があります。

回避策としては再生装置のスイッチ周波数と、アンプの発信周波数をずらして問題がない範囲に収めることです。周波数のずらし方はこの記事の他の部分を参照してください。

出力フィルターの特性

  • L3=47uH(ESR 2.4Ω)
  • ヘッドホン 40Ω+36uH(直列)*10
pwm-hpa-out-filter.png

音声帯域の平坦性を重視しました。ヘッドホンのインピーダンス等により異なりますが、信号のない100KHzぐらいにそこまで大きくないピークを作って*11、発振周波数は1MHzぐらいまで飛ばして減衰させる戦略になっています。

L3のESRを0Ωにしてもさほど変わらなかったのでパワーコイルを使っても問題はなさそうです。フィルタの特性にヘッドホンのインピーダンスがそれほど影響がないようになっています。

フィルターと音質の関係はそれほど検証していないので、音が良くなる方法みつけたとかありましたらコメントください。

  • パワーコイルは全く試していないので、もし高域に違和感を感じるようでしたらコイルと直列に1~2Ωの(音響用等の)抵抗を入れてみてください。なお、よりESRの低いコイルで追試した感じではパワーコイルのほうが音は良さそうな印象です。
  • 47uHではなく22uH~33uHあたりに下げると100kHz付近ピーク周波数が高域にシフトするので、そのほうが良いかも知れません。

*10 : D級アンプでよく純抵抗でフィルタシミュレーションしている人がいるけど、最低でも直列にコイルぐらい入れないと意味がないような……。

*11 : 0.1uFに1Ωを直列に入れているのはそのため。0.01uF側で高域の減衰を担保。

動作の様子

(1)U1の1ピン(出力)、(2)U1の2ピン(フィードバック)

pwm-hpa-PS1.png

(1)音声入力(U1の3ピン)、(2)出力波形(OUT-L。ヘッドホン接続時)

pwm-hpa-PS2.png

書き忘れましたが、アンプの増幅率は1倍です。*12

*12 : 負帰還部分を細工すれば増幅率を変えられますが、どうしたらいいかよく分からない人はこのまま使ってください。もしくはプリアンプを付けるのが良いでしょう。

音質について

いつもどおり定番の自画自賛しても良いのですが(苦笑)、今回は簡単につくれてしまう回路ですし、作ってびっくりしてみるといいよ(笑)ということで。

そういえば常に矩形発振しているので、電源だけ入れておけばエージングできます。1日も入れておけば充分みたいです。*13

*13 : 消費電流は6.5mAなので、単3だと一向に減らない……

改良版

pwm-hpa-simple2.png

片チャンネルだけ。ADCMP600は高速コンパレーターICです。これによって飛躍的に発振速度と音質が向上します*14。U2がADA4891-2の状態で10MHz程度になります。

更にU2に高速ロジックIC(バッファ)を使うことで、電池2本で30MHz25MHz程度で発振します。このロジックの中身はMOS-FETが2段ないしは4段積み重なったもので、高速なMOS出力段として使用しています。

出力段をMOSにした場合、オーバーシュートが激しいのでSBDを付けました。同じく出力段をMOSにした場合、R1は取り外した方が音がよくなります。

フィルタ部など細部を詰める必要がありますが、とりあえずこんな感じです。

音質とか

発振周波数上昇とADCMP600の性能のおかげで飛躍的に音質が向上します。悩ましかった高域の歪みっぽさは皆無になります。ADCMP600は2.4VからのICなのですが、±1.0Vでも動作しました。消費電流は「±1.2V 20mA、±2.4V 40mA」ぐらいです。電圧があがると発振周波数が40MHz程度まで上昇します。電圧では発振周波数はあまり変わりません。電池4本では音が歪みやすくなるようです。

ものすごく電池が持つ上に音質もすごいという。

バージョンアップ

pwm-hpa-verup.jpg

回路変更で基板を起こし直すのもめんどうなので、以前の基板で使用できる下駄を用意しました。問題なく動作しています。

長いことおまたせしましたが、2015/08よりBispaさんでバージョンアップキットとして販売して頂いています。

更に進化させたVer2もあります

フィルタ考察

  • L3は1~4.7uHぐらいでもよさそう。この値だとMLZ2012Nがよさそう。
  • L3を軽くするなら、R5は取ったほうがよさそう。*15
  • R3×C3の時定数を小さくして(例えばC3=100pF)発振周波数を速くすると音が良いけど、やっぱり歪むしノイズが乗る(ピアノ等)。

変更しても必ずしも良くなるわけではないのでフィルタ弄りたい人との情報共有目的です。

*14 : もっと速いコンパレーターICもありますが、消費電流や電源電圧の関係でADCMP600を選びました。ほかは試していないので、興味ある人は色々挑戦してみてください。

*15 : この状態だと出力にスイッチノイズが少し残りますが聴感上は問題なさそうです。

参考

更に改良を重ねたVer2の回路を記事にしました