スピーカー切り替え器を考えてみる、の巻き。 2019.5.9

なぜ必要?
スピーカやアンプの聞き比べのときは、結線を変更するわけですが、これが結構面倒です。
また結線に時間がかかってしまうと前の音を忘れてしまって、なかなかうまく視聴比較
することができません。こういったときに切替器があると、べんりだな〜と思っていました。
とくに、最近ではCNCフライスをつかえるようになったこともあり、小型のスピーカを何個か
作成しましたが、結線での切り替えは結構面倒だったですし、なにより瞬時に切り替えが
できなければ、何がかわったかもよくわかりません。結局外見だけでの主観にとらわれることになります。


たくさんSPがあると、いちいち結線を入れ替えると前の音を忘れるので厳密な比較が難しいです。

AMAZONで探してみる
ネットでスピーカ切り替え器を探してみましたが、いろいろとでてきます。
ちょうど欲しいのが2台のアンプと4台程度のスピーカが接続できそうなものです。

下の図のようなものが機能的には十分な感じです。それにしても安いですね。
安いだけあって、端子の作りはさほどよくないようですが、十分につかえるようです。


バランス入力は使えるの?

気になるのは、バランス入力がつかえるかどうかです。というのも、ディジタルアンプの出力などはバランス出力が多いので
それらがつかえないと困ります。でも、製品の仕様はほとんどないので、つかえるかどうかわかりません。
ということでカスターマーレビューをさらに探してみるとありました。


ん〜やっぱり、プラス側だけをつないでいるのか・・・・。これじゃ使えません。

他にはないかな?

さらに探すと、ラックスマンからの定番らしい切り替え器がありました。
すこしお高くなりそうですが、作りはしっかりとしてそうです。


バランス入力に対応しているかどうかはわからなかったのですが、メーカの説明の中ではディジタルアンプは使えないと
なかったので、たぶん大丈夫でしょう。ただ、レビューの中に気になる表現がありました。
それはアンプの切り替え器としてつかう場合のようです。


なるほど、この切り替え器はショートモードで切り替わるのですね。音のつながりはいいでしょうが、アンプの切り替え器とした場合には、
アンプ同士の短絡による故障のケースもありうるかのようです。

ただ、これを2台つかえば4アンプ+4スピーカの切り替え器が実現できそうです。

できれば、リモコンも欲しいな〜

スピーカの切り替え器は必然的にアンプあるいはスピーカの近くに置かれるわけですから、試聴ポイントからは遠い位置になります。
切り替えるたびに、よいしょと足をのばす(手を伸ばす?)のもすこし面倒です。
でも、リモコン付のスピーカ切り替え器ってないですね。スピーカの切り替えは機械式のスイッチがほとんどですから、
リモコン化するにはリレーなどをつかう必要があるので、電源等をふくめるとコストがかかってしまうのでしょう。

まあ、切り替えくらい足をつかえ!横着するな!ということでしょうか。

でも、あったら便利だろうな〜リモコン!

ここは自作するか〜!

リモコンの有無はおいといても、自分なりにつかえるスピーカ切り替え器をつくってみたくなりました。
絶対に買ったほうが安いとは思いますが、自作派としても是非チャレンジしてみたいところです。

必要機能としては

すこし汎用性をもたせて
 ・アンプとスピーカは計6台まで任意に接続可能
   すなわち@アンプ1、スピーカ5 Aアンプ2、スピーカ4、Bアンプ3、スピーカ3・・・・の組み合わせが可能。
 ・バランス接続に対応
   スピーカの+および−側もすべて切り替えできるようにして、バランス出力アンプ(ディジタルアンプなど)も接続できるように。
 ・リモコン機能(できれば)
   リモコンは手元にあるやつが使えるように、学習機能ができるように(これって結構大変かも)。

とくに、リモコンがつかえるようにするにはマイコンも必須になりますから、ついでにブラインド試聴機能もつければおもしろいかもしれません。
すなわち、切り替え器が自動でスピーカあるいはアンプを切り替えるような機能です(さらに、どれが選択されているかもわからないようにするとか・・・)。
こりゃ、ソフトを書くときが面白そうです(ただ、リモコンは結構面倒そう・・・)。

一気に描いちゃえ!

切り替えにはリレーをつかいましょう。ただ、6台のアンプ・スピーカをバランス接続を前提とすると6×4=24接点分のリレーが必要になります。
2回路のリレーをつかうとして、全体で12個のリレーが必要になります。ということで、スピーカ切り替え器というよりはリレー基板と呼んだほうが
より適切かもしれません。たぶん、できあがったらリレーの重量だけで結構重いだろうな〜。

ただ、基板パターン自体はさほど難しくないので、一気に描いてみました(GW中に時間がたくさんありましたし)。

こんな基板を描いてみました。


赤外線リモコン用の受信素子も搭載できるようにしておきました。

サイズはおよそ200×90mmです。割とコンパクトかな?さて。作るところまでいくかな?

