优化打印机配置 解决停靠位置 暂停冷却等问题

This commit is contained in:
张开科 2024-09-19 14:27:25 +08:00
parent 1b1a2ad3e1
commit 3afea033d0
4 changed files with 313 additions and 87 deletions

View File

@ -19,7 +19,14 @@ enable_force_move: True
[idle_timeout]
gcode:
{% if printer.webhooks.state|lower == 'ready' %}
{% if printer.pause_resume.is_paused|lower == 'false' %}
{% if printer.pause_resume.is_paused %}
{% if printer["extruder"] is defined %}
SET_HEATER_TEMPERATURE HEATER=extruder
{% endif %}
{% if printer["extruder1"] is defined %}
SET_HEATER_TEMPERATURE HEATER=extruder1
{% endif %}
{% else %}
TURN_OFF_HEATERS
{% endif %}
{% endif %}
@ -103,7 +110,7 @@ sensor_type: Generic 3950
sensor_pin: PC0
max_power: 1.0
min_temp: 0
max_temp: 100
max_temp: 130
# control: pid
# pid_kp: 17.22
# pid_ki: 0.9
@ -113,7 +120,7 @@ max_temp: 100
max_error: 20
hysteresis: 5
check_gain_time: 120
heating_gain: 2
heating_gain: 1
[heater_generic chamber]
heater_pin:PD15
@ -121,7 +128,7 @@ max_power:1.0
sensor_type: Generic 3950
sensor_pin:PC3
min_temp: 0
max_temp: 60
max_temp: 70
pwm_cycle_time: 0.3
# control: pid
# pid_kp: 30.68
@ -130,9 +137,9 @@ pwm_cycle_time: 0.3
[verify_heater chamber]
max_error: 120
hysteresis: 5
check_gain_time:300
heating_gain: 1
hysteresis: 0
check_gain_time: 3600
heating_gain: 0.01
[fan_generic Air_filter_fan]
pin: PC8
@ -240,7 +247,7 @@ max_extrude_cross_section:5
heater_pin: tool:PC6
max_power: 1.0
min_temp: 0
max_temp: 450
max_temp: 435
min_extrude_temp: 180
pressure_advance: 0.03
pressure_advance_smooth_time:0.040
@ -289,7 +296,7 @@ max_extrude_cross_section:5
heater_pin: tool:PC7
max_power: 1.0
min_temp: 0
max_temp: 450
max_temp: 435
min_extrude_temp: 180
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
@ -527,7 +534,7 @@ gcode:
{% if params.S is defined %}
M141 S{s}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=chamber MINIMUM={s-1} MAXIMUM={s+2}
TEMPERATURE_WAIT SENSOR="heater_generic chamber" MINIMUM={s-2} MAXIMUM={s+2}
{% endif %}
{% endif %}
@ -537,3 +544,68 @@ gcode:
C84
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
[gcode_macro _CLIENT_VARIABLE]
variable_use_custom_pos : True
variable_custom_park_x : 500.0
variable_custom_park_y : 350.0
variable_custom_park_dz : 20.0
variable_retract : 2.0
variable_cancel_retract : 10.0
variable_speed_retract : 60.0
variable_unretract : 20.0
variable_speed_unretract : 6.0
variable_speed_hop : 5.0
variable_speed_move : 100.0
variable_park_at_cancel : False
variable_park_at_cancel_x : None
variable_park_at_cancel_y : None
variable_use_fw_retract : False
variable_idle_timeout : 600
variable_runout_sensor : ""
variable_user_pause_macro : "_USER_PAUSE"
variable_user_resume_macro: "_USER_RESUME"
variable_user_cancel_macro: "_USER_CANCEL"
gcode:
# Nothing
[gcode_macro _USER_PAUSE]
gcode:
{% set extruderTools = [('extruder', 'last_extruder_temp'),
('extruder1', 'last_extruder1_temp')] %}
{% for extruder_name, name in extruderTools %}
{% set temp = printer[extruder_name].target if extruder_name in printer else 0 %}
{% set restore = False if printer[extruder_name] == ''
else True if params.RESTORE|default(1)|int == 1 else False %}
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE={name} VALUE="{{'restore': restore, 'temp': temp}}"
{% endfor %}
[gcode_macro RESUME]
variable_last_extruder_temp: {'restore': False, 'temp': 0}
variable_last_extruder1_temp: {'restore': False, 'temp': 0}
[gcode_macro _USER_RESUME]
gcode:
{% set extruder_info = [
{'index': 0, 'name': 'last_extruder_temp'},
{'index': 1, 'name': 'last_extruder1_temp'}] %}
{% for info in extruder_info %}
{% set variable = printer["gcode_macro RESUME"][info.name] %}
{% if variable.restore %}
M104 T{ info.index } S{ variable.temp }
{% endif %}
{% endfor %}
{% for info in extruder_info %}
{% set variable = printer["gcode_macro RESUME"][info.name] %}
{% if variable.restore %}
{% set tool = "extruder" if info.index == 0 else "extruder1" %}
{% set needwait = True if printer[tool].temperature < variable.temp else False %}
{% if needwait %}
M109 T{info.index} S{variable.temp}
{% endif %}
{% endif %}
{% endfor %}
[gcode_macro _USER_CANCEL]
gcode:
M84

