最近 Home Assistant + ESP32 によるノエルさん顕現計画にハマっています。
その過程で、RF信号(電波)によるコントロールが必要なデバイスを制御したくなりました。
そこからSDR沼にハマっていくまでの記録です。
既製品による試み(失敗)
とりあえず、 IR(赤外線)だけでなくRFにも対応したスマートリモコンを購入。
↑アフィリンクじゃないのでご安心を。以下同様。
しかし、目的とするデバイスには接続できませんでした。
SDRに再入門
こうなったら信号を分析して、それと同じものを出力するしかありません。
まずは分析のため、RTL-SDR Blog V4を買いました。
実はRTL-SDR Blog V3は持っているのですが、どこかに行ってしまい見当たらず。メルカリで買ったものだったので偽物の可能性もあり、今回は信頼できるAmazonで購入することにしました。
導入
SDR++をインストール。
Blog V4最新版のドライバーを入れることで、無事に起動。
芯線に針金を刺すだけでも、とりあえず90MHzくらいのFMラジオは聞けるようになりました。
ランダムワイヤアンテナを作ろう
前回、V3のときに飽きてしまったのは、なかなか電波信号が受信できなかったからでした。120MHzの航空無線や中国のAMラジオは運が良ければかすかに聞こえる程度で、アマチュア無線家の通信とかはほぼ聞こえないままでした。
電波とか高周波信号に関する知識が全く無いのが敗因だったが、今ならAIに頼りつつ上手くできるかもしれない。
ということでGemini 3 Pro Previewさんに相談した結果、ランダムワイヤアンテナを使うのが良いと提案されました。
さて、私は都市部のマンションの1桁階に住んでいます。しかし、ベランダの外は完全に他のビルに囲われており、ほとんど空が見えません。
これは電波を受信するには最悪の環境のようです。波長によるものの、やっぱり見通しが悪い場所だと電波が入りづらいし、ビルに囲まれていると大量のノイズを受信してしまいます。
それでも、ランダムワイヤアンテナを使えばマシになるかもしれない、とのこと。要するに長い導線を重力に従って垂直に垂らし、それを受信機の芯線に繋げば良いらしい。

幸い、使う導線はわりと何でも良いとのこと。また、安全面で言っても、ベランダの下は1階共有部の屋上となっており、周囲に電線は無いし、人が通ることもありません。できるだけステルスで実行したかったので、細くて長いワイヤーを探しました。
するとダイソーにこんなものが!

0.28mm x 30mのステンレス針金。これならば、アンテナ線がプラプラ垂れていてもほぼ気づかれないだろうし、余裕で地上まで到達させられます。
ステンレスは銅線より電気抵抗は高い(=信号のロスが大きい)が、受信専用であれば実用上問題ないレベル。送信時には発熱とかの問題があるそうですが、受信にしか使わないし、錆びにくく強度が強いというメリットも期待できます。そして何よりステルス性が高く、とりあえず試すにはうってつけそうです。
ワイヤーの先端にワッシャーをくくりつけて重りとし、深夜にこっそりとベランダから垂らしました。
ちなみに、このとき針金をいきなり全部ほどいてしまうとぐちゃぐちゃに絡んで大変なことになるので、少しずつ繰り出していくのが良さそうです。(一敗)
その後、壁から離して配置するような工夫などもした結果、感度は大幅に改善。中国のAMラジオはもちろん、7MHz帯のアマチュア無線家の声まで入るようになりました。オーストラリアからの電波を受信した時にはかなり感動した。
9:1 アンアンを作ろう
更に感度を高めるためのアドバイスをお伺いしたところ、次は9:1アンアンを作るべきだ、とのこと。
アンアンとは「不均衡-不均衡 インピーダンス変換機」のことで、ランダムワイヤアンテナとSDRの間に配置してインピーダンスマッチングを行うことで、劇的な感度の改善が見込めるとのこと。
インピーダンス、高校物理レベルからよくわかってないんだよな……ということで、改めてお勉強しました。
そうしたら、こんな素晴らしい動画を発見しました。
確かに、インピーダンスとは「これから流れようとする電子が当て勘した抵抗」と考えると、すべてがしっくり来ます。
当て勘通りの抵抗を用意してあげれば電子の渋滞はスムーズに解消される一方で、期待を裏切ってしまうと、電子が動いたり止まったりを繰り返すことになってしまう。これが電圧の観点で言えば回路上の反射波として観測されるわけです。
(ということなのかな?)
ランダムワイヤアンテナの問題はインピーダンスが概して高いことで、数百から数千オームになってしまうのだとか。無線で使う、そしてSDRドングルが前提とするインピーダンスは50Ωなので、ここで大きな信号のロスが生じてしまいます。
そこで登場するのが9:1アンアン。これを仲介することで、基本的に大きすぎるアンテナのインピーダンスを1/9にして、50Ωに近づけることができるとのこと。
原理はよくわからないものの、とりあえずトロイダルコアとエナメル線を買ってきました。

エナメル線3本を撚り合わせ(トリファイラ巻)、トロイダルコアの中を7周くらいさせ、適切にアンテナとSDRドングルの間に接続すれば良いそうです。

このとき、巻いた両端で、どの線がどの線に対応しているのか判別不能にならないように注意。自分はセロハンテープとティッシュでタグをくっつけました。
…が、後から余ったワイヤをカットした結果わからなくなってしまった。テスターも壊れていたので、仕方なく自分を回路の中に入れて高電圧をかけることで人間導通チェックをしました。
とりあえず接続。Geminiさんの勧めで、アース側にはカウンターポイズとして室内の床に這わせた導線を接続しました。

きれいに書くとこんな感じの配線図。

これにより、10MHz帯でのノイズフロアは確かに劇的に低下。
Before:

After:

一方、7Mhz帯ではむしろノイズが悪化してしまった…?
Before:

After:

S/N比で言えば僅かに改善しているように見えるから、成功といえば成功なのかも。
少なくとも、120MHzとか433MHzは-100dBの砂漠地帯になってしまいました。
これはフェライトコアを使ったアンアンがHF帯向けに動作しており、VHF/UHFのような高い周波数に対してはローパスフィルタとなって信号を通さなくなってしまったためと考えられます。スマートリモコンの解析をする時は、別のアンテナに繋ぎ変える必要がありそうです。
Future work
配線をちゃんとする
現状、導線同士を曲げて引っ掛けて接続しているだけだが、これだとちょっと触れただけで崩壊するし、電気的にも変な抵抗が発生して良くない気がする。
圧着端子とかアクリル箱とかを使って、頑丈で適切な配線をしたい。
アンテナ線を更に壁から遠ざける
ステンレス針金は元々、壁から数cmの位置に配置していた。しかしこれを、突っ張り棒をベランダから突き出して30cmくらいの隙間を開けたところ、感度が劇的に改善した。
30cmといわず、更に壁から遠ざければ、アンテナ特性への余計な干渉や家庭から発せられるノイズを減らし、さらなるS/N比の改善が見込めるかもしれない。
