def snd_park(): with safe_load('Split and Delay'): from hxrsnd.sndsystem import SplitAndDelay from xcs.db import daq, RE snd = SplitAndDelay('XCS:SND', name='snd', daq=daq, RE=RE) snd.t1.L.mv(250, wait=True) snd.t4.L.mv(250, wait=True) snd.dd.x.mv(-270, wait=False) snd.di.x.mv(-90, wait=False) snd.do.x.mv(-100, wait=False) snd.dci.x.mv(70, wait=False) snd.dco.x.mv(70, wait=False) snd.dcc.x.mv(120, wait=False) snd.t1.tth.mv(0, wait=True) snd.t4.tth.mv(0, wait=True) snd.t2.x.mv(70, wait=False) snd.t1.x.mv(90) snd.t4.x.mv(90) snd.t3.x.mv(70) return True
import logging from hutch_python.utils import safe_load logger = logging.getLogger(__name__) #all commented out for FeeComm(Test) with safe_load('Split and Delay'): from hxrsnd.sndsystem import SplitAndDelay from xcs.db import daq, RE snd = SplitAndDelay('XCS:SND', name='snd', daq=daq, RE=RE) #this should remain OUT! #with safe_load('SnD ascan shortcut'): # from xcs.snd_scripts import ascan #this should remain OUT! with safe_load('Event Sequencer'): from pcdsdevices.sequencer import EventSequencer seq = EventSequencer('ECS:SYS0:4', name='seq_4') seq2 = EventSequencer('ECS:SYS0:11', name='seq_11') with safe_load('LXE'): from pcdsdevices.lxe import LaserEnergyPositioner from hutch_python.utils import get_current_experiment from ophyd.device import Component as Cpt from pcdsdevices.epics_motor import Newport # Hack the LXE class to make it work with Newports class LXE(LaserEnergyPositioner): motor = Cpt(Newport, '')
# from bluesky import RunEngine from pcdsdevices.areadetector.detectors import PCDSDetector from hxrsnd.sndmotor import SamMotor from hxrsnd.sequencer import SeqBase from hxrsnd.sndsystem import SplitAndDelay # Base PV pv_base = "XCS:SND" # Instantiate the whole system snd = SplitAndDelay(pv_base, name="snd") daq = snd.daq # Additional Devices seq = SeqBase("ECS:SYS0:4", desc="Sequencer Channel 4") sam_x = SamMotor("XCS:USR:MMN:01", name="sam_x") sam_y = SamMotor("XCS:USR:MMN:02", name="sam_y") opal_1 = PCDSDetector("XCS:USR:O1000:01", name="Opal 1")