U današnje vrijeme mnogi CNC tehničari ne razumiju makro programe. Oni misle da sa softverom za automatsko programiranje ne moraju učiti makro programe. Zapravo, funkcije makro programa su vrlo moćne. Na primjer, da biste napisali neke skupne programe i programe koji se ponavljaju, trebate promijeniti samo nekoliko podataka kada koristite makro programe. Nema potrebe za velikim brojem ponovljenih programiranja, što može uvelike pojednostaviti rad i značajno poboljšati učinkovitost rada.
Makro programi mogu koristiti varijable za izvođenje mješovitih operacija aritmetičkih operacija, logičkih operacija i funkcija, a također daju izjave petlje, izjave grananja i izjave poziva potprograma.
Općenito govoreći: makro program prikladan je za programiranje niza dijelova s istom grafikom, ali različitih veličina; prikladan je za programiranje niza dijelova s istim procesnim putem, ali s različitim parametrima položaja; pogodan je za programiranje parabola, elipsa, hiperbola i drugih krivulja bez uputa za interpolaciju.
01
Predstavljanje i korištenje varijabli
1. Varijabilni prikaz
#I(I=1,2,3,…) ili #[
Primjer: #5, #109, #501, #[#1 plus #2-12]
Drugo, korištenje varijabli
1. Nakon adresne riječi navedite broj varijable ili formulu
Format:
Ovdje "I" označava varijabilni broj
Primjer: F#103, ako #103=15, onda je F15
Z-#110, ako #110=250, to je Z-250
X[#24 plus #18*COS[#1]]
2. Promjenjivi broj može se zamijeniti varijablom
Primjer: #[#30], ako #30=3, bit će #3
3. Varijable ne mogu koristiti adrese O, N, I
Primjer: dopuštene su sljedeće metode
O#1;
I#2 6.00×100.0;
N#3 Z200.0;
4. Varijabla koja odgovara broju varijable ima određeni raspon vrijednosti za svaku adresu
Primjer: kada #30=1100, M#30 nije dopušten
5. #0 je prazna varijabla, a varijabla bez definirane vrijednosti varijable također je prazna varijabla
6. Definicija varijable:
Decimalna točka se može izostaviti kada je program definiran, na primjer: #123=149
02
vrsta varijable
Dodajte slike u WeChat: mvm9987 će poslati CNC vodič
1. Lokalne varijable #1~#33
Varijabla koja se lokalno koristi u makro programu, njen rezultat operacije ne mogu koristiti drugi programi.
Primjer: Makro program B Makro program
...
#10=20 X#10 ne znači X20
...
Bit će izbrisano nakon isključivanja, a vrijednost varijable će biti popunjena kada se pozove makro program
2. Javne varijable #100~#199, #500~#999
Zajednička varijabla u svakom korisničkom makro programu ima isti rezultat operacije u bilo kojem pozivu programa.
Primjer: Kada se #10 u gornjem primjeru promijeni u #100,
X#100 znači X20
#100~#149 Prazan nakon isključivanja
#500~#531 Trajne varijable (ne gube se nakon isključivanja)
3. Varijable sustava
Varijabla fiksne namjene čija vrijednost ovisi o stanju sustava
Primjer: #2001 je vrijednost kompenzacije X-osi kompenzacije alata br. 1
#5221 vrijednost je vrijednost ofseta ishodišta izratka X osi G54
Prilikom unosa mora se unijeti decimalna točka, a jedinica je μm kada se decimalna točka izostavi
03
Uputa za rad
Desna strana izraza može biti konstanta, varijabla, funkcija, izraz
U formuli #j i #k također mogu biti konstante
Desna strana izraza je varijabla broja, izraz
4. Funkcija
slika
1) Kutovi su u stupnjevima
Primjer: 90 stupnjeva i 30 minuta je 90,5 stupnjeva
2) Dvije duljine stranica nakon funkcije ATAN trebaju biti odvojene znakom "/"
Primjer: #{{0}}ATAN[1]/[-1], #1 je 35,0
3) OKRUGLO se koristi za adresu u izvodu, zaokruženo prema minimalnoj jedinici postavljanja svake adrese
Primjer: Set #1=1.2345, #2=2.3456, jedinica za podešavanje je 1μm
G91 X-#1; X-1.235
X-#2 F300; X-2.346
X[#1 plus #2]; X3.580
se ne vraća i treba ga zamijeniti
X[ROUND[#1] plus ROUND[#2]];
4) Ako je apsolutna vrijednost nakon zaokruživanja veća od izvorne vrijednosti, zaokružit će se naviše, u suprotnom će se zaokružiti naniže
Primjer: Kada #1=1.2, #2=-1.2
Ako #{{0}}FUP[#1], tada #3=2.0
Ako #{{0}}FIX[#1], tada #3=1.0
Ako #{{0}}FUP[#2], tada #3=-2.0
Ako #{{0}}FIX[#2], tada #3=-1.0
5) Kada se naređuje funkcija, mogu se napisati samo prva dva slova
Primjer: ROUND→RO
POPRAVAK→FI
6) Prioritet
Funkcija → množenje i dijeljenje (*, 1, I) → zbrajanje i oduzimanje ( plus , -, OR, XOR)
Primjer: #1=#2 plus #3*SIN[#4];
7) Zagrade su uglate zagrade, do 5 puta, a zagrade se koriste za izjave komentara
Primjer: #1=SIN[[[#2 plus #3]*#4 plus #5]*#6]; (3 težine)
04
Upute za grananje i petlju
1. Bezuvjetni prijenos
Format: GOTO n;
Bezuvjetno grananje u blok n
n: broj bloka (1-99999)
n se također može zamijeniti varijablama ili izrazima
goto10;
IDITE NA #10;
2. Uvjetni prijenos
AKO [
Ako je
Ako niste zadovoljni, izvršite sljedeći blok.
AKO [
Ako je
IF[#1EQ #2] THEN #3=0;
Uvjetni izraz:
slika
#j i #k također se mogu zamijeniti sa
Primjer: IF[#1 GT 10] GOTO 100;
…
N100 G00 G91 X10;
Primjer: Pronađite zbroj od 1 do 10
O9500;
#1=0
#2=1
N1 AKO [#2 GT10] IDITE NA 2
#1=#1 plus #2;
#2=#2 plus 1;
IDITE NA 1
N2 M30
3. Ciklus
Format: WHILE[
…
…
…
KRAJ m
1. Kada su uvjeti ispunjeni, izvršite DOm do ENDm, zatim iz programskog segmenta DOm
Ako nije zadovoljen, izvrši segment programa nakon ENDm
2. Ako izostavite naredbu WHILE i imate samo DOm...ENDm, formirat će se beskonačna petlja od DOm do ENDm
3. gniježđenje
4. EQ NE, prazno i "0" su različiti
Drugdje je null isto što i "0"
Primjer: Pronađite zbroj od 1 do 10
O0001;
#1=0;
#2=1;
WHILE [#2LE10] DO1;
#1=#1 plus #2;
#2=#2 plus #1;
KRAJ1;
M30;




