2021年10月 1日 (金)

Huawei Mate 20 Pro静止測位テスト(GNSS Analysis)

 懲りずに高精度測位もどきの実験をやっています。
 今まで色々な組み合わせを試してみた範囲では、Xiaomi MI 8+GnssLogger+GNSS Analysisの組み合わせであれば、あまり手間を掛けずにそこそこの精度が得られているような感じがします。
 しかしながら、Xiaomi MI 8は諸般の事情でデータ転送が面倒なので、できればHuawei Mate 20 Pro(LYA-L29)を使いたいのですが、残念ながら今までのところ期待するような効果は得られていません。

 今までは行き当たりばったりで、適当にGNSS Analysisの後処理のパラメータを変更してテストしていましたが、今回は仰角マスクに着目してテストしてみました。

 テスト条件
  ログ取得用スマホ:Huawei Mate 20 Pro(LYA-L29) ,Android 10, EMUI 11.0.0, Kirin 980
  ログ取得アプリ:GnssLogger (v.3.0.0.10)
  ログ後処理ソフト:GNSS Analysis (V3.1.0.0)
  ログ後処理用PC:ThinkPad X250(Windows 10 Pro, 64bit)

 受信環境は、完全なオープンスカイとは言えませんが、In View 63, In Use 60なら悪くないと思います。

【(01)GPS Test(Chartcross Limited)】
01gps-testchartcross-limited

【(02)GPSTest(barbeauDev)】
02gpstestbarbeaudev

 

 近所の公園のテーブルの上にHuawei Mate 20を置いて、静止状態で約5分間ログデータ(Raw Dataを含む)を取得しました。
 取得したログデータ"gnss_log_2021_09_20_06_37_13"は、スマホからPCに転送し、GNSS Analysisで後処理しました。


 以下、GNSS Analysisで仰角マスクの値を変更したときの後処理の結果です。

[①デフォルトの仰角マスク(5°)]
【(03)GNSS Analysis Control Panel(Load Error)】
03gnss-analysis-control-panelload-error

 ・読み込みエラー発生
 ・5ファイル生成:21Nx1,rawx1,RNXx3


[②仰角マスク(15°)]
 ・読み込みエラー発生
 ・5ファイル生成:21Nx1,rawx1,RNXx3


[③仰角マスク(30°)]
【(04)GNSS Analysis各種表示パネル】
04gnss-analysis_20211001143001

【(05)GNSS Analysis_Positions_raw】
05gnss-analysis_positions_raw

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

【(07)GNSS Analysis_Position_ADR(No position)】
07gnss-analysis_position_adrno-position

【(08)GNSS Analysis_ADR error】
08gnss-analysis_adr-error

 ・読み込み完了
 ・10ファイル生成:21Nx1,KMLx2,Accessx1,rawx1,NMEAx2,RNXx3)
 ・ADR位置データなし。

 

 以上のテストの結果から見ると、仰角マスクの値をデフォルトの5°より大きくして、ノイズやマルチパスの影響を受けやすい低仰角の衛星の信号を除外して演算することにより、読み込みエラーが改善されたように思われます。
 しかしながら、ADRの位置データは出力されていないので、搬送波の位相情報が適切に受信できていないのかもしれません。

 今までの経験では、ADRによる位置の精度が高かったので、静止状態であれば良い結果が得られるのではないかと期待したのですが、残念ながら位置出力自体が得られませんでした。

 Xiaomi MI 8の場合は、仰角マスク5°で約120秒間移動しながら測位した場合でも、ADRの位置データは出力されているので、もしかしたら機種依存の問題かもしれまません。
 Huawei Mate 20 Proは、Duty Cycleを無効化できませんが、Xiaomi MI 8は可能です。

 

以下の資料にDuty Cycleの説明がありますが、周期的にTXCOが死ぬようなDuty Cycleの場合は、位相情報の利用は難しいような感じです。

