Цифровая линейка для СО2 лазера и других станков

arelav
Идет загрузка
Загрузка
25.07.2021
4377
16
Применение

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

13

Цифровая линейка для СО2 лазера и других станков

Пару недель назад приехал этот замечательный СО2 Лазер с трубкой на 80 Вт. Опыта с ним в работе у меня до этого не было, хотя частенько делал заказы по раскрою и гравировке на специализирующихся в этом процессе предприятиях. Освоил его за день, все оказалось довольно просто, но юстировку трубы и зеркал еще нужно делать, это не долго. Сама сборка выполнена на удивление довольно качественно, хотя я думал, что прийдется потрудиться над его доработками. Немного попрактиковавшись с разными материалами и процессами обработки разных высот, таких как сферические поверхности, где необходимо послойно от центра к краю гравировать и резать, я подумал, что не плохо было бы обзавестись электронной линейкой. И уже нашел было где купить, но вот размеры то слишком длинные, то короткие, да и корпус пилить не хотелось. Поэтому решил сделать свой вариант, и тем более все для этого было под рукой.

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

Отвечу сразу почему контроллера два, чтобы после не отвечать в комментариях: - так надежнее! Здесь важна точность измерений на серийной работе. Все же это Arduino, многозадачность в ней не очень то идеально работает особенно при использовании OLED дисплея. Просто не справляется измерение, слежение за кнопками и отображением информации. В результате были пропуски... В работе парой один контроллер следит за энкодером и по SPI интерфейсу передает второму, который уже и выводит информацию на экран. Хорошенько протестировав я убедился в полном отсутствии пропусков шагов, поэтому и делюсь готовым решением.

Функционал:

  • режимы измерений абсолютная и относительная дистанции;
  • два языка пользовательского интерфейса (английский и русский);
  • установка нуля;
  • корректировка коэффициента (Миллиметры = шаги энкодера / коэффициент). Базовый К=7.7038 для шкива HTD 3M 16T;
  • и конечно же сброс (перезагрузка).

Также контроллер запоминает последнее положение прежде чем станок будет отключен. Это происходит каждый раз после остановки вращения валов оси Z через две с половиной секунды. И не беспокойтесь о ресурсе памяти (чтение/запись), хоть у Arduino заявлено сто тысяч циклов, но я реализовал этот процесс таким образом, что запись происходит только если значение отличается от прежнего. Для чего это нужно?! - Вы включаете станок и сразу видите положение стола относительно нуля (то есть точного фокуса, который вы определили либо по столу либо по материалу). 

Вот пример: вы базируете ноль на столе, берете материал толщиной к примеру 8 мм... Фокус нужно установить на средину толщины материала... Просто опускаете стол полагаясь на цифровую линейку на 4 мм. Это удобнее чем с шаблоном целиться, по крайней мере для меня.

Второй пример: 3D гравировка. Здесь конечно же послойно можно оперировать мощность/скорость/обдув, но качественнее и главное чище (без обугливания материала) получается когда каждый слой в точном фокусе лазера, да еще когда серия - эта линейка здорово выручает.

И да! Эту линейку легко можно использовать в других станках, где перемещение производится не программой а вручную, к примеру стойке для дрели и тд. Позже прикручу такую и к своей стойке с Hilda.

 

Схема подключения:

Цифровая линейка для СО2 лазера и других станков

Как прошить Arduino здесь расписывать не стану. Наберите в Google это название и вы получите, как говорит сам Google - "Результатов: примерно 122 000 000" :)  

А вот сами прошивки в архиве проекта имеются... 

Инструкция как изменить коэффициент, на случай использования другого типа энкодера/шкива/ремня и тд.:

Подключаем Slave контроллер к Arduino IDE, выбираем плату в меню "Инструменты" (в моем случае Arduino PRO Mini), затем в том же меню выбираем порт по которому соединилась Arduino. открываем Serial Monitor (монитор последовательного порта). В коммандной строке вносим свой коэффициент с точкой в качестве разделителя. Как выше уже я упоминал, - в моем случае К=7.7038. После нажатия клавиши Enter - введенный коэффициент будет выведен на экран и записан в памяти контроллера. Вот собственно и все настройки :)

Цифровая линейка для СО2 лазера и других станков

Ну пожалуй хватит, а то я тут уже слишком много написал,.. кто это все читает?! :) ... Но вот что важное хотел добавить: LightBurn - это просто прелесть в работе со станком. А та программа, что шла в комплекте мне не понравилась...

Как я паял и собирал цифровую линейку можно глянуть на видео:

Модель и ссылки как всегда здесь: https://go.like-it.link/n7Nif

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

13
Комментарии к статье