トラ技ジュニア No.29(2017年春号)注目記事
「 GNSS/GPSプレシジョン・コンパスの製作 」の補足情報

GNSS受信機NEO-M8Tのパソコンへの設定 &
RTKLIBのラズベリー・パイへの導入方法

海津 裕

 

 トラ技ジュニア No.29(2017年春号)に掲載した記事「 GNSS/GPSプレシジョン・コンパスの製作 」の補足情報を公開します.

トラ技ジュニア No.29(2017年春号) トラ技ジュニア No.29(2017年春号)の目次はこちら

 

ユーブロックスNEO-M8Tの設定

●Windowsパソコンによる受信衛星システムの設定

 NEO-M8Tはあらかじめ,Windowsパソコンによる設定が必要です.ユーブロックス社のウェブサイトからu-centerをダウンロードしてインストールしてください.

https://www.u-blox.com/ja/product/u-center-windows

 NEO-M8TをUSBで接続すると,ドライバが自動的にインストールされます.設定方法は参考文献を参照してください(1).ここでは,GPSとSBAS,BeiDou,QZSSを使用する設定にします.

 

ラズベリー・パイへのRTKLIBの導入

 ラズベリー・パイについては,くわしい説明は省きます.まず,公式サイトからRASPBIAN JESSIEをダウンロードし,SDカードにイメージを書き込みます.

 

●RTKLIBとは

 RTKLIBは,東京海洋大学の高須知二さんが開発したオープン・ソースのソフトウェアRTKライブラリ群です.従来,受信機内部で行っていたRTKの計算を外部のコンピュータで行え,非常に低コストで高精度の測位が可能になりました.このソフトウェアをラズベリー・パイにインストールします.

 特徴は,@WindowsやLinux,MacOSなどさまざまなプラットフォームで動作すること,Aリアルタイム処理と後処理が行えること,B各種のGNSS受信機や入力データに対応していることなどです.現在人気が高いライブラリです.

 

●ラズベリー・パイの初期設定

 まずは,アップデートを行います.

$ sudo apt-get update
$ sudo apt-get install

 

●RTKLIBのインストール

 Github(ギットハブ)をインストールして,RTKLIBのダウンロード,インストールを行います(2)

$ sudo apt-get install git

 新しいディレクトリを作り,移動します.

$ mkdir myRTKLIB
$ cd myRTKLIB

 RTK-LIB 2.4.2を自分のディレクトリにクローンします(2.4.3ではmakeの際にエラーが出る可能性がある).

$ git clone https://github.com/tomojitakasu/RTKLIB.git

RTKLIB/appフォルダに移動しmakeします.その後,いったんhomeディレクトリに戻ります.

$ chmod 755 makeall.sh
$ ./makeall.sh
$ cd

 今回使用するrtkrcvが入っているapp/rtkrcv/gccに移動して,アクセス権を変更します.

$ cd myRTKLIB/RTKLIB/app/rtkrcv/gcc/
$ chmod 755 rtkstart.sh
$ chmod 755 rtkshut.sh

 USBポートに2台のM8Tボードのケーブルを挿します.以下のコマンドを入力すると,現在接続されているシリアル・ポートが表示されるので,基準局と移動局のデバイス名を覚えておいてください.どちらかわからなくなった場合は,片方を抜いて,コマンドを再び入力すれば,判別できます.

 この後のconfファイルの設定で使用します.私の環境では,/dev/ttyACM0と/dev/ttyACM1が発見されました./dev/ttyAMA0はラズベリー・パイのピン・ヘッダのシリアル・ポートです.

$ ls /dev/ttyA*

 

●設定ファイルの設定方法

 RTKLIBでは,さまざまなパラメータを設定するのに,*.confファイルを使用します.myRTKLIB/RTKLIB/app/rtkrcvディレクトリに,基本的な*.confファイルが入っているので,それを適当に変更して使用します.

私はいつも,WindowsパソコンからWinSCPというソフトを使って,ファイルのブラウズやテキスト・ファイルの修正を行っています.テキスト・エディタの文字コードは常にUTF-8になるように設定してください.日本語のコメントは入れないでください.また,各行の"="は常に同じ場所から始まるようにしてください.パラメータの詳細については,RTKLIB/DOC/に入っているRTKLIBのマニュアルをご覧ください.

