DJ総合

2024年10月 3日 (木)

SSSRC( スーパーサンプリング・サンプリングレートコンバータ ) ソフトウェア公開

SSDACのPCアプリによる実装について、これまで次の記事で説明してきました。

SSDACをパソコン上のPythonで実装する ①

SSDACをパソコン上のPythonで実装する ②

これらの記事では、SSDACの目的や原理について説明し、
新たな発見として、スーパーサンプリングによってアップサンプリングしたwavデータは、一般的な市販品のオーバーサンプリングDACで再生しても新たにプリエコー、ポストエコーが発生しない、ということがわかりました。

ソフトウェアでスーパーサンプリングを行うことは、スプライン関数によって補間データを追加してファイルを生成していることから、スプライン関数補間によるサンプリングレートコンバートを行っているということになりますから、入力がCDフォーマットの44.1kHz16bitフォーマットの出力ファイルは、たとえば88.2kHz24bit(2倍スーパーサンプリング)、176.4kHz24bit(4倍スーパーサンプリング)という具合になります。

前回の記事では、88.2kHzサンプリング音源でプリエコー、ポストエコーが発生したとしても、その周波数は44.1kHzなので、聴感上の悪影響はほとんどないであろう事を予想していましたが、実際の検証では、スーパーサンプリングでアップサンプリングしたデジタル信号は、その後オーバーサンプリングDACで処理しても、プリエコー、ポストエコーが発生しない、という意外な結果を得ました。

また、前回までPC上のプログラミング言語Pythonを使ってスーパーサンプリングを実装し検証しましたが、Pythonはインタープリタ言語(逐次翻訳型言語)であることから非常に処理が遅く、15秒の音楽ファイルを処理するのに数時間かかるという具合で、およそ実用的ではありませんでした。

そこで今回は、wavファイルをスーパーサンプリング処理して同じくwavファイルで出力する、サンプリングレートコンバータ、名付けて、
スーパーサンプリング・サンプリングレートコンバータ(SSSRC)をC#コンパイラで実装しましたので、次の通り公開します。

今回作成したSSSRCソフトの仕様は次の通りです。

入力フォーマット : 44.1kHz 16bit (CDフォーマット)
出力フォーマット : 88.2kHz、176.4kHz、352.8kHz、705.6kHz(いずれも24bit)


●ダウンロードと使い方
このソフトはwindows10またはwindows11上で動作します。

ダウンロード - sssrc.zip

SSSRC.zipをダウンロードして任意の場所に解凍したら、SSSRC.exeをダブルクリックして実行します。
このとき、.NETのランタイムがインストールされていないと、次のようなエラーが出ることがあります。

Sssrcnet1
図1..NETランタイムがない場合のエラー

この場合は”Download it now”をクリックして、.NETランタイムをインストールしてから、あらためてSSSRC.exeを実行してください。


●使い方
図2はSSSRCの起動画面です。

Sssrc
図2.SSSRC起動画面


使い方は簡単で、希望するスーパーサンプリング倍率(Super Sampling Ratio)を選んで、変換したいwavファイル(44.1kHz16bitのみ)を、この画面上にドラッグ&ドロップすると、元のwavファイルと同じ場所に”SS_OUTPUT”ホルダが生成され、その中にアップサンプリングされたファイルが生成されます。複数ファイルを一括してドラッグ&ドロップすることができます。
変換時間は、私の古いパソコン(第5世代Corei7(2core)、メモリー16GB、windows11)で、4分(約40MB)のwavファイルを88.2kHzに変換するのに35秒、705.6kHzに変換するのに1分30秒かかりました。

実際にこのソフトで処理した信号の波形を見てみましょう。代表例として、1kHzの方形波と正弦波を4倍スーパーサンプリングでアップサンプリングした場合の波形を図3、図4に示します。

1korg
図3.元波形(44.1kHz16bitサンプリング)


1k4x
図4.4倍アップサンプリング波形(176.4kHz24bitサンプリング)

以上のように、スプライン関数による補間によりアップサンプリングしたファイルが出力されます。

ここで注意したいのは、出力ファイルの容量です。アップサンプリング倍率に加えて、ビット分解能が16bit→24bitと1.5倍となることから、
出力ファイルはアップサンプリング倍率x1.5倍の容量になります。
たとえば長さ4分で約40MBのwavファイルは、2倍アップサンプリングでは3倍の120MBに、16倍アップサンプリングでは24倍の960MBになりますので、ストレージを圧迫します。要注意です。

今後、今回のSSSRCで元ファイルをアップサンプリングして通常のDACで再生したものと、元ファイルをそのまま通常のDACで再生したもの、また、元ファイルをハードウェアのSSDACで再生したものの違いについて聴き比べと検証を行う予定です。


| | | コメント (0)

