DAQ: tempoary raster function for SAS-TT school demo

This commit is contained in:
2026-02-06 15:58:29 +01:00
parent e1866c0085
commit 7fb1c61677
+25 -3
View File
@@ -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)