USING GNSS RAW MEASUREMENTS ON ANDROID DEVICES
https://www.euspa.europa.eu/system/files/reports/gnss_raw_measurement_web_0.pdf
1 GNSS BASICS NEEDED FOR UNDERSTANDING RAW MEASUREMENTS
2.HOW TO ACCESS GNSS RAW MEASUREMENTS USING ANDROID APIS
2.4 Using GNSS Raw Measurements
2.4.3 Carrier phase measurements
2.4.3.1 Duty cycle


 Duty cycleを無効化できるスマホは何機種かあるようなので、そのうち調べてみたいと思います。

| | コメント (0)

2021年5月20日 (木)

カメラ画像とGNSS地図を分割スクリーン録画(Huawei Mate 20 Pro)

趣味でスマホのGNSS(GPS)高精度測位もどき(サブメートル)を色々試していますが、なかなか安定した精度が得られません。
 基準となる正確な座標情報が利用できないので、安直にGoogle MapsやGoogle Earthを代用基準にしています。
 以前の情報なので内容が一寸古いかもしれませんが、Google Earthの画像は主要都市でサブメートルの解像度ということなので、ある程度の目安になるかもしれません。
 なお、経験的には、もう少し精度が良いような気がします。

 最近は、あちこちに移動して、2周波(L1+L2)、生データ(搬送波位相)対応のHuawei Mate 20 Proで測位し、測位位置をGoogle Earthで確認して「近い」、「遠い」と一喜一憂しています。
 測位している時点では、自分の位置は目視で確認できるので、比較的簡単に位置の比較ができます。
 しかしながら、記録済みログテータに基づいて自己位置との相違を確認する場合には、測位した場所の詳細な情報は覚えていないことがあります。
 測位地点をスマホで撮影すれば、とりあえず問題は解決しますが面倒です。
 また、移動中にスマホで測位しながらスマホで撮影するというのは難しいです。

 なにか簡単な方法はないかと考えてみたら、Huawei Mate 20 Proの「画面分割機能」と「スクリ―ン録画」を使えばどうにかなりそうです。

  画面分割機能について【画像付】 | HUAWEI サポート 日本
  https://consumer.huawei.com/jp/support/content/ja-jp00727025/

  スクリーン録画方法について【画像付】 | HUAWEI サポート
  https://consumer.huawei.com/jp/support/content/ja-jp00727064/


 とりあえず撮影テストをしてみました。

  使用スマホ:Huawei Mate 20 Pro/LYA-L29 (Android 10, EMUI 11)
 カメラアプリ:Open Camera
         https://play.google.com/store/apps/details?id=net.sourceforge.opencamera
  GNSSアプリ:①GNSS Status (GPS Test)
          https://play.google.com/store/apps/details?id=at.harnisch.android.gnss
        ②3PGo
          https://play.google.com/store/apps/details?id=com.spaceopal.pppgo

 カメラアプリは、検索で最初に表示されたものを選んだだけなので、他に適切なアプリがあるかもしれません。
 なお、動画ファイルは以下の場所に格納されます。(PCから見た場合)
  PC\HUAWEI Mate 20 Pro\内部ストレージ\Pictures\Screenshots

【(01)カメラ+GNSS 分割表示(福岡空港着陸)】

 

 取り合えず画面分割のテストをしました。
 マニュアル通りに操作してもうまく行かなかったので、試行錯誤してどうにか2画面のスクリ―ン録画ができるようになりました。
 なお、画面分割の場合はカメラアプリの挙動が違うようで、露出が一寸変でした。
 GNSSアプリは、オフライン地図が使えるGNSS Status (GPS Test)を使用しました。


【(02)カメラ+GNSS P-in-P表示(福博であい橋)】

【(03)福博であい橋】
03_20210520102601


 本題の測位位置の確認テストです。
 Google Earthで構造物を確認できて、構造物に沿って歩行することができ、オープンスカイの条件に近いということで、宿泊ホテルの近くの「福博であい橋」でテストしました。
 GNSSアプリは、2周波(L1+L2)、生データ(搬送波位相)対応のスマホであれば、メートルレベルの測位精度が得られるということで3PGoを使用しました。
