Wiki

Version 12 (Etienne Pallier, 03/16/2015 11:06 am)

1 1 Etienne Pallier
h1. Wiki
2 1 Etienne Pallier
3 8 Etienne Pallier
{{toc}}
4 3 Etienne Pallier
5 11 Etienne Pallier
6 12 Etienne Pallier
---
7 11 Etienne Pallier
8 11 Etienne Pallier
h2. SPECIFICATIONS
9 1 Etienne Pallier
10 11 Etienne Pallier
11 12 Etienne Pallier
h3. Schéma de connexion
12 11 Etienne Pallier
13 11 Etienne Pallier
PcEGSE <==RJ45==> EGSE <==serial==> ChemCam
14 11 Etienne Pallier
15 11 Etienne Pallier
ChemCam (garde tous les spectres en RAM) : serial==> BU (Body Unit) <== MU (Mast Unit)
16 11 Etienne Pallier
- MU : fait les tirs
17 11 Etienne Pallier
- BU : analyse les spectres
18 11 Etienne Pallier
19 11 Etienne Pallier
SOH (Spectra O? HK)
20 11 Etienne Pallier
21 11 Etienne Pallier
22 11 Etienne Pallier
23 11 Etienne Pallier
24 11 Etienne Pallier
Type d’observation : sur la ligne DOLIBS modifier controlWord
25 11 Etienne Pallier
==================
26 11 Etienne Pallier
27 11 Etienne Pallier
Bit # 	Bit Value	Fonction si activé
28 11 Etienne Pallier
-----	---------	------------------
29 11 Etienne Pallier
30 11 Etienne Pallier
0		1	 	Do focus : effectuer une focalisation (voir focusAlgorithm)
31 11 Etienne Pallier
32 11 Etienne Pallier
1		2	 	Pre dark spectra : acquisition d’un spectre dark AVANT les tirs
33 11 Etienne Pallier
34 11 Etienne Pallier
2		4 		Post dark spectra : acquisition d’un spectre dark APRES les tirs
35 11 Etienne Pallier
36 11 Etienne Pallier
***
37 11 Etienne Pallier
3		8 		Enable laser : effectuer un (des) tir(s) laser (voir Nshots) (sinon, c'est un DARK)
38 11 Etienne Pallier
***
39 11 Etienne Pallier
40 11 Etienne Pallier
4		16 		Collect spectra : acquisition de spectre pendant les tirs
41 11 Etienne Pallier
42 11 Etienne Pallier
5		32 		BS
43 11 Etienne Pallier
44 11 Etienne Pallier
45 11 Etienne Pallier
==> 25 = 1+8+16 = tir avec laser
46 11 Etienne Pallier
==> 17 = 1+0+16 = tir sans laser (DARK)
47 11 Etienne Pallier
48 11 Etienne Pallier
Bits 0 et 1 pas utilisés !!! :
49 11 Etienne Pallier
Le mode (Bit0 ET Bit1 activés) ne fait pas des darks after et before satisfaisant donc on le fait séparément en faisant un spectre sans enable laser,
50 11 Etienne Pallier
ce qui génère tous ces spectres avec un controlWord =17 dans la liste.
51 11 Etienne Pallier
52 11 Etienne Pallier
53 11 Etienne Pallier
54 11 Etienne Pallier
55 11 Etienne Pallier
Fichier spectre :
56 11 Etienne Pallier
===============
57 11 Etienne Pallier
58 11 Etienne Pallier
Suite d'intensités pour chaque canal (dans l'ordre 0, 1, 2, 3, ... 6444)
59 11 Etienne Pallier
A représenter sur axe 
60 11 Etienne Pallier
- X : channel number, assimilable à longueur d'onde : 0 à 6444
61 11 Etienne Pallier
- Y : intensité
62 11 Etienne Pallier
63 11 Etienne Pallier
Si fichier DARK, alors intensités (à peu près) constantes (toutes égales) :
64 11 Etienne Pallier
==> donne le bruit de fond de l'instrument, puisque on a zero lumière
65 11 Etienne Pallier
66 11 Etienne Pallier
67 11 Etienne Pallier
68 11 Etienne Pallier
Stratégie :
69 11 Etienne Pallier
=========
70 11 Etienne Pallier
Prendre le last stack only
71 11 Etienne Pallier
72 11 Etienne Pallier
Lire fichier *_spect.TXT et *_SOH.TXT associé (celui qui est juste avant, < 5mn avant)
73 11 Etienne Pallier
74 11 Etienne Pallier
1 fich/jour
75 11 Etienne Pallier
76 11 Etienne Pallier
Methods to write :
77 11 Etienne Pallier
78 11 Etienne Pallier
findSOH(liste des *SOH.TXT du jour, spect.TXT)
79 11 Etienne Pallier
==> convertit les noms SOH en timestamps, trouve le SOH qui est juste avant le spect.TXT (< 5mn avant)
80 11 Etienne Pallier
81 11 Etienne Pallier
findDARK(liste des *spect.TXT (dark), le spect.TXT pour lequel on veut le dark)
82 11 Etienne Pallier
==> retourne le fichier dark qui est juste après (<5mn) (mais, peut être before...)
83 11 Etienne Pallier
==> regarde un peu autour (avant et après)
84 11 Etienne Pallier
85 11 Etienne Pallier
findAutofocus(...)
86 11 Etienne Pallier
==> *_afocus.TXT (juste prendre son nom, pas son contenu), qui est AVANT
87 11 Etienne Pallier
88 11 Etienne Pallier
 
