Grbl_Esp32 CNC 控制器固件
Grbl_Esp32
ESP32
2/5
🧩 软硬件结合
已发布
项目简介
A port of Grbl CNC Firmware for ESP32
Grbl_Esp32 是一个基于 ESP32 微控制器的开源 CNC(计算机数控)固件项目,最初由经典 Grbl 固件移植而来。借助 ESP32 强大的双核处理器、WiFi 和蓝牙功能,该项目突破了传统 8 位 AVR 控制器的性能瓶颈,实现了更复杂、更灵活的数控系统。
标签
项目特点
**高性能多轴控制**:支持最多 6 个协调轴(XYZABC),每个轴可驱动 1 或 2 个电机,总电机数可达 12 个。
**灵活的电机配置**:电机驱动可动态分配给轴,无需更改硬件即可从 4 电机 XYZA 配置转换为 XYYZ(双 Y 轴)配置。
**丰富的电机驱动支持**:支持 Trinamic SPI 控制步进电机(StealthChop、CoolStep、StallGuard 模式),以及无传感器归零、单极步进电机和 RC 舵机。
**全面的外围设备支持**:限位/归零开关、用户输入按钮、冷却液控制、Z 探针、安全门检测等。
**多种主轴控制**:PWM、RS485 Modbus、DAC(0-10V)、继电器、RC 无刷电机(BESC),并支持自定义主轴。
**强大的连接性**:USB/串口、蓝牙串口、WiFi(AP 或 STA 模式)、内置 Web 服务器(全功能 CNC 控制界面)、Telnet G 代码发送、推送通知、OTA 固件升级。
**高度可定制**:引脚映射、自定义机器配置、自定义初始化(运动学、归零、换刀、按钮宏、作业结束序列)、RTOS 实时操作系统支持。
**快速启动**:约 2 秒启动,无需正式关机,直接断电即可。
**向后兼容**:完全兼容原始 Grbl,可使用所有 G 代码发送器。
技术规格
| 目标平台 | ESP32 微控制器 |
|---|---|
| 最大轴数 | 6 个协调轴(XYZABC) |
| 最大电机数 | 12 个(每个轴最多 2 个电机) |
| 最大步进速率 | 120,000 步/秒 |
| 电机驱动类型 | 步进电机(Trinamic SPI、单极)、RC 舵机 |
| 主轴控制 | PWM、RS485 Modbus、DAC(0-10V)、继电器、RC 无刷电机 |
| 连接方式 | USB/串口、蓝牙串口、WiFi(AP/STA) |
| 用户界面 | 内置 Web 服务器(手机/PC 浏览器)、Telnet |
| 存储 | SD 卡(通过 WiFi 加载 G 代码) |
| 固件升级 | OTA(空中升级) |
| 启动时间 | 约 2 秒 |
| 开发环境 | Arduino IDE(需配置 ESP32 支持) |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| ESP32 开发板(如 ESP32 Dev Module) | 1 | — | 核心控制器 |
| 步进电机驱动器(如 Trinamic TMC2209) | 按需 | — | 支持 SPI 控制 |
| 步进电机 | 按需 | — | 每个轴 1-2 个 |
| 24V 或 12V 电源 | 1 | — | 为电机和主板供电 |
| 机械限位/归零开关 | 按需 | — | 可选,用于归零和限位 |
| 主轴电机(如 PWM 主轴) | 1 | — | 可选,支持多种类型 |
| 冷却液泵 | 按需 | — | 可选,用于 Mist/Flood 冷却 |
| Z 探针 | 1 | — | 可选,用于自动对刀 |
| 安全门开关 | 1 | — | 可选,用于安全门检测 |
| 用户输入按钮(保持、恢复、重置) | 3 | — | 可选 |
| 杜邦线、端子线等 | 按需 | — | 用于连接各组件 |
| 3D 打印或金属外壳 | 1 | — | 可选,用于保护电路 |
能力画像
⚪ 记忆与知识检索: 2/5
🔵 逻辑推演: 3/5
⚪ 表达与交流: 1/5
⚪ 感知与观察: 2/5
⚪ 数理与计算: 3/5
⚪ 动手与操作: 4/5
⚪ 狂热与坚持: 3/5
⚪ 创造与创新: 4/5
项目图库
所需技能
🔧 **动手能力**:需要能够搭建 CNC 机械结构,连接电机、驱动器、传感器等硬件,并进行调试。
💻 **编程能力**:需要熟悉 Arduino IDE 环境,能够编译和上传固件,理解 G 代码和基本配置。
⚡ **电子电路**:需要了解步进电机驱动、电源电路、信号连接等基本电子知识,能够使用万用表排查故障。
适用场景
**DIY CNC 雕刻机**:构建自己的桌面 CNC 雕刻机,用于雕刻木材、塑料、PCB 等材料。
**3D 打印机控制**:作为 3D 打印机的运动控制固件(需适配)。
**激光雕刻机**:控制激光雕刻机,支持激光 PWM 功率/速度补偿。
**小型铣床**:控制小型铣床进行金属或塑料加工。
**教育实验**:用于学习 CNC 控制原理、嵌入式系统开发和运动控制算法。
**工业自动化**:作为低成本、高性能的运动控制核心,用于自动化设备。