10. Пользовательские макросы
Переменные
Макропеременные
Полезные ссылки:
- ⬅️ Введение в макросы
- ➡️ Операторы
Переменные являются основополагающими элементами параметрического программирования и позволяют сохранять и обрабатывать числовые значения.
Типы переменных
| Диапазон | Тип | Описание |
|---|---|---|
| #1 — #33 | Локальные | Аргументы, переданные в макрос (A=#1, B=#2, C=#3...) |
| № 100 — № 199 | Общие | Общие для всех программ, сбрасываются при выключении |
| #500 — #999 | Постоянные | Сохраняются даже после выключения |
| #1000+ | Система | Положения осей, состояния станка, времена |
Общие системные переменные
| Переменная | Описание |
|---|---|
| #5001–#5006 | Конечное положение блока (X, Y, Z, A, B, C) |
| #5021–#5026 | Текущее положение станка |
| #5041-#5046 | Текущее положение заготовки |
| #3001 | Таймер (в миллисекундах) |
| #3002 | Таймер, часы |
| #4001–#4021 | Активные коды G-команд |
Использование переменных
; Assegnazione
#1 = 25.5 ; Assegna valore diretto
#2 = #1 * 2 ; Assegna risultato operazione
#3 = [#1 + #2] / 2 ; Espressione complessa
; Utilizzo in movimenti
G1 X#1 Y#2 Z#3 F500
; Utilizzo in parametri
G81 X0 Y0 Z[-#4] R2 F#5
; Variabili indirette
#[#10] = 100 ; #10 contiene numero variabile
#11 = #[#10] ; Legge variabile indicata da #10
Пустая переменная (#0)
Переменная #0 всегда пуста и может использоваться для:
- Проверки, был ли передан аргумент
- Пропускать необязательные параметры
IF [#1 EQ #0] THEN #1 = 10 ; Se #1 vuoto, usa default 10
Примечание: диапазоны значений переменных могут различаться в зависимости от контроллера. Всегда проверяйте руководство по эксплуатации вашего конкретного контроллера.
