2021年9月14日 (火)

Xiaomi MI 8のGNSSで「A3」サイズの「CQ」を一筆書き

 下記の一筆書きの話の続きです。

  2021年9月 7日 (火)
  Xiaomi MI 8のGNSSでA4サイズの「CQ」を一筆書き
  http://kenshi.air-nifty.com/ks_memorandom/2021/09/post-9f4362.html

 一筆書きらしきものはできたのですが、見ばえがよくありません。

(01)GNSS Analysis_Position_ADR_A4サイズ2文字ver.
01gnss-analysis_position_adr_a42ver


(02)A4サイズ2文字ver.(「CQ」部分抜粋)
02a42vercq


 前回のテストでは、文字のパターンを正確にトレースしようと思って、スマホで文字をゆっくりなぞったのですが、これが裏目に出て、文字がジャギーになってしまいました。
 
 今回のテストでは、以下の点を変更しました。
 ・文字のサイズを大きくした。(2文字/A4→2文字/A3)
 ・文字「CQ」のトレースに要する時間を短くした。(120秒→50秒)
・ログ開始位置と文字トレース開始位置を一致させた。
・お手本を使わずに適当に描画した。(お手本を作るのが面倒だったので・・)

スマホの設定は前回と同じです。
 なお、仰角のマスク角度は30°です。


 今回のテスト結果は以下の通りです。

(03)描画エリア(ほぼA3) 黄枠部分
03a3


(04)GPS Test (2021.09.14 06:38 JST)
04gps-test-20210914-0638-jst


(05)GNSS Analysis 表示パネル
05gnss-analysis

 

(06)GNSS Analysis_Position_ADR_A3サイズ2文字ver.
06gnss-analysis_position_adr_a32ver 
横グリッド間隔:10cm、縦グリッド間隔:5cm


(07) A3サイズ2文字ver.(「CQ」部分抜粋)
07a32vercq

    これであれば、それ程無理をせずに「CQ」と読めるかも・・・

 

 色々試行錯誤しましたが、どうにかスマホで1文字/A4サイズの一筆書きができるようになったので、一応目的は達成です。


   相対位置精度は10cmレベル程度は得られているようですが、GNSS Analysisの後処理で生成されたKMLファイル"gnss_log_2021_09_14_06_39_39_Adr"をGoogle Earthで表示してみると、地図の位置と実際のトレース位置が数10cm程度離れています。
 測位地点におけるGoogle Earthの地図の精度がどの程度かよく判りませんが、相対位置の精度よりも絶対位置の精度がかなり悪いような感じです。

 搬送波位相情報を出力可能なスマホとしては、Huawei P10、Huawei Mate 20 Pro、Xiaomi MI 8が手元にありますが、いまのところ、一筆書きができたのはXiaomi MI 8しかありません。
 Xiaomi MI 8はデータの転送が面倒なので、Huawei Mate 20 Proを使いたいのですが難航しています。
 
 搬送波位相情報を利用するためには、Duty Cycleを無効化する必要があるようですが、Huawei Mate 20 Proのメニューにはそのような項目がありません。
  以下のXDA Forumsに色々な書き込みがありますが、Huawei Mate 20 Proは一寸難しいような感じです。

  Disabling GNSS duty cycle - Huawei - XDA Forums
  https://forum.xda-developers.com/t/disabling-gnss-duty-cycle.3891079/

 個人的には、AndroidのRoot化アプリのような感じで、"Disabling GNSS duty cycle"アプリをインストールすると、duty cycleが無効化されるようになるとうれしいのですが・・・(妄想です)

| | コメント (0)

2021年9月 7日 (火)

