Voron2.4打印前准备优化,进一步提高打印成功率
probe代码优化

activate_gcode:
{% set PROBE_TEMP = 150%} #喷嘴温度
{% set MAX_TEMP = PROBE_TEMP + 5 %} #最大温度=喷嘴温度+5
{% set ACTUAL_TEMP = printer.extruder.temperature %} #实际温度
{% set TARGET_TEMP = printer.extruder.target %} #具体温度
{% if TARGET_TEMP > PROBE_TEMP %} #如果目标大于喷嘴温度
{ action_respond_info('Extruder temperature target of %.1fC is too high, lowering to %.1fC' % (TARGET_TEMP, PROBE_TEMP)) }
M106 S255 #风扇开启
M109 S{ PROBE_TEMP } #设定喷嘴温度为150度
M106 S0 #风扇关闭
{% else %}
# Temperature target is already low enough, but nozzle may still be too hot.
{% if ACTUAL_TEMP > MAX_TEMP %}
{ action_respond_info('Extruder temperature %.1fC is still too high, waiting until below %.1fC' % (ACTUAL_TEMP, MAX_TEMP)) }
TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={ MAX_TEMP }
{% endif %}
{% endif %}
#------------------------------------------------------------------------------------------------------------------------#
PRINT-START代码优化

[gcode_macro PRINT_START] # 将 PRINT_START 设置为开始打印时的宏,自定义打印前的动作
gcode:
G92 E0
BED_MESH_CLEAR # 卸载网床
QUAD_GANTRY_LEVEL # 龙门架调平
BED_MESH_CALIBRATE PRINT_MIN={params.PRINT_MIN} PRINT_MAX={params.PRINT_MAX} FORCE_NEW_MESH=True
{% if printer.extruder.target <= 220 %} # 如果切片喷嘴温度小于220度
M109 S150 # 喷嘴升温150度进行擦嘴
{% elif printer.extruder.target <= 250 %} # 如果切片喷嘴温度小于250度
M109 S175 # 喷嘴升温175度进行擦嘴
{% elif printer.extruder.target <= 280 %} # 如果切片喷嘴温度小于280度
M109 S200 # 喷嘴升温200度进行擦嘴
{% endif %}
clean_nozzle #喷嘴清理
M106 S255 #风扇开启
M109 S150 #设定喷嘴温度为150度
M106 S0 #风扇关闭
G28
CALIBRATE_Z #自动z
G1 Z20 F1500 # 将喷嘴移离热床
M109 S{ printer.extruder.target }
G92 E0 ;Reset Extruder # 在X轴7mm处挤出一条直线以清理喷嘴
G1 Z2.0 F3000 ;Move Z Axis up
G1 X7.1 Y20 Z0.28 F5000.0 ;Move to start position
G1 X7.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line
G1 X7.4 Y200.0 Z0.28 F5000.0 ;Move to side a little
G1 X7.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line
G92 E0 ;Reset Extruder
划线代码看自己需求可以去掉#
(1)擦嘴的cfg里这条代码要注释掉,这样擦完升起来就能立马吹喷嘴降温度

#------------------------------------------------------------------------------------------------------------------------#
切片起始g码优化

M190 S[bed_temperature_initial_layer_single]
M104 S150
G28
M104 S[nozzle_temperature_initial_layer]
PRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single] PRINT_MIN={first_layer_print_min[0]},{first_layer_print_min[1]} PRINT_MAX={first_layer_print_max[0]},{first_layer_print_max[1]}
#从PRINT_MIN开始这段是动态网床,不用去掉就就可以,需要动态网床就站内搜索动态网床就可以看到闲人大佬的教程#
代码解读:
M190 S[bed_temperature_initial_layer_single] :热床升温到切片指定温度后再执行下一条代码
M104 S150:喷嘴升温到150度的同时执行下一条代码
G28 : 三轴归零
M104 S[nozzle_temperature_initial_layer] :喷嘴升温到切片指定温度的同时执行下一条代码
PRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single] PRINT_MIN={first_layer_print_min[0]},{first_layer_print_min[1]} PRINT_MAX={first_layer_print_max[0]},{first_layer_print_max[1]}
到这里就会开始执行printer.cfg里的代码,因为我们前面给probe做了温度限制和强制冷却,所以再龙门调平的时候会强制降温,而不是把喷嘴升温到切片温度,这样可以大幅度减少调平过程中的漏料问题。
#闲人大佬的orca-slicer切片可以去尝试一下,很好用,用cura的可能一开始不太适应,用prusa的适应的就快些。#