2024年9月 6日 (金)

EOS MとAi Nikkor 50mm f1.8

 2012年に購入したEOS Mを久しぶりに引っぱり出して、さらに30年近く前に買ったAi Nikkor 50mm f1.8を装着して、散歩がてら街の写真を撮ってきた。
ネットで誰か(おそらくプロの写真家の方)が、今のデジカメに昔のレンズを付けて撮るのがなかなか良いとつぶやいていらしたので、なるほどと思い真似してみたのだ。

なぜEOSにNikkorなのかというと、もともとフィルム時代はNikon F3ユーザーで、レンズも数本もっていたのだが、懸賞でEOS M用のタムロンズームレンズが当選したので、そのレンズ用にEOS Mを買ったというのが事の経緯だ。とはいえ、サブ機として頂き物のCANONのAE-1と数本のレンズももっていて、どちらかといえばAE-1に使っていたレンズをEOSにつける方が筋が通っているように思うが、F3用の50-200mmのズームをもっていて、これとテレコンとEOS Mで月の写真を撮ってみたいと思い、EFレンズとAi Nikkorのアダプタを買ってもっていたからだ。

そういうわけで、EOS MにNikkorを装着するとこんな感じになる。

Eosnikkor
写真1.Ai Nikkor 50mm f1.8を装着したEOS M

