Делаем лазерный гравер «Франкенштейн» — часть 1

Перевел SaorY для mozgochiny.ru

Доброго времени суток, мозгочины! Лазерный резак описываемый в этой статье, был собран из старых принтера и сканера, и носит говорящее название «Франкенштейн». Заинтересовало? Тогда читаем далее…

 

delaem-lazernyiy-graver-frankenshteyn1

 

delaem-lazernyiy-graver-frankenshteyn2

 

 

delaem-lazernyiy-graver-frankenshteyn3

 

delaem-lazernyiy-graver-frankenshteyn4

 

 

Создание этого мозгорезака развивалось вокруг руководства ‘Pocket Laser Engraver’ от Groover.

Данное руководство это «мaking-оf», то есть описание всего процесса создания. И хотя многое, если не все, во время механической сборки требует изобретательности, я попытался на сколько это возможно задокументировать процесс целиком. Принтеры и сканеры бывают разных моделей, поэтому данная статья не может быть использована как точная пошаговая инструкция, это скорее пособие «как это можно сделать». Все вопросы которые могут возникать во время изготовления этой самоделки, я постараюсь осветить.

Скажу, что в электронике я ничего не соображал, знал лишь что красный (в основном) это «плюс», а черный (также в основном) — это «масса».

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

Рабочая площадь этого мозгогравера составляет 27х20см, самое то, чтобы сделать какие-нибудь шлепанцы на лето.

Резать он может следующие материалы:
— поролон
— пленку
— винил
— бумагу (почти всех цветов кроме белого и красного)
— некоторые пластмассы (в зависимости от толщины может понадобиться несколько проходов)

Гравировать он может на:
— светлой древесине
— коже
— кости
— рогах
— пластике
— некоторых лакированных покрытиях
— чистых CD/DVD-дисках (синих и фиолетовых)

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

Затраты на всю сборку не большие, и все что понадобится это:

— Arduino (или клон) -1 шт.
— Easydriver — 2шт.
— некоторые электронные детали
— лазерный модуль Aixiz /W lens
— алюминиевый профиль

!!!!! И чуть не забыл — лазерные защитные очки (ОБЯЗАТЕЛЬНО)!!!!

См. Шаг 16: для ознакомления с защитой глаз от лазера.

Времени на изготовление гравера, включая заказ и ожидание доставки, ушло примерно 4 месяца. Но он постоянно дорабатывается, и вот последние изменения:

— 9 мая 2013 : обновлен шаг 14 : Лазерный диод (фотографии и несколько советов по фокусировке)
— 13 мая 2013 года : добавлен шаг 17 — ссылки и файлы
— Добавлен Шаг 18: дальнейшие планы по улучшению( по желанию)
— Обновлен BOM-список, теперь он содержит больше необходимых материалов
— 20 мая 2013 : исправлены мм/сек в мм/мин ! В секундах было бы очень очень быстро.
— 1 июня 2013 : добавлен Шаг 13 — альтернативный щилд лазерного драйвера лазера (щилд Easylaser)
— 4 декабря 2013: обновлен схема/макет с альтернативным шилдом Easylaser.

bom_list_frankenstein

 

 

Шаг 1: Поиск кандидатов на разбор

 

delaem-lazernyiy-graver-frankenshteyn5

 

delaem-lazernyiy-graver-frankenshteyn6

 

Перед тем как приступать к «яростному» разбору следует учесть ряд советов:

Правила выведенные опытным путем
— чем древнее принтер, тем лучше
— чем новее сканер, тем лучше.

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

Чем новее принтер, тем меньше шансов добыть из него шаговый двигатель (степпер).

Все сканеры имеют степперы, и чем сканер древнее, тем больше вероятность достать из него однополярный шаговый двигатель, который в данном мозгопроекте не пригодится.

———————————

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

Сканер / ось Х

