diff --git a/daq/src/aaredaq/daq.py b/daq/src/aaredaq/daq.py index 3e83380a..0c98a449 100644 --- a/daq/src/aaredaq/daq.py +++ b/daq/src/aaredaq/daq.py @@ -546,8 +546,11 @@ class AareDAQ: self.__devs.abr_pos = self.__cfg.abr_meas_pos result = self.__jfjoch.wait_till_done(60) - #if self.sample is not None and self.sample.db_id is not None: - # self.__aare.ingest_gridscan(self.sample, result, r) + if self.sample is not None and self.sample.db_id is not None and result is not None: + try: + self.__aare.ingest_gridscan(self.sample, result, r) + except Exception as e: + logger.error(f"Exception ingesting grid scan: {e}") images = result.images output_data = { @@ -606,10 +609,19 @@ class AareDAQ: else: raster_result = self.__raster(r) result = CompletedRasterGrid(r=[raster_result]) + self.__devs.reflector_up = True + time.sleep(0.1) + if self.sample is not None and self.sample.db_id is not None: + self.save_screenshot_db(self.sample.db_id, f"post_raster_{r.omega_deg}deg") + time.sleep(0.1) self.__set_state(BeamlineStateEnum.SampleAlignment) self.__cfg.state_busy = False return result except Exception as e: + try: + self.__aare.axc_failed(self.sample) + except Exception as axc_e: + logger.error(f"Exception while reporting AXC failure: {axc_e}") self.__set_state(BeamlineStateEnum.SampleAlignment) self.__cfg.state_busy = False raise e @@ -618,7 +630,8 @@ class AareDAQ: if request.dtz is not None: logger.info(f'requesting dtz to move to {request.dtz}') self.__cfg.dtz = request.dtz - self.save_screenshot_db(self.sample.db_id, f"pre_rotation{self.sample.db_id}_{self.__devs.zoom}") + if self.sample is not None and self.sample.db_id is not None: + self.save_screenshot_db(self.sample.db_id, f"pre_rotation{self.sample.db_id}_{self.__devs.zoom}") self.__set_state(BeamlineStateEnum.DataCollection) if request.transmission is not None: