Project

General

Profile

Wiki » History » Version 16

Sho Nagao, 04/07/2025 04:16 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
11
h3. For shift personel
12
13
This section describes DAQ operations during beamtime. For more information, check "How to operate new-firmware EASIROC and RaspberryPi".
14
*_NOTE: Never open multiple Controller.rb. Before open it, check running jobs with "ps x" command._*
15
*Procedure*
16
# Login to the RaspberryPi.
17
#* @ssh -Y nex@129.57.193.11@
18
# Open tmux window.
19
#* @tmux a -t Controller@
20
# Execute ruby script. The current directory should be "/home/nex/NIM_EASIROC/controller".
21
#* @./Controller.rb@
22
# Increase HV. *_NOTE:"Tab" doesn't work on Controller.rb._*
23
#* @increaseHV 56.0@     
24
# Check HV. Typical V / A = 55.97V / 7.2 uA.
25
#* @statusHV@
26
# Set DAQ mode.
27
#* @adc on@
28
#* @tdc on@
29
#* @scaler on@
30
# 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.
31
#* @readloop@
32
# Exit the script if you want.
33
#* @exit@
34
# If you want to close tmux terminal, type
35
#* Ctrl+b, d
36
37
*MEMO for tmux beginners*
38
* Check tmux list @tmux ls@
39
* Open new session @tmux new -s session_name@
40
* Open running session @tmux a -t session_name@
41
* Detach tmux session @Ctrl+b, d@
42
* Close tmux session @exit@
43
44
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.
45
If you find anything strange, please contact Alex, Sho and Ken.
46
47
48 4 Ken Nishida
h3. List of equipement from Japan
49 1 Alexandre Camsonne
50 4 Ken Nishida
# SiPM 3ch Box    Qty.4
51
# Special 30m LAN cable    Qty.4
52
# Raspberry Pi5     Qty.1
53
# 7 inch Monitor     Qty.1
54
# USB-LAN connector      Qty.1
55
# Standard LAN cable      Qty.2
56
# NIM EASIROC     Qty.1
57
# TTL-NIM-TTL 8ch module    Qty.1 (https://www.kagaku.com/hoshin/n002.html,  1ch TTLtoNIM, 4ch NIM-TTL will be used)
58
# 2ch Gate&Delay Module    Qty.2 (http://www.tcnland.co.jp/archives/product_type/gatedelaygenerator_n-tm_307,  4ch G&D will be used)
59
# 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)
60 1 Alexandre Camsonne
61
The SiPM is 3ch SiPM Box x 4 = 12 ch total. All SiPM can be handled by the adobe items.
62
For 8.~10., please arrange for spare modules in case the modules sent from Japan are defective. Equivalent products are fine.
63
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.
64
65
66
67 4 Ken Nishida
h3. Old map of Hall A for previous SBS experiment
68 1 Alexandre Camsonne
69 4 Ken Nishida
# https://userweb.jlab.org/~efuchey/SBS_BB/Pictures/GlobalPlanHallAFloor_lowBBangle.pdf
70
# https://redmine.jlab.org/documents/118
71
72
73
74 6 Ken Nishida
h3. How to operate new-firmware EASIROC and RaspberryPi
75 5 Ken Nishida
76
# Access to RaspberryPi
77
* IP address : 129.57.193.11
78
* Password : Please ask Ken
79
* Can access via JLab hall-gateway
80
* RasbberryPi controls EASIROC, edits EASIROC parameter files, saves aquired data by EASIROC, and outputs TTL signal for LED.
81 1 Alexandre Camsonne
82 6 Ken Nishida
# Turn on LED in SiPM Boxes
83
* Each SiPM box has LED so that we can see 1p.e. level signal clearly.
84
* LEDs flash by sending TTL signal from RaspberryPi via BNC cable at 200Hz. This TTL signal is also used for DAQ trigger.
85 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.
86
* Execute @python gpio_pedestal.py@ to take ADC pedestal data. While executing @gpio_pedestal.py@, you cannot see TTL signal on oscilloscope.
87 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. 
88
* 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. 
89
90 5 Ken Nishida
# Boot EASIROC 
91
* Confirm power supply to NIM crate, RaspberryPi is OK
92
* Once power is supplied to EASIROC correctly, LED1 at the bottom of EASIROC module turns red
93
* Main directory of EASIROC operation files on RaspberryPi
94
  @cd ~/EASIROC@ : main directory
95
  @Controller.rb@ : EASIROC controller script
96
  @GPIO.py@ : TTL signal for LED
97
  @yaml@ : EASIROC parameter files. @RegisterValue.yaml@ is the only parameter file we need to edit.
98
  @data@ : Data files (both .dat & .root). Once DAQ is completed, both rawdata(.dat) and decoded root file(.root) are output automatically in this directory. 
