Variable Temperature Devices
Cold Temperature Devices : Cobra & Cryostream
An Oxford Instruments Cobra is capable of cooling and heating capillary samples in the temperature range 100-450 K with no nitrogen dewar. We also possess a Cryostream Series 700 which has the same capabilities but requires a dewar of liquid nitrogen. Both systems are compatible with our robotic sample changing system by mounting on movable stages that move the devices. Both the cobra/cryostream and hot air blower can be mounted on the beamline at the same time to cover a wide temperature range.
temperatures 100-500 K
units in kelvin (K)
Pb calibrant
Default ramp rate: 360K/h
Fast cool can be used for cooling below 327 K (cobra must also be below 327 K)
cobra.fast_cool_to(125)Kapton sheath used to minimize ice build-up
High Temperature Device : Hot air blower
Used to heat capillary samples from room temperature up to 1100 K. Temperatures of up to 1200 K can be reached with smaller samples. The blower can be used in conjunction with the robotic system to allow for automated collections.
Note that the hot air blower is not particularly stable at low temperatures (below ~80 °C).
The units of the hot air blower are in Celsius (°C).
A Si/Al2O3 mix is used to calibrate the temperature at sample position.
Default ramp rate = as fast as possible.
#USEFUL BLOWER COMMANDS
blower.setRamp_rate(0) #this will ramp the blower as quick as possible
return_to_temperature=“off” #means that after the scan, the device will cool to 80 °C before turning off.
blower.off()
blower.setControllerAsynchronous(20)Scripting Variable Temperature Devices
collect_pe2_X(sf(),600,[100,200,300],comment=“VT”,settle_time=180,return_to_temperature=100)
Useful commands:
X = “blower”, “cobra”, or “cryostream”
X.move_to_safe() – moves temperature device to a safe position
X.move_to_beam() – moves temperature device to beam position
X.setTemperature(200) – sets temperature device to 200 (K or °C)
X.convert_required_temperature_to_controller_setpoint()
X.setUnits() – switch between K and °C
X.setTolerance() – set tolerance for “temperature reached”
X.setCalibration_file(‘_____.txt’) *for beamline staff
X.use_calibration = True *for beamline staffRun program
Temperature programs can be designed and run as part of a variable temperature scan to do more complicated ramping.
collect_pe2_X(sf(),15,None,frames=5000,run_program=“RampT(100,5),Hold(600),RampT(300,2),Hold(60),StopAll()”
Example commands:
SetT(300) – set temperature to 300 °C or K
RampT(400,5) - ramp to 400 C or K at ramp rate of 5 °C or K/min
Hold(6) – hold for 6 seconds
Off() – stops temperature program, but frames will continue collecting
StopAll() – stops everything including the data collection
Calibration
Temperature devices must be calibrated before first use on the beamline. Calibrations in S:\Science\I15-1_XPDF\Sample Environment. Output saved in \dls_sw\i15-1\calibrations.
def X_calibration():
X.use_calibration = False
sam = sf("Si-Al2O3",[1,10],"Al2O3Si",2.4,0.5,"fq1.0") #or Pb
collect_pe2(sam,60,frames=1,preSleep=0)
collect_pe2_blower(sam,60,range(100,900,100),frames=1,settle_time=60)