Последние публикации

  • Рисуем в Paint эскиз для резки CO2-лазером
    Читать
  • Определение величины задержки между шагами ШД
    Читать
  • Гравировка CO2-лазером на металле с использованием пасты
    Читать
  • Резка по изображению "от руки", чертежу или растровой картинке
    Читать

Заметки

  • Изготовление источника питания для двигателей из старых зарядников.
    Читать
  • Муфта соединения оси шагового двигателя и оси винтовой передачи.
    Читать
  • Каретка винтовой передачи скольжения станка с ЧПУ.
    Читать
  • Подключение драйвера ШД на TB6560 к Ардуино, шаговому двигателю и БП.
    Читать
  • Запуск CO2-лазера при отрицательной температуре
    Читать

Резка по рисунку в программе управления станком с ЧПУ на Ардуино

Введение

В связи с пожеланиями пользователей задумался над возможностью резки, гравировки по рисунку в программе.
То есть, берем чистый лист бумаги, рисуем на нем траекторию для движения лазера / фрезы. Сканируем изображение, открываем его в программе и запускаем резку.
Если решить указанную задачу, то автоматически будет решена задача резки по выкройкам и шаблонам, скачанным из интернета, в различных растровых форматах (BMP,JPG,PNG). Предполагается, что резка будет осуществляться без изменения мощности и скорости. То есть в идеале рисунок должен буть черно белым. На первый взгляд сделать - ничего не стоит. Но не тут-то было. Основные проблемы при обработке изображения:

  • Разные изображения будут отличаться по контрасту, яркости и прочим характеристикам, что требует предварительной обработки картинки.
  • Рисунок необходимо преобразовать в черно-белое изображение. Требуются дополнительные работы в графическом редакторе.
  • После бинаризации толщина линий может варьироваться. Требуются математические алгоритмы для векторизации изображения.
  • Моя программа не работает с векторными изображениями. Необходимо преобразовать векторное изображение в двухцветную растровую картинку с толщиной линий - 1 пиксель.

Полностью автоматическую систему обработки изображения и формирование управляющих команд для резки лазером или фрезой сделать крайне сложно. В одном проекте, не связанном с ЧПУ, для разбора и структуризации информации поисковым роботом мной использовалась нейронная сеть. Для хранения и работы сети применялись уникальные методы и алгоритмы, позволяющие конкурировать с более дорогими и "тяжелыми" сетями. Архитектуру этой сети собственной разработки решено было использовать при работе над задачей подготовки растрового изображения для ЧПУ резки.
Систему, состоящую из блока первичной обработки изображений, нейронной сети, алгоритмов сглаживания и формирования управляющих команд для ЧПУ, сделать удалось. Результат обрадовал и удивил. Не ожидал. Вообще, при работе с нейросетями результаты часто превосходят ожидание и зачастую удивляют, как, например, в этом случае.