2022年12月3日土曜日

【にわかAVマニアの明細】差動ヘッドホンアンプ設計で考えた事

差動ヘッドホンアンプ設計でわたしが考えた事をダラーっと書きます.ロストテクノロジーであるアナログ回路設計者がどんな事を考えているのかを書き遺します.

なんで差動HPAをつくるのか?
自作DACが差動出力なので面白いかなと.
あと、世の中はスピーカーで聴くよりもヘッドホンで聞く人の方が多いみたいなので.

お値段的には
とりあえずコミケで売る.儲からなくていいが、赤字は困る.売値¥1000.
アセンブリとケースは自分でやるから外注しない.部品代だけで¥1000が目標.

目標SPEC
数ボルト出力.負荷は32Ω以上.完全差動.歪率1%未満.SNRはそれなり.
帯域20~20kHz.ケースあり.

評価機器はあるか?
オシロはあるが、スペアナもオーディオアナライザも無いので歪率を測定できない.
そこで、Low-noise ADCを自作して、PCでフーリエ変換しTHDなどを計算する.

回路構成は?
お値段安いし、ディスクリートカッコイイし、NFB浅いのカッコイイし....
でも歪率がクソでディスクリート回路は捨てた.
それで、ハイパワーopampで作る事に方針転換した.お値段的にはキツくなる.
まずAD8532で作ったけど歪率が悪いので捨てて、LME49726に変更

以下はLME49726の設計を説明する.

なぜAD8532やLME49726なのか?
秋月で売ってるから.
あと、円安でaliexpressの価格優位性が減ったから.
どちらも秋月で@150ぐらいで入手可能.
AD8532はSOPでLME49726はSSOPとpackageが違うので置き換えはPCB作り直しが必要でめんどくさい.

LME49726のdatasheetをあまり読まない
datasheetによると電源電圧は5V maxのレールtoレール.R2Rというのは、信号振幅を0~5Vまでフルスイングできる意味.しかしR2Rってきっと設計上の無理が祟って音質悪いんじゃないのかと思ってるので嫌いなんだけどしかたないので採用.
出力電流は350mA maxなので合格.ちなみにJRCにも高出力電流OPAMPがあるけど32Ωをドライブできるほどじゃないので採用不能.トランジスタpush-pullで電流ブーストするのは基板面積に余裕がないので不採用.
他にも留意すべきSPECはあれど、どーせ他の選択肢はないのでロクに読まずにプリント基板を設計する.出たとこ勝負.

いきなりPCBをつくるのか?
昔はプリント基板を起こすのが高価だったので手作り試作してからPCBを起こしてたけど、今ではJLCPCBで最安値¥500ぐらいでPCBを作れるので、机上設計とSPICE simでいきなりPCB作っちゃう.
SPICE simで確認できるのは、帯域とゲインとDCの誤りぐらいで、歪率は全然アテにならない.作ってみなけりゃ歪率はわからない.

PCBは2層か4層か?
ベタGND/電源を容易に実現できる4層が好ましいけど、お値段が高いので2層で作る.
2層の場合は、A面が配線、B面はベタGNDにするのが基本で、やむを得ない場合のみB面配線を許す.
ただしそうするとB面GNDが劣化するので、GND VIAをたくさん打ち、A面GNDで架橋して補強する.音声帯域なのでこれでも問題ないだろう.
PCBメーカーの都合を考慮すると、穴数が多い基板はドリル工程の時間が延びるから敬遠したいはすだが、JLCPCBは穴数が見積条件に入ってないんだ.なんでだろ?

PCBサイズは?
必ず100x100mm以下にする.理由は、JLCPCBのお値段が100mmを超えると割高になるから.
最終的に98x85mmなんだけど、このサイズは過去にDDCを作った時のサイズで、取付穴位置などを含めヒラサカ的にdefactoサイズになっている.

電源構成は?
元は12VのACアダプタ.
シリーズREGで9Vと5Vを作る.
SW REGを基板上に置きたくないからマイナス電源は使わない.
OPAMPを単電源で使う.

回路
回路図をこちらに置いとく.

