Tłumaczenie maszynowe, niezweryfikowane przez osobę, dla której polski jest językiem ojczystym. Wzorcem jest wersja angielska.

Nawigacja na niskiej orbicie okołoziemskiej (LEO)Edytuj na GitHubieŹródło: docs/LEO-PNT-FUSION.md

Fuzja pozycjonowania, nawigacji i czasu z MEO i LEO

Trzy rodzaje scenariuszy dają pozycjonowanie, nawigację i czas (PNT) z satelitami na niskiej orbicie okołoziemskiej (LEO) samymi lub połączonymi z globalnymi systemami nawigacji satelitarnej (GNSS) na średniej orbicie okołoziemskiej (MEO): leo-pvt (pozycja, prędkość i czas), leo-ppp (precyzyjne pozycjonowanie punktowe) oraz ntn-positioning (sieć nieziemska 5G). Źródło: src/leo_fusion/.

Silnik jest niezależny od systemu. Każda konstelacja to powłoki Walkera, jawne elementy orbitalne albo gotowe ustawienie GNSS rodzaju constellation-design; każdy sygnał to nośna, tempo chipów i obwiednia stosunku nośnej do gęstości szumu (C/N0); każdy budżet błędów to jawne jedno sigma. Nazwane systemy to opcjonalne gotowe ustawienia, po jednym pliku, a każda możliwość, test i dołączony scenariusz działają bez któregokolwiek z nich.

Systemy i gotowe ustawienia#

Scenariusz wymienia swoje systemy jako tabele [[system]]. Ten kompletny scenariusz łączy bazową konstelację GPS z ogólną warstwą LEO i działa tak, jak jest zapisany (kshana <file>.toml; silnik 0.40.0 daje medianę rozmycia dokładności pozycji 2,43 dla samego GPS i 1,17 po fuzji oraz błąd 3D średniokwadratowy 2,06 m i 0,47 m):

kind = "leo-pvt"
mode = "joint"
seed = 3
duration_s = 600.0
step_s = 60.0
[user]
lat_deg = 40.42
lon_deg = -3.70
height_m = 650.0
[[system]]
name = "GPS"
preset = "gps-baseline"
cn0_dbhz = [38.0, 48.0]
sisre_m = 0.6

[[system]]
name = "Any LEO layer"
carrier_hz = 1.5e9          # any band
chip_rate_hz = 10.23e6      # omit with doppler_only = true for a signal of opportunity
cn0_dbhz = [45.0, 55.0]     # at the elevation mask and at the zenith
sisre_m = 0.3               # signal-in-space range error of orbit and clock, one sigma
clock = "estimated"         # its own receiver clock (inter-system bias solved) or "known"
isb_ns = 40.0               # true inter-system bias used to simulate its pseudoranges
[[system.shell]]
total = 240
planes = 12
phasing = 1
altitude_km = 1000.0
inclination_deg = 60.0

preset = "gps-baseline" (Global Positioning System, GPS; lub galileo, beidou-meo, glonass) przyjmuje opublikowaną konstelację GNSS; leo_preset = "..." uzupełnia z gotowego ustawienia LEO wszystko, czego tabela nie określa. C/N0 rośnie liniowo z sinusem elewacji od maski do zenitu (wybór modelowania: rzeczywista obwiednia przejścia zależy od charakterystyki anteny nadawczej). Jedno-sigma pseudoodległości to szum termiczny pętli synchronizacji opóźnienia (DLL) silnika (navsignal::dll_code_jitter_chips) przy tym C/N0, połączony z błędem odległości w sygnale w przestrzeni (SISRE), chyba że sigma_pr_m je ustala; jedno-sigma prędkości zmiany odległości to długość fali razy sigma_doppler_hz. Ponieważ sigma jest wejściem, osobny model sygnału może je dostarczać, a kod pozycjonowania nie musi wiedzieć, skąd pochodzi.

