Marlin 固件:使用 G 代码卸载灯丝

3D打印 马林鱼 挤出机 g代码
2021-05-03 04:46:18

我已经使用 Bondtech 双齿轮进料器升级了我的 ER-20。使用此供料器手动加载/卸载灯丝是不可能的或几乎不可能的,因此需要一些 .gcode 来执行此操作。我想实现类似于卸载的原子清洁方法的东西:https : //ultimakernasupport.zendesk.com/hc/en-us/articles/115004187066-Atomic-Cleaning-Method

这是我的当前.gcode

G21 ; Metric values
G90 ; Absolute positioning
M82 ; Extruder absolute mode
G28 ; Auto home
M420 S1
G1 X100 Y100 Z100 F1000
; M92 E415 ; 415 steps/mm
M302 S105 ; Allow extrusion above 105C
M109 S218 ; Heat hotend to 218C
M400
G92 E0 ; Reset extruder positioning
M104 S160 ; Start the cool down
M117 Extrude prime blob
G1 E10 F100 ; Extrude a short before unload to avoid blob forming
M109 S160 ; Wait for 160C
M104 S110
G92 E0
G1 E0.2 F100 ; Pressurize the hotend
M117 Pressurize hotend
M109 S110 ; Heat hotend to 110C
G92 E0 ; Reset extruder positioning
M117 Pull out slow
G1 E-3 F200 ; Pull back a bit, slow
M117 Pull out fast
G1 E-430 F2000 ; Pull back 43cm with 2000mm/min
G92 E0 ; Reset extruder positioning
M400 ; Wait for command finish
M117 Remove the filament now
; M400 ; Wait for command finish
M302 S170 ; Allow extrusion above 170C
M104 S0

它不起作用:

  • 自动调平床一直都在,不知道怎么关
  • 当我看到“在卸载前挤出一小段时间以避免形成斑点”事件发生时,我还会在显示屏上看到“快速拉出”消息并且“打印”过程结束

有人可以看看这个代码吗?或者是否有任何.gcode地方的 Marlin 验证器

我打算用这段代码做什么:

  • 将热端加热至 218 °C
  • 挤出一些材料,同时冷却到 160 °C 已经开始
  • 当温度达到 160 °C 时,开始冷却过程至 110 °C 并将少量材料推入进料器(加压)
  • 当达到 110 °C 时,从热端缓慢地拉出一些材料(也许进料器的强度不足以做到这一点,但我从未达到这一点进行检查)
  • 然后从鲍登和进料器中快速拉出灯丝
1个回答

有三件事需要解决和一个建议:

  • 更改 的以下行M109,使用参数R而不是S,因为后者不等待冷却:

    M109 R160 ; Wait for 160C
    ...
    M109 R110 ; Heat hotend to 110C
    
  • 的行为M420将取决于床调平的类型、保存的网格等。解决这个问题是无关紧要的。打印机在此操作的表面上方 10 厘米处进行操作。G28禁用床调平。为什么需要重新启用它?只需删除这一行:

    ; M420 S1 - remove (or comment out)
    
  • Configuration.h 中重新定义最大挤压长度以允许脚本化长拉 ( G1 E-430),例如:

    #define EXTRUDE_MAXLENGTH 450
    
  • 建议:使用相对模式进行挤压 ( M83) 而不是绝对定位 ( M82)。它将大大简化您的代码。您只想在E参数中表达距离那么你就不必时不时地重置位置G92 E0(在开始时只做一次)。我也使用这种挤出模式进行切片,因为它可以在出现故障时更轻松地重新开始打印)。