« Previous -
Version 67/198
(diff) -
Next » -
Current version
Etienne Pallier, 06/26/2015 03:07 pm
Wiki¶
ChemCam Ground Data Log Book
This is a Java GUI tool to help building an information context to be associated to an observation (a series of ChemCam shots, FOCUS, LIBS, RMI) done in a laboratory
INFORMATIONS TECHNIQUES¶
Ce logiciel est installé sur le Pc Chemcam, en salle blanche : http://planetowiki.irap.omp.eu/do/view/Computers/PcChemcam2Tour
OLD web page for this project : http://planetowiki.irap.omp.eu/do/view/Cgdl/WebHome
SVN repository : http://planetoweb2.irap.omp.eu/cgdl_svn/trunk
Collaboration avec l'outil C-SPEC-HK¶
Suite aux réunions du 29/4/15 et du 22/5/15 avec OG, WR, AC, PM, et EP,
le nouveau besoin exprimé passe par une collaboration de cet outil avec l'autre outil C-SPEC-HK.
Début juin, nous avons eu une réunion avec le prestataire Richard Hitier qui nous a proposé un devis sur 6 jours,
pour la réalisation d'une nouvelle version impliquant la refonte de l'IHM en un seul formulaire contenant tous les champs.
JALONS DU DEVELOPPEMENT DES NOUVELLES FONCTIONNALITES PAR LE PRESTATAIRE¶
Le développement doit se faire en Java 8
Calendrier prévisionnel (non contractuel) :
1) Mercredi 24/6/15 : Livraison de la version existante adaptée pour qu'elle crée un fichier XML unique par contexte
2) Mercredi 1/7/15 : Version avec Formulaire unique (au lieu du formulaire multi-onglets actuel)
A prévoir : Réunion de validation avec l'équipe Chemcam
3) Mercredi 8/7/15 : Livraison de la version finale
NOUVEAU WORKFLOW¶
Voici une maquette du nouveau formulaire proposée par AC et OG :
(Note : on change de contexte quand on change la roche, la distance, ou l’atmosphère…)
Le logiciel doit démarrer automatiquement au boot du pc.
Le premier écran START doit proposer les 4 choix suivants :
1) Create a brand new context
2) Create a new context from another one
3) Modify a context
4) Delete a context
ATTENTION : Dans les 3 premiers cas (options 1 à 3), une fois que le contexte est sauvegardé (clic sur touche SAVE), il est FERMÉ
car on ne doit plus pouvoir le modifier, sauf en l'ouvrant à nouveau en modification (option 3)
Dans tous les cas (sauf le 1), une liste de TOUS les contextes existants est affichée (tous les contextes créés, même ceux du passé), parmi lesquels on doit en sélectionner un.
Différences entre les options 1 à 3 :
- (1) Création d'un tout nouveau contexte :
- date = date du jour (modifiable pour pouvoir créer un contexte dans le passé)
- start time = maintenant (modifiable)
- stop time = 23:59 (modifiable)
- (2) et (3) Modification d'un contexte existant ou Création d'un nouveau contexte à partir d'un contexte existant :
- date = date du contexte existant (modifiable)
- start time = heure du contexte existant (modifiable)
- stop time = heure du contexte existant (modifiable)
Ces 2 options (2 et 3) sont équivalentes.
La seule différence est la suivante :- En mode Modification (3), quand on sauvegarde le contexte modifié, on doit supprimer (ou écraser, si le nom est le même) le contexte existant (mais on demande confirmation ;
si l'utilisateur répond "Non", c'est un usage détourné, et cela revient à faire une création, ce qui correspond à l'option 2) - En mode Création (2), quand on sauvegarde, si le nom n'a pas changé, on ne doit PAS écraser le contexte existant (mais on offre la possibilité de le faire en demandant confirmation à l'utilisateur ;
si l'utilisateur répond "Oui", c'est un usage détourné, et cela revient à faire une modification, ce qui correspond à l'option 1) - (Ca n'est pas indispensable, mais ça serait bien apprécié) : En mode Modification (3), on ne devrait pas autoriser l'utilisateur à modifier la date du contexte (mais par contre, il peut modifier les start et stop time)
- En mode Modification (3), quand on sauvegarde le contexte modifié, on doit supprimer (ou écraser, si le nom est le même) le contexte existant (mais on demande confirmation ;
Suppression d'un contexte (options 3 et 4) :
Afin de faciliter l'interaction avec le logiciel C-Spec-HK,
les fichiers de contexte "supprimés" ne doivent pas être physiquement supprimés,
mais seulement marqués du préfixe "_TO-BE-DELETED_".
Ces fichiers "supprimés" virtuellement ne doivent plus être visibles dans la liste des contextes affichée par C-GDL.
Ainsi, C-Spec-HK pourra se rendre compte qu'un contexte (même ancien, dans le passé) a été supprimé,
et pourra supprimer en conséquence le dossier de contexte associé
(suppression virtuelle elle aussi car on préfère ne pas prendre le risque de supprimer un dossier de contexte par erreur...)
CETTE PARTIE DOIT ETRE REFORMULEE CAR ELLE NE TIENT PAS COMPTE DE LA NOUVELLE VERSION AVEC UN FORMULAIRE UNIQUE POUR TOUS LES CHAMPS :
Dans tous les cas (sauf le 4), on arrive ensuite à l'écran "Observation"
Cet écran, COMME TOUS LES ECRANS (sauf "START"), contient tout en haut un champ général, read only :
- [Context name]
Ce champ est non modifiable car il est construit automatiquement à partir de la valeur de tous les champs "bleus" (y-compris « atmosphere, earth, mars » dans l'écran "Environment") de tous les écrans (au début, avec des valeurs par défaut)
Voici le format de ce champ, YYYYMMDD_HHMM-HHMM_context_<valeurs-des-champs-bleus>, avec :
- YYYYMMDD : Date du jour (ex, 20050529)
- HHMM-HHMM : temps de début puis temps de fin (ex : 0935-1147)
Par défaut, temps début = maintenant, et temps fin = 2359 (fin de journée)
- <valeurs-des-champs-bleus> : concaténation des valeurs de tous les champs bleus de tous les onglets
(Le fichier contexte résultant portera ce nom avec l'extension ".xml", une fois la sauvegarde faite)
Les 2 champs suivants permettent éventuellement de modifier les valeurs par défaut du temps début et temps fin (format HHMM) :
- [Start time]
- [Stop time]
Après avoir rempli les autres champs de cet écran "Observation", on passe à l'écran suivant ("Target") en cliquant sur le bouton "Next" (sauf si les valeurs remplies ne sont pas correctes),
et ainsi de suite, jusqu'au dernier écran "END".
L'écran "END" permet d'enregistrer le contexte (à condition que tous les onglets soient valides, et donc au vert) avec un bouton "SAVE CONTEXT"
Le contexte est ainsi sauvegardé dans un fichier individuel (pas dans un fichier global de tous les contextes)
(Actuellement, ce fichier n'est pas créé séparément, il est ajouté à un fichier CgdlContextList.xml dans le répertoire du programme, trié par date puis par nom de cible)
AUTRES CHANGEMENTS SUR LE LOGICIEL¶
Outre le nouveau fonctionnement (workflow) décrit ci-dessus, les adaptations suivantes ont été demandées.
Supprimer la fonctionnalité du 000, 001, 002 à la fin du nom du contexte
Le bouton "Reset it" ne doit pas faire un "Next" après le reset (on peut d'ailleurs appeler ce bouton "Reset" tout simplement). Il remet les valeurs par défaut dans tous les champs de l'écran.
Le contenu des écrans (nom des paramètres, paramètre obligatoire ou facultatif, paramètre pris en compte pour le nom du contexte ou pas, type, valeur par défaut...)
doit être écrit dans un fichier texte (XML, JSON, ...) afin de faciliter les changements à l'avenir. On pourra nommer ce fichier "SETTINGS" ou "CONFIG"
Ajouter un écran (onglet) "Notebook" sur lequel on pourra prendre des notes diverses (juste avant l'écran "END")
Ecran Observation :
- Observation type : Cible LIBS par défaut (d'ailleurs, on peut enlever RMI et FOCUS)
Ecran Target :
Valeurs par défaut :
- granulo : unknown
- rough : unknown
- size : 1-5 cm
- albedo : remplacer 0 par unknown
- origin : ajouter PELLET
- composition : unknown
Ecran Environment :
- Atmosphere (en bleu car pris en compte pour le nom du contexte) : Mars par défaut
- pressure : controlled par défaut
Ecran Hardware :
Valeurs par défaut :
- Location (en bleu car pris en compte dans le nom du contexte) : IRAP
- body unit : + Chemcam EM 2013 (par défaut)
- Ctrl/cde : LANL/GSE
- Mast : ChemCam EQM
- Fiber : ChemCam FM-like
Ecran Distance :
- "Distance to target" => "Approximate dist to target"
- enlever « obtained »
- "st" => "step"
Ecran Miscellaneous :
- "Temperature of laser" => "Instrument chamber temperature"
- "More comments" => "Description", doit contenir le commentaire suivant par défaut :
"Sample in Martian chamber
With folding mirror
Laser in instrument chamber"
- Laser pulse : supprimer
- SOH : yes par défaut
- Laser freq : 3 Hz par défaut
- Existing of laser : désactiver
Ecran END :
- ajouter un bouton "RESET ALL" qui remet TOUS les écrans à leurs valeurs par défaut (déclenche une action reset sur chaque écran)