GNSS受信機Septentrio mosaic-go X5

category: gnss

はじめに

私は、測位衛星(GNSS: global navigation satellite system)受信機であるmosaic-go CLAS受信機を持っていますが、さらにmosaic-go x5受信機も追加導入しました。

CLAS版は、日本の準天頂衛星みちびきのCLAS(シーラス、centimeter level augmentation service)を利用できます。一方、x5版は、その代わりに、欧州Galileo衛星のE6B信号や、中国北斗(BeiDou)衛星のB2b信号を受信できます。特に、私の知る限り、B2b信号を受信できる受信機は、Pocket SDRと、このx5受信機だけです。そのCLAS版受信機がとても良かったので、x5版も導入しました。

ここでは、この受信機からE6B信号とB2b信号の生データを出力することを目指します。

ネットワークからの受信機利用

私は、このmosaic-go x5受信機をCQ出版社の販売ページより購入しました。

このx5版受信機は、CLAS版と同様に、手のひらサイズの美しい金属筐体に収められていています。この受信機にアンテナを接続し、さらにパソコンとUSB接続して、ブラウザでhttp://192.168.3.1/にアクセスすると、管理画面が現れます。

Septentrio mosaic-go x5 receiver

特定PCのみしかこの受信機が利用できないのは不便です。ネットワーク経由にて他PCからこの受信機を利用できるよう、この受信機をLinux PCに接続し、socatコマンドを使って、http://my-pc-address:1080/のように、ポート番号1080にてアクセスできるようにしました。

socat TCP4-LISTEN:1080,fork TCP4:192.168.3.1:80

または、Linuxプロセス管理シェルスクリプトgovern.shを利用して、socatを起動します。次の設定ファイルmosaic_tcp.conf.shをホームディレクトリ下のlocalディレクトリに設置して、govern.sh mosaic_tcp.conf.sh startsocatを起動できます。

RIP=192.168.3.1
RPORT=80
LPORT=1080

MARK="TCP4-LISTEN:${LPORT},fork TCP4:${RIP}:${RPORT}"
CMD=socat
ARGS="${MARK}"

ファームウェアアップグレード

BeiDou B2b信号を扱うために、ファームウェアを現時点での最新の4.14.0にアップデートしました。Septentrioのx5受信機サポートページからファームウェアをダウンロードして、Admin->Upgrade画面で新ファームウェアを適用しました。

Septentrio mosaic-go x5 firmware upgrade

Admin->About画面にあるReceiver Identificationは次のとおりです。

Septentrio mosaic-go x5 about

Admin->About->Permitted Capabilityによると、この受信機には多くの信号受信が許可されています。

Septentrio mosaic-go x5 permitted capability

設定

x5受信機の初期設定では、高精度衛星測位補強情報が放送される、Galileo HAS(ハス、high accuracy service)のE6B信号や、BeiDou PPP-B2bのB2b信号は受信されません。これらの受信設定をオンにしても、受信機の追尾チャネル数が足りずに、これらの信号をキャッチできません。そこで、もったいないのですが、いくつかの衛星信号受信を諦めます。

設定画面のAdmin->Exper Control->Control Panel->Navigation->Advanced User Settings->Satellite Trackingで、私はロシアのGLONASS(グロナス)全部と、SBAS(エスバス、satellite based augmentation system)全部と、インドのNAVIC(ナブアイシー、Navigation for Indian Constellation)全部と、みちびき(QZSS: Quasi-Zenith Satellite System)の現在運用していないJ01, J05, J06をオフにしました。

Septentrio mosaic-go x5 satellite tracking

そして、Admin->Exper Control->Control Panel->Navigation->Advanced User Settings->Signal Trackingにて、E6B信号GALE6BCとB2b信号BDSB2bをオンにします。

Septentrio mosaic-go x5 signal tracking

E6B信号とB2b信号の生データ出力

次に、Galileo E6B信号やBeiDou B2b信号が受信できることを確認します。GNSS->Satellites and Signals画面でGalileoを選択します。E6BCの信号(単位はdB-Hz)が観測されています。E6B信号が5衛星から観測できていますので、HAS情報も復号できそうです。

Septentrio mosaic-go x5 signal tracking

次にBeiDouを確認します。PPP-B2bはBeiDou-3の静止衛星から放送されることになっていて、みちびきホームページのList of Positioning Satellitesによると、C60が受信できればPPP-B2bが利用できそうです。C60のB2b信号の受信が確認できました。

Septentrio mosaic-go x5 signal tracking

そして、E6B信号とB2b信号の生データを出力できるようにします。NMEA/SBF OutからNew SBF Streamを選択し、IntervalにOnChange(衛星から情報が受信できたらすぐに出力する)を、また、GALRawCNAV(Galileo commercial navigation message)とBDSRawB2b(BeiDou B2b message)を選択して、Finishボタンを押します。

Septentrio mosaic-go x5 signal tracking

そして、この受信機に接続したLinux PCのlocalディレクトリに、例えばmosaic_raw.conf.shファイルを次のように記述して、govern.sh mosaic_raw.conf.sh startで起動すれば、このPCのTCP 2000番ポートにこの生データが出力されます。他のLinux PCからncコマンドを用い、nc my-pc-address 2000にて生データ出力を確認できます。

RIP=192.168.3.1
RPORT=2000
LPORT=2000

MARK="TCP4-LISTEN:${LPORT},fork TCP4:${RIP}:${RPORT}"
CMD=socat
ARGS="${MARK}"

Septentrio生データのデコーダを作り、HASやPPP-B2bの補強情報をダンプしてみようと思います。

おわりに

Septentrio mosaic-go x5受信機を導入して、Galileo E6B信号とBeiDou B2b信号の生データを出力できるようにしました。この受信機で、Galileo HAS情報や、BeiDou PPP-B2b情報を観測できることを目指しています。