Subversion Repositories f9daq

Rev

Rev 172 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 172 Rev 173
1
SOFTWARE FOR SIPM CHARACTERIZATION WITH CAMAC, SCOPE, BIAS VOLTAGE AND TABLE POSITION SUPPORT
1
SOFTWARE FOR SIPM CHARACTERIZATION WITH CAMAC, SCOPE, BIAS VOLTAGE AND TABLE POSITION SUPPORT
2
=============================================================================================
2
=============================================================================================
3
By Gasper Kukec Mezek, April 2015.
3
By Gasper Kukec Mezek, April 2015.
4
 
4
 
5
==============
5
==============
6
= Contents ===
6
= Contents ===
7
==============
7
==============
8
 
8
 
9
  1.  Installation
9
  1.  Installation
10
  2.  Running the software
10
  2.  Running the software
11
  3.  Program feature overview
11
  3.  Program feature overview
12
  3a. Current program version (trunk)
12
  3a. Current program version (trunk)
13
  3b. Old program version (trunk_v0.9)
13
  3b. Old program version (trunk_v0.9)
14
  4.  Preparing for measurements
14
  4.  Preparing for measurements
15
  4a. Pre-software checks
15
  4a. Pre-software checks
16
  4b. Experimental setup pre-measurement checks
16
  4b. Experimental setup pre-measurement checks
17
  4c. Software pre-measurement checks
17
  4c. Software pre-measurement checks
18
  5.  Measurements
18
  5.  Measurements
19
  5a. Measurement settings
19
  5a. Measurement settings
20
  5b. Temperature chamber considerations
20
  5b. Temperature chamber considerations
21
  5c. Movement table
21
  5c. Movement table
22
  5d. Bias voltage supply
22
  5d. Bias voltage supply
23
  6.  Measurement files
23
  6.  Measurement files
24
  6a. ROOT file structure
24
  6a. ROOT file structure
25
  6b. Opening measurement files
25
  6b. Opening measurement files
26
  7.  Analysis
26
  7.  Analysis
27
  8.  Change log
27
  8.  Change log
28
 
28
 
29
=====================
29
=====================
30
= 1. Installation ===
30
= 1. Installation ===
31
=====================
31
=====================
32
 
32
 
33
See $sipmscan/doc/INSTALL for installation instructions or use "./configure help".
33
See $sipmscan/doc/INSTALL for installation instructions or use "./configure help".
34
 
34
 
35
=============================
35
=============================
36
= 2. Running the software ===
36
= 2. Running the software ===
37
=============================
37
=============================
38
 
38
 
39
Once installation is performed, use
39
Once installation is performed, use
40
   ./start.sh
40
   ./start.sh
41
to start the software in offline mode or
41
to start the software in offline mode or
42
   sudo ./start.sh
42
   sudo ./start.sh
43
to start the software in online mode. Once the software starts, it will let you know (in the terminal) if connection to CAMAC
43
to start the software in online mode. Once the software starts, it will let you know (in the terminal) if connection to CAMAC
44
was correctly established.
44
was correctly established.
45
 
45
 
46
=================================
46
=================================
47
= 3. Program feature overview ===
47
= 3. Program feature overview ===
48
=================================
48
=================================
49
 
49
 
50
This part describes the different parts of the software and a short description on what they do.
50
This part describes the different parts of the software and a short description on what they do.
51
____________________________________
51
____________________________________
52
3a. Current program version (trunk):
52
3a. Current program version (trunk):
53
 
53
 
54
The main window is divided into 4 tabs and then further into subwindows:
54
The main window is divided into 4 tabs and then further into subwindows:
55
1) Measurement tab:
55
1) Measurement tab:
56
   a) Settings pane:
56
   a) Settings pane:
57
      - ON/OFF switches for voltage, surface, Z axis and rotation scans (ON when checked).
57
      - ON/OFF switches for voltage, surface, Z axis and rotation scans (ON when checked).
58
      - A voltage limiter -> Sets the maximum output voltage that can be set under Output voltage (sample safety reasons).
58
      - A voltage limiter -> Sets the maximum output voltage that can be set under Output voltage (sample safety reasons).
59
      - Nr. of channels -> The number of channels to measure. Each channel corresponds to an ADC/TDC pair.
59
      - Nr. of channels -> The number of channels to measure. Each channel corresponds to an ADC/TDC pair.
60
      - Position units -> For display, use either movement table native units or micrometers (table units default).
60
      - Position units -> For display, use either movement table native units or micrometers (table units default).
61
      - Rotation units -> For display, use either rotation table native units or degrees (degrees default).
61
      - Rotation units -> For display, use either rotation table native units or degrees (degrees default).
62
      - Scope IP -> Sets the oscilloscope IP address for connections to a device.
62
      - Scope IP -> Sets the oscilloscope IP address for connections to a device.
63
      - LASER settings info panel -> Additional information to be written to the output file header (most generally used for
63
      - LASER settings info panel -> Additional information to be written to the output file header (most generally used for
64
        laser information).
64
        laser information).
65
      - Chamber temperature -> Chamber temperature to be written to the output file (temperature not directly taken from the
65
      - Chamber temperature -> Chamber temperature to be written to the output file (temperature not directly taken from the
66
        fieldpoint sensor).
66
        fieldpoint sensor).
67
      - Live histogram ON/OFF -> ON/OFF switch for live histogram update. Offers quick overview of the current measurement.
67
      - Live histogram ON/OFF -> ON/OFF switch for live histogram update. Offers quick overview of the current measurement.
68
        Should be avoided for scans.
68
        Should be avoided for scans.
69
   b) Display: Display of the live histogram, when it is turned on.
69
   b) Display: Display of the live histogram, when it is turned on.
70
   c) Main measurement window:
70
   c) Main measurement window:
71
      - Settings for bias voltage, table position and incidence angle measurements.
71
      - Settings for bias voltage, table position and incidence angle measurements.
72
      - Additional settings enabled, when scans are enabled.
72
      - Additional settings enabled, when scans are enabled.
73
      - If only one directional scan in X or Y direction is needed, set measurement to a surface scan and leave the other
73
      - If only one directional scan in X or Y direction is needed, set measurement to a surface scan and leave the other
74
      step size to 0.
74
      step size to 0.
75
      - Number of events -> Number of events gathered in one measurement.
75
      - Number of events -> Number of events gathered in one measurement.
76
      - Time stamp -> Date and time of measurement that is written to the header of the output file.
76
      - Time stamp -> Date and time of measurement that is written to the header of the output file.
77
      - Save to file -> Selecting of output file filename. For scans, sequential numbers are appended to the end of the
77
      - Save to file -> Selecting of output file filename. For scans, sequential numbers are appended to the end of the
78
      selected filename (i.e. /path/to/test.root will in a scan have /path/to/test_001.root, /path/to/test_002.root,...).
78
      selected filename (i.e. /path/to/test.root will in a scan have /path/to/test_001.root, /path/to/test_002.root,...).
79
      - Start acquisition -> Starts the measurement based on currently selected settings.
79
      - Start acquisition -> Starts the measurement based on currently selected settings.
80
      - Current measurement progress bar -> Determines the status of the current measurement.
80
      - Current measurement progress bar -> Determines the status of the current measurement.
81
 
81
 
82
2) Analysis tab:
82
2) Analysis tab:
83
   a) Histogram file selection:
83
   a) Histogram file selection:
84
      - Open past measurements for analysis. Additional display of header information for quicker reference.
84
      - Open past measurements for analysis. Additional display of header information for quicker reference.
85
      - If using multiple files for the analysis, use multiple file select or select all listed files. They will be used in
85
      - If using multiple files for the analysis, use multiple file select or select all listed files. They will be used in
86
      order displayed on the list.
86
      order displayed on the list.
87
      - Use the Clear list button to clear all entries in from the list.
87
      - Use the Clear list button to clear all entries in from the list.
