雪崩ビーコン受信機の試作


雪崩ビーコンを試作した例としては、2006年にカナダの大学でブレッドボードに製作したTracker100のレポート があります。 これはTracker DTSと同じように、2本のアンテナの受信レベルから方向を探索する仕様ですが、試作は1chのみです。このような信号強度だけ使っている方式は、いわば第一世代のデジタルビーコンです。 ※NXPのSA606というFMラジオ用のLSIのRSSI信号を使っていますが、実用性としては疑問・・・:-P。

現在のラジオ・・・というか携帯電話をはじめとする無線機は、送受信信号をソフトウェアで処理するSDR(Software Defined Radio)が主流です。 最新の雪崩ビーコンにもこの技術が使われている筈ですが、メーカからの情報提供はなく、ユーザーからすると全くのブラックボックスです。 以前、雪崩講習会の先輩講師からL字型アンテナを使った方向探索の仕組みを聞かれてこのサイトに書いたのですが、たまたまPSoCマイコンを使ったSDRラジオを作る機会があったので、2chのSDR受信回路を使って試作をしてみました。 アンテナ間の位相差と実効値の計算を行い、被捜索ビーコンの方向を検知、距離換算するところまで試作を行っています。

1. バーアンテナを使った方向探知

雪崩ビーコンの基本特性で書いたように、2本のバーアンテナを使った方向探索には信号強度の差を使ったものと、信号強度の他にアンテナ間の位相の変化を検出するものがあります。 最近のデジタルビーコンと呼ばれるものは後者だと推測されます。

バーアンテナを複数使った場合、電磁結合による干渉の問題があるので、下図の様にT字型に配置した方が良いようです。


【図-1】 アンテナ配置と誘起電圧の方向

ANT1は進行方向を向き、ANT2はANT1と直角に置きます。●はコイルを巻いた方向を示しています。 すると、進行方向左側の磁力線では同相の電圧が発生し、右側の磁力線では逆相の電圧が発生します。 真正面からの磁力線に対してはANT2はほとんど電圧が発生しないので、位相関係を気にする必要がありません。

バーアンテナに誘起される電圧は微弱でラジオ放送などいろいろ混じっているので、800Hzに変換して1.5kHzのLPFを通した後の信号が以下【図-2】~【図-4】です(赤色-ANT1, 黄色-ANT2)。

【図-2】 同相の誘起電圧(@800Hz)
【図-3】 進行方向の誘起電圧(@800Hz)
【図-4】 逆相の誘起電圧(@800Hz)

進行方向を0°とした場合に、左を-、右を+として位相とアンテナに誘起される電圧の関係を模式的に表したのが次の図です(※位相はシグモイド関数で書いています)。

【図-5】 方向による位相の変化と信号強度

黒色の線はANT1/ANT2の信号比です。 正面0°のとき、理想的にはANT2の信号が0なので∞になります。

青色の線は位相の変化を表しています。 左側は同相なので理想的には0°で、右側は逆相なので、理想的には180°です。 ANT1/ANT2の信号比から左右90°まで方向を求めることが出来ますが、T字型のアンテナ配置では信号強度から左右の判別が出来ないので、位相を見て右(同相)か左(逆相)を判断します。 実際にはアンテナ間の干渉(回り込み)があるためこの通りにはなりませんが、正面(0°)はANT1/ANT2の信号比が大きいので位相を気にしなくとも良くなります。

2. 試作機の構成

ソフトウェアで受信信号を処理するSDRでは直交復調で同相成分(I)と直交位相(Q)から振幅と位相を求めて処理するのですが、試作機では2本のアンテナで受信した信号を処理します。 試作にはPSoCというアナログ回路を内蔵したワンチップマイコンを使用しました。 ソフトバンクが先日買収したARMのCoretex-M3というMPUを使っていて、同じMPUを使っているビーコンがあったと思います。

【図-6】 ブロック構成図

アンテナから入力した457kHzの信号はRFアンプ(ラジオ用の455kHzIFTを流用)で増幅し、PSoC内部で800Hzに周波数を落とします。 ミキサーにはDDSモジュールで457kHz-800Hzの局発を入力します。変換された800Hzの信号(中間周波)には、それぞれのアンテナから入力した457kHz信号の振幅と位相関係がそのまま残ります。 457kHz±0.2kHzのフィルターを作ろうとする大変そう(無理?)ですが、800Hzに変換したあとはADCでデジタル値に変換して、DSPで作った200Hz帯域のデジタルフィルターを通します (※PSoCでは設計ツールにパラメータを与えると自動的に内蔵DSPのファームを生成してくれます)。 ビーコンの信号は一定信号(キャリア)の断続ですから800Hz数10サイクル分をサンプリングして、キャリアの無い時間に方向や実効値の計算を行って表示します。

