15. Command cheatsheet#
This section provides a quick summary of the data acquisition commands discussed in the previous sections.
Stopping a measurement
To stop any command do Ctrl-C Ctrl-C
That is, hit Ctrl-C twice!
This will pause the running command and return you to the command line.
Do RE.resume()
to continue the command from where it stopped.
Do RE.stop()
to fully stop the command.
15.1. The most essential information#
Note
Parentheses – ()
– are an essential part of the
syntax. Same for RE()
and %
when specified.
15.1.1. Most common commands#
shb.open()
/shb.close()
Open / close the photon shutter
RE(mv(dcm.energy, <value>))
Move TO an energy value
RE(mv(xafs_y, <value>))
Move any named motor TO a position (
xafs_y
is an example,see Section 6.1)RE(mvr(xafs_y, <value>))
Move any named motor BY an amount (
xafs_y
is an example, see Section 6.1)RE(change_edge('Xx'))
setup beamline for an absorption edge,
Xx
= 1- or 2-letter symbol, e.g.Cu
orY
.RE(slot(<N>))
Move sample wheel to slot #N (1 ≤ N ≤ 24)
RE(xafs_wheel.outer())
/RE(xafs_wheel.inner())
move the ex situ wheel sample holder to the outer/inner ring
%xrf
measure and display an XRF spectrum
RE(linescan(<motor>, <detector>, <start>, <stop>, <N>))
move a motor, plot a signal
RE(pluck())
Select a point from a plot on screen and move that motor to that position
xlsx()
import a spreadsheet
RE(xanes())
quick-n-dirty XANES scan at the current element and edge
15.1.2. Most common motors#
See Section 6.1 for the full list of
xafs_
motors.
motor
type
units
notes
directions
xafs_x
linear
mm
main sample stage
+ outboard, - inboard
xafs_y
linear
mm
main sample stage
+ up, - down
xafs_det
linear
mm
detector mount
+ away from sample, - closer
15.2. Full list of commands#
Note that some command must be run through the run engine, other do
not. The use of RE()
is called explicitly in Table 15.1. Any command that should be run through the run
engine will complain with this hint:
BMM D.111 [48] > mvr(xafs_x, 2)
Out[48] <generator object mvr 0x7fefafd1df50> Hint: enclose bsui commands in RE()
Shutter commands |
|
|
Open / close the photon shutter |
Mono tuning commands |
|
|
Measure the 2nd crystal rocking curve |
|
Tune the mono 2nd crystal by hand |
|
Tuning step size – 0.004 is good for Si(111), 0.002 for Si(311) |
Import an automation spreadsheet |
|
|
Select an existing spreadsheet from a list |
Mono movement commands |
|
|
Move TO an energy value |
|
Move 50 eV above the edge |
|
Move 50 eV below the edge |
|
Move BY an energy step |
Motor movement commands |
|
|
Move any named motor TO a position ( |
|
Move any named motor BY an amount ( |
Where are things? |
|
|
where’s the mono? |
|
where are the slits? |
|
where’s mirror 2? (toroidal focusing mirror) |
|
where’s mirror 3? (flat, harmonic rejection mirror) |
|
where’s the XAFS table? |
Change edge and mono crystal |
|
|
setup beamline for an absorption edge, 1- or 2-letter symbol |
|
set monochromator, Si(111) or Si(311), h=1 or h=3 |
Experiment setup |
|
|
explore position of slits3 (then pluck to move dm3_bct) |
|
measure electrometer dark currents |
ex situ sample stage |
|
|
Move sample wheel to slot #N (1 ≤ N ≤ 24) |
|
align the ex situ wheel sample holder |
|
move the ex situ wheel sample holder to the outer ring |
|
move the ex situ wheel sample holder to the inner ring |
Glancing angle stage |
|
|
move stage to sample N (1 ≤ N ≤ 8) + start spinner |
|
automatically align glancing angle stage and move to pitch |
|
return to the flat position found during |
Linkam stage |
|
|
move Linkam stage to temperature T |
|
set Linkam settling time (in seconds) |
|
display Linkam status |
|
turn Linkam on or off |
LakeShore temperature controller |
|
|
move cryostat to temperature T with heater at |
|
set Linkam settling time (in seconds) |
|
display Linkam status |
|
turn heater to full power |
|
turn heater off |
Reference wheel |
|
|
Move to reference element ‘Xx’ |
Get help |
|
|
Show motors |
|
Show help |
|
Show keyboard shortcuts |
|
Show reference foil and ROI configurations |
15.3. Photon delivery system modes#
Mode |
focused |
energy range |
---|---|---|
A |
✓ |
8 keV and up |
B |
✓ |
below 6 keV |
C |
✓ |
6 keV to 8 keV |
D |
✗ |
8 keV and up |
E |
✗ |
6 keV to 8 keV |
F |
✗ |
below 6 keV |
XRD |
✓ |
8 keV and up |
15.4. Slits3 coordinated motions#
These coordinated motions behave just like single motors and can be used with the motor movement commands in Table 15.1.
- Horizontal size
slits3.hsize
(nominally 8 mm)- Horizontal center
slits3.hcenter
(nominally 0 mm)- Vertical size
slits3.vsize
(nominally 1 mm)- Vertical center
slits3.vcenter
(nominally 0 mm)The vertical center should never be changed. Instead, align the slits by moving
dm3_bct
or running theslit_height()
plan (Section 8.2)
Example movement: RE(mv(slits3.vsize, 0.5))
Individual slits are named slits3.top
, slits3.bottom
,
slits3.inboard
, slits3.outboard
.
15.5. Motor positions and limits#
These commands work on any named motor (Table 6.1).
- Where is a sample motor?
%w xafs_x
- What are the soft limits?
xafs_x.hlm.value
/xafs_x.llm.value
- Set a soft limit:
xafs_x.hlm.put(-95)
/xafs_x.llm.put(-157)
15.6. Line scans#
RE(linescan(<motor>, <detector>, <start>, <stop>, <N>))
where
<motor>
is a named motor, see Table 6.1<detector>
is one of:'it'
,'if'
,'ir'
, or'i0'
<start>
,<stop>
,<N>
are the boundaries relative to the current position and the number of steps.
The plot will be determined from the values of <motor>
and
<detector>
This is a relative scan.
After the scan, you will prompted to select a position to move to. Single click the left button after a linescan to move to a position.
RE(pluck())
to repeat that on the current plot.
15.7. Energy scans#
Start an XAFS scan, prompting for an INI file (section 9.1)
RE(xafs())
Start an XAFS scan using a specified INI file (section 9.1)
RE(xafs('myscan.ini'))
In the INI file, set mode
to transmission, fluorescence,
reference, or both to control the in-scan plotting display (both =
show transmission and fluorescence)
Import a spreadsheet to perform automated XAFS measurements:
xlsx()
You will be prompted first for the name of a spreadsheet file, then for the tab to be read.