88
      - Use the edit header button to update any information inside the headers of entries selected on the list.
88
      - Use the edit header button to update any information inside the headers of entries selected on the list.
89
   b) Histogram: Displays the currently selected histogram from the histogram file selection subwindow.
89
   b) Histogram: Displays the currently selected histogram from the histogram file selection subwindow.
90
   c) Histogram controls:
90
   c) Histogram controls:
91
      - Enables plotting options for the currently selected histogram and to setup spectral options for analysis.
91
      - Enables plotting options for the currently selected histogram and to setup spectral options for analysis.
92
      - ADC range -> Sets the range of the ADC spectrum. Ranges are automatic, when set to (0,0).
92
      - ADC range -> Sets the range of the ADC spectrum. Ranges are automatic, when set to (0,0).
93
      - TDC range -> Sets the range of the TDC spectrum. TDC spectrum determines the events used for plotting the ADC spectrum.
93
      - TDC range -> Sets the range of the TDC spectrum. TDC spectrum determines the events used for plotting the ADC spectrum.
94
      - Y range -> Sets the range of the Y axis on the spectrum. Ranges are automatic, when set to (0,0). 
94
      - Y range -> Sets the range of the Y axis on the spectrum. Ranges are automatic, when set to (0,0). 
95
      - Display channel -> Selects the channel to plot, when opening a multichannel measurement file.
95
      - Display channel -> Selects the channel to plot, when opening a multichannel measurement file.
96
      - Plot type buttons -> Buttons to change between ADC, TDC or ADC/TDC type of plot.
96
      - Plot type buttons -> Buttons to change between ADC, TDC or ADC/TDC type of plot.
97
      - Logarithmic scale ON/OFF -> Toggle for logarithmic Y axis scale.
97
      - Logarithmic scale ON/OFF -> Toggle for logarithmic Y axis scale.
98
      - Clean plots ON/OFF -> Toggle for hiding plot information or not (such as plot title, fitting information, statistics
98
      - Clean plots ON/OFF -> Toggle for hiding plot information or not (such as plot title, fitting information, statistics
99
      information).
99
      information).
100
      - Export -> Exports the currently selected histograms (ADC, TDC or ADC/TDC form selected files) into the .pdf format.
100
      - Export -> Exports the currently selected histograms (ADC, TDC or ADC/TDC form selected files) into the .pdf format.
101
      - Edit -> UNDER DEVELOPMENT! Opens the currently visible plot in the Histogram subwindow in a new tab to enable editing.
101
      - Edit -> UNDER DEVELOPMENT! Opens the currently visible plot in the Histogram subwindow in a new tab to enable editing.
102
   d) Analysis:
102
   d) Analysis:
103
      - Options for specific analysis types (integrate spectrum, relative PDE, breakdown voltage, surface scan, timing). When
103
      - Options for specific analysis types (integrate spectrum, relative PDE, breakdown voltage, surface scan, timing). When
104
      using Start button, analysis starts, saves results and quits. When using Start and edit button, analysis starts and gives
104
      using Start button, analysis starts, saves results and quits. When using Start and edit button, analysis starts and gives
105
      options to further edit the results.
105
      options to further edit the results.
106
      - General fit settings (Peak sigma, S/N ratio, background interpolation, ADC spectrum offset, Maximum acceptable peak
106
      - General fit settings (Peak sigma, S/N ratio, background interpolation, ADC spectrum offset, Maximum acceptable peak
107
      fit error, pedestal lower limit, background subtraction, export fits). Settings for analysis based on fitting of peaks
107
      fit error, pedestal lower limit, background subtraction, export fits). Settings for analysis based on fitting of peaks
108
      on the ADC spectra (breakdown voltage and relative PDE). The current progress of the analysis is displayed on the
108
      on the ADC spectra (breakdown voltage and relative PDE). The current progress of the analysis is displayed on the
109
      progress bar.
109
      progress bar.
110
 
110
 
111
3) Monitoring tab: UNDER DEVELOPMENT! Fieldpoint temperature sensor data view.
111
3) Monitoring tab: UNDER DEVELOPMENT! Fieldpoint temperature sensor data view.
112
 
112
 
113
4) Help tab: Displays the contents of this help file.
113
4) Help tab: Displays the contents of this help file.
114
 
114
 
115
On the top, there are 3 menus:
115
On the top, there are 3 menus:
116
a) File:
116
a) File:
117
   - Set user layout -> Set a user saved layout of the program subwindows or use the default.
117
   - Set user layout -> Set a user saved layout of the program subwindows or use the default.
118
   - Save current layout -> Save the program subwindow layout to be used later. This will remember the sizes of each subwindow
118
   - Save current layout -> Save the program subwindow layout to be used later. This will remember the sizes of each subwindow
119
   (Settings pane, Main measurement window, Display, Histogram file selection,...) and the overall size of the program window.
119
   (Settings pane, Main measurement window, Display, Histogram file selection,...) and the overall size of the program window.
120
   - Save current measurement settings -> UNDER DEVELOPMENT! Will evantually save the entered values from the Measurement tab.
120
   - Save current measurement settings -> UNDER DEVELOPMENT! Will evantually save the entered values from the Measurement tab.
121
   - Save current analysis settings -> UNDER DEVELOPMENT! Will eventually save the entered values from the Analysis tab.
121
   - Save current analysis settings -> UNDER DEVELOPMENT! Will eventually save the entered values from the Analysis tab.
122
   - Exit -> Exit the software (shortkey x)
122
   - Exit -> Exit the software (shortkey x)
123
 
123
 
124
b) Analysis (each takes you to the appropriate options for the analysis):
124
b) Analysis (each takes you to the appropriate options for the analysis):
125
   - Histogram type -> Change between histogram types (same as in histogram controls window).
125
   - Histogram type -> Change between histogram types (same as in histogram controls window).
126
   - Fit spectrum -> UNDER DEVELOPMENT! Will produce a fit of ADC spectrum peak structure of the current file/files.
126
   - Fit spectrum -> UNDER DEVELOPMENT! Will produce a fit of ADC spectrum peak structure of the current file/files.
127
   - Integrate spectrum -> Integrate the ADC spectrum of the current file/files inside the selected ADC range.
127
   - Integrate spectrum -> Integrate the ADC spectrum of the current file/files inside the selected ADC range.
128
   - Integrate spectrum (X direction) -> Same as Integrate spectrum, but the selected files were produced as X axis scans.
128
   - Integrate spectrum (X direction) -> Same as Integrate spectrum, but the selected files were produced as X axis scans.
129
   Makes the determination of an X directional edge scan and produces a 2D plot if Z axis scan was also enabled.
129
   Makes the determination of an X directional edge scan and produces a 2D plot if Z axis scan was also enabled.
130
   - Integrate spectrum (Y direction) -> Same as Integrate spectrum (X direction), but the selected files were produced as
130
   - Integrate spectrum (Y direction) -> Same as Integrate spectrum (X direction), but the selected files were produced as
131
   Y axis scans.
131
   Y axis scans.
132
   - Relative PDE -> Produce a relative PDE plot, where selected files were produced as incidence angle scans.
132
   - Relative PDE -> Produce a relative PDE plot, where selected files were produced as incidence angle scans.
133
   - Surface 2D scan -> Produce an integral of the ADC spectrum, where selected files were produced as surface scans (in
133
   - Surface 2D scan -> Produce an integral of the ADC spectrum, where selected files were produced as surface scans (in
134
   X and Y directions).
134
   X and Y directions).
135
   - Timing analysis -> UNDER DEVELOPMENT! Will make an analysis on the TDC spectrum of measurements.
135
   - Timing analysis -> UNDER DEVELOPMENT! Will make an analysis on the TDC spectrum of measurements.
136
 
136
 
137
c) Help information
137
c) Help information
138
 
138
 
