ARAIM-naslag — advanced RAIM-beschermingsniveaus in Kshana
Deze notitie documenteert de open implementatie van Advanced Receiver Autonomous Integrity Monitoring (ARAIM) door Kshana: het algoritme, elke aanname, het integriteitsondersteuningsbericht dat het verwerkt en de validatiestatus. De implementatie staat in src/raim.rs; dit document is de proza-tegenhanger die een auditor (of een inkoopbeoordelaar) naast de code kan lezen.
ARAIM is de dual-constellation-opvolger met meerdere frequenties van klassieke RAIM, die de GPS (Global Positioning System)–Galileo Working Group C (WG-C) heeft gedefinieerd om horizontale en verticale geleiding tot LPV-200 te ondersteunen (LPV: localizer performance with vertical guidance). Het beantwoordt voor elke epoch één enkele vraag:
Hoe groot moet de grens voor de positiefout (het beschermingsniveau) zijn, opdat de restkans op gevaarlijk misleidende informatie — een fout groter dan de grens terwijl de grens nog binnen de alarmlimiet valt — onder het integriteitsrisicobudget
P_HMIblijft?
1. Het integriteitsondersteuningsbericht (ISM)#
Het ISM is de parameterset per constellatie die de gebruiker toepast. Het wordt expliciet gemodelleerd door IntegritySupportMessage:
| Veld | Symbool | Betekenis |
|---|---|---|
sigma_ure_m |
σ_URE / SISE (signal-in-space error) | RMS van de afstandsfout (root mean square), gebruikt voor nauwkeurigheid en continuïteit |
sigma_ura_m |
σ_URA / SISA (signal-in-space accuracy) | grens voor de afstandsfout, gebruikt voor integriteit (≥ σ_URE) |
b_nom_m |
b_nom | maximale nominale afstandsbias, eenzijdig in de integriteitsgrens opgenomen (b_k = Σ_i |s_i|·b_nom); zie §3 |
p_sat |
P_sat | a-priorikans op een niet-gedetecteerde fout in één satelliet |
p_const |
P_const | a-priorikans op een fout in de hele constellatie |
IntegritySupportMessage::gps_galileo_reference() geeft de gepubliceerde referentiewaarden van WG-C terug: σ_URA = 0,75 m, σ_URE = 0,67 m, b_nom = 0,75 m, P_sat = 1×10⁻⁵, P_const = 1×10⁻⁴ over het blootstellingsinterval. Dit zijn de waarden waarmee in de referentieliteratuur de ARAIM-beschikbaarheid wordt gedimensioneerd; het operationele ISM wordt uitgezonden of op de grond samengesteld en is per constellatie configureerbaar. Het onderscheid tussen σ_URA (integriteit) en σ_URE (nauwkeurigheid) is bewust gemaakt en is het bepalende kenmerk van het ISM-concept.
.fault_priors() en .dual_fault_priors() geven deze rechtstreeks door aan de twee engines.
2. Foutenhypothesen#
ARAIM is een multiple hypothesis solution separation-methode (MHSS). Voor elke foutenhypothese H_k vormt het de all-in-view-oplossing en de deeloplossing die de verstoorde verzameling uitsluit, en begrenst het de positiefout onder die hypothese:
- Fault-free
H_0(prior≈ 1): de volledige all-in-view-positiebepaling met kleinste kwadraten. - Fouten in één satelliet
H_i(priorP_satelk): elke deeloplossing met uitsluiting van één satelliet. Dit is de klassieke ARAIM-basislijn voor één fout,araim_raim. - Fouten in de hele constellatie
H_c(priorP_constelk): de deeloplossing die alle satellieten van één constellatie tegelijk verwijdert, de uitbreiding van de EU (Europese Unie) ARAIM TN (technische nota) / DO-316 die inaraim_dual_raimis geïmplementeerd. MetP_const = 0reduceert dit bit voor bit totaraim_raim.
3. Beschermingsniveaus#
Voor elke as (verticaal, horizontaal) en elke hypothese bouwt de engine een modus (p_fault, threshold, σ) waarbij de drempel de detectielimiet van de solution separation is bij de vals-alarmvermenigvuldiger K_fa = Φ⁻¹(1 − P_fa / 2N) (een Bonferroni-verdeling van het continuïteitsbudget over de N hypothesen). Het beschermingsniveau is de kleinste grens PL waarvan het opgetelde integriteitsrisico
Σ_k p_fault,k · Q( (PL − b_k − T_k) / σ_k ) ≤ P_HMI
Implementatienotitie.
b_k = Σ_i |s_{axis,i}|·b_nomis de eenzijdige projectie van de nominale bias op de as — de worstcasesom van de grootten van de versterkingen per satelliet (axis_bias_sum/horiz_bias_sum) — afkomstig uit deb_nom_mvan het ISM. Het WG-C-referentie-ISM gebruiktb_nom = 0.75 m; metb_nom = 0reduceert de grens tot de MHSS-vorm zonder nominale bias. Het uitvoerbare scenariointegritymaaktsigma_ura_mbeschikbaar (de integriteitsgrens die voor het beschermingsniveau wordt gebruikt, afgekapt tot ≥sigma_uere_men daar standaard aan gelijk) enb_nom_m(standaard 0), zodat het beschermingsniveau altijd wordt gedimensioneerd met de integriteitsgrens σ_URA, nooit met de kleinere nauwkeurigheid σ_URE. Dit blijft een gemodelleerde, niet-gecertificeerde ARAIM-implementatie — zieINTEGRITY.md.
voldoet aan het toegewezen budget ([araim_protection_level] / araim_integrity_risk). VPL (vertical protection level) en HPL (horizontal protection level) zijn het verticale en het horizontale antwoord. Het resultaat rapporteert ook het daadwerkelijk bereikte integriteitsrisico (≤ de toewijzing) en of een deeloplossing verder dan haar drempel afweek.
Dit is het expliciete ARAIM-contract — „hoe groot moet de grens zijn?” — in plaats van het impliciete, van geometrie afhankelijke risico van een klassieke RAIM met vaste vermenigvuldiger.
4. Stanford-diagram#
StanfordDiagram verzamelt (error, PL) per epoch tegen een vaste alarmlimiet (AL) en classify_stanford deelt elke in als beschikbaar, systeem niet beschikbaar (PL > AL, conservatief), misleidende informatie (PL < fout ≤ AL) of gevaarlijk misleidende informatie (fout > AL en > PL). stanford_svg tekent de klassieke puntenwolk — de integriteitsgrens PL = error, de hulplijnen van de alarmlimiet en één kleurgecodeerde markering per epoch — als een op zichzelf staande SVG (Scalable Vector Graphics).
5. Het voordeel van twee constellaties#
Twee effecten worden aangetoond in raim::tests::dual_constellation_improves_geometry_and_tolerates_a_constellation_fault:
- Geometrie / redundantie — het samenvoegen van de satellieten van een tweede constellatie verkleint de HPL voor één fout: meer metingen en een grotere verzameling deeloplossingen met één SV (SV: space vehicle, dat is een satelliet) geven een strikt kleinere grens.
- Tolerantie voor constellatiefouten — met
P_constactief blijft de gebruiker met twee constellaties beschikbaar wanneer een hele constellatie kan uitvallen (satellieten van de andere constellatie blijven over), terwijl een gebruiker met één constellatie aantoonbaar niet kan worden beschermd tegen de fout van zijn eigen constellatie (araim_dual_raimgeeftNoneterug).
Een subtiliteit die eerlijk vermeld moet worden: omdat de hypothese van een constellatiefout vereist dat het verlies van een hele constellatie wordt overleefd, wordt het momentopname-beschermingsniveau met twee constellaties van onderen begrensd door de resterende geometrie van één constellatie — het is niet automatisch op elk moment kleiner dan de PL met alleen GPS. Het hoofdresultaat van de EU ARAIM TN dat GPS+Galileo een 15–25 % kleinere HPL geeft, is een beschikbaarheidsresultaat dat over realistische constellaties en gebruikerslocaties is opgebouwd, geen garantie per momentopname.
6. Validatiestatus#
- In de repository, geautomatiseerd: de MHSS-algebra (
P_const = 0⇒ bit voor bit één fout; een constellatiefout verbreedt de PL; het budget wordt nooit overschreden), de bovenstaande voordelen voor geometrie en constellatiefouten, en toepassing op echte precieze-baangeometrie van IGS (International GNSS Service; GNSS = global navigation satellite system) (SP3, Standard Product 3) (tests/igs_real_data.rs), niet alleen op synthetische constellaties. - Externe onafhankelijke referentie — het gepubliceerde uitgewerkte voorbeeld van WG-C: de beschermingsniveaus worden gecontroleerd tegen het eigen numerieke voorbeeld van de ARAIM Technical Subgroup, in
src/araim_reference.rs,tests/araim_reference_vectors.rsen het vastgelegde fixturetests/fixtures/araim_reference/wgc_araim_reference_vectors.txt(elke vector draagt zijn ophaal-URL (webadres), ophaaldatum, SHA-256 van het bronbestand (SHA: Secure Hash Algorithm) en pagina). De acceptatietolerantie is de eigenTOL_PL = 5 × 10⁻² mvan de referentie. Tegen het Reference Airborne Algorithm Description Document v3.1 (2019), Appendix D: VPL 18,2926 m tegenover 18,3 m gepubliceerd (Δ 0,0074 m), HPL 13,4063 m tegenover 13,45 m (Δ 0,0437 m), EMT (effective monitor threshold) 7,2997 m tegenover 7,2998 m, σ_v,acc 1,3694 m tegenover 1,3694 m, en alle zes gepubliceerde tussenwaarden voor constellatiefouten (σ₃⁽ᵏ⁾, σ_ss,3⁽ᵏ⁾, b₃⁽ᵏ⁾) binnen een halve eenheid in hun laatste afgedrukte decimaal. Het Milestone 3 Report van 2016 vermeldt hetzelfde voorbeeld maar bevat twee interne gebreken — een tekentypfout in rij 3 vanG, en eenK_fa,3die voor 57 foutmodi is geëvalueerd terwijl het documentN_fault,max = 1(12 modi) vermeldt — dus de tussenwaarden voor geometrie worden exact gereproduceerd, terwijl de beschermingsniveaus ervan zijn vastgelegd als gemeten afwijkingen (VPL Δ 0,0171 m, HPL Δ 0,0842 m, EMT Δ 0,4806 m) en buiten het acceptatiecijfer zijn gehouden. De controle is bereikbaar als de scenariosoortaraim-reference-check. - Eerlijk restpunt (extern / in afwachting van beoordeling): het beschikbaarheidscijfer van 15–25 % tegen een op versie vastgezette momentopname van echte Celestrak-TLE's (two-line element set), en het deponeren van de ARAIM-testfixtures als een citeerbaar Zenodo-record. De bovenstaande referentiecontrole dekt alleen
N_fault,max = 1(foutmodi voor één satelliet en één constellatie); gelijktijdige deelverzamelingen van fouten met meerdere gebeurtenissen, foutuitsluiting, de χ²-consistentiecontrole en de herallocatiestap tegen dubbeltelling van het referentie-algoritme zijn niet geïmplementeerd, en een geval waarvoor de priors die nodig zouden hebben, wordt geweigerd in plaats van afgekapt. - Bereik via scenariobestand: de scenariosoort
integrityvoertaraim_dual_raimuit bij elke epoch wanneer zijn TOML-bestand (Tom's Obvious Minimal Language)araim_dual = trueinstelt (optioneelp_hmi); het meegeleverdescenarios/araim-gps-galileo.tomldoet dat over een samengevoegde GPS + Galileo-geometrie, entests/araim_dual_real_data.rsvoert dezelfde engine uit op echte Celestrak-TLE's van GPS en Galileo die naar één gemeenschappelijke epoch zijn gepropageerd. Zonder de vlag gebruikt de runner klassieke solution-separation-RAIM.
Referenties#
- EU–U.S. Cooperation on Satellite Navigation, Working Group C, ARAIM Technical Subgroup, Milestone 3 Report, Final Version, 25 februari 2016 — Annex A (referentiegebruikersalgoritme) en §A.IX (numeriek voorbeeld). https://www.gps.gov/sites/default/files/2025-09/ARAIM-milestone-3-report.pdf
- EU–U.S. Cooperation on Satellite Navigation, Working Group C, ARAIM Technical Subgroup, Reference Airborne Algorithm Description Document, Version 3,1, 20 juni 2019 — Appendix D (numeriek voorbeeld voor LPV-200). https://web.stanford.edu/group/scpnt/gpslab/website_files/maast/ARAIM_TSG_Reference_ADD_v3.1.pdf
- EU–US (Verenigde Staten) Cooperation on Satellite Navigation, ARAIM Technical Note.
- RTCA (voorheen de Radio Technical Commission for Aeronautics) DO-316 / DO-229 MOPS (minimum operational performance standards); materiaal van DO-316 ARAIM MASPS (minimum aviation system performance standards).
- Blanch et al., Baseline Advanced RAIM User Algorithm and Possible Improvements, IEEE (Institute of Electrical and Electronics Engineers) TAES (Transactions on Aerospace and Electronic Systems) / ION (Institute of Navigation) ITM (International Technical Meeting).
- Walter, Enge, Blanch, Pervan, Worldwide Vertical Guidance of Aircraft Based on Modernized GPS and New Integrity Augmentations (methodologie van het Stanford-diagram).