Делаем режущий плоттер из CNC 3018
На самом деле я уже давно подумывал о покупке режущего плоттера. Но из-за высокой стоимости так и не решился. Затем, во время рождественских каникул, я вместе с детьми собрал робот-рисовальщик. Так у меня возникла идея объединить этот робот-рисовальщик с ножом для вырезания. После того как я заказал нож и провел первые тесты в ручном режиме, стало ясно, что робот-рисовальщик не обладает достаточной механической устойчивостью для этой цели. К счастью, у меня валялся набор для фрезерного станка с ЧПУ 3018. Так и начался этот проект...
Здесь я описываю решение, которое хорошо работает для меня. Для меня также было важно использовать свободное программное обеспечение. Конечно, есть более простые, более эффективные, более красивые… реализации — но, как я уже сказал, для меня это работает отлично так, как есть ;-).
Комплектующие:
- 1 шт. Набор плоттерный держатель с ножами для резки (на али в районе 400р)
- 4 шт. микровыключателей-концевиков
- 1 шт. самоклеящийся коврик для резки (я выбрал набор с ковриками разной степенью прилипания)
- Кабели и разъёмы
- Филамент PETG
- Различные мелкие детали (винты, гайки...)
Расходные материалы:
- Виниловая плёнка
- Трансферная плёнка для переноса наклеек
Шаг 1: Концепция
Поскольку я хотел сохранить полную гибкость станка CNC 3018, я разработал решение, позволяющее переключаться между фрезерным шпинделем и адаптером для тягового ножа. Адаптер для тягового ножа имеет относительно большие размеры, что позволяет устанавливать его непосредственно в держатель фрезерного шпинделя.
На поперечном разрезе показана внутренняя конструкция адаптера. Нож-разделитель размещается в зоне 2. Затем толкатель давит на нож сверху, который предварительно натягивается пружиной (в зоне 1) и регулировочным винтом. Для фиксации используется контргайка.
Для крепления виниловой пленки к каретке используется клейкий коврик, который закрепляется с помощью зажимной системы. Кроме того, CNC 3018 был дополнен цепью привода по оси X, концевыми выключателями, корпусом для блока питания и платы управления. Концевые выключатели являются опциональными. Я использую их даже без функции возврата в исходное положение, только в качестве защиты от столкновений, поскольку я выбираю местоположение виниловой пленки произвольно и устанавливаю нулевую точку (xy) вручную.
Шаг 2: 3D-печать деталей
На скриншотах из программы-слайсера видно количество отдельных компонентов (в списке справа под настройками печати) и ориентацию деталей на печатной платформе.
Я напечатал детали с использованием нити PETG. Опоры требуются только для деталей limit_switch_x_mount и stepper_mount (см. также скриншоты из слайсера).
Шайба и гайка с пазом являются опциональными деталями. В качестве гайки с пазом я использовал гайку M3 с горячей прессовой посадкой. Гайка с пазом сконструирована таким образом, что ее можно вставить в паз сверху (с последующим поворотом на 90°), и поэтому вам не нужно разбирать CNC3018, чтобы установить, например, концевые выключатели.
Шаг 3: Установка деталей

Я использовал гайки с горячей прессовой посадкой разных размеров:
limit_switch_x_mount: 2 шт. M2
limit_switch_y_mount: 2 шт. M2
limit_switch_y_flag_A: 2 шт. M4
limit_switch_y_flag_B: 1 шт. M3
stepper_mount: 1 шт. M4
CNC_controller_case_lower: 4 x M3
holder_cutter: 1 x M5
Nutenstein_p06: 1 x M3
Сборка адаптера ножа показана на фотографиях выше и в разделе «Концепция». Нож, толкатель и пружина (я использовал винтовую пружину с внешним диаметром около 10 мм и длиной около 18 мм) вставляются в корпус адаптера и предварительно натягиваются с помощью регулировочного винта. Затем он фиксируется с помощью контргайки.
Корпус для платы управления (CNC_controller_case_lower) и блок питания (CNC_powersupply_mount) крепятся к алюминиевым профилям на задней стороне CNC 3018 с помощью гаек с пазом.
Концевые выключатели оси Y устанавливаются с помощью шлицевых гаек на раме под кареткой. Флажок выключателя состоит из двух частей. Первая часть вставляется в паз платформы (но не до конца), а затем вторая часть закрепляется с помощью винта M3. Положение концевых выключателей должно быть выбрано таким образом, чтобы они срабатывали до столкновения каретки с рамой.
Цепь привода с одной стороны крепится к профилю портала с помощью гаек с прорезью, а с другой стороны защелкивается на держателе шагового двигателя (stepper_mount).
Для винтов зажимного устройства (holder_cutter) я использую винты с шестигранной головкой M5x30 и 3D-печатную головку винта из одного из моих других проектов
Шаг 4: Электрические соединения

Электромонтаж довольно прост. Концевые выключатели подключаются с помощью плоских разъемов, двухжильных кабелей и разъемов Dupont. На плате управления разъёмы для концевых выключателей выполнены в виде штырьковых разъёмов, к которым удобно подключать штекеры Dupont. Затем соединительный кабель шагового двигателя оси Z прокладывается через цепь защиты от износа.
Шаг 5: Ввод в эксплуатацию концевых выключателей
Как уже упоминалось, я использую концевые выключатели только для предотвращения столкновений. Я не активировал автоматический возврат в исходное положение. Если срабатывает концевой выключатель, CNC 3018 останавливается и его необходимо сбросить вручную, чтобы отойти от конечного положения.
Конец хода можно активировать с помощью команды G-кода $21=1.
Инструкции по вводу в эксплуатацию концевых выключателей можно найти, например, по адресу https://docs.sainsmart.com/article/4yl9zlukly-how-to-install-limit-switches-in-your-genmitsu-3018-pro-with-only-your-cnc
Шаг 6: Сгенерировать G-код