139
Important!
139
Important!
140
When using any analysis method, only events inside the selected TDC window will be used (set the TDC range accordingly).
140
When using any analysis method, only events inside the selected TDC window will be used (set the TDC range accordingly).
141
 
141
 
142
_____________________________________
142
_____________________________________
143
3b. Old program version (trunk_v0.9):
143
3b. Old program version (trunk_v0.9):
144
 
144
 
145
The main window is divided into 5 subwindows:
145
The main window is divided into 5 subwindows:
146
a) Settings window:
146
a) Settings window:
147
   - ON/OFF switches for voltage and surface scans.
147
   - ON/OFF switches for voltage and surface scans.
148
   - a voltage limiter -> sets the maximum output voltage for safety reasons
148
   - a voltage limiter -> sets the maximum output voltage for safety reasons
149
   - clean plots toggle switch -> when ON, no additional stats will be displayed on plots/histograms
149
   - clean plots toggle switch -> when ON, no additional stats will be displayed on plots/histograms
150
   - scope IP -> sets the oscilloscope IP address
150
   - scope IP -> sets the oscilloscope IP address
151
   - LASER settings info panel -> this will be written to the output file and is used for supplying additional information
151
   - LASER settings info panel -> this will be written to the output file and is used for supplying additional information
152
   - chamber temperature -> the chamber temperature to be written to the output file
152
   - chamber temperature -> the chamber temperature to be written to the output file
153
   - incidence angle -> the angle at which the sample is rotated around its axis, relative to the LASER beam (0 degrees is
153
   - incidence angle -> the angle at which the sample is rotated around its axis, relative to the LASER beam (0 degrees is
154
   perpendicular to LASER beam)
154
   perpendicular to LASER beam)
155
 
155
 
156
b) Main measurement window:
156
b) Main measurement window:
157
   - settings for table position and bias voltage
157
   - settings for table position and bias voltage
158
   - when scans are enabled, additional settings for scans
158
   - when scans are enabled, additional settings for scans
159
   - number of events -> setting for the number of events to gather in a measurement
159
   - number of events -> setting for the number of events to gather in a measurement
160
   - time stamp -> informational time (start time of measurement is written to output file)
160
   - time stamp -> informational time (start time of measurement is written to output file)
161
   - file selector (for scans, the filenames will be appended sequential numbers to distinguish them)
161
   - file selector (for scans, the filenames will be appended sequential numbers to distinguish them)
162
   - start acquisition button -> starts the measurement based on selected settings
162
   - start acquisition button -> starts the measurement based on selected settings
163
   - waveform analysis settings (channel, measurement type)
163
   - waveform analysis settings (channel, measurement type)
164
   - possibility to send custom one-line commands
164
   - possibility to send custom one-line commands
165
 
165
 
166
c) Histogram file selection window:
166
c) Histogram file selection window:
167
   - open past measurements for analysis
167
   - open past measurements for analysis
168
   - if using multiple files, use multiple file select or select all listed files
168
   - if using multiple files, use multiple file select or select all listed files
169
   - files will be used in order displayed on the list
169
   - files will be used in order displayed on the list
170
   - to clear the complete list, use the clear list button
170
   - to clear the complete list, use the clear list button
171
   - to edit the header information of currently selected files, use the edit header button
171
   - to edit the header information of currently selected files, use the edit header button
172
   - any opened measurement has an info display of its header at the bottom for easier navigation
172
   - any opened measurement has an info display of its header at the bottom for easier navigation
173
 
173
 
174
d) Histogram window:
174
d) Histogram window:
175
   - displays the currently selected histogram in the histogram file selection window
175
   - displays the currently selected histogram in the histogram file selection window
176
 
176
 
177
e) Histogram controls window:
177
e) Histogram controls window:
178
   - directly linked to the histogram window, it enables plotting options
178
   - directly linked to the histogram window, it enables plotting options
179
   - can set ranges on histogram plots
179
   - can set ranges on histogram plots
180
   - can change between different histogram types (ADC, TDC, ADC vs. TDC, 2D surface plot)
180
   - can change between different histogram types (ADC, TDC, ADC vs. TDC, 2D surface plot)
181
   - for the 2D surface plot, the relevant files need to be selected in the histogram file selection window
181
   - for the 2D surface plot, the relevant files need to be selected in the histogram file selection window
182
   - toggle for logarithmic Y scale
182
   - toggle for logarithmic Y scale
183
   - the currently selected histogram can be manually exported with the export button
183
   - the currently selected histogram can be manually exported with the export button
184
   - fit settings used when running "Fit spectrum" and "Fit all selected" options in the Analysis menu
184
   - fit settings used when running "Fit spectrum" and "Fit all selected" options in the Analysis menu
185
 
185
 
186
On the top, there are 4 menus:
186
On the top, there are 4 menus:
187
a) File:
187
a) File:
188
   - New Measurement -> not working
188
   - New Measurement -> not working
189
   - Exit -> exit the software (shortkey x)
189
   - Exit -> exit the software (shortkey x)
190
 
190
 
191
b) Analysis:
191
b) Analysis:
192
   - Histogram type -> change between histogram types (same as in histogram controls window)
192
   - Histogram type -> change between histogram types (same as in histogram controls window)
193
   - Fit spectrum -> fit the currently open spectrum for peaks
193
   - Fit spectrum -> fit the currently open spectrum for peaks
194
   - Fit all selected -> fit all the selected ADC spectra selected in the histogram file selection window for peaks and display
194
   - Fit all selected -> fit all the selected ADC spectra selected in the histogram file selection window for peaks and display
195
   the breakdown voltage plots
195
   the breakdown voltage plots
196
   - Integrate spectrum (X, Y) -> integrate the ADC spectrum for multiple files with an X or Y scan (used for edge scans)
196
   - Integrate spectrum (X, Y) -> integrate the ADC spectrum for multiple files with an X or Y scan (used for edge scans)
197
   - Relative PDE -> calculation of the relative PDE for the currently selected files
197
   - Relative PDE -> calculation of the relative PDE for the currently selected files
198
 
198
 
199
c) Tools:
199
c) Tools:
200
   - Fieldpoint temperature sensor -> direct graphing of the fieldpoint temperature sensor (with settings for fieldpoint channel,
200
   - Fieldpoint temperature sensor -> direct graphing of the fieldpoint temperature sensor (with settings for fieldpoint channel,
201
   start time and end time), output is a graph (if exporting) and a comma separated list saved to folder ./fieldpoint. Updating
201
   start time and end time), output is a graph (if exporting) and a comma separated list saved to folder ./fieldpoint. Updating
202
   the graph can cause unstable behavior. If possible, use ~/sipmscan/fieldpoint_standalone instead.
202
   the graph can cause unstable behavior. If possible, use ~/sipmscan/fieldpoint_standalone instead.
203
 
203
 
204
d) Windows:
204
d) Windows:
205
   - Specific window tiling
205
   - Specific window tiling
206
   - Switch between active windows
206
   - Switch between active windows
207
 
207
 
208
e) Help information
208
e) Help information
209
 
209
 
210
Important!
210
Important!
211
When using any analysis method (surface 2D plot, fitting, integration, ADC spectra display) only events inside the selected TDC
211
When using any analysis method (surface 2D plot, fitting, integration, ADC spectra display) only events inside the selected TDC
212
window will be used so set the TDC range accordingly.
212
window will be used so set the TDC range accordingly.
213
 
213
 
214
===================================
214
===================================
215
= 4. Preparing for measurements ===
215
= 4. Preparing for measurements ===
216
===================================
216
===================================
217
 
217
 
218
General information for preparing the experimental setup and software for measurements.
218
General information for preparing the experimental setup and software for measurements.
219
 
219
 
220
________________________
220
________________________
221
4a. Pre-software checks:
221
4a. Pre-software checks:
222
 
222
 
