workflows: added set cam settings for xtal_snapshot - however if backlight fails this does not work. added detector moves.
This commit is contained in:
+24
-18
@@ -1,4 +1,4 @@
|
||||
from aare.common.models import StagePositionEnum
|
||||
from aare.common.models import StagePositionEnum, SampleCameraSettings
|
||||
from aare.daq.devices import BeamlineDevices
|
||||
from aare.daq.config import BeamlineConfig, ABR_POS_MOUNT
|
||||
|
||||
@@ -8,6 +8,8 @@ from aare.devices.bec_worker import BeamlineState
|
||||
|
||||
logger = setup_logger("aareDAQ")
|
||||
|
||||
SAFE_POSITION = 900
|
||||
|
||||
def move_bsz(devs: BeamlineDevices, target: float):
|
||||
if abs(target - devs.bsz.position) > 0.1:
|
||||
beamstop_stage_measure = devs.beamstop_stage_up
|
||||
@@ -53,6 +55,11 @@ def common_2rse(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
print('try to move aerotech')
|
||||
devs.aerotech_pos = ABR_POS_MOUNT
|
||||
|
||||
def rse2se(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
common_2rse(devs, cfg)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def m2se(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
devs.bec_worker.planner.move_to(BeamlineState.MANUAL_SAMPLE_EXCHANGE)
|
||||
@@ -81,27 +88,19 @@ def sa2se(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
raise
|
||||
|
||||
def sa2rse(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
common_2rse(devs, cfg)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def sa2xtal_snapshot(devs:BeamlineDevices, cfg:BeamlineConfig):
|
||||
logger.info("SA to Xtal Snapshot")
|
||||
devs.samcam_settings.exposure = 0.001
|
||||
devs.samcam_settings.gain = 0.0
|
||||
devs.samcam_settings = SampleCameraSettings(gain=0.0, exposure=0.0005)
|
||||
logger.debug(f"new sam cam settings: {devs.samcam_settings}")
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
devs.bec_worker.planner.move_to(BeamlineState.XTAL_SNAPSHOT)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def dc2xtal_snapshot(devs:BeamlineDevices, cfg:BeamlineConfig):
|
||||
logger.debug("DC to Xtal Snapshot")
|
||||
devs.samcam_settings.exposure = 0.001
|
||||
devs.samcam_settings.gain = 0.0
|
||||
devs.samcam_settings = SampleCameraSettings(gain=0.0, exposure=0.0005)
|
||||
logger.debug(f"new sam cam settings: {devs.samcam_settings}")
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
devs.bec_worker.planner.move_to(BeamlineState.XTAL_SNAPSHOT)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def xtal_snapshot2dc(devs:BeamlineDevices, cfg:BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
@@ -130,9 +129,7 @@ def xtal_snapshot2dh(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
sa2dh(devs,cfg)
|
||||
|
||||
def dc2rse(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
common_2rse(devs, cfg)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def se2sa(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
@@ -146,12 +143,18 @@ def rse2sa(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
def sa2dc(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
devs.bec_worker.move_to(BeamlineState.DATA_COLLECTION)
|
||||
status.wait(timeout=60)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def dc2sa(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
status = None
|
||||
if cfg.dtz and cfg.dtz < SAFE_POSITION:
|
||||
status = devs.bec_worker.det_z(value=SAFE_POSITION)
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
devs.bec_worker.planner.move_to(BeamlineState.SAMPLE_ALIGNMENT)
|
||||
devs.aerotech_pos = cfg.abr_meas_pos
|
||||
if hasattr(status, "wait"):
|
||||
status.wait(timeout=60)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
|
||||
def sa2xrf(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
@@ -195,6 +198,9 @@ def ba2bl(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.scintillator = 20.0
|
||||
|
||||
def sa2dh(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
common2dh(devs, cfg)
|
||||
|
||||
def common2dh(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
devs.samcam_auto(AutoEnum.AUTO)
|
||||
common_2rse(devs, cfg)
|
||||
devs.samcam_auto(AutoEnum.ONCE)
|
||||
@@ -212,9 +218,9 @@ def dh2sa(devs: BeamlineDevices, cfg: BeamlineConfig):
|
||||
if __name__ == "__main__":
|
||||
from aare.common.beamline import mx_beamline
|
||||
import time
|
||||
bl = mx_beamline()
|
||||
cfg = BeamlineConfig(bl)
|
||||
devs = BeamlineDevices(bl)
|
||||
common_2rse(devs, cfg)
|
||||
beamline = mx_beamline()
|
||||
config = BeamlineConfig(beamline)
|
||||
devices = BeamlineDevices(beamline)
|
||||
common_2rse(devices, config)
|
||||
time.sleep(10.0)
|
||||
rse2sa(devs, cfg)
|
||||
rse2sa(devices, config)
|
||||
Reference in New Issue
Block a user