Прежде всего, вам нужно найти подходящий объект; например, трафареты для аэрографа — хороший вариант для начала. Сейчас я покажу рабочий процесс на примере робота Instructables.
Для рисовального робота я провел исследование и эксперименты с различными программами, чтобы максимально упростить процесс преобразования изображения в G-код. Существует много различных способов сделать это, но для меня наиболее подходит следующий рабочий процесс. Я использую программу LaserGrbl и редактор Notepad++.
- Запустите LaserGrbl
- Загрузите изображение, которое хотите преобразовать в G-код (Скриншот 01)
- Выберите «Vectorize» в качестве инструмента преобразования в появившемся окне (Скриншот 02)
- Настройте параметры и опции, чтобы получить лучшие результаты для вашего изображения.
- Описание опций можно найти на главной странице разработчика.
- Нажмите «Next»
- Настройте размер объекта, который хотите сгенерировать (Скриншот 03)
- Нажмите «Generate»
- Теперь вы вернетесь к первому экрану программы, где отобразится предварительный просмотр сгенерированного G-кода (Скриншот 04). Поскольку мы используем другую программу для управления станком с ЧПУ, вам необходимо сохранить код. Нажмите «Save (Advanced options)»
- Используйте предустановки и сохраните файл (Скриншот 05).
- Откройте сгенерированный G-код в Notepad++
- Откройте диалоговое окно «Заменить» (CTRL+H)
- Замените части G-кода в соответствии с приведенными ниже инструкциями. Обязательно используйте функцию «Заменить все» (Скриншот 06)
- Удалите Z0 в последней строке G-кода (см. инструкцию ниже)
Замена фрагментов G-кода
Замените S0 на G1 Z5.00 а S10000 на G1 Z-1.00
Дополнительное объяснение, почему фрагменты G-кода были изменены (если вас также интересует «почему»):
LaserGRBL — это программа для лазерной гравировки. С помощью команд S0 или S1000 включается или выключается мощность лазера. Но поскольку резак перемещает нож в направлении оси Z вместо того, чтобы включать и выключать лазер, эти команды необходимо соответствующим образом адаптировать.
S0 означает выключение лазера — для ножа с приводом это означает отход от поверхности резания (в нашем случае на 5 мм).
S1000 означает включение лазера — для ножа с приводом это означает вход в виниловую пленку (в нашем случае на -1 мм).
Изменение последней строки в G-коде:
изменить G0 X0 Y0 Z0 (возврат в начальную точку) на G0 X0 Y0 (возврат в начальную точку)
Дополнительное объяснение причин изменения частей G-кода (если вас также интересует «почему?»:
Благодаря этой модификации нож остается на расстоянии 5 мм над фольгой при возвращении в начальную точку, в противном случае он перемещался бы в положении z = 0 (что тоже должно работать, но при этом образуется лишний зазор).
Пример кода
В конце этого раздела вы найдете G-код для робота Instructables, который я создал, следуя приведенным выше инструкциям. Используйте его на свой страх и риск
Шаг 7: Настройка станка и запуск процесса резки

Для управления ЧПУ 3018 я использую программу grblControl. Перед началом настройки станка нанесите виниловую пленку на самоклеящийся режущий коврик. При этом тщательно разгладьте пленку, чтобы она плотно прилегала и не имела складок.
После запуска, при необходимости, сначала необходимо установить соединение с станком с ЧПУ. Для этого настройка соединения осуществляется в разделе «Сервис / Настройки» (Скриншоты 1 + 2).
Затем загружается ранее сгенерированный файл G-кода, который сразу отображается в окне предварительного просмотра.
Положение резака можно настроить с помощью панели управления [1]. Размер шага можно установить с помощью предустановок или ввести числовое значение [2]. При перемещении к начальной точке x-y рекомендуется перемещать нож на несколько миллиметров над пленкой. По достижении начальной позиции x-y устанавливается нулевая позиция x-y (Zero XY) [3]
Теперь необходимо установить нулевую точку по оси Z. Будьте осторожны при перемещении оси Z [1], чтобы нож не ударился о стол и не повредился. Нож опускается небольшими шагами [2], пока он не прорежет виниловую пленку, но не прорежет подложку. Это положение соответствует z=-1 мм, что означает: если настройка высоты подходит, переместитесь на +1 мм вверх и установите нулевую точку по оси Z (Zero Z) [3]. Рекомендуется вначале создавать простые небольшие рисунки и точно настраивать высоту по оси Z.
После завершения настройки программу запускают с помощью кнопки «Отправить». Теперь можно расслабиться и понаблюдать за работой станка с ЧПУ.
По завершении программы режущая головка возвращается в исходное положение, и на экране появляется сообщение о завершении.
Шаг 8: Результат

Аккуратно удалите скальпелем те части изображения, которые необходимо удалить (нечерные области). При необходимости подрежьте немного, например, если часть не была полностью отрезана из-за положения ножа в начале реза (Обновление: T.Rohner оставил отличный комментарий о смещении тягового ножа — загляните в раздел комментариев, если вам интересна эта тема).
Затем снимите переносную пленку (ту, что с синим рисунком) с несущей пленки и нанесите ее, стараясь не оставлять пузырьков. Затем аккуратно снова снимите переносную пленку, и винил можно будет снять с несущей пленки. Наклейка теперь находится на переносной пленке и может быть нанесена на нужную поверхность.










