シリアルポートに接続されたGPSレシーバF9Pで、ichimillサービスと連携し補正済み位置情報を取得する。
または、善意の基準局等 公開されたNtripCasterのデータを使い補正済み位置情報を取得する。
・PC
Ubuntu 18.04 / ROS Melodic
インターネット回線に接続出来ること。
・C099-F9P application board
・GGB0710(2周波対応GNSSアンテナ)
※Ubuntu 20.04 / ROS Noetic対応進行中
$ cd ~/catkin_ws/src
$ git clone https://github.com/terakenxx/f9p_ichimill.git
$ sudo apt install ros-melodic-nmea-navsat-driver
$ catkin build
$ nano f9p_ichimill/launch/gps_ichimill.launch
F9Pを接続しているシリアルポート名
ichimillユーザー名、ichimillパスワード、ホストURL、マウントポイントを適宜編集
<!-- f9p receiver -->
<node pkg="rosif" type="f9p_driver.py" name="f9p_driver" args="" >
<param name="port" value="(シリアルポート名)"/>
<param name="baud" value="230400"/>
<param name="debug" value="True"/>
</node>
<!-- ichimill -->
<node pkg="rosif" type="ichimill_connect.py" name="ichimill_connect" args="" output="screen" >
<param name="username" value="(ユーザー名)"/>
<param name="password" value="(パスワード)"/>
<param name="port" value="2101"/>
<param name="host" value="(ホストURL)"/>
<param name="mountpoint" value="(マウントポイント)"/>
<param name="debug" value="True"/>
</node>
$ nano f9p_ichimill/launch/gps_ntripcaster.launch
<!-- f9p receiver -->
<node pkg="f9p_ichimill" type="f9p_driver.py" name="f9p_driver" args="" respawn="true" respawn_delay="5">
<param name="port" value="(シリアルポート名)"/>
<param name="baud" value="230400"/>
<param name="debug" value="True"/>
</node>
<!-- ntrip caster -->
<node pkg="f9p_ichimill" type="ntripcaster_connect.py" name="ntripcaster_connect" args="" output="screen" >
<remap from="/caster/rtcm_data" to="/softbank/rtcm_data"/>
<param name="username" value="(ユーザー名)"/>
<param name="password" value="(パスワード)"/>
<param name="port" value="2101"/>
<param name="host" value="(ホストURL)"/>
<param name="mountpoint" value="(マウントポイント)"/>
<param name="debug" value="True"/>
</node>
$ roslaunch f9p_ichimill gps_ichimill.launch
$ roslaunch f9p_ichimill gps_ntripcaster.launch
$ rosrun f9p_ichimill fix2csv.py
f9p_ichimillフォルダに「fix_日付.csv」のファイル名で保存されます。
RTKのLEDが点滅していれば、補正済み位置情報を取得出来ている

以下のようなエラーが出る場合、次のコマンドを実行
[INFO] [1633851715.741557]: serial port Open...
Could not open serial port: I/O error(13): could not open port /dev/ttyACM0: [Errno 13] Permission denied: '/dev/ttyACM0'
$ sudo chmod 666 /dev/ttyACM0
質問、バグレポートありましたら、Issuesへお気軽に書き込んでください。
つくばチャレンジ、中之島ロボットチャンレンジ参加者の皆さん 現地でも気軽にお声がけください。
MissingLink kenji.terasaka
http://wiki.ros.org/nmea_navsat_driver
http://docs.ros.org/en/api/nmea_msgs/html/msg/Sentence.html
https://ales-corp.co.jp/service-use/
The source code is licensed MIT. The website content is licensed CC BY 4.0,see LICENSE.
ソフトバンク株式会社様 /ALES 株式会社様より提供されている次の RTK 補正データ配信サービスを使用させて頂きました。
・ SB サービス名 : 高精度測位サービス ichimill( イチミル )
・ ALES サービス名 : センチメートル級測位サービス

