Sekce Podporované kódy a možnosti parseru popisuje veškerou funkcionalitu překladače G-kódu v NCPlayeru,
včetně podporovaných formátů příkazů, modálních skupin, makro programování, aritmetiky, podmínek, smyček a pokročilých funkcí.
Parser je navržen pro práci s programy ve stylu FANUC
(zejména 0i-MB), ale je kompatibilní i s jinými řídicími systémy po správné konfiguraci.
1. Podporované formáty G/M kódů
G-kódy:
Standardní modální skupiny:
G0 — rychlé polohování.
G1 — lineární interpolace.
G2 / G3 — kruhová interpolace CW/CCW s podporou:
Parametru R (poloměr oblouku).
Parametrů I, J, K (střed oblouku v ABS nebo INC režimu).
Rovin G17, G18, G19.
G17 / G18 / G19 — volba pracovní roviny.
G20 / G21 — volba jednotek (palce/mm).
G40 / G41 / G42 — kompenzace poloměru nástroje.
G43 / G44 — kompenzace délky nástroje.
G49 — zrušení kompenzace délky nástroje.
G54 – G59 — souřadnicové systémy obrobku (včetně rozšířených G54.1 Px).
G90 / G91 — absolutní / přírůstkový režim.
G98 / G99 — návrat v cyklech vrtání (počáteční bod / R-rovina).
Vrtací cykly:G73, G74, G76,
G80, G81, G82, G83 s podporou
parametrů X, Y, Z, R, Q, F.
Speciální kódy:G65 (jednoduché volání uživatelského makra s argumenty).
M-kódy:
Ovládání vřetena: M3, M4, M5.
Ovládání chladiva: M7, M8, M9.
Zastavení programu: M0, M1, M2, M30.
Obsluha podprogramů: M98 (volání), M99 (návrat).
2. Podpora makro programování
Lokální proměnné: #1 – #33 (vynulování při M99, pokud je parametr aktivní).
Společné proměnné: #100 – #199.
Globální proměnné: #500 – #531.
Systémové proměnné: dle standardu FANUC (např. #5001 pro aktuální X pozici).
Matematické operace:
Sčítání, odčítání, násobení, dělení, mocnění.
Priorita závorek a vnořené výpočty.
Funkce FANUC:
SIN, COS, TAN, ASIN, ACOS, ATAN.
ABS, ROUND, FIX, FUP, MOD, SQRT.
Podpora vnořených funkcí, např. SIN[FIX[#100+0.4]].
Dosazování adres v příkazech: X[#500], F[#101+10] apod.
3. Logické konstrukce
IF [podmínka] GOTO Nxxx — skok na dané číslo řádku.
IF [podmínka] THEN ... — provede příkaz, pokud je podmínka splněna.
Logické operátory: AND, OR, XOR (vnořené podmínky až do 3 úrovní).
Porovnávání: EQ (rovno), NE (nerovno), GT (větší než), LT (menší než), GE (≥), LE (≤).
WHILE [podmínka] DOx ... ENDx — podmíněné smyčky.
Počítadla smyček a ochrana proti nekonečným cyklům.
4. Podprogramy
Definice podprogramu: Oxxxx.
Volání: M98 Pxxxx Lnn — s podporou argumentu L (počet opakování).
Návrat: M99 (s vynulováním lokálních proměnných, pokud je parametr aktivní).
Podpora G65 Pxxxx s předáváním argumentů (A, B, C... H, I atd.) přímo do lokálních proměnných.
Rekurzivní volání s kontrolou hloubky zásobníku.
5. Další funkce
Podpora jak absolutního (G90), tak přírůstkového (G91) režimu v rámci jednoho programu.
Parsování s předběžným dosazením proměnných před simulací.
Rozbalování podprogramů pro úplnou simulaci dráhy nástroje.
Poznámka: Parser NCPlayeru se neustále vyvíjí.
V budoucích verzích bude rozšířena podpora o specifické kódy pro řídicí systémy Syntec, Siemens a další.