回路図に興味がある方はご覧ください。

3. バーアンテナ

アンテナ間の干渉(相互インダクタンス)を最少にするため、距離検出(ANT1)と方向検出(ANT2)は直角に配置します。 本試作のプログラムでは進行方向左側が同相、右側が逆相になるように配置しています。 最終的な位置は正面のビーコンでANT1の出力が最大、ANT2の出力が最少の位置を探して決めます。 それでも相互インダクタンスの影響は残り、左右の方向で異なるので、実際には【図-5】のように左右対象にはなりません。

外付けアンテナは【図-7】のようにラジオ少年が販売している10mmΦ×120mmフェライトバーを2本使い、50Ωの同軸ケーブルを10回巻いてピックアップにしています。 ブレッドボードでIFTとの干渉が酷かったので、1mの同軸ケーブルで接続しましたが、方向検出アンテナが距離検出と同じなので方向は比較的正確です。

【図-7】 分離型のバーアンテナ

4. 457kHz増幅回路

雪崩ビーコンが使用している457kHzは、AMラジオの中間周波数455kHzに非常に近いため、一般的な中間周波増幅器(IF-Amp)の回路が使えます。 アンテナの本数だけ457kHz増幅回路(RF AMP)を使えばよいのですが、中間周波トランス(IFT)はコアにフェライトを使っているため、バーアンテナやIFT間の干渉が問題になります。 市販の雪崩ビーコンはこの問題を避けるため、磁力線の影響を受けない(i.e. フェライトを使わない)広帯域増幅器が使われています。 ところが、磁力線から誘起される電圧が距離の3乗に比例して減衰するため、大きな増幅率が要求されます。 今回は原理試作なので、バーアンテナを分離して一般的なAMラジオのIF-Ampを使うことにしました。

【図-9】は使用したRF AMPで、これを2回路使います。2SC1815を2段使うと近距離で飽和してしまい、かといって通常のAGCが使えません。 1段目のIFTからも出力がとれるようにして、2段目にPSoC内のDACからバイアスを調整できるようにしました。

【図-8】 RF AMPモジュール
【図-9】 RF AMP回路図

【図-10】はSweep Analizer出力に70dBのATTを挿入した状態で上記のRF AMPを計測したもので、約70dBのゲインがあります。

【図-10】 RF AMP特性

【図-11】はeBayで購入した中国製の455kHzセラミック・フィルターを通したもので、市販の雪崩ビーコンには国産のセラミック・フィルターが使用されています。 使用したフィルターは帯域幅+/-7.5kHz、挿入損失6dB(max.)で両サイドがきれいに落ちています。 本機では、周辺にAMラジオの送信局があるということもあり、周辺ノイズを多く通すため思ったほどS/N比は改善されないので採用しませんでした。 ちなみに、このボツになったRFアンプは後で製作した「雪崩ビーコン波形モニタ」に転用しています。

【図-11】 RF AMP特性(455kHzセラミック・フィルター付き)

5. ミキサー部とゲイン制御

457kHzを直接デジタル処理するのは難しいですが、通常のSDRでは音声帯域に変換(※これを中間周波数という場合がある)から処理します。 本試作では変調のかかっていなキャリアを処理するだけなので、800Hzを使いました。 こうするとサンプリング周波数を下げることが出来て、そのままDACに通すとちょうとモールス(CW)と同じ音程で再生する事が出来ます。

【図-12】 PSoC5LP MIX回路

800Hzに変換した後、PSoCに内蔵しているProgramable Gain Amplifire(PGA)を通して、外部の1.5kHzローパス・フィルター(LPF)に渡します。 本試作では後述するファームウェアで計算した実効電圧を使うので、RFアンプでAGCは使っていません。 そのかわり、ファームウェアで実効電圧が500mV以下になるようにPGAの倍率を制御して、実効電圧をPGAの倍率で割って受信電圧を算出します(※パネルのPGA制御用ロータリーエンコーダーは調整用)。

6. 800kHzフィルター

ADCに入力する前に高域をカットする必要があるので、OP-Ampを使った1.5kHzのLPFを通しています。 ADCのサンプリング周波数は上記の800Hzの20倍の16kHzに設定しています。

【図-13】 PSoC5LP ADC/Filter回路