Выбранный мной сканер это старый Tevion 2400, аналог Microtek Scanmaker 5800.
Степпер это 96-шаговый биполярный шаговый двигатель, по описанию NEOCENE 2T354207. Не верьте если вам говорят, что он 100-шаговый, это неправда! 96-шаговый, ни больше, ни меньше.
Стол сканера я использовал в качестве основания мозгоподелки.
Используются так же направляющая и зубчатый ремень, а еще каретка, перемещавшая фотоэлектронику. Но каретку придется подрезать, чтобы дать больше пространства для лазера.

Теперь немного о степпере.
Имеются 4 шестерни расположенные на проводковой плите.
Передаточное отношение, к счастью, незначительно. Если вам хочется узнать как оно рассчитывается, то загляните на эту страничку( язык там немецкий, но можно воспользоваться опцией онлайн-перевода).
Степпер сканер отвечает за ось Х.
Принтер / ось Y

Принтер для разбоа я взял старый Epson Stylus Photo 925.
Судя по странному руководству по ремонту принтера степпер из него 4-фазный, 48 шаговый, биполярный, 42В (???), вот только не понимаю, если это биполярный степпер он должен иметь 2 фазы, а не 4.
Проворачивая вал вручную я подсчитал количество шагов, их оказалось 48.
Этот шаговый двигатель (и каретка печатной головки) отвечают за ось Y.
Позже я понял, что этот 48 шагов или степпер сам по себе являются слабым звеном в этой поделке. Он медленнее степпера сканера и гремит на направляющей. Латунные фиттинги здесь отсутствуют, смазка вазелином должна немного исправить ситуацию.

Технические характеристики степперов:
— Tevion 2400 dpi / Microtek 5800
фаз — 2, шаговый угол — 3,75°/шаг = 96 шагов, напряжение 5В, сила тока — ?, сопротивление 5.5Ом, удерживающий момент — ?.

— Epson Stylus Photo 925
фаз — 2, шаговый угол — 7,5°/шаг = 48 шагов, напряжение — 5-12В,
сила тока — ?, сопротивление — 7Ом, удерживающий момент — ?.

Позже я узнал, что оба степпера потребляют ток менее 300 мА.
Easydriver V4.4 имеет ошибку с шелковой печатью при смешивании Max и Min poti, в 4.4 они переходят на печать на PCB, и одновременно меняется poti на реверс poti. По крайней мере это я прочитал на некоторых форумах.

Проще говоря:
Poti настроен на низкое сопротивление, это значит степеры получают часть тока, которое может подать Easydriver. Максимум 750мА на катушку. Poti установлен примерно на 25%, просто чтобы они не «закричали от боли».
Распиновка шагового двигателя:
Во время бесконечных поисков в интернете я часто наталкивался на вопрос — как узнать правильную распиновку степперов? А нужно лишь взять кусочек провода и замкнуть контакты, и если при повороте вала чувствуется сопротивление, то вы замкнули пару.

 

 

Шаг 2: Разбор сканера

 

delaem-lazernyiy-graver-frankenshteyn7

 

delaem-lazernyiy-graver-frankenshteyn8

 

delaem-lazernyiy-graver-frankenshteyn9

 

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

От сканера мне необходимы стол и каретка, в которой находится фотоэлектроника.
Вся электрокомпоненты и зеркало были удалены, и сделано это было с помощью отвертки и защитных перчаток.

В итоге остается лишь голый пластиковый поддон, который затем был немного подрезан, чтобы иметь больше пространства для каретки принтера, на которую будет установлен лазерный модуль с вентилятором.

 

 

Шаг 3: Операции с принтером — часть 1

 

delaem-lazernyiy-graver-frankenshteyn10

 

delaem-lazernyiy-graver-frankenshteyn11

 

delaem-lazernyiy-graver-frankenshteyn12

 

delaem-lazernyiy-graver-frankenshteyn13

 

Данный шаг самый нудный из всего мозгоруководства. Я затратил на него около 8 часов, причем мне еще помогал продвинутый самодельщик (отец).

