Updated naming scheme of trigger names
This commit is contained in:
@@ -51,12 +51,12 @@ class ScanControlLoadMessage(int, enum.Enum):
|
||||
PENDING = 0
|
||||
STARTED = 1
|
||||
SUCCESS = 2
|
||||
ERR_XRD_MEAS_LEN_LOW = 3
|
||||
ERR_XRD_N_TRIGGERS_LOW = 4
|
||||
ERR_XRD_TRIGS_EVERY_N_LOW = 5
|
||||
ERR_XRD_MEAS_LEN_HI = 6
|
||||
ERR_XRD_N_TRIGGERS_HI = 7
|
||||
ERR_XRD_TRIGS_EVERY_N_HI = 8
|
||||
ERR_TRIG_MEAS_LEN_LOW = 3
|
||||
ERR_TRIG_N_TRIGGERS_LOW = 4
|
||||
ERR_TRIG_TRIGS_EVERY_N_LOW = 5
|
||||
ERR_TRIG_MEAS_LEN_HI = 6
|
||||
ERR_TRIG_N_TRIGGERS_HI = 7
|
||||
ERR_TRIG_TRIGS_EVERY_N_HI = 8
|
||||
ERR_SCAN_HI_ANGLE_LIMIT = 9
|
||||
ERR_SCAN_LOW_ANGLE_LIMITS = 10
|
||||
ERR_SCAN_TIME = 11
|
||||
@@ -138,18 +138,16 @@ class Mo1BraggCrystal(Device):
|
||||
class Mo1BraggScanSettings(Device):
|
||||
"""Mo1 Bragg PVs to set the scan setttings"""
|
||||
|
||||
# XRD settings
|
||||
xrd_select_ref_enum = Cpt(EpicsSignalWithRBV, suffix="xrd_select_ref_ENUM", kind="config")
|
||||
xrd_enable_hi_enum = Cpt(EpicsSignalWithRBV, suffix="xrd_enable_hi_ENUM", kind="config")
|
||||
# TRIG settings
|
||||
trig_select_ref_enum = Cpt(EpicsSignalWithRBV, suffix="trig_select_ref_ENUM", kind="config")
|
||||
|
||||
xrd_time_hi = Cpt(EpicsSignalWithRBV, suffix="xrd_time_hi", kind="config")
|
||||
xrd_n_trigger_hi = Cpt(EpicsSignalWithRBV, suffix="xrd_n_trigger_hi", kind="config")
|
||||
xrd_every_n_hi = Cpt(EpicsSignalWithRBV, suffix="xrd_every_n_hi", kind="config")
|
||||
trig_ena_hi_enum = Cpt(EpicsSignalWithRBV, suffix="trig_ena_hi_ENUM", kind="config")
|
||||
trig_time_hi = Cpt(EpicsSignalWithRBV, suffix="trig_time_hi", kind="config")
|
||||
trig_every_n_hi = Cpt(EpicsSignalWithRBV, suffix="trig_every_n_hi", kind="config")
|
||||
|
||||
xrd_enable_lo_enum = Cpt(EpicsSignalWithRBV, suffix="xrd_enable_lo_ENUM", kind="config")
|
||||
xrd_time_lo = Cpt(EpicsSignalWithRBV, suffix="xrd_time_lo", kind="config")
|
||||
xrd_n_trigger_lo = Cpt(EpicsSignalWithRBV, suffix="xrd_n_trigger_lo", kind="config")
|
||||
xrd_every_n_lo = Cpt(EpicsSignalWithRBV, suffix="xrd_every_n_lo", kind="config")
|
||||
trig_ena_lo_enum = Cpt(EpicsSignalWithRBV, suffix="trig_ena_lo_ENUM", kind="config")
|
||||
trig_time_lo = Cpt(EpicsSignalWithRBV, suffix="trig_time_lo", kind="config")
|
||||
trig_every_n_lo = Cpt(EpicsSignalWithRBV, suffix="trig_every_n_lo", kind="config")
|
||||
|
||||
# XAS simple scan settings
|
||||
s_scan_angle_hi = Cpt(EpicsSignalWithRBV, suffix="s_scan_angle_hi", kind="config")
|
||||
@@ -221,10 +219,8 @@ class ScanParameter:
|
||||
|
||||
scan_time: float = None
|
||||
scan_duration: float = None
|
||||
xrd_enable_low: bool = None
|
||||
xrd_enable_high: bool = None
|
||||
num_trigger_low: int = None
|
||||
num_trigger_high: int = None
|
||||
trig_enable_low: bool = None
|
||||
trig_enable_high: bool = None
|
||||
exp_time_low: float = None
|
||||
exp_time_high: float = None
|
||||
cycle_low: int = None
|
||||
@@ -629,22 +625,20 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
self.scan_settings.a_scan_vel.set(vel)
|
||||
self.scan_settings.a_scan_time.set(dt)
|
||||
|
||||
def set_xrd_settings(
|
||||
def set_trig_settings(
|
||||
self,
|
||||
enable_low: bool,
|
||||
enable_high: bool,
|
||||
num_trigger_low: int,
|
||||
num_trigger_high: int,
|
||||
exp_time_low: int,
|
||||
exp_time_high: int,
|
||||
cycle_low: int,
|
||||
cycle_high: int,
|
||||
) -> None:
|
||||
"""Set XRD settings for the upcoming scan.
|
||||
"""Set TRIG settings for the upcoming scan.
|
||||
|
||||
Args:
|
||||
enable_low (bool): Enable XRD for low energy/angle
|
||||
enable_high (bool): Enable XRD for high energy/angle
|
||||
enable_low (bool): Enable TRIG for low energy/angle
|
||||
enable_high (bool): Enable TRIG for high energy/angle
|
||||
num_trigger_low (int): Number of triggers for low energy/angle
|
||||
num_trigger_high (int): Number of triggers for high energy/angle
|
||||
exp_time_low (int): Exposure time for low energy/angle
|
||||
@@ -652,14 +646,12 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
cycle_low (int): Cycle for low energy/angle
|
||||
cycle_high (int): Cycle for high energy/angle
|
||||
"""
|
||||
self.scan_settings.xrd_enable_hi_enum.put(int(enable_high))
|
||||
self.scan_settings.xrd_enable_lo_enum.put(int(enable_low))
|
||||
self.scan_settings.xrd_n_trigger_hi.put(num_trigger_high)
|
||||
self.scan_settings.xrd_n_trigger_lo.put(num_trigger_low)
|
||||
self.scan_settings.xrd_time_hi.put(exp_time_high)
|
||||
self.scan_settings.xrd_time_lo.put(exp_time_low)
|
||||
self.scan_settings.xrd_every_n_hi.put(cycle_high)
|
||||
self.scan_settings.xrd_every_n_lo.put(cycle_low)
|
||||
self.scan_settings.trig_ena_hi_enum.put(int(enable_high))
|
||||
self.scan_settings.trig_ena_lo_enum.put(int(enable_low))
|
||||
self.scan_settings.trig_time_hi.put(exp_time_high)
|
||||
self.scan_settings.trig_time_lo.put(exp_time_low)
|
||||
self.scan_settings.trig_every_n_hi.put(cycle_high)
|
||||
self.scan_settings.trig_every_n_lo.put(cycle_low)
|
||||
|
||||
def set_scan_control_settings(self, mode: ScanControlMode, scan_duration: float) -> None:
|
||||
"""Set the scan control settings for the upcoming scan.
|
||||
@@ -756,11 +748,9 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
high=self.scan_parameter.stop,
|
||||
scan_time=self.scan_parameter.scan_time,
|
||||
)
|
||||
self.set_xrd_settings(
|
||||
self.set_trig_settings(
|
||||
enable_low=False,
|
||||
enable_high=False,
|
||||
num_trigger_low=0,
|
||||
num_trigger_high=0,
|
||||
exp_time_low=0,
|
||||
exp_time_high=0,
|
||||
cycle_low=0,
|
||||
@@ -769,17 +759,15 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
self.set_scan_control_settings(
|
||||
mode=ScanControlMode.SIMPLE, scan_duration=self.scan_parameter.scan_duration
|
||||
)
|
||||
elif scan_name == "xas_simple_scan_with_xrd":
|
||||
elif scan_name == "xas_simple_scan_with_trig":
|
||||
self.set_xas_settings(
|
||||
low=self.scan_parameter.start,
|
||||
high=self.scan_parameter.stop,
|
||||
scan_time=self.scan_parameter.scan_time,
|
||||
)
|
||||
self.set_xrd_settings(
|
||||
enable_low=self.scan_parameter.xrd_enable_low,
|
||||
enable_high=self.scan_parameter.xrd_enable_high,
|
||||
num_trigger_low=self.scan_parameter.num_trigger_low,
|
||||
num_trigger_high=self.scan_parameter.num_trigger_high,
|
||||
self.set_trig_settings(
|
||||
enable_low=self.scan_parameter.trig_enable_low,
|
||||
enable_high=self.scan_parameter.trig_enable_high,
|
||||
exp_time_low=self.scan_parameter.exp_time_low,
|
||||
exp_time_high=self.scan_parameter.exp_time_high,
|
||||
cycle_low=self.scan_parameter.cycle_low,
|
||||
@@ -796,11 +784,9 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
p_kink=self.scan_parameter.p_kink,
|
||||
e_kink=self.scan_parameter.e_kink,
|
||||
)
|
||||
self.set_xrd_settings(
|
||||
self.set_trig_settings(
|
||||
enable_low=False,
|
||||
enable_high=False,
|
||||
num_trigger_low=0,
|
||||
num_trigger_high=0,
|
||||
exp_time_low=0,
|
||||
exp_time_high=0,
|
||||
cycle_low=0,
|
||||
@@ -809,7 +795,7 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
self.set_scan_control_settings(
|
||||
mode=ScanControlMode.ADVANCED, scan_duration=self.scan_parameter.scan_duration
|
||||
)
|
||||
elif scan_name == "xas_advanced_scan_with_xrd":
|
||||
elif scan_name == "xas_advanced_scan_with_trig":
|
||||
self.set_advanced_xas_settings(
|
||||
low=self.scan_parameter.start,
|
||||
high=self.scan_parameter.stop,
|
||||
@@ -817,11 +803,9 @@ class Mo1Bragg(Device, PositionerBase):
|
||||
p_kink=self.scan_parameter.p_kink,
|
||||
e_kink=self.scan_parameter.e_kink,
|
||||
)
|
||||
self.set_xrd_settings(
|
||||
enable_low=self.scan_parameter.xrd_enable_low,
|
||||
enable_high=self.scan_parameter.xrd_enable_high,
|
||||
num_trigger_low=self.scan_parameter.num_trigger_low,
|
||||
num_trigger_high=self.scan_parameter.num_trigger_high,
|
||||
self.set_trig_settings(
|
||||
enable_low=self.scan_parameter.trig_enable_low,
|
||||
enable_high=self.scan_parameter.trig_enable_high,
|
||||
exp_time_low=self.scan_parameter.exp_time_low,
|
||||
exp_time_high=self.scan_parameter.exp_time_high,
|
||||
cycle_low=self.scan_parameter.cycle_low,
|
||||
|
||||
Reference in New Issue
Block a user