Coursera 笔记

Module 02 · Exploring Desktop 3D Printing Hardware - Control and Mechanical Systems桌面 3D 打印硬件:控制与机械系统

02-02-04 Control System in Action控制系统运行流程

Coursera ↗


引言:启动3D打印前的系统追踪

在真正开始打印之前,我们已经经历了一系列的系统和组件交互。本次,我们将深入探讨控制系统,尤其关注交互界面(Interactive Interface Subsystem)和控制板子系统(Control Board Subsystem),看看从启动打印到正式打印前的所有流程是如何运作的。


交互界面子系统(Interface Subsystem)

在 《3D打印机硬件结构》 课程中,我们提到过,打印的过程其实比按下“开始”键要早得多:

  • 创建G-code任务文件(Module 4 介绍)
  • 为打印作业准备合适的材料、配件和配置(Module 3 介绍)

💡 本次,我们专注于电子子系统如何完成这部分工作!
同时,我们不讨论远程启动打印(如使用 Cura、Ultimaker Connect、3DPrinterOS、AstroPrint、MatterControl 或 OctoPrint 远程发送打印任务),而是专注于“传统”方式,即直接在机器上操作。


1 交互界面如何启动打印

我们的电子交互界面子系统故事从操作打印机开始:

  1. 操作员走近机器
  2. 确认打印材料已正确装载
  3. 通过控制旋钮激活“打印菜单”
  4. 选择并确认打印文件
  5. SD卡文件管理子系统开始工作
  6. 将G-code文件传输至主控板
  7. 主控板解析G-code并确认打印作业兼容
  8. 主控板启动预打印程序,并向界面显示“打印准备中”

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 文件的基本结构

  1. start.gcode(初始化阶段)
  2. 主体G-code(路径规划与指令)
  3. 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控制循环 进行动态调节:

  1. 检测当前温度
  2. 计算温度偏差
  3. 调整加热功率

结论:电子控制系统如何确保打印成功

📌 界面系统
✅ 负责任务输入、状态反馈、实时调整
✅ 允许操作员暂停、更改参数,甚至插入组件

📌 主控板
✅ 解析G-code,并向所有子系统发送信号
✅ 管理电源、运动控制、温度调节

📌 电子子系统如何执行打印
✅ G-code 转换为 步进电机 & 温控系统指令
✅ Delta 机型可实时转换 笛卡尔坐标至 A/B/C 轴
✅ PID 温控系统确保温度稳定

📢 综上所述,3D打印的成功不仅取决于机械结构,电子控制系统和固件优化同样至关重要! 🚀💡