Каретка принтера, в которой располагается печатная головка, и направляющая были хорошо доработаны моей любимой пилой по металлу. А еще я отрезал кусок L-образного профиля, чтобы получить посадочное место для степпера.

Там, где в исходном принтере находился DC двигатель, сейчас располагается степпер. Зачастую (надеюсь что так) степпер от этого же принтера аккуратно входит в посадочное отверстие DC-двигателя.

 

 

Шаг 4: Операции с принтером — часть 2

 

delaem-lazernyiy-graver-frankenshteyn14

 

delaem-lazernyiy-graver-frankenshteyn15

 

delaem-lazernyiy-graver-frankenshteyn16

 

delaem-lazernyiy-graver-frankenshteyn17

 

delaem-lazernyiy-graver-frankenshteyn18

 

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

В двух отрезках T-профиля я высверлил отверстия под наконечники направляющей, и с помощью них смонтировал направляющую на L-профиль. Этот шаг требует точности, иначе позднее при мозгоработе ось Y может смещаться. А это, если ось Y не будет располагаться под прямым углом к оси X, приведет к искажению всего рисунка/ контура в процессе лазерной обработки. Поэтому используйте штангенциркуль, а не размечайте на глазок.

 

 

Шаг 5: Проводка — часть 1

 

delaem-lazernyiy-graver-frankenshteyn19

 

delaem-lazernyiy-graver-frankenshteyn20

 

delaem-lazernyiy-graver-frankenshteyn21

 

Подключение кабелей оси Y

Степпер уже перемещает каретку оси Y, значит пора задуматься, как его подключить. Для этого я взял 5-контактный разъем от старой материнской платы и просто припаял его к контактам шагового двигателя, и через него, с помощью 4-дорожечного кабеля, подсоединил его к контактной плате, установленной на L-профиль. Эта контактная мозгоплата, по сути является шлюзом между всеми электрокомпонентами подвижной оси Y и микроконтроллером Arduino. К дорожкам ленточного кабеля, который раньше шел к каретке сканера, я припаял несколько «мама»-контактов. Да, работа «сыровата», есть куда развиваться. Я если бы я был более предусмотрителен, то припаял бы 8-контактный разъем на ленточный кабель, но это очень недолговечная конструкция, и позже вы увидите почему.

 

 

Шаг 6: «Магия» для «волшебного черного кирпича»

 

delaem-lazernyiy-graver-frankenshteyn22

 

Чтобы управлять драйверами степперов необходимо скачать grbl и загрузить ее на ваш микроконтроллер. Я использовал GRBL 0.8с, которую можно найти https://github.com/grbl/grbl. По этой ссылке прокрутите страницу и найдите версию 0.8, это будет скомпилированный .hex файл, который можно загрузить на Arduino с помощью hex-загрузчика.

Чтобы избежать рассинхронизации необходимо изменить скорость передачи данных, с которой загрузчик сообщается с Arduino, с 19200 до 115200, см. рисунок.

Для изменения распиновки GRBL необходимо получить исходник по вышепредставленной мозгоссылке и модифицировать файл config.h, и, конечно, его перекомпилировать. В нем вы можете изменять распиновку как вам нравится, что очень пригодится если вы используете другой драйвер шагового двигателя.

Для рекомпиляции в оболочке введите:

make clean
make grbl.hex

 

 

Шаг 7: Сборка электроцепи на макетке

 

delaem-lazernyiy-graver-frankenshteyn23

 

delaem-lazernyiy-graver-frankenshteyn24

 

delaem-lazernyiy-graver-frankenshteyn25

 

delaem-lazernyiy-graver-frankenshteyn26

 

delaem-lazernyiy-graver-frankenshteyn27

 

delaem-lazernyiy-graver-frankenshteyn28

 

delaem-lazernyiy-graver-frankenshteyn29

 

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

Микростеппинг

