Project

General

Profile

Wiki » History » Version 17

Sho Nagao, 04/10/2025 03:06 AM

1 1 Alexandre Camsonne
h1. Wiki
2
3 16 Sho Nagao
h3. Contact
4
5
* Sho Nagao (Responsible person, DAQ, snagao@jlab.org, sho.nagao@nex.phys.s.u-tokyo.ac.jp)
6
* Alexandre Camsonne (JLab manager, camsonne@jlab.org)
7
* Ken Nishida (Detector, ken.nishida@nex.phys.s.u-tokyo.ac.jp)
8
* Ravindu Kumaragamage (Detector, ravindu@jlab.org)
9
10 17 Sho Nagao
h3. Information
11
* Wiki (this page)
12
* Shift Table
13
* Beamtime Log Note
14 16 Sho Nagao
15
h3. For shift personel
16 17 Sho Nagao
* hogehoge
17
18
h3. For expert
19 16 Sho Nagao
20
This section describes DAQ operations during beamtime. For more information, check "How to operate new-firmware EASIROC and RaspberryPi".
21
*_NOTE: Never open multiple Controller.rb. Before open it, check running jobs with "ps x" command._*
22
*Procedure*
23
# Login to the RaspberryPi.
24
#* @ssh -Y nex@129.57.193.11@
25
# Open tmux window.
26
#* @tmux a -t Controller@
27
# Execute ruby script. The current directory should be "/home/nex/NIM_EASIROC/controller".
28
#* @./Controller.rb@
29
# Increase HV. *_NOTE:"Tab" doesn't work on Controller.rb._*
30
#* @increaseHV 56.0@     
31
# Check HV. Typical V / A = 55.97V / 7.2 uA.
32
#* @statusHV@
33
# Set DAQ mode.
34
#* @adc on@
35
#* @tdc on@
36
#* @scaler on@
37
# Start DAQ. If you want to stop, type @stop@ during data taking. This "stop" command does not work while "Reading monitor ADC" or "Switching now" is in progress. Please enter it when the progress bar is moving.
38
#* @readloop@
39
# Exit the script if you want.
40
#* @exit@
41
# If you want to close tmux terminal, type
42
#* Ctrl+b, d
43
44
*MEMO for tmux beginners*
45
* Check tmux list @tmux ls@
46
* Open new session @tmux new -s session_name@
47
* Open running session @tmux a -t session_name@
48
* Detach tmux session @Ctrl+b, d@
49
* Close tmux session @exit@
50
51
Data (.dat), compressed data (.tar.xz), log (.log), and run settings (runlist.csv) are automatically generated in the data directory. The shift person simply checks to see if the data collection is working. If it is working as usual, "readloop" will automatically collect the data without doing anything.
52
If you find anything strange, please contact Alex, Sho and Ken.
53
54
55 4 Ken Nishida
h3. List of equipement from Japan
56 1 Alexandre Camsonne
57 4 Ken Nishida
# SiPM 3ch Box    Qty.4
58
# Special 30m LAN cable    Qty.4
59
# Raspberry Pi5     Qty.1
60
# 7 inch Monitor     Qty.1
61
# USB-LAN connector      Qty.1
62
# Standard LAN cable      Qty.2
63
# NIM EASIROC     Qty.1
64
# TTL-NIM-TTL 8ch module    Qty.1 (https://www.kagaku.com/hoshin/n002.html,  1ch TTLtoNIM, 4ch NIM-TTL will be used)
65
# 2ch Gate&Delay Module    Qty.2 (http://www.tcnland.co.jp/archives/product_type/gatedelaygenerator_n-tm_307,  4ch G&D will be used)
66
# 4ch logic fan I/O    Qty.1 (http://www.tcnland.co.jp/archives/product_type/fanin%EF%BC%8Ffanout_n-tm_102,  2ch will be used)
67 1 Alexandre Camsonne
68
The SiPM is 3ch SiPM Box x 4 = 12 ch total. All SiPM can be handled by the adobe items.
69
For 8.~10., please arrange for spare modules in case the modules sent from Japan are defective. Equivalent products are fine.
70
We were unable to handle the detector well due to the effects of noise and crosstalk from TTL with standard cat.7 LAN cables or ECL Flat cables. We will provide a cable with an additional shield on the cat.7 cable.
71
72
73
74 4 Ken Nishida
h3. Old map of Hall A for previous SBS experiment
75 1 Alexandre Camsonne
76 4 Ken Nishida
# https://userweb.jlab.org/~efuchey/SBS_BB/Pictures/GlobalPlanHallAFloor_lowBBangle.pdf
77
# https://redmine.jlab.org/documents/118
78
79
80
81 6 Ken Nishida
h3. How to operate new-firmware EASIROC and RaspberryPi
82 5 Ken Nishida
83
# Access to RaspberryPi
84
* IP address : 129.57.193.11
85
* Password : Please ask Ken
86
* Can access via JLab hall-gateway
87
* RasbberryPi controls EASIROC, edits EASIROC parameter files, saves aquired data by EASIROC, and outputs TTL signal for LED.
88 1 Alexandre Camsonne
89 6 Ken Nishida
# Turn on LED in SiPM Boxes
90
* Each SiPM box has LED so that we can see 1p.e. level signal clearly.
91
* LEDs flash by sending TTL signal from RaspberryPi via BNC cable at 200Hz. This TTL signal is also used for DAQ trigger.
92 11 Ken Nishida
* Execute @python gpio_led.py@ to start sending TTL and turning on LED. While executing @gpio_led.py@, you can see TTL signal on oscilloscope ch1.
93
* Execute @python gpio_pedestal.py@ to take ADC pedestal data. While executing @gpio_pedestal.py@, you cannot see TTL signal on oscilloscope.
94 6 Ken Nishida
* LED emission intensity is very sensitive to width and amplitude of TTL signal. Ken has already adjusted it, so please don't touch NIM gate& delay generator and variable register. 
95
* You can edit @GPIO.py@ script and select @Pedestal mode@/ @LED mode@. In @Pedestal mode@, you will aquire only pedestal data (without 1p.e. signal), while in @LED mode@, you will aquire 1p.e. data. 
96
97 5 Ken Nishida
# Boot EASIROC 
98
* Confirm power supply to NIM crate, RaspberryPi is OK
99
* Once power is supplied to EASIROC correctly, LED1 at the bottom of EASIROC module turns red
100
* Main directory of EASIROC operation files on RaspberryPi
101
  @cd ~/EASIROC@ : main directory
