Проліт і бюджет лінії LEO (leo-pass)
LEO-PNT — це позиціонування, навігація та час (PNT) від супутників на низькій навколоземній орбіті (LEO). Вид leo-pass симулює один або кілька прольотів супутників LEO над користувачем і обчислює бюджет лінії діапазон за діапазоном, поряд із супутниками GNSS (глобальної навігаційної супутникової системи) на середній навколоземній орбіті (MEO) у полі зору. Рушій не залежить від системи: будь-яке орбітальне угруповання, будь-який проєкт сигналу та будь-який діапазон, записані прямо в сценарій. Іменовані системи — необов'язкові пресети, кожен у власному файлі із джерелом.
- Код:
src/leo_pass.rs(вид) іsrc/leo_link/(публічні будівельні блоки, які можуть викликати інші модулі). - Сценарії:
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і необов'язковийleo-pass-celeste-iod-multiband(результати в розділі Вбудовані сценарії). Вид також є учасником кампанійleo-resilience-spoof-monitors,leo-focus-iot-eirp,leo-focus-indoor-uhfі кожного сценаріюleo-vertical-*та етапом прольоту видуleo-pnt-chain. - Огляд усіх видів і сценаріїв LEO-PNT: LEO-PNT.md.
- Оракули:
tests/leo_link_reference.rs, фікстури вtests/fixtures/leo_link/із їхніми URL джерел.
Що обчислює один прогін#
Для кожного супутника LEO, діапазону та епохи:
| Член | Модель | Позначка |
|---|---|---|
| Висота, азимут, дальність | користувач у WGS-84 (World Geodetic System 1984), супутник в інерціальній системі, узгодженій із земною системою на епоху | обчислено |
Швидкість зміни дальності ρ̇ = d·Δv/ρ, прискорення дальності ρ̈ = (|Δv|² − ρ̇² + d·Δa)/ρ |
замкнена форма; кожен прогін звіряє обидві з центральними різницями поширеної дальності та повідомляє найбільшу різницю | замкнена форма |
Доплер −f·ρ̇/c, швидкість зміни Доплера −f·ρ̈/c |
першого порядку, для кожного діапазону | замкнена форма |
| Втрати на поширення у вільному просторі | Фріс, 20·log10(4πRf/c) |
VALIDATED |
| EIRP супутника (еквівалентна ізотропно випромінювана потужність) і діаграма | ізофлюкс до граничної висоти, гауссова головна пелюстка −12(η/θ₃)² дБ або плоска |
MODELLED |
| Антена користувача | патч G_z + 10·q·log10(sin el) dBic, напівсферична або ізотропна |
MODELLED |
| Газове загасання | спрощені вирази ITU-R (Міжнародний союз електрозв'язку, сектор радіозв'язку) P.676-10 Annex 2 (замінені P.676-13, чиї табличні коефіцієнти рушій не містить) | MODELLED |
| Загасання в дощі | коефіцієнти ITU-R P.838-3 і процедура P.618-14 § 2.2.1.1 за інтенсивністю дощу R0.01 і висотою дощу | VALIDATED |
| Тропосферна сцинтиляція | ITU-R P.618-14 § 2.4.1; нижче 4 ГГц це екстраполяція, позначена у звіті | VALIDATED (4–55 ГГц) |
| Втрати на проникнення в будівлю (користувач у приміщенні) | ITU-R P.2109-2, традиційна або термічно ефективна, на висоті траєкторії біля фасаду | VALIDATED |
| Невідповідність поляризацій | коефіцієнт втрат поляризації за осьовими відношеннями та напрямками, усереднений за орієнтацією еліпса | замкнена форма |
| Шумова температура системи | поріг антени + випромінювання неба поглинального шляху (275 К) + космічні 2,7 К + приймач 290(10^(NF/10) − 1) |
MODELLED |
| C/N0 (відношення потужності несівної до густини шуму) | EIRP + G_sat − L_fs − L_gas − L_rain − L_scint − L_BEL − L_pol + G_user − 10·log10(kT) − L_impl |
MODELLED |
| Іоносферна групова затримка | 40.3·STEC/f², STEC (похила повна електронна концентрація) за моделлю Klobuchar або вертикальна повна електронна концентрація (TEC), масштабована часткою шару Чепмена під супутником |
масштабування VALIDATED, TEC MODELLED |
Для кожної пари діапазонів: безіоносферні коефіцієнти, підсилення шуму √(a₁² + a₂²) і теплові шуми коду кожного діапазону та їхньої комбінації в піку проходу. Порівняння з GNSS на MEO використовує ту саму антену користувача та приймач із мінімальною прийнятою потужністю кожного сигналу за його інтерфейсним документом (Galileo Open Service Signal-in-Space Interface Control Document, OS SIS ICD, випуск 2,1, таблиця 12; GPS за IS-GPS-200 та IS-GPS-705) плюс заявлений надлишок, масштабовані за дальністю. Необов'язковий розділ [iot] (Інтернет речей) дає час до першого визначення, енергію на одне визначення та строк роботи батареї залежно від робочого циклу для заявленого енергетичного бюджету приймача (MODELLED, кожне припущення є вхідним параметром і вказане у звіті).
Супутники#
orbit = "pass"(типово): колова орбіта, розташована так, що користувач бачить один прохід із вибраним максимальним кутом місця в обраний час, висхідний або низхідний, на схід або на захід від користувача; нахил може бути сонячно-синхронним.orbit = "elements": явно задані кеплерові елементи.orbit = "tle": дворядковий набір елементів (TLE) через пропагатор рушія Simplified General Perturbations 4 (SGP4).[[leo_constellation]]: орбітальне угруповання Волкера, побудоване кодомconstellation-design(йогоConstellationCfgабо оболонки пресета); повідомляються найвищі проходи у вікні.
Діапазони та конструкції сигналів#
Діапазони: system = "<preset>" з необов'язковою підмножиною bands і записи [[satellite.band]], які додають діапазон або перевизначають будь-яке поле діапазону пресета. system = "none" лише із записами [[satellite.band]] не використовує жодного пресета.
Діапазон також може вказувати конструкцію leo-signal (signal = "xona-x5", будь-яка конструкція в data/leo-signals/ або та, яку передає тип leo-pnt-chain; див. LEO-SIGNAL.md). Тоді діапазон бере з конструкції центральну частоту (якщо не задано frequency_mhz), смугу передавання та частоту чипів відстежуваної компоненти, розподіляє свою EIRP між компонентами конструкції за їхніми частками потужності та на кожній епосі повідомляє C/N0 відстежуваної компоненти й обмежений смугою джитер раннього-пізнього відстеження коду (Betz і Kolodziejski 2009, формула типу leo-signal) як похибку далекометрії.
Пресети#
Кожен пресет позначає свої числа як PUBLIC (з URL), REPRESENTATIVE (задокументований конструкторський вибір, ніколи не твердження про реальну систему) або WORKSHOP.
| Передналаштування | Джерело | Діапазони | Орбіта |
|---|---|---|---|
generic-leo (типово) |
REPRESENTATIVE; несівні L, S і C із публічних документів | UHF 450 МГц (репрезентативно), L 1191,795 МГц (центр Galileo E5), S 2492,028 МГц (NavIC S, несівна S-діапазону Navigation with Indian Constellation), C 5020 МГц (центр виділення RNSS (радіонавігаційна супутникова служба) 5010–5030 МГц), кожна 0 дБВт | 550 км, сонячно-синхронна, Walker 240/12/1 |
generic-c-band |
REPRESENTATIVE, для систем C-діапазону, параметри яких не є публічними (наприклад, TrustPoint) | C 5020 МГц, BPSK(10) (двійкова фазова маніпуляція зі швидкістю 10 × 1,023 Мчип/с), ізофлюкс | 550 км, 53° |
xona-pulsar |
PUBLIC, arXiv 2509,19551, таблиці 1–2 | X1 1593,3225 МГц, X5 1190,51625 МГц; EIRP за опублікованою мінімальною прийнятою потужністю при 10° | 1080 км, 53° (192) і 97° (66) |
iridium-stl |
PUBLIC, Resilient Navigation and Timing Foundation (RNTF) та опублікована орбіта | Satellite Time and Location (STL) на 1621 МГц (середина 1616–1626 МГц); EIRP за «300 разів GPS» | 781 км, 86,4°, 66 у 6 площинах |
starlink-soop |
PUBLIC показники сигналу (NAVIGATION 72(1)), REPRESENTATIVE орбіта та EIRP | маяк Ku 240 МГц, лише Доплер | 550 км, 53° |
centispace |
PUBLIC структура сигналу (PMC10301026), REPRESENTATIVE орбіта та EIRP | BPSK 2,046 Мчип/с поблизу L1 і L5 | 1000 км, 55° |
celeste-iod (необов'язково) |
WORKSHOP параметри сигналу, PUBLIC орбіта | сім діапазонів конфігурації №1 | 510 км, сонячно-синхронна |
Пресет Celeste IOD (демонстрація на орбіті) є необов'язковим. Його параметри сигналу було представлено на семінарі LEO-PNT програми Navigation Innovation and Support Programme (NAVISP) Європейського космічного агентства (ESA) у 2026 році й досі не мають публічного джерела; вони містяться в модулі link файла src/celeste_iod.rs, який використовує scenarios/leo-pass-celeste-iod-multiband.toml. Як пресет вилучається: кожне число рушія, отримане із семінару, міститься в одному файлі, src/celeste_iod.rs, який build.rs компілює лише тоді, коли він існує, та у сценаріях лише з репозиторію scenarios/*celeste-iod*.toml. Видалення цього файла й цих сценаріїв вилучає пресет без змін у коді; усі інші тести, оракули та сценарії працюють без нього, а лічильник файлів сценаріїв у README все одно враховує вилучені файли. Його EIRP і промінь відкалібровано за трасою C/N0, показаною на семінарі, тож цей сценарій відтворює трасу за побудовою.
Поліноміальна модель бортових ефемерид ATOMIC із «нульовим годинником» є пресетом навігаційного повідомлення і не входить до цього типу.
Спостереження LEO порівняно з GNSS#
scenarios/leo-pass-vs-gnss-cn0.toml якісно відтворює те, що показують демонстрації LEO-PNT: C/N0 LEO зростає та спадає дзвоноподібно, залишається вище маски 590 с і сягає піку 56,8 дБ-Гц, на 8,9 дБ вище за медіану плоских несівних GNSS на MEO (Galileo E1, від 40,5 до 52,0 дБ-Гц, медіана 47,8 дБ-Гц). Перевага походить від дальності, а не від потужнішого передавача: у піку проходу супутник перебуває на відстані 569 км, приблизно в 40 разів ближче, ніж супутник Galileo в зеніті (23 222 км), що дає на 32 дБ менші втрати у вільному просторі; типовий пресет випромінює 0 дБВт (1 Вт).
Вбудовані сценарії#
Кожен рядок є одним прогоном kshana scenarios/<name>.toml (рушій 0.40.0):
| Сценарій | Налаштування | Результат одного прогону |
|---|---|---|
leo-pass-vs-gnss-cn0 |
generic-leo, діапазон L, 550 км, прохід під кутом 80° над Мюнхеном |
пік L 56,8 дБ-Гц, медіана 42,2 дБ-Гц; медіана Galileo E1 47,8 дБ-Гц |
leo-pass-xona-pulsar |
xona-pulsar, проєктний прохід під кутом 70° і чотири супутники похилої оболонки, морський користувач |
пік X1 65,6 дБ-Гц і X5 68,9 дБ-Гц на проєктному проході; найбільший Доплер X1 31,4 кГц |
leo-pass-iridium |
iridium-stl, прохід під кутом 65°, повітряний користувач |
пік STL 80,5 дБ-Гц, на 34,3 дБ вище за медіану GPS L1; найбільший Доплер 35,4 кГц |
leo-indoor-uhf |
generic-leo, користувач у приміщенні в Римі (традиційна будівля) |
пік UHF 34,1, L 24,2, S 16,5, C 8,5 дБ-Гц; медіана Galileo E1 22,4 дБ-Гц |
leo-iot-energy |
generic-leo UHF і L із розділом [iot] |
гаряче визначення 0,90 с і 18,0 мДж на кожному сигналі; холодне визначення UHF 19,0 с (381 мДж), L 47,0 с (939 мДж), GPS L1 38,1 с (762 мДж) |
leo-focus-science-iono-sounding |
generic-leo, чотири діапазони, прохід під кутом 70° над Тромсе |
див. Зондування іоносфери |
leo-resilience-spoof-doppler |
16 супутників типового шару на 1080 км, L і C, стрибок 30 м | див. Монітори спуфінгу |
kshana scenarios/<name>.toml --animate html --export all також записує інтерактивний програвач (.animation.html, епохи проходу) і файли ефемерид CZML (Cesium Language), KML (Keyhole Markup Language), GeoJSON та STK (Systems Tool Kit) з геометрією проходу (ANIMATION.md, INTEROP.md).
Зондування іоносфери#
Кожна пара діапазонів також дає похилий TEC, який відновлює її безгеометрична кодова комбінація в піку проходу, STEC = (P₂ − P₁)·f₁²f₂² / (40.3·(f₁² − f₂²)), та 1-сигму цієї оцінки за кодовим шумом двох діапазонів у піку (geometry_free_stec_tecu, geometry_free_stec_sigma_tecu). Оцінка за побудовою дорівнює похилому TEC моделі: комбінація точна в першому порядку. Саме сигма робить план діапазонів кращим або гіршим зондувальником: scenarios/leo-focus-science-iono-sounding.toml (чотири діапазони над Тромсе) відновлює 18,85 одиниці TEC з кожної пари, з 1-сигмою 0,017 одиниці TEC для UHF із L і 2,9 для S із C. Лише тепловий кодовий шум; без багатопроменевості та міжчастотного зміщення. MODELLED.
Монітори спуфінгу ([spoofer])#
Необов'язковий розділ [spoofer] підробляє сигнали, які приймач бачив би в заявленій позиції. Від onset_s заявлена позиція стрибає на offset_m, а потім рухається горизонтально зі швидкістю push_rate_m_s у напрямку push_azimuth_deg; підроблені дальність і швидкість її зміни точно такі, як у заявленої позиції, на діапазонах LEO, названих у bands (типово всі), і на сигналі GNSS на MEO, якщо не задано gnss = false. simulate_iono визначає, чи несуть підроблені псевдодальності іоносферну затримку (у наземного передавача її немає).
Приймач запускає два монітори (src/leo_link/spoof.rs), кожен із заявленою ймовірністю хибної тривоги на епоху (p_fa, типово 1e-5), і оголошує виявлення на першій епосі, на якій його ймовірність виявлення досягає 1 − p_md (типово 0,999). Ймовірності виявлення точні для заявленого гауссового шуму й обчислюються за незашумленим середнім залишком; шум не генерується.
| Монітор | Статистика | Що він бачить |
|---|---|---|
| Узгодженість Доплера та геометрії проходу | виміряні швидкості зміни дальності порівняно з тими, що передбачені за орбітами та незалежною апріорною позицією й швидкістю (prior_sigma_m, prior_velocity_sigma_m_s); узагальнений хі-квадрат методу найменших квадратів на вікні window_s (типово один крок), де дрейф годинника є завадним параметром (або задається drift_sigma_m_s); шум петлі автопідстроювання частоти від C/N0 (Kaplan & Hegarty 2006, § 5.6.2), на каналах GNSS, каналах LEO і на всіх каналах |
похибка позиції δx зсуває швидкість зміни дальності на g·δx, g = −(Δv − ρ̇u)/ρ: поперечна швидкість супутника LEO, віднесена до його дальності, приблизно в 25 разів більша, ніж у супутника MEO, тож та сама похибка приблизно в 25 разів більша в Доплері LEO |
| Міждіапазонна узгодженість | крок від епохи до епохи безгеометричної комбінації псевдодальностей кожної пари діапазонів LEO, з вилученою іоносферною моделлю приймача, порівняно з кодовим шумом √(2(σ₁² + σ₂²)) і допустимою немодельованою швидкістю зміни іоносфери (iono_rate_bound_m_s) |
спуфер, який підробляє одні діапазони й не підробляє інші, або всі діапазони без іоносфери, у момент початку; не той, що підробляє всі діапазони та імітує іоносферу |
scenarios/leo-resilience-spoof-doppler.toml: стрибок на 30 м на оглянутому майданчику у Франкфурті змінює швидкості зміни дальності GNSS приблизно на 4 мм/с, а LEO приблизно на 10 см/с (медіанні градієнти 1.4e-4 і 3.5e-3 на секунду). Тест лише за GNSS ніколи його не виявляє (найбільший параметр нецентральності 0,06); тест за всіма каналами виявляє його через 105 с після початку. scenarios/leo-resilience-spoof-monitors.toml запускає чотири спуфери проти обох моніторів.
Обмеження, зазначені в кожному результаті: спуфер є ідеалізованим, внутрішньо узгодженим поштовхом позиції, що компенсує власний шлях (без сигнатури за потужністю, кутом приходу чи піком кореляції); апріорна позиція незалежна від підроблених визначень; іоносферна модель приймача є моделлю рушія, тож автентичний міждіапазонний залишок у середньому нульовий. MODELLED (два рядки в VERIFICATION-MATRIX.md).
Перевірка#
| Оракул | Тест | Результат |
|---|---|---|
| ITU-R P.838-3, таблиця 5, 115 частот | p838_coefficients_reproduce_table5_to_its_printed_digits |
кожен коефіцієнт у межах 0,6 від останньої надрукованої цифри (найгірше спостережене 0,51) |
| приклади перевірки Дослідницької комісії ITU-R 3 (CG-3M3J-13-ValEx-Rev8.3.0), дощ за P.618-14 | p618_rain_attenuation_matches_the_itu_validation_examples |
56 випадків у межах 1e-4 дБ (спостережено 5e-6 дБ) |
| Ті самі приклади, сцинтиляція за P.618-14 | p618_scintillation_matches_the_itu_validation_examples |
42 випадки в межах 1e-5 дБ |
| робоча книга Дослідницької комісії ITU-R 3 щодо Clutter і BEL, P.2109 | p2109_building_entry_loss_matches_the_itu_workbook |
568 значень у межах 0,001 дБ |
співвідношення групових затримок IS-GPS-200 γ = (77/60)² |
first_order_iono_reproduces_the_is_gps_200_group_delay_ratio |
з точністю до 1e-12; підсилення L1/L2 і L1/L5 2,978 та 2,588 |
| форма Фріїса «кілометр–мегагерц» | free_space_loss_is_the_friis_kilometre_megahertz_form |
з точністю до 1e-4 дБ |
| arXiv 2509,19551, таблиця 1 (Pulsar: перевірка на орбіті (IOV), повна експлуатаційна готовність (FOC) полярна, FOC похила, GPS) | doppler_envelope_reproduces_the_pulsar_paper_table_1 |
20 швидкостей і максимумів Доплера в межах 0,05 % |
Оракули дощу та сцинтиляції беруть висоту дощу та вологу рефрактивність такими, якими їх дають приклади перевірки: рушій не містить ні карти ITU-R P.839, ні карти P.453.
Обмеження#
- EIRP і діаграми спрямованості є опублікованими прийнятими потужностями, перерахованими на EIRP, або репрезентативним вибором; виміряна діаграма жодного супутника не використовується, і жодне C/N0 LEO не порівнюється з вимірюванням.
- Газовий член є застарілим спрощеним методом P.676-10; нижче 1 ГГц це значення на 1 ГГц, масштабоване як f², а дощ там вважається нульовим.
- Частка TEC під супутником LEO береться з єдиного шару Чепмена (без плазмосфери) і може бути перевизначена заявленою часткою.
- Проєктні орбіти проходу та орбіти Волкера є двотільними з необов'язковою світською поправкою J2 (друга зональна гармоніка Землі); шлях TLE використовує SGP4. Власне прискорення користувача не враховується в замкненому виразі швидкості зміни Доплера (числова перевірка показує, чого це коштує для рухомого користувача).
- RINEX (Receiver Independent Exchange Format) 4,02 не має навігаційних записів LEO; будь-який експорт LEO у стилі RINEX належить до коду навігаційного повідомлення й є задокументованим розширенням Kshana (попередня робота: arXiv 2401,17767).