2019年12月20日金曜日

電流帰還パワーアンプの製作 (3) 完成、測定

過去2回の記事で紹介してきたアンプをケースに入れました。
最初はタカチ MB30-12-20を使うつもりだったのですが、節約のためにもうひと回り小さいMB25-10-18(W250, H100, D180mm)に変更したらかなりギュウギュウ詰めになってしまいました。

前から
文字はテプラの透明なテープを使って入れました。

後ろから
入力はRCA2系統、3.5mmミニジャック1系統です。スマホにも手軽に接続できます。

上から
小さいケースですが、一応トランスがアンプ基板に与える影響を最小化するように配置を考えたつもりです。

左から
電源のすし詰め感がたまりません。一番好きなアングルかも


右から
左側と打って変わってスカスカです。

全回路図はこちら。



-----

さて、このアンプの右ch出力に8.2Ωの抵抗を接続して、いくつか測定をしてみました。
以下のオシロスコープ画像のすべてにおいて、黄色の波形がアンプへの入力、緑が出力です。

  • 矩形波応答


0.5Vppの10kHz 矩形波を入力して出力を見てみました。
オーバーシュートやリンギングは見られず、きれいな波形です。

  • 最大出力


最大出力電圧は45Vpp程度で、このときの入力は約5.9Vpp (2.1Vrms) でした。クリップさせたときの波形も素直で問題なさそうです。
最大出力は約30W@8Ωということにしておきましょう。

  • スルーレート


高速な矩形波を入れてスルーレートを見てみました。
大体100-120V/μs程度で、そこそこ速いほうではないでしょうか。

  • 周波数特性

FGとオシロスコープを組み合わせて周波数特性を測定しました。スペアナがあればいいのですが…


可聴域は特に問題なくフラットです。矩形波応答からも想像がつく通り、高周波でのピークも無さそうです。-3dB帯域はおおむね1.7Hzから800kHz程度です。
手持ちのFGの発振周波数が2MHzまでなので、残念ながらこれ以上の周波数は測定できませんでした。

  • 出力DCオフセット

DMMとパソコンを接続して2秒毎に20分間自動で測定・記録を行いました。


電源を入れた直後は-45mVほど出ているものの、3分程度で完全に落ち着き、以降はせいぜい2mV程度のぶれで収まっています。全く問題ありませんね。

-----

肝心の音質も良好のようで、長く使えるアンプになりそうです。

2019年12月13日金曜日

電流帰還パワーアンプの製作 (2) 周辺回路

前回の記事ではパワーアンプの回路を紹介しました。
今回は電源やスピーカー保護などの周辺回路を紹介します。

【電源】

18V 3A×2回路のトランスが偶然余っていたので、これを使って伝統的なトランス式の電源を作りました。ショットキーバリアダイオードブリッジを2個使って正負別に整流し、3300μF×14(計46200μF)の電解コンデンサアレーで平滑します。無負荷時の出力電圧は±25V程度になりました。



秋月電子で1個50円の激安電解コンデンサを使ったので、容量のわりに安上がりでした。基板の両面にコンデンサを実装することで面積を削減しています。

コンデンサの容量がこれだけ大きいと電源を入れたときの突入電流が心配なので、突入電流抑制回路を取り付けることにしました。電源投入直後は47Ωの抵抗を通じてコンデンサを充電し、しばらく後にマイコン制御のリレーで抵抗をバイパスするという回路です。
電源の2次側にあまり余計なものを入れたくなかったので、1次側に付けてみました。


