- ascan, a2scan, a3scan, a4scan, amultiscan Absolute motor scans on a 1D path.
The scan interval is specified by supplying a start and end position for each motor.
After a scan has ended the motor(s) remain at the final scan position.
p09/door/exp.01 [37]: ascan exp_dmy01 0 1 20 0.1
p09/door/exp.01 [38]: a2scan exp_dmy01 0 1 exp_dmy02 5 7 20 0.1
'ascan': motor exp_dmy01 is scanned from 0 to 1, the number of intervalls is 20,
the sample time is 0.1.
'a2scan': motor exp_dmy01 is scanned from 0 to 1 while exp_dmy02 is scanned from 5 to 7.
monitor (preset) mode: The monitor counts are specified as a negative sample time. A value of -1
corresponds to 1000000 monitor counts.
- dscan, d2scan, d3scan, d4scan, dmultiscan Relative motor scans on a 1D path.
The scan interval is
specified by supplying the offset for the start and end position relative to the current
motor position. After a scan has ended the motor(s) move back to the before-scan position(s).
p09/door/exp.01 [37]: dscan exp_dmy01 -1 1 20 0.1
- timescan Scan without motor, 11 points, 0.1s sample time, 0.5s latency time:
p09/door/exp.01 [37]: timescan 10 0.1 0.5
Notice that if the latency time is too short, timescans may collect 'nan' data.
The dummy scan functionality can also be performed using a dummy motor.
- fscan. N-dimensional scan along user defined paths. The motion path for each motor is defined
through the evaluation of a user-supplied function that is evaluated as a function of the independent variables.
- Independent variables are supplied through the indepvar string. The syntax for indepvar is "x=expresion1,y=expresion2,...".
- If no indep vars need to be defined, write "!" or "*" or "None"
- Motion path for motor is generated by evaluating the corresponding function 'func'.
- Count time is given by integ_time. If integ_time is a scalar, then the same integ_time is
used for all points. If it evaluates as an array (with same length as the paths), fscan will assign a
different integration time to each acquisition point.
- If integ_time is positive, it specifies seconds and if negative, specifies monitor (preset) counts (times 10**6).
IMPORTANT Notes:
- No spaces are allowed in the indepvar string.
- All funcs must evaluate to the same number of points
Example:
fscan "x=[1,3,5,7,9],y=arange(5)" 0.1 motor1 x**2 motor2 sqrt(y*x+3)
Arguments: independent variables, integration time, list of motor and path curves
- mesh A 2D grid scan.
By default, the position of the outer loop motor is sent with every new
position of the inner loop motor. The purpose is to
correct for drifts. For certain applications this behaviour can cause
problems. It can be controlled in 2 ways:
Regarding the behavior at the end points of the lines: for non-bidirectional scans, both motors
receive new positions. Otherwise only the outer loop motor is moved.