ID02 Users Guide
Important BLISS commands available at ID2:
SAXS/WAXS (EH2):
Shutter commands
sc() | to close | the safety beam shutter |
so() | to open | the safety beam shutter |
fson() | to activate | fast beam shutter for scanning and counting |
fsoff() | to disable | fast beam shutter for scanning and counting |
fsstate() | to show | triggering of fast shutter |
bvcl() | to close | the big valve |
bvop() | to open | the big valve |
Movement commands
wut() | to see | motor user values |
umv(<motor>, <position>) | to move | a motor to the desired absolute position |
umvr(<motor>, <step>) | to move | a motor to a relative position |
samplescan(<motor>, <from>, <to>, <steps>, <exptime>); samplescan6(<motor>, <from>, <to>, <steps>, <exptime>) | to align | sample (closes big valve) Note: to continue taking images answer 'yes' or use bvop() samplescan6 uses pin6 (if available) |
Use of detectors
newproposal(<proposal_number>) | to start | new experiment | |||||||||||||||
newcollection(<prefix>) | to set | prefix of filename | |||||||||||||||
newdataset() | to set | new subdirectory and start counting images from 1 | |||||||||||||||
endproposal() | to finish | experiment (data will be written to archive) | |||||||||||||||
detexpinfo() | to set | header information for following exposure | |||||||||||||||
detactive(<list of detectors>) | to set | detectors active | |||||||||||||||
flint() | to open | the image/scan display (if it was lost) | |||||||||||||||
pymca() | to open | the PyMca display (if it was lost) | |||||||||||||||
detexpose(<exptime>, <save(0/1)>, <"title">, [<HWTrigger=...>, <N_darks=...>]) | to take | a single image; to wait for trigger before exposure, HWTrigger can be : "DI1", "DI2" or "enter" |
|||||||||||||||
dettrans(<motor>, <start>, <stop>, <intervals>, <exptime>, <sleep_time>, <save(0/1)>, <"title">, [<N_darks=...>]) | to scan | on a sample motor and take images at each scan step use dettrans_rel for relative scans |
|||||||||||||||
detframes(<nframes>, <clock>, <exptime>, <save(0/1)>, <"title">, [N_darks=...])> | to take | multiple frames with lower time resolution (>1s) | |||||||||||||||
detmulti(<nframes>, <deadtime0>, <deadtime>, <exptime>, <save(0/1)>, <"title">,[<HWTrigger=...>, <N_darks=...>]) | to take | multiple images (saving after the last frame) deadtime0 before first exposure deadtime between exposures depending on binnig for ccd cameras:
|
|||||||||||||||
detkin(<deadtime0>, <array_of_nframes_times>, <exptime>, <save(0/1>, <"title">, [<HWTrigger=...>, <N_darks=...>]) | to take | multiple images in multiple time groups with changing deadtimes, but same exptime: deadtime0 before first exposure; array_of_nframes_times: [(N1, dead1),(N2,dead2),...,(Nn, deadn)] |
|||||||||||||||
detmvdc(<nframes>, <deadtime0>, <deadtime>, <factor>, <exptime>, <save(0/1)>, <"title">, [<HWTrigger=...>,<N_darks>=...]) | to take | multiple images with increasing deadtime, but same exptime: deadtime0 before first exposure; deadtime increasing by factor**image_nr (verify timing with detmcal(<nframes>, <deadtime0>, <deadtime>, <factor>, <exptime>) |
|||||||||||||||
ldo() | to list | all detector position files | |||||||||||||||
ddo(<det-file>) | to restore | detector position file |
Control of sample environments:
Mettler heating stage:
mettler.reset() | to reset | |
mettler.on() | to start | temperature control |
mettler.off() | to stop | temperature control |
mettler.temperature | to read | temperature (only if temperature control started) |
mettler.setpoint = <temperature> | to set | temperature |
mettler.setramp(<start_T>, <target_T>, <ramprate>, <autostart (True/False)>) | to program (and start) | heating ramp |
mettler.startRamp() | to start | heating ramp |
Linkam heating stage:
linkam.on() | to start | temperature control |
linkam.off() | to stop | temperature control |
linkam.temperature | to get | temperature |
linkam.setpoint = <temperature> | to set | target temperature |
linkam.ramprate = <rate> | to set | heating/cooling rate |
linkam.set_hold_on | to hold | current temperature |
Huber baths:
hubbath1.on() | to start | temperature control (exists also: hubbath2) |
hubbath1.off() | to stop | temperature control |
hubbath1.temperature | to get | temperature |
hubbath1.setpoint = <temperature> | to set | target temperature |
TEC temperature controller:
tec1.on() | to start | temperature control (exists also: tec2) |
tec1.off() | to stop | temperature control |
tec1.temperature | to get | temperature |
tec1.setpoint = <temperature> | to set | target temperature |
tec1.temperature1Offset = <value> | to set | temperature offset |
tec1.startProfile([<holdTempAtEnd (True/False)>] ) | to start | heating ramp |
tec1.startProfile() | to stop | heating ramp |
tec1.setupProfile(profile) | to program | heating ramp with profile: Sequence of [(ramp_time1, soak_time1, Target T1), (ramp_time2, soak_time2, Target T2), ..., ramp_time8, soak_time8, Target T8]. If less than 8 segments are defined, they are filled with last constant temperature. |
tec1.profile | to get | programmed heating ramp |
LFI temperature controller (Peltier controlled stages):
lfi1.on() | to start | temperature control |
lfi1.off() | to stop | temperature control |
lfi1.temperature | to get | temperature |
lfi1.setpoint = <temperature> | to set | target temperature |
lfi1.startRamp(<target_T>, <ramprate>) | to ramp | to target temperature at ramprate |
lfi1.startProfile(<profile>) | to start | heating ramp with profile: Sequence of tuple of (time, temperature). Exemple: [(time1,T1),(time2,T2),....,(timen,Tn)]. T0 should not be included. |
lfi1.wait_ramp() | to wait | for the end of the ramp |
Sample Changer:
to be done... |
Important SPEC commands available at ID2 (deprecated):
SAXS/WAXS (EH2):
Shutter commands
sc | to close | the safety beam shutter |
so | to open | the safety beam shutter |
fson | to activate | fast beam shutter for scanning and counting |
fsoff | to disable | fast beam shutter for scanning and counting |
fsshow | to show | triggering of fast shutter |
bvcl | to close | the big valve |
bvop | to open | the big valve |
Movement commands
wut | to see | motor user values |
umv <motor> <position> | to move | a motor to the desired absolute position |
umvr <motor> <step> | to move | a motor to a relative position |
samplescan <motor> <from> <to> <steps> <time> | to align | sample (closes big valve) Note: to continue taking CCD images answer 'yes' or use bvop |
Use of detectors
detnewfile | to set | directory and filename for image saving | |||||||||||||||
detexpinfo | to set | header information for NEXT exposure | |||||||||||||||
detactive | to set | detector active/inactive | |||||||||||||||
ccdbin <binning1> <binning2> | to set | binning of CCD camera | |||||||||||||||
cm <camera> | to set | the online image correction parameters click here for more details |
|||||||||||||||
dettfg | to pause | before a detector acquisition | |||||||||||||||
onze | to open | the image display (if it was lost) | |||||||||||||||
newplot | to open | the newplot display (if it was lost) | |||||||||||||||
detexpose <exptime> <save(0/1)> <ndark> <"title"> | to take | a single image | |||||||||||||||
dettrans <motor> <from> <to> <steps> <time> <sleep><"title"> <ndark> <save(0/1)> | to scan | on a sample motor and take images at each scan step
(saving after each step) |
|||||||||||||||
detframes <frames> <exptime> <clock> <"title"> <ndark> <save(0/1)> | to take | multiple frames with lower time resolution (> 2.5s, depending on binning - saving after each frame) Note: use application EXPTIME to change exposure time or abort: exptimeset <exptime> exptimeset -1 (to abort ccdframes safely) |
|||||||||||||||
detmulti <frames> <deadtime0> <deadtime1> <exptime> <save(0/1)> <ndark> <"title"> | to take | multiple images (saving after the last frame) deadtime0 before first exposure deadtime1 between exposures depending on binnig:
|
|||||||||||||||
detkin <frames1> <frames2> <frames3> <deadtime0> <deadtime1> <deadtime2> <deadtime3> <exptime> <save(0/1)> <ndark> <"title"> | to take | multiple images in three time groups > (saving after the last frame): frames1-3 number of frames in groups deadtime0 before first exposure deadtime1-3 between the frames of each group (see ccdmulti for minimum times) |
|||||||||||||||
ldo | to list | all detector position files | |||||||||||||||
ddo <det-file> | to import | detector position file | |||||||||||||||
att <number of attenuators> | to insert / extract | Al attenuators (attenuation factor about 15 per foil) att 0 to remove - not recommended for SAXS exposures |
|||||||||||||||
use ATT application | to insert | more attenuators | |||||||||||||||
open() | to show | used log files | |||||||||||||||
disablemotormenu | to enable / disable | motors | |||||||||||||||
disablecountermenu | to enable / disable | counters |
Control of sample environments:
Mettler heating stage:
metabort | to reset | |
metget | to read | temperature |
metgoT <temperature> | to go to | temperature |
metrate <rate> | to set | heating/cooling rate |
metset <temperature> | to set | temperature (use metstart) |
metstart | to start | temperature change |
mettime <time> | to set | isothermal time |
Linkam heating stage:
hotstageget | to get | temperature |
hotstageset <temperature> | to set | temperature |
hotstagegetrate | to get | heating/cooling rate |
hotstagesetrate <rate> | to set | heating/cooling rate |
hotstagestart | to start | heating/cooling |
hotstagehold | to hold | current temperature |
hotstagestop | to stop | heating/cooling |
Huber baths:
hubbathsetup | to initialize | serial communication (after switching on) |
hubbathget | to read | temperature |
hubbathset <temperature> | to set | temperature |
hubbathcheck <temperature> | to poll | temperature set by hubset |
PID temperature controller:
ltcsetup | to initialize | |
ltcpow <value> | to set | maximum heater power (5 or 50) |
ltcget | to read | temperature |
ltcset <temperature> | to set | temperature |
ltctemp <temperature> [<offset>] | to set | temperature for controller and Huber bath (typically 3 deg lower, as defined by <offset>) |
ltccheck <temperature> | to poll | temperature set by ltcset, ltctemp |
LFI temperature controller (Peltier controlled stages):
lfisetup | to initialize | |
lfi20set <temperature [5C, 65C]> | to set | lfi temperature with huber bath at 20C |
lfi40set <temperature [15C, 80C]> | to set | lfi temperature with huber bath at 40C |
lfi60set <temperature [30C, 95C]> | to set | lfi temperature with huber bath at 60C |
lfiget | to read | temperature |
lfigetset | to read | target temperature |
lfigetlimits | to read | temperature limits |
lfisetlimhigh / lfisetlimlow <temperature> | to set | upper / lower temperature limit |
lfigetpid | to read | PID settings |
lfisetp / lfiseti / lfisetd | to adjust | PID settings |