Xiaomi MI 8のGNSSでA4サイズの「CQ」を一筆書き

 以前、以下の資料を見て、スマホで一筆書きをすることを妄想していたのですが、実現は中々難しいです。

  トランジスタ技術2018年1月号 地球大実験 ピタリ1cm!新GPS誕生
  【第1部 新GPS「RTK」入門】
  第4話 1センチ・リアルタイム測位の応用(3) 書道スキャナ
  https://cc.cqpub.co.jp/lib/system/doclib_item/1163/

  トランジスタ技術1月号は「地球大実験 ピタリ1cm!新GPS誕生」
  自律ロボカーや書道スキャナの実験解説あります!
  Dec 8, 2017
  CQTV CQ出版社 公式チャンネル
  https://www.youtube.com/watch?v=W7twEo5mSv0
     (10:46-14:00)

  Performance analysis of GPS+Galileosmartphone raw measurements
  GSA, 30th may2018
  https://www.gsa.europa.eu/sites/default/files/expo/augusto_mazzoni_la_sapienza.pdf
  Huawei P10 and gestures with VADASE kinematic
  Carrier Phase only - L1 (p19)

  GNSS Analysis Tools “GnssAnalysisApp”
  https://github.com/google/gps-measurement-tools/releases/download/V3.0.3.0/Installation.and.User.Manual.GNSS.Analysis.App.v3000.pdf
  6 Work with your own data
  6.3 WLS, Kalman Filter, and ADR positions

 

 今まで、一筆書き用に購入したスマホは以下の3台です。
  Huawei P10 :搬送波位相
  Huawei Mate 20 Pro :搬送波位相、2周波(L1+L5)
  Xiaomi MI 8:搬送波位相、2周波(L1+L5)、GNSSデューティサイクリング無効化

 スマホ単体の性能だけでなく、ログアプリや解析アプリとの相性もあるようで、色々の条件で実験してみましたが、公園のベンチのシートの形状をトレースところまではできましたが、一筆書きまでには至りませんでした。
 
 最近、雨が続いていたので朝の散歩をさぼっていたのですが、久しぶりに晴れたので、散歩に出かけることにしました。
 散歩の途中に、オープンスカイとは言えませんが、比較的周りが開けた公園があり、今朝は空気も澄んでいるので一筆書きができそうな予感がしてXiaomi MI 8を持って出かけました。

 使用条件は以下の通りです。

  測位場所:公園に設置されたテーブルの上(天空率70%程度?)
  スマホ:Xiaomi Mi 8 (Android 10, BCM47755) 
    GNSSデューティサイクリング:無効
      (「設定」→「追加設定」→「開発者向けオプション」→「GNSS計測の完全な実行」)
    航空機モード:オン 
  Raw Data取得アプリ:GnssLogger (v.3.0.0.10)
  使用PC:ThinkPad X250 (Windows 10 Pro, 64bit)
  Raw Data後処理ソフト:GNSS Analysis (V3.1.0.0)

 測位の際には、公園のテーブルの上に、A4用紙に「CQ」と印刷したお手本を置いて、スマホでなぞりました。
 スマホを手で持つと、手や体がGNSS信号を遮るので、自撮り棒を使用しました。

 なお、「CQ」は、雑誌や出版社の名前ではなくて、趣味のアマチュア無線で使用する一括呼出しの符号です。

無線局運用規則
https://www.tele.soumu.go.jp/horei/reiki_honbun/72393000001.html
------------------------
(一括呼出しの応答順位)
第百二十七条 免許状に記載された通信の相手方である無線局を一括して呼び出そうとするときは、左の事項を順次送信するものとする。
一 CQ 三回
二 DE 一回
三 自局の呼出符号 三回以下
四 K 一回
------------------------

 

【(01)一筆書きの準備】
01_20210907181201

 

【(02)GNSS Status】
02gnss-status

 In View 35, In Use 34なら受信状態は悪くないと思われます。PRN195も2波(L1+L5)見えます。


 測位は、Xiaomi Mi 8にインストールしたGnssLoggerで行いました。
 ログデータはThinkPad X250に取り込んで、GNSS Analysisで後処理を行いました。


【(03)GNSS Analysis_Control Panel】
03gnss-analysis_control-panel_20210907181301

【(04)GNSS Analysis_C/No strongest stats】
04gnss-analysis_cno-strongest-stats


【(05)GNSS Analysis_Position_Raw】
05gnss-analysis_position_raw


【(06)GNSS Analysis_Position_Kalman Filter】
06gnss-analysis_position_kalman-filter


【(07)GNSS Analysis_Position_ADR(Ele-mask 5°)】
07gnss-analysis_position_adrelemask-5

 縦軸の目盛りは5cm間隔、横軸の目盛りは10cm間隔です。

 

【(08)GNSS Analysis_Position_ADR(Ele-mask 30°)】
08gnss-analysis_position_adrelemask-30

 仰角のマスク角度を5度から30度にした方が、見ばえが少し良くなる?


【(09)CQ?】
09cq-org

 一寸無理があるかもしれませんが、「CQ」かもしれないという程度にはなっているかもしれません。
 今回は欲張ってA4に2文字入れましたが、1文字にすればもう少し見やすくなると思います。
 そのうち実験してみます。

 

【関連内部リンク】
2019年6月26日 (水)
HUAWEI P10のGPS RAWデータで一筆書きが可能!?
http://kenshi.air-nifty.com/ks_memorandom/2019/06/post-32ef4d.html

2020年7月 2日 (木)
VADASEに関係するかもしれない特許
http://kenshi.air-nifty.com/ks_memorandom/2020/07/post-1f1e97.html

2021年3月 6日 (土)
Xiaomi MI 8でベンチシートを測位
http://kenshi.air-nifty.com/ks_memorandom/2021/03/post-4178bc.html

2021年9月14日 (火)
Xiaomi MI 8のGNSSで「A3」サイズの「CQ」を一筆書き
http://kenshi.air-nifty.com/ks_memorandom/2021/09/post-1f5e82.html

 

| | コメント (0)

2021年3月 6日 (土)