На верхнем фото можно увидеть, что контакты драйвера MS1 и MS2 подсоединены к 5В, и это значит, что они «под напряжением».
Easydriver может работать с микростеппингом, который значит, что шаг мотора можно разделить на две или четыре фазы и т.д. 92 шаговый степпер может работать с 8 микрошагами, то есть 96х8=768 шагов.

Установка микростеппинга:

MS1 и MS2 — не под напряжением — полный шаг
MS1 — под напряжением — микростеппинг в половину оборота
MS2 — под напряжением — микростеппинг в четверть оборота
MS1 и MS2 — под напряжением — микростеппинг в 1/8 оборота

Нам нужен микростеппинг 1/8, поэтому к контактам MS1 и MS2 подведены 5В

Распиновка Arduino выглядит следующим образом:

Arduino Digital 2 — Easydriver X-Step
Digital 5 — X-Dir
Digital 3 — Y-Step
Digital 6 — Y-Dir

На каждом из драйверов контакты MS1 и MS2 соединены перемычкой и на них подается 5В, так включится режим микростеппинга в 1/8 шага. Драйверы Easydriver имеют отдельный источник питания, любой розеточный 12В, 600мА блок питания сгодится. Позднее платы драйверов будут запитаны от Arduino, как и лазер, и вентилятор.

Я даже записал короткое мозговидео о том, как работает прототип. Драйверы довольно сильно греются, и чтобы они непрерывно работали необходимо вентиляторное охлаждение.  Да…Вентилятор крепится на прототип…

 

 

 

Шаг 8: Калибровка

 

delaem-lazernyiy-graver-frankenshteyn30
Перед тем как начать делать всякие модные мозгоштучки со степперами их нужно откалибровать. Шаг это важный и пропускать его ни в коем случае нельзя. Я отыскал хороший и толковый видеоурок по этой теме — BuildYourOwnCNC.

В нем говорится, что нужно расчитать шаг/мм. На это значение вы перемещаете нужный вам степпер с помощью gcode (например Х200). Затем следует учесть разницу и рассчитать новое значение шаг/мм, и так до тех пор, пока он не перемещается в том диапазоне, который вы задали. Но лучше смотрите видео для получения большей информации по этим рассчетам.

Я советую создать таблицу, чтобы избавиться от лишней головной боли.

Для «общения» с grbl можно использовать любой из видов терминала, я пользуюсь CoolTerm. Полагаю вы знаете, как загрузить терминал и подключиться к Arduino.

А на картинке вы можете посмотреть данные мой калибровки самоделки.

 

 

Шаг 9: Первый контакт

 

delaem-lazernyiy-graver-frankenshteyn31
Для взаимодействия с Arduino (и отправки на него gcode) есть несколько вариантов. Посмотрите на эту тему GRBL Wiki и вы найдете множество софта, который имеет дело с GRBL и Arduino.
Существуют даже нормальные GUI-инструменты, но я тем не менее, пользуюсь Groovers Gcodesender, который вы можете найти вот  в этом мозгоруководстве.

А терерь за дело, пора опробовать некоторыйе команды g-кода.

Переместите степперы в исходное положение прежде чем их включить (например, нулевую позицию) типа:
G91 G28 X0 Y0
Эта команда сообщает GRBL, что данное положение это нулевая позиция.

X50 Y50
Данная команда перемещает вал в абсолютную позицию X50 Y50

G01 Y50 Х50
А эта команда перемещает вал на 50мм по оси Х и на 50мм по оси Y, независимо от того, в какой позиции он был до этого. Это называется относительным позиционированием.

Для большей информации по командам gcode почитайте об этом здесь.

 

 

Продолжение следует…

(A-z Source)

ПОДЕЛИТЕСЬ С ДРУЗЬЯМИ!


