Open source CNC Controller for CNC Machines, Robotics, and 3D printers.
PyBrain
步进电机驱动板
⭐⭐⭐☆☆ (3/5)
🧩 软硬件结合
已发布
项目简介
开源CNC控制器,用于CNC机床、机器人和3D打印机。
用于CNC机床、机器人和3D打印机的开源CNC控制器。
项目特点
支持 G 代码解析与执行,兼容标准 CNC 指令集
内置仿真器,可以在无硬件环境下预览运动轨迹
模块化架构,方便扩展机器人、3D 打印机等不同设备
基于 Python,易于二次开发和集成
支持实时运动控制,适用于步进电机和伺服系统
开源免费,社区可自由贡献和修改
技术规格
| 编程语言 | |
|---|---|
| 支持的设备 | |
| 指令格式 | |
| 仿真模式 | |
| 运动控制 | |
| 操作系统 | |
| 硬件接口 | |
| 开源协议 |
项目资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| 树莓派 / 任意 Linux 主机 | 1 | — | 运行 PyBrain 主程序 |
| 步进电机驱动器 (如 A4988 / DRV8825) | 按轴数 | — | 驱动电机 |
| 步进电机 (NEMA17 或类似) | 按轴数 | — | 执行运动 |
| 12V/24V 直流电源 | 1 | — | 为驱动板和电机供电 |
| 杜邦线 / 端子线 | 若干 | — | 连接控制器与驱动板 |
| 限位开关 | 按轴数 | — | 用于回零和限位保护 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| Python 3.x | 运行 PyBrain 主程序 | ✅ 是 |
| Git | 克隆仓库与版本管理 | ✅ 是 |
| 文本编辑器 / IDE | 修改配置和代码 | ✅ 是 |
| 串口终端 (如 PuTTY) | 调试硬件通信 | ▢ 推荐 |
| 3D 建模软件 (如 Fusion 360) | 生成 G 代码 | ▢ 推荐 |
| 示波器 / 逻辑分析仪 | 调试信号时序 | ▢ 推荐 |
能力画像
**记忆与知识检索**:2/5 — 项目本身不涉及知识库或检索功能,但需要用户查阅 G 代码和硬件文档。
**动手与操作**:4/5 — 需要接线、配置硬件、调试电机,动手要求较高。
**编程与算法**:3/5 — 基于 Python,可修改运动控制逻辑,但核心算法已封装。
**设计与建模**:2/5 — 不直接提供建模功能,但可配合 CAD 软件生成 G 代码。
**实验与调试**:4/5 — 内置仿真器方便离线调试,硬件调试需要示波器等工具。
**协作与分享**:3/5 — 开源项目,可通过 GitHub 提交 issue 和 PR,但社区活跃度较低。
**学习与研究**:4/5 — 适合学习 CNC 控制原理、运动规划和 Python 硬件编程。
**系统集成**:3/5 — 可集成到机器人或 3D 打印机系统,但需要自行编写接口。
所需技能
基础 Python 编程
了解 G 代码格式与 CNC 基本概念
电子电路基础(接线、电源、驱动板)
步进电机与驱动器使用经验
Linux 命令行基本操作
串口通信调试能力
适用场景
自制 CNC 雕刻机或激光切割机的控制
小型机器人关节运动控制
3D 打印机主控替代方案
高校或创客空间的 CNC 教学实验
运动控制算法研究与原型验证
无硬件环境下的 G 代码仿真与调试