Ustawienie predefiniowane Co niesie Źródła
xona-pulsar X1 przy 1593,3225 MHz, 1,023 Mchip/s, moc odbierana od −148,2 do −139,1 dBW; X5 przy 1190,51625 MHz, 10,23 Mchip/s, od −144,9 do −136,2 dBW; 258 satelitów w 18 płaszczyznach na 1080 km, 53 i 97 stopni PUBLIC: arXiv:2509,19551. Reprezentatywne: podział między dwa nachylenia, fazowanie, błąd odległości
iridium-stl Iridium Satellite Time and Location (STL): 66 satelitów, sześć prawie biegunowych płaszczyzn na 780 km i 86,4 stopnia; impulsy przy 1616 do 1626 MHz, kluczowanie fazy czterostanowe (QPSK) przy 25 000 symboli/s; moc odbierana od 300 do 2400 razy minimum GPS PUBLIC: Resilient Navigation and Timing Foundation (RNTF), National Institute of Standards and Technology (NIST), konstelacja. WYLICZONE: moc w dBW. Reprezentatywne: nośna w środku pasma, błąd odległości
starlink-sop Tylko Doppler: 11,325 GHz, radiolatarnia z multipleksowaniem z ortogonalnym podziałem częstotliwości (OFDM) 240 MHz, C/N0 do 57,07 dB-Hz, błąd Dopplera 30 Hz; pierwsza powłoka 1584 satelitów na 550 km i 53 stopniach PUBLIC: Kozhaya, Saroufim i Kassas 2025, Federal Communications Commission (FCC) 21-48. Reprezentatywne: fazowanie, C/N0 przy horyzoncie
centispace Kluczowanie fazy dwustanowe (BPSK) przy 2,046 Mchip/s w pobliżu L1 i L5; wyznaczanie orbity z dokładnością centymetrową PUBLIC: wstępna ocena, GPS Solutions. Reprezentatywne: nośne, moc, cała konstelacja operacyjna
generic-c-band System pasma C w przydziale służby nawigacji radiowej przez satelity (RNSS) od 5010 do 5030 MHz, dla systemów, których parametry nie są publiczne PUBLIC: przydział z Regulaminu Radiokomunikacyjnego Międzynarodowego Związku Telekomunikacyjnego (ITU). Wszystko inne reprezentatywne
atomic-zero-clock Model efemeryd i zegara: wielomian efemeryd szóstego rzędu, odświeżanie co 30 s, zegar sterowany do czasu GNSS; SISRE 0,26 m PUBLIC: InsideGNSS. WYLICZONE: SISRE. Łączy się z dowolną konstelacją przez ephemeris_preset
celeste-iod Demonstracja na orbicie (IOD) Celeste Europejskiej Agencji Kosmicznej (ESA), jedna konfiguracja parametryzowanego projektu sygnału orbita PUBLIC (ESA, streszczenie Institute of Navigation (ION) 16907); parametry sygnału WORKSHOP, przedstawione na warsztatach LEO-PNT programu ESA Navigation Innovation and Support Programme (NAVISP), 2026

