一、问题描述
有些时候会遇到3D打印机没料但机器还在继续打、掉电重启后未正常恢复打印、挤出机端没有料但断料检测未触发等情况。我们又不想打印放弃,但又想继续之前的进度打印。
这时候我们需要更改3D打印文件的Gcode参数来进行继续打印。
至于什么是Gcode,可以阅读以下文档详细了解
【3D打印】3D打印机运动控制“Gcode”https://blog.csdn.net/qq_39150957/article/details/142317329?fromshare=blogdetail&sharetype=blogdetail&sharerId=142317329&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_link
【3D打印】3D打印机运动控制“Gcode”https://blog.csdn.net/qq_39150957/article/details/142317553?fromshare=blogdetail&sharetype=blogdetail&sharerId=142317553&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_link
图中问题:可以看到,料已经从挤出机端掉出,由于断料检测在机器背面,故未触发断料检测且机器还在运行。
二、3D打印机端定位当前打印进度
1、结束当前打印进度,机器控制端回到主界面
2、加热热床与喷嘴
3、机器控制端进入【移动】操作界面,移动Z轴,让打印头刚好接触打印失败的部件
让打印头正好接触打印件顶端
4、记录当前Z轴的位置【173.400】
三、修改Gcode
1、打开Gcode文件
可以使用记事本打开打印失败的零件的Gcode文件,但是推荐使用VS code,记事本在打开特别大的文件时容易崩溃
2、查找Z轴位置
搜索刚刚记录的Z轴值,这里建议直接搜索整数部分
小数部分因为切片软件的补偿、算法,代码中的Z轴数值会比我们机器看到的要小
这里可以看到,刚才我们在机器上面记录的Z轴值为【173.4】但是实际Gcode代码中Z轴是没有这个值,切片软件上的算法将Z轴的值减少了0.02mm。所以这里我们选择【Z = 173.38】
3、删除已打印的曾
我们将光标移动到刚才确定的值上方最近的【G92 E0】前面。一直往上选择
一直选择到【G28 ; home all axes】下方
将选择内容给删掉。在机器端看到的效果就是机器会直接打印刚才定位的位置,跳过已打印的部分。
4、开启风扇
在刚才定位的Z轴位置的上一行G1的前面添加如下代码
M106 s255
添加后的:
5、修改Z轴与XY轴移动顺序
可以看到当前的顺序是先移动XY轴再移动Z轴,这样会导致3D打印机打印头直接撞到之前打印失败的部分。
所以我们需要修改Z轴与XY轴移动顺序
最后我们保存修改后的文件
四、修改后打印效果
3D打印机会先移动Z轴在之前设置的高度【173.38】然后继续打印之后的进度
五、注意事项
- 一定要确保Gcode参照我上述操作修改
- 修改Gcode之前确保已备份之前的Gcode文件
- 机器操作时候,尤其是移动轴运动的时候,手时刻准备好断电(我的机器会自动升高Z轴导致热床在最底端装机)
- 时刻关注修改后的文件打印进度,尤其是刚开始打印的部分
- 确保机器当前打印失败的零件和修改的Gcode文件是同一个模型且切片参数没有太多更改。