223
Before running the Online version of the program, make sure that CAMAC (Computer Automated Measurement And Control) is turned
223
Before running the Online version of the program, make sure that CAMAC (Computer Automated Measurement And Control) is turned
224
on and is connected to the computer via a USB cable. If upon starting, the program gives the following message:
224
on and is connected to the computer via a USB cable. If upon starting, the program gives the following message:
225
 
225
 
226
        daq::connect() - No devices were detected!
226
        daq::connect() - No devices were detected!
227
 
227
 
228
then CAMAC was not started or the program did not properly register it.
228
then CAMAC was not started or the program did not properly register it.
229
 
229
 
230
In addition, for the Online version of the program, make sure that all movement table controllers are turned on and are connected
230
In addition, for the Online version of the program, make sure that all movement table controllers are turned on and are connected
231
to the computer via a USB cable.
231
to the computer via a USB cable.
232
 
232
 
233
For the connection with the oscilloscope (Online and Offline with scope control versions of the program), make sure it is
233
For the connection with the oscilloscope (Online and Offline with scope control versions of the program), make sure it is
234
connected to the same network with a UTP cable and that the VXI software is started on it.
234
connected to the same network with a UTP cable and that the VXI software is started on it.
235
 
235
 
236
______________________________________________
236
______________________________________________
237
4b. Experimental setup pre-measurement checks:
237
4b. Experimental setup pre-measurement checks:
238
 
238
 
239
When making changes inside the setup, make sure that no cables are hindering the movement of any of the movement tables. For
239
When making changes inside the setup, make sure that no cables are hindering the movement of any of the movement tables. For
240
the X, Y and Z axis table, the most critical are motor control cables (white, flat, multiwire cables) and the optical cable
240
the X, Y and Z axis table, the most critical are motor control cables (white, flat, multiwire cables) and the optical cable
241
for laser optics (yellow or orange optical fibre). For the rotation table, the most critical are voltage supply cable (marked
241
for laser optics (yellow or orange optical fibre). For the rotation table, the most critical are voltage supply cable (marked
242
with BIAS) and signal cables (the same as bias cable, but unmarked or marked with SIGNAL).
242
with BIAS) and signal cables (the same as bias cable, but unmarked or marked with SIGNAL).
243
 
243
 
244
Additionally, whenever putting the experimental setup back together, note the distance between the laser optics and the sample.
244
Additionally, whenever putting the experimental setup back together, note the distance between the laser optics and the sample.
245
The sample should be placed out of harms way from the collimator of the optics (check it by setting Z axis position to 0).
245
The sample should be placed out of harms way from the collimator of the optics (check it by setting Z axis position to 0).
246
 
246
 
247
____________________________________
247
____________________________________
248
4c. Software pre-measurement checks:
248
4c. Software pre-measurement checks:
249
 
249
 
250
Before starting any measurement, it is suggested to set the Voltage limit (Settings pane, Measurement tab) in order to avoid
250
Before starting any measurement, it is suggested to set the Voltage limit (Settings pane, Measurement tab) in order to avoid
251
any unwanted mistakes in bias voltage settings (to avoid any irreparable damage to the sample). Also, make sure to note the
251
any unwanted mistakes in bias voltage settings (to avoid any irreparable damage to the sample). Also, make sure to note the
252
output channel for bias voltage supply and not change any other channels (since they could be connected to other experimental
252
output channel for bias voltage supply and not change any other channels (since they could be connected to other experimental
253
setups).
253
setups).
254
 
254
 
255
=====================
255
=====================
256
= 5. Measurements ===
256
= 5. Measurements ===
257
=====================
257
=====================
258
 
258
 
259
Information on the settings for performing measurements available in this program and information on the movement tables.
259
Information on the settings for performing measurements available in this program and information on the movement tables.
260
 
260
 
261
_________________________
261
_________________________
262
5a. Measurement settings:
262
5a. Measurement settings:
263
 
263
 
264
On the Settings pane in the Measurement tab, the type of measurement can be selected:
264
On the Settings pane in the Measurement tab, the type of measurement can be selected:
265
- None is checked: The program will perform a single measurement (useful for quickly determining the state of the setup).
265
- None is checked: The program will perform a single measurement (useful for quickly determining the state of the setup).
266
- Voltage scan is checked: The program will enable V(min), V(max) and V(step) settings and perform multiple measurements at
266
- Voltage scan is checked: The program will enable V(min), V(max) and V(step) settings and perform multiple measurements at
267
different bias voltages. The number of measurements is equal to:
267
different bias voltages. The number of measurements is equal to:
268
 
268
 
269
        Floor( [V(max) - V(min)]/V(step) )
269
        Floor( [V(max) - V(min)]/V(step) )
270
 
270
 
271
  The last measurement is at a voltage always lower or equal to V(max) for safety reasons. Whenever V(step) is 0, only one
271
  The last measurement is at a voltage always lower or equal to V(max) for safety reasons. Whenever V(step) is 0, only one
272
measurement will be performed at V(min).
272
measurement will be performed at V(min).
273
 
273
 
274
- Surface scan is checked: The program will enable X(min), X(max) and X(step), and Y(min), Y(max) and Y(step) settings and
274
- Surface scan is checked: The program will enable X(min), X(max) and X(step), and Y(min), Y(max) and Y(step) settings and
275
perform multiple measurements at different table positions (surface scan). The number of measurements is equal to:
275
perform multiple measurements at different table positions (surface scan). The number of measurements is equal to:
276
 
276
 
277
        Floor( [X(max) - X(min)]/X(step) )          Floor( [Y(max) - Y(min)]/Y(step) )
277
        Floor( [X(max) - X(min)]/X(step) )          Floor( [Y(max) - Y(min)]/Y(step) )
278
 
278
 
279
  The last measurement is at a position always smaller or equal to X(max) or Y(max). Whenever X(step) is 0, only one measurement
279
  The last measurement is at a position always smaller or equal to X(max) or Y(max). Whenever X(step) is 0, only one measurement
280
will be performed at X(min) and equally in the Y axis direction. By setting one axis step size to 0, only scans along one axis
280
will be performed at X(min) and equally in the Y axis direction. By setting one axis step size to 0, only scans along one axis
281
are performed (for example for edge scans).
281
are performed (for example for edge scans).
282
 
282
 
283
- Z-axis scan is checked: The program will enable Z(min), Z(max) and Z(step) settings and perform multiple measurements at
283
- Z-axis scan is checked: The program will enable Z(min), Z(max) and Z(step) settings and perform multiple measurements at
284
different distances between laser optics and the sample (Z axis). The number of measurements is equal to:
284
different distances between laser optics and the sample (Z axis). The number of measurements is equal to:
285
 
285
 
286
        Floor( [Z(max) - Z(min)]/Z(step) )
286
        Floor( [Z(max) - Z(min)]/Z(step) )
287
 
287
 
288
  The last measurement is at a position always smaller or equal to Z(max). Whenever Z(step) is 0, only one measurement will be
288
  The last measurement is at a position always smaller or equal to Z(max). Whenever Z(step) is 0, only one measurement will be
289
performed at Z(min).
289
performed at Z(min).
290
 
290
 
291
- Rotation scan is checked: The program will enable Angle(min), Angle(max) and Angle(step) settings and perform multiple
291
- Rotation scan is checked: The program will enable Angle(min), Angle(max) and Angle(step) settings and perform multiple
292
measurements at different incidence angles (angle away from perpendicular incidence of laser light on the sample). The number
292
measurements at different incidence angles (angle away from perpendicular incidence of laser light on the sample). The number
293
of measurements is equal to:
293
of measurements is equal to:
294
 
294
 
295
        Floor( [Angle(max) - Angle(min)]/Angle(step) )
295
        Floor( [Angle(max) - Angle(min)]/Angle(step) )
296
 
296
 
297
  The last measurement is at an angle always smaller or equal to Angle(max). Whenever Angle(step) is 0, only one measurement
