DAQ: don't wait for dry when failure, wait after dry when failure.

Added error message to track this.
This commit is contained in:
appleb_m
2025-12-11 12:34:52 +01:00
parent 178b963140
commit eb66fd2f7f
2 changed files with 5 additions and 3 deletions
+3 -3
View File
@@ -325,20 +325,20 @@ class AareDAQ:
def __mount_failure_handler(self, mount_error):
failed = self.__cfg.increment_failed_mount_count()
if failed >=4:
self.__devs.tell.dry(wait=True, wait_cold=False)
self.__devs.tell.dry(wait=False, wait_cold=False)
raise CriticalTellException(f"Repeated drying failure, moved to park"
f"\nThere either really is no sample or"
f"a critical failure.\nPlease check the dewar and if a sample, "
f"please contact the MX team")
elif failed >=3:
self.__devs.tell.dry(wait=True, wait_cold=False)
self.__devs.tell.dry(wait=False, wait_cold=False)
raise WarningTellException(f"Continued to not find a sample, drying robot in park for 10 minutes. "
f"\n Please get a cup of coffee.\nAfter the robot has dried, "
f"check the sample positions that have been missed, if no samples continue!"
f"\nOtherwise there may be a critical error so please let your local "
f"contact for support")
elif failed == 2:
self.__devs.tell.dry(wait=True)
self.__devs.tell.dry(wait=False)
raise MountingFailed(f"Drying gripper: repeated error: {mount_error}")
else:
raise MountingFailed(f"{mount_error}")
+2
View File
@@ -149,10 +149,12 @@ class TellClient:
def wait_ready(self):
if self.__simulation:
logger.info("simulated wait_ready")
time.sleep(3.0)
self._simulated_state = "Ready"
return
# Monitors event but polls every second just n case an event is missed
logger.debug(f"Waiting for robot to be ready. Current state: {self.state}")
while True:
if self.state != "Busy":
break