ところで赤外線フォーマットは?

赤外線リモコンを使う場合には、どのようなフォーマット送られてくるかを理解しておく必要があります。
で、「赤外線リモコン+フォーマット」でくぐってみると色々なフォーマットがあることがわかりました。
基本的には国内では @NECフォーマット、A家電協フォーマット BSONYフォーマット の3種類があるようです。
海外はまた違ったフォーマットがあるようなのです、実際はきりがないようです。

ここのWEBがわかりやすいく整理されていました。→ 引用 http://elm-chan.org/docs/ir_format.html

3つのフォーマットがありますが、どこで判別すつかといえば最初のLEADER部のON時間が違うので、それで判別できそうです。
NECフォーマット T=562uSなので
フレームのONレベルは
16T=9mS
家電協フォーマット T=425(typ)uSなので
フレームのONレベルは
8T=3.4ms

T=350〜500なので
実際には
8T=2.8mS〜4mS
SONY T=600Sなので
フレームのONレベルは
4T=2.4ms

うちのリモコンはどれかな?

とりあえず自室にあるリモコンを4種用意してみました。

左から
 @Panasonic − BDレコーダ
 ASHARP   - 液晶テレビ
 BONKYO  − AVアンプ
 CIRIS OYAMA − 室内灯

テストするためには、赤外線リモコン用の受光素子を準備しないといけないので、以前に秋月で購入したものを
PICのテスト用基板に取り付けて、まずは簡単にLEADER部の長さ(ビットのON/OFFの時間)を調べてみました。


PICの評価基板に赤外線受光素子をとりつけてテストです。

なるほど
測定した結果は下図のようになりました。LEADERのあとの数値はON時間とOFF時間を100us単位で表しています。

@Panasonic・・・家電協フォーマット
ASHARP・・・  家電協フォーマット
BONKYO・・・・ NECフォーマット
CIRIS OYAMA・・・不明(SONY?)

なぜCIRIS OYAMAが不明かというと、LEADER部のON時間が約2.1ms、OFF時間が0.9msになるのですが、
ON時間がSONYフォーマット(2.4ms)に一番近いのですがやや違う感じ。仮にSONYフォーマットかとしても、
SONYフォーマットではLEDERのONのあとはすぐにデータビットがはじまります。となるとOFF時間は0.6msですが
このリモコンでは0.9msとまたすこし違う感じです。ひょっとしてSONYフォーマットかもしれないし、違うかも知れないということです。
IRIS OYAMAは海外メーカで作っているでしょうから、現地のフォーマットなのかもしれません。
このあたりは、一度生データをきちんと取り込んでみて見ましょう。

IRIS OYAMAの生データをみてみると
どうやら、NEC、家電協、SONYフォーマットのどのフォーマットでもなさそうです。
とくに最初のLEADERのあとに、さらに長いLEADERらしきものがあります。
そしてそのあとがデータらしいのですが、NEC、家電協、SONYでは”OFF"の時間でデータの0あるいは1を区別していますが、
IRIS OYAMAでは”ON”の時間で区別しているようです。こりゃ、どこか知らない外国のフォーマットでしょう。
このフォーマットは無視しましょう。


どんなコードがでているかな?

赤外線リモコンの受信コードを読み込むプログラムを作成して、実際にどのようなコードがでているか調べてみました。

@SHARP(AQUOS用のリモコン) 家電協フォーマット
 音量アップ   55 5a f1 48 28 8f
 音量ダウン  55 5a f1 48 a8 87

AONKYO(AVアンプ用のリモコン) NECフォーマット
 音量アップ   4b b6 40 bf
 音量ダウン  4b b6 c0 3f

特徴的なのはエアコンのリモコンでした。というのもデータが2つのセットに分かれて送られます。
 

【除湿】    40 04 07 20 00 00 00 60
         40 04 07 20 00 84 34 01 f5 00 00 60 06 02 01 01 00 68 7c
【温度UP】  40 04 07 20 00 00 00 60
         40 04 07 20 00 84 74 01 f5 00 00 60 06 02 00 01 00 68 03
【温度DOWN】 40 04 07 20 00 00 00 60
         40 04 07 20 00 84 74 01 f5 00 00 60 06 02 00 01 00 68 03
【停止】     40 04 07 20 00 00 00 60
          40 04 07 20 00 04 74 01 f5 00 00 60 06 02 00 01 00 68 fd

なにが特徴的かというと、最初のセットのコードがすべて同じということです。そして2セット目のデータに
リモコンの機能が含まれているということです。これは、リモコンに温度の設定がるので、その情報を送る必要が
あるために、データ量が多くなるため送信データを2回に分けているのだと思います。
 しかし、最初のセットがすべて同じなので、これは使えません。
 まあ、エアコンのリモコンをスピーカ切り替えに使う人はいないでしょう。

もうすこし調べてみる・・・・・

