Maschinelle Übersetzung, nicht von einem Muttersprachler geprüft. Englisch ist die maßgebliche Fassung.

Navigation in niedriger Erdumlaufbahn (LEO)Auf GitHub bearbeitenQuelle: docs/LEO-PASS.md

LEO-Überflug und Streckenbilanz (leo-pass)

LEO-PNT ist Positionierung, Navigation und Zeitgebung (PNT) mit Satelliten im niedrigen Erdorbit (LEO). Der Typ leo-pass simuliert einen oder mehrere Überflüge von LEO-Satelliten über einem Nutzer und berechnet die Streckenbilanz Band für Band, neben den Satelliten der mittleren Erdumlaufbahn (MEO) der GNSS (globale Satellitennavigationssysteme) in Sicht. Die Engine ist systemunabhängig: jede Konstellation, jeder Signalentwurf und jedes Band, direkt in ein Szenario geschrieben. Benannte Systeme sind optionale Voreinstellungen, jede in einer eigenen Datei mit ihrer Quelle.

  • Code: src/leo_pass.rs (der Typ) und src/leo_link/ (öffentliche Bausteine, die andere Module aufrufen können).
  • Szenarien: leo-pass-vs-gnss-cn0, leo-indoor-uhf, leo-iot-energy, leo-pass-xona-pulsar, leo-pass-iridium, leo-resilience-spoof-doppler, leo-focus-science-iono-sounding und das optionale leo-pass-celeste-iod-multiband (Ergebnisse unter Mitgelieferte Szenarien). Der Typ ist außerdem Mitglied der Kampagnen leo-resilience-spoof-monitors, leo-focus-iot-eirp, leo-focus-indoor-uhf und jedes Szenarios leo-vertical-* sowie die Überflugstufe des Typs leo-pnt-chain.
  • Übersicht über jeden LEO-PNT-Typ und jedes LEO-PNT-Szenario: LEO-PNT.md.
  • Unabhängige Referenzen: tests/leo_link_reference.rs, Testdaten in tests/fixtures/leo_link/ mit ihren Quell-URLs.

Was ein Lauf berechnet#

Für jeden LEO-Satelliten, jedes Band und jede Epoche:

Größe Modell Kennzeichnung
Elevation, Azimut, Entfernung Nutzer in WGS-84 (World Geodetic System 1984), Satellit in einem inertialen System, das zur Epoche am erdfesten System ausgerichtet ist berechnet
Entfernungsrate ρ̇ = d·Δv/ρ, Entfernungsbeschleunigung ρ̈ = (|Δv|² − ρ̇² + d·Δa)/ρ geschlossene Form; jeder Lauf prüft beide gegen zentrale Differenzen der propagierten Entfernung und berichtet die größte Differenz geschlossene Form
Doppler −f·ρ̇/c, Dopplerrate −f·ρ̈/c erster Ordnung, je Band geschlossene Form
Freiraumdämpfung Friis, 20·log10(4πRf/c) VALIDATED
EIRP des Satelliten (äquivalente isotrope Strahlungsleistung) und Strahlungsdiagramm isoflux bis zu einer Randelevation, gaußförmige Hauptkeule −12(η/θ₃)² dB, oder flach MODELLED
Nutzerantenne Patch G_z + 10·q·log10(sin el) dBic, halbkugelförmig oder isotrop MODELLED
Dämpfung durch Gase vereinfachte Ausdrücke aus ITU-R (International Telecommunication Union, Radiocommunication Sector) P.676-10 Anhang 2 (abgelöst durch P.676-13, dessen tabellierte Koeffizienten die Engine nicht trägt) MODELLED
Regendämpfung Koeffizienten aus ITU-R P.838-3 und das Verfahren aus P.618-14 § 2.2.1.1, aus einer Regenrate R0.01 und einer Regenhöhe VALIDATED
Troposphärische Szintillation ITU-R P.618-14 § 2.4.1; unter 4 GHz eine Extrapolation, im Bericht gekennzeichnet VALIDATED (4–55 GHz)
Gebäudeeindringverlust (Nutzer in Gebäuden) ITU-R P.2109-2, traditionell oder thermisch effizient, bei der Elevation des Pfades an der Fassade VALIDATED
Polarisationsfehlanpassung Polarisationsverlustfaktor aus Achsenverhältnissen und Drehsinnen, gemittelt über die Ausrichtung der Ellipse geschlossene Form
Systemrauschtemperatur Antennenuntergrenze + Himmelsemission des absorbierenden Pfades (275 K) + kosmisch 2,7 K + Empfänger 290(10^(NF/10) − 1) MODELLED
C/N0 (Träger-Rausch-Dichte) EIRP + G_sat − L_fs − L_gas − L_rain − L_scint − L_BEL − L_pol + G_user − 10·log10(kT) − L_impl MODELLED
Ionosphärische Gruppenlaufzeit 40.3·STEC/f², STEC (Schräg-Gesamtelektronengehalt) aus dem Klobuchar-Modell oder einem vertikalen Gesamtelektronengehalt (TEC), skaliert mit dem Anteil einer Chapman-Schicht unterhalb des Satelliten Skalierung VALIDATED, TEC MODELLED