電流制限用の47Ω抵抗には10Wのセメント抵抗を用いており、電源投入時には瞬間的に定格を超えることが予想されますが、まあ大丈夫だと思います(アマチュア特有のガバガバ設計)。リレーがONしてからは、抵抗での電力消費はほぼゼロになるはずです。
リレーは本来1回路で良いのですが、偶然2回路品の手持ちがあったので、ON時の接触抵抗を少しでも小さくしようと接点を並列にして使ってみました。ちなみに、リレーの接点を並列にしても開閉容量を2倍にはできないので要注意です(参考: オムロン, リレー接点を2個、並列に接続すると開閉容量は2倍になりますか?
 https://www.fa.omron.co.jp/guide/faq/detail/faq02765.html)。

【スピーカー保護回路】

アンプの故障で出力に大きなDC電圧が出てしまったときにスピーカーをアンプから切り離す回路が必要です。DC検出にはTA7317PやμPC1237HAなどのICを使う手もありますが、今回は少し違う方法を取ってみました。


アンプの出力に適当なCRでLPFをかけたあと、両極性型フォトカプラに入力します。アンプの出力にDCが出てくるとフォトカプラ内のLEDに電流が流れ、回路図中のDC_detect端子の電圧が下がります。
簡単かつ確実な回路で、入出力が絶縁されているのでBTLのアンプにも使いやすいです。フォトカプラの出力をさらにトランジスタで受けてリレーを駆動することもできると思いますが、今回はそうはせず、マイコンでDC_detect端子の電圧を見てリレーを制御します。
スピーカー保護リレーには、機械式リレーではなくMOS FETリレーを使いました。


MOS FETリレーの詳細については以前の記事(スピーカー保護用MOS FETリレーの製作と実験)を参照してください。

【マイコン】

Arduino Pro miniの中華互換品を使ってみました。1個300円ほどで買える便利なマイコンボードです。


このマイコンでは以下のような制御を行います。

  • アンプ出力のDC検出

上で紹介したフォトカプラによる検出回路の出力を監視します。デジタル入力ではなくアナログ入力(ADC)を使うことで、小さなDCオフセットも検出できます。

  • アンプ出力リレーの制御

電源を入れてから3秒後にONします。アンプ出力に異常なDCが検出された場合は即座にOFFして、再度電源を入れなおすまではONしません。

  • 電源の突入電流制限リレーの制御

電源を入れてから1秒後にONします。

  • パイロットランプの制御

正常動作時は点灯、ミュート時は低速点滅、異常検出時は高速点滅します。

-----

次回はアンプ基板と今回紹介した周辺回路をケースに組み込んでちょっとした測定を行います。

電流帰還パワーアンプの製作 (1) アンプ回路

サブシステムに使っているLM3886アンプを置き換えるべく、ディスクリートパワーアンプを自作しました。

回路図(1ch分)はこちら。せっかくなので最近流行の電流帰還アンプにしました。


素子数はそこそこ多いものの、定電流回路やカレントミラーを除いて考えるとそんなに複雑な回路ではありません。エミッタフォロワ→1段増幅→3段ダーリントンという構成です。ゲインは約18dBです。
電源電圧の変動を抑えるため、終段以外の電源にはリップルフィルタを設けました。
回路図左上のエミッタフォロワの定電流回路に付いている半固定抵抗RV1は出力のDCオフセット調整用、回路図中央のRV2は終段のバイアス電流調整用です。

この回路を2つ載せたステレオアンプのプリント基板を作りました。


サイズは秋月電子のB基板 (95×72mm) に合わせてあります。GNDの引き回し等の関係でどうしても1枚の基板に2chのアンプを入れたかったので、基板設計はかなり頑張りました。部品と配線をただ詰め込むだけでなく、電流の行き帰りを意識し、大電流の流れるライン(終段の電源や出力)が他の配線に与える影響をできるだけ小さくするよう配慮してあります。
スルーホール型のトランジスタは製造終了ばかりなので、SMDを積極的に採用しました。主に使っている2SC3324/2SA1312は、オーディオ用として有名な2SC2240/2SA970の同等品です。カレントミラー部にはデュアルトランジスタ(HN1C01FU/HN1A01FU)を使ってみました。
終段トランジスタのフットプリントはTO-220サイズですが、穴径をすこし大きくしたため上の画像のようにTO-3Pも使えるようになっています。リードフォーミングは少し面倒ですが…

-----

以下、試作の過程など。

こちらは試作1号機。


この1号機をいじくりまわしながら回路を固めました。度重なる改造を経て裏面もグチャグチャです。


次に試作2号機。PCBを設計し、何か別の基板に相乗りさせてPCBGOGOに発注しました。本来はこの2号機で完成のはずでしたが…


正常動作は確認したものの、パターンや穴径などどうしても修正したいところがいくつかあり、FusionPCBに3号機を発注しました。その3号機が最終版(上に紹介した基板)となりました。


次は電源やスピーカー保護などの周辺回路を紹介します。

2019年11月10日日曜日

スピーカー保護用MOS FETリレーの製作と実験

オーディオアンプの出力には、アンプの異常動作からスピーカーを保護するためのリレーが大抵付いています。しかし、リレーは機械的に動作するスイッチですから、経年劣化で次第に接触抵抗が上昇していくことは避けられません。スピーカー保護リレーの劣化により、音質が低下するどころか最終的には音が出なくなってしまうということもありえます。
また、リレーというのは案外消費電力が大きく、例えばHSIN DA PRECISIONのパワーリレー 942H-2C-5DSは定格電圧5Vでコイル抵抗47Ωですから電流は100mAを超え、約0.5Wもの電力を消費することになります。当然、マイコンから直接駆動することはできません。

こういった機械式リレーの欠点を解消できるのが、半導体であるMOS FETを用いた無接点スイッチです。近年のMOS FETの中には非常にON抵抗の小さいものがあり、適切に品種を選べば機械式のリレーより抵抗を小さくすることができます。オーディオアンプのスピーカー保護リレーの代替としては、アキュフェーズが積極的に採用しています。
MOS FETリレーの欠点としては、FETの端子間容量によりOFF時でも高周波が筒抜けになってしまうことや、一般に機械式リレーより耐圧が低いこと(ON抵抗と耐圧はトレードオフ)などがあります。

【設計】

ということで、私も次期自作アンプ用にMOS FETを使った無接点スイッチを作ってみることにしました。以下のようなスペックを目指します。

  • マイコンで直接制御できる
    • 5V, 10mA以下を目指す
  • 回路のどこにでも自由に接続できる
    • 制御信号とFETの絶縁
  • 低いON抵抗
    • 10mΩ以下を目指す
  • リレーと同等以上の高速ON/OFF
    • スピーカー保護の観点から特にOFFの速さは重要
    • 10ms以下を目指す

これらの条件を満たすために考えた回路がこちら。


スイッチングには秋月電子で購入できるNch MOS FET RJK0328DPB-01を2個使用します。ドレイン-ソース間電圧が最大30Vと低めなのが若干不安ではありますが、VGS=10VでRDS(ON)=1.6mΩ typ.というスペックを持つFETです。
OFF時に寄生ダイオードを通じて電流が流れるのを防ぐため、FETはいわゆるBack to Back接続(寄生ダイオードのアノードどうしが接続される)になっています。

FETのゲート駆動にはフォトボル出力フォトカプラ TLP590Bを用い、制御信号を絶縁します。これでFETをONするのは良いのですが、問題はOFFするときです。TLP590Bは出力インピーダンスが非常に高く(数百kΩ)、FETを速くOFFしようとゲート・ソース間に抵抗を繋ぐとON時のVGSが足りなくなってしまいます。

そこで、回路図中のU2A (TLP4227G-2) を用いてOFF時にゲートの電荷を素早く抜くことを思いつきました。これはノーマリクローズという変わり者のフォトリレーで、入力側がOFFのとき出力がON (オン抵抗最大25Ω) 、入力に電流を流すと出力がOFFになります。機械式リレーでいうところのb接点ですね。データシートによればOFF時の二次側の電流は最大1μAということで、これならTLP590Bに負担をかけることも無いでしょう。

TLP590BとTLP4227G-2は直列接続になっており、5V動作のマイコンから470Ωの電流制限抵抗を通じて駆動します。このとき流れる電流は5mA程度です。

ちなみに、TLP590Bに与える制御信号の位相を反転させればTLP4227Gの代わりに安価なノーマリオープンのフォトカプラを使えるではないか…と言われればその通りなのですが、その方式には

  • 制御信号が2種類必要になり回路が複雑化する
  • 何らかの異常により制御信号が完全に失われた場合、ゲート電荷を抜くフォトカプラが動作せずFETがすぐにOFFしない(フェイルセーフの観点から望ましくない)
という欠点があるので採用しませんでした。

【製作】

上記の回路で2ch MOS FETリレーの基板を作ってみました。いつも通りKiCadで設計し、PCBGOGOで他の基板と合わせて発注したものです。両面基板でサイズは約53mm×32mm, 厚さ1.6mm, FR-4, 銅箔1oz, 表面処理HASL (有鉛) 。


画像でTLP4227G-2の手前に並んでいるのが入力端子です。8個も端子があるのはTLP590BとTLP4227G-2を別々に制御できるようにしてあるためですが、実際は基板の裏側のジャンパー設定により上の回路図の通りTLP590BとTLP4227G-2を直列接続して使うことになります。
TLP590Bの上に見える16個のスルーホールには特に意味はありません。場所が余ったのでユニバーサル基板風にしてみただけです。

【測定】

制御信号としてArduinoから5Vを入力して行った測定では、ON時の抵抗が0.004Ω@1kHz, 10kHz, 100kHzでした。FETのデータシートによるとON抵抗は3.2mΩ(=1.6mΩ×2)となるはずなので、この測定値はおおむね妥当でしょう。また、このときゲート・ソース間電圧はぴったり10Vでした。OFF時の入出力間容量は約1750pF@1kHzでした。


適当なセメント抵抗を負荷にして1A程度の電流を流し、オシロスコープでON/OFFにかかる時間を測定してみました。制御は上と同じくArduinoです。
黄色が制御信号、緑が出力です。


制御信号が来てから3.5ms程度で出力が完全にONしています。


立ち下がりは速く、制御信号のOFFから0.15ms程度で出力が完全に切れています。良いですね。

次に、FETがONになっている状態から制御信号を(0Vではなく)オープンにして出力が切れるまでにかかる時間を確かめました。制御側の異常を想定した実験です。


制御が効いている時と同等の0.15msでバッチリ切れています。フォトカプラの一次側にプルダウン抵抗などを付ける必要は無さそうですね。

【まとめ】

最後に、上に挙げた目標スペックを振り返ります。
  • マイコンで直接制御できる
    • 5V, 10mA以下を目指す→達成 (5V, 5mA)
  • 回路のどこにでも自由に接続できる
    • 制御信号とFETの絶縁→達成
  • 低いON抵抗
    • 10mΩ以下を目指す→達成 (約4mΩ)
  • リレーと同等以上の高速ON/OFF
    • スピーカー保護の観点から特にOFFの速さは重要
    • 10ms以下を目指す→達成 (ON: 3.5ms, OFF: 0.15ms)
ということで、大体狙い通りのものができたのではないかと思います。

あとはアンプ基板の到着を待つのみ…

2019年11月5日火曜日

レーザーポインターの製作

スライドを使ってプレゼンをする機会が多く、レーザーポインターが欲しくなったので作ってみました。
調べてみるとCDプレーヤー用のレーザーなどを使った強力なレーザーポインターを作っている人もいるようですが、今回は安全重視で市販のポインターと同等の1mW (JIS クラス2相当) のレーザーを用います。
小型化と軽量化のため、単3電池1本で動作させることにします。今回使用するレーザーモジュールは3-5Vの電源を必要とするので、昇圧回路を使います。

材料

全て秋葉原の秋月電子で購入できます。バラ売りしていない部品もあるので、1個だけ製作する際の価格は下の表より高くなることに注意してください。


品目価格 (円)
赤色レーザーモジュール380
昇圧IC HT7733A50
インダクタ 100μH10
ショットキーダイオード 1S420
電解コンデンサ 22μF 10
タクトスイッチ10
単3x2 電池ボックス80
合計560

製作

フタ・スイッチ付き 単3x2本の電池ボックスに電池を1本だけ入れ、余った空間に昇圧回路とレーザーモジュールを組み込みます。

まず、下の画像のように電池ボックス内の端子を外します。電池ボックスの内蔵スイッチに取り付けられているバネ端子 (-極) はそのまま残しておきます。


赤い線が付いた+極用の端子を、外さず残しておいたバネ端子の向かい側にはめます。赤い線の向きが合わず付け直しました。


次に、端子が取り除かれ空きになった部分にレーザーモジュール用の穴を開けます。直径6mm程度です。
また、ユニバーサル基板をケースに入るサイズに切っておきます。厚さ1mm以下の基板ならカッターナイフで簡単に切れます。


さて、肝心の回路ですが、下図の通りごく簡単なものです。


乾電池1本の電圧 (1.5V) をHT7733Aで3.3Vに昇圧してレーザーモジュールに供給します。このレーザーモジュールは定電流回路を内蔵しているので、3.3Vを直接入力しても問題ありません。
昇圧回路の手前にタクトスイッチを設け、これを押している間だけレーザーが照射されるようにします。電池ケースに付いているスライドスイッチはタクトスイッチと直列に接続し、カバンやポケットの中で勝手にレーザーが出ないようにする安全装置として働きます。
この回路を先ほど切ったユニバーサル基板上に組んで電池ボックス内に固定したら完成です。レーザーモジュールはケースには固定されておらず、基板に付いているだけです。


基板固定用とタクトスイッチ用の穴をそれぞれ開ける必要があります。現物合わせで適当に作業したら位置がズレて、スイッチ用の穴が巨大になってしまいました。



ごく普通のレーザーポインターとして使えます。


レーザー光線を直視したり、人に向けたりしてはいけません。また、本記事の内容によって生じた損害等の一切の責任を負いかねますので、ご了承ください。

ネットワークオーディオプレーヤーの製作 (6) まとめ・実際の使用感など

これまで5回にわたって連載してきたネットワークオーディオプレーヤーの製作記事も今回で一旦終わりです。

全回路図はこちら。


全体を上から見た画像。


ケースはタカチのYM-300です。かなりぎゅうぎゅう詰めになりました。
RasPiのまわりは気休め程度にアルミ板でシールドしてあります。


さて、実際の使用についてです。
RasPiを無線LANで自宅のネットワークに繋ぎ、同じネットワーク内のPCから http://volumio.local/ にアクセスしてプレーヤーを操作できます。
スマホからも同様に使えますが、アプリを使った方が便利です。OpenHome規格に対応したアプリをAndroidスマホでいくつか試してみた結果、オーディオ機器メーカーであるLINNが開発したKazooというアプリが気に入り常用しています。BubbleUPnPも良いのですが無料版は制限が多く、まともに使うには有料ライセンスが必須ですね。

音質はスッキリしていて、以前使っていたPioneer N-70Aより良いように感じました。

2019年10月9日水曜日

ネットワークオーディオプレーヤーの製作 (5) Raspberry Piとその周辺回路

前回はトラブルの話だけで記事を1本作ってしまいましたが、今回はちゃんと製作物の紹介をします。具体的にはRasPiの電源制御とI2Sアイソレータについて。下図の赤枠の部分です。




まず、電源制御の概要です。
RasPiには電源スイッチというものがありません。ボードに電力を与えると勝手に起動します。電源を切るときは逆に電力供給を止めればいい…というわけにはいかず、普通のパソコンと同様ちゃんとシャットダウンの手続きを取る必要があります。
サーバー等に使うならいいのかもしれませんが、オーディオ機器としてはこれでは困ります。普通のアンプ等と同じように、電源スイッチで自由自在にON/OFFできるようにしないと不便極まりないのです。いつでも気兼ねなくスイッチをブチ切れるようにすることが目標です。

いろいろ調べていると、Volumioに便利なプラグインがあることが分かりました。
その名も"GPIO Buttons". RasPiのGPIOピンにスイッチを繋いで様々な操作ができるというものです。その機能のひとつにシャットダウンがあります。


これを使って、ハードウェア操作だけで安全にRasPiをシャットダウンさせることができます。待機電力削減のため、シャットダウン後は自動的に電源供給を断つ回路も追加することにしました。
シャットダウン問題についてはこれで良いとして、起動はどうでしょうか。今回はシャットダウン後に電源供給をストップすることにしているので、単に電源供給を再開すればいいだけですね。これも大丈夫そうです。
(ちなみに、RasPiがシャットダウンされており且つ電源供給が続いている状態からの起動は、RasPiのRUN端子を一度GNDに落とすことで可能なようです。)

次に、I2Sアイソレータの概要。
RasPiとDACやアナログ回路のGNDを分離するために使います。必須の回路ではないのですが、RasPiとアナログオーディオ回路のGNDが共通だと何となく気分が良くないですから…

-----

ということで、これらの機能を実現するために作った回路がこちらです。全体の回路図の一部を切り抜いただけなので入出力のラインがブチ切れていますがご容赦ください。
赤枠内が電源制御、青枠内がI2Sアイソレータ関連部分です。


まず電源制御部から解説します。
PS1 (AD-A50P400) とあるのは5V 4AのACアダプタです。これを一度分解して入力を導線で引き出し、組み直してからダイソーのアルミテープでグルグル巻きにしてシールドし、更に適当なテープで覆って使いました。シールドはシャーシに落としています。


安いACアダプタですが、電解コンデンサは全てRubycon製で作りも悪くなさそうです。
ケースに組み付けたところ↓


このACアダプタの後段にある回路でRasPiへの電源供給を制御します。
回路図のPOWER_SWを上側に倒すとQ2(2SJ505)のゲートがGNDに落ちてONになり、RasPiへの電源供給が始まります。
一方、POWER_SWを下側に倒したときの動作は少々複雑です。
まず、RasPiの内部でプルアップされていたGPIO8がLOWとなりRasPiがシャットダウンを始めます。それと同時にRasPiの内部プルアップ抵抗を通じてC27 (22μF) の充電が始まり、しばらくするとGPIO8をHIGHに戻します。このC27は一見不要そうで、実際最初は使っていませんでした。しかしプラグインの不具合なのか「GPIO8がLOWになってもRasPiがシャットダウンせず、再度GPIO8がHIGHになるとシャットダウンが始まる」という現象が時々見られたので、確実にRasPiをシャットダウンするため急遽追加しました。
また、RasPiのシャットダウン完了をUSBバスパワー出力(回路図中のRPi_USB_BP)がOFFになることで検出し、Q2のゲートを引っ張っていたQ1 (2N7000)をOFFにします。この機能により、RasPiが正常にシャットダウンしなかった時にQ2がOFFになることを防ぎます。Q1がOFFになった後は、念のため入れたOFF遅延用コンデンサC29 (22μF) が力尽きるとQ2がOFFになりRasPiへの電源供給がストップします。

次にI2Sアイソレータの解説です。
Si8660というデジタルアイソレータを使ってみました。


このICの使い方はごく簡単で、入出力と2系統の電源を接続するだけです。入力側の電源はRasPiから、出力側の電源はDACからもらってきます。そしてこのIC、本当は6chもの信号の絶縁ができるのですが、今回使うのは3chだけです。モッタイナイ…余った入力端子はGNDに落としておきましょう。
このパートは特に問題なく、すんなり動作しました。

-----

さて、このような回路のせいでRasPiが3階建てになってしまいました。
1階はRasPi本体。
2階はI2SアイソレータとEMIフィル。EMIフィルの取り付けには基板のパターンカットが必要でした。


3階は電源制御。


実験しながら作っているのでどうしても基板が汚くなりがちで恥ずかしい限りです。

-----

これでネットワークオーディオプレーヤーの解説はほぼ終わりです。次回はまとめです。

2019年10月6日日曜日

ネットワークオーディオプレーヤーの製作 (4) Raspberry Pi 3B+のI2S出力トラブル

ネットワークオーディオプレーヤーを自作する話、第4回はRaspberry Pi 3B+(以下RasPi)からI2S信号を出力する話です。

RasPiにはVolumioというオーディオ向けディストリビューションをインストールして使います。Volumio のインストール方法については他に詳しいサイトが多くあるのでここでは省略しますが、基本的に全てGUIで完結でき、大変楽でびっくりしました。かつて初代RasPi Bを購入しCUIと睨めっこして結局何もできなかった思い出が嘘のようです。

さて、Volumioのインストールまでは順調だったのですが、RasPiとES9038Q2Mを繋いで音を出すところで躓いてしまいました。
Volumioの設定で出力先としていろいろなDACを選択できるのですが、もちろん中華ES9038Q2M基板というような選択肢は無いため、とりあえずGeneric I2S DACを選択したところ、DACからは雑音しか出てこないのです。更にいろいろ試していると、雑音が出るのは音源が16bitである場合で、24bit音源なら正常に再生できることが分かりました。しかし私の手持ちの音源の大半は16bitなので、24bitなら再生できると言われても困ります。
これはI2Sのフォーマットが微妙におかしい可能性が高い…と判断してオシロで見てみると、こんな感じでした。黄色がBCLK, 紫色がLRCLKです。

16bit音源

24bit音源

お分かりいただけたでしょうか?
24bit音源ではBCLKが64fsなのに、16bit音源では32fsになっています。一方ES9038Q2M側はというと、常時64fsのBCLKを必要とする32bitモードで動作しています。
これが16bit音源再生の不具合につながっていました。

RasPi側で出力を常時24bitにすることで解決できますが、それもあまり気持ちの良い方法では無い気がした(元のデータをそのまま出したい)ので、別の方法を考える必要があります。といってもあっさりしたもので、DACをGeneric I2S DACからR-PI DACに変えるだけでした。


いろいろ試していて偶然見つけた方法ですが、これで16bitだろうと24bitだろうと問題なく再生されるようになりました。
-----
最後に、メモ代わりにピン配置など。
BCLK…GPIO18 (12pin)
LRCLK…GPIO19 (35pin)
DATA…GPIO21 (40pin)
MCLK…なし(!)
※電源が5Vなので勘違いしやすいのですが、ラズパイのGPIOは3.3Vです。