DAQ: don't wait for dry when failure, wait after dry when failure.
Added error message to track this.
This commit is contained in:
@@ -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}")
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user