電源回路
↓ACアダプタのポピュラーなコネクタなので2.1mmDCジャックを使う.
THは電解コンへの突入電流を減らすためのNTCという部品.突入電流で12V ACアダプタが負けて起動しないことがあるのでなるべくそういう事故を避けるのがNTCの目的.完璧とは思えないが.
↓D1 Schottkyは、逆極性ACアダプタを挿して焼損するのを防止するため.通常ダイオードでなくてSchottkyなのは電圧降下が少しだけ小さいから.
NTCもSchottkyも電源の質を落とすことになるけど、それは甘受する.
↓9Vと5Vは安っちいREGで、特にLOW NOISE品というわけではない.
REGのパスコンは0.1uFとか1uFとかが多いと思うけど、もっと大きな22~100uFの積セラを1個載せるだけにする.電解コンは巨大なので乗せたくない.
REGってtanδが少ないパスコンだと無負荷時に発振する可能性が無きにしも非ずなので一応それには注意しとく.
プリント基板面積に余裕がないのでREGはB面にレイアウトする.

単電源OPAMPの中点電圧
約4.5Vと、約2.5Vを抵抗分圧で作る.
後述する、9V電源のOPAMPと、5V電源のOPAMPの中点電圧である.
高インピー箇所なのでバッファ必須というわけではないのでバッファはしない.
追記:ここにバッファを設けるべきか否か?
設計者の性格が出るので興味深いので掘り下げてみたい.
わたしは攻めの設計が好きなので、ここにバッファを設けないのが粋だと思うんだ.
中点電圧の性能上の着眼点は2つ.
 1)LRチャンセパを悪化させない事
 2)電圧源インピーダンスの低さをどうやって担保するか?
1についてはCRフィルタでLR間の漏れを十分に抑圧できればよい.
Lch=100Hz、Rch=1000Hzで動いているときにRchに100Hzが漏れているかどうかのsimを行った.sim結果問題なし.
2について考える.
この中点電圧に求められるインピーダンスは、
 DCインピー:アンプトータルはDC cutだから高インピーでgainが狂っても問題ない.
 ACインピー:低い必要がある.もしも高インピーだとgainが狂う.
抵抗分圧の行った先には100uFがあるので、ACインピーの低さはその100uFで担保される.
仮に、ここにバッファを設けたとして、何が改善されるだろうか?
バッファとはエミフォロかOPAMPの電圧源使いだろう.DCの低インピーさを増強できるのはその通りだがそもそもここにDC低インピーは求められていない.ならばバッファは高い周波数までACインピーを低く保てるとでも? いやいや、結局のところバッファoutにCをつけてACインピーを補うことになる.つまり悲しいかな、ここにバッファを設けても利が無いのである.ゆえにバッファは不要という算段だ.

LME49726の回路
8pin SSOPに2回路入っているOPAMPで、電源は5V.
ヘッドホンの32Ωをドライブするための電流増幅アンプで、最大電流350mA.
差動出力なので+と-で2回路使う.
それがLR 2chなので2個使い.秋月で@140なので2個で¥280で痛い.
これだからOPAMPじゃなくてディスクリートで作りたかったんだけどな.
差動入力である.前段から来る差動信号を正逆にして+アンプと-アンプを形成する.抵抗は10kΩで統一したが、100kΩだと空間からAC50Hzノイズを拾いやすくなるので嫌気した.ハイエンドオーディオでは1kΩ付近を使う回路もあるが、全体のバランスを考慮してそこまではしない.
出力に直列のR2の意図はshort時過電流保護だが0Ωにしとく、LME49726には電流制限機能があるのでshort保護はそれに任せる.それに、直列に10Ωでも入れようものならダンピングファクタが悪化してしまい、そんなアンプは嫌すぎる.
BTL接続なので出力のコンデンサは理論的には不要だけど、万が一でもヘッドホンを焼損するようなことにならないようC16 680uFでDCカットする.680uFというと異様に巨大な感があるが、負荷32Ωだとすると、680uF-32Ω-680uFでカットオフ周波数14Hzになる.小さな負荷抵抗を前提とする故に680uFが妥当となる.
出力をGNDに落としているR23 1kΩはヘッドホン端子の無信号DC電圧をGNDに固定する役目.これが無いと680uFにとって電圧極性が定まらず困ったことになる.1kΩでなくて10kΩでも良さそうだが、power offした直後に680uFというちょっち大き目の電荷を速やかに放電させたい色気も少しあるので1kΩにした.
単電源5Vで駆動するので、中点電圧を与えるため+入力端子に2.5Vを与えている.
feedback抵抗にパラってあるC6は20kHz以上の帯域を緩やかに落とすために在る.定数はあとで決める.
電源の470uHと4700uFは5V電源のフィルタであるが、通常はこんな派手な電源フィルタを搭載しない.その理由は歪率改善のためである.LME49726は負荷抵抗が小さいときにPSRRが劣化するようで歪率が悪化する.それを回避する電源フィルタ.
電源投入ノイズを除去するためのmuting回路は設けない.