89 11 Etienne Pallier
90 11 Etienne Pallier
91 11 Etienne Pallier
EXEMPLE DE FICHIER RESULTAT (LOG) A OBTENIR (1 par jour)
92 11 Etienne Pallier
===========================================
93 11 Etienne Pallier
94 11 Etienne Pallier
data_Feb25_2014_5 
95 11 Etienne Pallier
firstfile = Feb25_161115_2014_spect.TXT
96 11 Etienne Pallier
lastfile = Feb25_162059_2014_spect.TXT
97 11 Etienne Pallier
98 11 Etienne Pallier
id, SPECT_file, SOH_file, 
99 11 Etienne Pallier
100 11 Etienne Pallier
// from *_SOH.TXT file :
101 11 Etienne Pallier
nbStacks									// Nb de stacks (indiqué par le nb occurences de "mast SOH" qui indique le début d'un nouveau stack) - Prendre seulement les HK du LAST stack
102 11 Etienne Pallier
temp_laser_min(degC), temp_laser_max(degC),	// prendre min et max des 4 HK_Temp_Laser_1-4
103 11 Etienne Pallier
temp_spect(C), 								// Spectrometer_Temp
104 11 Etienne Pallier
pm(cnts), 									// Motor_Position
105 11 Etienne Pallier
106 11 Etienne Pallier
// from *_spect.TXT file :
107 11 Etienne Pallier
dist(mm),									// distance to target distToTarget
108 11 Etienne Pallier
nshots, 									// (Nshots) ajouter ici "nshots_real" car le laser fait parfois plus de shots que prévu (erreur) (lire 1ère ligne pour savoir le nb de col)
109 11 Etienne Pallier
controlWord, 								// 25 = tir avec laser,  17 = tir sans laser (DARK)
110 11 Etienne Pallier
data_mean,									// moyenne des data \ nbshots reels (= intensité moyenne ?) (à lire from >>>>>Begin Processed Spectral Data<<<<<)
111 11 Etienne Pallier
dark_file, 									// remplacer par dark_file_before, dark_file_after (file name)
112 11 Etienne Pallier
mean_spect_value - dark						// (= data_mean - ???)
113 11 Etienne Pallier
114 11 Etienne Pallier
115 11 Etienne Pallier
// Liste des fichiers *_spect.TXT associés avec leurs paramètres HK (trouvés dans *_SOH.TXT) :
116 11 Etienne Pallier
117 11 Etienne Pallier
id, SPECT_file, SOH_file, nbStacks, temp_laser_min, temp_laser_max, temp_spect, pm, dist(mm), nshots, controlWord, data_mean, dark_file_before, dark_file_after, mean_spect_value - dark
118 11 Etienne Pallier
119 11 Etienne Pallier
  1 Feb25_161115_2014_spect.TXT 161055 nbStacks 4.25 5.44 30.15 5499 3000 10  25   677.39 161142 dark_file_after 50.28 
120 11 Etienne Pallier
DARK  2 Feb25_161142_2014_spect.TXT 161132 4.29 5.48 30.15 5499 3000 10  17   627.11 -        627.11 
121 11 Etienne Pallier
  3 Feb25_161243_2014_spect.TXT 161210 4.29 5.33 30.15 5444 2951 10  25   649.07 161307    19.72 
122 11 Etienne Pallier
  4 Feb25_161307_2014_spect.TXT 161257 4.25 5.55 30.15 5444 3000 10  17   629.35 -        629.35 
123 11 Etienne Pallier
  5 Feb25_161339_2014_spect.TXT 161329 4.25 5.59 30.15 5454 2959 10  25   674.78 161404    43.76 
124 11 Etienne Pallier
  6 Feb25_161404_2014_spect.TXT 161353 4.29 5.52 30.15 5454 3000 10  17   631.02 -        631.02 
125 11 Etienne Pallier
  7 Feb25_161435_2014_spect.TXT 161425 4.21 5.55 30.15 5463 2967 10  25   693.77 161500    60.76 
126 11 Etienne Pallier
  8 Feb25_161500_2014_spect.TXT 161450 4.33 5.59 30.15 5463 3000 10  17   633.01 -        633.01 
127 11 Etienne Pallier
  9 Feb25_161532_2014_spect.TXT 161521 4.29 5.59 30.15 5473 2975 10  25   703.08 161556    68.71 
128 11 Etienne Pallier
 10 Feb25_161556_2014_spect.TXT 161546 4.36 5.52 30.15 5473 3000 10  17   634.36 -        634.36 
