예제 #1
0
 def do_work(self, data):
     self.pause_all_devices()
     self.current_set_temperature = float(data.target)
     self.hold_timer = None
     self.hold_pause_timer = None
     seconds = data.hold_time * data.time_unit_seconds
     if self.simulation:
         seconds /= MASH_DEBUG_TIME_DIVIDER
         self.inputs['Temperature'].test_temperature = MASH_DEBUG_INIT_TEMP
     self.current_hold_time = timedelta(seconds=seconds)
     cycle_time = float(self.inputs['Temperature'].cycle_time)
     if self.pid is None:
         self.pid = PID(None, self.current_set_temperature, cycle_time)
     else:
         self.pid = PID(self.pid.pid_params, self.current_set_temperature, cycle_time)
     self.resume_all_devices()