この通り、レンズの存在感がすごい(^-^;
EOS Mがとてもコンパクトなのが際立つ。

出かける前に、部屋の中やベランダでテスト撮影してみた。

Bungu
写真2.ペン立て

Kitchen
写真3.キッチン

Asagao
写真4.あさがお

まったくなんでもないペン立てやキッチンも、良い機材で撮るとなんだかドラマチックな感じがする(^-^)

35mmカメラでの50mmレンズは、APS-CサイズのEOS Mでは1.5倍の75mm相当になるので、ふだん広角のコンデジに慣れているとずいぶん望遠気味な印象になる。ズームで調整はできないので、足で距離を調整するしかない。

どうやら写真はちゃんと撮れるようなので、街に出てみた。


Sarusuberi1
写真5.日影の百日紅


Kinomi
写真6.ヤブカラシ


Hibiscus
写真7.ハイビスカス


これらは近所の図書館までの道で見た光景だ。オートフォーカスが使えないのでマニュアルでピント合わせをするのだが、外の明るさでカメラの液晶を見てピントを合わせるのはなかなか難しい。老眼なのでなおさらだ(^-^;
全体的にピントが甘めになってしまった……
でも、ピントを合わせて、バシャン!!とシャッターを切ると、そうそう!こういう感じだった!!という思いがよみがえる(^-^)


Library
写真8.図書館の建物


Komorebi
写真9.木漏れ日


Hibiscus2
写真10.ハイビスカス2


そういうわけで、図書館まで散歩して写真を撮って帰ってきた。
機材が良いとずいぶんドラマチックに撮れるものだ。

でも実際に目で見る光景こそがドラマそのものである、というのが真実なので、
見慣れた光景にも注意を向けて、いつも何かを感じ取れるように過ごしていけたらいいなあ、と思います。


| | | コメント (0)

2024年6月 4日 (火)

ブログ表紙写真のナゾ

202106061721veranda20220211
写真1.これまで使っていた当ブログの表紙写真

写真1は、ついこのあいだまで使っていた当ブログの表紙写真だ。
ベランダから見える風景なのだが、色調がサイケな感じになっている。なぜこんな写真が撮れたのか?

2020年頃から、ESP32-CAMというESP32マイコンとOV2640カメラを一体化したモジュールを使って、WIFI接続できるカメラを試作してあれこれ実験していた。
どこにでも設置できる電池駆動のライブカメラが作れないかと思い試作したところ、18650リチウムイオン電池を1本使って、15分に一度写真を撮ってWIFI経由でFTPサーバーに写真を送るという仕様で、電池もちが1週間程度確保できた。

マンション3階のベランダなので、人が通ることも猫が通ることもなく、ごくごくまれにハトやすずめが写る程度で、ふだんは何の変哲もないベランダが写るだけだ。でも長期運用していると、季節ごとの日の出日没の日射しの様子や天気、それにその時々にバラが咲いたり朝顔が咲いたりしているのが写るので、それなりに趣がある。

2022年頃に、ESP32-CAMに搭載しているOV2640を、広角レンズがついたものに交換した。このときレンズが長くなってケースに付けたレンズカバーに当たるようになってしまったので、ケースを設計し直して3Dプリントし、透明のレンズカバーも交換した。広角になったので画角が広がってベランダが広々と写るようになった。

ところが、翌日から色調が異常な感じになってしまった。早朝の夜明けから日が出てくるあたりまでは正常に写っているのだが、日の出後は色調が異常になる。夕方の日没後は正常に戻る。そしてこの現象は曇っている日は出にくい。
もしかしたら広角のOV2640は仕様が変わって初期設定を変更する必要があるのかと思い、いろいろ調べてみたが原因らしきものが見つからず、ずいぶん時間を費やしてしまった。写真1はそのときにテストで撮影したベランダからの風景だ。

しばらくあれこれ検討してみたがどうしても直せず途方に暮れていたときに、ふと、ケースを変更したときにケースに付けるレンズカバーを新しくしたことを思い出した。まさかとは思ったが、レンズカバーを外して撮影したところ正常に写るようになった(^-^;

もともと付けていたレンズカバーはCDケースの透明なふたの部分を切り抜いて作ったものだったが、広角レンズに変更したときに付けたのはアクリル板を切り抜いて作ったものだ。
「透明ならなんでもいいやー(^-^)」
と安易にアクリル板を使ったが、これが問題の始まりで、非常にアサハカだった(^-^;

念のため秋月でLTR390というadafruit製のUVセンサーを買ってきて、UVLEDを使って透過光を測定したところ、このアクリル板はUVを大幅にカットする性質があることがわかった。
つまり、昼間、太陽光にUVが多く含まれた入射光に対しUVのみをカットしてOV2640で写すと、自動色調がバグるらしい。

写真1はUVがカットされたためにOV2640の色調動作がおかしくなった状態で撮影されたものだったということだ。
ただ、この写真はサイケな感じがしておもしろかったので、ブログの表紙に採用したのだった。

さて、きのうから当ブログの表紙写真を変更した。
この写真は去年の8月31日に出張で行った高松からの帰りの飛行機から見た富士山だ。
この日は運良く、飛行コースや天気に恵まれてとても美しい富士山を見ることができた。かなり長い時間、夕暮れ時の富士山を見ることができた。これは何十枚か撮った写真のうちの一枚だ。日本に生まれてよかったなあ(^-^)


| | | コメント (0)

2024年1月27日 (土)

ATOKの不具合とPowerToys

マイクロソフトのWindows用アプリで”PowerToys”というものがある。
便利な小道具がたくさん入ったアプリで、画面上の画像からテキストを抽出できる”Text Extractor”という機能が便利そうなので、入れている。

ところが、これを入れてからどうもATOKの日本語変換の調子が悪い。
 
ATOKはMS-IMEモードで、スペースキーで連文節変換をするようにしているが、これがまったく変換してくれなかったり、文節の区切りがおかしなところになってしまい変換がでたらめになってしまったり、さらに不可解な現象として変換後の文節の最後にスペースが挿入されてしまったりする。

変換がでたらめになってしまったら、その文章はバックスペースで戻って打ち直しになるし、文末スペースも確定後バックスペースで消さねばならないので、もうほとんど使い物にならないレベルで非常に使いにくい。

PowerToysの常駐を解除すればATOKの不具合は出ない。つまりATOKを使いたければPowerToys常駐はあきらめろということらしい。

念のためJustSystemのサポートに電話して訊いてみたら、PowerToysとの併用によるほとんど同じ内容のクレームが他の人からもあって、やはり回答は上に書いたとおり、PowerToysの常駐を解除するしかないとのことだったが、追加情報として、変換にスペースキーではなく”変換”キーを使えば不具合は出ない、という。たしかに変換キーだと不具合は出ないが、どうにも打ちにくい。 

PowerToysはMS純正のアプリなので、ATOKはぜひとも改善してほしいものだ。 


| | | コメント (0)

2023年12月10日 (日)

アナログ回路で磁気浮上

動画1.磁気浮上実験の様子(PCBWayの案件ではありませんのでご安心ください←一度言ってみたかった!!)


最近、オーディオサークルでスピーカー用のフローティングフットの研究をしている人がいたので、それならいっそのことスピーカーを宙に浮かせたらウケるかも!!と考えて、その実験をしてみた。

当初、重さ約2kgのAuratone 5Cを宙に浮かせてデモをしたらウケるだろうなあ……

と安易な妄想をし、磁気浮上の実験を開始したのだが、現在のところ浮上に成功したのは磁石込みで14.4gの精密ドライバーを約5mm浮かせるにとどまった。Auratoneを浮かすには修行が足らない(^-^;

話の発端となったスピーカー用のフローティングフットとは、オーディオ用のスピーカーボックスを台に設置する際の足の部分を、細いワイヤーでスピーカーボックス重量を吊して支える構造にして、スピーカーボックスと台が相互に振動を伝えないようにする仕掛けである。たとえばこんな感じのもの
オーディオ再生でスピーカーは重要な位置を占めるが、スピーカーの設置方法もまた重要で、たとえばスピーカーの台に対してスピーカーがぴったり置けていないと、ビリビリと振動による鳴きが聞こえてしまったりして、こんなのは論外だ。スピーカーボックスそのものがまったく振動しないように作れれば理想だが、それは難しいので、せめてスピーカーボックスの振動が、設置している台に伝わらないようにしたい。そうすると台を剛体にして、そこにたとえばナットとビー玉や、ベーゴマをひっくり返したものを足に使って、3点支持にするということはよく行なわれる。3点支持で支点は決まるので少なくとも鳴きは発生しないが、台へ振動が伝わるので、これを嫌って足の下に防振ゲルを挟んだりする場合もある。上で紹介したフローティングフットは、細いワイヤーで支持することで、振動を極力伝えないようにするものだ。

さて、それならば、スピーカーボックスを完全に空中に浮かせてしまえばいいんじゃね??

ということになるのだが、じつはそのような製品はすでにある(写真1)。

Floating_sp
写真1.宙に浮くスピーカー

すでに製品があるということは技術的に可能だということだ。
それならば、どんなスピーカーでも浮かせることができるシステムが作れれば、スピーカー設置に関する悩みがひとつ解決するだろう。

磁気浮上の製作記事は、ネット検索するといくつも出てくるが、多くはマイコンを使って電磁石をON/OFF制御するやりかただ。
オーディオに使うことを考えると、パルスノイズを発生するものはあまり使いたくないので、今回はアナログ回路で検討することにした。

遠い昔、ぼくが光磁気ディスク装置の開発部隊に配属された頃、光ディスクに対して光ピックアップのレンズを追従させるサーボ技術を学んだ。
光ディスク装置は、光ピックアップからレーザー光を照射し、ディスクに反射して帰ってきた光を光検出器で受けて信号を読み込む。その際に、まずレーザー光のパワーを一定に保つALPC、スピンドルモーターを狙った回転数で回転させるスピンドルサーボ、回転してブレるディスク盤面にピントを合わせて追従するフォーカスサーボ、ディスクのトラックの真ん中を追従するトラッキングサーボ、任意のディスクの位置に光ピックアップを運ぶラジアルサーボなど、光ディスク装置はサーボ(自動制御)のかたまりだ。
これらは高々2次遅れ系(ばねと粘性減衰)のサーボで、周波数応答法で設計されていた。つまり、想定される外乱の影響を、信号読み込みに必要な偏差まで抑えるために、オープンループゲインがいくら必要か検討し、また、その際にゲインのゼロ点で位相が180度回ると発振するので、これを回避するため最適な位相進み遅れ補償を施すなどして、最適設計を行うものだ。

今回作ろうとしている磁気浮上は、距離の2乗に反比例して磁力が働くので、伝達関数は分母がs^3となる3次遅れ系になることが想像できる。そういえば、最近あちこちで見かける倒立振子も3次遅れ系だったような……

3次遅れ系自動制御の設計は経験がないので、どういうやり方があるのか調べてみると、どうやらPID制御が最近の流行らしい。
PID制御は、とにかく目標値とセンサ値の誤差と、その積分と微分を適当にミックスして帰還制御すれば、だいたい動くんじゃね??という、わりとお気楽な自動制御法らしい。

なるほどと思い、Aliexpressで入手したDC12Vで吸着力8kgの電磁石、ダイソーで買ったネオジウムマグネット、秋月で入手したホール素子HG-166A-2Uとオペアンプとトランジスタその他を使って作ってみた。

回路図はこちら。
ダウンロード - magnefloat_sch.pdf

一見複雑そうに見えるが、オペアンプU2A,U2Bで構成している積分回路、オペアンプU2C,U2Dで構成している微分回路は、はっきりした効果が見いだせず、無くても動作するし、目標値設定のバッファのU3Aも省いてしまえば、残りのオペアンプはU1の4回路だけなので、4回路入りのオペアンプなら1個で作ることができる。
駆動段は単電源で構成したかったのでNPNとPNPのパワートランジスタを2組使ってBTLとした。今回使ったトランジスタは部品箱に入っていたテキトーなもので、コンプリメンタリペアではなく他人同士だ。ICが5Aもあれば十分で、テキトーな組み合わせでOKだ。

使用した電磁石を図1に、ホール素子装着の様子を図2に示す。

Emag
図1.使用した電磁石 DC12V、吸着力8kg仕様のもの

Hall
図2.ホール素子装着
表面実装のホール素子を1.6mmの基板に実装し、基板を介して両面テープで電磁石コアに貼付け。
ホール素子実装面は、浮上対象物の接触によるショートを防止するため、セロテープでシールド。

実際に物体を磁気浮上する様子は上の動画1に示したとおりで、このときの条件は次のとおり。

・浮上しているマグネットとドライバの総重量は14.4g
・浮上距離はおよそ5mm
・駆動電流は80~90mA(12V)

PID制御をするため、エラー信号に、その積分と微分のそれぞれをmixして電磁石を駆動するが、実際にやってみると微分も積分もない、いわばP制御が可能で、積分信号を追加してもとくに安定するでもなく、微分信号を追加すると発振気味になるようで、逆効果だった。微分回路有り無しのエラー信号の様子を図3、図4に示す。

2023121030khz
図3.エラー信号のみでの浮上時のホール素子出力(30kHzで振動)


2023121065khz
図4.エラー信号に微分をmixした場合のホール素子出力(6.5kHzで振動)


以上のように、今回の実験では積分信号、微分信号ともにはっきりした効果は見られず、
エラー信号のみでも浮上動作が可能という結果だった。

積分信号と微分信号を帰還することの意味は、積分は低域ゲインを増加させて定常特性(保持力)を確保し、
位置信号の微分は速度帰還となることから、ダンパー(粘性抵抗)と等価な防振効果が期待できる。

上述の光ディスク装置開発の仕事をしていた当時、リニアモーターを任意の速度で動かす駆動装置を作るという仕事があって、
駆動速度が高速になるほど、止めるのが難しくなる。たとえば矩形波状の速度プロファイルに沿って動かそうとすると、
高速運動から急に止めようとしても、びよよよよーんと振動してしまい、きれいに止まってくれない。
そういう場合は速度帰還をかければよい、と技術書に書いてあったので、位置信号を微分して帰還してみた。ためしに駆動信号を与えずに微分信号の帰還だけをした状態で、リニアモーターを手で動かしてみると、まるで濃厚なオイルダンパーを付けたような、ネトーっとした抵抗が加わっていた。速度帰還をかけるというのはこういうことだったのか!!と身をもって体験できたのだった……

今回は積分も微分も効果を見いだせなかったし、エラー信号は振動していて、自動制御としては不完全のように思える。
高次の伝達関数の自動制御についてまだまだ研究の余地がありそうだ。

【参考サイト】
こんとろラボ
自動制御の基礎から学べます。

ロバスト制御入門
このプレゼン資料に、磁気浮上の伝達関数が説明されています。

半日で作る磁気浮遊オブジェ
PICマイコンで磁気浮上を実現しています。ソースコードもあります。

知恵の楽しい実験
Arduinoマイコンで磁気浮上を実現しています。ソースコードあり。

| | | コメント (0)

2023年12月 9日 (土)

非対応PCのwindows10をwindows11にアップグレードする(途中停止対策あり)

古くてwindows11に対応していないWindows10のPCにむりやりwindows11を入れる方法と、トラブル回避など。

普段使いのlenovo G50-70はwindows10Proだが、これをwindows11にアップグレードしたので、今回はその備忘録だ。
要点としては、rufusというフリーソフトを使い、古いPCに対応するwindows11インストーラを生成し、そのインストーラを使ってWindows10にwindows11を上書きインストールする。ただし、途中でインストールが停止してしまうため、対策が必要だ。

①rufusを使った基本的な手順はこの動画を参照した。
ただし、この手順で進めると、windows11セットアップが31%で止まってしまい、3時間待ったが先に進まなかった。
いろいろ調べていると、実行中のサービスやスタートアップで実行されたアプリなどが影響しているらしい。このサイトを参照して、
サービスやスタートアップを無効化してから、rufusで生成されたsetupを実行してwindows11をセットアップする。

※1 無効化したスタートアップは、windows11にしたあとで有効化したいのでメモをとっておくこと!
※2 windows11インストール中に長時間止まっているように見えて不安な場合は、Ctrl+Alt+Deleteでタスクマネージャを起動し、インストールのプロセスが動いているか確認できる。CPUが動いていれば処理中だとわかる(セットアップの全画面だが、じつはwindows10上で動いている)。

②日本語入力ができない場合の対応
使っているPCでは日本語入力にATOKを使用しているが、windows11が起動したあと日本語入力が有効にできなかったので、いちどATOKをアンインストールしたあとインストールし直したら、日本語入力ができるようになった。

③細いタスクバーと小さなアイコン
windows10では細いタスクバーにたくさんの小さなアイコンを並べていたが、windows11ではタスクバーが太くアイコンが大きくなって、アイコンが全部収まらなくなってしまった。windows11にはタスクバーを細くするオプションがない。
そこで、Explorer Patcher for Windows 11というフリーソフトを使って、windows10とほぼ同じタスクバーにする。
ソフトの詳しい説明はこちら

これでスタートメニュー以外はwindows10と比べてほぼ違和感なく使えるようになりました(^-^)


| | | コメント (0)

2023年11月 7日 (火)

SSDAC128 and デジタルRIAAイコライザ デュアル基板(基板頒布あり)

Dpeq_titlepic

前回の記事で、SSDAC128_I2S基板に装着するデジタルRIAAフォノイコライザ・サブ基板を発表しました。

これは従来のSSDAC128_I2S基板のFPGA回路を、デジタルRIAAフォノイコライザに書き換えることで実現しました。
従来通りAmaneroCombo384からのUSB入力で信号再生可能ですが、AmaneroCombo384の代わりにデジタルRIAAフォノイコライザ・サブ基板DPEQ000を装着することにより、レコードプレイヤーから直接入力ができ、リアルタイムでの再生が可能です。
ただし、デジタルRIAAフォノイコライザとして使用するためにFPGAの書き換えが必要で、再びSSDACとして使用するには再度FPGAをSSDACに書き換える必要がありました。

今回は、SSDAC128_I2S基板で使用するFPGAを、10M08SCE144C8Gから10M08SAE144C8Gに変更することで、SSDACとデジタルRIAAフォノイコライザ回路の両方を実装し、電源投入時のDIPスイッチの設定で選択できるようにしました。生基板は従来と共通のSSDAC128_I2S基板です。

レコードファンにとってはかなり便利になったと思います。
また、デジタルRIAAフォノイコライザ・サブ基板DPEQ000にはカートリッジ出力をプリアンプで増幅した信号がRCAで出力されているので、レコードの生音をパソコンでリッピングするときに便利で、レコードの生音を使ったソフトウェアフォノイコライザの検証などに役立ちます。

この記事の下の方にすべての資料とFPGAのオブジェクトファイルを公開します。自力で製作したい方は次の手順で行ってください。

①回路を組む
回路図を参照して、回路を組んでください。
ユニバーサル基板でもできると思いますが、回路規模を考えると、生基板を購入されることをお勧めします。
FPGAは10M08SAE144C8Gです。従来の10M08SCE144C8Gではないので購入時に間違えないように注意してください。
SSDAC128_I2S基板は、従来と比較してジャンパ配線が一箇所、LEDと抵抗をそれぞれ3個ずつ追加となります。資料を参照してジャンパ線と部品の追加を行ってください。

②FPGAにオブジェクトファイルを書き込む

PCと製作した基板をダウンロードケーブル(USB-Blaster)で接続し、FPGAにSSDACとRIAAイコライザのデュアルブートが可能なオブジェクトファイル(SS_RIAA.pof)を書き込みます。このオブジェクトファイルはデュアル・コンフィギュレーションのオブジェクトなので、QuartusPrime Programmerで図1のように、CFM0,CFM1の2つにチェックを入れて書き込みます。


Ssdac_riaa_write
図1.QuartusPrime Programmerによる書き込み
     CFM0とCFM1にチェックを入れて書き込みます。


これで、電源投入時のDIP SWの設定によってSSDACとRIAAフォノイコライザが選択できる基板の完成です(^-^)

詳しい仕様は、以下の資料をご参照ください。

製作マニュアル(SSDAC128_I2SDual)
図表(SSDAC128_I2SDual)
取扱説明書(SSDAC128_I2SDual)
電気学会論文

製作マニュアル(DPEQ000)
図表(DPEQ000)
取扱説明書(DPEQ000Dual)

FPGAオブジェクトファイル(10M08SAE144C8G用)


次の5種類を頒布します。(すべて税、送料込み)

①全部品実装基板セット(SSDAC128_I2SDualとDPEQ000のセット) 77000円
・全部品を実装し、動作確認済みの基板セットです。
・AK4490にはAK4490REQを使用しています。
・Amanero COMBO384は含まれません。
・すべて手実装です。
・DPEQ000のOPAMPはNJM4556AD。
・納期:2週間程度(受注生産)

②全部品実装基板(SSDAC128_I2SDualのみ) 72000円
・全部品を実装し、動作確認済みの基板です。
・すべて手実装です。
・納期:1週間~10日程度(受注生産)

③書き込み済みFPGA実装基板SSDAC128_I2SDual 27000円
・書き込み済みFPGAのみ搭載した基板です。
・すべて手実装です。

・納期:1週間程度(受注生産)

④全部品実装基板セット(動作確認済み)、AmaneroCOMBO384、電源トランスセット 98000円
・全部品を実装したSSDAC128_I2S基板、DPEQ000基板およびAmaneroと電源トランスのセットです。
・すべて手実装です。
・AC電源ケーブルおよび電源スイッチ、ヒューズ等はご用意ください。
・納期:2~3週間程度(受注生産)

⑤生基板セット 4700円
・AK4490EQおよびAK4490REQに対応したSSDAC128_I2SとDPEQ000の生基板セットです。
・生基板のみの販売です。FPGA用pofファイルをダウンロードしてお使いいただけます。
・納期:3~5日程度


購入ご希望の方は表題に「SSDAC_RIAA基板頒布希望」とお書きのうえ、
dj_higo_officialアットhigon.sakura.ne.jp(アットを@に換えて)までメールにて
お申し込みください。
※ご希望のセット番号と、お名前、ご住所、電話番号をお書きください。
折り返し、代金振込先等のご案内をお送りします。

製造・頒布はSLDJ合同会社が行います。

| | | コメント (0)

2023年10月28日 (土)

デジタルRIAAフォノイコライザ・サブ基板(基板頒布あり)

Dpeq_titlepic
写真1.デジタルRIAAフォノイコライザ・サブ基板を搭載したSSDAC128_I2S基板
128倍スーパーサンプリングD/Aコンバータ基板SSDAC128_I2Sに対し、サブ基板を追加して、FPGAを書き換えることでデジタルRIAAフォノイコライザを構成しました。


【参考記事】
RIAAフォノイコライザをIIRデジタルフィルタで実装する ①準備編
RIAAフォノイコライザをIIRデジタルフィルタで実装する ②係数計算編
RIAAフォノイコライザをIIRデジタルフィルタで実装する ③シミュレーション編
RIAAフォノイコライザをIIRデジタルフィルタで実装する ④実装・評価編
RIAAフォノイコライザをIIRデジタルフィルタで実装する ⑤Octaveによる位相検証


以前、FPGAによるデジタル回路でRIAAフォノイコライザを構成する検討しましたが、今回はその総集編として、SSDAC128_I2S基板にサブ基板を追加する形でデジタルRIAAフォノイコライザを製作しました。ADCスペックは96kHzサンプリング24bitです。

もともと、デジタルフィルタでフォノイコライザを製作することにはあまり意味がないと考えていました。
というのは、レコードをよい音で聞こうと思ったら、まじめに作ったCR型のフォノイコライザを通して、アナログアンプで増幅して聴けばよいと考えていたからです。
それなら、なぜデジタルRIAAイコライザを作ったのかというと、デジタルフィルタとFPGA(VHDL)の練習をするのにとてもよい課題だと思われたからです。
当時バラックでデジタルRIAAイコライザを組み立てて、動作を確認してデータをとり満足したので、もう作る必要はないと考えていましたが、SSDAC基板が完成した今、USB入力インタフェイスであるAmaneroの代わりに、I2Sを出すことのできる小基板を載せれば、SSDAC基板は汎用のオーディオDSP基板として使えるということに気がつき、その応用例としてデジタルRIAAフォノイコライザを作ってみました。

実際に作って音を聴いてみると、思いのほか音がよいことに驚きました。
アナログでフォノイコライザを組む際には、イコライザ回路に使うコンデンサに何を選ぶかに悩まされ、ここでお財布とも相談する必要があったりします。
その点デジタルフォノイコライザでは、コンデンサはカップリングとパスコンや平滑コンしかないのであまり悩む必要はなく、主に音質に影響を与える部品はプリアンプのOPAMPにほぼ限られ、ソケットにしておけば後から変更も可能です。
今回はプリアンプの出力をRCAで取り出せるようにしたので、パソコンにつないでレコードの生音をリッピングして、パソコンのソフトでイコライザの検討をするなど、いろいろな応用ができます。

今回製作したサブ基板を写真2に示します。

Inout1114
写真2.デジタルRIAAフォノイコライザ・サブ基板

このサブ基板を、SSDAC128_I2S基板のAmaneroの代りに挿し、FPGAの回路をデジタルRIAA回路に書き換えることで、デジタルRIAAイコライザ基板として使えるようになります。

主な特徴は次の通り

・ADCデバイスにPCM1808(96kHz24bit)を使用
・プリアンプゲインは0~470倍可変(ジャンパピンにより0~47倍も可)
・プリアンプ出力RCA端子搭載により、パソコンなどの外部機器へダイレクト出力が可能
・Amaneroを使用して、ダイレクトリッピングした音楽信号をパソコンから入力してRIAAイコライジング出力が可能
・プリアンプ用のOPAMPは2回路入りDIP8PINを採用し、ソケットとすることで換装可能
・出力はDAC8820、AK4490、PCM5102のすべてから選択可能
※FPGAをデジタルRIAAに書き換えると、スーパーサンプリングは機能しません。NOSまたは各DACデバイスのオーバーサンプリング処理となります。

詳しい仕様は、この記事冒頭にリンクした過去記事と、下にリンクした資料をご参照ください。

製作マニュアル
図表
取扱説明書
FPGAオブジェクトファイル(10M08SCE144C8G用)

次の2種類を頒布します。(すべて税、送料込み)

①全部品実装基板(動作確認済み)5800円
・すべて手実装です。
・OPAMPはNJM4556AD
・納期:2週間程度(受注生産)

②生基板 1600円
・生基板のみの販売です。

※本基板を使用するには、別途SSDAC128_I2S基板が必要です。

購入ご希望の方は表題に「DPEQ基板頒布希望」とお書きのうえ、
dj_higo_officialアットhigon.sakura.ne.jp(アットを@に換えて)までメールにて
お申し込みください。
※ご希望のセット番号と、お名前、ご住所、電話番号をお書きください。
折り返し、代金振込先等のご案内をお送りします。

製造・頒布はSLDJ合同会社が行います。


ぜひお試しください!

| | | コメント (0)

2023年10月16日 (月)

各種SSDAC基板 頒布再開のお知らせ

FPGA入手難につき、各種SSDAC基板の頒布を中止しておりましたが、

このたびようやくFPGAが入手できましたので、頒布を再開いたします。

引き続きよろしくお願いします。

| | | コメント (0)

2023年6月28日 (水)

4.5㎝スコーカーのBTL電流駆動(ラズパイPico SDプレーヤー)

Pico1

写真1.戦利品のSONY4.5㎝スコーカーとメディアプレイヤー
4.5㎝スコーカーはamazon段ボールに穴を開けたバッフルにはめ込み、アンプはオペアンプAD8534を使ったBTL電流駆動。


先日、手作りアンプの会のイベントで、SONY製4.5㎝スコーカーを4個100円でゲットしたので、何か使い道はないかと思い、SDプレーヤーを試作してみた。

このスコーカーは特性も型番もわからないのでネットで調べると、販売しているサイトが見つかった。なんと1個200ドル(@_@;
販売サイトは見つけたものの、結局特性はよくわからないまま。

とりあえず仕事で着手していたメディアプレーヤーにつないで音を出してみたところ、案外元気に鳴る。ただ、スコーカーということなので、帯域はおそらく300~5kHzくらいじゃないかと思われた。
ぼくはマルチウェイはあまりやる気がしないので、これを単発で鳴らす実験をすることにした。
帯域の狭いスピーカーを無理に駆動するなら電流駆動がおもしろそうだ。それならばそのついでにBTLもやってみることにした。
遠い昔(30年ほど前)、メーカーでのMOドライブ開発のときにアクチュエータドライバに使っていたHA13490というICがまさにBTL電流駆動のドライバで、こんな駆動方式はオーディオアンプでは見ることはないが、アクチュエータ駆動ではよく出てくる。その当時、「これでスピーカーを鳴らしたらどんな音がするんだろう?」と思ったが、30年経ったいま、それをやってみようというわけだ。

今回製作した回路は、SDプレイヤー部はラズベリーパイPicoにSDホルダーとタクトスイッチがついているだけのきわめてシンプルなもので、アナログ出力は122kHzのPWMで出力されるのでDACすらついていない。ソフトの起動時にポップノイズが出るので、それをミュートするためにオペアンプの電源をPicoからON/OFFできるようにしている。出力はPicoのPWM出力をオペアンプで受けてローパスをかけ、出力VRを経て一段バッファし、ヘッドホン出力のあとにBTL電流駆動パワーアンプがついている。使用したオペアンプはAD8534という4回路入りフルスイングオペアンプで、出力電流が最大250mAとれるので、Liion電池一本でスピーカーを駆動する。同じ内容の2回路のオペアンプAD8532は秋月で入手できる。
ソフトはGithubからもらってきたMicropythonで書かれたもの。このソフトをベースにボタン操作部分を追加した。対応フォーマットは44.1kHz16bitのWAVファイル。

実際に音楽を聴いてみると、3.7Vのリチウムイオン電池1本でけっこうよく鳴る。部屋でBGM用に使うには十分だ。消費電流はステレオで最大150mAほど。

せっかくなので、アンプを電流駆動にした場合と電圧駆動の場合の音圧特性をとってみた。測定条件はスピーカー軸上正面10㎝、測定系はminiDSP UMIK-1、およびソフトにREWを使用した。測定結果を図1に示す。

Capture

図1.音圧特性(赤:電流駆動 緑:電圧駆動


赤で示した電流駆動では、274Hzに大きなピークが出ていて、これはスピーカーのf0だと推定できる。電流駆動によってf0が大きく増強されている。また高域もインピーダンス上昇に伴って音圧が徐々に上昇している。
電圧駆動では低音がまったく出ない印象で、やっぱりスコーカー単発では無理があるように感じられるが、電流駆動することで低域が持ち上がり、どうにかこうにか聴けるレベルの帯域感になったように感じられる。

そういうわけで、30年越しのBTL電流駆動実験ができて満足です(^-^)

 

| | | コメント (0)

より以前の記事一覧