我试图找到一个确定的G代码语法规范,而不是各个地方的G代码含义,这是我在各处编写的规范,我指的是详细的语法规范,目的是编写解析器。
我写解析器没有问题,我只是在寻找语法规范,例如。我知道您不必总是为某些Gcode提供完整的xyz坐标,在这种情况下,机器将使用丢失坐标的最后一个值,但是我似乎找不到任何确定的规则来确定何时发生。同样,有些指令可以放在一行中,而有些指令则不能,而且似乎没有确定的规则。
很长的故事:
因此,我有一台diy cnc机器,使用了一段时间,最近将其升级到足够稳定的状态,可以在其中铣削一些PCB。事实是,进行双面加工确实很棘手,因为机械地索引两面都不够精确。
因此,有一些旨在利用USB摄像头的项目,您将这些摄像头瞄准已知点,然后该应用计算并对gcode进行转换,以补偿未对准情况。
但是问题是,我想通过照相机以外的其他方式来做到这一点,而且那些项目还没有完成或被放弃。
所以我想,我可以为gfcode创建一个简单的解析器,但是我发现的任何“规范”都只谈论特定指令的含义,而不是语法。
我过去为一个子集编写了一个解析器。G 代码被指定为 ISO 6983 标准(尽管不同制造商有不同版本)。但据我所知,规范文件不是免费的(可以在线购买)。如果您的目标是编写一个解析器,那么已经有一些开源的解析器了。您可能对 RepRap 人员提供的这份文档感兴趣:
这是一个解析器的源代码:
https://github.com/reprappro/RepRapFirmware
另外,请查看 LinuxCNC 项目: http: //linuxcnc.org/
| 归档时间: |
|
| 查看次数: |
998 次 |
| 最近记录: |