myRTKLIB/RTKLIB/app/rtkrcvに移動し,rtk.confをmyrtkbl.confと別名で保存してください.次にファイル中で以下の行を修正してください.

console-soltype =enu # 測位結果の形式をenu東,北,上にします
inpstr2-type =serial # 2つめの入力もシリアルからとします
inpstr2-path =ttyACM1:115200:8:n:1:off # デバイス名とシリアルの設定を行います
inpstr1-format =ubx # 受信機からの入力フォーマットはUBXです
outstr1-type =tcpsvr # 測位結果をネットワークで送ります
outstr2-type =file # 測位結果をファイルで保存します
outstr1-path =:52001 # 測位結果のネットワークのポート
outstr2-path =sol2_%Y%m%d%h%M.pos # 測位結果のファイル名,年月日時間分は自動的につけてくれる
outstr1-format =enu # 測位結果の形式をenu東,北,上にします
outstr2-format =enu # 測位結果の形式をenu東,北,上にします
logstr1-type =file # 移動局の生データをファイルで保存します
logstr2-type =file # 基準局の生データをファイルで保存します
logstr1-path =rov_%Y%m%d%h%M.log # 移動局の生データのファイル名
logstr2-path =ref_%Y%m%d%h%M.log # 基準局の生データのファイル名
file-cmdfile1 =../../../data/ubx_m8t_bds_raw_5hz.cmd # 受信機設定ファイル
file-cmdfile2 =../../../data/ubx_m8t_bds_raw_5hz.cmd # 受信機設定ファイル
pos1-posmode =movingbase # 移動基線モード
pos1-frequency =l1 # 使用周波数は周波数はL1のみ
pos1-elmask =25 # 仰角マスクです.FIXのしやすさを見て選んでください
#pos1-snrmask =0 # 旧バージョンに対応した項目なので,コメントアウトしてください
pos1-navsys =51 # 使用する衛星に合わせてビットマスクを設定し10進数で指定します
pos2-armode =fix-and-hold # FIXが外れにくい設定です
pos2-baselen =0.24 # アンテナ間距離をメートルで指定します
pos2-basesig =0.02 # アンテナ間の予想誤差をメートルで指定します

 

●rtkrcvの開始

 RTKLIB/app/rtkrcv/gccに移動し,以下コマンドでrtkrcvが起動します.

$ ./rtkrcv -o ../myrtkbl.conf
rtkrcv>start

rtkserver startと出れば,スタートが成功しています.以下コマンドを入力すれば1秒おきに測位のステータスが表示されます.

rtkrcv> status 1

 スタートしてから数分すると,status of solutionがfloatからfixに変わります.このとき,baseline length fixedが目的のアンテナ間距離になっていれば,大丈夫です.なかなかFIXにならない場合は,ratio of ar validationをご覧ください.この値が1前後で全く増えなければ,アンテナ設置場所の変更を検討してください.Ctrl-Cで,プロンプトに戻ります.rtkrcvを終了するには,以下のコマンドを入力してください.

rtkrcv> shutdown

 

●WindowsパソコンへのRTKLIBのインストール

インストール方法は,参考文献(1)をご覧ください.RTKLIB/bin/rtkplot.exeを起動して,ファイル・メニューの[File]→[Connection Setting]でOptをクリック,TCP Server Addressにラズベリー・パイのアドレスを入力してください.Portは前述の設定(outstr1-path)と同じにしてください.Solution Formatも,前述の設定に合わせてE/N/U-Baselineとしてください(図1).

 


図1 

 

 [File]→[Connection]でラズベリー・パイ上のrtkrcvに接続されます.図2のようなグラフを表示できます.このグラフは,Gnd Trk(地上プロット)ですが,他には,位置,速度,加速度,衛星数などをプロットすることも可能です.ちょうど原点(基準局)から24cmあたりに移動局の位置がプロットされています.

 


図2 

 

参考文献

(1)藤沢奈緒美;高精度0.5°!3D姿勢センサGPSコンパス,pp82-84,トランジスタ技術,2016年2月号,CQ出版社.
(2)オープンソース準天頂衛星(QZSS)受信機,Raspberry PiでRTKLIB,
   http://blog.goo.ne.jp/osqzss/e/c6870961f79b8c688c09129301209300

 トップページに戻る