Перейти до основного вмісту

Сумісність прошивки

Ця сторінка документує сумісність прошивки для лазерних контролерів, що використовуються з Rayforge.

Огляд

Rayforge розроблений переважно для контролерів на базі GRBL, але має експериментальну підтримку інших типів прошивок.

Матриця сумісності

ПрошивкаВерсіяСтатусДрайверПримітки
GRBL1.1+Повністю підтримуєтьсяGRBL SerialРекомендується
grblHAL2023+СуміснийGRBL SerialСучасний форк GRBL
GRBL0.9ОбмеженийGRBL SerialСтаріший, можуть бути проблеми
SmoothiewareВсіЕкспериментальнийНемає (використовуйте драйвер GRBL)Не тестувалося
Marlin2.0+ЕкспериментальнийНемає (використовуйте драйвер GRBL)Потрібен режим лазера
Інші-Не підтримується-Запросіть підтримку

Прошивка GRBL

Статус:  Повністю підтримується Версії: 1.1+ Драйвер: GRBL Serial

GRBL 1.1 (Рекомендовано)

Що таке GRBL 1.1?

GRBL 1.1 - це найпоширеніша прошивка для хобі CNC та лазерних машин. Випущена у 2017 році, вона стабільна, добре документована та широко підтримується.

Функції, що підтримуються Rayforge:

  • Послідовний зв'язок (USB)
  • Звітність статусу в реальному часі
  • Режим лазера (M4 постійна потужність)
  • Читання/запис налаштувань ($$, $X=value)
  • Цикли homing ($H)
  • Робочі системи координат (G54)
  • Команди переміщення ($J=)
  • Перевизначення швидкості подачі
  • Програмні обмеження
  • Апаратні обмеження (ендстопи)

Відомі обмеження:

  • Діапазон потужності: 0-1000 (параметр S)
  • Немає мережевого підключення (тільки USB)
  • Обмежена бортова пам'ять (малий буфер G-code)

Перевірка версії GRBL

Запит версії:

Підключіться до вашого контролера та надішліть:

$I

Приклади відповіді:

[VER:1.1h.20190825:]
[OPT:V,15,128]
  • 1.1h = версія GRBL 1.1h
  • Дата вказує збірку

GRBL 0.9 (Старіший)

Статус: Обмежена підтримка

GRBL 0.9 - це старіша версія з деякими проблемами сумісності:

Відмінності:

  • Інший формат звіту про статус
  • Немає режиму лазера (M4) - використовує тільки M3
  • Менше налаштувань
  • Інший синтаксис переміщення

Якщо у вас GRBL 0.9:

  1. Оновіть до GRBL 1.1 якщо можливо (рекомендується)
  2. Використовуйте M3 замість M4 (менш передбачувана потужність)
  3. Ретельно тестуйте - деякі функції можуть не працювати

Інструкції з оновлення: Див. GRBL Wiki


grblHAL

Статус: Сумісний Версії: 2023+ Драйвер: GRBL Serial

Що таке grblHAL?

grblHAL - це сучасний форк GRBL з розширеними функціями:

  • Підтримка різного обладнання контролерів (STM32, ESP32 тощо.)
  • Ethernet/WiFi мережа
  • Підтримка SD-карт
  • Більше I/O пінів
  • Розширена підтримка лазера

Сумісність з Rayforge:

  • Повністю сумісний - grblHAL підтримує протокол GRBL 1.1
  • Всі функції GRBL працюють
  • Додаткові функції (мережа, SD) ще не підтримуються Rayforge
  • Звітність статусу ідентична GRBL

Використання grblHAL:

  1. Виберіть драйвер "GRBL Serial" в Rayforge
  2. Підключіться через USB послідовний порт (як GRBL)
  3. Всі функції працюють як документовано для GRBL

Майбутнє: Rayforge може додати підтримку специфічних функцій grblHAL (мережа тощо.)


Smoothieware

Версії: Всі Драйвер: GRBL Serial (режим сумісності)

Примітки до сумісності

Smoothieware використовує інший синтаксис G-code:

Ключові відмінності:

ФункціяGRBLSmoothieware
Лазер увімкM4 S<значення>M3 S<значення>
Діапазон потужності0-10000.0-1.0 (float)
Статус<...> форматІнший формат