Je Bandpaar: die ionosphärenfreien Koeffizienten, die Rauschverstärkung √(a₁² + a₂²) und das thermische Coderauschen jedes Bandes und der Kombination im Überflugmaximum. Der Vergleich mit MEO-GNSS verwendet dieselbe Nutzerantenne und denselben Empfänger, mit der Mindest-Empfangsleistung des Schnittstellendokuments jedes Signals (Galileo Open Service Signal-in-Space Interface Control Document, OS SIS ICD, Ausgabe 2,1 Tabelle 12; GPS aus IS-GPS-200 und IS-GPS-705), plus einem angegebenen Überschuss, mit der Entfernung skaliert. Der optionale Abschnitt [iot] (Internet der Dinge) gibt Zeit bis zur ersten Positionslösung, Energie je Positionslösung und Batterielebensdauer gegen das Tastverhältnis für ein angegebenes Leistungsbudget des Empfängers an (MODELLED, jede Annahme ist eine Eingabe und im Bericht aufgeführt).

Satelliten#

  • orbit = "pass" (Standard): eine Kreisbahn, so gelegt, dass der Nutzer einen Überflug mit gewählter Maximalelevation zu einer gewählten Zeit sieht, aufsteigend oder absteigend, östlich oder westlich des Nutzers; die Inklination kann sonnensynchron sein.
  • orbit = "elements": ausdrückliche Kepler-Elemente.
  • orbit = "tle": ein Zweizeilen-Elementsatz (TLE) über den Propagator Simplified General Perturbations 4 (SGP4) der Engine.
  • [[leo_constellation]]: eine Walker-Konstellation, aufgebaut vom Code constellation-design (sein ConstellationCfg oder die Schalen der Voreinstellung); die höchsten Überflüge im Fenster werden berichtet.

Bänder und Signalentwürfe#

Bänder: system = "<preset>" mit einer optionalen Teilmenge bands und Einträgen [[satellite.band]], die ein Band hinzufügen oder ein beliebiges Feld eines Voreinstellungsbandes überschreiben. system = "none" mit nur Einträgen [[satellite.band]] verwendet gar keine Voreinstellung.

Ein Band kann auch einen Entwurf leo-signal benennen (signal = "xona-x5", ein beliebiger Entwurf unter data/leo-signals/ oder einer, den der Typ leo-pnt-chain übergibt; siehe LEO-SIGNAL.md). Das Band übernimmt dann die Mittenfrequenz des Entwurfs (sofern frequency_mhz nicht angegeben ist), die Sendebandbreite und die Chiprate der verfolgten Komponente, verteilt seine EIRP nach deren Leistungsanteilen auf die Komponenten des Entwurfs und berichtet in jeder Epoche das C/N0 der verfolgten Komponente und ihr bandbegrenztes Early-Late-Codeverfolgungsjitter (Betz und Kolodziejski 2009, die Formel des Typs leo-signal) als Entfernungsmessfehler.

