D-STARの下位層を知りたい。

アマチュア無線のデジタル方式の音声通信はD-STARが主流、だと思う。

15年くらい前の免許で追加申請したID-800を使ったときには、この地方(ローカル)ではD-STARのDVはほぼ聞こえなくて、VoIP(経由の)無線といえばヤエスのWires-IIが流行っていた。Wires-IIは「HRI-100が音声をデジタルに変換してパソコンに送っている」とシリアルケーブルを指して説明してくるものだから、それを真に受けてこれは面白いと思ってノードを買ったのに、自分で設置してみたら音声の符号化はPC側がやってるって分かって心底ダマされたと思った。VoIP無線って言ってるのにVoIPはPC-PC間のやりとりに使われるだけで、無線機 – HRI100 – PC間はただのアナログ音声。FM無線機でフォーンパッチの域を出ない。それに終了した今だから明かすけど、PCに入れるHRI-100のコントロールソフトがノード局一覧から適当に相手のIPが分かって、それを基にHTTPサービスを通して各局のPCの各種情報やC:ドライブルート以下を覗けるバックドア付きでヤバさを直感したから、それ以降QRT

ヤエスはD-STARとは違う方式のC4FMでデジタル化してるが、Wires-Xのとりまとめはヤエス一社でやってて中央集権的だしアマチュア的はどうなんって感じ。D-STARもJARLの中央集権ではあるもののAMBEコーデック以外は比較的オープンだし変復調器の実装も比較的簡単で悪くは無いと思う。最近のアマチュアのD-STARの動向を知らなかったから下位層を中心にキャッチアップしてみた。

世紀末ごろから周波数の有効活用でアマチュア無線もデジタル化しないといけないってことで、総務省がJARLあたりでなんとかいろいろしてD-STARと呼ばれるものができて、他の方式もいろいろあるが現時点のデジタル音声通信用としては世界的に覇権をとった形になっている。D-STARの歴史やら無線機・レピータ使い方など上位層の情報は今となってはいくらでもあるから他を見るとして、OSI参照モデルの物理層・データリンク層に相当する下位層を知りたくなった。変調がどうなってるかとか軽く調べても苦労話みたいなのが多くて技術的興味をなかなか満たしてくれない。

そんな中でもアテになるのがJARLの90年代テイストの解説ページ、音声系は占有周波数帯幅6kHz未満に4.8kbps以下の信号をキャリア周波数間隔6.25kHzにGMSK、QPSK、4価FSKで変調するって書いてある。分からん。そんなん。「アマチュア無線のデジタル化技術の標準方式 Ver6.0a」にはもっと詳しく書いてあって、それを見ると

無線部ヘッダの変調は音声帯域内の MSK 変調で、伝送速度は 1200bps、信号「1」で 1200Hz、信号「0」で 1800Hz とする。

って書いてある。これでやっと分かった。

D-STARは平たく言うとただのAFSKの一種でしかない。つまり、元のデータ1と0に対応して、1200Hzと1800Hzの「トーン」を割り当てて毎秒1200回切り替えてできた「音」をベースバンドとして扱い、それをFM送信機の「音声入力」に入れるだけ。受信はFM受信機の「音声出力」から1200Hzと1800Hzの「トーン」を識別するだけで1と0の信号が得られる。ただそれだけ。(「音声入力」や「音声出力」は、やや正しくない表現で、位相特性の加減で変調器の入力と、周波数弁別機の直後で入出力する。) やってることはAFSKのRTTYや、マイク入力を使うパケット通信と何ら変わらない。原理的にはHFのSSB送信機に突っ込むこともできる

一番参考になった情報→The Utah VHF Society。ベースバンド信号の波形を載せているのはここだけ。a D-Star signal is simply FM: More specifically, it uses Frequency-Shift Keying (FSK) to convey data.(D-Star信号は単にFMです:より具体的には、周波数シフトキーイング(FSK)を使用してデータを伝えます。)

他のAFSKとは異なる特別な要件としてはMSKでありGMSKであるというところ。MSK・GMSKは2値FSKの中でも無駄な部分を極力削ぎ落したもので、ボーレートは低い方のトーン周波数と同じ1200bpsとして、二種類のトーンは600Hzの間隔(1800Hz-1200Hz=600Hz)であり、これは低いほうのトーン1200Hzの1/2、高いほうのトーン1800Hzの1/3となっている。この二種類の正弦波を位相90度(振幅の±の頂点)で切り替える。こうするとスペクトルの広がりを抑えることができて、なおかつGMSKっていうのは二種類のトーンを切り替える瞬間を「なだらか」にすることでさらにスペクトルの広がりを抑えている。(Wikipediaの説明見てGMSKを理解できるならこんな解説は不要だろう。Wikipediaの解説はMSKはQPSKの特別な条件と同じであると言いたいらしくて全体が意味不明な感じになっている。)

この1と0はパケットの構造とスクランブラを通したデータを元にしている。パケットの構造なんかもJARLの解説に一通り書いてある。

D-STARはメーカー主導で(中身が理解できなくて得体が知れないから、)アマチュア的ではない!!みたいな「OMのご意見」を一度くらいはどこかで見聞きしたことがあるだろうけど、GMSKは移動体通信では一般的な変調方式だし、ベースバンドはただのFSKなわけだし音声コーデックをブラックボックスにしている以外、デジタル変調方式としては割と簡単にできている。ここをすっ飛ばして「アマチュア的ではない!」なんて言うのはアマチュア無線技士としての技術力低下が露呈するだけ。

ここまで理解出来たらあとは「DVアダプター」を自作するだけだが、D-STARで残念なのは音声コーデックがAMBE(Advanced Multi-Band Excitation)なこと。これはDigital Voice Systems社の非公開の符号化方式だからエンコードしたければこのメーカーのボコーダーチップが載ったデバイスを準備する必要がある。AMBEのデコードはmbelibというオープンソースソフトがあるのでなんとかなるが、AMBEのエンコードはソフトウェアだけでは今のところできないようで、「DVアダプター」はAMBEチップが載った作例に限られる。

特許の絡みがあるのと、AMBEのエンコードもOSSの実装はちらほらあるからそのうち誰かがやってくれるかもしれない。参考:Improving Open-AMBE for D-Star

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中