寻找G代码语法规范,尝试制作简单的G代码解析器。

7
我正在寻找一个明确的G代码语法规范,而不是每个G代码的含义,到处都有相关规范,我的意思是详细的语法规范,以便编写解析器。
我没有编写解析器的问题,我只是在寻找语法规范,例如,我知道并非总是需要为某些G代码提供完整的xyz坐标,在这种情况下,机器将使用缺失坐标的上一个值,但是我似乎找不到任何关于何时可以发生的确切规则。另外,一些指令可以被包含在单行中,而另一些则不能,而且再次没有明确的规则存在。
长话短说:
所以我有一个DIY数控机床,用了一段时间,最近将其升级到足够稳定的状态,可以加工一些PCB板。问题是,双面板很棘手,因为机械方式索引两侧的精度不够。
因此,有几个项目旨在利用USB相机,你可以在其中针对已知点进行瞄准,然后应用转换来补偿错位。
但问题是,我想通过其他手段来实现这一点,而且那些项目未完成或被放弃。
所以我想,我可以为GFcode制作一个简单的解析器,但是我找到的任何“规范”都只涉及特定指令的含义,而从未涉及语法。
2个回答

4

我曾经为一个子集编写过解析器。G-Code是ISO 6983标准指定的(虽然来自不同制造商的变体也存在)。但据我所知,规范文档并不免费(可以在线购买)。如果您的目标是编写解析器,则已经有一些开源解析器可供使用。您可能会对RepRap团队的这篇文档感兴趣:

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

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

https://github.com/reprappro/RepRapFirmware

此外,还要看一下LinuxCNC项目:http://linuxcnc.org/

4

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接