Xiaomi MI 8でベンチシートを測位

 今までは、Xiaomi MI 8 (Android 10)とGnssLogger(v3.0.0.1)の相性が悪くてまともにRaw Dataのログを取得することができなかったので、やむやくGnssLogger (v.2.0.0.0)を使っていました。
 ところが理由はよく判りませんが、不安定ではありますが、最近、GnssLogger(v3.0.0.1)でもログが取れることが多くなりました。

 テストとして、公園のベンチシートをターゲットにして測位精度(後後処理)を調べて見ました。

  測位場所:公園の遊歩道の脇に設置された木陰のベンチシート(0.5m×2m)の4辺
  測位期間:約50秒
  スマホ:Xiaomi MI 8 (Android 10)  
  Raw Data取得アプリ:GnssLogger (v.3.0.0.1)
  Raw Data後処理ソフト:GNSS Analysis (V3.1.0.0)

 測位結果は以下の通りです。

【(01)GnssLogger_Status】
01gnsslogger_status

【(02)GnssLogger_Skyplot】
02gnsslogger_skyplot


【(03)GnssLogger_Plots】
03gnsslogger_plots_20210307060101


【(04)GNSS Analysis_Control Panel】
04gnss-analysis_control-panel


【(05)GNSS Analysis_Positions_ADR】
05gnss-analysis_positions_adr


【(06)Google Earth_Positions_ADR】
06google-earth_positions_adr


  スマホを手に持って、 ベンチシート(0.5m×2m)の4辺に沿って移動させましたが、それ程歪まずに4辺がトレースできているようです。
 地図の座標の精度が判らないので、正確には判断できませんが、結構精度が良いような感じがします。
 ADRのご利益(搬送波位相情報のご利益?)ということになるのでしょうか?
 スマホをもっとゆっくり(5cm/s程度?)動かせば、英数字くらいは書けるかもしれません。

| | コメント (0)

2021年3月 2日 (火)

スマホ用Raw Dataログアプリ"GNSS/IMU Logger"を使ってみました

 現在、GNSS関連のRaw Dataを出力可能なスマホとして、Huawei P10(Android 9)とXiaomi MI 8(Android 10)を使っています。
 Raw Data記録用(ログ取得用)のアプリとしては、下記のGnssLoggerを使用していますが、スマホとの相性が悪いのか、動作が安定しません。スマホを再起動すると症状が改善することもありますが、いつもうまくいくとは限りません。

  GnssLogger App
  Developed with Google
  https://play.google.com/store/apps/details?id=com.google.android.apps.location.gps.gnsslogger&hl=en_US&gl=US

WHAT'S NEW
 GnssStatus list, skyplot and raw measurements logging in RINEX V3 format added.
ADDITIONAL INFORMATION
 Updated:February 11, 2021
 Size:5.3M
 Installs:1,000+
 Current Version:v3.0.0.1
 Requires Android:7.0 and up


 
 同じような機能を持った別のアプリがないかと思って探していたら、以下のアプリを見かけました。

  GNSS/IMU Logger
  STA-UniBwM
  https://play.google.com/store/apps/details?id=com.ista.android.apps.location.gps.gnsslogger

新機能
New Features Version v1.0.0.1 :
 1) the drift due to the hardware clock error from smartphone has been compensated before logging RINEX measurements. The Raw GNSS measurement were processed to log RINEX measurements but maintaining constant 'FullBiasNanos' instead of using the instantaneous value. This avoids the 256 ns jumps each 3 seconds that create a code-phase divergence due to the clock.
 2) A real-time Code Minus Carrier Plot is available for better Carrier tracking visualization.
追加情報
 更新日:2020年12月19日
 サイズ:7.8M
 インストール:500+
 現在のバージョン:v1.0.0.1
 Android 要件:7.0 以上

 インストール数が500+ということは、あまり知られていないアプリなのかもしれません。
 開発者(STA-UniBwM)の情報を見てみると以下のように書いてあります。

Fakultät für Luft- und Raumfahrttechni / Startseite / LRT9.2 Satellitennavigation / Forschung / ISTA Logger
https://www.unibw.de/lrt9/lrt-9.2/forschung/ista-logger
-------------------------------------------------
ISTA Logger is a GNSS / IMU Android Logger developed at the Institute. The Logger is the first of its kind which can log GNSS and IMU data from the Smartphone simultaneously. The Logger is based on GNSS Logger developed by Google and is extended to log RINEX 3.03 and IMU data from the smartphone.
-------------------------------------------------

 開発者のSTA-UniBwMは、ドイツの大学のようなので、多分アプリは安全であろうということでインストールしてみました。
 しばらく使ってみた感じでは、GnssLoggerよりも安定して動作しているような気がします。


【(01)GNSS/IMU Logger】
01gnss_imu-logger

【(02)USER MANUAL Version v1.0.0.1 】
02user-manual-version-v1001

【(03)SETTINGS】
03settings

【(04)SENSOR】
04sensor

【(05)GNSS】
05gnss

【(06)SATPLOT】
06satplot

【(07)CMCPLOT】
07cmcplot

【(08)SENSORLIST】
08sensorlist


