Le logiciel de vol des N-DPU est le logiciel embarquĂ© qui pilote les 24 camĂ©ras normales de la charge utile du satellite PLATO. Il met en Ĺ“uvre des algorithmes de photomĂ©trie qui permettent de rĂ©duire le flot de donnĂ©es produit par les camĂ©ras en calculant, directement Ă bord, le flux des Ă©toiles ou en transmettant des fenĂŞtres de 6x6 pixels centrĂ©es autour des Ă©toiles. Ce sont ces donnĂ©es qui seront utilisĂ©es par le segment sol pour construire les courbes de lumière des Ă©toiles et dĂ©tecter des exoplanètes. Ce logiciel a Ă©tĂ© conçu et rĂ©alisĂ© par l’Ă©quipe "Logiciels de Vol" du LESIA.
PLATO ("PLAnetary Transits and Oscillations of stars") est une mission de classe M de l’Agence spatiale europĂ©enne dont le lancement est prĂ©vu fin 2026. L’objectif scientifique de la mission est de dĂ©tecter, grâce Ă la mĂ©thode des transits planĂ©taires, des planètes rocheuses dans la zone habitable et – simultanĂ©ment – de dĂ©terminer, grâce Ă la sismologie, les caractĂ©ristiques des Ă©toiles hĂ´tes des planètes.
Le concept instrumental de PLATO est basé sur une approche multi-caméras, comprenant un ensemble de 24 caméras observant à la cadence d’une image toutes les 25 secondes plus un ensemble de deux caméras observant un champ plus petit, à la cadence de 2.5 secondes, dédiées à la mesure des étoiles les plus brillantes.
Le système de traitement des donnĂ©es de PLATO, appelĂ© DPS (Data Processing System), est le système de la charge utile de PLATO responsable du traitement des donnĂ©es Ă bord (acquisition des donnĂ©es, rĂ©duction des donnĂ©es via des algorithmes de photomĂ©trie, compression des donnĂ©es, surveillance, etc.). Le DPS est constituĂ© d’un ensemble de plusieurs cartes Ă©lectroniques Ă©quipĂ©es de processeurs et interconnectĂ©es via un rĂ©seau SpaceWire. L’architecture du DPS est composĂ©e de :
Une carte Ă©lectronique N-DPU contient les composants suivants :
Le MEU est un boîtier intégrant en son sein :
Le boĂ®tier MEU, avec ses diffĂ©rentes cartes Ă©lectroniques, est fourni par l’Espagne (IAA-CSIC / IAC / Thales Alenia Space).
Le logiciel de vol des N-DPU est le logiciel embarqué déployé dans chacune des 12 cartes N-DPU. Le logiciel de vol N-DPU a été spécifié, conçu, mis en œuvre, validé et qualifié par le LESIA.
Chaque logiciel de vol des N-DPU gère deux caméras, chaque caméra comportant quatre détecteurs de 21 millions de pixels. Le logiciel de vol N-DPU pilote les électroniques de proximité des caméras (N-FEE), gère leurs modes de fonctionnement, acquiert les pixels numérisés ainsi que les données techniques utiles pour la surveillance (tensions, températures, états, etc.).
En mode observation, chaque logiciel de vol des N-DPU reçoit, en provenance des deux camĂ©ras, un flux de segments de fenĂŞtres contenant l’image des Ă©toiles observĂ©es. Les segments de fenĂŞtre sont transfĂ©rĂ©s toutes les 6,25 secondes via une liaison SpaceWire. Les segments sont assemblĂ©s entre eux afin de reformer des fenĂŞtres Ă l’aide d’une table de recherche (LUT). Ces fenĂŞtres contenant les taches images des Ă©toiles sont ensuite traitĂ©es par le logiciel de vol.
Dans son mode "observation", le rĂ´le du logiciel de vol des N-DPU est de gĂ©nĂ©rer des fenĂŞtres carrĂ©es de 6x6 pixels (c’est-Ă -dire des fenĂŞtres contenant une tache image de l’Ă©toile appelĂ©e "imagette" non transformĂ©e Ă bord) pour 21% des Ă©toiles traitĂ©es (sur 132 350 Ă©toiles par camĂ©ra) et de calculer des produits photomĂ©triques en utilisant des algorithmes Ă base de masques binaires (photomĂ©trie d’ouverture) pour 79% d’entre elles. Les produits photomĂ©triques correspondent au flux des Ă©toiles et Ă leur centre de luminositĂ©. Le logiciel de vol des N-DPU calcule Ă©galement, afin de corriger les flux, le dĂ©calage des Ă©lectroniques de lecture, le fond de ciel et le smearing (propagation de la charge d’un pixel saturĂ© vers les pixels adjacents).
Le logiciel de vol des N-DPU calcule les flux lumineux et les centres de luminositĂ© toutes les 25 secondes. Ces produits photomĂ©triques sont ensuite moyennĂ©s sur 50 et 600 secondes (Ă©chantillons de 2 et 24 mesures respectivement). Avant de moyenner temporellement les flux, le logiciel de vol des N-DPU effectue une dĂ©tection des valeurs aberrantes. Les donnĂ©es moyennĂ©es sont ensuite envoyĂ©es Ă l’ICU sous forme de paquets tĂ©lĂ©mĂ©triques. Les autres 21% d’Ă©toiles (27 500) de chaque N-camĂ©ra sont directement transmis Ă l’ICU sous forme d’imagettes de 6 par 6 pixels. Le logiciel de vol des N-DPU est aussi capable de transmettre des fenĂŞtres dont la forme est très Ă©tirĂ©e verticalement et qui sont utilisĂ©es pour les Ă©toiles dites "saturĂ©es" (Ă©toiles extrĂŞmement brillantes).
La définition "théorique" de tous les algorithmes scientifiques mis en œuvre dans le logiciel de vol des N-DPU a été faite par le groupe DPA-WG de PLATO piloté par le LESIA.
Le logiciel de vol des N-DPU, outre le mode "Observation", dispose d’un mode permettant de calculer automatiquement le positionnement des fenĂŞtres Ă©toiles sur les CCD Ă partir de l’attitude des tĂ©lescopes et du catalogue des Ă©toiles donnant leurs positions dans le système de rĂ©fĂ©rence cĂ©leste barycentrique (BCRS).
En plus des services scientifiques, le logiciel de vol des N-DPU offre des services dĂ©diĂ©s aux activitĂ©s d’Ă©talonnage : service d’acquisition d’images complètes et service d’acquisition de fenĂŞtres.
Enfin, le logiciel de vol des N-DPU met en Ĺ“uvre des services techniques comme le "scrubbing" (parcours en boucle de la mĂ©moire afin de dĂ©tecter les erreurs mĂ©moire et de les corriger) ou encore les services du standard PUS de l’ESA :
Le logiciel de vol des N-DPU est construit selon une architecture multi-cœurs de type AMP (Asymmetric Multi-Processing) en utilisant la plateforme GERICOS fonctionnant au-dessus du noyau temps réel RTEMS 4.8 (version Edisoft). La plateforme GERICOS (GEneRIC Onboard Software) est une plateforme générique du LESIA pour le développement de logiciels embarqués pour les instruments scientifiques spatiaux.
Avec la plateforme GERICOS, une application temps rĂ©el est construite comme un ensemble d’objets actifs (appelĂ©s "tâches"), chaque objet actif ayant sa propre queue de messages et son propre fil d’exĂ©cution. Chaque tâche traite les messages entrants un par un, en exĂ©cutant la fonction associĂ©e au message.
Le support des architectures multi-cĹ“urs AMP dans la plateforme GERICOS repose sur les caractĂ©ristiques intrinsèques du paradigme "objets actifs" de la couche GERICOS::CORE. Avec ce paradigme, deux objets communiquent via des messages sĂ©rialisĂ©s. Chaque objet est divisĂ© en un objet d’implĂ©mentation (qui met en Ĺ“uvre les services offerts par l’objet) et en un objet "stub" qui est responsable des aspects de sĂ©rialisation et dĂ©sĂ©rialisation des messages. Le processus de sĂ©rialisation et dĂ©sĂ©rialisation mis en Ĺ“uvre dans le "stub" a Ă©tĂ© Ă©tendu de manière Ă ce que les objets puissent communiquer d’un cĹ“ur de CPU Ă un autre en utilisant des mĂ©canismes de communication simples basĂ©s sur la mĂ©moire partagĂ©e pour transmettre les messages et des spin locks basĂ©s sur l’opĂ©ration atomique de comparaison et d’Ă©change du processeur LEON3 (instruction CASA) pour sĂ©curiser l’accès concurrent Ă la mĂ©moire entre les diffĂ©rent cĹ“urs.
L’architecture AMP Ă deux cĹ“urs du logiciel de vol des N-DPU ASW implique que deux applications coexistent.
La première application, qui joue le rĂ´le de maĂ®tre, est dĂ©ployĂ©e sur le cĹ“ur #0 du processeur LEON3-FT et est chargĂ©e de gĂ©rer les interfaces avec l’ICU (paquets de tĂ©lĂ©commandes et de tĂ©lĂ©mĂ©tries), de traiter les donnĂ©es de la camĂ©ra #A, de gĂ©rer les modes et les services techniques. Cette première application est composĂ©e de 20 tâches temps rĂ©el.
La seconde application est déployée sur le cœur #1 du processeur LEON3-FT et est en charge du traitement des données de la caméra #B et du nettoyage de la mémoire. Cette deuxième application est composée de 8 tâches temps réel.
En termes de sĂ©quencement temps-rĂ©el, la pĂ©riode fondamentale Ă considĂ©rer est de 6,25 secondes : le logiciel reçoit toutes les 6,25 secondes une nouvelle sĂ©rie de fenĂŞtres de 6x6 pixels Ă traiter. La transmission de ces fenĂŞtres est rĂ©partie sur les 4,1 secondes correspondant Ă la lecture du dĂ©tecteur (1). Jusqu’Ă 25 paquets de 32 kilo-octets sont transmis par seconde par la camĂ©ra pendant la pĂ©riode de lecture. Ă€ la fin de la rĂ©ception des paquets, le logiciel doit extraire les segments de fenĂŞtre des paquets et reconstruire les fenĂŞtres en moins de 2,15 secondes, c’est-Ă -dire avant la fin du cycle de 6,25 secondes (2). Une fois la phase de reconstruction terminĂ©e, le logiciel peut commencer les traitements photomĂ©triques. Ces traitements photomĂ©triques sont effectuĂ©s pendant la transmission des fenĂŞtres du dĂ©tecteur suivant et doivent impĂ©rativement ĂŞtre terminĂ©s 4,1 secondes après le dĂ©but du cycle suivant (3).
En mode observation, les deux applications communiquent par l’intermĂ©diaire de files d’attente de type FIFO contenant les paquets de tĂ©lĂ©mĂ©trie. La seconde application crĂ©e les paquets de tĂ©lĂ©mĂ©trie correspondant aux donnĂ©es de la camĂ©ra B et les stocke dans une file d’attente partagĂ©e. La première application rĂ©cupère ces paquets dans la file d’attente partagĂ©e et les transmet Ă l’ICU. Il peut Ă©galement y avoir des Ă©changes de messages entre les cĹ“urs lorsque, par exemple, un Ă©vĂ©nement est dĂ©tectĂ© par la deuxième application et qu’un rapport doit ĂŞtre transmis par la première application.
La plateforme de tests du logiciel de vol des N-DPU est un ensemble de composants matériels et logiciels utilisés pendant les activités de développement et de validation.
La partie logicielle de cette plateforme est basée sur GAUSS (Generic Api for ground Support Software), un projet développé au LESIA, qui offre des fonctionnalités génériques et flexibles :
En plus de ces composants logiciels, la plateforme de tests du logiciel de vol des N-DPU contient également plusieurs composants matériels :
© ESA (acknowledgement : work performed by ATG under contract to ESA), CC BY-SA 3.0 IGO
Date | Evénement |
---|---|
Juillet 2014 | SĂ©lection de PLATO par l’ESA |
Janvier 2016 | Démarrage des activités de développement du logiciel de vol des N-DPU |
Juin 2017 | "Adoption" de PLATO par l’ESA |
Septembre à décembre 2018 | Software SRR (System Requirement Review) |
Septembre à décembre 2019 | Software PDR (Preliminary Design Review) |
Juillet 2020 | Livraison au consortium PLATO de la version 0.4 du logiciel de vol (mode de calibration plein-cadre) |
Juillet 2021 | Livraison au consortium PLATO de la version 0.8 du logiciel de vol (mode de calibration fenêtré) |
Septembre 2022 | Livraison au consortium PLATO de la version 0.9 du logiciel de vol (services scientifiques partiellement implémentés) |
Octobre à décembre 2022 | Software CDR (Critical Design Review) |
Septembre 2023 | Livraison au consortium PLATO de la version 1.0 du logiciel de vol (100% des fonctionnalités sont implémentées) |
Nom | RĂ´le |
---|---|
Aliocha Amerge | DĂ©veloppement du logiciel de vol (stagiaire) |
Gaele Barbary | Tests fonctionnels du MEU |
Kimberley Berisha | DĂ©veloppement du logiciel de vol (stagiaire) |
Alexandre Crignola | DĂ©veloppement de la plate-forme de tests (ASTEK) |
Florent Ducellier | Spécification et validation du logiciel de vol (ASTEK) |
Gary Gabriel | DĂ©veloppement du framework GERICOS |
Nicolas Gauthier | DĂ©veloppement du logiciel de vol |
Loic Gueguen | Gestion de projet : plate-forme de tests |
Pierre-Vincent Gouel | DĂ©veloppement du logiciel de vol |
Baptiste Gouesbet | DĂ©veloppement du logiciel de vol (ASTEK) |
Lee-Roy Malac-Allain | DĂ©veloppement du logiciel de vol |
Aymeric Menager | DĂ©veloppement du logiciel de vol (ASTEK) |
Thibault Lamborot | DĂ©veloppement de la plate-forme de tests |
Gaelle Palandri | DĂ©veloppement de la plate-forme de tests |
Philippe Plasson | Gestion de projet : logiciel de vol |
Hugo Pompougnac | DĂ©veloppement du logiciel de vol (stagiaire) |
William Recart | Gestion assurance produit (Hensoldt Space Consulting) |
Contact : Philippe Plasson