Każda liczba pochodząca z warsztatów znajduje się w module fusion w src/celeste_iod.rs, używanym przez scenarios/celeste-iod-fused-pvt.toml (tests/workshop_preset_isolation.rs wymusza, gdzie mogą się pojawiać). Jak to ustawienie jest wyłączane: każda liczba silnika pochodząca z warsztatów mieści się w jednym pliku, src/celeste_iod.rs, który build.rs kompiluje tylko wtedy, gdy istnieje, oraz w scenariuszach dostępnych tylko w repozytorium scenarios/*celeste-iod*.toml. Usunięcie tego pliku i tych scenariuszy wyłącza gotowe ustawienie bez zmian w kodzie źródłowym; każdy inny test, każda wyrocznia i każdy scenariusz działają bez niego, a liczba plików scenariuszy w README nadal liczy pliki wyłączone.

leo-pvt#

Jeden rodzaj, cztery tryby (mode = "doppler" | "joint" | "polar" | "timing").

Doppler. Odbiornik mierzący Doppler f_D przy długości fali λ obserwuje prędkość zmiany odległości ρ̇ = −λ f_D = u·(v_s − v_u) + ḋ, gdzie u to linia widzenia, a ḋ to dryf zegara odbiornika. Wsadowe dopasowanie Gaussa-Newtona wyznacza pozycję, dryf i opcjonalnie stałą prędkość, z analitycznymi pochodnymi cząstkowymi ∂ρ̇/∂r = −(I − u uᵀ)(v_s − v_u)/ρ: informację o pozycji niesie tylko prędkość satelity w poprzek linii widzenia, więc o geometrii decyduje to, jak linie widzenia obracają się w oknie. Raport podaje błąd w zależności od długości okna, obwiednię Dopplera, tempa zmiany Dopplera i zrywu każdego systemu oraz tabelę dla pojedynczego przejścia. Jedno przejście lokalizuje użytkownika wzdłuż toru (chwila zerowego Dopplera) i w poprzek (stromość krzywej Dopplera); błąd poprzeczny rośnie bez ograniczeń, gdy przejście zbliża się do zenitu, a lustrzane odbicie względem śladu na powierzchni pasuje prawie równie dobrze (rozdziela je tylko obrót Ziemi). W tym trybie działa system tylko z Dopplerem (doppler_only = true, gotowe ustawienie starlink-sop).

Łączny. W każdej epoce ważona metoda najmniejszych kwadratów na pseudoodległościach samych systemów GNSS, samych systemów LEO i wszystkich razem, z jednym zegarem odbiornika na system (szacowany jest błąd międzysystemowy, ISB) lub ze znanym przesunięciem rozgłaszanym w odniesieniu do skali czasu. Podaje geometryczny, pozycyjny, poziomy, pionowy i czasowy współczynnik rozmycia dokładności (GDOP, PDOP, HDOP, VDOP, TDOP), błędy, oszacowane błędy systematyczne oraz DOP w zależności od liczby satelitów LEO dodanych do geometrii GNSS.

Polarny. Satelity w zasięgu, mediana DOP i dostępność w zależności od szerokości geograficznej dla GNSS na MEO, LEO i obu razem.

Czasowy. W znanej pozycji każda pseudoodległość LEO jest pomiarem zegara. Odbiornik uruchamia dwustanowy (faza, częstotliwość) filtr Kalmana, którego szum procesu to biały szum częstotliwości i szum częstotliwości typu błądzenie losowe klasy oscylatora (modele slot-timing i zegara), utrzymuje czas między przejściami i przelicza czas systemowy na czas koordynowany (UTC) wyrażeniem z IS-GPS-200 Δt_UTC = Δt_LS + A0 + A1 (t_E − t_ot + 604800 (WN − WN_t)); niepewność rozgłaszanego przesunięcia jest błędem systematycznym dla przebiegu.

leo-ppp#

Rozszerzony filtr Kalmana (EKF) precyzyjnego pozycjonowania punktowego (PPP) z liczbami rzeczywistymi, na kodzie i fazie wolnych od jonosfery: współrzędne statyczne, biały zegar odbiornika, jeden błąd międzysystemowy na każdy dodatkowy system, zenitalne opóźnienie wilgotne typu błądzenie losowe oraz rzeczywistoliczbowa niejednoznaczność dla każdego łuku satelity. Błąd precyzyjnej orbity i zegara jest wspólny dla kodu i fazy satelity, więc każdy satelita to jedna skorelowana aktualizacja o dwóch wierszach, w postaci stabilizowanej metodą Josepha, która utrzymuje dodatnią określoność kowariancji przez tysiące milimetrowych aktualizacji fazy. Pomiary są symulowane z tego samego modelu, więc znormalizowany kwadrat błędu estymacji (NEES) pozycji musi podlegać rozkładowi chi-kwadrat z trzema stopniami swobody; test sprawdza to na ziarnach Monte Carlo. Zbieżność to pierwsza epoka, po której błędy poziomy i pionowy pozostają poniżej progów (10 cm) do końca przebiegu.

Satelita LEO przecina niebo w około dziesięć minut, a satelita MEO przesuwa się o kilka stopni, więc łuki LEO oddzielają niejednoznaczności od pozycji znacznie szybciej.

ntn-positioning#

Łącze w dół sieci nieziemskiej (NTN) 5G w paśmie S służby satelitarnej ruchomej (MSS), pasmo n256 organizacji 3rd Generation Partnership Project (3GPP) (2170 do 2200 MHz). Granica Cramér-Rao (CRB) dla czasu przybycia wynosi c / (2π β sqrt(2 (C/N0) T)), gdzie β to średniokwadratowa (Gabora) szerokość pasma (B/√12 dla płaskiego widma OFDM), a dla częstotliwości tonu sqrt(3 / (2π² (C/N0) T³)). Rodzaj porównuje kanały (domyślnie kanał New Radio 5 MHz i kanał wąskopasmowy 200 kHz) przez rozwiązania z czasu przybycia w łączu w dół z nieznanym zegarem odbiornika oraz rozwiązanie z jednym satelitą z Dopplera podczas przejścia.

Dołączone scenariusze#

Scenariusz Rodzaj, tryb Co pokazuje (z ziarnem, deterministycznie)
leo-doppler-positioning leo-pvt, doppler warstwa Xona Pulsar X1 (258 satelitów), szum Dopplera 1 Hz: błąd 3D 7,5 m po dziesięciu minutach (26 satelitów); na pojedynczym przejściu jedno-sigma poprzeczne do toru wynosi 303 m, gdy przejście jest prawie nad głową (25 km od toru), wobec 43 m przy 250 km od toru
starlink-sop-doppler-positioning leo-pvt, doppler sygnały okazji tylko z Dopplerem, błąd Dopplera 30 Hz przy 10 Hz: formalne poziome jedno-sigma około 10 m po 20 s z 12 satelitami i 6 m po 60 s
meo-leo-fused-pvt leo-pvt, joint mediana PDOP dla GPS i Galileo 1,47 i średniokwadratowy (RMS) błąd 3D 1,06 m; sam Xona X5 1,73 i 0,49 m; po fuzji 1,06 i 0,41 m; błąd systematyczny LEO 40 ns (11,99 m) oszacowany jako 12,06 m
leo-ppp-convergence leo-ppp Zbieżność 7,4 min (tylko GNSS na MEO), 4,8, 3,2, 2,7 i 2,3 min przy 60, 96, 192 i 288 satelitach LEO
ntn-5g-positioning ntn-positioning Granica odległości od 0,26 do 1,03 m dla 4,5 MHz i od 6,5 do 26 m dla 180 kHz; rozwiązania w pobliżu 2 m wobec 26 m
polar-arctic-leo-coverage leo-pvt, polar VDOP dla GPS i Galileo 1,20 na równiku, 1,51 przy 89,9 stopnia; z Iridium 1,14 na biegunie
leo-timing-utc leo-pvt, timing Transfer czasu Iridium przez 6 godzin w Boulder: od 9,9 do 11,4 ns RMS przy nominalnym C/N0 dla czterech klas oscylatorów, od 15,1 do 25,0 ns przy stosunku niższym o 30 dB
celeste-iod-fused-pvt (opcjonalnie) leo-pvt, joint GNSS uzupełniony o dwa satelity IOD w odniesieniu do skali czasu (tylko w repozytorium, wyłączone razem z gotowym ustawieniem)

Te rodzaje działają też wewnątrz innych scenariuszy: leo-pvt jest członkiem przeglądu leo-focus-fused-pnt-sisre oraz kampanii leo-vertical-autonomous-vehicle, leo-vertical-polar-arctic, leo-vertical-critical-infrastructure-timing i leo-vertical-5g-network-timing; leo-ppp przeglądu leo-focus-ppp-altitude; ntn-positioning przeglądu leo-focus-ntn-bandwidth; a leo-pvt i leo-ppp to etapy rozwiązania połączonego i PPP rodzaju leo-pnt-chain. Ich wyniki są na LEO-PNT.md.

Opublikowane wartości i etykiety#

Wartość Źródło Kshana Etykieta
Doppler Iridium do ±36 kHz RNTF 35,9 kHz, maksimum z doby przejść, w granicach 5% VALIDATED (tests/leo_doppler_reference.rs)
maksymalny Doppler Xona Pulsar X1 od 32 do 34 kHz arXiv:2509,19551 33,6 kHz z jednego satelity każdej opublikowanej powłoki (1080 km, 53 i 97 stopni), wewnątrz przedziału bez poszerzenia; sama powłoka 53 stopni osiąga szczyt 31,8 kHz, ponieważ obrót Ziemi spowalnia orbitę postępową względem podłoża VALIDATED (ten sam test)
zryw Xona Pulsar X1 ±1,26 Hz/s² arXiv:2509,19551 około 1,0 Hz/s² na przejściu nad głową podane, niezwalidowane
zbieżność PPP 9,6 → 7,0, 3,2, 2,1, 1,3 min przy 60/96/192/288 LEO Li et al., Journal of Geodesy 93:749 (2019), doi 10.1007/s00190-018-1195-2 7,4 → 4,8, 3,2, 2,7, 2,3 min, monotonicznie MODELLED spójność trendu (konstelacje, szum i stacje nie są odtwarzane)
Starlink około 2 m w 20 s z trzema satelitami Kozhaya, Saroufim i Kassas 2025 formalne poziome jedno-sigma około 10 m po 20 s z 12 satelitami, z doskonałymi efemerydami i każdym błędem ujętym w sigma Dopplera 30 Hz przy 10 Hz MODELLED porównanie (odbiornik i tempo pomiarów nie są odtwarzane)
synchronizacja czasu Iridium poniżej 40 ns od UTC(NIST) NIST około 10 ns RMS, obliczone z modelu MODELLED porównanie

Wszystko inne jest MODELLED, z uzasadnieniem w macierzy weryfikacji (docs/VERIFICATION-MATRIX.md): DOP sprawdzono na ręcznie wyprowadzonym przypadku czterech satelitów, rozwiązania względem ich kowariancji, model Dopplera względem tożsamości przyspieszenia odległości, filtr PPP względem pasma chi-kwadrat NEES, a granice względem kwadratury.

Ograniczenia, podane wprost#

  • Orbity dwóch ciał z wiekowym dryfem od J2, drugiej harmonicznej zonalnej Ziemi; bez błędu dopasowania efemeryd rozgłaszanych poza jedno-sigma SISRE, bez charakterystyki anteny satelity.
  • Brak opóźnienia jonosferycznego i troposferycznego w leo-pvt (filtr PPP niesie stan opóźnienia wilgotnego; jego kombinacja wolna od jonosfery usuwa jonosferę pierwszego rzędu), brak scyntylacji, wielodrogowości, poślizgów cyklu i rozwiązywania niejednoznaczności całkowitoliczbowych.
  • Dokładność NTN jest granicą, a nie osiągniętym wynikiem.
  • Wartości gotowych ustawień oznaczone jako reprezentatywne są ilustracyjne i nie opisują projektu żadnego operatora.