def test_epicssignal_set(put_complete): sim_pv = EpicsSignal(write_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.VAL', read_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.RBV', put_complete=put_complete) sim_pv.wait_for_connection() logging.getLogger('ophyd.signal').setLevel(logging.DEBUG) logging.getLogger('ophyd.utils.epics_pvs').setLevel(logging.DEBUG) print('tolerance=', sim_pv.tolerance) assert sim_pv.tolerance is not None start_pos = sim_pv.get() # move to +0.2 and check the status object target = sim_pv.get() + 0.2 st = sim_pv.set(target, timeout=1, settle_time=0.001) wait(st, timeout=5) assert st.done assert st.success print('status 1', st) assert abs(target - sim_pv.get()) < 0.05 # move back to -0.2, forcing a timeout with a low value target = sim_pv.get() - 0.2 st = sim_pv.set(target, timeout=1e-6) time.sleep(0.1) print('status 2', st) assert st.done assert not st.success # keep the axis in position st = sim_pv.set(start_pos) wait(st, timeout=5)
def test_epicssignal_set(put_complete): sim_pv = EpicsSignal(write_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.VAL', read_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.RBV', put_complete=put_complete) sim_pv.wait_for_connection() logging.getLogger('ophyd.signal').setLevel(logging.DEBUG) logging.getLogger('ophyd.utils.epics_pvs').setLevel(logging.DEBUG) print('tolerance=', sim_pv.tolerance) assert sim_pv.tolerance is not None start_pos = sim_pv.get() # move to +0.2 and check the status object target = sim_pv.get() + 0.2 st = sim_pv.set(target, timeout=1, settle_time=0.001) wait(st) assert st.done assert st.success print('status 1', st) assert abs(target - sim_pv.get()) < 0.05 # move back to -0.2, forcing a timeout with a low value target = sim_pv.get() - 0.2 st = sim_pv.set(target, timeout=1e-6) time.sleep(0.1) print('status 2', st) assert st.done assert not st.success # keep the axis in position st = sim_pv.set(start_pos) wait(st)
def test_epicssignal_set(cleanup, motor, put_complete): sim_pv = EpicsSignal(write_pv=motor.user_setpoint.pvname, read_pv=motor.user_readback.pvname, put_complete=put_complete) cleanup.add(sim_pv) sim_pv.wait_for_connection() logging.getLogger('ophyd.signal').setLevel(logging.DEBUG) logging.getLogger('ophyd.utils.epics_pvs').setLevel(logging.DEBUG) print('tolerance=', sim_pv.tolerance) assert sim_pv.tolerance is not None start_pos = sim_pv.get() # move to +0.2 and check the status object target = sim_pv.get() + 0.2 st = sim_pv.set(target, timeout=1, settle_time=0.001) wait(st, timeout=5) assert st.done assert st.success print('status 1', st) assert abs(target - sim_pv.get()) < 0.05 # move back to -0.2, forcing a timeout with a low value target = sim_pv.get() - 0.2 st = sim_pv.set(target, timeout=1e-6) time.sleep(0.5) print('status 2', st) assert st.done assert not st.success # keep the axis in position st = sim_pv.set(start_pos) wait(st, timeout=5)
def test_fakepv_signal(): sig = EpicsSignal(write_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.VAL', read_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.RBV') st = sig.set(1) for j in range(10): if st.done: break time.sleep(.1) assert st.done
def test_fakepv_signal(): sig = EpicsSignal(write_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.VAL', read_pv='XF:31IDA-OP{Tbl-Ax:X1}Mtr.RBV') st = sig.set(1) for j in range(10): if st.done: break time.sleep(.1) assert st.done