概述众所周知,3D 打印机执行的是一堆指令,这一堆指令都来源于一个指令集,即G-M 指令集
而固件就负责解释这些指令,并将命令指派给电子原件,从而完成打印任务
因此,固件和指令集必须相互配合,否那么打印机不会正常工作
开源的 3D打印机使用的固件多种多样,但和这些固件匹配的指令集绝大多数指令都一样,即RepRap G-M 指令集
由于 Marlin 固件使用的最为广泛,笔者就以 Marlin 固件的指令集为例作表达
了解 G-M 指令有什么用
这用处可大了
帮助使用者更方便地调试打印机,检测打印机的问题,扩展打印机菜单功能…反正好处多多,不管你信不信,反正我是信了
废话不多说,进入正题
G-M 指令集就是一些以 G 或 M 开头的代码,有时候还会掺杂一些以其其他字母以标示参数意义,比如 T、S、F、P 等
具体意义见下表,表中 nnn 表示数字
字母意义Gnnn标准 GCode 命令, 例如移动到一个坐标点
MnnnRepRap 定义的命令,例如打开一个冷却风扇Tnnn选择工具代码
在 RepRap 中,工具通常是挤出头〔extruder〕
Snnn命令参数, 例如马达的电压
Pnnn命令参数, 频率:1 次每毫秒
XnnnX 坐标, 通常用于移动命令
YnnnY 坐标, 通常用于移动命令
ZnnnZ 坐标, 通常用于移动命令
Ennn挤出长度,用于控制挤出线材的长度
Innn参数 - 现在仍未使用〔定义〕
Jnnn参数 - 现在仍未使用〔定义〕
Fnnn打印头移动速度 单位: 毫米每分钟Rnnn参数 - 温度相关
Qnnn参数- 现在仍未使用〔定义〕
Nnnn行码,在发送错误情况后,用来重复输入某行代码〔命令〕
*nnn校验码〔Checksum〕
用于检测通信错误因此,能够被 Marlin 固件识别的代码应该是像下面的样子:详解注释G-Code 一行中分号“;〞后面的