297
  The last measurement is at an angle always smaller or equal to Angle(max). Whenever Angle(step) is 0, only one measurement
298
will be performed at Angle(min).
298
will be performed at Angle(min).
299
 
299
 
300
Surface scan and Z axis scan can be combined to perform edge scans at different distances between optics and sample (useful
300
Surface scan and Z axis scan can be combined to perform edge scans at different distances between optics and sample (useful
301
for finding the focal point of the laser).
301
for finding the focal point of the laser).
302
 
302
 
303
_______________________________________
303
_______________________________________
304
5b. Temperature chamber considerations:
304
5b. Temperature chamber considerations:
305
 
305
 
306
Whenever using the temperature chamber, be careful about the set temperature. SiPM samples have a specific operational and
306
Whenever using the temperature chamber, be careful about the set temperature. SiPM samples have a specific operational and
307
storage temperatures that should not be exceeded. The temperature chamber, however, has slight overshoots when increasing
307
storage temperatures that should not be exceeded. The temperature chamber, however, has slight overshoots when increasing
308
the temperature, thus heating slightly above the set temperature (sometimes as much as 5 degrees) and then cooling back down.
308
the temperature, thus heating slightly above the set temperature (sometimes as much as 5 degrees) and then cooling back down.
309
 
309
 
310
The chamber also has some problems cooling after previous heating (ex. coming from 0 degrees to 25 degrees and then again
310
The chamber also has some problems cooling after previous heating (ex. coming from 0 degrees to 25 degrees and then again
311
cooling the chamber). In this case, it will seem to remain around some temperature, although it is supposed to be cooling
311
cooling the chamber). In this case, it will seem to remain around some temperature, although it is supposed to be cooling
312
down. Sometimes this can be solved by turning off the chamber and waiting for some time or by making a large temperature
312
down. Sometimes this can be solved by turning off the chamber and waiting for some time or by making a large temperature
313
jump from higher to lower temperature (taking into consideration the sample temperature range).
313
jump from higher to lower temperature (taking into consideration the sample temperature range).
314
 
314
 
315
Opening the chamber after measurements at low temperatures should be very short, since condensation forms very quickly that
315
Opening the chamber after measurements at low temperatures should be very short, since condensation forms very quickly that
316
can then lead to the water droplets freezing at low temperatures. Ideally, the chamber should be warmed close to room
316
can then lead to the water droplets freezing at low temperatures. Ideally, the chamber should be warmed close to room
317
temperature before opening, but any very short changes to the setup can still be performed when at lower temperatures.
317
temperature before opening, but any very short changes to the setup can still be performed when at lower temperatures.
318
 
318
 
319
___________________
319
___________________
320
5c. Movement table:
320
5c. Movement table:
321
 
321
 
322
The movement tables are controlled by National Aperture MicroMini controllers through a subprogram found in
322
The movement tables are controlled by National Aperture MicroMini controllers through a subprogram found in
323
$sipmscan/trunk/src/MIKRO. Sometimes special measures are needed (in case of problems) that are not available inside the
323
$sipmscan/trunk/src/MIKRO. Sometimes special measures are needed (in case of problems) that are not available inside the
324
sipmscan software, but can be achieved by going directly to the subprogram. The subprogram can be run, by going directly
324
sipmscan software, but can be achieved by going directly to the subprogram. The subprogram can be run, by going directly
325
to its directory and running:
325
to its directory and running:
326
 
326
 
327
        ./mikro_ctrl [arguments]
327
        ./mikro_ctrl [arguments]
328
 
328
 
329
The arguments can be (only running ./mikro_ctrl will bring up help information):
329
The arguments can be (only running ./mikro_ctrl will bring up help information):
330
- Node select: -n [node nr]. The [nodenr] is the address number of the controller as set on the front of the MicroMini
330
- Node select: -n [node nr]. The [nodenr] is the address number of the controller as set on the front of the MicroMini
331
controller.
331
controller.
332
- Initialize node: -i [init type]. The [inittype] is the initialization type that can be 3M Linear (1), 3M Rotational (2),
332
- Initialize node: -i [init type]. The [inittype] is the initialization type that can be 3M Linear (1), 3M Rotational (2),
333
4M Linear (3) or 4M Rotational (4). 3M are the smaller/shorter versions, while 4M are the larger/longer versions (all three
333
4M Linear (3) or 4M Rotational (4). 3M are the smaller/shorter versions, while 4M are the larger/longer versions (all three
334
axis are 4M Linear and the angle is 3M Rotational). Always needs the node select argument (-n).
334
axis are 4M Linear and the angle is 3M Rotational). Always needs the node select argument (-n).
335
- Node homing: -h. Sets the node to a predetermined 0 value (home). Always needs the node select argument (-n). IMPORTANT: The
335
- Node homing: -h. Sets the node to a predetermined 0 value (home). Always needs the node select argument (-n). IMPORTANT: The
336
rotational table must never be set to home! It does not have a predetemined zero, so the table will infinitely spin and can
336
rotational table must never be set to home! It does not have a predetemined zero, so the table will infinitely spin and can
337
cause harm to the sample or attached cables.
337
cause harm to the sample or attached cables.
338
- Reset node: -r. Does a complete reset of the controller. Always needs the node select argument (-n). After reset, the
338
- Reset node: -r. Does a complete reset of the controller. Always needs the node select argument (-n). After reset, the
339
controller needs to be initialized in order to work properly.
339
controller needs to be initialized in order to work properly.
340
- Node status: -a. Returns the current status of the controller. Can be used with node select argument (-n) to target specific
340
- Node status: -a. Returns the current status of the controller. Can be used with node select argument (-n) to target specific
341
controller or without to display status from all.
341
controller or without to display status from all.
342
- Node position: -p. Returns the current position of the controller. Always needs the node select argument (-n).
342
- Node position: -p. Returns the current position of the controller. Always needs the node select argument (-n).
343
- Node get command: -g [command]. Get return value from the issued command. Always needs the node select argument (-n). For
343
- Node get command: -g [command]. Get return value from the issued command. Always needs the node select argument (-n). For
344
possible commands, see the MicroMini user manual.
344
possible commands, see the MicroMini user manual.
345
- Node set command: -v [value] -s [command]. Set a value with an issued command. Always needs the node select argument (-n).
345
- Node set command: -v [value] -s [command]. Set a value with an issued command. Always needs the node select argument (-n).
346
For possible commands and values, see the MicroMini user manual.
346
For possible commands and values, see the MicroMini user manual.
347
- Custom node command: -c [command]. Run one of the node commands without setting a value. Always needs the node select
347
- Custom node command: -c [command]. Run one of the node commands without setting a value. Always needs the node select
348
argument (-n). For possible commands and values, see the MicroMini user manual.
348
argument (-n). For possible commands and values, see the MicroMini user manual.
349
 
349
 
350
Example commands:
350
Example commands:
351
- Reset node 1:
351
- Reset node 1:
352
     ./mikro_ctrl -n 1 -r
352
     ./mikro_ctrl -n 1 -r
353
- Initialize node 2 as a 4M Linear type:
353
- Initialize node 2 as a 4M Linear type:
354
     ./mikro_ctrl -n 2 -i 3
354
     ./mikro_ctrl -n 2 -i 3
355
- Home node 3:
355
- Home node 3:
356
     ./mikro_ctrl -n 3 -h
356
     ./mikro_ctrl -n 3 -h
357
- Determine node 1 position:
357
- Determine node 1 position:
358
     ./mikro_ctrl -n 1 -p
358
     ./mikro_ctrl -n 1 -p
359
- Prepare to move node 2 to an absolute position of 1000 and move it:
359
- Prepare to move node 2 to an absolute position of 1000 and move it:
360
     ./mikro_ctrl -n 2 -v 500 -s la
