Skip to content

Commit a4a9276

Browse files
authored
Merge pull request #57 from spice-herald/lbl_update
LBL updates
2 parents 7c20909 + c6f16c5 commit a4a9276

File tree

9 files changed

+234
-123
lines changed

9 files changed

+234
-123
lines changed

bin/controller.py

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -297,17 +297,28 @@
297297

298298

299299
if args.signal_gen_voltage_mV is not None:
300-
300+
301301
# write to sg
302+
print(f'INFO: Setting amplitude to {args.signal_gen_voltage_mV} mV')
303+
302304
if args.signal_gen_voltage_mV is not nan:
303-
304-
print(f'INFO: Setting amplitude to {args.signal_gen_voltage_mV} mV')
305-
306-
myinstruments.set_signal_gen_params(
307-
voltage=float(args.signal_gen_voltage_mV),
308-
voltage_unit='mV'
305+
306+
if channels:
307+
308+
for chan in channels:
309+
myinstruments.set_signal_gen_params(
310+
detector_channel=chan,
311+
voltage=float(args.signal_gen_voltage_mV),
312+
voltage_unit='mV'
313+
)
314+
else:
315+
myinstruments.set_signal_gen_params(
316+
voltage=float(args.signal_gen_voltage_mV),
317+
voltage_unit='mV'
309318
)
310-
319+
else:
320+
print('ERROR: voltage is NaN. Doing nothing...')
321+
311322
# read from board
312323
readback = myinstruments.get_signal_gen_params()
313324

@@ -331,12 +342,23 @@
331342
# write to board
332343
if args.signal_gen_offset_mV is not nan:
333344
print(f'INFO: Setting offset to {args.signal_gen_offset_mV} mV')
345+
346+
347+
if channels:
348+
for chan in channels:
349+
myinstruments.set_signal_gen_params(
350+
detector_channel=chan,
351+
offset=args.signal_gen_offset_mV,
352+
offset_unit='mV'
353+
)
354+
else:
355+
myinstruments.set_signal_gen_params(
356+
offset=args.signal_gen_offset_mV,
357+
offset_unit='mV'
358+
)
359+
else:
360+
print('ERROR: offset value is NaN. Doing nothing...')
334361

335-
myinstruments.set_signal_gen_params(
336-
offset=args.signal_gen_offset_mV,
337-
offset_unit='mV'
338-
)
339-
340362
# read from board
341363
readback = myinstruments.get_signal_gen_params()
342364

pytesdaq/config/iv_didv.ini.example_lbl

Lines changed: 63 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,21 +14,60 @@ use_negative_tes_bias = false
1414
use_tes_bias_vect = false
1515

1616
# bias vect [uA]
17-
tes_bias_vect = 0,4,8,12,15,18,20,22,24,26,28,30,32,34,36,38,44,48,52,60,70,80,100,140,180,210,240,280,300,350,400,450,500,1000
17+
#tes_bias_vect = 100, 50,20,10,5,1
1818

1919
# min/max/steps [all in muAmps]
2020
# 100x25: 400,0,80,20,40,5,5
2121
# 800x200: 2000,0,400,100,200,25,25
2222
# 1%: 1500,0,250,75,250,15,15
2323
# Ch1 4%: 2000,0,1000,250,250,30,25
2424
# Ch4 4%: 400,0,200,50,50,6,5
25-
tes_bias_max = 2000
25+
26+
#bias parameters used on 3/3/25 (for channel 7
27+
#tes_bias_max = 1100
28+
#tes_bias_min = 0
29+
#tes_bias_T = 300
30+
#tes_bias_SC = 10
31+
#tes_bias_step_N = 200
32+
#tes_bias_step_T = 20
33+
#tes_bias_step_SC = 3
34+
35+
#bias parameters used to run IV for all dry channels (run24)
36+
#tes_bias_max = 1500
37+
#tes_bias_min = 0
38+
#tes_bias_T = 400
39+
#tes_bias_SC = 50
40+
#tes_bias_step_N = 200
41+
#tes_bias_step_T = 14
42+
#tes_bias_step_SC = 10
43+
44+
#Run 24 modification for the SQUID tests
45+
tes_bias_max = 1500
2646
tes_bias_min = 0
27-
tes_bias_T = 750
28-
tes_bias_SC = 300
29-
tes_bias_step_N = 250
30-
tes_bias_step_T = 50
31-
tes_bias_step_SC = 30
47+
tes_bias_T = 300
48+
tes_bias_SC = 50
49+
tes_bias_step_N = 200
50+
tes_bias_step_T = 14
51+
tes_bias_step_SC = 10
52+
53+
#Mini dIdV taken 3/12 at 14.3 SL condensed
54+
#tes_bias_max = 247.26
55+
#tes_bias_min = 244.26
56+
#tes_bias_T = 246.26
57+
#tes_bias_SC = 245.126
58+
#tes_bias_step_N = 1
59+
#tes_bias_step_T = 1
60+
#tes_bias_step_SC = 1
61+
62+
#test parameters for short runs
63+
#tes_bias_max = 120
64+
#tes_bias_min = 117
65+
#tes_bias_T = 119
66+
#tes_bias_SC = 118
67+
#tes_bias_step_N = 1
68+
#tes_bias_step_T = 1scp -r ./run21/raw/didv_I4_D20241219_T175712/ wmatava@tessy.lbl.gov:/data/lbl/run21/raw
69+
70+
#tes_bias_step_SC = 1
3271

3372

3473
# Temperature sweep, temperature in mk
@@ -41,7 +80,7 @@ thermometer_name = MC
4180
heater_name = heaterMC
4281

4382

44-
use_temperature_vect = true
83+
use_temperature_vect = false
4584
temperature_vect = 15,20
4685
#temperature_min = 0
4786
#temperature_max = 0
@@ -59,7 +98,7 @@ temperature_tolerance_percent = 0.4
5998
sample_rate = 1250000
6099

61100
# run time in seconds
62-
run_time = 5
101+
run_time = 60
63102

64103
# trace length:
65104

@@ -79,10 +118,10 @@ voltage_max = 10
79118
# that needs to be changed
80119

81120
# take dIdV data one channel out a time or together
82-
loop_channels = true
121+
loop_channels = false
83122

84123
# run time in seconds
85-
run_time = 5
124+
run_time = 180
86125

87126
# ADC setup
88127

@@ -98,10 +137,22 @@ voltage_max = 10
98137

99138
# signal generator
100139
# amplitude in mVpp
101-
signal_gen_voltage = 20
140+
signal_gen_voltage = 4
102141

103142
# frequency in Hz
104143
signal_gen_frequency = 80
105144

106145
# shape: 1= square, 2=sine, 3=triangle, 4 = arbitrary waveform
107146
signal_gen_shape = 1
147+
148+
149+
150+
[rn]
151+
152+
# Rn TES bias [uA]
153+
tes_bias = 400
154+
155+
# any parameters in this section supersede dIdV parameters
156+
signal_gen_voltage = 100
157+
voltage_min = -2
158+

pytesdaq/config/setup.ini.example_lbl

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ facility = 4
2121

2222
# Fridge run number and date/time fridge was at base temperature
2323
# (syntax: mm/dd/yyyy HH:MM)
24-
fridge_run = 12
25-
fridge_run_start = 03/08/2024 19:00
24+
fridge_run = 99
25+
fridge_run_start = 05/26/2025 19:00
2626

2727
# raw data base path (run# directory automatically created)
2828
data_path = /home/mwilliams/data
@@ -31,6 +31,7 @@ data_path = /home/mwilliams/data
3131
#tes_controller = keithley2400
3232
tes_controller = agilent33500B
3333
signal_generator = agilent33500B
34+
laser_signal_generator = rigolDG832
3435

3536
# instruments or driver not available, keep commented
3637
# squid_controller = starcryo
@@ -63,37 +64,42 @@ trigger_type = 1
6364
trigger_channel = pfi0
6465

6566

66-
6767
# NI ADC connection information
6868
# connection# (# ADC channel 0-7) = ...
6969
# Controller -> "controller:[name]_[channel]"
7070
# TES wiring -> "tes:[channel] (optional if same as controller channel)
7171
# Detector -> "detector:[name]_[channel]" (set to "None" if no parameter
72-
connection0 = detector:Si_4percent, controller:starcryo1_1
73-
connection1 = detector:W1D4_center, controller:starcryo1_2
74-
connection2 = detector:W1E3, controller:starcryo1_3
75-
connection3 = detector:W2A5_TES100x25, controller:starcryo1_4
76-
#connection4 = detector:PCB_AccelZ, controller:NONE_5
77-
#connection5 = detector:PCB_AccelY, controller:NONE_6
72+
connection0 = detector:no_device_connected, controller:starcryo1_1
73+
connection1 = detector:MV4_1F4_E_4pc, controller:starcryo1_2
74+
connection2 = detector:MV4_1C6_1pc_bf, controller:starcryo1_3
75+
connection3 = detector:MV4_1A5_E_veto, controller:starcryo1_4
76+
connection4 = detector:MV4_1B4_E_1pc, controller:starcryo1_5
77+
connection5 = detector:MV4_1B3_E_1pc_bf, controller:starcryo1_6
78+
connection6 = detector:MV4_1E4_E_4pc, controller:starcryo1_7
79+
connection7 = detector:MV4_1I5_veto, controller:starcryo1_8
7880
#connection6 = detector:PCB_AccelX, controller:NONE_7
79-
81+
#connection7 = detector:rigolTTL, controller:ttl_ttl
8082

8183
# Electronics and detector readout configuration if not set by SQUID/TES/SG controllers
8284
#
8385
# shunt_resistance [Ohms]
84-
# squid_turn_ratio
86+
# squid_turn_ratio shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
8587
# feedback_resistance [Ohms] (magnicon->not needed, read from board)
86-
# parasitic_resistance [Ohms] (if known)
88+
# parasitic_resistance [Ohms] (if known)MV4
8789
# tes_bias_resistance: [Ohms]
8890
# output_gain (for close/open loop calculation)
8991
# preamp_gain (for open loop calculation)
9092
# signal_gen_resistance: [Ohms] -> resistance in the TES line
9193
#
9294

93-
detector_config0 = tes_bias_resistance: 1700, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
94-
detector_config1 = tes_bias_resistance: 40000, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
95+
detector_config0 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
96+
detector_config1 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
9597
detector_config2 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
96-
detector_config3 = tes_bias_resistance: 20000, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
98+
detector_config3 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
99+
detector_config4 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
100+
detector_config5 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
101+
detector_config6 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
102+
detector_config7 = tes_bias_resistance: 2047, signal_gen_resistance: 2047, output_gain: 1, shunt_resistance: 0.002, squid_turn_ratio:10, feedback_resistance:100000
97103

98104
[polaris_daq]
99105
lib = /lib/libnidaq.so
@@ -117,6 +123,8 @@ attenuation = 1.0
117123
visa_address = ASRL3::INSTR
118124
voltage_source = true
119125

126+
[rigolDG832]
127+
visa_address = USB0::0x1AB1::1603::DG8A211800738::INSTR
120128

121129
[temperature_controllers]
122130
# Lakeshore

pytesdaq/instruments/agilent/agilent33500B.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,10 @@ def __init__(self, visa_address, visa_library=None,
3535
self._generator_onoff = 'off'
3636

3737
# signal generator attenuation
38-
self._attenuation = attenuation
38+
self._attenuation = float(attenuation)
3939

40-
self.set_auto_range(1)
40+
# auto range off
41+
self.set_auto_range(0)
4142

4243
def set_auto_range(self, auto, source=1):
4344

@@ -76,7 +77,9 @@ def set_load_resistance(self, load='infinity', source=1):
7677
or resistance value in Ohm
7778
"""
7879
# check input
79-
if isinstance(load, int):
80+
if (isinstance(load, int)
81+
or isinstance(load, float)):
82+
load = int(load)
8083
if load<50:
8184
load = 50
8285
if load>1e6:

0 commit comments

Comments
 (0)