PSoC5LPにはCypressがDFBと呼んでいるDSPモジュールを2個内蔵しています。 それなりにプログラムを組むことも出来ますが、デジタル・フィルターとして使うぶんには【図-13】のようなGUIでパラメーターを指定するだけで使えます。

【図-14】 PSoC5LP 80kHz+/-100Hz

7. 方向検出

方向検出のためには2つのアンテナのそれぞれの実効値が必要です。 サンプリング周波数を1周期の20倍に設定していますから、90°シフトするには5サンプル分シフトすれば良いことになります。 2つのアンテナ毎にCORDICと呼ぶ加減算による数値演算を行い、アンテナ毎の実効値SQRT(I^2+Q^2)を求めることが出来ます。 2つのアンテナの実効値から角度を計算できますが、左右の判断はできません。

【図-15】 PSoC5LP CORDIC

左右の判断を行うには【図-5】で説明した2つのアンテナ間の位相差を求める必要があります。 ここで必要なのは同相か逆相かなので、DPLLの位相判定に使われている排他論理和(Ex-OR)を使います。 以下に位相差φが30°、90°、150°のときのEx-ORの結果をMS-Excelでグラフ化したものを示します。 プログラムで同相か逆相かを判断するには数周期の間(1周期は20回)Ex-ORを+1/-1して、合計値の+/-で判定できます。

【図-16】 PSoC5LP 位相比較(φ=30°)
【図-17】 PSoC5LP 位相比較(φ=90°)
【図-18】 PSoC5LP 位相比較(φ=150°)

上記の演算はパルス毎に実行できますから、リアルタイムで方向を表示することが出来ます。 この試作機で使う【図-7】のアンテナ配置ではアンテナ方向に対して磁力線が左側にある場合が(+)で右側にある場合が(-)になります。

目標ビーコンの方向は、CLCDを使ったバーグラフで左(-)/右(+)方向を表示するようにしています。 この場合、バーグラフの先端が目標ビーコンの方向を指します。 【図-19】の例では目標のビーコンが進行方向の右側にあり、【図-20】の例では左側にある、と判断します。 【図-21】は進行方向が目標ビーコンの方向と一致している場合で、バーグラフの分解能約14度以内で+/-は影響しません。

【図-19】 目標ビーコンに対して左側を向いている場合
【図-20】 目標ビーコンに対して右側を向いている場合
【図-21】 目標ビーコンに対して正面を向いている場合

8. 距離検出

2つのアンテナから合成した受信電圧の実効値は、それぞれの実効値から簡単に計算できますから、この値を距離に換算します。 理論的には受信電圧は距離の3乗に反比例しますから、距離Dは受信電圧VからD=C*V^(-1/3)で表せます(※Cは比例定数)。 【図-22】のように広い場所で実際に測ってみると、2m以下の近距離は理論通り【図-23】ですが、2m以上の遠距離【図-24】はやや電圧が高めになりました。 これは本機のS/N比が悪いためで、距離が大きくなるとAM放送や電線などから受ける外部雑音の割合が大きくなるので、受信電圧が高めに出る傾向があります。

【図-22】 近所の公園で距離と検出電圧の測定
【図-23】 受信電圧の減衰(2m以下)
【図-24】 受信電圧の減衰(2m以上)

距離と受信電圧の関係式はMS-Excelで簡単に近似式を得られますから、プログラムで換算できます。 【図-25】ではTracker-3の距離表示も一緒に計測しましたが、結構いい加減な値です・・・。 距離表示の直線性というのも雪崩ビーコン評価の大事な要素だと思います。

【図-25】 距離表示 vs.実距離
【図-26】 距離の表示例

9. まとめ

雪崩ビーコンの原理試作という個人的な興味で始めたプロジェクトですが、457kHzを増幅するRF AMPを除いて満足できる結果が得られました。 RF AMPは(1)バーアンテナとの干渉回避、(2)SN比の改善が求められます。

主要部品のPSoC5LPのモジュールは秋月電子でJPY1,500で手に入り(※CypressのサイトではUS$10!!)、周波数変換に使ったDDSはJPY800程でeBayで買えます(※DDSは送受信それぞれ1個の水晶振動子で置き換え可能)。 RFアンプはゲイン制御付きのLSIがJPY4,000で手に入りますが、購入する程の勇気はまだありません・・・。

原理試作はTracker DTS程度の機能ですが、RF AMPの問題が解決して10,000JPY程度で市販できれば、雪崩ビーコンの普及が進むと思います。

【図-27】 試作ビーコンの内部