From 327ab0acccd94206f72ba723353f357b19a940e1 Mon Sep 17 00:00:00 2001 From: Filip Leonarski Date: Thu, 10 Jul 2025 16:48:18 +0200 Subject: [PATCH] DAQ: Two measurements for auto --- daq/src/aaredaq/daq.py | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/daq/src/aaredaq/daq.py b/daq/src/aaredaq/daq.py index a03aa5f7..a997ecfe 100644 --- a/daq/src/aaredaq/daq.py +++ b/daq/src/aaredaq/daq.py @@ -339,24 +339,23 @@ class AareDAQ: res1 = self.__raster(grid) - # self.__devs.aerotech.move(grid.omega_deg + 90, wait=True) + grid.omega_deg += 90 + self.__devs.aerotech.move(grid.omega_deg, wait=True) + + grid.n_x = 7 + grid.n_y = 20 + grid.file_prefix = f"{old_prefix}_{grid.omega_deg}deg" + offset = Coordinate(x=-grid.n_x * grid.grid_size_mm.x / 2.0, y=-grid.n_y * grid.grid_size_mm.y / 2.0) + geom = self.sample_geometry + grid.smargon.sh_mm = geom.smargon.sh_mm + geom.smargon_nudge(offset) + res2 = self.__raster(grid) + self.__set_state(BeamlineStateEnum.SampleAlignment) - return res1 + return CompletedRasterGrid(r=[res1, res2]) else: return None - def auto_center(self, grid: RasterGridRequest) -> CompletedRasterGrid | None: - try: - self.__cfg.try_set_busy(timeout=360) - result = self.__auto_center(grid) - self.__cfg.state_busy = False - return result - except Exception as e: - self.__set_state(BeamlineStateEnum.SampleAlignment) - self.__cfg.state_busy = False - raise e - - def __raster(self, r: RasterGridRequest) -> CompletedRasterGrid: + def __raster(self, r: RasterGridRequest) -> CompletedRasterGridElem: max_time = r.exp_time_s * r.n_y * r.n_x + 60 self.__cfg.dtz = r.dtz self.__set_state(BeamlineStateEnum.DataCollection) @@ -399,7 +398,7 @@ class AareDAQ: else: print("Auto finding optimal image failed due to no images found. Using previous position.") self.__devs.smargon.target = save_smargon_position - return CompletedRasterGrid(r=[CompletedRasterGridElem(request=copy.deepcopy(r), result=result)]) + return CompletedRasterGridElem(request=copy.deepcopy(r), result=result) def measure_raster(self, r: RasterGridRequest, auto: bool) -> CompletedRasterGrid: self.__cfg.try_set_busy(timeout=ceil(360)) @@ -407,7 +406,8 @@ class AareDAQ: if auto: result = self.__auto_center(r) else: - result = self.__raster(r) + raster_result = self.__raster(r) + result = CompletedRasterGrid(r=[raster_result]) self.__set_state(BeamlineStateEnum.SampleAlignment) self.__cfg.state_busy = False return result