A Hephestos 2-es nyomtatóm, miután végzett a nyomtatással, a tárgyhűtő ventilátorokat is felkapcsolta, hogy gyorsabban lehűtse a blokkot. Ez a funkció mindig is tetszett, ezért készítettem egy makrót hozzá.
Ez egy "delayed" makró, ami azt jelenti, hogy boot után a beállított 5 másodperc késleltetés után lefut, majd minden futásának a végén ismét beállítja a saját meghívását újabb 5 másodperc késleltetéssel. Tehát ez a kód rendszeresen meghívódik, de nem túl gyakran, így biztosan nem terheli az erőforrásokat.
A lényegi része abból áll, hogy ellenörzi van-e valamilyen HotEnd hőmérséklet beállítva.
- Ha van, akkor nem csinál semmit, nem zavarja meg az aktuális állapotot
- Ha viszont nincs, és ráadásul meleg a HotEnd, akkor hűteni kell. Az M160 gcode 0-255 közötti értéket vár, a 255 a 100%-ot jelenti, a 0 a kikapcsolt ventilátort. Hogy legyen egy kis játék még benne, a paraméter helyére az aktuális hőmérsékletet állítom be, így minél inkább hűl a HotEnd, annál gyengébb a fordulatszám. (Itt ugye feltétlezem, hogy 255°C fölé nem melegítem a HotEnd-et.)
[delayed_gcode part_fan_cooling]
initial_duration: 5.
gcode:
#if the extruder is off
{% if printer.extruder.target == 0 %}
{% if printer.extruder.temperature > 51.0 %}
M106 S{ printer.extruder.temperature }
{% else %}
M106 S0
{% endif %}
{% else %}
#if the extruder temp is at target temperature
{% endif %}
UPDATE_DELAYED_GCODE ID=part_fan_cooling DURATION=5
A Hotendhez hasonlóan a Bed hőmérsékleték ezen az objektumon keresztül lehet lekérdezni: printer.heater_bed.temperature