102
  @Controller.rb@ : EASIROC controller script
103
  @GPIO.py@ : TTL signal for LED
104
  @yaml@ : EASIROC parameter files. @RegisterValue.yaml@ is the only parameter file we need to edit.
105
  @data@ : Data files (both .dat & .root). Once DAQ is completed, both rawdata(.dat) and decoded root file(.root) are output automatically in this directory. 
106
* Boot EASIROC (IP: @192.168.10.21@ )
107
  @./Controller.rb [IP address]@
108
109
# Command to operate EASIROC
110
* @./Controller.rb [IP address]@ will open interactive EASIROC controller.
111
* @help@ command will show available interactive commands
112
* Basic commands we will use are:
113
<pre>
114
 setHV [bias voltage] : Set SiPM HV as [bias voltage] value.
115
 statusHV : Show HV & current value on SiPMs.
116
 slowcontrol : Reflect changes on slow-controller setting (every time after you edit RegisterValue.yaml ).
117
 tdc on/off : TDC data taking ON/OFF. You can basically set as "ON".
118
 adc on/off : ADC data taking ON/OFF. You can basically set as "ON".
119
 scaler on/off : Scaler data taking ON/OFF. You can basically set as "ON".
120
 read [EventNumber] [Filename] : Start data taking. Data taking will go at 200Hz and EventNum around 10000-50000 looks fine. Filename is currently like "test000x.dat". 
121
</pre> 
122
123
* Caution0: EASIROC is ASIC module and is very weak for example against over-current caused by your wrong HV operation. Please be careful when you operate EASIROC not to break it, and please ask Ken if you have something unclear before doing it.  
124
125
* Caution1: When setting SiPM HV, you should increase SIPM HV gradually like 0V->20V->40V->50V->53V->54.5V. You can see 1p.e. signals from SiPM at 53V. If you cannot see the signals at 53V, you have some mistakes or troubles like HV line is not connected correctly. Also, be careful not to set  SiPM HV larger than 56V. Please check your input value every time you use @setHV@ command. HV will be enough at around 54.5V or 55.0V. Please check HV & current status frequently with @statusHV@ command.
126
127
* Caution2: Every time before disconnecting HV line or shutting down EASIROC, you should decrease SiPM HV gradually with @setHV@ command. Don't cut off HV suddenly.
128
129 1 Alexandre Camsonne
* Caution3: Sometimes, EASIROC interactive mode may unexpectedly and suddenly closed while you are operating it. Basically, EASIROC is designed to decrease HV gradually in even such cases not to damage SiPM and EASIROC itself. So, you don't worry about it too much, but please let Ken know if some troubles happen.
130 6 Ken Nishida
131 8 Ken Nishida
# Edit EASIROC parameter file
132
* By editing @RegisterValue.yaml@, you can change some shaping parameter in EASIROC. However, only you need to change may be EASIROC channel you want to monitor signal with oscilloscope.
133 12 Ken Nishida
* @RegisterValue.yaml@ is like as below:
134
<pre>
135
EASIROC1:
136
        Capacitor HG PA Fdbck: 200fF