GNSS/IMU LoggerをインストールしたXiaomi MI 8で実際に測位して、GNSS Analysisで表示してみました。
 なお、今回はXiaomi MI 8を三脚に固定して静止状態で約5分間測位しました。天空率は80%程度。

 測位データは、Xiaomi MI 8の内部共有ストレージの下位に"GNSS-INS Logger"というフォルダが生成され、その中の"IMU_Log","Raw_Log","Rinex_Log"にそれぞれのデータが保存されるようです。


【(09)Xiaomi MI 8の"Raw_Log"等の保存場所】
09xiaomi-mi-8raw_log


以下は、Xiaomi MI 8で取得した"Raw_Log"のデータをGNSS Analysis(v3.1.0.0)で処理して表示したものです。

    GNSS Analysis App V 3.1.0.0 Release
  https://github.com/google/gps-measurement-tools/releases


【(10)Raw(14m×8m)】
10raw


【(11)Kalman Filter(7m×4m)】
11kalman-filter

【(12)ADR(0.3m×0.15m)】
12adr

なお、カッコ内の数値は、南北方向のばらつき×東西方向のばらつきです。
 ばらつきが、30cm×15cmということは、リアルタイムではありませんがサブメータ級ということになるのでしょうか?

 この程度の精度が確保できるのであれば、1畳の広さに2文字程度は書けるかも・・・

| | コメント (0)

2021年2月25日 (木)

GNSS AnalysisのRaw/Kalman Filter/ADRの差をGoogle Earthで表示

 世の中の流れからは2~3年遅れになりますが、最近2周波GNSS Raw Data対応のXiaomi MI 8を中古で購入したので、頭の老化防止を兼ねて色々と遊んでいます。
 高精度測位の詳細は理解できませんが、測位データの後処理で精度が変化するのが視覚的に確認できるので一寸面白いです。
 
 行き当たりばったりで色々触っていますが、測位の手順や必要な情報の場所を忘れることがあるので、再インスト―ルに備えて、自分用に整理してみました。


①GnssLoggerをスマホにインストールする。

  GnssLogger App - Apps on Google Play
  Developed with Google
  https://play.google.com/store/apps/details?id=com.google.android.apps.location.gps.gnsslogger&hl=en_US&gl=US

 最新版と思われるv3.0.0.1をXiaomi MI 8(Android 10)にインストールしたのですが、途中で止まったり、アプリ選択の初期画面に戻ったりして正常に動作しません。
 仕方がないので、現在は古いバージョン(v2.0.0.1)を入れて使っています。
 完全に安定しているとは言えませんが、どうにかLogの取得はできます。

 試しに、v3.0.0.1を1周波Raw Data対応のHuawei P10(Android 9)にインストールしてみたところ、不安定ですがどうにか使えました。


②GNSS Analysis AppをPCにインストールする。

  GNSS Analysis App V 3.1.0.0 Release
  https://github.com/google/gps-measurement-tools/releases

 PCは、ThinkPad X250(Windows 10)を使っています。
 マニュアルに"The first time you install MATLAB Runtime it will take a long time to download the license-free program from The MathWorks (like, 30 minutes):"と書いてありますが、当方の環境では約20分かかりました。


③GnssLogger(Xiaomi MI 8)による測位およびLOGデータ保存。

 「GnssLogger」→「SETTING」(適宜必要スイッチON)→「PLOT」(受信信号を確認)→「LOG」→「START LOG」→(例:5分間)→「STOP & SEND」


④Xiaomi MI 8のLOGデータ(measurement log file)をUSB経由(ファイル転送モード)でPCに転送する。
 なお、PC側の転送先については、マニュアルには以下のようなヒントが書いてありました。
---------------------------------------------
 It is a good idea to store each measurement log file in its own subdirectory under
 .../Desktop/GnssAnalysisFiles/yourSubdirectory/
---------------------------------------------

場所としてはデスクトップが判りやすいのですが、1回の分析処理で10個程度のファイルがLOGデータと同じディレクトリに生成されるので、デスクトップがファイルのアイコンだらけになります。

【(01)Xiaomi MI 8のLOGデータの格納場所】
01xiaomi-mi-8log

 LOGデータは、"gnss_log_2021_02_23_12_53_44"のようなファイル名でテキストファイルとして格納されています。


【(02)LOGデータの中身】
02log

 TXTフォーマットのLOGデータの中にRaw Dataが含まれています。
 他の各種データも含まれています。

-------ここまでがスマホ(GnssLogger)側の話です。-------

-------これ以降はPC(GNSS Analysis)側の話です。-------

 基本的には、以下の資料のp.16の"6 Work with your own data"以降の操作になります。

  Installation.and.User.Manual.GNSS.Analysis.App.pdf
  https://github.com/google/gps-measurement-tools/releases/download/V3.1.0.0/Installation.and.User.Manual.GNSS.Analysis.App.pdf


