Как сгенерировать gcode для Arduino Mega 2560 и маршрутизатора с ЧПУ Ramps 1.4
У меня был 3D-принтер Prusa I3, который использовал Arduino Mega 2560, Ramps 1.4 и Pololu — драйвер шагового двигателя A4988.
Я хочу переоборудовать свой 3D-принтер в фрезерный станок с ЧПУ, используя мой Dremel с вот таким гибким валом.
Я нашел один проект на instructables.com здесь. http://www.instructables.com/id/Arduino-Controlled-CNC-3D-Printer
Они дают конфигурацию для Mega 2560 как фрезерного станка с ЧПУ. Но я не знаю, как сгенерировать g-код для этого фрезерного станка с ЧПУ.
Пожалуйста, помогите мне сгенерировать g-код из файлов STL, DXF и изображений (PNG или SVG) для использования с этим типом фрезерного станка с ЧПУ.
@ANKIT JAIN, 👍5
Обсуждение1 ответ
Для генерации G-кода из SVG вы можете попытаться разобрать SVG на набор относительных команд и использовать относительные команды для генерации G-кода. Поскольку изначально вы использовали раму в качестве 3D-принтера, а теперь хотите использовать ее в качестве станка с ЧПУ, вы можете попробовать инвертировать данные. Но для генерации кода я бы прочитал, как анализировать различные форматы файлов, и прочитал спецификации каждого из форматов. Однако большинство перечисленных вами форматов файлов являются проприетарными, и вы не сможете найти для них открытую спецификацию.
Из перечисленных вами форматов, вероятно, проще всего анализировать SVG, поскольку это открытая спецификация и во многом похожа на XML.
На самом деле это будет очень сложно сделать, потому что вы, по сути, заново реализуете полноценный контроллер ЧПУ.
Я бы начал с двухмерных вещей, таких как рисование фигур и установка глубины трассировки.
Некоторые ресурсы
Вот несколько ресурсов, которые могут помочь вам в анализе файлов различных форматов. Я перечислил только те, которые имеют открытый стандарт.
- http://www.w3schools.com/svg/default.asp
Эта ссылка описывает формат SVG, и он неплохо справляется с этой задачей. - http://en.wikipedia.org/wiki/G-code
- http://en.wikipedia.org/wiki/STL_%28file_format%29
- Как разделить входящую строку?
- Как использовать SPI на Arduino?
- Как сбросить или отформатировать Arduino?
- Управление скоростью вентилятора с помощью библиотеки Arduino PID
- Arduino Due vs Mega 2560
- Как получить уникальный идентификатор для всех плат Arduino?
- Почему я получаю avrdude: stk500v2_ReceiveMessage(): timeout error when uploading to Arduino Mega?
- Тайм-аут связи Arduino Mega с ошибкой программатора
Inkscape (бесплатно) сгенерирует gcode из SVG с помощью надстройки «инструменты gcode» (также бесплатно)., @Bob