F9P RTK Bluetooth版更新

KabutoMLRTKを更新しました。
KabutoMLRTK_20241125T.apk KabutoMLRTK_20241125ST.apk
ユーザー様はダウンロードページからダウンロードしてください。
お試し版が必要な方は、フォームかメール(tanaka@clas.jp)でお申し込みください。

なお、初めてインストールする場合は、一度アプリを立ち上げて進めるところまで実行すると、内部ストレージの中にフォルダーが作成されますので、その中に CLASの時と同じパラメータファイル semidyna.txt と geoid.txt を入れてください。(基準局が今期で観測されている場合に対応しています)

PC \ (デバイス名) \ 内部ストレージ \ Android \ data \ jp.clas.mlrtk.kabuto \ files \ Documents

RTKアプリのテスト観測

秋の夜長に、、、と書こうと思ったら、もう冬なんですね(‘◇’)ゞ
鹿児島は秋桜も満開でまだまだ秋です。
ということで、
秋の夜長にCLASとRTKアンドロイドアプリのテスト観測です。
空気が澄みきって衛星もたくさん見えてたせいか、すぐFIXしました。


山の中を歩いて営業

今日はボーリング位置出しの現場で、MGLR-9PC_Ri-AOを担いで営業してきました。
まずは上空視界が開けたところで、Fixさせそのまま山中へ。
もちろん樹木の下ですからFloatで正確な位置は出せませんでしたが、座標は大まかに合っていました。全部で3点の位置をチェックしましたが、最後の点で、Fix状態ではありましたが座標が大きくずれ、受信機がハングアップしたような感じでしたので、再起動してもう一度測定しました。

山の中ではFixし難い。大事な測点では再起動して再測定する。MGLR-9PC_Ri-AOはケーブルレスで木の枝に引っかからない。
など、良い点、悪い点を知ることができ、今後の開発のためのいい勉強になりました。

ちょっとした裏技

Android RTK アプリの開発で、なかなか Fix し難い状態が続いていましたが、天候、時刻の問題の他に、基準局のアンテナのサビの影響もあったようです。
アンテナとケーブルのコネクタ付近のサビを取ってから、観測時間も暗くなって(19時ごろ)から観測したところ、バッチリFixしました。めでたし、めでたし(^^)

ところで、暗い中で観測したため、RTK と CLAS の切り替えスイッチを間違って CLAS 側にして、RTK アプリを動かしたところ、数秒で Fix しました。後で気付いて、あれれ?でしたが、USB接続の RTK も、RS232C 接続の RTK も、Bluetooth 接続のRTK も数秒で Fix しました。観測精度がどうなるか確認していませんが、ちょっとした裏技を発見!だったかもしれません。

Android RTK RS232C 版ができました

最後に残っていた RS232C 接続の RTK アプリができました。これで、やっと CLAS&RTK の Android アプリシリーズが完成しました。

Android スマホは最新機種でも安価なものは CPU のスピードが遅いのがありますが、それらに対応するアプリも作りました。

今のところ、自作の受信機 Gogh とリットー受信機での動作確認をしていますが、D9C と F9P を使っている受信機ならだいたい動くと思います。ただし、 Bluetooth や RS232C はデバイスの番号などが異なるとつながりません。

Android RTK USB 版ができました

USB接続のRTKがやっとできました。

Bluetooth 版と同じような仕組みなんですが、なかなか動いてくれなくて苦労しました(;’∀’)
これで、
 Bluetooth 接続の CLAS と RTK
 USB 接続の CLAS と RTK
 RS232C 接続の CLAS
ができましたので、次は重機に積む時のRS 232C接続のRTKを作ります。RS232C の CLAS はこの前作りましたので、重機が(重機のことはよくわかりませんが)CLASでもRTKでも動くようになるでしょう。

画像の受信機は リットー 車載用受信機 MGLR-9PC/Ri-MLBT

Android RTK Bluetooth版を更新しました

前バージョンの Android RTK Bluetooth 版は条件によっては、Fix しにくい、Fix してもすぐ Float になる、Float から復帰しにくい、ということがありましたが、20241029版では Fix を維持するように改良しました。
これで、バッチリ、、、だと思います。

Ratio は高須先生の rtklib の解析に難航しており、0.0 のままです。ちょっと時間がかかりそうです。 Android では負荷が大きいので止めました。

Android RTK Bluetooth版を更新しました

前回のアプリは Fix し難いでしたが、プログラムを修正しました。

KabutoMLRTK_20241027T(標準機種用)20241027ST(遅い機種用)です。

テスト観測してみました。
基準局が近いということもありますが、Fix まで数秒でした。
図は基準局の近くを 300m ぐらい回って 6 点観測した後、しばらく経ってから再測した時の格差です。
RTK はすごいです。6点中5点が1cm 以内に入っています。
これで、同じ受信機で CLAS も RTK も観測できるようになりました。
  ネットがつながって基準局が近くにある場合は RTK
  ネットがつながらない場所では少し精度を我慢して CLAS
のような使い方ができます。

※ ratio は、まだ動いていません。もうしばらくお待ちください。 Android では負荷が大きいので止めました。

【備忘録】Android JAVA で RTKLIB をビルドする方法

Android JAVA で RTKLIB をビルドする方法です。
次のような配置で説明します。(RTKLIB をコンパイル、リンクするだけの内容です。実際の利用はこれからです)

(1)GitHub – tomojitakasu/RTKLIB より、RTKLIB をダウンロードします。
app/src/main に cpp フォルダを作成し、RTKLIB の必要なライブラリ( c や h )を入れます。
今回は必要と思われるソース数個を入れようとしたところ、ほとんどがつながっていたため(あるソースでは、他のソースを利用する構造だったため)、ひとつずつエラーが出なくなるまで確認しながら入れました。

(2)project-root に CMakeLists.txt を入れます。(ビルド後は自動で?cppフォルダの中に入ります)
CMakeLists.txt は次のような内容です。
src/main/cpp/ 以下の rtkcmn.c などは、(1)で入れたライブラリです。
文字コードはすべて utf-8 です。他の文字コードは文字化けします。

(3)アプリケーションレベルの build.gradl に ndkVersion を指定します。
CMake とか ndk については検索してください。

(4)native-lib.cpp を作成し、src/main/cpp/ ディレクトリに入れます。
RTKLIB を利用し処理する cpp です。
確認用に、次のような内容( return 1.23 のみ)で作成しました。

(5)MainActivity.java 内での利用は次のようになります。

(6)以上が準備出来たらビルドします。
gradl などをいじると sync などいろいろ必要ですが、省略します。
Android Studio の terminal で、クリーンビルドします。
./gradlew clean build


Android RTK アプリを高機能に

Android RTK アプリを作りましたが、通常のRTK観測でもよくありますが、Fix に時間がかかったり、Fix が切れたりすることがあります。

普通は、何故だろう?とrtklibの設定を見直したりすると思いますが、Android Javaではその機能をゼロから作るのは、 365 連休プログラマーには難しいと判断。

そこで、世界的にも有名な rtklib 様の力をお借りすることにしました。

こんな感じで使わせてもらいます。(誤りがあるかもしれません。現役の労働者諸君! は、時間の無駄になりますから真似しないでください)

お楽しみに!