Voreinstellungen#

Jede Voreinstellung kennzeichnet ihre Zahlen als PUBLIC (mit URL), REPRESENTATIVE (eine dokumentierte Entwurfsentscheidung, nie eine Aussage über ein reales System) oder WORKSHOP.

Voreinstellung Quelle Bänder Bahn
generic-leo (Standard) REPRESENTATIVE; L-, S- und C-Träger aus öffentlichen Dokumenten UHF 450 MHz (repräsentativ), L 1191,795 MHz (Galileo-E5-Mitte), S 2492,028 MHz (NavIC S, der S-Band-Träger von Navigation with Indian Constellation), C 5020 MHz (Mitte der Zuweisung 5010–5030 MHz für RNSS (Funknavigationssatellitendienst)), jeweils 0 dBW 550 km sonnensynchron, Walker 240/12/1
generic-c-band REPRESENTATIVE, für C-Band-Systeme, deren Parameter nicht öffentlich sind (zum Beispiel TrustPoint) C 5020 MHz, BPSK(10) (binäre Phasenumtastung bei 10 × 1,023 Mchip/s), isoflux 550 km, 53°
xona-pulsar PUBLIC, arXiv 2509,19551 Tabellen 1–2 X1 1593,3225 MHz, X5 1190,51625 MHz; EIRP aus der veröffentlichten Mindest-Empfangsleistung bei 10° 1080 km, 53° (192) and 97° (66)
iridium-stl PUBLIC, Resilient Navigation and Timing Foundation (RNTF) und die veröffentlichte Bahn Satellite Time and Location (STL) bei 1621 MHz (Mitte von 1616–1626 MHz); EIRP aus „300-mal GPS“ 781 km, 86,4°, 66 in 6 Ebenen
starlink-soop PUBLIC Signalzahlen (NAVIGATION 72(1)), REPRESENTATIVE Bahn und EIRP Ku-Bake bei 240 MHz, nur Doppler 550 km, 53°
centispace PUBLIC Signalstruktur (PMC10301026), REPRESENTATIVE Bahn und EIRP BPSK 2,046 Mchip/s nahe L1 und L5 1000 km, 55°
celeste-iod (optional) WORKSHOP Signalparameter, PUBLIC Bahn sieben Bänder der Konfiguration #1 510 km sonnensynchron

