Daudzi CNC tehniķi nesaprot makro programmas. Viņi domā, ka ar automātiskās programmēšanas programmatūru nav nepieciešams apgūt makro programmas. Faktiski makro programmu funkcijas ir ļoti spēcīgas. Piemēram, lai rakstītu dažas pakešprogrammas un atkārtotas programmas, izmantojot makro programmas, ir jāmaina tikai daži dati. Nav nepieciešams liels skaits atkārtotas programmēšanas, kas var ievērojami vienkāršot darbības un ievērojami uzlabot darba efektivitāti.
Makroprogrammas var izmantot mainīgos, lai veiktu jauktas aritmētisko operāciju, loģisko operāciju un funkciju operācijas, kā arī nodrošinātu cilpas paziņojumus, filiāles paziņojumus un apakšprogrammas izsaukuma paziņojumus.
Vispārīgi runājot: makro programma ir piemērota detaļu sērijas programmēšanai ar vienādu grafiku, bet ar dažādiem izmēriem; tas ir piemērots detaļu virknes programmēšanai ar vienādu procesa ceļu, bet ar dažādiem pozīcijas parametriem; tas ir piemērots parabolu, elipsi, hiperbolu un citu līkņu programmēšanai bez interpolācijas instrukcijām.
01
Mainīgo attēlošana un izmantošana
1. Mainīgo attēlojums
#I(I=1,2,3,…) vai #[
Piemērs: #5, #109, #501, #[#1 plus #2–12]
Otrkārt, mainīgo lielumu izmantošana
1. Aiz adreses vārda norādiet mainīgā numuru vai formulu
Formāts:
Šeit "I" apzīmē mainīgo skaitli
Piemērs: F#103, ja #103=15, tad tas ir F15
Z-#110, ja #110=250, tas ir Z-250
X[#24 plus #18*COS[#1]]
2. Mainīgo skaitli var aizstāt ar mainīgo
Piemērs: #[#30], ja #30=3, tas būs #3
3. Mainīgie nevar izmantot adreses O, N, I
Piemērs: ir atļautas šādas metodes
O#1;
I#2 6.00×100.0;
N#3 Z200.0;
4. Mainīgajam, kas atbilst mainīgā numuram, katrai adresei ir noteikts vērtību diapazons
Piemērs: ja #30=1100, M#30 nav atļauts
5. #0 ir tukšs mainīgais, un mainīgais bez noteiktas mainīgā vērtības arī ir tukšs mainīgais.
6. Mainīgo vērtību definīcija:
Definējot programmu, decimālzīmi var izlaist, piemēram: #123=149
02
mainīgā veids
Pievienojiet attēlus WeChat: mvm9987 nosūtīs CNC apmācību
1. Vietējie mainīgie #1~#33
Mainīgais, ko lokāli izmanto makro programmā, tā darbības rezultātu nevar izmantot citas programmas.
Piemērs: Makro programma B makro programma
...
#10=20 X#10 nenozīmē X20
...
Tas tiks notīrīts pēc strāvas izslēgšanas, un mainīgā vērtība tiks aizpildīta, kad tiks izsaukta makro programma
2. Publiskie mainīgie #100~#199, #500~#999
Kopējam mainīgajam katrā lietotāja makro programmā ir vienāds darbības rezultāts jebkurā programmas izsaukumā.
Piemērs: Ja #10 iepriekš minētajā piemērā tiek mainīts uz #100,
X#100 nozīmē X20
#100~#149 Iztukšots pēc strāvas izslēgšanas
#500~#531 Pastāvīgi mainīgie (nav zaudēti pēc strāvas izslēgšanas)
3. Sistēmas mainīgie
Fiksēta mērķa mainīgais, kura vērtība ir atkarīga no sistēmas stāvokļa
Piemērs: #2001 ir X ass kompensācijas vērtība instrumenta kompensācijai Nr. 1
#5221 vērtība ir X ass G54 sagataves izcelsmes nobīdes vērtība
Ievadot ir jāievada decimālzīme, un vienība ir μm, ja komata zīme ir izlaista.
03
Darbības instrukcija
Izteiksmes labajā pusē var būt konstantes, mainīgie, funkcijas, izteiksmes
Formulā #j un #k var būt arī konstantes
Izteiksmes labā puse ir mainīgais skaitlis, izteiksme
1. Definīcija
#I=#j
2. Aritmētiskās darbības
#I=#j plus #k
#I=#j-#k
#I=#j*#k
#I=#j/#k
3. Loģiskās darbības
#I=#JOK#k
#I=#JXOK#k
#I=#JAND#k
4. Funkcija
bilde
#I=SIN[#j] sinuss
#I=COS[#j] kosinuss
#I=TAN[#j] tangenss
#I=ATAN[#j] loka tangenss
#I=SQRT[#j] kvadrātsakne
#I=ABS[#j] absolūtā vērtība
#I=ROUND[#j] Noapaļošana
#I=LABOT[#j] noapaļot uz augšu
#I=FUP[#j] Noapaļot uz leju
#I=BIN[#j] BCD→BIN (binārs)
#I=BCN[#j] BIN→BCD
1) Leņķi ir grādos
Piemērs: 90 grādi un 30 minūtes ir 90,5 grādi
2) Abi sānu garumi pēc ATAN funkcijas ir jāatdala ar "/"
Piemērs: #{{0}}ATAN[1]/[-1], #1 ir 35,0
3) ROUND tiek lietots adresei izrakstā, noapaļojot uz augšu atbilstoši katras adreses minimālajai iestatījuma vienībai
Piemērs: iestatiet #1=1.2345, #2=2.3456, iestatījuma vienība ir 1 μm
G91 X-#1; X-1.235
X-#2 F300; X-2.346
X[#1 plus #2]; X3.580
netiek atgriezta un jāaizstāj ar
X[ROUND[#1] plus ROUND[#2]];
4) Ja absolūtā vērtība pēc noapaļošanas ir lielāka par sākotnējo vērtību, tā tiks noapaļota uz augšu, pretējā gadījumā tā tiks noapaļota uz leju
Piemērs: kad #1=1.2, #2=-1.2
Ja #{{0}}FUP[#1], tad #3=2.0
Ja #{{0}}LABOTS[#1], tad #3=1.0
Ja #{{0}}FUP[#2], tad #3=-2.0
Ja #{{0}}LABOTS[#2], tad #3=-1.0
5) Komandējot funkciju, var rakstīt tikai pirmos divus burtus
Piemērs: ROUND→RO
FIX→FI
6) Prioritāte
Funkcija → reizināšana un dalīšana (*, 1, UN) → saskaitīšana un atņemšana ( plus , -, VAI, XOR)
Piemērs: #1=#2 plus #3*SIN[#4];
7) Iekavas ir kvadrātiekavas, līdz 5 reizēm, un iekavas tiek izmantotas komentāru paziņojumiem
Piemērs: #1=SIN[[[#2 plus #3]*#4 plus #5]*#6]; (3 svari)
04
Norādījumi par filiālēm un cilpām
1. Beznosacījumu nodošana
Formāts: GOTO n;
Beznosacījumu atzarojums uz bloku n
n: bloka numurs (1-99999)
n var aizstāt arī ar mainīgajiem vai izteiksmēm
goto10;
GOTO #10;
2. Nosacīta nodošana
JA [
Ja
Ja neesat apmierināts, izpildiet nākamo bloku.
JA [
Ja
IF[#1EQ #2] TAD #3=0;
Nosacītā izteiksme:
bilde
#j un #k var aizstāt arī ar
Piemērs: IF[#1 GT 10] GOTO 100;
…
N100 G00 G91 X10;
Piemērs: atrodiet summu no 1 līdz 10
O9500;
#1=0
#2=1
N1 JA [#2 GT10] GOTO 2
#1=#1 plus #2;
#2=#2 plus 1;
DOTIES 1
N2 M30
3. Cikls
Formāts: WHILE[
…
…
…
ENDm
1. Kad nosacījumi ir izpildīti, izpildiet DOm līdz ENDm, pēc tam no DOm programmas segmenta
Ja tas nav apmierināts, izpildiet programmas segmentu pēc ENDm
2. Ja izlaidīsit WHILE priekšrakstu un jums ir tikai DOm...ENDm, tiks izveidota bezgalīga cilpa no DOm līdz ENDm.
3. ligzdošana
4. EQ NE, tukšs un “0” atšķiras
Citur null ir tāds pats kā "0"
Piemērs: atrodiet summu no 1 līdz 10
O0001;
#1=0;
#2=1;
WHILE [#2LE10] DO1;
#1=#1 plus #2;
#2=#2 plus #1;
END1;
M30;





