Подписаться YouTube

Резка лазером по траектории Anycubic Mega Pro

Текст видео

Сегодня расскажу вам, как сгенерировать g-code для резки лазером по траектории.

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

И так, для того чтобы генерировать g-code для резки нам понадобится векторный редактор inkscape. Это бесплатный программный продукт с открытым исходным кодом. Он распространяется под лицензией GNU, и адаптирован под разные операционные системы.

А так же плагин для генерации кода из векторов. Я буду использовать плагин J Tech Photonics Laser Tool. Этот плагин так же распространяется под лицензией GNU, она содержится в исходных файла этого плагина, а это значит, что его можно дополнять и изменять, но нельзя использовать в коммерческих целях. Есть разные версии этого плагина. Я буду использовать версию 2.2 для inkscape 0.92. Существует версия для inkscape 1.0, но на данный момент она имеет суффикс бета и не всегда генерирует корректный код.

Но обо всем по порядку. Вначале нужно скачать и установить inkscape. Я буду использовать inkscape версии 0.92. Кстати inkscape слабо интегрируется в операционную систему, и вы можете установить несколько версий этого графического редактора, в разные папки. Они не будут мешать друг другу.

Inkscape лучше скачивать с официального сайта. Это бесплатное программное обеспечение и нет никаких причин скачивать его откуда-то еще.

После нужно установить расширение. Я модифицировал расширение от J Tech, чтобы им было удобнее пользоваться. Поэтому сразу буду рассказывать, как установить модифицированное расширение. Если вы захотите установить оригинальное расширение, то это можно будет сделать аналогичным образом. Все ссылки будут в описании под видео.

Вначале заходим в мой репозиторий. Затем скачиваю все файлы. Файлы из папки extensions_ru копируем в папку inkscape\share\extensions. Файлы dxf_input отвечают за импорт из AutoCAD DXF формата. В inkscape уже есть такие файлы, но разработчики от J Tech исправили в них что-то связанное с размерностью. Для генерации G кода эти файлы не понадобятся, так что их не обязательно заменять. Если вы планируете использовать импорт из DXF формата, то их можно заменить.

На этом установка плагина завершена. Нужно перезапустить inkscape. После этого должны появиться новые пункты меню, а именно “Расширения / G-code генератор / G-code для резки лазером”.

Inkscape - это редактор векторной графики т.е. графики в которой элементы описываются не как набор точек в рисунке, а как линии, тексты и заливки. Inkscape ориентирован на SVG формат векторной графики. Это тот самый формат, который Консорциумом Всемирной паутины (W3C) создал для замены Macromedia Flash, который позже стал Adobe Flash. Это та самая программа, в которой рисуют Масяню и некоторые другие мультики, а раньше и web-игры. Flash мне очень даже нравился. По моему скромному мнению, SVG вместе с JavaScript его не заменяют.

Формат SVG ориентирован на веб разработку и в нем есть возможности для управления отдельными элементами с помощью внешних скриптов. Файлы в этом формате можно писать вручную с помощью текстовых редакторов и потому один SVG другому рознь, одинаковые на вид SVG файлы в Inkscape могут редактироваться по-разному. В прочем, если файл был создан в самом Inkscape, то он всегда будет хорошо редактироваться в нем.

SVG можно открыть в блокноте. На самом деле это XML файл, в котором перечислены разные графические элементы.

Чтобы посмотреть SVG как графику его проще всего открыть в браузере, этот формат рассчитан на браузеры и потому именно браузер должен читать его наиболее корректно. Так же в состав Inkscape входит специальная программа inkscape viewer, через нее тоже можно просматривать SVG файлы, но ее функционал очень ограничен.

Если вы хотите заниматься вырезанием деталей, то вам нужно будет освоить программу Inkscape полностью. На самом деле она не очень сложная. Я не буду слишком подробно останавливаться на отдельных функциях этой программы в этом видео. Есть замечательный русифицированный учебник, который раскрывает весь основной функционал этой программы. Ссылку на него я оставлю в описании. Настоятельно рекомендую его прочитать. Я его освоил за один вечер. Без этого вам будет сложно работать в этой программе. Для англоязычных людей дела обстоят еще лучше. В саму программу Inkscape встроены учебники на английском языке. Они находится в разделе справка / учебники.

Для начала я хочу сгенерировать g-code для вырезания бабочки из прошлого видео про тесты лазера.

Перед тем как генерировать код для резки, нужно сделать правильные настройки страницы в Inkscape. Для принтера Anycubic Mega Pro размеры листа 220 на 220 миллиметров. Центр относительно которого позиционируются картинки при выжигании BMP картинок имеет координаты x = 110, y = 140. Точки, у которых y < 60 мм, будут расположены за пределами столика, но эта область тоже доступна для выжигания в этом режиме. Т.е. если сделать столик из фанеры побольше, то можно расширить область для выжигания. Вместо 220 на 140 мм, доступных с заводскими настройками будет доступно 220 на 220 мм в режиме гравировки через g-code.

В других принтерах размер страницы должен быть такой, какой размер доступен для перемещения по осям x и y, а центр будет смещен на столько, насколько смещен лазер относительно сопла экструдера.

И так захожу в файл/ свойства документа. Устанавливаю размер листа 220 на 220 мм. Масштаб по осям 1. Дальше провожу линии, чтобы обозначить центр столика и его границу. Можно даже разместить сетку столика в качестве фона.