⑤GNSS Analysisを起動する。
 MS-DOS風の窓が開いてコマンドプロンプトが点滅しますが、砂時計もプログレスバーもないので、本当に処理が進んでいるのか心配になります。
 最初は長時間反応がないので、インストールに失敗したと思って何度か再インストールしました。
 結局、当方の環境では30秒程度でControl Panelが表示されました。

【(03)GNSS Analysis_Control Panel】

03gnss-analysis_control-panel

 マニュアルには"BE PATIENT"と書いてありますが、想定待ち時間が不明だとストレスが溜まります。


⑥“Find Log File”で目的のLOGデータを選択する。
当方の場合は、GnssAnalysisFilesの下位にlogdataという名前のフォルダを作り、更にその下位に、格納するLOGデータのファイル名と同じ名称のフォルダを作り、その中にLOGデータを入れました。
 今回は、LOGデータとして、"gnss_log_2021_02_23_12_53_44.txt"を使用したので、一寸判りにくいですが、階層構造は以下のようになります。

  .../Desktop/GnssAnalysisFiles/logdata/gnss_log_2021_02_23_12_53_44/gnss_log_2021_02_23_12_53_44.txt

 選択するのは最下位のテキストファイルになります。


⑦“Analyze and Plot”をクリックする。
 当方の場合は9個のプロット画像(分析結果表示用の初期画面)が完全に表示されるまでに2分程度かかりました。
 途中から処理中の画面が色々表示されるので、待つのはそれほど苦痛ではありません。

【(04)GNSS Analysisの分析結果表示用の初期画面】
04gnss-analysis

⑧9個のプロット画像の中の右上のPositios(Raw)の画像を全画面表示にする。

【(05)Positios(Raw)】
05analysis_positions-raw


⑨Positios(Raw)の画像の左下の"Show KalmanFilter"をクリックして、画像を表示した後に全画面表示にする。

【(06)Positios(Kalman Filter)】
06analysis_positions-kalman-filter

⑩Positios(Kalman Filter)の画像の左下の"Show ADR"をクリックして、画像を表示した後に全画面表示にする。

【(07)Positios(ADR)】
07analysis_positions-adr

 歩行経路の大体の様子が判ります。

 

-------ここまでがGNSS Analysisの基本的な動作の話です。-------

-------これ以降はGNSS Analysisの処理結果を利用して歩行経路をGoogle Earth上に表示する話です。-------

 この時点では、.../Desktop/GnssAnalysisFiles/logdata/gnss_log_2021_02_23_12_53_44/ のフォルダの中身は、以下のようになっています。


【(08)ThinkPad X250のLOGデータの格納状態】
08thinkpad-x250log

なお、"gnss_log_2021_02_23_12_53_44"がスマホからPCに転送されたLOGデータのテキストファイルで、それ以外のファイルは、分析処理後に自動的に同一ディレクトリ内に生成されたものです。

⑪ /GnssAnalysisFiles/logdata/gnss_log_2021_02_23_12_53_44/ のフォルダの中の下記のKMLファイルをクリック。

⑫"gnss_log_2021_02_23_12_53_44_rawPr"をクリック。→Positios(Raw)に対応する経路がGoogle Earthに表示される。
【(09)Google Earth_Raw】
09google-earth_raw

⑬"gnss_log_2021_02_23_12_53_44_rawKfPr"をクリック。→Positios(Kalman Filter)に対応する経路がGoogle Earthに表示される。

【(10)Google Earth_Kalman Filter】
10google-earth_kalman-filter

⑭"gnss_log_2021_02_23_12_53_44_Adr"をクリック。→Positios(ADR)に対応する経路がGoogle Earthに表示される。

【(11)Google Earth_ADR】
11google-earth_adr


【(12)歩行した道路】
12_20210225211001

 測位コースは、農地の中を通る幅2mの道路です。
 進行方向に向かって道路左端に沿って往復しました。
 道の両側には柵があったので、往復路の間隔は1.5m程度です。

 処理方法が、Raw→Kalman Filter→ADRと変化するのに従って、歩行経路のばらつきが小さくなっていくのが判ります。
 見かけ上は、測位位置が北に1.5m程度ずれているように見えますが、地図の座標精度が判らないので、正確なところは判りません。
 リアルタイムでこの程度の精度が得られるのであれば、スマホだけを見ながら試験コースを運転できるかも・・・

 

| | コメント (0)

2021年2月21日 (日)

GnssAnalysisで処理した位置データをKMLに変換してGoogle Earthで表示

 先日、Xiaomi MI 8のRawデータをGnssAnalysisのKalmanフィルタで処理して歩行経路を表示してみました。
 一寸見た感じでは、相対距離では1m程度の精度は出ているような感じはするのですが、絶対位置の精度が判りません。

