From c8660ca60ec6e5223338fb87e643b756dd1156bf Mon Sep 17 00:00:00 2001 From: jens Date: Fri, 18 Dec 2020 17:03:17 +0100 Subject: [PATCH] - fixed hendi power --- components/actor/heater_hendi.py | 2 +- tasks/heater.py | 16 ++++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/components/actor/heater_hendi.py b/components/actor/heater_hendi.py index d037dc8..719f563 100644 --- a/components/actor/heater_hendi.py +++ b/components/actor/heater_hendi.py @@ -34,7 +34,7 @@ class HeaterHendi(AHeater): else: self.hendi.setSwitch(1) self.hendi.setPowerWatts(power) - self.power_eff = self.hendi.getPowerWatts() if self.hendi.getSwitch() == 1 else 0 + self.power_eff = self.hendi.getPowerWatts() if power > 0 else 0 def set_power(self, power): self.power_set = min(self.get_power_max(), power) diff --git a/tasks/heater.py b/tasks/heater.py index 16ce4d1..2ede766 100644 --- a/tasks/heater.py +++ b/tasks/heater.py @@ -44,13 +44,6 @@ class HeaterTask(ATask): with self.device.open(): while True: - if self.power_soll < self.device.get_power_min(): - self.device.set_power(self.device.get_power_min()) - self.device.activate(False) - else: - self.device.set_power(self.power_soll) - self.device.activate(True) - on_count = pulse_period_count if self.device.get_power_min() > 0: on_count = pulse_period_count*min(1, self.power_soll / self.device.get_power_min()) @@ -59,10 +52,13 @@ class HeaterTask(ATask): if self.pulse_counter >= pulse_period_count: self.pulse_counter = 0 - if self.pulse_counter < on_count: - self.device.activate(True) + if self.power_soll < self.device.get_power_min(): + if self.pulse_counter < on_count: + self.device.set_power(self.device.get_power_min()) + else: + self.device.set_power(0) else: - self.device.activate(False) + self.device.set_power(self.power_soll) self.device.process() await asyncio.sleep(self.interval)