View File

@ -20,9 +20,18 @@ pid_kd = 736.891
[heater_generic chamber]
control: pid
pid_kp: 30.68
pid_ki: 0.21
pid_kp: 214.568
pid_ki: 8.115
pid_kd: 0
[probe]
z_offset: 4
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [input_shaper]
#*# shaper_type_x = mzv
#*# shaper_freq_x = 31.2
#*# shaper_type_y = ei
#*# shaper_freq_y = 29.6

View File

@ -19,7 +19,14 @@ enable_force_move: True
[idle_timeout]
gcode:
{% if printer.webhooks.state|lower == 'ready' %}
{% if printer.pause_resume.is_paused|lower == 'false' %}
{% if printer.pause_resume.is_paused %}
{% if printer["extruder"] is defined %}
SET_HEATER_TEMPERATURE HEATER=extruder
{% endif %}
{% if printer["extruder1"] is defined %}
SET_HEATER_TEMPERATURE HEATER=extruder1
{% endif %}
{% else %}
TURN_OFF_HEATERS
{% endif %}
{% endif %}
@ -103,7 +110,7 @@ sensor_type: Generic 3950
sensor_pin: PC0
max_power: 1.0
min_temp: 0
max_temp: 100
max_temp: 130
# control: pid
# pid_kp: 59.368
# pid_ki: 1.656
@ -113,7 +120,7 @@ max_temp: 100
max_error: 20
hysteresis: 5
check_gain_time: 120
heating_gain: 2
heating_gain: 1
[heater_generic chamber]
heater_pin:PD15
@ -121,7 +128,7 @@ max_power:1.0
sensor_type: Generic 3950
sensor_pin:PC3
min_temp: 0
max_temp: 70
max_temp: 80
pwm_cycle_time: 0.3
# control: pid
# pid_kp: 30.68
@ -130,9 +137,9 @@ pwm_cycle_time: 0.3
[verify_heater chamber]
max_error: 120
hysteresis: 5
check_gain_time:300
heating_gain: 1
# hysteresis: 0
check_gain_time: 3600
heating_gain: 0.01
[fan_generic Air_filter_fan]
pin: PC8
@ -240,7 +247,7 @@ max_extrude_cross_section:5
heater_pin: tool:PC6
max_power: 1.0
min_temp: 0
max_temp: 450
max_temp: 435
min_extrude_temp: 180
pressure_advance: 0.03
pressure_advance_smooth_time:0.040
@ -289,7 +296,7 @@ max_extrude_cross_section:5
heater_pin: tool:PC7
max_power: 1.0
min_temp: 0
max_temp: 450
max_temp: 435
min_extrude_temp: 180
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
@ -527,7 +534,7 @@ gcode:
{% if params.S is defined %}
M141 S{s}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=chamber MINIMUM={s-1} MAXIMUM={s+2}
TEMPERATURE_WAIT SENSOR="heater_generic chamber" MINIMUM={s-2} MAXIMUM={s+2}
{% endif %}
{% endif %}
@ -537,3 +544,68 @@ gcode:
C84
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
[gcode_macro _CLIENT_VARIABLE]
variable_use_custom_pos : True
variable_custom_park_x : 300.0
variable_custom_park_y : 200.0
variable_custom_park_dz : 20.0
variable_retract : 2.0
variable_cancel_retract : 10.0
variable_speed_retract : 60.0
variable_unretract : 20.0
variable_speed_unretract : 6.0
variable_speed_hop : 5.0
variable_speed_move : 100.0
variable_park_at_cancel : False
variable_park_at_cancel_x : None
variable_park_at_cancel_y : None
variable_use_fw_retract : False
variable_idle_timeout : 600
variable_runout_sensor : ""
variable_user_pause_macro : "_USER_PAUSE"
variable_user_resume_macro: "_USER_RESUME"
variable_user_cancel_macro: "_USER_CANCEL"
gcode:
# Nothing
[gcode_macro _USER_PAUSE]
gcode:
{% set extruderTools = [('extruder', 'last_extruder_temp'),
('extruder1', 'last_extruder1_temp')] %}
{% for extruder_name, name in extruderTools %}
{% set temp = printer[extruder_name].target if extruder_name in printer else 0 %}
{% set restore = False if printer[extruder_name] == ''
else True if params.RESTORE|default(1)|int == 1 else False %}
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE={name} VALUE="{{'restore': restore, 'temp': temp}}"
{% endfor %}
[gcode_macro RESUME]
variable_last_extruder_temp: {'restore': False, 'temp': 0}
variable_last_extruder1_temp: {'restore': False, 'temp': 0}
[gcode_macro _USER_RESUME]
gcode:
{% set extruder_info = [
{'index': 0, 'name': 'last_extruder_temp'},
{'index': 1, 'name': 'last_extruder1_temp'}] %}
{% for info in extruder_info %}
{% set variable = printer["gcode_macro RESUME"][info.name] %}
{% if variable.restore %}
M104 T{ info.index } S{ variable.temp }
{% endif %}
{% endfor %}
{% for info in extruder_info %}
{% set variable = printer["gcode_macro RESUME"][info.name] %}
{% if variable.restore %}
{% set tool = "extruder" if info.index == 0 else "extruder1" %}
{% set needwait = True if printer[tool].temperature < variable.temp else False %}
{% if needwait %}
M109 T{info.index} S{variable.temp}
{% endif %}
{% endif %}
{% endfor %}
[gcode_macro _USER_CANCEL]
gcode:
M84

