DEFAULT_DRY_HEAT_TIME = 40.0 DEFAULT_DRY_SPEED = 0.3 DEFAULT_DRY_WAIT_COLD = 40.0 def dry(heat_time=None, speed=None, wait_cold = None): """ heat_time (float): in seconds speed (float): % of nominal speed wait_cold(float): if negative, move to dewar after drying Else move to cold and wait (in seconds) before returning. """ print "dry()" if heat_time is None: heat_time = DEFAULT_DRY_HEAT_TIME if speed is None: speed = DEFAULT_DRY_SPEED if wait_cold is None: wait_cold = DEFAULT_DRY_WAIT_COLD if robot.simulated: time.sleep(10.0) return #Initial chec robot.assert_no_task() robot.reset_motion() robot.wait_ready() robot.assert_cleared() #robot.assert_in_known_point() set_status("Drying") #Enabling enable_motion() try: set_heater(True) robot.move_heater(speed, False) time.sleep(heat_time) robot.move_heater(speed, True) set_air_stream(True) robot.move_heater(speed, False) finally: set_heater(False) set_air_stream(False) set_setting("dry_mount_counter", 0) set_setting("dry_timestamp", time.time()) if wait_cold >=0 : cover_info = get_cover_location_mm() robot.move_dewar(*cover_info) robot.move_cold() time.sleep(wait_cold) else: robot.move_park() return True