99
* Boot EASIROC (IP: @192.168.10.21@ )
100
  @./Controller.rb [IP address]@
101
102
# Command to operate EASIROC
103
* @./Controller.rb [IP address]@ will open interactive EASIROC controller.
104
* @help@ command will show available interactive commands
105
* Basic commands we will use are:
106
<pre>
107
 setHV [bias voltage] : Set SiPM HV as [bias voltage] value.
108
 statusHV : Show HV & current value on SiPMs.
109
 slowcontrol : Reflect changes on slow-controller setting (every time after you edit RegisterValue.yaml ).
110
 tdc on/off : TDC data taking ON/OFF. You can basically set as "ON".
111
 adc on/off : ADC data taking ON/OFF. You can basically set as "ON".
112
 scaler on/off : Scaler data taking ON/OFF. You can basically set as "ON".
113
 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". 
114
</pre> 
115
116
* 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.  
117
118
* 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.
119
120
* 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.
121
122 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.
123 6 Ken Nishida
124 8 Ken Nishida
# Edit EASIROC parameter file
125
* 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.
126 12 Ken Nishida
* @RegisterValue.yaml@ is like as below:
127
<pre>
128
EASIROC1:
129
        Capacitor HG PA Fdbck: 200fF
130
        Capacitor LG PA Fdbck: 200fF
131
        Time Constant HG Shaper: 150ns
132
        Time Constant LG Shaper: 100ns
133
        DAC code: 700
134
135
EASIROC2:
136
        Capacitor HG PA Fdbck: same
137
        Capacitor LG PA Fdbck: same
138
        Time Constant HG Shaper: same
139
        Time Constant LG Shaper: same
140
        DAC code: same
141
142
High Gain Channel 1: 4
143
High Gain Channel 2: -1
144
Probe Channel 1: 4
145
Probe Channel 2: -1
146
Probe 1: Out_fs
147
Probe 2: Out_fs #Out_PA_HG,Out_PA_LG,Out_ssh_HG,Out_ssh_LG,Out_fs
148
SelectableLogic: 
149
        Pattern: Or64 #OneCh_#,Or32u,Or32d,Or64,Or32And,Or16And,And32u,And32d,And64,And32Or
150
        HitNum Threshold: 4 # Threshold for each OR logic. 0~64. Default: 0
151
        And Channels: -1 # Cannels used in And Logic. 0~63. Default: -1
152
TimeWindow: 4095ns
153
UsrClkOut: "OFF" #"OFF","ON",1Hz,10Hz,100Hz,1kHz.10kHz,100kHz,3MHz,25MHz
154
Trigger:  ## This "Trigger" values are not used for this version.
155
        Mode: 0  #0-7
156
        DelayTrigger: -1  #500MHz #default:-1, 0-253 #trig -> hold -> l1 -> l2
157
        DelayHold: -1     #25MHz
158
        DelayL1Trig: -1   #6MHz
159
        Width: raw  
160
</pre>
161
In this script,
162 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.
163
@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.
164
165 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.
166 6 Ken Nishida
167 14 Ken Nishida
168
169
170 7 Ken Nishida
h3. Signal line & HV line connection 
171 13 Ken Nishida
172 14 Ken Nishida
# Connection around EASIROC module
173 1 Alexandre Camsonne
* We have 4 SiPM boxes and 
174
!connection1.png!
175
176 14 Ken Nishida
# Channel assign of MPPC/EASIROC
177
|_.BOX|\3. BOX1|\3. BOX2|\3. BOX3|\3. BOX4|
178
|TTL (BNC cable)|\3. TTL1|\3. TTL2|\3. TTL3|\3. TTL4|
179
|Signal&HV line(LAN cable)|\3. LAN1|\3. LAN2|\3. LAN3|\3. LAN4|
180
|MPPC|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |
181
|EASIROC ch|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |
182 1 Alexandre Camsonne
183 7 Ken Nishida
184 8 Ken Nishida
h3. Check signals with oscilloscope
185 9 Ken Nishida
186
# How SiPM signals are processed inside EASIROC
187
* 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.
188 7 Ken Nishida
!signal1.png!
189
190
# 4ch oscilloscope  is assigned as followed:
191 1 Alexandre Camsonne
<pre>
192
ch1: (50ohm impedance, 1V/div.) TTL signal from RaspberryPi -> use oscilloscope trigger
193 7 Ken Nishida
ch2: (1Mohm impedance, 50mV/div.) Fast-shaper analog output from EASIROC 
194
ch3: (1Mohm impedance, 50mV/div.) Slow-shaper analog output from EASIROC
195
ch4: (50ohm impedance, 1V/div.) Hold timing signal
196 6 Ken Nishida
As for orizontal scale, around 200ns/div will be good.  
197 10 Ken Nishida
</pre>
198
199 14 Ken Nishida
h3. How to remove noise on SiPM signal
200
!shielding.png!