360
     ./mikro_ctrl -n 2 -v 500 -s la
361
     ./mikro_ctrl -c m
361
     ./mikro_ctrl -c m
362
- Prepare to move node 3 relative to current position for -500 and move it:
362
- Prepare to move node 3 relative to current position for -500 and move it:
363
     ./mikro_ctrl -n 2 -v -500 -s lr
363
     ./mikro_ctrl -n 2 -v -500 -s lr
364
     ./mikro_ctrl -c m
364
     ./mikro_ctrl -c m
365
- Abort the current movement of node 4:
365
- Abort the current movement of node 4:
366
     ./mikro_ctrl -n 4 -c ab
366
     ./mikro_ctrl -n 4 -c ab
367
 
367
 
368
Documentation:
368
Documentation:
369
- MicroMini controller manual: http://www-f9.ijs.si/~rok/detectors/oprema/national_aperture_stages/MicroMini_Manual.pdf
369
- MicroMini controller manual: http://www-f9.ijs.si/~rok/detectors/oprema/national_aperture_stages/MicroMini_Manual.pdf
370
- 4M Linear table: http://www.naimotion.com/mm4mex.htm
370
- 4M Linear table: http://www.naimotion.com/mm4mex.htm
371
- 3M Rotational table: http://www.naimotion.com/mm3mr.htm
371
- 3M Rotational table: http://www.naimotion.com/mm3mr.htm
372
 
372
 
373
________________________
373
________________________
374
5d. Bias voltage supply:
374
5d. Bias voltage supply:
375
 
375
 
376
The bias voltage is supplied by the MPOD HV & LV power supply system through a subscript found in $sipmscan/trunk/src/mpod
376
The bias voltage is supplied by the MPOD HV & LV power supply system through a subscript found in $sipmscan/trunk/src/mpod
377
(using the snmp software). Sometimes special measures are needed (in case of problems) that are not available inside the
377
(using the snmp software). Sometimes special measures are needed (in case of problems) that are not available inside the
378
sipmscan software, but can be achieved by going directly to the subprogram. The subprogram can be run, by going directly to
378
sipmscan software, but can be achieved by going directly to the subprogram. The subprogram can be run, by going directly to
379
its directory and running:
379
its directory and running:
380
 
380
 
381
        ./mpod_voltage.sh [arguments]
381
        ./mpod_voltage.sh [arguments]
382
 
382
 
383
The arguments can be:
383
The arguments can be:
384
- Reset all output channels: --resetall
384
- Reset all output channels: --resetall
385
- Reset a selected output channel: -r [channel]
385
- Reset a selected output channel: -r [channel]
386
- Selects an output channel: -o [channel]
386
- Selects an output channel: -o [channel]
387
- Sets the output channel voltage: -v [voltage]
387
- Sets the output channel voltage: -v [voltage]
388
- Turns the output on/off: -s [0/1]
388
- Turns the output on/off: -s [0/1]
389
- Get the current output channel voltage: -g
389
- Get the current output channel voltage: -g
390
 
390
 
391
Example commands:
391
Example commands:
392
- Get the set bias voltage on channel 1 (U0):
392
- Get the set bias voltage on channel 1 (U0):
393
     ./mpod_voltage.sh -o 1 -g
393
     ./mpod_voltage.sh -o 1 -g
394
- Turn the bias voltage off on channel 2 (U1):
394
- Turn the bias voltage off on channel 2 (U1):
395
     ./mpod_voltage.sh -o 2 -s 0
395
     ./mpod_voltage.sh -o 2 -s 0
396
- Turn the bias voltage on and set it to 24.5V on channel 1 (U0):
396
- Turn the bias voltage on and set it to 24.5V on channel 1 (U0):
397
     ./mpod_voltage.sh -o 1 -v 24.5 -s 1
397
     ./mpod_voltage.sh -o 1 -v 24.5 -s 1
398
- Reset channel 2 (U1):
398
- Reset channel 2 (U1):
399
     ./mpod_voltage.sh -o 2 -r
399
     ./mpod_voltage.sh -o 2 -r
400
 
400
 
401
In its complete state, the command used in the script mpod_voltage.sh for setting for example an output voltage of 24.5 to
401
In its complete state, the command used in the script mpod_voltage.sh for setting for example an output voltage of 24.5 to
402
channel 1 (U0):
402
channel 1 (U0):
403
     snmpset -v 2c -M +. -m +WIENER-CRATE-MIB -c guru [IP address] outputVoltage.1 F 24.5 
403
     snmpset -v 2c -M +. -m +WIENER-CRATE-MIB -c guru [IP address] outputVoltage.1 F 24.5 
404
 
404
 
405
Documentation:
405
Documentation:
406
- Net-SNMP: http://www.net-snmp.org/docs/man/
406
- Net-SNMP: http://www.net-snmp.org/docs/man/
407
- MPOD: http://file.wiener-d.com/documentation/MPOD/Manual_MPOD_LV-HV_2.9.pdf
407
- MPOD: http://file.wiener-d.com/documentation/MPOD/Manual_MPOD_LV-HV_2.9.pdf
408
 
408
 
409
==========================
409
==========================
410
= 6. Measurement files ===
410
= 6. Measurement files ===
411
==========================
411
==========================
412
 
412
 
413
The measurement files, used for saving results, are constructed in native ROOT format to increase the read/write speeds while
413
The measurement files, used for saving results, are constructed in native ROOT format to increase the read/write speeds while
414
reading and saving data.
414
reading and saving data.
415
________________________
415
________________________
416
6a. ROOT file structure:
416
6a. ROOT file structure:
417
 
417
 
418
The output ROOT files are structured in this way:
418
The output ROOT files are structured in this way:
419
 
419
 
420
        ROOT file (TFile)
420
        ROOT file (TFile)
421
         |
421
         |
422
         |== header_data (TTree): Header information (same for all events)
422
         |== header_data (TTree): Header information (same for all events)
423
         |    |
423
         |    |
424
         |    |== nrch (TBranch): Number of channels (ADC + TDC channels)
424
         |    |== nrch (TBranch): Number of channels (ADC + TDC channels)
425
         |    |== timestamp (TBranch): Unix timestamp for start of measurement
425
         |    |== timestamp (TBranch): Unix timestamp for start of measurement
426
         |    |== biasvolt (TBranch): Measurement bias voltage
426
         |    |== biasvolt (TBranch): Measurement bias voltage
427
         |    |== xpos (TBranch): X axis position in table units
427
         |    |== xpos (TBranch): X axis position in table units
428
         |    |== ypos (TBranch): Y axis position in table units
428
         |    |== ypos (TBranch): Y axis position in table units
429
         |    |== zpos (TBranch): Z axis position in table units
429
         |    |== zpos (TBranch): Z axis position in table units
430
         |    |== temperature (TBranch): Chamber temperature
430
         |    |== temperature (TBranch): Chamber temperature
431
         |    |== angle (TBranch): Incidence angle of measurement
431
         |    |== angle (TBranch): Incidence angle of measurement
432
         |    |== laserinfo (TBranch): Additional info for measurement
432
         |    |== laserinfo (TBranch): Additional info for measurement
433
         |
433
         |
434
         |== meas_data (TTree): Measured values from ADC and TDC (all events)
434
         |== meas_data (TTree): Measured values from ADC and TDC (all events)
435
         |    |
435
         |    |
436
         |    |== ADC0 (TBranch): All events from ADC channel 0 saved in order
436
         |    |== ADC0 (TBranch): All events from ADC channel 0 saved in order
437
         |    |== TDC0 (TBranch): All events from TDC channel 0 saved in order
437
         |    |== TDC0 (TBranch): All events from TDC channel 0 saved in order
438
         |    |== ADC1 (TBranch): All events from ADC channel 1 saved in order
438
         |    |== ADC1 (TBranch): All events from ADC channel 1 saved in order
