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

Макроси та хуки

Rayforge надає дві потужні функції автоматизації для налаштування вашого робочого процесу: Макроси та Хуки. Обидва дозволяють вставляти власний G-code у ваші завдання, але вони служать різним цілям.

Налаштування хуків та макросів


Огляд

ФункціяПризначенняТригерВипадок використання
МакросиБагаторазові фрагменти G-codeРучне виконанняШвидкі команди, тестові патерни, власні процедури
ХукиАвтоматична вставка G-codeПодії життєвого циклу завданняПослідовності запуску, зміни шарів, очищення

Макроси

Макроси - це іменовані, багаторазові скрипти G-code, які ви можете виконувати вручну в будь-який час.

Для чого макроси?

Типові випадки використання макросів:

  • Homing машини - Швидко надіслати $H
  • Встановлення робочих зміщень - Зберігати та відкликати позиції G54/G55
  • Керування повітряним помічником - Перемикати повітряний помічник увімк/вимк
  • Тестування фокусу - Запустити швидкий тестовий патерн фокусу
  • Власні зміни інструментів - Для налаштувань з кількома лазерами
  • Аварійні процедури - Швидке вимкнення або очищення аварії
  • Зондування матеріалу - Автофокус або вимірювання висоти

Створення макросу

  1. Відкрийте налаштування машини:

    • Перейдіть до Налаштування Машина Макроси
  2. Додайте новий макрос:

    • Натисніть кнопку "+"
    • Введіть описову назву (наприклад, "Home машини", "Увімкнути повітряний помічник")
  3. Напишіть ваш G-code:

    • Кожен рядок - це окрема команда G-code
    • Коментарі починаються з ; або (
    • Можна використовувати змінні (див. Підстановку змінних нижче)
  4. Збережіть макрос

  5. Виконайте макрос:

    • Зі списку макросів натисніть на макрос
    • Або призначте клавіатурне скорочення (якщо підтримується)

Приклади макросів

Простий: Home машини

Назва: Home машини Код:

$H
; Очікує завершення homing

Використання: Швидко виконати homing машини перед початком роботи.


Середній: Встановити робоче зміщення

Назва: Встановити G54 на поточну позицію Код:

G10 L20 P1 X0 Y0
; Встановлює початок системи робочих координат G54 на поточну позицію

Використання: Позначити поточну позицію лазера як початок завдання.


Розширений: Сітка тестування фокусу

Назва: 9-точковий тест фокусу Код:

; 9-точкова сітка для пошуку оптимального фокусу
G21 ; Міліметри
G90 ; Абсолютне позиціонування
G0 X10 Y10
M3 S1000
G4 P0.1
M5
G0 X20 Y10
M3 S1000
G4 P0.1
M5
; ... (повторити для решти точок)

Використання: Швидко тестувати фокус у різних позиціях на столі.



Приклади макросів

Хуки - це автоматичні вставки G-code, що спрацьовують специфічними подіями під час виконання завдання.

Тригери хуків

Rayforge підтримує ці тригери хуків:

ТригерКоли виконуєтьсяТипові використання
Початок завданняДуже початок завданняHoming, робоче зміщення, повітряний помічник увімк, попередній нагрів
Кінець завданняДуже кінець завданняПовернення home, повітряний помічник вимк, звуковий сигнал, охолодження
Початок шаруПеред обробкою кожного шаруЗміна інструменту, регулювання потужності, коментарі
Кінець шаруПісля обробки кожного шаруПовідомлення про прогрес, пауза
Початок деталіПеред обробкою кожної деталіНумерація деталей, маркери вирівнювання
Кінець деталіПісля обробки кожної деталіОхолодження, пауза для огляду

Створення хуку

  1. Відкрийте налаштування машини:

    • Перейдіть до Налаштування Машина Хуки
  2. Виберіть тригер:

    • Виберіть подію, коли цей хук має виконуватися
  3. Напишіть ваш G-code:

    • Код хука вставляється в точці тригера
    • Використовуйте змінні для динамічних значень (див. нижче)
  4. Увімкніть/вимкніть:

    • Перемикайте хуки увімк/вимк без їх видалення

Приклади хуків

Початок завдання: Ініціалізація машини

Тригер: Початок завдання Код:

G21         ; Міліметри
G90 ; Абсолютне позиціонування
$H ; Home машини
G0 X0 Y0 ; Перемістити в початок
M3 S0 ; Лазер увімк але потужність 0 (деякі контролери потребують цього)
M8 ; Повітряний помічник УВІМКНЕНО

Призначення: Забезпечує відомий стан машини перед кожним завданням.


Кінець завдання: Повернення home та звуковий сигнал

Тригер: Кінець завдання Код:

M5          ; Лазер ВИМКНЕНО
M9 ; Повітряний помічник ВИМКНЕНО
G0 X0 Y0 ; Повернення в початок
M300 S800 P200 ; Звуковий сигнал (якщо підтримується)

Призначення: Безпечно завершує завдання та сигналізує про завершення.


Початок шару: Додати коментар

Тригер: Початок шару Код:

; Початок шару: {layer_name}
; Індекс шару: {layer_index}

Призначення: Робить G-code більш читабельним для налагодження.


Початок деталі: Нумерація частин

Тригер: Початок деталі Код:

; Деталь: {workpiece_name}
; Деталь {workpiece_index} з {total_workpieces}

Призначення: Відстеження прогресу в завданнях з кількома деталями.


Порядок виконання хуків

Для завдання з 2 шарами, кожен з 2 деталями:

[Хук початку завдання]
[Хук початку шару] (Шар 1)
[Хук початку деталі] (Деталь 1)
... G-code деталі 1 ...
[Хук кінця деталі] (Деталь 1)
[Хук початку деталі] (Деталь 2)
... G-code деталі 2 ...
[Хук кінця деталі] (Деталь 2)
[Хук кінця шару] (Шар 1)
[Хук початку шару] (Шар 2)
[Хук початку деталі] (Деталь 3)
... G-code деталі 3 ...
[Хук кінця деталі] (Деталь 3)
[Хук початку деталі] (Деталь 4)
... G-code деталі 4 ...
[Хук кінця деталі] (Деталь 4)
[Хук кінця шару] (Шар 2)
[Хук кінця завдання]

Підстановка змінних

Як макроси, так і хуки підтримують підстановку змінних для вставки динамічних значень.

Доступні змінні

Змінні використовують синтаксис {variable_name} і замінюються під час генерації G-code.

Змінні рівня завдання:

ЗміннаОписПриклад значення
{job_name}Назва поточного завдання/документа"test-job"
{date}Поточна дата"2025-10-03"
{time}Поточний час"14:30:25"

Змінні рівня шару:

ЗміннаОписПриклад значення
{layer_name}Назва поточного шару"Cut Layer"
{layer_index}Індекс (з нуля) поточного шару0, 1, 2...
{total_layers}Загальна кількість шарів у завданні3

Змінні рівня деталі:

ЗміннаОписПриклад значення
{workpiece_name}Назва деталі"Circle 1"
{workpiece_index}Індекс (з нуля) поточної деталі0, 1, 2...
{total_workpieces}Загальна кількість деталей5

Змінні машини:

ЗміннаОписПриклад значення
{machine_name}Назва профілю машини"My K40"
{max_speed}Максимальна швидкість різання (мм/хв)1000
{work_width}Ширина робочої області (мм)300
{work_height}Висота робочої області (мм)200

Приклад: Повідомлення про прогрес

Хук: Початок шару Код:

; ========================================
; Шар {layer_index} з {total_layers}: {layer_name}
; Завдання: {job_name}
; Час: {time}
; ========================================

Результат у G-code:

; ========================================
; Шар 0 з 3: Cut Layer
; Завдання: test-project
; Час: 14:30:25
; ========================================

Розширені випадки використання

Налаштування з кількома інструментами

Для машин з кількома лазерами або інструментами:

Хук: Початок деталі Код:

; Вибрати інструмент для деталі {workpiece_name}
T{tool_number} ; Команда зміни інструменту (якщо підтримується)
G4 P1 ; Очікувати зміни інструменту

Умовні паузи

Додати опціональні паузи для огляду:

Хук: Кінець шару Код:

; M0  ; Розкоментувати для паузи після кожного шару для огляду

Повітряний помічник для кожного шару

Контроль повітряного помічника на рівні шару:

Хук: Початок шару (для шарів різання) Код:

M8  ; Повітряний помічник УВІМКНЕНО

Хук: Початок шару (для шарів гравірування) Код:

M9  ; Повітряний помічник ВИМКНЕНО (запобігає розсіюванню пилу при гравіруванні)

:::примітка Хуки для конкретних шарів Rayforge наразі не підтримує налаштування хуків для кожного шару окремо. Для цього використовуйте умовний G-code або окремі профілі машин. :::


Міркування безпеки

:::небезпека Тестуйте перед виробництвом Завжди тестуйте макроси та хуки в режимі симуляції або з вимкненим лазером перед запуском на реальних завданнях. Неправильно налаштований G-code може:

  • Врізати машину в обмеження
  • Неочікувано увімкнути лазер
  • Пошкодити матеріали або обладнання :::

Контрольний список безпеки:

  • Макроси включають обмеження швидкості подачі (F параметр)
  • Макроси перевіряють межі позиції
  • Хуки початку завдання включають M5 або команду вимкнення лазера
  • Хуки кінця завдання вимикають лазер (M5) та повітряний помічник (M9)
  • Немає деструктивних команд без підтвердження
  • Протестовано в симуляції або з вимкненим лазером

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