赤外線リモコンの検討(まとめ編)

f:id:torusanada98:20210815161559j:plain

まとめ編

改造が完了したDACユニットをマルチアンプシステムに組み込んで使ってみます。引き続き今回の改造のまとめを行います。

マルチアンプシステム組み込み

常用のNS-1000Mマルチアンプシステムに改造したDACユニットを組み込んで使ってみます。

f:id:torusanada98:20210815161631j:plain

システムのボリュームは12chアッテネータで行います。搭載するリレーの数を減らす為、減衰量は-36, -29, -25, -21, -17, -11, -9, -6に厳選しています。この減衰量は1980年代のCDの録音レベルに合わせて設定しましたが、最近のCDの録音レベルは当時のものよりもかなり大きく、ステップがあらいポイントで使わざる得ませんでした。聴きたい音量がステップの間に入ってしまった際にリモコン操作で1dBステップで最大3dBレベルダウンできるようになり、使い勝手が向上しました。

f:id:torusanada98:20210815161659j:plain

音量を我慢するストレスから解放された為、ここ2~3年の間に購入したCDを集中して聴いてしまいました。

f:id:torusanada98:20210815161727j:plain

改造まとめ

今まで製作した機器には、市販製品にはあたりまえに付いているリモコン機能がありませんでした。今後の製作も考えて赤外線リモコン受信機能の実装をしてみたいと考えていたのが、今回の改造のきっかけです。使用したリモコンユニットは秋月電子から調達したarduino用赤外線キットです。

f:id:torusanada98:20210815161752j:plain

リモコン、受信モジュールとハーネスの3点セットです。早々にサンプルコードを使って受信動作を確認しました。

f:id:torusanada98:20210815161818j:plain

写真はサンプルコード実行中のarduino統合開発環境IDEのシリアルモニタ画面です。

f:id:torusanada98:20210815161846p:plain

基本NECフォーマットですが、カスタムコードおよびデータコードの取り扱いが異なっていました。

f:id:torusanada98:20210815161920p:plain

f:id:torusanada98:20210815161929p:plain

f:id:torusanada98:20210815161940p:plain

サンプルコードは、CPUの処理をほぼ100%占有する状態でした。写真の青のラインが受信処理中'L'となる信号です。受信後のわずかな時間のみ処理が解放されるのみです。

f:id:torusanada98:20210815162005j:plain

最初はサンプルコードを改変してCPU占有率を下げる為に受信処理を割り込み対応としました。その結果受信処理のCPU占有率を格段に下げることができました。

f:id:torusanada98:20210815162031j:plain

上記の写真は、青のライン'H'の時に割り込み処理(受信処理)を実行しています。次はDACユニットへの実装を考えて、使わなくなったHDMI切替機の切り替えモジュールの流用検討をしました。

f:id:torusanada98:20210815162054j:plain

受信信号のAGC特性がキットの物よりもやや劣っていましたが、流用可能と判断しました。次は移植先のDACユニットの準備です。実装するリモコン機能は、アッテネーションに絞りました。以下がキーコード一覧です。

f:id:torusanada98:20210815162122p:plain

次は実装先のソフトウェアを確認します。オリジナルのソフトのジェネラルフローは以下のとおりです。

f:id:torusanada98:20210815162148p:plain

非常にシンプルな作りですが、機能拡張を考慮していない為、ソースはべた書き状態となっていました。そのコードを一部関数化して移植を行います。移植後のジェネラルフローは以下のとおりです。

f:id:torusanada98:20210815162212p:plain

左の2列が基本フローで、残り5列が個別のフローです。この処理をソースに起こして単体動作確認を行い、問題ない状態となりました。続いてDACユニット自体の改造を行います。オリジナルのDACユニットのマイコン回路は以下のとおりです。

f:id:torusanada98:20210815162252p:plain

この回路に受信モジュールを接続しました。

f:id:torusanada98:20210815162308p:plain

PB4は、割り込み処理モニタとして残しています。外置きの受信ユニットの端子はφ3.5のステレオミニジャックです。接続用にリアパネルにジャックを取り付けました。

f:id:torusanada98:20210815162334j:plain

arduino UNOへの接続は、バニラシールド基板に3極の端子台を実装して2芯シールド線で配線を行いました。

f:id:torusanada98:20210815162411j:plain

f:id:torusanada98:20210815162428j:plain

f:id:torusanada98:20210815162447j:plain

これでリモコン機能実装完了です。今後の製作では、リモコン機能を標準化することができます。たった1000円の出費で、長期の夏期休暇(9連休)を含めて約1ヶ月間楽しむことができました。毎度ながらおつきあいいただきありがとうございました。

 

おわり(まとめ編)