Mapa compliance integrity DO-316 / DO-229E
Tento dokument mapuje požadavky RTCA (dříve Radio Technical Commission for Aeronautics) DO-229E (SBAS (satellite-based augmentation system, satelitní rozšiřující systém) MOPS (minimum operational performance standards, minimální provozní výkonnostní normy)) a DO-316 (palubní zařízení GPS/SBAS (GPS: Global Positioning System)) na ochranné úrovně a monitorování integrity na funkce Kshana, které je implementují. Je to inženýrská pomůcka pro dohledatelnost, nikoli prohlášení, že byl některý požadavek splněn — Kshana implementuje publikované algoritmy; není to schválená avionika.
Strojově čitelná podoba je sbas::do316_compliance_map; tento text je její doprovod (zrcadlí docs/ARAIM_REFERENCE.md).
Ochranné úrovně váženými nejmenšími čtverci (DO-229E, příloha J)#
Pro každou družici i s elevací Elᵢ a azimutem Azᵢ u uživatele je řádek pozorování v lokální soustavě (ENU (east-north-up, východ-sever-nahoru) + hodiny)
Gᵢ = [ −cos Elᵢ·sin Azᵢ, −cos Elᵢ·cos Azᵢ, −sin Elᵢ, 1 ]
s vahou wᵢ = 1/σᵢ², σᵢ² = σ_flt² + σ_uire² + σ_air² + σ_tropo² (rozpočet UDRE (user differential range error, diferenciální chyba vzdálenosti uživatele) / GIVE (grid ionospheric vertical error, vertikální chyba ionosféry v mřížce) / palubní / troposféra). Kovariance polohy je D = (GᵀWG)⁻¹; její blok ENU dává horizontální a vertikální ochranné úrovně (HPL, VPL):
d_major = √( (d_E² + d_N²)/2 + √( ((d_E² − d_N²)/2)² + d_EN² ) )
d_U = √(d_U²)
HPL = K_H · d_major VPL = K_V · d_U
Kshana počítá D inverzí normální matice 4×4 toutéž rutinou, jakou používá zásobník RAIM (receiver autonomous integrity monitoring, autonomní monitorování integrity přijímačem) (orbit::invert4), a výsledek ověřuje dvěma způsoby (cesta přes kovarianci D[2][2] a cesta přes projekci Σᵢ S_{U,i}²·σᵢ² se musí shodovat) a dále proti nezávislé referenční geometrii numpy inv(GᵀG).
K-factors#
| Režim | K_H | K_V | Zdroj |
|---|---|---|---|
| Na trase → NPA (nepřesné přiblížení; pouze horizontálně) | 6.18 | — | Rayleighovo √(−2·ln 5e-9) = 6,1829 |
| Přesné přiblížení | 6.0 | 5.33 | DO-229E MOPS |
Poznámka k poctivosti: MOPS používá zaokrouhlenou horizontální konstantu 6.0; přesný oboustranný normální kvantil Φ⁻¹(1 − 1e-9/2) je 6.109. Kshana v kódu používá publikovanou hodnotu 6,0 a K_V = Φ⁻¹(1 − 1e-7/2) = 5.327 odvozuje ze stejné funkce raim::normal_quantile, jakou používá zásobník RAIM, což je necirkulární křížová kontrola (hodnota se zaokrouhluje na MOPS 5,33).
Dvoufrekvenční kombinace L1/L5 bez vlivu ionosféry (IS-GPS-705)#
S f₁ = 1575.42 MHz, f₅ = 1176.45 MHz, γ₁₅ = (f₁/f₅)² = 1.79327:
ρ_IF = (f₁²·ρ₁ − f₅²·ρ₅) / (f₁² − f₅²) = c₁·ρ₁ + c₅·ρ₅
c₁ = +2.260604, c₅ = −1.260604 (c₁ + c₅ = 1, unit gain)
Ionosférické zpoždění prvního řádu (40.3·10¹⁶·TEC/f²) se přesně vyruší — ověřeno proti nezávislé fyzice timetransfer_adv::iono_delay_m v enginu pro rozsah hodnot TEC (total electron content, celkový obsah elektronů). Zesílení šumu pro vstupy se stejným rozptylem je √(c₁² + c₅²) = 2.588.
Stav validace#
- V repozitáři, automatizovaně (při každém commitu): K-faktory proti jejich distribučním definicím,
γ₁₅a koeficienty kombinace bez vlivu ionosféry (IF) proti frekvencím IS-GPS-705 (IS: Interface Specification), zrušení ionosféry prvního řádu proti nezávislé fyzice zpoždění a ochranné úrovně váženými nejmenšími čtverci (WLS) proti referenční geometrii numpyinv(GᵀG)(sbas::tests::wls_pl_matches_numpy_on_five_satellite_geometry). - Externí orákulum, automatizovaně (
tests/sbas_reference.rs): při dané elevaci, azimutu a celkovém 1-σ každé družicesbas_protection_levelreprodukuje HPL nezávislé implementace,waasprotlevels()ve větvi RTKLIB (open-source knihovna pro kinematické určování polohy v reálném čase) s ochrannými úrovněmi SBASzsiki/rtklib_ws(Siki & Takács 2017), a to na šesti epochách, které tento nástroj spočítal ze skutečných zpráv EGNOS (European Geostationary Navigation Overlay Service) (geostacionární PRN (číslo pseudonáhodného kódu) 120) a skutečných pozorování RINEX (Receiver Independent Exchange Format) ze stanice BUTE v Budapešti (2017-02-19), s přesností < 2e-3 m. Orákulum zaokrouhluje K_V na 5,33, takže vertikála se porovnává bez K-faktoru, jakod_Uproti jeho VPL / 5,33. ESA (European Space Agency) gLAB v6.0.0 (core/filter.c) používá stejný vzorec. - Nedoděláno: σ jednotlivých družic pochází z orákula samotného; modelování σ ze surových zpráv UDRE/GIVE je mimo rozsah a žádný oficiální publikovaný produkt ochranných úrovní WAAS (Wide Area Augmentation System) ani EGNOS nebyl reprodukován od začátku do konce. Samotné DO-229E/DO-316 jsou u RTCA placené; otevřeným zdrojem odvození jsou stránky ESA Navipedia o SBAS ICAO/EGNOS (ICAO: International Civil Aviation Organization).