6

我试图找到一个明确的 G 代码语法规范,而不是单个 G 代码的含义,这个 i 无处不在的规范,我的意思是详细的语法规范,用于编写解析器。

我编写解析器没有问题,我只是在寻找语法规范,例如。我知道您不必总是为某些 Gcode 提供完整的 xyz 坐标,在这种情况下,机器将使用缺失坐标的最后一个值,但我似乎找不到任何关于何时发生的明确规则。此外,有些指令可以放在一行中,有些则不能,而且似乎不存在明确的规则。

很长的故事:

所以我有一台diy cnc机器,用了一段时间,最近将它升级到足够稳定的状态,我可以在那里铣削一些PCB。问题是,做双面的真的很棘手,因为机械的索引双面的方法不够准确。

因此,有一些项目旨在利用 USB 摄像头,您可以使用它们瞄准已知点,然后应用程序计算并将转换应用于 gcode,因此它可以补偿错位。

但问题是,我想通过相机以外的方式做到这一点,而且这些项目还没有完成或被放弃。

所以我想,我可以为 gfcode 做一个简单的解析器,但是我发现的任何“规范”,只谈论特定指令的含义,而不是语法。

4

2 回答 2

3

看起来这可能是您正在寻找的:

NIST RS274NGC 解释器 - 第 3 版 发布时间:2000 年 8 月 1 日 https://www.nist.gov/publications/nist-rs274ngc-interpreter-version-3?pub_id=823374

于 2017-04-27T19:52:35.357 回答
3

我过去为一个子集编写了一个解析器。G 代码被指定为 ISO 6983 标准(尽管有来自不同制造商的变体)。但据我所知,规范文件不是免费的(可以在线购买)。如果您的目标是编写解析器,那么已经有一些开源的。您可能对 RepRap 人员的这份文档感兴趣:

http://reprap.org/wiki/G-code

这是一个解析器的源代码:

https://github.com/reprappro/RepRapFirmware

另外,看看 LinixCNC 项目:http ://linuxcnc.org/

于 2017-01-11T19:19:10.433 回答