Kdo říká, že makro programy jsou k ničemu? To proto, že to nevymyslíš!
Mnoho CNC techniků v dnešní době makroprogramům nerozumí. Věří, že s automatickým programovacím softwarem není potřeba se učit makroprogramy. Ve skutečnosti jsou funkce makro programů velmi výkonné. Například při psaní dávkových a opakujících se programů vyžaduje použití makroprogramů pouze úpravu několika datových bodů, aniž by bylo nutné rozsáhlé opakované programování. To může výrazně zjednodušit provoz a zlepšit efektivitu práce.
Makroprogramy mohou používat proměnné pro aritmetické operace, logické operace a smíšené operace funkcí a také poskytovat příkazy smyčky, příkazy větvení a příkazy volání podprogramů.
Obecně řečeno, makroprogramy jsou vhodné pro programování sérií dílů se stejnou grafikou, ale rozdílnou velikostí; Vhodné pro programování sériových dílů se stejnou procesní cestou, ale různými pozičními parametry; Vhodné pro programování křivek bez interpolačních instrukcí, jako jsou paraboly, elipsy, hyperboly atd.
1.
Reprezentace a použití proměnných
1, Variabilní zobrazení
#I (I=1,2,3,...) nebo # [
Příklad: # 5, # 109, # 501, # [# 1+# 2-12]
2, Použití proměnných
1. Za slovem adresy zadejte číslo proměnné nebo vzorec
Formát:# I
"I" zde představuje číslo proměnné
Příklad: F # 103, pokud # 103=15, je to F15
Z – # 110, za předpokladu # 110=250, je to Z-250
X [# {{0}# 18 * COS [# 1]]
2. Čísla proměnných lze nahradit proměnnými
Příklad: # [# 30], pokud # 30=3, je to # 3
3. Proměnné nemohou používat adresy O, N, I
Příklad: Podle následujících metod je to povoleno
O # 1;
I # 2 6.00 × 100.0;
N # 3 Z200.0;
4. Proměnná odpovídající číslu proměnné má pro každou adresu specifický číselný rozsah
Příklad: Když # 30=1100, pak M # 30 není povoleno
5. # 0 je prázdná proměnná a proměnné bez definovaných hodnot proměnných jsou také prázdné proměnné
6. Definice proměnné hodnoty:
Při definování programu lze vynechat desetinné čárky, například: # 123=149
2.
Typy proměnných

1. Lokální proměnné # 1~# 33
Proměnná, která se používá lokálně v makroprogramu a výsledek její operace nemůže být použit jinými programy.
Příklad: A Program makra B Program makra
#10=20 X # 10 nepředstavuje X20
Vymazat po výpadku napájení, zadat hodnoty proměnných při volání makro programů
2. Společné proměnné # 100~# 199, # 500~# 999
Společné proměnné v rámci každého uživatelského programu makra mají stejný výsledek operace jako jakékoli volání programu.
Příklad: V předchozím příkladu, když bylo # 10 změněno na # 100, makro program B
X # 100 představuje X20
#Vymazat po výpadku proudu 100~# 149
#500~# 531 Proměnná typu podržení (neztratí se po výpadku napájení)
3. Systémové proměnné
Proměnná s pevným účelem, jejíž hodnota závisí na stavu systému
Příklad: # Hodnota 2001 je hodnota kompenzace osy X pro kompenzaci nástroje 1
# Hodnota 5221 je hodnota posunutí počátku obrobku G54 osy X
Při zadávání je nutné zadat desetinnou čárku. Pokud je desetinná čárka vynechána, je jednotkou μM
tři
Aritmetická výuka
Napravo od výrazu mohou být konstanty, proměnné, funkce a vzorce
Ve vzorci mohou být # j a # k také konstanty
Na pravé straně rovnice je číslo proměnné a výraz
1, Definice
#I=# j
2, Aritmetické operace
#I=# j+# k
#I=# j - # k
#I=# j * # k
#I=# j/# k
3, Logická operace
#JÁ=# JOK # k
#I=# JXOK # k
#JÁ=# JAND # k
4, Funkce

#Já=HŘÍCH [# j] sinus
#I=COS [# j] kosinus
#I=TAN [# j] tečna
#I=ATAN [# j] arkustangens
#I=SQRT [# j] odmocnina
#I=Absolutní hodnota ABS [# j]
#I=ZAKROKOVAT [# j] Zaokrouhlit na nejbližší celé číslo
#I. kolo=OPRAVIT [# j]
#Zaokrouhlit I=FUP [# j]
#I=BIN [# j] BCD → BIN (binární)
#I=BCN [# j] BIN → BCD
1) Úhel ve stupních
Příklad: 90 stupňů a 30 minut jsou ekvivalentní 90,5 stupňů
2) Dvě délky stran za funkcí ATAN by měly být odděleny "/"
Příklad: Když # {{0}}ATAN [1]/[-1], # 1 je 35,0
3) ROUND se používá pro adresy ve výpisech, zaokrouhlené na nejmenší nastavenou jednotku každé adresy
Příklad: Nastavte # 1=1.2345, # 2=2.3456 a nastavte jednotku 1 μ M
G91 X - # 1; X-1.235
X - # 2 F300; X-2.346
X [# 1+# 2]; X3.580
Nevráceno na původní místo, mělo by být změněno
X [KOLO [# 1]+KOLO [# 2]];
4) Pokud je absolutní hodnota po zaokrouhlení větší než původní hodnota, zaokrouhlí se nahoru; jinak se zaokrouhlí dolů
Příklad: Když # 1=1.2, # 2=-1.2
Pokud # {{0}}FUP [# 1], pak # 3=2.0
Pokud # {{0}}OPRAVIT [# 1], pak # 3=1.0
Pokud # {{0}}FUP [# 2], pak # 3=-2.0
Pokud # {{0}}OPRAVIT [# 2], pak # 3=-1.0
5) Při pokynu funkce lze napsat pouze první dvě písmena
Příklad: ROUND → RO
OPRAVIT → FI
6) Priorita
Funkce → Násobení a dělení (*, 1, AND) → Sčítání a odčítání (+, -, OR, XOR)
Příklad: # 1=# 2+# 3 * SIN [# 4];
7) Závorky jsou hranaté závorky, až 5krát, používané pro komentování výroků
Příklad: # 1=HŘÍCH [[[# {{1}# 3] * # {{3}# 5] * # 6]; (Trojnásobný)
čtyři
Pokyny pro přenos a smyčku
1. Bezpodmínečný převod
Formát: GOTO n;
Bezpodmínečně přenést do programového segmentu n
n: Číslo segmentu programu (1-99999)
N lze také nahradit proměnnými nebo výrazy
GOTO10;
GOTO # 10;
2. Podmíněný převod
POKUD [
Pokud
Pokud nejste spokojeni, spusťte další segment programu.
POKUD [
Pokud
IF [# 1EQ # 2] THE # 3=0;
Podmíněný vzorec:

#J a #k lze také nahradit výrazem
Příklad: IF [# 1 GT 10] GOTO 100;
N100 G00 G91 X10;
Příklad: Najděte součet 1 až 10
O9500;
#1=0
#2=1
N1 IF [# 2 GT10] GOTO 2
#1=# 1+# 2;
#2=# 2+1;
PŘEJÍT 1
N2 M30
3. Cyklus
Formát: WHILE [
KONCOVKA
Když jsou splněny podmínky, proveďte z DOm do ENDm, poté z programového segmentu DOm
Pokud nejste spokojeni, proveďte segment programu po ENDm
Pokud je vynechán příkaz WHILE a je přítomen pouze DOm... ENDm, vytvoří se mrtvá smyčka mezi DOm a ENDm
3. Hnízdění
Když je přítomen EQ NE, hodnoty null a "0" jsou různé
Za ostatních podmínek jsou hodnoty null a „0“ stejné
Příklad: Najděte součet 1 až 10
O0001;
#1=0;
#2=1;
ZATÍMCO [# 2LE10] DO1;
#1=# 1+# 2;
#2=# 2+# 1;
KONEC1;
M30;