なお、アプリの説明には以下のように書いてありました。
 "3PGo brings Precise Point Positioning (PPP) to smartphones, enabling position accuracy in the meter range."
 "3PGo-PPP full experience is achieved when your smartphone is able to access phase raw measurements of the two navigation frequencies (L1 and L5 for GPS and E1 and E5 for Galileo)."

 橋の端に沿って歩きながら測位してみました。
 動画を見た範囲では、表示が3秒程度遅れますが、実際に歩いた経路と測位経路の差は、0.5~1m程度に収まっているようです。
 ただし、Google Earthは座標精度が保証されていないので、目安程度にしかなりませんが、それ程悪くない結果であるように思われます。
 なお、PPPの条件が完全に満足されると、PPPの文字の横のマークが緑色になるのですが、今回はオレンジ色だったので、受信条件が期待したほどは良くなかったのかもしれません。
 自宅の近所では、これほど安定して精度が維持されることは無かったので、オープンスカイの重要性を認識できました。
 市街地でも、常時この程度の精度が確保できるとうれしいです。

 

【追記】
 なぜか、福岡空港(FUK)への着陸の動画が成人指定されてしまいました。
 最初のタイトルに含まれていた"FUK"が抵触した?
 危ない単語に類似していると機械的にアウト?
 元の動画を削除し、タイトルを変更して同じ動画を再度投稿しましたが、同様に成人指定になったようです。
 コンテンツが同一である場合はタイトルだけを変更しても無効?
 一応、事情説明のアピールをYouTubeに提出しましたがどうなることやら・・・

 

【追記2】
 YouTubeから「お客様のコンテンツに年齢制限を設定しました」というメールが来ていました。
Youtube

 

 動画の内容自体には問題が無いと思われるので、タイトルの中の"FUK"が怪しそうです。

    IATA 3-Letter Codes of Airports
    https://www.nationsonline.org/oneworld/IATA_Codes/airport_code_list.htm
    Fukuoka Japan FUK

 YouTubeのAI(?)が"four-letter word"の親戚であると認識したのかもしれません。
 インターネットでは、自分の認識不足で、思いもしないような落とし穴に落ちることがあります。

 

【2021.05.21追記】
 アピールが認められて、成人指定が解除されたようです。

| | コメント (0)

2021年3月30日 (火)

Huawei Mate 20 Pro+3PGoによる歩行測位

 測位環境が悪かったのかもしれませんが、3PGoの静止測位結果が一寸変な感じです。
 今まで使ってみた印象では、オープンスカイであれば、歩きながら使ってもそこそこの精度は出るようですが、途中で立ち止まると表示位置がずるずると移動してしまいます。
 
 念のための歩行中の測位精度をチェックしてみました。
 最初は、公園のベンチをターゲットにしました。

【(01)公園のベンチを一周(Huawei Mate 20 Pro+3PGo)】
01huawei-mate-20-pro3pgo


 歩行経路の円の中心とベンチの中心が大体一致しているので、Google Mapの座標が正しいとすれば、1m程度の測位精度は出ているような感じです。
 本当は、ベンチの外周に沿って正方形に歩きたかったのすが、あまりにも挙動不審なので、散歩のフリをしてベンチの周りを歩いて回ってみました。(周囲に他の人がいたので・・・)
 なお、PPPランプは連続的に緑色に点灯していたので、2周波高精度測位モードのなっていると思いますが、正確なところはよくわかりません。

 次に、オープンスカイの条件がかなり満たされていると思われる農道で試してみました。

【(02)農道をUターン(Huawei Mate 20 Pro+3PGo)】
02huawei-mate-20-pro3pgo

 農道の左端を歩いて途中でUターンし、同様に進行方向左側の端を歩きました。
 農道でUターンも結構怪しいですが・・・
 地図では、歩行経路が北東に1~2mずれた感じになっています。
 なお、歩いているときは比較的経路が直線的ですが、停止すると経路が乱れています。
 歩行中よりも静止状態の方が精度が低いというのは不思議が感じがします。
 IMU(INS)のデータが測位情報にリンクしているのであれば、何か影響があるのかもしれませんが、3PGoの説明を見た範囲ではそんな感じは無いようです。
 なお、上記農道の画像では、PPPランプが赤色になっていますが、これは帰宅後にログデータを読み出してスクリーンショットを撮ったためです。
 
 スマホ単体(基準局不使用)で測位精度20~30cmへの道は遠いです。