Бабочку в svg формате я уже подготовил, вручную обводил векторами ростовую картинку. Так я нарисовал половину бабочки, затем скопировал и зеркально отразил ее. Так у меня получилась вторая половина.

Загружаю бабочку в Inkscape. Теперь позиционирую бабочку по центру сетка. Именно там она и будет после прожига. Затем нужно выбрать команду контур, оконтурить объект. Эта команда создаст так называемый путь в SVG файле, который потом будет преобразован в траекторию для резки.

Запускаю плагин для генерации g-code. Слева показан оригинальный плагин, справа модифицированный. Так будет понятней, что именно изменилось. Кстати, оба этих плагина можно установить одновременно, они не будут мешать друг другу.

Я почитал комментарии других пользователей и русифицировал этот плагин как они и хотели.

Команда включения лазера для принтера Anycubic mega pro должна быть G6 S1, а команда выключения G6 S0. Что весьма странно, ведь разработчики Marlin зарезервировали эту команду совсем не для этого.

Для остальных принтеров эта команда зависит от того, куда подключен лазер. Например, лазер часто подключают к кулеру хотенда. Тогда команда для его включения должна быть M106 S255, а для выключения M106 S0 или M107. Мой принтер после модификации понимает как G6 так и M106 команды.

Параметр Laser power я убрал, т.к. он есть не у всех команд. Например, у команды M107 его нет. Теперь этот параметр нужно писать в самой команде. Думаю, так будет лучше.

Скорость перемещения. Это скорость перемещения экструдера, когда лазер выключен. Этот параметр можно оставить 3000. Делать его больше 3000 не рекомендую, от этого принтер может слишком сильно раскачиваться. Чем тяжелей хотенд с прикрепленным к нему лазером, тем этот параметр должен быть меньше.

Скорость лазера это скорость перемещения лазера, когда он включен. В тестах лазера я пришел к выводу, что ставить мощность меньше 100% для резки нет смысла. Именно этим параметром лучше всего регулировать глубину резки. Делать этот параметр больше 3000 не рекомендую.

Задержка перед включением и выключением лазера нужна, если ваш лазер не сразу включается или выключается.

В изначальной версии этого плагина не было команд, для поднятия лазера на нужную высоту. Именно поэтому я решил дописать этот плагин. Хорошо, что плагины для Inscape пишутся на Python, это один из языков который я знаю. Модифицировать плагин было не сложно.

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

Для большинства принтеров нужно обязательно установить галочку “Вначале установить положение home”, и высоту. У меня это 56 миллиметров. Лазер настроен на 50 миллиметров, на столике лежит фанера 6 миллиметров. В сумме получается 56 миллиметров. Если деталь будет толстой, то ее толщину так же нужно прибавить.

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

Здесь указывается каталог в который будет сохраняться готовый g-code.

Здесь шаблон имени файла.

К имени файла можно добавлять суффикс.

Можно выбрать единицы измерения. И сделать пред просмотр.

Нажимаем на кнопку применить.

Плагин отрабатывает. Он создает файл с g-code в папке, и создает рисунок с перемещениями лазера. Линии этого рисунка слишком толстые. Чтобы их было лучше видно их можно сделать потоньше. Например, 0,2 миллиметра.

После этого рисунок с траекторией лазера и началом координат можно удалять.

Запускаю выжигание бабочки на толстом картоне. Рядом выжгу точно такую же бабочку но уже как картинку. Края бабочки по траектории получились более ровными и аккуратными.

Покажу, как можно векторизовать растр. Загружаем растровую картинку в inscape. Например, логотип YouTube в png формате. Затем я выделяю картинку выбираю “контур /векторизовать растр”. Затем “Сокращение яркости” и остальные параметры как в видео. Нажимаю Ок. В библиотеки объектов появляется объект path. Исходную картинку можно удалить.

Запускаю генерацию g-code. И выжигаю полученную картинку. Все получилось в точности, как и было, задумано.

Покажу, как выжигать текст в таком режиме, и как разместить его по контуру. Вначале нужно нарисовать контур. Затем ввести текст. Затем выделяем текст и контур и выбираем разместить текст по контуру. Дальше нужно преобразовать текст в векторные объекты. Это делается с помощью команды “Контур / оконтурить объект”. После этого текст превратиться в набор объектов. Теперь контур можно удалить.

Есть несколько подходов к вырезанию деталей. Можно сделать меньшее число проходов на маленькой скорости или большее на большой. Попробую оба варианта и сравню, есть ли разница.

Вырежу пятиконечную звезду за 1 проход со скоростью 50 мм/мин и за 20 проходов со скоростью 1000 мм/мин.

При скорости реза 50 мм/мин края обгорели, а в некоторых местах бумага даже загорелась.

При скорости 1000 мм/мин рез получился гораздо лучше.

Значит лучше делать больше проходов на большой скорости. Если вырезать по БМП картинке, то края подгорают видимо по этой же причине. Лазер перемещается недостаточно быстро.

Теперь вы знаете, как можно выжигать детали по траектории. Как настроить размер листа и удобно располагать детали. Обязательно сделайте столик из фанеры или хотя бы из толстого картона, Только не из гофр картона, иначе столик принтера будет испорчен.

Следующим видео про выжигание займусь, когда меня посетит вдохновение. Переделка, которую я делал в прошлом видео, вероятно, мне пригодится, только без конденсатора. Под видео будут полезные ссылки.