Використання Smoothieware з Rayforge:

  1. Виберіть діалект Smoothieware в налаштуваннях машини > G-code > Діалект
  2. Тестуйте з низькою потужністю спочатку
  3. Перевірте діапазон потужності відповідає вашій конфігурації
  4. Немає статусу в реальному часі - обмежений зворотний зв'язок

Обмеження:

  • Звітність статусу не повністю сумісна
  • Масштабування потужності може відрізнятися
  • Налаштування ($$ команди) не підтримуються
  • Не тестувалося на реальному обладнанні

Рекомендація: Якщо можливо, використовуйте сумісну з GRBL прошивку натомість.


Marlin

Версії: 2.0+ з підтримкою лазера Драйвер: GRBL Serial

Marlin для лазера

Marlin 2.0+ може керувати лазерами при належному налаштуванні.

Вимоги:

  1. Прошивка Marlin 2.0 або пізніша
  2. Функції лазера увімкнено:
    #define LASER_FEATURE
    #define LASER_POWER_INLINE
  3. Правильний діапазон потужності налаштовано:
    #define SPEED_POWER_MAX 1000

Сумісність:

  • Режим лазера M4 підтримується
  • Базовий G-code (G0, G1, G2, G3)
  • Звітність статусу відрізняється
  • Команди налаштувань інші
  • Повітряний помічник (M8/M9) може не працювати

Використання Marlin з Rayforge:

  1. Виберіть діалект Marlin в налаштуваннях машини > G-code > Діалект
  2. Налаштуйте Marlin для використання лазера
  3. Перевірте діапазон потужності відповідає (0-1000 або 0-255)
  4. Обмежене тестування - використовуйте з обережністю

Краща альтернатива: Використовуйте прошивку GRBL на лазерних машинах.


Посібник з оновлення прошивки

Оновлення до GRBL 1.1

Чому оновлювати?

  • Режим лазера (M4) для постійної потужності
  • Краща звітність статусу
  • Більш надійний
  • Краща підтримка Rayforge

Як оновити:

  1. Ідентифікуйте вашу плату контролера:

    • Arduino Nano/Uno (ATmega328P)
    • Arduino Mega (ATmega2560)
    • Власна плата
  2. Завантажте GRBL 1.1:

    • GRBL Releases
    • Отримайте останню версію 1.1 (1.1h рекомендується)
  3. Прошийте прошивку:

    Використовуючи Arduino IDE:

    1. Встановіть Arduino IDE
    2. Відкрийте скетч GRBL (grbl.ino)
    3. Виберіть правильну плату та порт
    4. Завантажте

    Використовуючи avrdude:

    avrdude -c arduino -p m328p -P /dev/ttyUSB0 \
    -U flash:w:grbl.hex:i
  4. Налаштуйте GRBL:

    • Підключіться через послідовний порт
    • Надішліть $$ щоб переглянути налаштування
    • Налаштуйте для вашої машини

Резервне копіювання перед оновленням

Збережіть ваші налаштування:

  1. Підключіться до контролера
  2. Надішліть команду $$
  3. Скопіюйте весь вивід налаштувань
  4. Збережіть у файл

Після оновлення:

  • Відновіть налаштування по одному: $0=10, $1=25 тощо.
  • Або використовуйте значення за замовчуванням та переналаштуйте

Апаратне забезпечення контролера

Поширені контролери

ПлатаТипова прошивкаПідтримка Rayforge
Arduino CNC ShieldGRBL 1.1Відмінна
MKS DLC32grblHALВідмінна
Cohesion3DSmoothiewareОбмежена
Плати SKRMarlin/grblHALЗмінюється
RuidaВласнаНе підтримується
TrocenВласнаНе підтримується
TopWisdomВласнаНе підтримується

Рекомендовані контролери

Для найкращої сумісності з Rayforge:

  1. Arduino Nano + CNC Shield (GRBL 1.1)

    • Дешево (~$10-20)
    • Легко прошивати
    • Добре документовано
  2. MKS DLC32 (grblHAL)

    • Сучасний (на базі ESP32)
    • WiFi здатний
    • Активна розробка
  3. Власні плати GRBL

    • Багато доступно на маркетплейсах
    • Перевірте підтримку GRBL 1.1+

