Télécharger la présentation
Publié parOcéane Lelong Modifié depuis plus de 11 années
1
Intégrer des planificateurs dans le logiciel de vol d'un satellite autonome
Solange Lemai, Marie-Claire Charmeau CNES Xavier Olive Alcatel Alenia Space JFPDA – 12 mai 2006
2
Plan Autonomie pour les systèmes spatiaux Architecture décisionnelle
Besoins et bénéfices Architecture décisionnelle Architecture sur trois niveaux hiérarchiques Exemple de niveau décisionnel Intégration et coordination de plusieurs planificateurs spécialisés Exécutif décisionnel Un superviseur générique à base d'automates pour contrôler les planificateurs et l'exécution du plan Expérimentation Implémentation du niveau décisionnel sur un banc de test à Alcatel Alenia Space A suivre ... JFPDA - 12 mai 2006
3
Besoins/fonctionnalités
Autonomie pour les système spatiaux Besoins/fonctionnalités autonomie – maintien à poste contrôle d'orbite (calcul à bord des manoeuvres de correction d'orbite) guidage (calcul des consignes d'attitude, des profils pour sat. agile) orbitographie (calcul des données orbitales, ...) autonomie – FDIR diagnostic de panne reconfiguration automatique reprise de mission autonome autonomie – commande/contrôle programmation sur événement (déclenchement de commandes basé sur la surveillance d’événements: date, événement orbital, alarme FDIR, etc.) planification (élaboration des plans d’activités des charges utiles et/ou de la plate-forme à partir d’objectifs fournis par le sol) reprogrammation dynamique (adaptation du plan d’activités en fonction du contexte détecté à bord: nouveaux objectifs, variation des ressources) architecture permettant de mettre en place différents concepts d'autonomie – possibilité de combiner fonctionnalités ctrl orbite : calcul et choix à bord des manoeuvres de correction d'orbite (Demeter) guidage : détermination à bord des consignes pourle contrôle d'attitude, voire des profils (Proba) "s'appuie sur des fonctions" orbitographie : calcul à bord des données orbitales JFPDA - 12 mai 2006
4
Missions observation/surveillance de la Terre
Autonomie pour les système spatiaux Bénéfices Missions observation/surveillance de la Terre Missions lointaines Bénéfices de l’autonomie Alléger la charge des équipes au sol Améliorer la réactivité de la mission Assurer la continuité du service Optimiser le retour scientifique Phases critiques Fonctionnalités Programmation sur événements Orbitographie Analyse des données Planification Reprogrammation dynamique FDIR évoluée FDIR évoluée JFPDA - 12 mai 2006
5
Exemples d'expérimentation en vol
Autonomie pour les système spatiaux Exemples d'expérimentation en vol Expérimentation Fonctionnalités PROBA (ESA) Orbitographie (guidage) Planification DEMETER (CNES) Orbitographie (ctrl orbite aut.) Clementine (NASA) Orbitographie Programmation sur événements Deep Space One - Remote Agent (NASA) Orbitographie (navigation) Programmation sur événements Planification Reprogrammation dynamique FDIR évoluée Earth Orbiting 1, Three Corner Sat (NASA) Orbitographie (ctrl orbite aut.) Analyse des données Programmation sur événements Planification Reprogrammation dynamique FDIR évoluée DS1 : 1999 PROBA : 2001 DEMETER : 2004 Clementine : 1995 EO1 : 2003? JFPDA - 12 mai 2006
6
Niveaux hiérarchiques
Architecture décisionnelle Niveaux hiérarchiques Niveau équipements Niveau fonctionnel Propagateur orbite Guidage Calcul manoeuvres Analyse données COM FDIR THERM NRJ SCAO NAV CU Niveau décisionnel Gestion plan Gestion requêtes Planificateurs Estimation durées & rsces Exécutif décisionnel Suivi de l'état Niveau opérationnel opérationnel Interfaces bord/sol Niveaux hiérarchiques temps de réaction différents, représentations de données plus ou moins abstraites vision de l'état du système locale ou globale FDIR répartie détection et reconfiguration locale dans les sous-systèmes du niveau fonctionnel, diagnostic et reconfiguration globale au niveau opérationnel, prévention au niveau décisionnel Interactions bord/sol requêtes, plan, OBCP, TC Niveau décisionnel chargé de la planification de la mission Niveau opérationnel chargé de l'exécution du plan de travail (décomposition et routage des commandes venant des activités du plan ou du sol) interface avec le sol Niveau fonctionnel gère les traitements et boucles de contrôle des chaînes fonctionnelles niveaux interagissent par envoi de commandes au niveau inférieur et retour de bilans au niveau supérieur. prévention niv décisionnel : détecter en avance qu'un plan n'est plus consistant avec l'utilisation effective des ressources et peut conduire à un échec JFPDA - 12 mai 2006
7
Architecture décisionnelle
Niveau fonctionnel Communication réception TC, émissionTM, ctrl antennes Gestion du ctrl thermique Gestion de l'alimentation SCAO estimation d'attitude navigation propagation d'orbite guidage calcul des manoeuvres de correction d'orbite ctrl des actionneurs Charge utile gestion des instruments dédiés à la mission Niveau équipements Niveau fonctionnel Propagateur orbite Guidage Calcul manoeuvres Analyse données COM FDIR THERM NRJ SCAO NAV CU Niveau décisionnel Gestion plan Gestion requêtes Planificateurs Estimation durées & rsces Exécutif décisionnel Suivi de l'état Niveau opérationnel opérationnel Interfaces bord/sol navigation : estimation du modèle d'orbite courant et de la position sur l'orbite propagation d'orbite : prédiction d'événements orbitaux (ex survol de zones à observer) guidage : calcul des consignes d'attitudes (nota calcul de profils pour les satellite agiles) calcul manoeuvres : cas du ctrl d'orbite autonome JFPDA - 12 mai 2006
8
Architecture décisionnelle
Niveau opérationnel Exécutif opérationnel exécution du plan de travail gestion des modes du satellite appliquer les actions de reconfiguration FDIR opérationnel détection, localisation et planification d'actions de reconfiguration Gestion interfaces Bord/Sol distribution des "commandes" venant du sol configuration de la télémétrie Niveau équipements Niveau fonctionnel Propagateur orbite Guidage Calcul manoeuvres Analyse données COM FDIR THERM NRJ SCAO NAV CU Niveau décisionnel Gestion plan Gestion requêtes Planificateurs Estimation durées & rsces Exécutif décisionnel Suivi de l'état Niveau opérationnel opérationnel Interfaces bord/sol télémétrie : informations sur l'état du satellite renvoyée au sol. si on augmente le niveau d'autonomie : contacts moins fréquents, gérer l'historique, réduire le volume des données (plusieurs milliers de paramètres) JFPDA - 12 mai 2006
9
Architecture décisionnelle
Niveau décisionnel "Planificateurs" raisonner à plus ou moins long terme "généraliste" ou "spécialisé" plus ou moins réactif dédié à la modification de plan Gestion requêtes maintenir une liste de requêtes et leur statut "Planning experts" fournir en ligne des estimations sur les délais, durées d'activité et consommation de ressource Gestion du plan courant Suivi de l'état (prévention) Exécutif décisionnel Modes (inactif, avec/sans planif.) Niveau équipements Niveau fonctionnel Propagateur orbite Guidage Calcul manoeuvres Analyse données COM FDIR THERM NRJ SCAO NAV CU Niveau décisionnel Gestion plan Gestion requêtes Planificateurs Estimation durées & rsces Exécutif décisionnel Suivi de l'état Niveau opérationnel opérationnel Interfaces bord/sol -planificateurs : décider des activités futures, sur un certain horizon pour remplir des objectifs assignés par le sol. (processus de décision des activités à rélaiser) -prise de décision tient compte : des contraintes de ressources, des contraintes temporelles, contraintes de compatibilités entre activités planificateur court terme : règle de décision simple qui décide de la prochaine observation à réaliser sans prendre en compte des suivantes ou bien horizon de raisonnement plus étendu (optimiser les observations sur plusieurs orbites) généraliste : un planificateur qui tient compte de toutes les requêtes et gère les compatibilités entre tous les types d'activité spécialisé : plusieurs algos, chacun dédié à un type de requêtes (produit un portion du plan global) réactif : comportement anytime, pourvoir être interrompu et fournir une solution (de plus ou moins bonne qualité mais applicable) ou bien : ne fournir un plan applicable qu'à la fin du processus dont on ne peut souvent pas prédire la durée. modif de plan, ex : réparation - exécutif : gère l'exécution du plan d'activités et contrôle les planificateurs JFPDA - 12 mai 2006
10
Exemple de niveau décisionnel
Mission Thèse ONERA/CNES – Sylvain Damiani "Gestion d'une constellation de satellites de surveillance de la Terre: autonomie et coordination" - Orbitographie - Analyse des données - Planification - Reprogrammation dynamique → Réactivité mission de type Fuego : constellation en orbite basse pour la surveillance des feux de forêts et volcans équipé d'un instrument d'observation et d'un instrument de détection qui point en avant du satellite détection d'un nouveau point chaud : envoi d'une alarme au sol + req à bord pour réaliser une observation au plus tôt (1 min) Réactivité avec programmation à bord algos de planif bord développés par Sylvain... JFPDA - 12 mai 2006
11
Exemple de niveau décisionnel
Gestion plan Gestion requêtes d'observations Exécutif décisionnel Suivi de l'état Estimateur téléd. Planif télédéchargements Règle décision simple Planif. observations requête envoyée par le sol: une zone et une priorité, à décomposer selon les fenêtres de survol fournies par le propagateur d'orbite, gérer le status des requêtes planif observation : choisir la prochaine meilleure observation à faire, anytime : meilleure qualité de la décision si durée planif plus longue, à relancer à chaque fois que le contexte de planification change (nouvelle requête, requête abandonnée, modification des ressources...) planif téléd. : activé à l'imminence d'une fenêtre de télédéchargement estimation de la mémoire libérée et de l'énergie consommée lors de la prochaine fenêtre de visi : entrée pour le planificateur des observations décision simple : requête à échéance : la faire ou non (complément du planificateur d'observation) gestion du plan : maintenir un plan global courant (avec activités de télédéchargement, estimations de ressource, prochaine observation). séquencement du plan... surveillance de l'état : (prévention) cohérence entre état prévu et état "réel" exécutif : (ou superviseur ?) – interface avec le niveau opérationnel et coordination du niveau décisionnel JFPDA - 12 mai 2006
12
Coordination de planificateurs spécialisés
Exemple de niveau décisionnel Coordination de planificateurs spécialisés Planificateurs comportements et conditions d'activation variés interruptible/non interruptible, durée limitée, activation sur événement ... coordination utilisation des résultats d'un autre planificateur, choix entre plusieurs planificateurs selon le contexte planificateur = activité à contrôler au même titre que les activités du plan contrôle = décider du lancement ou de l'arrêt d'une activité Exécutif décisionnel Rôle : contrôler l'exécution des activités du plan et contrôler les planificateurs But : superviseur indépendant de l'application qui contrôle des activités à comportement varié JFPDA - 12 mai 2006
13
Schéma de contrôle générique
Exécutif décisionnel Schéma de contrôle générique Deux automates d'état pour gérer une activité en attente de lancement [déclencheur, préconditions, délai] une activité en cours d'exécution [conditions à maintenir pendant l'exécution] [durée maximale] [déclencheur de l'arrêt] [conditions pour lancer une procédure d'arrêt] [attente de bilan] ... Conditions "contingentes", "contrôlables" Ltm/ LtmA TrStart/startA, set(Ltm) Lca IdleStarting Starting Enable Starting Condition Lca/Alc (Lc&Lca& activity_is _in_state_IdleExecution)/ exec, reset(Ltm) Activité en attente peut être : on lance et on attend un bilan on lance, on attend une certaine durée, on arrête et on attend un bilan (si il y en a un) on lance, on reçoit un événement pour déclencher l'arrêt, on arrête ... explication schéma : toutes conditions satisfaites -> envoie du signal interne exec qui active la transition du deuxième automate (d'un état idle vers un état "exécution") JFPDA - 12 mai 2006
14
Exécutif décisionnel Implémentation Exécutif défini par :
un ensemble d'activités, (ex. observation, planificateur d'observations, etc.) des signaux en entrée et sortie une instanciation du schéma de contrôle pour chaque activité des "variables de contrôle" représentant le contexte d'exécution et leur évolution en fonction des signaux entrants et sortants CV Interface Events, commands TrStart, TrStop, fR, exec A(p) Concevoir un exécutif pour une nouvelle application revient à définir instanciation du schéma pour chaque activité -> l'exécutif ne gère qu'une instance en attente et une instance en cours (version actuelle) JFPDA - 12 mai 2006
15
Instanciation pour l'application étudiée
Exécutif décisionnel Instanciation pour l'application étudiée 7 activités 2 pour les activités du plan (observation et télédéchargement) 4 pour les planificateurs 1 pour gérer le mode du niveau décisionnel 10 signaux entrants (alarme du suivi de l'état, alarme du niveau opérationnel, bilans sur l'exécution des activités du plan, événement signalant l'insertion d'activités dans le plan, etc.) 22 signaux sortants (commandes d'activation et d'arrêt ...) 6 variables de contrôle visibilité avec une station sol plan de télédéchargement disponible pour la prochaine fenêtre de visibilité etc. JFPDA - 12 mai 2006
16
Schéma pour le planificateur d'observations
Exécutif décisionnel Schéma pour le planificateur d'observations TrStart RequestEvent(NEW) or RequestEvent(ABANDONED) or ReportEvent(OBSERVATION,*) or AlarmEvent Ec True TrStop / startA Eca Sc Lc is_in_state_IdleExecution(OBSERVATION) and plugged Aec Sca Lca (updatedRoughPlan or detailedDownloadPlan) and is_in_state_IdleExecution(OBS_PLANNER) Etm ∞ Asc Alc if (¬is_in_state_IdleExecution(OBS_PLANNER)){ TrStop(OBS_PLANNER);} if (¬updatedRoughPlan and ¬detailedDownloadPlan){ TrStart(ROUGH_DOWNLOAD_PLANNER);} Ectm Stm Ltm Durée maximale de planification de RoughDownloadPlanner Scmd Planning_StopObservationPlanner Lcmd Planning_StartObservationPlanner StmA If (¬obsPlanEmpty){ PlanDatabase_EraseActivityTimeline(OBSERVATION)} LtmA fR Exec exA cf etm : infini (anytime, laisser le plus de temps possible) JFPDA - 12 mai 2006
17
Architecture Plug&Play Alcatel Alenia Space
Expérimentation Architecture Plug&Play Alcatel Alenia Space Niveau fonctionnel Niveau opérationnel Niveau décisionnel Composants décisionnels SCAO Gestion batterie Gestion OBCP ... Bus logiciel Services (TM, TC, temps, ...) OS et Hardware Dependent Software Hardware Archi conçue pour améliorer la réutilisation des composants logiciels et la modification dynamique à bord. une partie gelée comprend l'OS, les drivers et les services Une partie "plug and play" comprend les composants applicatifs communication via bus ou accès direct aux services ajout de "composants décisionnels" activités "abstraites", décomposées en séquences de commande pour les sous-systèmes via des OBCP... JFPDA - 12 mai 2006
18
Expérimentation Maquette Plan Database OBCP Executive Planning
- gestion des requêtes - planificateurs d'observations (anytime et règle de décision simple) - planificateurs de télédéchargement - gestion du plan courant - suivi de l'état - automate - contrôle les planificateurs - interface avec le niveau opérationnel Niveau décisionnel OBCP "exécutif opérationnel" Planning Plan Database Executive Niveau fonctionnel Data Analysis Orbit Propagator SatSimu Plus précisément : 3 composants décisionnels + composants de simulation pour tester la boucle de reprogrammation dynamique SPARC, 32Mo RAM OS maison : Ostrales simule la détection de feux simule l'exécution des activités et l'évolution de l'état du satellite simule le calcul des évnts orbitaux (survols des zones à observer, fenêtres de visibilité, fenêtres d'éclairement) JFPDA - 12 mai 2006
19
A suivre... Test des performances
OBCP Plan Database Executive Data Analysis SatSimu Niveau décisionnel Niveau fonctionnel Orbit Propagator Planning Espace mémoire limité, allocation statique exploration de l'espace d'états, discrétisation du temps et des niveaux de ressources → compromis qualité de la décision / mémoire ex. pour le planificateur d'observations NbNiveauxEnergie * NbNiveauxMémoire * NbRequêtes (structure de données de 20 Mo) en bleu-violet : ce qui a été implémenté et testé sur le banc JFPDA - 12 mai 2006
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.