Le GNSS au-delà de la constellation : le type gnss-ssv
À titre consultatif seulement. Résultats modélisés à partir d'entrées indiquées et d'une vérité simulée ; ni une certification, ni un chiffre qualifié pour le vol, ni une affirmation de volume de service pour un système quelconque. Kshana n'émet rien.
Le type gnss-ssv répond à ceci : pour un engin spatial au-dessus, autour ou bien au-delà des orbites GNSS, combien de signaux GNSS peut-il utiliser, quelle est leur force, quelle est la qualité de la géométrie, et que peut en faire un filtre embarqué ? Il a trois modes, choisis selon la table que contient le scénario : [shell], [trajectory] ou [navigation] (avec un [formation] facultatif).
État : MODELLED. Les balayages de disponibilité sont comparés au livret Space Service Volume de l'ICG dans le cadre d'un préenregistrement ; voir ce que montre la comparaison avant de s'appuyer sur un nombre quelconque.
Sources publiques#
- The Interoperable Global Navigation Satellite Systems Space Service Volume, Bureau des affaires spatiales des Nations Unies, ST/SPACE/75 (1er novembre 2018), préparé par le Comité international sur les GNSS (ICG), groupe de travail B : la méthode (annexe B), les éléments orbitaux de chaque constellation (annexe C), les ouvertures de faisceau et puissances d'émission (tableaux B2, B6, B8, 4,2), les antennes utilisateur (tableau B10), et les tableaux de disponibilité publiés. Il s'agit lui-même d'une simulation. Récupéré par
xval/gnss-ssv/fetch.sh(SHA-256 épinglé), jamais embarqué dans le dépôt. - U.S. Coast Guard Navigation Center, diagrammes des panneaux d'antenne des GPS Block IIR et IIR-M (Marquis, 2014) : les diagrammes mesurés des panneaux L1, utilisés uniquement pour juger la solution de remplacement paramétrique (seuil S7). Récupérés, jamais embarqués dans le dépôt, aucune donnée de diagramme versionnée.
- Les constantes du modèle (gravité, rotation de la Terre, affaiblissement en espace libre, densité de bruit) sont standard ; la loi de densité de la plasmasphère de Gallagher, la couche de Chapman et le profil de réfractivité radio sont des formes publiées, utilisées avec des paramètres simples indiqués (voir
src/ssv/limb.rs).
Mode coque : la métrique globale du livret#
[shell] place un utilisateur sur une sphère (par défaut 36 000 km d'altitude avec une antenne hémisphérique pointée au nadir, le SSV supérieur ; ou 8 000 km avec une antenne omnidirectionnelle, le SSV inférieur) sur une grille d'icosphère de 2,562 points et compte, sur 14 jours par pas de 1 minute, la part des couples (utilisateur, époque) avec au moins un et au moins quatre signaux, par constellation et en combiné, ainsi que la plus longue interruption pour l'utilisateur le plus défavorisé. Le balayage utilise l'intervalle de visibilité en forme fermée en angle au centre (un cône de faisceau, le blocage par la Terre représenté par la sphère de 6378 km plus 50 km, l'hémisphère de l'utilisateur et la limite de portée RF) et s'exécute en quelques secondes dans un build de release ; un test de propriété le vérifie par rapport au prédicat géométrique général.
Mode trajectoire : le long d'une orbite#
[trajectory] fait voler l'utilisateur sur une orbite képlérienne (un préréglage : leo, meo, geo, heo (le tableau 5,10 du livret) ou lunar-transfer, ou des éléments) et rapporte, par bande et par constellation, la disponibilité d'un et de quatre signaux, les durées d'interruption, les signaux en vue, le meilleur C/N0, la dilution de précision (médiane, 95e centile, pire cas), les liaisons reçues par le lobe principal et par les lobes secondaires, ainsi qu'une série temporelle et un CSV facultatifs.
- Diagramme d'émission (
[transmit] pattern) :booklet(puissance constante à l'intérieur de l'angle hors axe de référence),parametric(une solution de remplacement étiquetée : 3 dB par degré au-delà de l'angle de référence jusqu'à un plancher 25 dB sous le lobe principal ; pas le diagramme mesuré d'un système quelconque) outable(un diagramme mesuré que vous fournissez :pattern_csvoupattern_texten ligne ; les diagrammes des panneaux Block IIR/IIR-M peuvent être extraits avecxval/gnss-ssv/extract_patterns.py). - Antennes de réception : omnidirectionnelle, hémisphérique, ou les antennes à gain élevé et les antennes patch du tableau B10 du livret, au nadir ou au zénith ; chaque liaison utilise l'antenne au gain le plus élevé.
- Milieu de rayon rasant (
[atmosphere]) : une ionosphère de Chapman, une plasmasphère (forme de Gallagher 1988, plasmapause à L = 4,5, atténuée sous 1 500 km) et une atmosphère neutre (courbure d'environ 1,33 degrés à la surface, absorption par l'oxygène, défocalisation) intégrés le long du rayon rectiligne. Rapporte le TEC oblique, la part plasmasphérique, le retard excédentaire, l'altitude de la tangente et les liaisons perdues par rasance. Intégration en rayon rectiligne : la courbure est rapportée, non itérée. - Récepteur de signal faible (
[receiver] weak_signal) : intégration cohérente et non cohérente, limite de bit de données, canaux d'aide et pilote, recherche Doppler ; le seuil d'acquisition aux probabilités de détection et de fausse alarme indiquées et les seuils de poursuite de porteuse et de code remplacent le seuil fixe de C/N0 (plage de 10 à 25 dB-Hz). Réutilise les modèles d'acquisition et de boucle de poursuite du moteur.
Mode navigation : un filtre embarqué#
[navigation] fait voler un engin en orbite haute ou en transfert lunaire et exécute un filtre de Kalman étendu à neuf états (position, vitesse, biais et dérive d'horloge du récepteur, un facteur d'échelle de pression de radiation solaire) sur des pseudo-distances. La vérité est intégrée avec la gravité de masse ponctuelle, J2, les perturbations de troisième corps du Soleil et de la Lune et la pression de radiation avec une ombre terrestre cylindrique ; le filtre modélise la gravité, J2 et les troisièmes corps et estime la pression de radiation. Les pseudo-distances proviennent de la même géométrie de liaison et du même seuil de C/N0 que les balayages ; leur bruit croît à mesure que le C/N0 baisse ; le retard excédentaire du milieu (avec [atmosphere]) est ajouté et n'est pas modélisé par le filtre. Le rapport sépare la partie de l'exécution à l'intérieur des orbites GNSS (sous 20 000 km d'altitude) de la partie au-dessus, donne la plus longue interruption sans mesure et l'erreur d'estimation normalisée au carré moyenne (environ 3 pour un bloc de position cohérent). Le Soleil et la Lune sont des substituts circulaires de faible précision.
Mode formation : navigation relative#
[formation] (a besoin de [navigation] pour le chef de file) ajoute des adjoints décalés en anomalie vraie. Chaque engin exécute le filtre absolu ; la position de l'adjoint par rapport au chef de file est estimée en soustrayant les estimations absolues indépendantes et par un filtre relatif sur des pseudo-distances à simple différence des signaux que les deux engins poursuivent. Le rapport donne les deux, la référence de base, et le nombre de signaux poursuivis en commun.
Ce que montre la comparaison avec le livret#
Les seuils ont été préenregistrés (xval/gnss-ssv/PREREGISTRATION.md, addenda 1 à 5) avant l'exécution en pleine taille ; résultats dans xval/gnss-ssv/RESULTS.md, cellules dans results-*.json, épinglés par tests/ssv_booklet_results.rs, échecs compris.
| seuil | quoi | exécution 1 (lecture préenregistrée) | variante d'angle GLONASS (diagnostic) |
|---|---|---|---|
| S0 | puissance rayonnée minimale, 13 signaux, à 0,1 dB près | MET | MET |
| S1 | géométrie du SSV supérieur (tableau B4) | NOT MET (43 cellules sur 52) | les 52 cellules dans la tolérance |
| S2 | SSV inférieur (tableau 5,2) | NOT MET (48 sur 52) | les 52 |
| S3 | SSV supérieur avec 15/20/25 dB-Hz (table B9) | NOT MET (122 sur 155) | 153 sur 155 |
| S4 | six missions GEO | NOT MET (132 sur 156) | les 156 |
| S5 | mission HEO | NOT MET (18 sur 26) | 21 sur 26 |
| S6 | mission lunaire | MET | NOT MET (23 sur 26) |
| S7 | diagramme paramétrique comparé aux diagrammes mesurés de panneaux GPS L1 | NOT MET (RMS 6,3 à 8,8 dB contre 3 dB) | n/a |
Le livret est incohérent en lui-même au sujet de l'angle hors axe de référence de GLONASS : les tables B2 et B6 indiquent 20 et 28 degrés, la table 4,2 indique 26 et 34. L'exécution 1 a utilisé le premier couple (celui que nommait le préenregistrement) ; presque tous les échecs de S1 à S5 concernent GLONASS. La variante, décidée à titre de diagnostic avant son exécution, utilise le second couple ; les missions SSV supérieur, SSV inférieur et GEO concordent alors cellule par cellule, coupures comprises. La variante ne remplace pas l'exécution 1. Aucune ligne n'est VALIDATED : le livret est une simulation, la règle du verdict exige S0 à S3 selon la lecture préenregistrée, et les échecs restants (GPS L1 à 20 dB-Hz, Galileo en HEO, QZSS et NavIC, les lignes GLONASS lunaires) ne sont pas expliqués.
L'exécuter#
kshana scenarios/gnss-ssv-shell.toml # the upper SSV, reduced size
kshana scenarios/gnss-ssv-heo.toml # a HEO, parametric sidelobes, limb medium
kshana scenarios/gnss-ssv-lunar-weak.toml # lunar transfer, weak-signal receiver design
kshana scenarios/gnss-ssv-nav-lunar.toml # onboard EKF on the way to the Moon
kshana scenarios/gnss-ssv-formation-heo.toml # formation relative navigation
cargo run --release --example ssv_booklet_check # the full pre-registered comparison (about 12 minutes)
Chaque scénario fourni est réduit pour s'exécuter en quelques secondes ; la comparaison à taille réelle est l'exemple ci-dessus. Le même type de scénario s'exécute depuis Python (kshana.run), le navigateur (WebAssembly), le serveur MCP (run_scenario, texte en ligne uniquement : pattern_csv est une source de fichier et est refusée, utilisez pattern_text) et les extensions.
Limites#
- MODELLED : rien ici n'a été comparé à une réception GNSS mesurée en orbite. Le livret est une simulation.
- Des orbites képlériennes à deux corps pour les constellations GNSS et pour l'utilisateur dans les balayages ; le transfert lunaire est une ellipse à deux corps, et non une trajectoire propagée.
- Le milieu est un modèle simple déclaré, avec intégration le long de rayons rectilignes ; ce n'est pas une prévision de météorologie spatiale.
- Le filtre de navigation est une étude de conception : pas de manœuvres, pas d'attitude, pas de trajets multiples, et la vérité terrain partage ses éphémérides du Soleil et de la Lune avec le filtre.