出力端子
差動ヘッドホン端子のdefactoは定まっていな様子だが、4.4MMジャックが今後主流になっていく方向性と考え、当HPAにも採用した.日本でPENTACONN純正品を買うと@1000とかするので、中華通販で@150ぐらいの模造品を買った.
シングルステレオ出力も装備する.こちらは3.5MMジャック.

入力のOPAMP回路
大量に手持ちしているuPC842という何の変哲もないSOPサイズのOPAMPを使う.手持ちという意外の採用理由はない.
本当はDIP packageにしたいが、基板面積的に厳しいのでDIPはやめた.
このOPAMPの役割は、ボリウムとLME49726の間のバッファである.LME49726が差動INなためゲインを10kΩで決めている.そこへボリウムを直結するとゲインが狂ってしまう.インピーダンスを縁切りするため、嫌だけどバッファが必要になってしまう.
uPC842はレールtoレールではないので、信号電圧3Vppを通すとなると電源電圧5Vでは心もとないので、電源9Vで使う.
中点電圧は約4.5Vを+入力へ与える.
中点電圧4.5V→同2.5Vへカップリングする都合で、DC縁切りのためC13 1uFが必要になってしまったのは残念だ.

4連ボリウム
差動ステレオ信号は4本なので4連ボリウムが必要だ.しかし4連は流通量が少ないし高価で困る.そこで、2連VRを連結して4連化した.このおかげで差動HPAを設計できたと言ってもよい.

コンデンサの選定
3種類のコンデンサを使い分ける.
1)信号が通る場所は基本的にフィルムコンを使う.ただし無誘導巻きフィルムコンではない.無誘導巻きは価格が高いので敬遠した.
2)信号が通る場所であるが例外的に終段の680uFは電解コンである.ここばかりはフィルムコンはサイズと価格的に無理だ.
3)DC電圧箇所には積セラを使う.積セラは印加電圧に依存して静電容量が変化するのでオーディオ信号には使う気がしない.しかし、DC電圧箇所には積セラを使ってもOKとする.それに積セラは価格が安い.

抵抗の選定
オーディオ用抵抗は使わない.
SMDの2012を使う.1608は小さすぎて半田付けが面倒なので使わない.

アートワーク
自分でやる.外注なんか金額的にありえない.CADはEagle6を使う.
リアパネルが入力、フロントパネルがヘッドホン出力という流れ.
音声信号の流れはこんなかんじ.なるべくまっすぐに流したいが、VRで曲がりくねってしまうのはやむなし.
VRを基板の奥に配置し、3DPで作ったシャフトでフロントまで延長する.

ケース
3DPで自作する.樹脂使用量は100gぐらいなので原価は¥100ぐらい.

かるーく部品代を考えてみる
LME49726x2 ¥280 秋月
4700uFx2   ¥200 秋月
470uHx2   ¥140 秋月
PCB     ¥100  JLCPCB(DHCは除くとして)
VRx2     ¥100 中華
1uFx8     ¥150 aitendo
4.4MMJACK  ¥150 中華
3.5MMJACKx3 ¥20 中華
ケース     ¥100 自作
他は手持ち部品なので無視
合計で¥1240  ←目標オーバーで死亡
LME49726とLCフィルタが癌である.fuck!
これだからディスクリートでやりたかったんだが.

えいめん

ーーーーー
読者さんからの指摘への回答コーナー

●電源にパスコンついて
平坂さんの回路には100μFがついていますが、自分は発振対策で0.1μFとかは必ずつけていました.

回答:下記の3つの100uFのことですが、これ積セラなんです.発振を察知したら10uF,1uF,0.1uFと調整します.あと需要点には別途Cあります.

