GNSS — GPS, GLONASS, Galileo, BeiDou
WHY does GNSS exist / WHAT problem does it solve?
WHAT: GNSS (Global Navigation Satellite System) is a constellation of satellites broadcasting timed signals so any receiver on Earth can compute its position, velocity and time (PVT).
WHY four systems? They are independent national/regional systems built for sovereignty (you don't want your navigation to depend on another country in wartime):
- GPS — USA, ~24+ satellites, 6 orbital planes, altitude ~20,200 km.
- GLONASS — Russia, ~24 satellites, 3 planes, ~19,100 km.
- Galileo — EU (civilian), ~24+ satellites, 3 planes, ~23,222 km.
- BeiDou (BDS) — China, mix of MEO + GEO + IGSO, ~21,500 km MEO.
HOW a receiver finds its position — derive from scratch
Step 1 — What the receiver actually measures
The satellite sits at known position (from its broadcast ephemeris). It stamps its transmit time into the signal. The receiver notes arrival time on its own clock.
Why this step? Distance = speed × time, and the signal travels at (speed of light). is called the pseudorange — "pseudo" because is measured on a biased clock.
Step 2 — Model the true geometry
True geometric distance from receiver to satellite :
Why this step? This is just the Euclidean distance in 3D — a sphere of radius centred on the satellite.
Step 3 — Insert the clock bias
Let the receiver clock be ahead of true time by bias (seconds). Then measured travel time is too large by , so:
Step 4 — Solve the system (linearize)
The equations are nonlinear (square roots). We guess a position and linearize with a Taylor expansion. The partial derivative of w.r.t. :
Why this step? is the unit vector pointing from receiver to satellite. So the geometry matrix is made of line-of-sight directions.
Stacking corrections :
\mathbf{H}=\begin{bmatrix} -\hat u_{1x} & -\hat u_{1y} & -\hat u_{1z} & 1\\ \vdots & & & \vdots\\ -\hat u_{nx}&-\hat u_{ny}&-\hat u_{nz}&1\end{bmatrix}$$ Solve by least squares and iterate: $$\Delta\mathbf{x} = (\mathbf{H}^{\mathsf T}\mathbf{H})^{-1}\mathbf{H}^{\mathsf T}\,\Delta\boldsymbol\rho$$ *Why least squares?* With 5+ satellites the system is overdetermined; least squares finds the position minimizing total squared residual. ![[3.5.19-GNSS-—-GPS,-GLONASS,-Galileo,-BeiDou.png]] --- ## Geometry matters: DOP > [!definition] Dilution of Precision (DOP) > A number describing how satellite **geometry** amplifies measurement error into position error. Satellites bunched together = bad (high DOP); spread across the sky = good (low DOP). $$\sigma_{\text{position}} = \text{DOP}\times \sigma_{\text{measurement}},\qquad \text{GDOP}=\sqrt{\operatorname{tr}\!\big((\mathbf H^{\mathsf T}\mathbf H)^{-1}\big)}$$ > [!intuition] Why spread-out satellites help > Same reason a carpenter braces a table with legs *spread apart*: closely-spaced supports wobble. Widely separated lines-of-sight make $\mathbf H^{\mathsf T}\mathbf H$ well-conditioned, so a small range error doesn't blow up into a huge position error. **More constellations (GPS+GLONASS+Galileo+BeiDou together) = more satellites visible = lower DOP**, especially in urban canyons. --- ## Relativity — the correction people forget > [!formula] Clock rate correction on GPS satellites > **Special relativity** (satellite moving fast) slows its clock: > $$\frac{\Delta t_{SR}}{t}\approx -\frac{v^2}{2c^2}\;(\text{clock runs slow})$$ > **General relativity** (weaker gravity up high) speeds it up: > $$\frac{\Delta t_{GR}}{t}\approx +\frac{\Delta\Phi}{c^2}=+\frac{GM}{c^2}\Big(\frac1{r_E}-\frac1{r_{sat}}\Big)$$ > Net effect: satellite clocks tick **~+38 μs/day faster**. Ignored → position error grows ~11 km/day! *Why it matters:* light travels 30 cm per nanosecond; 38 μs is enormous. The satellite oscillator is *pre-tuned slower* on the ground to compensate. --- ## Signals & the four systems, compared | System | Owner | Access method | Nominal freq | |---|---|---|---| | GPS | USA | **CDMA** (each sat, same freq, unique code) | L1 1575.42 MHz | | Galileo | EU | CDMA | E1 1575.42 MHz | | BeiDou | China | CDMA | B1 ~1561 MHz | | GLONASS | Russia | **FDMA** (same code, different freq per sat) | ~1602 MHz + k·0.5625 | > [!definition] CDMA vs FDMA > **CDMA** = all satellites share one frequency but each uses a unique orthogonal *pseudo-random code*; the receiver separates them by correlation. **FDMA** = each satellite uses a slightly different *frequency* (old GLONASS design). --- ## Worked examples > [!example] Example 1 — Why 4 satellites (dimension count) > **Q:** You have perfectly synchronized atomic clocks in *both* satellite and receiver. How many satellites now? > **Reasoning:** No clock bias ⇒ $b=0$ is known ⇒ only 3 unknowns $(x,y,z)$ ⇒ **3 satellites**. > *Why this step?* Each unknown eats one equation. Removing $b$ removes one needed equation. > [!example] Example 2 — Pseudorange numbers > **Q:** Signal takes 67 ms to arrive. Distance? > $$\rho = c\cdot t = (3\times10^8)(67\times10^{-3}) = 2.01\times10^7 \text{ m} \approx 20{,}100\text{ km}.$$ > *Why this step?* Consistent with MEO altitude — sanity check passes. > [!example] Example 3 — Clock bias in metres > **Q:** Receiver clock is off by 1 μs. What range error does that inject? > $$c\,b = (3\times10^8)(1\times10^{-6}) = 300\text{ m}.$$ > *Why this step?* Shows why timing dominates GNSS accuracy — a microsecond is a football-stadium-sized error. That's exactly why $b$ must be solved, not assumed. > [!example] Example 4 — DOP intuition > **Q:** Four satellites all near the horizon in one direction. Good or bad? > **A:** Bad — near-parallel line-of-sight vectors ⇒ $\mathbf H^{\mathsf T}\mathbf H$ nearly singular ⇒ huge GDOP ⇒ poor vertical accuracy. > *Why this step?* Vertical error especially blows up because you have no satellite "below" or overhead to constrain height. --- > [!mistake] Steel-man the common errors > **"3 satellites are enough for 3D position."** > *Why it feels right:* 3 unknowns $(x,y,z)$, 3 equations — classic algebra. **Fix:** the receiver clock adds a *hidden 4th unknown* $b$; skipping it injects hundreds of metres of error (Example 3). Need 4. > > **"Pseudorange is the true distance."** > *Why it feels right:* it's "distance = c × time" and time is measured. **Fix:** the time is measured on a *biased* clock, so $\rho = r + cb$. The "pseudo" is the whole point. > > **"Relativity is negligible for engineering."** > *Why it feels right:* relativistic effects are tiny in daily life. **Fix:** at 30 cm/ns precision, the 38 μs/day drift ⇒ ~11 km/day error. GNSS is arguably the biggest everyday proof of GR. > > **"More constellations don't help if I already see 4 GPS sats."** > *Why it feels right:* 4 is the minimum. **Fix:** extra satellites lower **DOP** and give redundancy for detecting faulty measurements (RAIM). More is genuinely better. --- > [!recall]- Feynman: explain to a 12-year-old (click to open) > Imagine you're lost in a giant field at night, and four friends on tall towers each shout "I'm at tower A!" and clap at the exact same second. Sound travels slowly, so a clap from a far friend reaches you later. By comparing *how late* each clap arrives, you can figure out exactly where you're standing. GPS does this with radio "claps" from satellites, using light instead of sound. The tricky part: *your* watch is a bit wrong, so you need one extra friend's clap to also fix your watch — that's why you need **four**, not three. > [!mnemonic] Remember it all > **"Please Give Great Big Clocks"** → > **P**seudorange, **G**eometry (DOP), **G**PS/**G**LONASS, **B**eiDou, **C**lock-bias-4th-unknown & relativity **Clocks**. > And for the 4 systems, alphabetical by owner region roughly: **G**PS(US)–**G**LONASS(Russia)–**G**alileo(EU)–**B**eiDou(China) = "**GGG-B**". --- ## #flashcards/physics What does GNSS stand for and what does it compute? ::: Global Navigation Satellite System; it computes Position, Velocity and Time (PVT). Why does a receiver need a minimum of 4 satellites? ::: Three for $x,y,z$ plus one to solve the unknown receiver-clock bias $b$ (4 unknowns). Define pseudorange and give its equation. ::: Measured range on a biased clock: $\rho_i = r_i + cb + \varepsilon_i$, where $r_i$ is true geometric distance. Why is it called "pseudo" range? ::: Because it uses the receiver's biased clock, so it isn't the true distance until $cb$ is removed. What is DOP and its formula? ::: Dilution of Precision — how satellite geometry amplifies error; $\text{GDOP}=\sqrt{\operatorname{tr}((H^TH)^{-1})}$. Do spread-out or clustered satellites give better accuracy? ::: Spread-out (low DOP); clustered geometry makes $H^TH$ ill-conditioned (high DOP). Net relativistic clock drift on GPS satellites per day and its consequence? ::: About +38 μs/day faster; uncorrected gives ~11 km/day position error. Which two relativistic effects act, and their signs? ::: SR (motion) slows sat clock ($-v^2/2c^2$); GR (weaker gravity) speeds it ($+\Delta\Phi/c^2$); GR dominates. CDMA vs FDMA — which system uses FDMA? ::: GLONASS (classic) uses FDMA (different frequency per satellite); GPS/Galileo/BeiDou use CDMA (shared freq, unique codes). Position-error relation to measurement error via DOP? ::: $\sigma_{\text{pos}} = \text{DOP} \times \sigma_{\text{meas}}$. What error does a 1 μs receiver clock offset cause in range? ::: $cb = 3\times10^8 \times 10^{-6} = 300$ m. What does the geometry matrix $H$ contain? ::: Line-of-sight unit vectors from receiver to each satellite, plus a column of 1's for the clock term. --- ## Connections - [[Trilateration and Multilateration]] - [[Kalman Filter]] — GNSS fused with IMU for smooth PVT - [[Inertial Navigation System (INS)]] — GNSS/INS integration - [[Special Relativity — Time Dilation]] - [[General Relativity — Gravitational Time Dilation]] - [[Least Squares Estimation]] - [[Orbital Mechanics — MEO/GEO/IGSO]] - [[Signal Modulation — CDMA & FDMA]] - [[Dilution of Precision (DOP)]] ## 🖼️ Concept Map ```mermaid flowchart TD GNSS[GNSS constellation] -->|broadcasts| SIG[Timed signals] GNSS -->|four systems| SYS[GPS GLONASS Galileo BeiDou] SYS -->|orbit in| MEO[MEO ~19000-24000 km] SIG -->|receiver measures| PR[Pseudorange rho_i] PR -->|equals c times tx to rx| DIST[Distance = c x time] PR -->|modeled as| OBS[rho = r_i + c x b + err] OBS -->|contains 4 unknowns| UNK[x, y, z, clock bias b] UNK -->|needs one eqn each| FOUR[>= 4 satellites] OBS -->|nonlinear, solved by| LIN[Linearize + Taylor] LIN -->|yields| PVT[Position Velocity Time] UNK -->|resolves| PVT ``` ## 🔊 Hinglish (regional understanding) > [!intuition]- Hinglish mein samjho > GNSS ka core idea simple hai: har satellite continuously apni position (ephemeris) aur apna time broadcast karta rehta hai. Aapka receiver dekhta hai ki signal aane mein kitna time laga, aur distance = speed of light × time se ek "pseudorange" nikaalta hai. Isko pseudo isliye bolte hain kyunki aapke receiver ki ghadi thodi galat hoti hai — yeh clock bias $b$ ek extra unknown ban jaata hai. Isliye teen satellite se $x,y,z$ nahi banta; **chaar satellite chahiye** — teen position ke liye, ek clock bias fix karne ke liye. > > Formula yaad rakho: $\rho_i = r_i + cb$, jahan $r_i$ actual geometric distance hai. In equations ko linearize karke, line-of-sight unit vectors se banaye gaye matrix $H$ ke through least squares se solve karte hain. Yahaan **geometry bahut matter karti hai** — agar satellites aasman mein ek jagah bunch ho gaye to DOP high ho jaata hai aur chhota sa error bada position error ban jaata hai. Isliye jitne zyada constellations (GPS + GLONASS + Galileo + BeiDou saath) use karo, utne zyada satellites visible, utna kam DOP — khaaskar tall buildings ke beech (urban canyon). > > Ek mind-blowing baat: **relativity** ko ignore nahi kar sakte. Satellite tez chalta hai to Special Relativity uski clock slow karti hai, lekin upar gravity kam hai to General Relativity clock fast karti hai — net effect roughly **+38 microsecond/din** fast. Agar correct na karein to har din ~11 km ka error! Isliye satellite ki clock ko ground par hi thoda slow tune karke bhejte hain. Yeh GPS roz-marra ki life mein General Relativity ka sabse bada proof hai. > > Exam tip: numbers pakdo — 1 microsecond clock error = 300 metre distance error (Example 3). Yeh dikhata hai ki GNSS asal mein ek **timing problem** hai, position to bas uska by-product hai. ![[audio/3.5.19-GNSS-—-GPS,-GLONASS,-Galileo,-BeiDou.mp3]]