2017-01-05 8 views
3

Я пытаюсь найти окончательную спецификацию синтаксиса G-кода, а не индивидуальное значение G-кодов, спецификацию для этого i везде, я имею в виду подробную спецификацию синтаксиса для цель написания парсера.Ищете спецификацию синтаксиса G-кода, пытаясь сделать простой парсер кода G

У меня нет проблем писать парсер, я просто ищу спецификации синтаксиса, например. я знаю, что вам не всегда нужно давать полные координаты xyz для некоторых Gcodes, и в этом случае машина будет использовать последнее значение отсутствующей координаты, но я не могу найти окончательного правила о том, когда это произойдет. Также некоторые инструкции могут быть заправлены в одну строку, а некоторые не могут, и, опять же, никаких окончательных правил не существует.

Длинная история:

Так у меня есть поделки станков с ЧПУ, было это на некоторое время, недавно модернизировал его достаточно стабильное состояние, где я могу мельничные некоторых печатных плат. Дело в том, что делать двойные односторонние очень сложно, потому что механические способы индексирования обеих сторон недостаточно точны.

Итак, есть несколько проектов, направленных на использование USB-камеры, с которой вы нацеливаетесь на известные точки, а затем приложение вычисляет и применяет преобразование к gcode, поэтому оно компенсирует несоосность.

Но проблема в том, что я хочу сделать это с помощью других средств, кроме камеры, а также эти проекты не закончены или оставлены.

Итак, я подумал, что могу сделать простой парсер для gfcode, но любая «спецификация», которую я нахожу, только говорит о значении конкретных инструкций, а не о синтаксисе.

ответ

1

Я написал парсер в прошлом для подмножества. G-Code указан как стандарт ISO 6983 (хотя есть варианты от разных производителей). Но спецификации документов, насколько я знаю, не являются бесплатными (их можно приобрести в режиме онлайн). Если ваша цель - написать синтаксический анализатор, то есть некоторые из них с открытым исходным кодом. Вы можете быть заинтересованы в этом док из RepRap парней:

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

Вот исходный код для одного синтаксического анализатора:

https://github.com/reprappro/RepRapFirmware

Кроме того, обратите внимание на проект LinixCNC: http://linuxcnc.org/