我理解的数控系统应该算是 firmware, 它本身应该是一个实时系统, 能执行G代码, 多轴联动
==================================
开源数控系统
==================================
1. GRBL https://github.com/gnea/grbl/wiki
最好的tutorial: https://diymachining.com/grbl/
GRBL是一个嵌入式软件它能解析主流数控软件产生的数控代码,
局限: 仅支持 XYZ 三轴, 不支持ABC三个旋转轴
硬件: 开发版在淘宝上很好买, 它可以运行在 Arduino 板。所以理所当然就能运行在例如 arduino uno ,arduino pro mini ,arduino nano等开发板上。话说许多3D打印机也是以它为核心。它几乎榨取了单片机所有性能。所以性能还是比较好的。
http://blog.oa25.org/?p=148
2. TinyG https://synthetos.com/project/tinyg
TinyG: 项目是一个多轴运动控制系统, 接受来自USB端口的GCode并能在板上本地解释执行, 6轴控制(XYZ + ABC旋转轴)但非6轴联动,
适合于: 简单的cnc机床控制,机械手控制,S型加减速.
3. smoothieware, http://smoothieware.org/
适合CNC磨床, 3D打印, 线切割领域
优点: 通讯接口丰富: USB, 蓝牙, UART
采用的是NXP的LPC1769 ARM 32bit芯片, 控制卡淘宝搜索 Makerbase MKS SGEN , https://item.taobao.com/item.htm?id=583977239977 ,
控制卡 产品网站 https://makerbase.com.cn/mks-sgen-l/
4. linuxcnc http://linuxcnc.org/docs/2.7/html/getting-started/getting-linuxcnc.html
原名EMC2, 基于Intel i386 CPU 架构的CNC系统, 一般用于科研,工业上较少使用, controller board 主板比较不好买. 700-800元工控机(atom主板),但需要一个配套的linuxcnc控制卡,
https://www.dazhuanlan.com/2019/11/30/5de18eb4d41b7/
5. Marlin fireware , 专注于 3D 打印
https://github.com/MarlinFirmware/Marlin , 有一系列板卡支持 Marlin
==================================
闭源数控系统
==================================
1. MACH3
MACH3 是 ArtSoft的数控系统, 该数控系统需要和Windows搭配使用, https://www.machsupport.com
提供USB/并口/网口/PCI多种接口类型的控制器, 产品型号中文说明: https://www.wixhc.com/cp/47.html, https://www.wixhc.com/cp/114.html
控制卡的更多中文介绍: https://leafboy77.com/, 淘宝店铺 https://leafboy77.taobao.com/
软件介绍 http://sj.zuojiaju.com/thread-877746-1-1.html
2.CNC USB Controller
CNC USB Controller 是 planet-cnc 的产品, https://planet-cnc.com/obtaining-license-planetcnc-tng-software/
只能用于专门的 Mk3, Mk3/4, Mk3DRVand Mk3ECO 板上, 淘宝好像没有卖.
==================================
总体评价
==================================
Arduino GRBL: 一般都是DIY在用, 或者用于雕刻机和3D打印等要求不高的场景, 稳定性较差,而且只能实现三轴,好像也不能带伺服电机和闭环步进. GRBL只有30KHZ.
Mach3 最多6轴, 支持伺服电机和步进电机, 官网称Hobby Mach3, 可见 Mach 3 也仅仅适合低端. Mach4 标榜为工业级. 另外使用 Windows 本身就不是RTOS, 这个也就是能用在低端产品上.
LinuxCNC 国内用到不多, 采用庞大的 linux 作为实时控制系统, 可靠性值得怀疑.
USB CNC Controller, 最多9轴, 支持伺服电机和步进电机, 和 Mach3 一个路子, 都是PC机控制.
smoothieware : 比较看好这个, 官网文档很好, 软件/硬件都开源, 软件系统简单, 容易做到实时, 控制算法基于 GRBL, 控制板卡也比较便宜. 开源的OpenPNP 项目也推荐使用它, https://github.com/openpnp/openpnp