【(01)GnssAnalysis_Positons_Kalman Filter】
01gnssanalysis_positons_kalman-filter


 Kalmanフィルタで処理したデータをKMLに変換してGoogle Earthで表示すれば、視覚的に位置のずれがある程度判るかもしれません。
 地図の精度は保証しないというGoogleのコメントを以前見たことがありましたが、現在はどうでしょうか?
 スマホで現在位置を地図で確認して、自分がその地図上の位置に居るから地図が正しいとは言えないところが悩ましいです。

 Google Earthの精度はどの程度かよく判りませんが、ある程度の目安になるであろうということで、GnssAnalysisの後処理データをKMLに変換することを考えました。
 多分同じような要求がある筈なので、ネットで一寸調べてみましたが、よく判りませんでした。
 もしかしたら、GnssAnalysisにそのような機能があるのではないかと調べてみたら、Control PanelのStatusの欄にヒントになりそうな以下の情報がありました。

【(02)GnssAnalysis_Control Panel_Status】
02gnssanalysis_control-panel_status


下記の3行がkmlに関係がありそうです。

   Wrote gnssPvt_rawPr to: gnss_log_2021_02_16_15_38_31_rawPr.nmea and *.kml
   Wrote gnssPvt_rawKfPr to: gnss_log_2021_02_16_15_38_31_rawKfPr.nmea and *.kml
   Wrote gnssPvt_Adr to: gnss_log_2021_02_16_15_38_31_Adr.nmea and *.kml

 文の内容から想像すると、GnssAnalysisのPositiosの3種類の出力(Raw, Kalman Filter, ADR)がkmlに変換されてどこかに書き込まれているような感じです。
 今回の場合は、Kalman Filter(Kf?)のデータが欲しいので、"gnss_log_2021_02_16_15_38_31_rawKfPr.kml"を探せばよい筈です。

探してみたら"gnss_log_2021_02_16_15_38_31_rawKfPr"というkmlファイルが見つかりました。
このファイルをダブルクリックすると、無事にGoogle Earthに歩行経路が表示されました。

【(03)Google Earthに表示されたKalmanフィルタ処理後の歩行経路】
03google-earthkalman


   直径3m程度の小さな茂みを目標として、周りをゆっくり歩いて一周しています。
 地図の画像上の茂みの中心とGNSSで測位した歩行円の中心が1.5m程度ずれています。
 測定地における地図の座標精度が判っていれば、測位精度が判断できそうですが、現時点ではサブメートルの精度ということになるのでしょうか?
 近くに一等三角点でもあれば、確認できるのかもしれませんが・・・

 なお、受信条件は以下の通りです。
  場所:農地に隣接した一般開放された空き地(天空率80%程度?)
  測位期間:3分(歩行)
  スマホ:Xiaomi MI 8 (Android 10)  
  GNSS Log取得アプリ:GnssLogger (v.2.0.0.0)
  Logデータ後処理アプリ;GnssAnalysis (V3.1.0.0)

 

【参考外部リンク】
Legal Notices for Google Maps/Google Earth and Google Maps/Google Earth APIs
Last Modified: February 1, 2021
https://www.google.com/help/legalnotices_maps/


Sensors (Basel). 2008 Dec 8;8(12):7973-7981. doi: 10.3390/s8127973.
Horizontal Positional Accuracy of Google Earth's High-Resolution Imagery Archive
https://pubmed.ncbi.nlm.nih.gov/27873970/
--------------------------------------------
Relative to Landsat GeoCover, the 436 Google Earth control points have a positional accuracy of 39.7 meters RMSE (error magnitudes range from 0.4 to 171.6 meters).
--------------------------------------------


利用上の注意(位置精度等について) | 国土地理院
https://www.gsi.go.jp/kanri/kanri41010.html


GNSS Analysis App V 3.1.0.0 Release
released this 24 days ago (2021/02/21現在)
https://github.com/google/gps-measurement-tools/releases
--------------------------------------------
v3.1.0.0
Supports GnssLogger files and RINEX v3 observation files collected from GnssLogger v3.0.0.0
Supports more signals like BDS B2, GAL E5 in position computations
Adapts to the connection change to NASA CDDIS site (now uses HTTPS instead of FTP)
Fixes some known bugs
--------------------------------------------

 

| | コメント (0)

2021年2月19日 (金)

Xiaomi MI 8のRawデータをGnssAnalysisのKalmanフィルタで処理して歩行経路を表示

 最近は、Xiaomi MI 8とGnssAnalysisの組み合わせで色々遊んでいます。
 下記資料を見ると、スマホからのRawデータを後処理することにより、測位特性が改善されるようです。

  GSA Raw Measurements Workshop 2020
  Updated Google Tools: Logging and Analyzing GNSS Measurements
  27  May 2020, v1.1 
      https://www.gsa.europa.eu/sites/default/files/expo/1.1_frank_van_diggelen_-_google.pdf

 上記資料のp.21には3枚の画像が並べられており、赤枠の部分には以下のように書かれています。

 ・WLS position from raw pr
 ・Kalman Filter position from WLS PVT
 ・WLS relative position from ADR(Carrier Phase)

 さらに、以下のような説明があります。