439
         |    |== TDC1 (TBranch): All events from TDC channel 1 saved in order
439
         |    |== TDC1 (TBranch): All events from TDC channel 1 saved in order
440
         |    |== ... (TBranch): Additional channels up to 8 (0-7) in total
440
         |    |== ... (TBranch): Additional channels up to 8 (0-7) in total
441
         |
441
         |
442
         |== scope_data (TTree, optional): Measured values from the oscilloscope
442
         |== scope_data (TTree, optional): Measured values from the oscilloscope
443
              |
443
              |
444
              |== measdata (TBranch): Currently in development
444
              |== measdata (TBranch): Currently in development
445
 
445
 
446
 
446
 
447
The easiest way to get the data is to create structures:
447
The easiest way to get the data is to create structures:
448
 
448
 
449
        struct EventHeader {
449
        struct EventHeader {
450
          int nrch;
450
          int nrch;
451
          int timestamp;
451
          int timestamp;
452
          double biasvolt;
452
          double biasvolt;
453
          int xpos;
453
          int xpos;
454
          int ypos;
454
          int ypos;
455
          int zpos;
455
          int zpos;
456
          double temperature;
456
          double temperature;
457
          double angle;
457
          double angle;
458
          char laserinfo[256];
458
          char laserinfo[256];
459
        } evtheader;
459
        } evtheader;
460
 
460
 
461
        struct EventData {
461
        struct EventData {
462
          int adcdata[8];
462
          int adcdata[8];
463
          int tdcdata[8];
463
          int tdcdata[8];
464
        } evtdata;
464
        } evtdata;
465
 
465
 
466
        struct EventMeas {
466
        struct EventMeas {
467
          double measdata;
467
          double measdata;
468
        } evtmeas;
468
        } evtmeas;
469
 
469
 
470
 
470
 
471
Then opening the file:
471
Then opening the file:
472
 
472
 
473
        TFile* inputfile = TFile::Open("filename.root","READ");
473
        TFile* inputfile = TFile::Open("filename.root","READ");
474
 
474
 
475
Then getting separate information:
475
Then getting separate information:
476
- for instance for reading the bias voltage from header:
476
- for instance for reading the bias voltage from header:
477
 
477
 
478
        TTree* sometree;
478
        TTree* sometree;
479
        inputfile->GetObject("header_data", sometree);
479
        inputfile->GetObject("header_data", sometree);
480
        sometree->SetBranchAddress("biasvolt", &evtheader.biasvolt);
480
        sometree->SetBranchAddress("biasvolt", &evtheader.biasvolt);
481
        sometree->GetEntry(0);
481
        sometree->GetEntry(0);
482
 
482
 
483
- for instance for reading all ADC and TDC events in a file from channel 1 (ADC0):
483
- for instance for reading all ADC and TDC events in a file from channel 1 (ADC0):
484
 
484
 
485
        TTree* sometree;
485
        TTree* sometree;
486
        inputfile->GetObject("meas_data", sometree);
486
        inputfile->GetObject("meas_data", sometree);
487
        char selectedCh[256];
487
        char selectedCh[256];
488
        for(int i = 0; i < sometree->GetEntries(); i++)
488
        for(int i = 0; i < sometree->GetEntries(); i++)
489
        {
489
        {
490
          sprintf(selectedCh, "ADC%d", 0);
490
          sprintf(selectedCh, "ADC%d", 0);
491
          sometree->SetBranchAddress(selectedCh, &evtdata.adcdata[i]);
491
          sometree->SetBranchAddress(selectedCh, &evtdata.adcdata[i]);
492
          sometree->GetEntry(i);
492
          sometree->GetEntry(i);
493
 
493
 
494
          sprintf(selectedCh, "TDC%d", 0);
494
          sprintf(selectedCh, "TDC%d", 0);
495
          sometree->SetBranchAddress(selectedCh, &evtdata.tdcdata[i]);
495
          sometree->SetBranchAddress(selectedCh, &evtdata.tdcdata[i]);
496
          sometree->GetEntry(i);
496
          sometree->GetEntry(i);
497
        }
497
        }
498
 
498
 
499
______________________________
499
______________________________
500
6b. Opening measurement files:
500
6b. Opening measurement files:
501
 
501
 
502
The sipmscan software has internal handling for saving and opening measurement files. To open these files for an analysis, use
502
The sipmscan software has internal handling for saving and opening measurement files. To open these files for an analysis, use
503
the File selection button in the Histogram file selection window (Analysis tab). Once the file or files are opened, it is possible
503
the File selection button in the Histogram file selection window (Analysis tab). Once the file or files are opened, it is possible
504
to double click a file on the list to display its histogram. The histogram can then be manipulated by changing ADC or TDC ranges,
504
to double click a file on the list to display its histogram. The histogram can then be manipulated by changing ADC or TDC ranges,
505
or changing the type of displayed histogram (ADC, TDC ADC versus TDC).
505
or changing the type of displayed histogram (ADC, TDC ADC versus TDC).
506
 
506
 
507
Each of the selected files has a display of its header below the file list in order to quickly determine at what conditions and
507
Each of the selected files has a display of its header below the file list in order to quickly determine at what conditions and
508
when this measurement was taken. If there are any problems with the header, modifications can be performed with the Edit header
508
when this measurement was taken. If there are any problems with the header, modifications can be performed with the Edit header
509
button.
509
button.
510
 
510
 
511
After that analysis on the measurements can be performed, based on the selected ranges for ADC and TDC (note that each measured
511
After that analysis on the measurements can be performed, based on the selected ranges for ADC and TDC (note that each measured
512
event has a ADC and TDC channel value saved to the file).
512
event has a ADC and TDC channel value saved to the file).
513
 
513
 
514
=================
514
=================
515
= 7. Analysis ===
515
= 7. Analysis ===
516
=================
516
=================
517
 
517
 
518
The sipmscan software already includes a number of analysis options:
518
The sipmscan software already includes a number of analysis options:
519
- Plotting ADC (Analog-to-Digital Converter) spectrum, TDC (Time-to-Digital Converter) spectrum and ADC versus TDC 2D plots.
519
- Plotting ADC (Analog-to-Digital Converter) spectrum, TDC (Time-to-Digital Converter) spectrum and ADC versus TDC 2D plots.
520
- Fitting of ADC spectrum photon equivalent peaks.
520
- Fitting of ADC spectrum photon equivalent peaks.
521
- ADC spectrum integration: Single or along X or Y directions (for edge scans).
521
- ADC spectrum integration: Single or along X or Y directions (for edge scans).
522
- Relative Photon Detection Efficiency: Efficiency of sample relative to incidence angle.
522
- Relative Photon Detection Efficiency: Efficiency of sample relative to incidence angle.
523
- Breakdown voltage: Determination of silicon detector breakdown voltage through ADC spectrum photon peak separation (gain).
523
- Breakdown voltage: Determination of silicon detector breakdown voltage through ADC spectrum photon peak separation (gain).
524
- Surface scan: Production of a 2D plot by integrating the ADC spectrum in each laser position.
524
- Surface scan: Production of a 2D plot by integrating the ADC spectrum in each laser position.
525
 
525
 
526
Still to come...
526
Still to come...
527
 
527
 
528
===================
528
===================
529
= 8. Change log ===
529
= 8. Change log ===
530
===================
530
===================
531
 
531
 
532
??.8.2016 (Current Rev)
532
5.10.2016 (Current Rev)
-
 
533
a) Fixed a couple of bugs and layout positions.
-
 
534
b) Added settings files for measurement and analysis settings. With this, everytime a new measurement or a new analysis is
-
 
535
ran, the selected settings are saved to a file. This way, if the program crashes, the selected settings will be automatically
-
 
536
filled in.
-
 
537
 
-
 
