This is an example of the bluesky scan used, generally useful for scans over one variable (1D detectors) in evenly spaced steps.
RE(bp.scan([em], diff_y, 36, 38, 20))
- em is an epics scaler defined for a few channels where channel 21 is for the photodiode current. Sanjit, if you could, please let us know what channels 20-23 correspond to.
- diff_y is the goniometer motor in y, 36 is the absolute goniometer-y position start value, 38 the final position, and the scan moves this motor (2mm in this case) in 20 steps.
- This was used to scan the capillary in y, and find a minimum value in the channel 21 readback, corresponding to the minimum photodiode current = maximum sample absorption/scattering.
Would be nice if we could get something similar to track integrated Bragg intensity over a specified q-range as a function of motor position.
Signature: bp.scan(detectors, motor, start, stop, num, *, per_step=None, md=None)
Docstring:
Scan over one variable in equally spaced steps.
Parameters
----------
detectors : list
list of 'readable' objects
motor : object
any 'setable' object (motor, temp controller, etc.)
start : float
starting position of motor
stop : float
ending position of motor
num : int
number of steps
per_step : callable, optional
hook for cutomizing action of inner loop (messages per step)
Expected signature: ``f(detectors, motor, step)``
md : dict, optional
metadata