Module 02 · Exploring Desktop 3D Printing Hardware - Control and Mechanical Systems桌面 3D 打印硬件:控制与机械系统
02-02-04 Control System in Action控制系统运行流程
引言:启动3D打印前的系统追踪
在真正开始打印之前,我们已经经历了一系列的系统和组件交互。本次,我们将深入探讨控制系统,尤其关注交互界面(Interactive Interface Subsystem)和控制板子系统(Control Board Subsystem),看看从启动打印到正式打印前的所有流程是如何运作的。
交互界面子系统(Interface Subsystem)
在 《3D打印机硬件结构》 课程中,我们提到过,打印的过程其实比按下“开始”键要早得多:
- 创建G-code任务文件(Module 4 介绍)
- 为打印作业准备合适的材料、配件和配置(Module 3 介绍)
💡 本次,我们专注于电子子系统如何完成这部分工作!
同时,我们不讨论远程启动打印(如使用 Cura、Ultimaker Connect、3DPrinterOS、AstroPrint、MatterControl 或 OctoPrint 远程发送打印任务),而是专注于“传统”方式,即直接在机器上操作。
1 交互界面如何启动打印
我们的电子交互界面子系统故事从操作打印机开始:
- 操作员走近机器
- 确认打印材料已正确装载
- 通过控制旋钮激活“打印菜单”
- 选择并确认打印文件
- SD卡文件管理子系统开始工作
- 将G-code文件传输至主控板
- 主控板解析G-code并确认打印作业兼容
- 主控板启动预打印程序,并向界面显示“打印准备中”
2 G-code在控制系统中的作用
📌 每台3D打印机的启动流程可能不同,但大致可分为两类:
- G-code完全控制启动流程
- 固件预设了一些标准的预打印操作
💡 以 Ultimaker 3 为例:
- G-code 触发 归零(homing)
- 执行 自动平台校准
- 进行 预加热
- 设定 材料参数
而在 Ultimaker 2+ 上:
- 由于固件预先集成了更多预打印任务,用户只需简单选择材料,机器便可自动应用预设参数,如 温度、流速、回抽(Retraction)、风扇转速等。
- 但是,部分参数(如速度、流速、风扇转速等)仍可在打印过程中动态调整。
📌 无论采用哪种方法,界面都会显示打印准备信息,包括加热床和喷嘴的温度。
控制板子系统(Control Board Subsystem)
🎯 现在,我们从外部界面深入到机器的核心电子控制板!
当交互界面子系统发送任务给主控板时,主控板开始执行以下关键任务:
1 任务文件的验证
✅ 确保G-code文件 兼容当前机器、材料和配置
✅ 确保打印文件未损坏
2 电源管理
🔌 主控板将低压MCU信号转换为高功率指令
- 触发加热元件(如热端和加热床)
- 控制电机供电
3 预打印流程
不同机器的预打印流程可能略有不同,但基本包含以下几个步骤:
📌 触发归零(Homing Process)
- 终点开关(Endstops)报告喷头或平台触碰到归零点
- 确保接下来的所有运动路径都是基于“已知起点”
📌 执行自动平台校准
- 通过传感器确定喷嘴和平台的相对位置
- 记录初始Z轴高度,确保打印的第一层能够成功附着
📌 启动预加热
- 热端加热至目标温度
- 加热床升温(如果需要)
- 优化加热过程以防止材料过度流失或堵塞
📌 喷嘴清理(Purge Process)
- 通过挤出少量材料确保流畅性
- 避免打印开始时发生材料溢出或堵塞
📌 进入打印起始位置
- 读取 start.gcode 并将喷头移动到正确的起始位置
- 打印即将开始! 🚀
进入正式打印流程
📌 G-code 文件的基本结构
- start.gcode(初始化阶段)
- 主体G-code(路径规划与指令)
- end.gcode(打印完成后的收尾指令)
1 解析G-code指令
🖨️ 3D打印机的指令本质上是:
✅ 喷头在某个坐标移动
✅ 挤出多少毫米的塑料
✅ 控制加热元件温度
📌 有趣的事实:
- G-code 指令采用毫米(mm)和笛卡尔坐标(X, Y, Z),但步进电机实际只接受“步数(steps)”的指令。
- Delta 3D打印机的G-code仍然是笛卡尔坐标系,但固件会实时转换为 A、B、C 轴的运动指令。
2 电子系统如何执行G-code
💡 主控板将G-code转换为以下信号
✅ X/Y/Z轴电机控制信号
✅ 挤出机电机控制信号
✅ 喷嘴/加热床温度控制信号
📌 G-code通常指令单次仅控制两个轴
- 例如,移动 X-Y轴 和 挤出量
- 当某层完成后,Z轴提升,进入下一层
3 PID温控调节
温度指令不会直接控制电压,而是交由 PID控制循环 进行动态调节:
- 检测当前温度
- 计算温度偏差
- 调整加热功率
结论:电子控制系统如何确保打印成功
📌 界面系统
✅ 负责任务输入、状态反馈、实时调整
✅ 允许操作员暂停、更改参数,甚至插入组件
📌 主控板
✅ 解析G-code,并向所有子系统发送信号
✅ 管理电源、运动控制、温度调节
📌 电子子系统如何执行打印
✅ G-code 转换为 步进电机 & 温控系统指令
✅ Delta 机型可实时转换 笛卡尔坐标至 A/B/C 轴
✅ PID 温控系统确保温度稳定
📢 综上所述,3D打印的成功不仅取决于机械结构,电子控制系统和固件优化同样至关重要! 🚀💡