Компактный станок с ЧПУ на Arduino UNO из приводов DVD — полное руководство
Компоненты и материалы
| Arduino UNO | × | 1 |
| Старые DVD/CD-приводы (шаговые двигатели) — 3 шт. | × | 3 |
| Драйверы шаговых двигателей (EasyDriver / Big Easy Driver) — 3 шт. | × | 3 |
| Блок питания 12В (от компьютера или отдельный) | × | 1 |
| Деревянная база, алюминиевые стойки, крепеж | × | 1 комплект |
| Паяльник, припой, перемычки | × | 1 набор |
Необходимые инструменты
- Отвёртка, кусачки, ножовка/лобзик для дерева и алюминия
- Мультиметр для проверки обмоток шаговиков
- Клей (эпоксидный или горячий) для фиксации осей
Программное обеспечение
- GRBL — прошивка ЧПУ для Arduino
- Inkscape — векторный редактор + плагин для генерации G-кода
- Universal G-Code Sender (UGS) — отправка G-кода на GRBL
О проекте

Проект демонстрирует постройку дешёвого мини-станка с ЧПУ на базе Arduino UNO и шаговых двигателей от старых DVD-приводов. Рабочая область мала, но достаточно для гравировки, рисования, резки тонких материалов.
Шаг 1. Подготовка деталей
Разбираем 3 DVD-привода. Нам нужны каретки с шаговыми двигателями и направляющими (осевые узлы X, Y, Z). Аккуратно вынимаем шаговики с каретками — они станут осями станка.


Шаг 2. Сборка механики
База — фанера/МДФ. Две вертикальные стойки — алюминиевый профиль или уголки. Ось X (горизонтальная верхняя) крепится к стойкам. Ось Y — на базе. Ось Z — на каретке Y (вертикальное движение инструмента).
Критично: все оси должны быть строго перпендикулярны друг другу. Используйте эquerре и проверяйте углы 90°.


Шаг 3. Пайка и проводка
Паяем провода к обмоткам шаговых двигателей (осторожно — тонкие вилки, паяльник ≤30Вт). Подключаем к драйверам EasyDriver по схеме: A+, A-, B+, B-. Питание драйверов — 12В от БП. Управляющие сигналы (STEP, DIR, ENABLE) — к Arduino.

Шаг 4. Прошивка GRBL
- Установите Arduino IDE.
- Скачайте GRBL (библиотеку) с GitHub.
- В IDE:
Скетч → Подключить библиотеку → Добавить .ZIP библиотеку— выберите скачанный архив. - Загрузите пример
grblUploadв Arduino. - Откройте Universal G-Code Sender, выберите порт, нажмите Open.
- Настройте параметры GRBL (команды
$):$100,$101,$102(steps/mm для X,Y,Z),$110,$111,$112(max rate),$120,$121,$122(acceleration). Если ось движется не в ту сторону — инвертируйте в UGS:Tools → Options → Axis.

Шаг 5. Генерация G-кода и работа
Рекомендую Inkscape + расширение Gcodetools (встроено). Импортируете SVG/DXF/JPG → конвертируете в G-код → отправляете через UGS.
Ранние тесты с DeskEngrave давали несовместимый G-код. Inkscape работает идеально.

Шаг 6. Дальнейшее развитие
Можно увеличить рабочую область (более длинные направляющие), добавить шпиндель/лазер, использовать более мощные драйверы (TB6600) и NEMA17. Проект отличная база для обучения принципам ЧПУ.
Код и ресурсы
- GRBL на GitHub
- Проект для Visual Studio (с исправленной библиотекой NewPing): GitHub
Схемы

Производственный процесс
- Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
- Многопозиционная система датчиков температуры для интеграции в умный дом
- DIY USB-геймпад на Arduino: собственный высокопроизводительный контроллер
- MotionSense: умная система обнаружения проникновения на Arduino и ESP8266
- Пожарная безопасность 3D-принтера: умная система обнаружения дыма
- Pixel Chaser: игра на один тап с NeoPixel Ring и Arduino Nano
- Веб-управляемый IoT-индикатор на Arduino, Yaler и IFTTT
- Магнитная левитация на отталкивании с Arduino: Простая схема и DIY-руководство
- Высокопроизводительный регистратор данных для метеозонда на Arduino
- CoroFence: термический детектор на GridEye + PIR с IoT