538
30.9.2016 (Rev 172):
533
a) Fixed the time estimation for surface and Z-axis scans (TimeEstimateNew).
539
a) Fixed the time estimation for surface and Z-axis scans (TimeEstimateNew).
534
b) Did the same as c) in the previous revision, but separately for opening histogram files and for selecting the measurement
540
b) Did the same as c) in the previous revision, but separately for opening histogram files and for selecting the measurement
535
output file.
541
output file.
536
c) Added an Emergency stop button to the movement of the table - just in case a wrong value is inserted and there is something
542
c) Added an Emergency stop button to the movement of the table - just in case a wrong value is inserted and there is something
537
in the way.
543
in the way.
538
d) Added a way to integrate the surface scan, when using the "Start and Edit" option. This can be useful for determining the
544
d) Added a way to integrate the surface scan, when using the "Start and Edit" option. This can be useful for determining the
539
angular dependence of the light passing onto a complete camera pixel.
545
angular dependence of the light passing onto a complete camera pixel.
540
 
546
 
541
11.8.2016 (Rev 167):
547
11.8.2016 (Rev 167):
542
a) When using breakdown voltage or relative PDE analysis and with only one file selected, the analysis is stopped and the fit
548
a) When using breakdown voltage or relative PDE analysis and with only one file selected, the analysis is stopped and the fit
543
is displayed on the graph. This makes it easier to setup fitting settings.
549
is displayed on the graph. This makes it easier to setup fitting settings.
544
b) Added the possibility to export plots created through analysis ("Start and edit" option).
550
b) Added the possibility to export plots created through analysis ("Start and edit" option).
545
c) Everytime, when opening a histogram file, the following open and save dialog windows automatically open up in that directory.
551
c) Everytime, when opening a histogram file, the following open and save dialog windows automatically open up in that directory.
546
This makes it easier to find the directory that was used last.
552
This makes it easier to find the directory that was used last.
547
d) Added a dropdown list to the Analysis tab, so that it is possible to set position units for plots (table units or microns).
553
d) Added a dropdown list to the Analysis tab, so that it is possible to set position units for plots (table units or microns).
548
e) Normalization to a maximum of 1 now works for surface scans.
554
e) Normalization to a maximum of 1 now works for surface scans.
549
 
555
 
550
4.4.2016 (Rev 146):
556
4.4.2016 (Rev 146):
551
a) Complete restructure of the program, so that it now runs seperately, not through ROOT (libraries are constructed pre-run).
557
a) Complete restructure of the program, so that it now runs seperately, not through ROOT (libraries are constructed pre-run).
552
Program is now split into multiple tabs for easier use, three of which are Measurement, Analysis and Help.
558
Program is now split into multiple tabs for easier use, three of which are Measurement, Analysis and Help.
553
b) Added support for relative PDE measurements with included sample rotation table.
559
b) Added support for relative PDE measurements with included sample rotation table.
554
c) Improvement of analysis part of the program (includes ADC spectrum integration, breakdown voltage characterization, surface
560
c) Improvement of analysis part of the program (includes ADC spectrum integration, breakdown voltage characterization, surface
555
scans, relative PDE characterization,...).
561
scans, relative PDE characterization,...).
556
d) Added tooltips for different parts of the program for quick reference. Use them by hovering over any text entries, number
562
d) Added tooltips for different parts of the program for quick reference. Use them by hovering over any text entries, number
557
entries, check boxes or buttons.
563
entries, check boxes or buttons.
558
e) Connection to temperature data and oscilloscope currently under development.
564
e) Connection to temperature data and oscilloscope currently under development.
559
f) Older version of program moved to https://f9pc00.ijs.si/svn/f9daq/lab/sipmscan/trunk_v0.9 and will no longer be in development.
565
f) Older version of program moved to https://f9pc00.ijs.si/svn/f9daq/lab/sipmscan/trunk_v0.9 and will no longer be in development.
560
 
566
 
561
17.7.2015 (Rev 129):
567
17.7.2015 (Rev 129):
562
a) Fixed a problem with ADC peak fitting (peak fitting returning a segmentation fault).
568
a) Fixed a problem with ADC peak fitting (peak fitting returning a segmentation fault).
563
b) Added support to edit file headers (in case, some were created at an older date and did not include some header information or
569
b) Added support to edit file headers (in case, some were created at an older date and did not include some header information or
564
there was a mistake in writing them).
570
there was a mistake in writing them).
565
c) Temperature data can only be retrieved when connected to the IJS network (IP = 178.172.43.xxx) and is disabled otherwise.
571
c) Temperature data can only be retrieved when connected to the IJS network (IP = 178.172.43.xxx) and is disabled otherwise.
566
d) The relative PDE measurement now takes the incidence angle value directly from input files.
572
d) The relative PDE measurement now takes the incidence angle value directly from input files.
567
e) Currently, data acquisition only works on 32bit computers.
573
e) Currently, data acquisition only works on 32bit computers.
568
f) Fixed issue with program not correctly writting multiple channels.
574
f) Fixed issue with program not correctly writting multiple channels.
569
 
575
 
570
5.5.2015 (Rev 128):
576
5.5.2015 (Rev 128):
571
a) Added a header display for opened files in the histogram file selection window. This enables a quicker view of the measurement
577
a) Added a header display for opened files in the histogram file selection window. This enables a quicker view of the measurement
572
information.
578
information.
573
b) Added an incidence angle input to be able to save sample rotation angle to headers of files.
579
b) Added an incidence angle input to be able to save sample rotation angle to headers of files.
574
c) Added support for the fieldpoint temperature sensor (FP RTD 122). Can now plot and export data from the sensor for a specific
580
c) Added support for the fieldpoint temperature sensor (FP RTD 122). Can now plot and export data from the sensor for a specific
575
channel and specific time range. For now, this option only works if the PC you are using this program on is connected to an
581
channel and specific time range. For now, this option only works if the PC you are using this program on is connected to an
576
internet/ethernet connection at IJS.
582
internet/ethernet connection at IJS.
577
d) Added a limited relative PDE analysis option. At this time, it takes the selected files and calculates the PDE, relative to
583
d) Added a limited relative PDE analysis option. At this time, it takes the selected files and calculates the PDE, relative to
578
the first selected file. The first file should be measured at incidence angle 0, with others having an incidence angle shift of
584
the first selected file. The first file should be measured at incidence angle 0, with others having an incidence angle shift of
579
+15 (1st file -> 0, 2nd file -> 15, 3rd file -> 30,...).
585
+15 (1st file -> 0, 2nd file -> 15, 3rd file -> 30,...).
580
 
586
 
581
9.4.2015 (Rev 127):
587
9.4.2015 (Rev 127):
582
a) Added communications panel for connecting to a Tektronix scope.
588
a) Added communications panel for connecting to a Tektronix scope.
583
b) Added limited support for waveform analysis with a Tektronix scope. For now, it only works when linking it to CAMAC acquisition.
589
b) Added limited support for waveform analysis with a Tektronix scope. For now, it only works when linking it to CAMAC acquisition.
584
c) Added a manual chamber temperature entry field.
590
c) Added a manual chamber temperature entry field.
585
 
591
 
586
16.3.2015 (Rev 117):
592
16.3.2015 (Rev 117):
587
a) First version of sipmscan.
593
a) First version of sipmscan.
588
b) Added support for CAMAC, bias voltage settings and table position settings.
594
b) Added support for CAMAC, bias voltage settings and table position settings.
589
c) Added support for opening measured histograms.
595
c) Added support for opening measured histograms.
590
d) Added support for analysis:
596
d) Added support for analysis:
591
   - making surface plots
597
   - making surface plots
592
   - fitting the ADC spectrum
598
   - fitting the ADC spectrum
593
   - creating breakdown voltage plots
599
   - creating breakdown voltage plots
594
   - integrating the ADC spectrum with changing X or Y direction (edge scans)
600
   - integrating the ADC spectrum with changing X or Y direction (edge scans)