Конфігурація прошивки

Налаштування GRBL для лазера

Основні налаштування:

$30=1000    ; Макс. потужність шпинделя/лазера (1000 = 100%)
$31=0 ; Мін. потужність шпинделя/лазера
$32=1 ; Режим лазера увімкнено (1 = увімк)

Налаштування машини:

$100=80     ; Кроків/мм X (відкалібруйте для вашої машини)
$101=80 ; Кроків/мм Y
$110=3000 ; Макс. швидкість X (мм/хв)
$111=3000 ; Макс. швидкість Y
$120=100 ; Прискорення X (мм/сек)
$121=100 ; Прискорення Y
$130=300 ; Макс. хід X (мм)
$131=200 ; Макс. хід Y (мм)

Налаштування безпеки:

$20=1       ; Програмні обмеження увімкнено
$21=1 ; Апаратні обмеження увімкнено (якщо є ендстопи)
$22=1 ; Homing увімкнено

Тестування прошивки

Базова послідовність тестування:

  1. Тест підключення:

    Надіслати: ?
    Очікувати: &lt;Idle|...&gt;
  2. Перевірка версії:

    Надіслати: $I
    Очікувати: [VER:1.1...]
  3. Перевірка налаштувань:

    Надіслати: $$
    Очікувати: $0=..., $1=..., etc.
  4. Тест руху:

    Надіслати: G91 G0 X10
    Очікувати: Машина переміщується на 10мм по X
  5. Тест лазера (дуже низька потужність):

    Надіслати: M4 S10
    Очікувати: Лазер вмикається (тьмяно)
    Надіслати: M5
    Очікувати: Лазер вимикається

Виправлення проблем прошивки

Прошивка не відповідає

Симптоми:

  • Немає відповіді на команди
  • Збій підключення
  • Статус не повідомляється

Діагностика:

  1. Перевірте швидкість передачі:

    • GRBL 1.1 за замовчуванням: 115200
    • GRBL 0.9: 9600
    • Спробуйте обидва
  2. Перевірте USB-кабель:

    • Кабель для даних, не тільки для зарядки
    • Замініть на відомий робочий кабель
  3. Перевірте порт:

    • Linux: /dev/ttyUSB0 або /dev/ttyACM0
    • Windows: COM3, COM4 тощо.
    • Правильний порт вибрано в Rayforge
  4. Протестуйте терміналом:

    • Використовуйте screen, minicom або PuTTY
    • Надішліть ? і перевірте, чи отримаєте відповідь

Збої прошивки

Симптоми:

  • Контролер зависає під час завдання
  • Випадкові відключення
  • Нестабільна поведінка

Можливі причини:

  1. Переповнення буфера - Файл G-code занадто складний
  2. Електричні перешкоди - Погане заземлення або EMI
  3. Баг прошивки - Оновіть до останньої версії
  4. Апаратна проблема - Несправний контролер

Рішення:

  • Оновіть прошивку до останньої стабільної версії
  • Спростіть G-code (зменшіть точність, менше сегментів)
  • Додайте феритові намистини на USB-кабель
  • Покращте заземлення та маршрутизацію кабелів

Неправильна прошивка

Симптоми:

  • Команди відхиляються
  • Несподівана поведінка
  • Повідомлення про помилки

Рішення:

  1. Запит версії прошивки: $I
  2. Порівняйте з очікуваннями Rayforge
  3. Оновіть або виберіть правильний діалект

Майбутня підтримка прошивок

Запитані функції:

Користувачі просили підтримку:

  • Контролерів Ruida - Китайські лазерні контролери
  • Trocen/AWC - Комерційні лазерні контролери
  • ESP32 WiFi - Мережеве підключення для grblHAL
  • Laser API - Прямий API машини (без G-code)

Статус: Наразі не підтримується. Запити на функції вітаються на GitHub.

Внесок

Щоб додати підтримку прошивки:

  1. Реалізуйте драйвер у rayforge/machine/driver/
  2. Визначте діалект G-code у rayforge/machine/models/dialect.py
  3. Ретельно протестуйте на реальному обладнанні
  4. Надішліть pull request з документацією

Пов'язані сторінки