| | コメント (0)

2021年3月27日 (土)

2周波対応アプリ3PGoの実験用にHuawei Mate 20 Proを買いました

  3PGoは2周波測位に対応しているようなので、一寸試してみたいです。

  3PGo
  Spaceopal GmbH
  https://play.google.com/store/apps/details?id=com.spaceopal.pppgo&hl=ja&gl=US
  "3PGo brings Precise Point Positioning (PPP) to smartphones, enabling position accuracy in the meter range."

  NAVCAST – 3PGo App
  https://spaceopal.com/navcast/navcast-app/

      Do you want to learn more about our app " NAVCAST – 3PGo
      https://twitter.com/spaceopal/status/1321766415985201153


 しかしながら、使用可能な端末がかなり限られています。

  LIST OF DEVICES PROVIDING RAW MEASUREMENTS
  NAVCAST – Raw Measurements Devices
  https://spaceopal.com/navcast/navcast-app/raw-measurements-devices/

 比較的最近にXiaomi MI 8を買ったばかりなので、同じような端末を買うのは一寸気が引けますが、好奇心に負けてHuawei Mate 20 Proを買ってしまいました。

【(01)端末情報】
01_20210327115601


【(02)認証マーク】
02_20210327115701


 早速、Huawei Mate 20 Pro(Android 10, EMUI 11.0.0)に3PGoをインストールしました。
 インストール数が100+というのは、一寸寂しいかも・・・


 オープンスカイの条件に近い場所で試してみました。
 今回は公園のベンチにHuawei Mate 20 Proを置いて静止状態で測位しました。


【(03)Huawei Mate 20 Pro+3PGoによる静止測位結果】

 

 静止状態で測位したのですが、見ている間にどんどん位置が移動していきます。
 感じとしては、普通のGNSSと同じ低程度です。
 測位を開始してから約40秒で10m程度移動しています。
 受信条件が悪いのかと思いましたが、PPPの文字の横のマークが緑色になっているので、2周波を使用したPPP動作を行っていると考えてよいようです。

【(04)PPP動作中】
04ppp

 なお、2周波が正常に受信出来ていない場合は、マークがオレンジ色になるようです。

【(05)2周波受信不良】
05_20210327120201


 どこか設定が悪いのでしょうか?
 Ntripの設定が必要なのかと思いましたが、接続は自動的に行われるようです。

 念のために、他のアプリで受信状態を確認してみました。

【(06)GPS Test (Chartcross Limited)】
06gps-test-chartcross-limited
https://play.google.com/store/apps/details?id=com.chartcross.gpstest&hl=ja

 In View 61, In Use 61なら悪くないです、なお、数値は衛星数ではなくて信号数(受信波数)です。

【(07)GPSTest (barbeauDev)】
07gpstest-barbeaudev
https://play.google.com/store/apps/details?id=com.android.gpstest&hl=ja


受信レベルはばらついていますが、L5、E5aは14波受信できています。


以下は、他のアプリでの表示例です。

【(08)GnssLogger】
08gnsslogger
https://play.google.com/store/apps/details?id=com.google.android.apps.location.gps.gnsslogger&hl=ja&gl=US

 

【(09)GalileoPVT】
09galileopvt
https://play.google.com/store/apps/details?id=esa.estec.galileo.galileopvt&hl=ja&gl=US


【(10)GADIP3】
10gadip3
https://play.google.com/store/apps/details?id=com.galileoapp.othisavros.gadip3&hl=ja&gl=US

 

 スマホ単体でメートルレベルの精度を得るのは中々難しそうです。
 受信環境がかなり影響を与えるようなので、別の場所を探して試してみる予定です。


 

 

| | コメント (0)