リモコンのデータは”1”と”0”の連続ですが、それぞれのパルス幅がどうなっているか調べてみました。

@家電協フォーマットのリモコン例
 まず”0”と”1”の時間はかならずしも同じではないようです。”0”がおよそ310〜340usに対して
”1”が400〜450usということでおよそ3割程度長い時間になっているようです。これはリモコンの発信側か
受信側の特性かはわかりませんが、この3割程度の差があってもコードが余裕で識別できるフォーマットにはなっています。

”0”、”1”ビットのパルス時間(×10us)


ANECフォーマットのリモコン例
こちらも上のリモコンと同様に”0”に比べて”1”が3割程度長い時間になっているようです。


あとはSONYフォーマットを調べる必要がありますが、たぶん実家にあまっているリモコンがあるはずなので
探してみましょう。

基板作成にかかりました 2019.5.15

まだまだバグはあるかもしれませんが、基板作成にかかりました。
週明けには手にすることができるでしょう。
週末はプライベートですが一大イベントがあるので、準備にかからなくっちゃ!

ええ〜!!! 2019.5.20

週末に基板が届く予定でしたが、夜遅くでしたが基板屋さんから電話あり、基板作成に失敗したとのこと。
どうやら、金メッキをミスったようですべて作り直しが必要でさらに納期が1週間必要とのこと。
いままでは税関通過に時間がかかって、1〜2日遅れることはたびたびありましたが、1週間の遅れとは!
まあ、文句を言っても仕方ないので、了承はしましたが折角の週末に遊べるかとおもいましたが
すこし腰を折られました。まあ、1週間のんびり待ちましょう。

読み返して
このページを読み返していてLUXMANのSP切り替え器はバランス入力も可能そうなことを
書いていましたが、写真をよくみるとヘッドホン出力があります。おそらく通常のヘッドホンジャックだと
おもうので、そうすればGNDは共通なはずです。
 ということはSPのGNDも共通の可能性が高いということですよね。
 実際に導入する場合には、メーカや販売店に確認したほうがよさそうです。

LUXMANのSP切り替え器。ヘッドホン出力があるところからGNDは共通かな?

話はすこし戻してSONYのリモコンをゲット! 2019.5.22

ジャンクや寄る時間があったので、SONYのリモコンを購入してきました。
色々なメーカのリモコンが箱のなかにいっぱいあって、そのなかにいくつかのSONYのものがありましたが、
比較的綺麗そうなものを選択しました。中には、ボタンがいっぱいあって便利そうなものがありましたが、
乾電池のカバーがないこともあり、採用しませんでした。

ジャンクやでSONYのリモコンを購入しました。


SYSTEM AUDIOってあるけど、たぶんDVDレコーダのリモコンだろうな〜。


値段は税込みで324円でした。

動くかな?

ジャンク品ということで、動くかどうかが心配です。結構古いリモコンは
電池の腐食と同時に基板のパターンが切れている場合もあるのですよね。
赤外線LEDが点灯するかどうかは、デジカメやスマホのカメラで確認することができます。
というのもカメラは赤外線領域にも感度がありますから。まあ、それを悪用(?)してナイトショット
なるものもありましたが・・・・


点灯している状態です。動いているようですね。


OFFの状態です。

まずはSONYリモコンの点灯ON/OFF時間を測定しておきましょう。

他のリモコンと同様に、0と1の時間間隔を測定してみました。



表からわかるように、1の時間の長さでコードを変えているのがわかります。
LEADERの部分が2.15msですが、規格では2.4msなので、それに比べるとすこし短いようです。
またT=600uSですが、0の時間が450uS、1の時間が580uSですからこちらも規定より短めです。
およそT=520uSという感じですね。規格に対して20%の誤差はみておかないといけなさそうです。

さてどうしよう?

リモコンの基本の時間”T"に20%の誤差があると想定すると、ちょっと困ったことになります。
というのも、LEADER部の”1”の時間でまずはフォーマットの違いを判別しようとしてたからです。

LEADERの長さ
 @NECフォーマット   9ms
 A家電協フォーマット 2.8〜4ms
 BSONYフォーマット  2.4ms

ですが、20%の誤差があるとA家電協フォーマットとBSONYフォーマットの違いが区別できません。
ということで、LEADER部の”0”の時間も含めてフォーマットを判別するロジックが必要になりそうです。

まずはこんな感じかな 2019.5.23

赤外線リモコンの受信ルーチンができました。
評価のためのプログラムを組んで、チェックをしています。


それぞれ異なるリモコンを持ちながら操作しています。
ただ、リモコンキーのリピート機能があるため、同じコードが並んでいるところがあります。
リモコンのボタンはポンとワンタッチしているだけですが、それでもリコモンが長押しと判断して
何個もデータが送信されているためです。これは受け側のソフトでリピートを無視するような
判定機能が必要です。ただし、ボリュームなどにリモコンを用いる場合は、リピート機能は便利です。

はやく基板こなかな〜。

(つづく)