生のGPSデータを用いた位置計算
GPSシステムの重要性
- GPSはグローバル・ポジショニング・システムであり、Googleマップでの経路検索から配車アプリまで、さまざまなアプリケーションで使われている
- GPSは非常に高精度で、プレートテクトニクスや大陸移動の測定にも使われている
- GPSは米国政府が所有しており、地政学的な理由で他国に対するアクセスが制限される可能性がある
- そのため、ロシアのGLONASS、欧州連合のGalileo、中国のBeiDouのような、他国のGPS類似システムが開発された
座標系
- 位置を表現するために、さまざまな座標系が使われる
- 一般的に使われる緯度・経度は、数学的な計算には適していない
- ECEF (Earth Centered, Earth Fixed) 座標系は、地球中心を原点として位置を表現する
- WGS 1984システムは、最も一般的に使われるECEF座標系である
高さの定義
- 高さを定義する際には、基準となる面を定義する必要がある
- 基準楕円体とジオイドモデルが使われる
- 基準楕円体には物理的な意味はなく、ジオイドは同一の重力ポテンシャルを持つ点の集合として定義される
緯度と経度
- 測地緯度は、楕円体表面での法線と赤道面の間の角度である
- 測地経度は、基準子午線と特定の子午線の間の角度である
- 測地高は、楕円体を基準に測定された高さである
測地座標とデカルト座標の変換
- 測地座標をデカルト座標に変換するのは簡単である
- デカルト座標を測地座標に変換するには、反復的な手順が必要である
局所座標系
- 局所座標系は、ユーザーの位置を中心とするENU (East-North-Up) システムである
- ECEF座標をENU座標に変換する方法がある
GPSを用いたユーザー位置の計算
衛星位置の決定
- 衛星の軌道は楕円形で、6つのケプラー要素によって完全に指定される
- 衛星の位置は、GPSインターフェース仕様書に従って計算される
ユーザーと衛星の間の距離計算
- GPS受信機は、衛星信号のタイムスタンプを使って衛星までの距離を計算する
- この距離は疑似距離 (pseudorange) と呼ばれる
- 正確な位置を計算するには、ユーザーと衛星の時計オフセットおよび大気遅延をモデル化する必要がある
ユーザー時計オフセットの推定
- ユーザー時計オフセットは、ユーザー位置とあわせて推定される
ユーザー位置および時計オフセット推定アルゴリズム
- 初期ユーザー位置と時計オフセットを設定し、反復的に修正する
- 各衛星について疑似距離を補正し、信号送信時刻を計算し、衛星位置を計算する
- 線形代数の手法を使って最小二乗解を求める
Matlabコードに関する注意事項
- 一部の方程式ではソルバーを呼び出す必要がある
- たとえば、平均近点離角 (M) から離心近点離角 (E) を計算するにはソルバーが必要である
実験設定
- 生のGPSデータを収集するには、特殊なGPSユニットが必要である
- u-bloxのNEO-M8Tおよび6Tチップが適している
- RTKLibのSTRSVRユーティリティを使って、生のGPS信号を受信・保存する
生のGPSデータ処理
- STRSVRは、生のGPSデータをRTCM3形式で保存する
- MatlabライブラリgoGPSを使ってRTCMデータをデコードし、Matlabのデータ構造に変換する
結果分析
- 位置と時計オフセットの変化を分析する
- 位置の東西/北/上方向 (E/N/U) 成分の変動を分析する
- 時計オフセットの変動を時間に沿って分析する
衛星の方位角/高度計算
- ユーザー中心のENUフレームで衛星の方位角と高度を計算する
GN⁺のまとめ
- この記事は、GPSシステムの動作原理と位置計算方法を説明している
- GPSデータの精度を高めるために、さまざまな補正手法が使われる
- Matlabコードを通じて、実データを処理・分析する方法を提供している
- GPSシステムの技術的インフラを理解するうえで有用である
- 類似機能を持つプロジェクトとしてRTKLibとgoGPSがある
1件のコメント
Hacker Newsのコメント
Android はすでにキャリア位相へのアクセスを提供しており、これにより同じ地域内のデバイス間の相対位置を非常に高精度で測定できる
GPS 受信機を自作したい人向けのオープンソースプロジェクトがある
GPS 関連のコメントでよく貼られるリンクだが、それには十分な理由がある
さらにインタラクティブな説明を提供する別のリンクもある
水面にごくまれに短時間だけ浮上する水生生物の GPS データを収集している研究者に会ったことがある
次の段階は PPP または RTK
別の優れたオープンソース実装もある
ユーザーと信号源の幾何配置が、ユーザー位置の不確実性にどのような影響を与えるかを示す図がある
GPS は、日常生活で相対論的効果を考慮しなければならない数少ない応用の一つだと聞いたことがある
地球平面説の人たちへの練習問題: もし衛星が球形の地球を周回していないなら、携帯電話の GPS マッピングがどう機能しているのか説明してみよ