129 11 Etienne Pallier
 11 Feb25_161646_2014_spect.TXT 161636 4.33 5.63 30.15 5482 2983 10  25   702.22 161711    67.98 
130 11 Etienne Pallier
 12 Feb25_161711_2014_spect.TXT 161701 4.33 5.59 30.15 5482 3000 10  17   634.24 -        634.24 
131 11 Etienne Pallier
 13 Feb25_161743_2014_spect.TXT 161733 4.36 5.55 30.15 5493 2992 10  25   695.08 161808    58.88 
132 11 Etienne Pallier
 14 Feb25_161808_2014_spect.TXT 161757 4.36 5.55 30.15 5493 3000 10  17   636.20 -        636.20 
133 11 Etienne Pallier
 15 Feb25_161840_2014_spect.TXT 161829 4.40 5.59 30.15 5502 3000 10  25   683.94 161905    46.74 
134 11 Etienne Pallier
 16 Feb25_161905_2014_spect.TXT 161854 4.40 5.59 30.15 5502 3000 10  17   637.20 -        637.20 
135 11 Etienne Pallier
 17 Feb25_161937_2014_spect.TXT 161926 4.40 5.59 30.15 5513 3009 10  25   675.67 162002    37.24 
136 11 Etienne Pallier
 18 Feb25_162002_2014_spect.TXT 161951 4.44 5.59 30.15 5513 3000 10  17   638.43 -        638.43 
137 11 Etienne Pallier
 19 Feb25_162034_2014_spect.TXT 162023 4.36 5.63 30.15 5522 3017 10  25   663.56 162059    24.10 
138 11 Etienne Pallier
DARK 20 Feb25_162059_2014_spect.TXT 162048 4.40 5.63 30.15 5522 3000 10  17   639.46 -        639.46
139 11 Etienne Pallier
140 11 Etienne Pallier
141 3 Etienne Pallier
h2. Dépôt SVN
142 1 Etienne Pallier
143 9 Etienne Pallier
(cliquer sur l'onglet Dépôt)
144 9 Etienne Pallier
145 6 Etienne Pallier
 * URL du dépôt : https://usvn-chemcam.irap.omp.eu/repo/c-spec-hk/trunk/
146 6 Etienne Pallier
147 6 Etienne Pallier
 * Administration du dépôt : https://usvn-chemcam.irap.omp.eu
148 6 Etienne Pallier
149 10 Etienne Pallier
 * Administrateur : Etienne Pallier
150 10 Etienne Pallier
151 10 Etienne Pallier
 * Groupes :
152 10 Etienne Pallier
   * grp-admin-chemcam : Admin du dépot CHEMCAM (RW sur racine).
153 10 Etienne Pallier
   * grp-chemcam : Les développeurs de CHEMCAM (RW sur branches).
154 10 Etienne Pallier
   * On peut également créer un groupe grp-readonly-chemcam (et mettre les droits en read-only sur tout le projet)
155 10 Etienne Pallier
156 10 Etienne Pallier
 * Ajout d'utilisateurs 
157 10 Etienne Pallier
158 10 Etienne Pallier
  * On peut ajouter des utilisateurs extérieurs via l'interface web, puis les ajouter dans les groupes (en tant que "Utilisateurs affectés").
159 10 Etienne Pallier
  * Dans le cas des utilisateurs IRAP, il faut qu'ils se connectent une première fois sur https://usvn-idems.irap.omp.eu avec leur login/mdp IRAP avant de pouvoir être affectés dans les groupes du repository.
160 10 Etienne Pallier
161 10 Etienne Pallier
 * Dashboard : le dashboard du projet est https://usvn-chemcam.irap.omp.eu (=interface de gestion des utilisateurs, groupes et droits d'accès sur le repo, et également navigateur/explorateur du repo)
162 10 Etienne Pallier
163 10 Etienne Pallier
 * Accès : Le repo SVN est accessible depuis partout dans le monde (svn-over-https only), la racine du repo est https://usvn-chemcam.irap.omp.eu/repo/chemcam/
164 10 Etienne Pallier
165 6 Etienne Pallier
166 3 Etienne Pallier
167 3 Etienne Pallier
168 5 Etienne Pallier
h2. Installation
169 4 Etienne Pallier
170 1 Etienne Pallier
S'assurer d'avoir python 2.7
171 1 Etienne Pallier
172 1 Etienne Pallier
Sur Mac, avec Macport, pour que la version 2.7 soit bien la version par défaut quand on tape "python" :
173 1 Etienne Pallier
174 1 Etienne Pallier
sudo port select --set python python27
175 1 Etienne Pallier
176 1 Etienne Pallier
$ which python
177 1 Etienne Pallier
/opt/local/bin/python
178 1 Etienne Pallier
179 1 Etienne Pallier
$ python --version
180 1 Etienne Pallier
Python 2.7.9
181 2 Etienne Pallier
182 2 Etienne Pallier
Mettre à jour MacPort :
183 2 Etienne Pallier
sudo port -v selfupdate
184 2 Etienne Pallier
sudo port upgrade outdated