(上記URLから抜粋引用)
--------------------------------------------------------------------
Comparison of positions from the same data set, left to right:
● Raw Pseudorange, processed with Weighted Least Squares (weighted by reported measurement uncertainty).
● Kalman Filter, using WLS position, and WLS velocity (velocity computed from Doppler measurements)
Not shown: WLS position from smoothed pseudorange, is similar to Kalman Filter position.
● WLS position from ADR (Carrier Phase).
Conclusion: you should expect to get noisy positions from Raw Pseudoranges.
--------------------------------------------------------------------

 この資料の測定例の場合は、相対位置の誤差(ばらつき?)で見ると、Raw>Kalman Filter>ADR となるようです。
 ADRの例を見ると、直径2m程度の円の中に一つの文字が描かれています。
 実験で使用されたスマホは、Google Android 10 ということしか判りませんが、もしかしたらXiaomi MI 8(Android 10)でも同様なことができるかもしれません。
 ということで、理屈は殆ど理解していませんが、とりあえず実際に試してみました。

 受信条件は以下の通りです。
  場所:農地に隣接した一般開放された空き地(天空率80%程度?)
  測位期間:3分(歩行)
  スマホ:Xiaomi MI 8 (Android 10)  
  GNSS Log取得アプリ:GnssLogger (v.2.0.0.0)
  Logデータ後処理アプリ;GnssAnalysis (V3.0.3.0)

 空き地の中を適当に歩きましたが、目標となるような構造物がなかったので、直径3m程度の小さな茂みを一周した後に、地表に長方形を想像して4辺と思われる部分を歩きました。
 なお、空き地は凹凸のある歩き難い不整地であり、また、目標がないので、直線的に歩くのは困難でした。

【(01)GnssLogger_Plot】
01gnsslogger_plot
"Total Number of Visible Satellites:48"となっているので、受信環境は悪くないようです。

 

【(02)Analysis C/No strogest sats】
02analysis-cno-strogest-sats

 レベルのばらつきがありますが、QZSのPRN193(L1/L5),PRN194(L1/L5),PRN195(L1/L5)が受信出来ています。

 

【(03)Analysis_Positions(Raw)】
03analysis_positionsraw

  とても歩行経路とは思えません。

【(04)Analysis_Positions(Kalman Filter)】
04analysis_positionskalman-filter

歩いた経路に対応する円と長方形が表示されています。
上側の円が小さな茂み(直径約3m)に対応しています。

 

【(05)目標にした小さな茂み】
05_20210219175901
目標が真円ではないので、表示された円の精度が判りませんが、1m程度の精度は出ているかもしれません。

 

【(06)Analysis_Positions(ADR)】
06staanalysis_positionsadr

 ADRならもっと精度が良くなるかもしれないと期待したのですが、ばらつきが2000m以上という変な値になってしまいました。 理由はよく判りません。
 ADRということは搬送波の位相に関係しているようですが、測定方法が悪かった?
 残念ながら基礎知識がないので、ここから先に進むにはかなりの勉強が必要なようです。

| | コメント (0)

2021年2月11日 (木)

GnssLogger V3.0.0.0を使ってみました

 下記の資料を見ていたら、GnssLoggerの機能が改善されているようです。

  4th GNSS Raw Measurements Taskforce Workshop
  Presentations:
  1.1_frank_van_diggelen_-_google.pdf
  https://www.gsa.europa.eu/sites/default/files/expo/1.1_frank_van_diggelen_-_google.pdf

  GSA Raw Measurements Workshop 2020
  Updated Google Tools: Logging and Analyzing GNSS Measurements
  27  May 2020, v1.1

 詳細はよく判りませんが、RINEXやスマホセンサのデータのログ取得が簡単にできるようになったようです。

 アプリの説明を見ると、最近更新されています。

  GnssLogger App
  Developed with Google
  https://play.google.com/store/apps/details?id=com.google.android.apps.location.gps.gnsslogger&hl=ja&gl=US

  新機能
  GnssStatus list, skyplot and raw measurements logging in RINEX V3 format added.
  追加情報
   更新日:2021年2月10日
   サイズ:5.3M
   インストール:1,000+
   現在のバージョン:v3.0.0.0
   Android 要件:7.0 以上

 技術的な意味はよく理解していませんが、とりあえずXiaomi MI8にインストールして動かしてみました。

【(01)GnssLogger新旧GUI】
01gnssloggergui

 左がHuawei P1に入れた旧バージョン、右がXiaomi MI8に入れた新バージョンです。


【(02)GnssLogger V3.0.0.0】
02gnsslogger-v3000

 GUIがかなり変更になっており、「Log RINEX」等のスイッチがあります。

 

【(03)Log】
03log


【(04)Plots_all】
04plot_all
  可視衛星(信号)数は46波


【(05)Plots_QZSS】
05plot_qzss

6波表示されています。


【(06)Status】
06status

旧バージョンにはなかったタブです。

 

【(07)Skyplot】
07skyplot

 QZSSのPRN194がほぼ天頂にいます。
 方位が固定できるので見やすいです。

  LOGデータの意味がまだよくわからないので、追々勉強します。

 

 

 

