def move(): grp = _short_uid('set') yield Msg('checkpoint') yield Msg('set', motor, step, group=grp) yield Msg('wait', None, group=grp) #yield from mv( attn_shutter, 'Retract') yield from wait_for_ring() print('Check beam here.')
def move(): yield Msg('checkpoint') grp = _short_uid('set') for motor, pos in step.items(): if pos == pos_cache[motor]: # This step does not move this motor. continue yield Msg('set', motor, pos, group=grp) pos_cache[motor] = pos yield Msg('wait', None, group=grp)
def move(): yield Msg('checkpoint') grp = _short_uid('set') for motor, pos in step.items(): if pos == pos_cache[motor]: # This step does not move this motor. continue yield Msg('set', motor, pos, group=grp) pos_cache[motor] = pos yield Msg('wait', None, group=grp) # this means "take the attenuator out of the beam" yield from mv(attn_shutter, 'Retract')
def no_run_trigger_and_wait(objects): """ count objects (presume detectors) but do not create a bluesky run Does most of bps.trigger_and_read() but does not create&save a run. Caller must call `.read()` on each object once this returns. The primary use case is to count detectors (on a scaler card) when measuring sample transmission. """ if not isinstance(objects, (tuple, set, list)): objects = [objects] group = bps._short_uid("trigger_and_wait_no_run") for obj in objects: yield from bps.trigger(obj, group=group) yield from bps.wait(group=group)
def move(): grp = _short_uid('set') yield Msg('checkpoint') yield Msg('set', motor, step, group=grp) yield Msg('wait', None, group=grp) yield from mv(attn_shutter, 'Retract')