A couple of improvements to the lakeshores. Closes #47.
Automatic heater control
The heater range can be defined for different temperatures using .heater_range, and this can be turned on/off with .auto_heater.
# Sets the heater to 100mA if 0<T<8, 333mA if 8<T<20, and 1A if 20<T<305
lakeshore_340lt.auto_ranges = {'10 mA': None, '33 mA': None,
'100 mA': (0, 8), '333 mA': (8, 20), '1 A': (20, 305)}
# Turn on auto heater
%mov lakeshore_340lt.auto_heater True #or lakeshore_340lt.auto_heater.put(True)
Ability to track the vaporizer temperature in the 6T magnet
If lakeshore_336.track_vaporizer.get() == True then changing the sample temperature (.loop2) will also change the vaporizer (.loop1). Note that Bluesky will not track the vaporizer temperature, and it will change the movement status to complete as soon as .loop2 is satisfied.
The temperature offsets are hardwired in _get_vaporizer_position:
def _get_vaporizer_position(self, sample_position):
# TODO: I would like to have this stored in some variable that we can
# change.
if sample_position < 6:
vaporizer_position = sample_position - 1
elif sample_position < 20:
vaporizer_position = sample_position - 2
elif sample_position < 100:
vaporizer_position = sample_position - 5
else:
vaporizer_position = 100
return vaporizer_position
This feature is ON by default. To turn it off:
%mov lakeshore_336.track_vaporizer False # or lakeshore_336.track_vaporizer.put(False)
This pull request introduces 1 alert when merging aaece48979070f11ccabfb1d1ae07135dc2eb6bd into a6dfd7e19034e8c6f7f5939a54efea75201cac6f - view on LGTM.com
A couple of improvements to the lakeshores. Closes #47.
Automatic heater control
The heater range can be defined for different temperatures using
.heater_range
, and this can be turned on/off with.auto_heater
.Ability to track the vaporizer temperature in the 6T magnet
If
lakeshore_336.track_vaporizer.get() == True
then changing the sample temperature (.loop2
) will also change the vaporizer (.loop1
). Note that Bluesky will not track the vaporizer temperature, and it will change the movement status to complete as soon as.loop2
is satisfied.The temperature offsets are hardwired in
_get_vaporizer_position
:This feature is ON by default. To turn it off: