kopia lustrzana https://github.com/botheredbybees/kilnController
improved handling of total time in oven
rodzic
aad897fb75
commit
24c551238b
8
oven.py
8
oven.py
|
@ -21,6 +21,7 @@ class Oven (threading.Thread):
|
||||||
self.profile = None
|
self.profile = None
|
||||||
self.start_time = 0
|
self.start_time = 0
|
||||||
self.runtime = 0
|
self.runtime = 0
|
||||||
|
self.totaltime = 0
|
||||||
self.power = 0.0
|
self.power = 0.0
|
||||||
self.state = Oven.STATE_IDLE
|
self.state = Oven.STATE_IDLE
|
||||||
self.temp_sensor = TempSensor(self)
|
self.temp_sensor = TempSensor(self)
|
||||||
|
@ -29,6 +30,7 @@ class Oven (threading.Thread):
|
||||||
|
|
||||||
def run_profile(self, profile):
|
def run_profile(self, profile):
|
||||||
self.profile = profile
|
self.profile = profile
|
||||||
|
self.totaltime = 300.0
|
||||||
self.state = Oven.STATE_RUNNING
|
self.state = Oven.STATE_RUNNING
|
||||||
self.start_time = datetime.datetime.now()
|
self.start_time = datetime.datetime.now()
|
||||||
log.info("Starting")
|
log.info("Starting")
|
||||||
|
@ -40,12 +42,12 @@ class Oven (threading.Thread):
|
||||||
while True:
|
while True:
|
||||||
if self.state == Oven.STATE_RUNNING:
|
if self.state == Oven.STATE_RUNNING:
|
||||||
self.runtime = (datetime.datetime.now() - self.start_time).total_seconds()
|
self.runtime = (datetime.datetime.now() - self.start_time).total_seconds()
|
||||||
log.info("running at %.1f deg C, power %.2f (%.1fs/%.0f)"%(self.temp_sensor.temperature,self.power,self.runtime,300.0))
|
log.info("running at %.1f deg C, power %.2f (%.1fs/%.0f)"%(self.temp_sensor.temperature,self.power,self.runtime,self.totaltime))
|
||||||
if self.temp_sensor.temperature < 250:
|
if self.temp_sensor.temperature < 250:
|
||||||
self.power = 1.0
|
self.power = 1.0
|
||||||
else:
|
else:
|
||||||
self.power = 0.0
|
self.power = 0.0
|
||||||
if self.runtime > 300:
|
if self.runtime >= self.totaltime:
|
||||||
self.power = 0.0
|
self.power = 0.0
|
||||||
self.state = Oven.STATE_IDLE
|
self.state = Oven.STATE_IDLE
|
||||||
elif self.state == Oven.STATE_ABORT:
|
elif self.state == Oven.STATE_ABORT:
|
||||||
|
@ -61,7 +63,7 @@ class Oven (threading.Thread):
|
||||||
'temperature': self.temp_sensor.temperature,
|
'temperature': self.temp_sensor.temperature,
|
||||||
'state': self.state,
|
'state': self.state,
|
||||||
'power': self.power,
|
'power': self.power,
|
||||||
'totaltime': 300
|
'totaltime': self.totaltime
|
||||||
}
|
}
|
||||||
return state
|
return state
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue