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