diff --git a/src/aare/daq/daq.py b/src/aare/daq/daq.py index 48cebba1..b3feea28 100644 --- a/src/aare/daq/daq.py +++ b/src/aare/daq/daq.py @@ -583,8 +583,29 @@ class AareDAQ: return None - def __raster(self, r: RasterGridRequest) -> CompletedRasterGridElem: + def __raster(self, r: RasterGridRequest):# -> CompletedRasterGridElem: + max_time = r.exp_time_s * r.n_x * r.n_y + 60 + row_time = r.exp_time_s * r.n_x + row_width_mm = r.grid_size_mm.x * r.n_x + self.__set_state(BeamlineStateEnum.DataCollection) + save_smargon_position = self.__devs.smargon_pos + if r.smargon_top_left is not None: + delta_mm = self.sample_geometry.smargon_nudge(Coordinate(x=r.grid_size_mm.x / 2, y=r.grid_size_mm.y / 2)) + self.__devs.set_smargon_pos(SmargonCoordinate(sh_mm=r.smargon_top_left.sh_mm + delta_mm, + phi_deg=r.smargon_top_left.phi_deg, + chi_deg=r.smargon_top_left.chi_deg)) + self.__devs.aerotech_omega = r.omega_deg + self.__devs.smargon_wait(timeout=180) + status = self.status + print(f"raster status {status}") + print(f'raster grid request: {r}') + #self.__jfjoch.measure_raster(r, status) + self.__devs.aerotech.run_grid_scan(cell_height_mm=r.grid_size_mm.y, num_rows=r.n_x, + row_width_mm=row_width_mm, time_per_row_s=row_time, task_id=3) + self.__devs.aerotech_pos = self.__cfg.abr_meas_pos + #result = self.__jfjoch.wait_till_done(60) return None + #return CompletedRasterGridElem(request=copy.deepcopy(r), result=, centre_of_mass=None) def measure_raster(self, r: RasterGridRequest, auto: bool) -> CompletedRasterGrid: self.__cfg.try_set_busy(timeout=ceil(360)) @@ -593,10 +614,11 @@ class AareDAQ: result = self.__auto_center(r) else: raster_result = self.__raster(r) - result = CompletedRasterGrid(r=[raster_result]) + #result = CompletedRasterGrid(r=[raster_result]) self.__set_state(BeamlineStateEnum.SampleAlignment) self.__cfg.state_busy = False - return result + return CompletedRasterGrid(r=[]) + #return result except Exception as e: try: self.__aare.axc_failed(self.sample)