View File

@ -19,7 +19,14 @@ enable_force_move: True
[idle_timeout]
gcode:
{% if printer.webhooks.state|lower == 'ready' %}
{% if printer.pause_resume.is_paused|lower == 'false' %}
{% if printer.pause_resume.is_paused %}
{% if printer["extruder"] is defined %}
SET_HEATER_TEMPERATURE HEATER=extruder
{% endif %}
{% if printer["extruder1"] is defined %}
SET_HEATER_TEMPERATURE HEATER=extruder1
{% endif %}
{% else %}
TURN_OFF_HEATERS
{% endif %}
{% endif %}
@ -180,9 +187,9 @@ max_temp: 70
[verify_heater chamber]
max_error: 120
hysteresis: 5
check_gain_time: 120
heating_gain: 1
hysteresis: 0
check_gain_time: 3600
heating_gain: 0.01
[multi_pin fan]
pins: L_tool:PA10, R_tool:PA10
@ -479,20 +486,20 @@ gcode:
[gcode_macro ACTIVATE_COPY_MODE]
gcode:
SET_DUAL_CARRIAGE CARRIAGE=0 MODE=PRIMARY
G1 X0
G1 X0 F6000
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=PRIMARY
G1 X227.5
G1 X227.5 F6000
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=COPY
SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=extruder
[gcode_macro ACTIVATE_MIRROR_MODE]
gcode:
SET_DUAL_CARRIAGE CARRIAGE=0 MODE=PRIMARY
G1 X0
G1 X0 F6000
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=PRIMARY
G1 X455
G1 X455 F6000
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=MIRROR
SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=extruder
@ -679,7 +686,7 @@ gcode:
{% if params.S is defined %}
M141 S{s}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=chamber MINIMUM={s-1} MAXIMUM={s+2}
TEMPERATURE_WAIT SENSOR="heater_generic chamber" MINIMUM={s-2} MAXIMUM={s+2}
{% endif %}
{% endif %}
@ -689,3 +696,69 @@ gcode:
C84
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
_RESTORE_DEFAULT_EXTRUDER
[gcode_macro _CLIENT_VARIABLE]
variable_use_custom_pos : True
variable_custom_park_x : 200.0
variable_custom_park_y : 250.0
variable_custom_park_dz : 20.0
variable_retract : 2.0
variable_cancel_retract : 10.0
variable_speed_retract : 60.0
variable_unretract : 20.0
variable_speed_unretract : 6.0
variable_speed_hop : 5.0
variable_speed_move : 100.0
variable_park_at_cancel : False
variable_park_at_cancel_x : None
variable_park_at_cancel_y : None
variable_use_fw_retract : False
variable_idle_timeout : 600
variable_runout_sensor : ""
variable_user_pause_macro : "_USER_PAUSE"
variable_user_resume_macro: "_USER_RESUME"
variable_user_cancel_macro: "_USER_CANCEL"
gcode:
# Nothing
[gcode_macro _USER_PAUSE]
gcode:
{% set extruderTools = [('extruder', 'last_extruder_temp'),
('extruder1', 'last_extruder1_temp')] %}
{% for extruder_name, name in extruderTools %}
{% set temp = printer[extruder_name].target if extruder_name in printer else 0 %}
{% set restore = False if printer[extruder_name] == ''
else True if params.RESTORE|default(1)|int == 1 else False %}
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE={name} VALUE="{{'restore': restore, 'temp': temp}}"
{% endfor %}
[gcode_macro RESUME]
variable_last_extruder_temp: {'restore': False, 'temp': 0}
variable_last_extruder1_temp: {'restore': False, 'temp': 0}
[gcode_macro _USER_RESUME]
gcode:
{% set extruder_info = [
{'index': 0, 'name': 'last_extruder_temp'},
{'index': 1, 'name': 'last_extruder1_temp'}] %}
{% for info in extruder_info %}
{% set variable = printer["gcode_macro RESUME"][info.name] %}
{% if variable.restore %}
M104 T{ info.index } S{ variable.temp }
{% endif %}
{% endfor %}
{% for info in extruder_info %}
{% set variable = printer["gcode_macro RESUME"][info.name] %}
{% if variable.restore %}
{% set tool = "extruder" if info.index == 0 else "extruder1" %}
{% set needwait = True if printer[tool].temperature < variable.temp else False %}
{% if needwait %}
M109 T{info.index} S{variable.temp}
{% endif %}
{% endif %}
{% endfor %}
[gcode_macro _USER_CANCEL]
gcode:
M84