137
        Capacitor LG PA Fdbck: 200fF
138
        Time Constant HG Shaper: 150ns
139
        Time Constant LG Shaper: 100ns
140
        DAC code: 700
141
142
EASIROC2:
143
        Capacitor HG PA Fdbck: same
144
        Capacitor LG PA Fdbck: same
145
        Time Constant HG Shaper: same
146
        Time Constant LG Shaper: same
147
        DAC code: same
148
149
High Gain Channel 1: 4
150
High Gain Channel 2: -1
151
Probe Channel 1: 4
152
Probe Channel 2: -1
153
Probe 1: Out_fs
154
Probe 2: Out_fs #Out_PA_HG,Out_PA_LG,Out_ssh_HG,Out_ssh_LG,Out_fs
155
SelectableLogic: 
156
        Pattern: Or64 #OneCh_#,Or32u,Or32d,Or64,Or32And,Or16And,And32u,And32d,And64,And32Or
157
        HitNum Threshold: 4 # Threshold for each OR logic. 0~64. Default: 0
158
        And Channels: -1 # Cannels used in And Logic. 0~63. Default: -1
159
TimeWindow: 4095ns
160
UsrClkOut: "OFF" #"OFF","ON",1Hz,10Hz,100Hz,1kHz.10kHz,100kHz,3MHz,25MHz
161
Trigger:  ## This "Trigger" values are not used for this version.
162
        Mode: 0  #0-7
163
        DelayTrigger: -1  #500MHz #default:-1, 0-253 #trig -> hold -> l1 -> l2
164
        DelayHold: -1     #25MHz
165
        DelayL1Trig: -1   #6MHz
166
        Width: raw  
167
</pre>
168
In this script,
169 15 Ken Nishida
@HG Channle 1 : [channel number]@ is output channel of HG Out 1 from the front panel of EASIROC module. HG Out 1 is set so that you can monitor Slow-sheper analog output from each channel.
170
@Probe 1 : [channel number]@ is output channel of Probe 1 from the front panel of EASIROC module. Probe 1 is set so that you can monitor Fast-sheper analog output from each channel.
171
172 8 Ken Nishida
* For example, when checking signal of Box2, you can edit @RegisterValue.yaml@ as @HG Channle 1 : 4@ and @Probe 1 : 4@ to monitor fast/slow shaper analog signal from channel 4 (=MPPC4) with oscilloscope. Don't forget @slowcontrol@ command to reflect the change.
173 6 Ken Nishida
174 14 Ken Nishida
175
176
177 7 Ken Nishida
h3. Signal line & HV line connection 
178 13 Ken Nishida
179 14 Ken Nishida
# Connection around EASIROC module
180 1 Alexandre Camsonne
* We have 4 SiPM boxes and 
181
!connection1.png!
182
183 14 Ken Nishida
# Channel assign of MPPC/EASIROC
184
|_.BOX|\3. BOX1|\3. BOX2|\3. BOX3|\3. BOX4|
185
|TTL (BNC cable)|\3. TTL1|\3. TTL2|\3. TTL3|\3. TTL4|
186
|Signal&HV line(LAN cable)|\3. LAN1|\3. LAN2|\3. LAN3|\3. LAN4|
187
|MPPC|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |
188
|EASIROC ch|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |
189 1 Alexandre Camsonne
190 7 Ken Nishida
191 8 Ken Nishida
h3. Check signals with oscilloscope
192 9 Ken Nishida
193
# How SiPM signals are processed inside EASIROC
194
* EASIROC is ASIC-based stand-alone DAQ module. It can amp.&shaping SiPM raw analog signal, and it extracts TDC, ADC, Scaler data inside itself(stand-alone). Already processed 64-bit(?) data is sent from EASIROC to RaspberryPi.
195 7 Ken Nishida
!signal1.png!
196
197
# 4ch oscilloscope  is assigned as followed:
198 1 Alexandre Camsonne
<pre>
199
ch1: (50ohm impedance, 1V/div.) TTL signal from RaspberryPi -> use oscilloscope trigger
200 7 Ken Nishida
ch2: (1Mohm impedance, 50mV/div.) Fast-shaper analog output from EASIROC 
201
ch3: (1Mohm impedance, 50mV/div.) Slow-shaper analog output from EASIROC
202
ch4: (50ohm impedance, 1V/div.) Hold timing signal
203 6 Ken Nishida
As for orizontal scale, around 200ns/div will be good.  
204 10 Ken Nishida
</pre>
205
206 14 Ken Nishida
h3. How to remove noise on SiPM signal
207
!shielding.png!