您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

38 行
1.2KB

  1. from modules import cbpi
  2. from modules.core.controller import KettleController, FermenterController
  3. from modules.core.props import Property
  4. @cbpi.fermentation_controller
  5. class Hysteresis(FermenterController):
  6. heater_offset_min = Property.Number("Heater Offset min", True, 0)
  7. heater_offset_max = Property.Number("Heater Offset max", True, 0)
  8. cooler_offset_min = Property.Number("Cooler Offset min", True, 0)
  9. cooler_offset_max = Property.Number("Cooler Offset max", True, 0)
  10. def stop(self):
  11. super(FermenterController, self).stop()
  12. self.heater_off()
  13. self.cooler_off()
  14. def run(self):
  15. while self.is_running():
  16. target_temp = self.get_target_temp()
  17. temp = self.get_temp()
  18. if temp + int(self.heater_offset_min) < target_temp:
  19. self.heater_on(100)
  20. if temp + int(self.heater_offset_max) > target_temp:
  21. self.heater_off()
  22. if temp > target_temp + int(self.cooler_offset_min):
  23. self.cooler_on(100)
  24. if temp < target_temp + int(self.cooler_offset_max):
  25. self.cooler_off()
  26. self.sleep(1)