This commit is contained in:
whb0514
2024-11-16 16:46:18 +08:00
parent a363ac03e0
commit 0293507b71
3 changed files with 44 additions and 6 deletions

View File

@@ -23,7 +23,6 @@ class HeaterCheck:
self.max_error = config.getfloat('max_error', 120., minval=0.)
self.heating_gain = config.getfloat('heating_gain', 2., above=0.)
self.position_z = config.getfloat('position_z', 9999., minval=0.)
logging.info("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA %f", self.position_z)
default_gain_time = 20.
if self.heater_name == 'heater_bed':
default_gain_time = 60.
@@ -47,6 +46,7 @@ class HeaterCheck:
reactor = self.printer.get_reactor()
reactor.update_timer(self.check_timer, reactor.NEVER)
def check_event(self, eventtime):
heater_bed = self.printer.lookup_object('heater_bed')
temp, target = self.heater.get_temp(eventtime)
if temp >= target - self.hysteresis or target <= 0.:
# Temperature near target - reset checks
@@ -60,7 +60,6 @@ class HeaterCheck:
return eventtime + 1.
self.error += (target - self.hysteresis) - temp
if not self.approaching_target:
logging.info("CCCCC self.error is %f", self.error)
if target != self.last_target:
# Target changed - reset checks
logging.info("Heater %s approaching new target of %.3f",
@@ -71,12 +70,15 @@ class HeaterCheck:
elif self.error >= self.max_error:
toolhead = self.printer.lookup_object('toolhead')
position_z = toolhead.get_position()[2]
logging.info("CCCCC position_z is %f", position_z)
logging.info("Check error: position_z is %f", position_z)
if position_z > self.position_z:
self.error = 0.
else:
else:
# Failure due to inability to maintain target temperature
return self.heater_fault()
elif heater_bed.heater_bed_state == 1 and self.heater_name == "chamber":
self.error = 0.
self.goal_temp = temp - self.heating_gain
elif temp >= self.goal_temp:
# Temperature approaching target - reset checks
self.starting_approach = False