12 Replies to “Делаем лазерный гравер «Франкенштейн» — часть 1”

    1. як би так сказати: автор статті не завжди робить пристрій, зазвичай просто репост. мені відомо що Hind на даний момент воює з пристроєм і я. доки не отримаю відповідь яке залізо, і яка прошивка потрібна *мені відомо 3 варіанти прошивка-soft, їх набагато більше. доки нам обговорювати нічого.

  1. Здравствуйте я тоже собрал гравер из двух принтеров по эой же схеме .возникли проблемы скаллибровкой шаг на мм нужна ваша помощ

    1. консоль рулить. можна хоч з вікна термінала команди хреначить.

      можна ще софтом, можна множником в драйвері *якщо є

      (x, step/mm) — Установка числа шагов на миллиметр для оси X.
      (y, step/mm) — Установка числа шагов на миллиметр для оси Y.
      (z, step/mm) — Установка числа шагов на миллиметр для оси Z.
      (step pulse, usec) — Длительность импульса шага микросекунд.
      (default feed, mm/min) — Скорость рабочих (G1) перемещений инструмента.
      (default seek, mm/min) — Скорость холостых (G0) перемещений инструмента.
      (step port invert mask, int:00011100) — Маска выходных состояний сигналов, используется если необходимо проинвертировать сигналы на драйверы.
      (step idle delay, msec) — Задержка выключения моторов, миллисекунд.
      (acceleration, mm/sec^2) — Ускорение. Чем больше, тем быстрее разгон.
      (junction deviation, mm) — Отклонение при прохождении крутых поворотов, увеличение значения увеличит скорость прохождения поворота, но уменьшит точность.
      (arc, mm/segment) — Величина сегмента дуги или окружности. Не устанавливайте слишком малое значение, это требует повышенных вычислений.
      (n-arc correction, int) — Точность вычисления дуг и кругов (не меньше 3!).
      (n-decimals, int) — Минимальное число знаков после запятой в операциях с плавающей точкой.
      (report inches, bool) — Единицы измерений Дюймы(1) или миллиметры (0).
      (auto start, bool) — Включение автостарта после загрузки программы.
      (invert step enable, bool) — Инверсия сигнала включения двигателей.
      (hard limits, bool) — Включение механических лимитов(концевиков).
      (homing cycle, bool) — Включение автопозиционирования по концевикам.
      (homing dir invert mask, int:00000000) — Маска направление движения к точке Home.
      (homing feed, mm/min) — Скорость движения у концевиков.
      (homing seek, mm/min) — Скорость движения к точке Home.
      (homing debounce, msec) — Задержка срабатывания концевиков
      (homing pull-off, mm) — Расстояние «отскока».

    2. Огромное спасибо за консультацию !Так как хочу реализовать в своей схеме концевики. Но моя проблема была в другом я не знал как заставить двигатель сделать определенное количество шагов для того чтоб рассчитать количество шагов на милеметр.НОпотом немного покопавшись в програме гарбл контрол нашел способ .В ней можно переместить ось на опрделенное расстояние ну а дальше просто посчитать и откоректировать.

      1. та немає за що. самий простий варіант відповідність 1 крок — 1 мм а далі накнопать. зібрав мелкий гравер із сідюків, зараз чекаю драйвера і будую значно більший. перебрав дофіга прошивок і софта

      2. не знаю як в кого, може скеч був написаний під «уну» а в мене «про міні». після того як координата наїхала на кінцевик, ардуіна висне. ні команда розблокувати, ні кнопка розблокувати не діє. може «уну» придбаю для тесту, а може скеч під себе перепишу. *не бажаю заливати HEX хочу бачити і мати можливість щось вирівняти, хоч і программер з мене кепьский

  2. так якщо залити в ардуіну hex то вже не буде ардуіно, буде мікроконтроллер прошитий під гравер. намагаюсь зробити щось подібне саме з ардуіно. не так все просто. і софт народ не поспішає викладати

  3. Слова: «Микростеппинг», «Степпер» — режут слух. Режим микрошага, шаговый двигатель (ну уж шаговик хоть).

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

* Copy This Password *

* Type Or Paste Password Here *