Die Voreinstellung Celeste IOD (Demonstration im Orbit) ist optional. Ihre Signalparameter wurden auf dem LEO-PNT-Workshop des Navigation Innovation and Support Programme (NAVISP) der Europäischen Weltraumorganisation (ESA), 2026, vorgestellt und haben noch keine öffentliche Quelle; sie stehen im Modul link von src/celeste_iod.rs, verwendet von scenarios/leo-pass-celeste-iod-multiband.toml. So wird die Voreinstellung zurückgehalten: Jede aus dem Workshop abgeleitete Zahl der Engine steht in einer Datei, src/celeste_iod.rs, die build.rs nur einkompiliert, wenn sie existiert, und in den nur im Repository vorhandenen Szenarien scenarios/*celeste-iod*.toml. Das Löschen dieser Datei und dieser Szenarien hält die Voreinstellung ohne Quelltextänderung zurück; jeder andere Test, jede andere unabhängige Referenz und jedes andere Szenario läuft ohne sie, und die Zählung der Szenariodateien in der README zählt die zurückgehaltenen Dateien weiterhin mit. Ihre EIRP und ihre Keule sind auf eine auf dem Workshop gezeigte C/N0-Kurve kalibriert, sodass dieses Szenario die Kurve konstruktionsbedingt reproduziert.

Das Broadcast-Ephemeridenmodell mit dem Polynom „Zero-Clock“ von ATOMIC ist eine Voreinstellung für Navigationsnachrichten und nicht Teil dieses Typs.

Die Beobachtung LEO gegenüber GNSS#

scenarios/leo-pass-vs-gnss-cn0.toml reproduziert qualitativ, was LEO-PNT-Demonstrationen zeigen: Das LEO-C/N0 steigt und fällt in einer Glockenkurve, die 590 s über der Maske bleibt und bei 56,8 dB-Hz ihr Maximum erreicht, 8,9 dB über dem Median der flachen MEO-GNSS-Träger (Galileo E1, 40,5 bis 52,0 dB-Hz, Median 47,8 dB-Hz). Der Abstand kommt von der Entfernung, nicht von einem stärkeren Sender: Im Überflugmaximum ist der Satellit 569 km entfernt, etwa 40-mal näher als ein Galileo-Satellit im Zenit (23.222 km), was 32 dB weniger Freiraumdämpfung bedeutet; die generische Voreinstellung strahlt 0 dBW (1 W) ab.

Mitgelieferte Szenarien#

Jede Zeile ist ein Lauf von kshana scenarios/<name>.toml (Engine 0.40.0):

Szenario Aufbau Ergebnis eines Laufs
leo-pass-vs-gnss-cn0 generic-leo L-Band, 550 km, 80°-Überflug über München L-Maximum 56,8 dB-Hz, Median 42,2 dB-Hz; Galileo-E1-Median 47,8 dB-Hz
leo-pass-xona-pulsar xona-pulsar, ein entworfener 70°-Überflug und vier Satelliten einer geneigten Schale, maritimer Nutzer X1-Maximum 65,6 dB-Hz und X5 68,9 dB-Hz beim entworfenen Überflug; größter X1-Doppler 31,4 kHz
leo-pass-iridium iridium-stl, 65°-Überflug, Nutzer im Flugzeug STL-Maximum 80,5 dB-Hz, 34,3 dB über dem GPS-L1-Median; größter Doppler 35,4 kHz
leo-indoor-uhf generic-leo, Nutzer in Gebäuden in Rom (traditionelles Gebäude) Maximum UHF 34,1, L 24,2, S 16,5, C 8,5 dB-Hz; Galileo-E1-Median 22,4 dB-Hz
leo-iot-energy generic-leo UHF und L mit dem Abschnitt [iot] Warmstart 0,90 s und 18,0 mJ bei jedem Signal; Kaltstart UHF 19,0 s (381 mJ), L 47,0 s (939 mJ), GPS L1 38,1 s (762 mJ)
leo-focus-science-iono-sounding generic-leo, vier Bänder, 70°-Überflug über Tromsø siehe Ionosphärensondierung
leo-resilience-spoof-doppler 16 Satelliten einer generischen Schicht in 1080 km, L und C, ein Sprung von 30 m siehe Spoofing-Monitore

kshana scenarios/<name>.toml --animate html --export all schreibt außerdem den interaktiven Player (.animation.html, die Überflugepochen) sowie CZML (die Cesium Language), KML (Keyhole Markup Language), GeoJSON und STK-Ephemeridendateien (Systems Tool Kit) der Überfluggeometrie (ANIMATION.md, INTEROP.md).

Ionosphärensondierung#

Jedes Bandpaar liefert außerdem den Schräg-TEC, den seine geometriefreie Codekombination im Überflugmaximum wiedergewinnt, STEC = (P₂ − P₁)·f₁²f₂² / (40.3·(f₁² − f₂²)), und die 1-Sigma dieser Schätzung aus dem Coderauschen der beiden Bänder im Maximum (geometry_free_stec_tecu, geometry_free_stec_sigma_tecu). Die Schätzung ist konstruktionsbedingt gleich dem Schräg-TEC des Modells: Die Kombination ist in erster Ordnung exakt. Die Sigma entscheidet, ob ein Bandplan ein besserer oder schlechterer Sondierer ist: scenarios/leo-focus-science-iono-sounding.toml (vier Bänder über Tromsø) gewinnt aus jedem Paar 18,85 TEC-Einheiten wieder, mit einer 1-Sigma von 0,017 TEC-Einheiten für UHF mit L und 2,9 für S mit C. Nur thermisches Coderauschen; weder Mehrwegeausbreitung noch Zwischenfrequenzversatz. MODELLED.

Spoofing-Monitore ([spoofer])#

Der optionale Abschnitt [spoofer] fälscht die Signale, die ein Empfänger an einer behaupteten Position sehen würde. Ab onset_s springt die behauptete Position um offset_m und bewegt sich dann horizontal mit push_rate_m_s in Richtung push_azimuth_deg; die gefälschte Entfernung und Entfernungsrate sind genau die der behaupteten Position, auf den in bands genannten LEO-Bändern (Standard alle) und auf dem MEO-GNSS-Signal, außer bei gnss = false. simulate_iono gibt an, ob die gefälschten Pseudoentfernungen die ionosphärische Laufzeit tragen (die eines Bodensenders tun das nicht).

Der Empfänger betreibt zwei Monitore (src/leo_link/spoof.rs), jeden mit einer angegebenen Falschalarmwahrscheinlichkeit je Epoche (p_fa, Standard 1e-5), und erklärt Detektion in der ersten Epoche, in der seine Detektionswahrscheinlichkeit 1 − p_md erreicht (Standard 0,999). Die Detektionswahrscheinlichkeiten sind für das angegebene gaußsche Rauschen exakt, ausgewertet am rauschfreien mittleren Residuum; es wird kein Rauschen gezogen.

Monitor Statistik Was er sieht
Konsistenz von Doppler und Überfluggeometrie gemessene Entfernungsraten gegen die aus den Bahnen und einer unabhängigen A-priori-Position und -Geschwindigkeit vorhergesagten (prior_sigma_m, prior_velocity_sigma_m_s); ein verallgemeinertes Chi-Quadrat nach der Methode der kleinsten Quadrate über ein Fenster von window_s (Standard ein Schritt), wobei die Uhrendrift eine Störgröße ist (oder mit drift_sigma_m_s vorgegeben wird); Rauschen der Frequenzregelschleife aus C/N0 (Kaplan & Hegarty 2006, § 5.6.2), auf den GNSS-Kanälen, den LEO-Kanälen und allen Kanälen ein Positionsfehler δx verschiebt eine Entfernungsrate um g·δx, g = −(Δv − ρ̇u)/ρ: Die Quergeschwindigkeit eines LEO-Satelliten im Verhältnis zu seiner Entfernung ist etwa 25-mal so groß wie die eines MEO-Satelliten, daher ist derselbe Fehler im LEO-Doppler etwa 25-mal größer
Konsistenz zwischen den Bändern der Schritt von Epoche zu Epoche der geometriefreien Pseudoentfernungskombination jedes LEO-Bandpaares, bereinigt um das ionosphärische Modell des Empfängers, gegen das Coderauschen √(2(σ₁² + σ₂²)) und eine tolerierte nicht modellierte ionosphärische Rate (iono_rate_bound_m_s) ein Spoofer, der einige Bänder fälscht und andere nicht, oder jedes Band ohne die Ionosphäre, bei seinem Einsetzen; nicht einer, der jedes Band fälscht und die Ionosphäre simuliert

scenarios/leo-resilience-spoof-doppler.toml: Ein Sprung von 30 m an einem vermessenen Standort in Frankfurt ändert die GNSS-Entfernungsraten um etwa 4 mm/s und die LEO-Raten um etwa 10 cm/s (mediane Gradienten 1.4e-4 und 3.5e-3 je Sekunde). Der Test nur mit GNSS erkennt ihn nie (größte Nichtzentralität 0,06); der Test über alle Kanäle erkennt ihn 105 s nach dem Einsetzen. scenarios/leo-resilience-spoof-monitors.toml lässt vier Spoofer gegen beide Monitore laufen.

Einschränkungen, in jedem Ergebnis angegeben: Der Spoofer ist ein idealisierter, in sich konsistenter Positionsschub, der seinen eigenen Pfad ausgleicht (keine Signatur in Leistung, Einfallswinkel oder Korrelationsspitze); das A-priori ist von den gespooften Positionslösungen unabhängig; das ionosphärische Modell des Empfängers ist das der Engine, sodass das echte Residuum zwischen den Bändern im Mittel null ist. MODELLED (zwei Zeilen in VERIFICATION-MATRIX.md).

Validierung#

Unabhängige Referenz Test Ergebnis
ITU-R P.838-3 Tabelle 5, 115 Frequenzen p838_coefficients_reproduce_table5_to_its_printed_digits jeder Koeffizient innerhalb von 0,6 seiner letzten gedruckten Stelle (schlechtester beobachteter Wert 0,51)
Validierungsbeispiele der ITU-R Study Group 3 (CG-3M3J-13-ValEx-Rev8.3.0), P.618-14 Regen p618_rain_attenuation_matches_the_itu_validation_examples 56 Fälle innerhalb von 1e-4 dB (beobachtet 5e-6 dB)
Dieselben Beispiele, P.618-14 Szintillation p618_scintillation_matches_the_itu_validation_examples 42 Fälle innerhalb von 1e-5 dB
Arbeitsmappe Clutter and BEL der ITU-R Study Group 3, P.2109 p2109_building_entry_loss_matches_the_itu_workbook 568 Werte innerhalb von 0,001 dB
Gruppenlaufzeitverhältnis γ = (77/60)² aus IS-GPS-200 first_order_iono_reproduces_the_is_gps_200_group_delay_ratio auf 1e-12; Verstärkung L1/L2 und L1/L5 2,978 und 2,588
Friis in der Form Kilometer–Megahertz free_space_loss_is_the_friis_kilometre_megahertz_form auf 1e-4 dB
arXiv 2509,19551 Tabelle 1 (Pulsar In-Orbit-Validierung (IOV), volle Betriebsfähigkeit (FOC) polar, FOC geneigt, GPS) doppler_envelope_reproduces_the_pulsar_paper_table_1 20 Geschwindigkeiten und Doppler-Maxima innerhalb von 0,05 %

Die unabhängigen Referenzen für Regen und Szintillation übernehmen die Regenhöhe und die feuchte Refraktivität so, wie die Validierungsbeispiele sie angeben: Die Engine trägt weder die Karte nach ITU-R P.839 noch die nach P.453.

Einschränkungen#

  • EIRP und Strahlungsdiagramme sind veröffentlichte Empfangsleistungen, in eine EIRP umgerechnet, oder repräsentative Entscheidungen; es wird kein gemessenes Strahlungsdiagramm eines Satelliten verwendet, und kein LEO-C/N0 wird mit einer Messung verglichen.
  • Der Gasterm ist das abgelöste vereinfachte Verfahren P.676-10; unter 1 GHz ist er der mit f² skalierte Wert bei 1 GHz, und Regen wird dort als null angenommen.
  • Der Anteil des TEC unterhalb eines LEO-Satelliten stammt aus einer einzelnen Chapman-Schicht (ohne Plasmasphäre) und ist durch einen angegebenen Anteil überschreibbar.
  • Die entworfenen Überflug- und Walker-Bahnen sind Zweikörperbahnen mit einem optionalen säkularen J2 (der zweiten zonalen Harmonischen der Erde); der TLE-Pfad verwendet SGP4. Die eigene Beschleunigung des Nutzers bleibt in der Dopplerrate in geschlossener Form unberücksichtigt (die numerische Prüfung berichtet, was das für einen bewegten Nutzer kostet).
  • RINEX (Receiver Independent Exchange Format) 4,02 hat keine LEO-Navigationsdatensätze; jeder LEO-Export im RINEX-Stil gehört zum Code der Navigationsnachricht und ist eine dokumentierte Kshana-Erweiterung (Vorarbeiten: arXiv 2401,17767).