擬似距離とドップラー

GNSS受信機が実際に測っている2つの観測量を、手を動かして理解する

① 擬似距離 — コードのズレで時間を測るρ = c × τ + 時計誤差

コード相関実験 — レプリカ符号を受信符号に合わせて遅延τを見つける

衛星までの距離 r 21,500 km
レプリカの遅延 τ̂ 30.0 chip
実物のC/Aコードは1023チップ・1ms周期。図は127チップに簡略化。1チップ ≒ 0.98 μs ≒ 293 m

なぜ「擬似」距離? — 受信機の時計誤差は全衛星に同じだけ乗る

白枠 = 真の距離 / 塗り = 受信機が測った擬似距離。時計誤差 δt を動かすと、全衛星の測定値が同じだけずれる。

受信機時計誤差 δt +0.15 ms

たった0.1msの時計ズレで約30kmも「全部の距離」が伸び縮みする。このズレは全衛星共通なので、未知数(4つ目)として位置と一緒に解いてしまう — これがGNSSの核心のアイデア。だから衛星は最低4機必要。

② ドップラー周波数 — 衛星は秒速4kmで動いているf_d = −(v_r / c) × f_搬送波

上空を通過する衛星のドップラー

衛星の速度 v 3.9 km/s
衛星の高度 h 20,000 km
波面リングは伝搬速度を誇張した模式図。前方で密(周波数↑)、後方で疎(周波数↓)になる。
擬似距離の中身 — 式で見る誤差の正体

受信機が測る擬似距離 ρ は、幾何学的な真の距離 r に色々な誤差が乗ったものです:

ρ = r + c(δt_受信機 − δt_衛星) + 電離層遅延 + 対流圏遅延 + マルチパス + 雑音

誤差要因大きさの目安対策
受信機時計誤差km級(水晶時計)4機目の衛星で未知数として解く
衛星時計誤差数m航法メッセージのaf0/af1/af2で補正
電離層遅延数m〜数十m2周波(L1+L5)で除去、または放送係数で軽減
対流圏遅延2〜10mモデルで補正
マルチパス数m〜数十mアンテナ・L5広帯域・環境選び
コード測定雑音数十cm〜数m平滑化(搬送波でコードを均す)

「衛星時計」はメッセージで補正でき、「受信機時計」は方程式で解ける — 残る電離層・マルチパスとの戦いがGNSS高精度化の歴史です。

チップ分解能から搬送波位相へ — cm級測位への道

上の実験のとおり、コードの山を1チップ間違えると約293m(L5なら約29m)ずれます。実際の受信機は相関のピーク形状を内挿してチップの1/100程度まで読むので、コード擬似距離の分解能は数十cm〜数m程度です。

さらに上を目指すのが搬送波位相測位: L1搬送波の波長はわずか19cm。この波の位相を1/100まで読めばmm級になります。ただし搬送波は同じ波形の繰り返しなので「何波長目か」(整数値バイアス)が分からない — これを解く技術がRTKやPPPで、確定すればcm級測位が実現します。QZSSのCLAS(L6)はこの確定を助ける補強情報を配っています。

ドップラーはGNSSでどう使われているか

GPS衛星は秒速約3.9kmで飛んでおり、静止した受信機でもL1で±5kHz程度のドップラーシフトが生じます(この図の平面モデルは幾何を単純化しているので、やや大きめの値が出ます)。搬送波周波数に比例するので、同じ通過でもL5はL1の約75%のシフトになります — バンドを切り替えて確認してみてください。

受信機にとってドップラーは:

(1) 捕捉のハードル: 信号を見つけるには「コード位相 × ドップラー周波数」の2次元サーチが必要。周波数を数百Hz刻みで仮定しては相関を試す。A-GNSSが概略位置と時刻をくれると、このサーチ範囲が激減して捕捉が速くなる。
(2) 速度センサー: ドップラーから受信機の速度がcm/s級で直接測れる。カーナビの速度・進行方向表示は位置の差分ではなくドップラー由来。
(3) 追尾の基準: PLL(位相同期ループ)が刻々変わるドップラーを追いかけ続けることで、搬送波位相測定も可能になる。

歴史的には、GPS以前の衛星測位システム「Transit」(1960年代)はドップラーカーブの形だけから位置を求めていました。ドップラーのS字カーブは、最接近の瞬間にゼロを横切る — この形が受信機と衛星軌道の幾何を教えてくれるのです。