| | コメント (0)

2021年2月 9日 (火)

iPhone用200円カバーをXiaomi Mi8用に改造

   先日、中古のXiaomi Mi8を買いましたが、ストラップを付けることができないので、落としそうで心配です。
 専用ケースを探してみましたが、Amazonでは現在は入手困難のようです。
 仕方がないので、百均(ダイソー)で代用品を探していたら、使えそうなカバーがありました。
 本来は、iPhone 12用の手帳型カバーのようですが、サイズ的にはXiaomi Mi8に近いような感じがします。
 200円なので、もし使えなかったとしても被害は小さいということで買ってきました。

【(01)200円スマホカバー No.56】
01200-no56

 

【(02)スマホカバー本体(閉)】
02_20210209223701

 

【(03)スマホカバー本体(開)】
03_20210209223801


【(04)内部ケース除去】
04_20210209223801


【(05)Xiaomi Mi8 貼着】
05xiaomi-mi8


【(06)スマホカバー 裏面】
06_20210209223901

 一寸格好が悪いですが、200円で保護機能が確保できたので、良しとします。

| | コメント (0)

2021年2月 5日 (金)

今更ですがXiaomi MI 8(GNSS L1+L5)を買いました

 2周波スマホには興味がありましたが、今までは高嶺(高値?)の花ということで手が出ませんでした。
 世界初の2周波スマホはXiaomi MI 8のようですが、2018年発売ということで、中古価格がかなり下がってきました。

  World’s first dual-frequency GNSS smartphone hits the market
  Published: 04 June 2018
  https://www.gsa.europa.eu/newsroom/news/world-s-first-dual-frequency-gnss-smartphone-hits-market
 
 ネットの広告をみると2万円程度で中古が買えそうです。
 しかしながら、昔のレビューを見ると、リアルタイムの測位精度はあまり期待できないようです。
 また、目隠し運転の動画(Fake? 現在は閲覧不可)の印象がよくありません。

  Xiaomi Mi 8 Dual Frequency GPS Better Than Others Or Marketing Hype?
  Jun 30, 2018
  https://www.youtube.com/watch?v=ZTEXJHR4tOA

 とは言っても、やっぱりL5の信号を実際に受信してみたいです。

 下記の記事を見ると、Pixel 4, Pixel 4 XL, Xiaomi Mi8を使用して、L1, L5のデータが収集されているようなので、Xiaomi MI 8でもL5の信号は受信できると信じてよいようです。
 ただし、この記事自体は、後処理用のGNSS Rawデータに関するものなので、Xiaomi Mi8の出力でリアルタイム処理ができるかどうかはよく判りません。

  Android smartphones high accuracy GNSS datasets
  2020
  https://research.google/tools/datasets/android-accuracy/
  ”This dataset has 39 traces collected from Pixel 4, Pixel 4 XL, and Xiaomi Mi8.


 結局、秋葉原で時々利用するIosysに適当な在庫があったので、それを購入しました。
 購入したXiaomi MI 8のデバイス情報は以下のようになっていました。

 

【(01)Xiaomi MI 8_デバイス情報】
01xiaomi-mi8_device-info


 購入したモデルは、Android 10になっていました。

 Xiaomi MI 8とPCをUSB経由で接続すると、PCからXiaomi MI 8の内部共有ストレージにアクセスできるので、APKファイルを直接書き込むことが可能です。

【(02)内部共有ストレージ】
02xiaomi-mi8_

 とりあえず受信してみました。
 なお、Duty Cyclingは無効化しました。

・開発者向けオプション表示
[設定]→[デバイス情報]→[MIUIバージョン]を連打
・Duty Cycling無効化
[設定]→[追加設定]→[開発者向けオプション]→[GNSS計測の完全な実行]


【(03)Duty cycling無効化】
03xiaomi-mi8_duty-cycling_20210207181601


【(04)GPSTest】
04xiaomi-mi8_gpstest_20210209213601

【(05)GPSTest_CF_sort】
05xiaomi-mi8_gpstest_cf_sort


【(06)GPS Test_level】
06xiaomi-mi8_gps-test_level


【(07)GPS Test_sky】
07xiaomi-mi8_gps-test_sky


【(08)Mapit】
08xiaomi-mi8_mapit

【(09)GnssLoger】
09xiaomi-mi8_gnssloger_20210207181701


【(10)G-RitZ Logger_1】
10xiaomi-mi8_gritz-logger_1_20210207181801

【(11)G-RitZ Logger_2】
11xiaomi-mi8_gritz-logger_2


【(12)G-RitZ Logger_3】
12xiaomi-mi8_gritz-logger_1

 

 現状では、衛星は沢山捕捉するけれども、精度は4mが限度のようです。

 リアルタイムで高精度測位ができるかもしれないと妄想して、好奇心だけで2周波スマホを買いましたが、発表されている高精度測位関連の論文の数が多い割には、スマホで高精度測位ができたという話はあまり聞かないので、先は長そうです。

| | コメント (0)