diff --git a/components/plant/pot.py b/components/plant/pot.py index 40aec74..7f6db5e 100644 --- a/components/plant/pot.py +++ b/components/plant/pot.py @@ -6,7 +6,6 @@ class Pot(APlant): def __init__(self, dt, params, theta_amb=20): APlant.__init__(self) self.dt = dt - self.alpha = 1.0 self.e = 0 self.x = 0 @@ -20,26 +19,19 @@ class Pot(APlant): self.temp = params['theta'] self.theta_amb = theta_amb - self.alpha = self.dt / 1 - self.alpha_delay = self.dt/self.Td if self.Td > 0 else 1 self.power_set = 0 - self.power_actual = 0 self.delay = Delay(self.dt, self.Td) def activate(self, enable): pass def process(self): - # Delay - if 0: - self.power_actual = (1-self.alpha_delay) * self.power_actual + self.alpha_delay * self.power_set - else: - self.delay.put(self.power_set) - self.power_actual = self.delay.get() - leak = 1/self.M * self.L * (self.theta_amb - self.temp)/self.theta_amb - self.temp += (self.power_actual / (self.M * self.C) + leak) * self.dt + self.temp += (self.power_set / (self.M * self.C) + leak) * self.dt + + # Delay + self.delay.put(self.temp) def is_activated(self): return True @@ -48,7 +40,10 @@ class Pot(APlant): self.power_set = power def get_power(self): - return round(self.power_actual, 1) + return round(self.power_set, 1) def get_temperature(self): return self.temp + + def get_temperature_delayed(self): + return self.delay.get()