GPS測位のこと

こんにちは、エンジニアの関です。 学生時代、隣の研究室でGPSを使った測量を研究していたので、その実習のお手伝…

こんにちは、エンジニアの関です。

学生時代、隣の研究室でGPSを使った測量を研究していたので、その実習のお手伝いで学んだことや、調べたことを健忘録的に書いていこうと思います。きっとなにかの役に立つはず。

 

GPSってなに?

もともとアメリカが軍事用に運用している測地用のシステムです。GPS衛星という人工衛星からの電波を地上で受信して測位するシステムです。カーナビやスマホにデバイスが入っているので機能に関しては皆さんよくご存知かと思います。GPS衛星は地上からの高度2万kmくらいを秒速4kmくらいで地球の周りを12時間かけて回っています。私が学生だった1991年頃は20機弱くらいが運用中だったかと思うのですが、いまは30機ほどの衛星が稼働中だそうです。

人工衛星の位置(http://stdkmd.com/sgt/)

「運用中の GPS 衛星」がGPS衛星です。

学生時代にどういう研究をやっていたかというと、あらかじめ位置が測量成果で確定している3地点の三角点で一定時間データを取り、ソフトウェアで処理することで、それぞれの距離がどの程度の精度で
得られるか、また、従来の測量成果に対してどうかという研究をしていました。観測に1地点最低でも2名以上が必要なので、大抵の実験に要員として参加していました。作業は設置、撤去、衛星が見える方向に木の枝があると、土地の所有者に確認してノコギリで切る、などですが。

GPSで位置がわかる仕組み

GPSでの測位は三辺測量を原理としています。簡単に説明すると三辺の長さと2つ頂点の位置がわかれば、あと一つの頂点の位置が決定できます。

2つの衛星の正確な位置がわかれば、衛星間の距離は計算できますので、赤線の「衛星との距離」を測れば2次元平面内でのGPS受信機の位置を特定する事ができます。

衛星の位置を特定するには、GPS衛星の軌道情報と時刻情報が必要です。

特にGPS衛星は秒速4kmと非常に高速で移動しているので、非常に高い精度の時刻情報が必要になります。下のWikipediaのページでは、「時刻の誤差がたとえ100万分の1秒であったとしても、距離の誤差は300mにも及んでしまう」とあります。
グローバル・ポジショニング・システム(Wikipedia)

GPS衛星では、高精度原子時計を搭載しています。そして、全GPS衛星の軌道情報と時刻情報を送信しています。GPS受信機では、GPS衛星から受信する軌道情報と複数のGPSからの時刻情報から高精度の時刻情報を計算します。

上の三辺測量の図に話を戻すと、2つの衛星との測位から確定出来るのは、図の平面上の2次元の位置となります。

実際に高精度の時刻情報に同期して、3次元で位置を確定するには、4つ以上のGPS衛星の電波が受信できるのが条件になっています。

ただし、3つの衛星から受信している時には、高度を確定できませんが、緯度経度を決定できます。(地球楕円体表面に居ると仮定して演算する)

GPS衛星の測地の誤差のこと

GPS衛星は、直接拡散方式のスペクトラム拡散の無線で情報を送信しています。

スペクトラム拡散#直接拡散 (Wikipedia)

ひとつのGPS衛星から民間でも使用できるC/Aコードと軍用のPコードの2種類の信号が送信されています。民間用のC/Aコードを使用した一点測位で10m程度、軍用のPコードを使用すると精度は16cm程度と言われています。軍用ではミサイルの誘導などに使われています。

また運用開始~2000年5月までは、民間利用の精度を制限するために、C/Aコードの情報にノイズが乗せられており一点測位の精度は100m程度でした。これをSA(Selective Availability、選択利用性)といいます。

ただ、1990~1991年の湾岸戦争前後では、一時的にSAが解除されて、測位の精度があがりました。このことは当時はあまり知られておらず、測地の研究室で当惑していたのを覚えています。当時、中東地域での測位精度を上げるためか、GPS衛星の軌道も変えられた様で、衛星が多く見える時間帯を選ぶのに苦心していた様でした。

またGPS受信機と受信が可能なGPS衛星の位置関係での誤差があります。


GPS Test (Google Play)

上の図は、AndroidのGPSの受信状態を表示できる「GPS Test」の画面です。

「●」がGPS衛星が現在位置から見える(って肉眼で見えるわけではありませんが)方向と仰角です。「▲」はロシアのGLONASSという測地用衛星の位置です。

このスマホのデバイスでは、ロシアのGLONASSを補助的に使用できる機能を持っているようです。GLONASSを補助的に使えるデバイスは一般的にGPSのみの機種より受信できるGPS衛星の数が少ない環境での精度が高いです。

誤差の話に戻ると、もしビルの影などで、受信可能なGPS衛星が南北方向にしか位置していなかったとしたら東西方向の精度を高くすることが出来ませんので、東西方向の誤差が大きくなります。

また都市部では、電波が地面や建物に反射して、様々な経路でGPS受信機に届く事で精度が落ちます。スマホに搭載されているデバイスではマルチパスの影響を取り除くのは難しいようです。

衛星測位システム#マルチパス (Wikipedia)

マルチパス (Wikipedia)

スマートフォンとGPS

デバイススマートフォンでのGPS測位では、A-GPSという補助機能があります。

2010年のA-GPSの記事 (携帯Watch)
GPSの測位に必要な情報としては、上の方で、
測位に使うGPS衛星の軌道情報
正確な時計(または正確な時刻に同期した時計)
が必要と書きました。

A-GPSを利用するとスマホが接続している基地局の情報から概算位置を割り出し、そこで受信出来るGPS衛星の軌道情報を取得する事ができます。こうすることによって、GPS衛星から軌道情報が送られてくる(50bpsと非常にゆっくり)のを待たず、短い時間で測位を完了することが出来ます。

しかし、A-GPSは基地局からの電波が届いており通信可能な条件でしか動作しないので、圏外では動作しません。

補助GPS(A-GPS)#運用モード (Wikipedia)

「MSA (Mobile Station Assisted) モード」での動作では、位置の計算までサーバ側で行わせることができます。

スマートフォンとA-GPSに関しては下の記事が詳しいです。

IIJmio mtg #5 MVNOとGPS (Slideshare)

 

間違いなど指摘していただけたら、とても有難いです。

では。