10 件のコメント:

  1. 中点電圧を抵抗分圧だけで作っておられるようですが、オーディオ単電源でオペアンプを使う時には分圧した電圧をオペアンプのボルテージフォロアを使ってインピーダンスを下げる事をやっていました。
    対応すれば今よりL/Rのクロストークが向上するはず・・・かも。
    昔オーディオ系の仕事をやっていたとき、片チャンネルにMAX信号を入れて逆側を無音にしてボリューム全開で聞くと・・・・・・・逆チャンネルの音が聞こえて怒られました。(>o<)
    先輩に言われてリファレンス電圧部分にオペアンプを使うと・・・・聞こえなくなりました。
    アナログは電源、GND以外に、リファレンス電圧のノイズ除去と分離も重要です。
    パスコンはとりあえずあちこちに作ります。
    不要であれば未実装にすればOK!

    返信削除
  2. 見直したら、見落としていた。
    レギュレータには必ず出力段に発振防止用のチップコンデンサの場所を確保しましょう。
    参考回路図とか見ると出力側にコンデンサを設置するようにあると思います。
    昔仕事で、作った基盤が不安定でデバッグしていたのですが、
    本来安定しているはずの5V電源がものすごくふらついていました。
    その時には対策方法がわからなかったのですが、出力側にコンデンサがついていなかったんです。
    マイコンではなくオーディオ回路なので、発振する事はないと思いますが、試作時には部品点数の制限がなければ、コンデンサの場所を確保しておくとよいです。

    返信削除
  3. 平坂さんの回路には100μFがついていますが、自分は発振対策で0.1μFとかは必ずつけていました。
    オシロで見ると電源の波形の幅がちょっぴり広めに・・・・・発振していました。
    特性の低いオシロだと見えにくいのですが、職場にあった高いオシロだと発振している波形が見えました。orz

    返信削除
  4. >ロストテクノロジーであるアナログ回路設計者がどんな事を考えているのか
    私も昔は、オーディオ系の設計者だったので、興味深く拝見させていただいております。

    >ここにバッファを設けないのが粋
    この辺は、本当に設計者の趣味が出てくるところですね。私も昔、いろいろと調べたことがありますが、教科書にはよく、
    ・抵抗2本で作った中点電圧に、OPAMPのバッファを入れる
    回路が載っていますが、あんなものは無くても、ちゃんと動きます(笑)
    昔設計していたアンプは「コストダウン命」だったので、単に「抵抗2本」だったのですが、ある時、
    「ホントに、こんなんで大丈夫なのか?」と思って、イロイロ入力を変化させながら、オシロスコープを繋いで観察していたのですが、実際に、ここの電圧が
    「目に見えるほど変動」することはありませんでした。
    ※理論上は、入力変動に従って「AC的な変動」は、ある筈ですが、オシロで見たくらいではわかりません。あと、
    「チャネルセパレーション」とか言われてますが、それならば、
    「チャンネル毎」に、中点電圧を作ればいいだけです(笑) 別に、チャンネルごとに作っても「抵抗2本」(差動アンプなら、最大6本)増えるだけです。(パスコンは、別途要りますが)
    「チャンネルごとに中点電圧が違って」も、何の問題もありません(笑)

    LME49726の output に付いてる、680uFは、「シングルエンド用」でもあるのですね。
    (コストダウン的には、上手い方法と思った。ちなみに、回路図上で、コンデンサの記号が左右で違います(笑) ちょっと気になりました。回路的には関係ないですが、というか、なんでこんなに「何種類も」コンデンサの記号があるのかが謎。)

    返信削除
    返信
    1. >回路図上で、コンデンサの記号が左右で違います

      あ、これたぶんPCBのマクロが微妙に違うわー、ぎゃふんだす

      削除
    2. その場その場のCR定数で決まるインピーダンスや帯域をギリ狙いするのが基本的に好きです.

      逆に片っ端からバッファ入れまくったり、温度補償しまくったり、ほとんど遊びでゆるゆる設計やったこともあります.20歳代前半のころw

      削除
    3. >「何種類も」コンデンサの記号

      eagleのライブラリに、US規格、EU規格、有極性、無極性などいろいろあって、それらの回路図記号がバラバラなんです.なんだかなー

      削除