Programuojamos CNC staklių funkcijos skirstomos į dvi kategorijas:
Viena kategorija naudojama valdyti įrankio trajektoriją, ty kiekvienos tiekimo ašies judėjimą, pvz., tiesinę / apskritą interpoliaciją, pastūmos valdymą, koordinačių sistemos pradžios poslinkį ir transformaciją, matmenų vieneto nustatymą, įrankio poslinkį ir kompensavimą ir kt. Ši funkcijų kategorija vadinama parengiamosiomis funkcijomis, kurias sudaro raidė G ir du skaitmenys, taip pat žinomi kaip G-kodai.
Kita funkcijų kategorija vadinama pagalbinėmis funkcijomis, kurios naudojamos užbaigti programos vykdymo valdymą, veleno valdymą, įrankio valdymą, pagalbinės įrangos valdymą ir tt Tarp šių pagalbinių funkcijų Tx x naudojamas įrankių parinkimui, o Sx xxx – suklio greičiui valdyti. Kitos funkcijos įgyvendinamos naudojant M-kodus, sudarytus iš raidės M ir po dviejų skaitmenų.
1. Dažniausiai naudojamos G-kodo funkcijos
G00 padėties nustatymas (greitasis judėjimas)
G01 tiesinė interpoliacija (tiekimo greitis)
G02 Apvali interpoliacija pagal laikrodžio rodyklę
G03 Apvali interpoliacija prieš laikrodžio rodyklę
G04 Pauzė, tikslus sustojimas
G09 Tikslus stabdymas
G17 Pasirinkite X/Y plokštumą
G18 Pasirinkite Z/X plokštumą
G19 Pasirinkite Y/Z plokštumą
G27 Grąžinimo ir patikrinimo atskaitos taškas
G28 Grįžti į atskaitos tašką
G29 Grįžimas iš atskaitos taško
G30 Grįžti į antrąjį atskaitos tašką
G40 Atšaukti įrankio spindulio kompensavimą
G41 kairiojo įrankio spindulio kompensavimas
G42 dešiniojo įrankio spindulio kompensavimas
G43 įrankio ilgio kompensacija +
G44 įrankio ilgio kompensavimas -
G49 Atšaukti įrankio ilgio kompensavimą
G52 Nustatyti vietinę koordinačių sistemą
G53 Pasirinkite mašinos koordinačių sistemą
G54 Pasirinkite ruošinio koordinačių sistemą 1
G55 Pasirinkite ruošinio koordinačių sistemą 2
G56 Pasirinkite ruošinio koordinačių sistemą 3
G57 Pasirinkite ruošinio koordinačių sistemą 4
G58 Pasirinkite ruošinio koordinačių sistemą 5
G59 Pasirinkite ruošinio koordinačių sistemą 6
G60 padėties nustatymas viena kryptimi
G61 Tikslus sustabdymo režimas
G64 Pjovimo režimas
G65 makro programos skambutis
G66 Modalinės makro programos iškvietimas
G67 Atšaukti modalinės makrokomandos programos iškvietimą
G73 Gilių skylių gręžimo fiksuotas ciklas
G74 Atbulinės eigos sriegio fiksuotas ciklas
G76 Smulkaus gręžimo fiksuotas ciklas
G80 Atšaukti fiksuotą ciklą
G81 Gręžimo fiksuotas ciklas
G82 Gręžimo fiksuotas ciklas
G83 Gilių skylių gręžimo fiksuotas ciklas
G84 fiksuotas sriegimo ciklas
G85 Gręžimo fiksuotas ciklas
G86 Nuobodus fiksuotas ciklas
G87 Atvirkštinio gręžimo fiksuotas ciklas
G88 gręžimo fiksuotas ciklas
G89 gręžimo fiksuotas ciklas
G90 absoliučios vertės komandų režimas
G91 prieauginės vertės komandos režimas
G92 ruošinio nulinio taško nustatymas
G98 fiksuoto ciklo grįžimas į pradinį tašką
G99 fiksuoto ciklo grįžimas į R tašką
2. Dažniausiai naudojamos M kodo funkcijos
M00 programos pauzė
M01 Sąlyginės programos stotelė
M02 programos pabaiga
M03 Suklio sukimas į priekį
M04 suklio sukimas atgal
M05 veleno stabdiklis
M06 įrankių mainai
M08 Aušinimas įjungtas
M09 Aušinimas
M18 veleno orientacijos atšaukimas
M19 veleno orientacija
M29 standus sriegimas
M30 programos pabaiga ir grįžimas į programos antraštę
M98 paprogramės skambutis
M99 paprogramė Pabaigos grąžinimas / Pakartokite vykdymą
3. Bendroji aritmetika
Papildymas: #i=#j + #k
Atimtis: #i=#j - #k
Daugyba: #i=#j * #k
Padalinys: #i=#j / #k
Sinusas: #i=SIN[#j]
Arcine: #i=ASIN[#j]
Kosinusas: #i=COS[#j]
Atvirkštinis kosinusas: #i=ACOS[#j]
Liestinė: #i=TAN[#j]
Arktangentas: #i=ATAN[#j]
Kvadratinė šaknis: #i=SQRT[#j]
Absoliuti vertė: #i=ABS[#j]
Apvalinimas: #i=ROUND[#j]
Sveikųjų skaičių apvalinimas: #i=FIX[#j]
Sveikasis skaičius apvalinimas žemyn: #i=FUP[#j]
Natūralusis logaritmas: #i=LN[#j]
Eksponentinė funkcija: #i=EXP[#j]
ARBA: #i=#j ARBA #k
XOR: #i=#j X ARBA #k
IR: #i=# IR #k
Konvertuoti iš BCD į BIN: #i=BIN[#j]
Konvertuoti iš BIN į BCD: #i=BCD[#j]
4. Loginiai operatoriai
EQ: lygus
NE: Nelygu
GT: Didesnis nei
GE: didesnis arba lygus
LT: Mažiau nei
LE: Mažiau nei arba lygus
5. Programų perdavimas ir kilpos
Besąlyginis perkėlimas: GOTO
Sąlyginis perkėlimas: IF [sąlyginė išraiška]
IF [sąlyginė išraiška] GOTO n, jei sąlyga įvykdyta, pereikite prie programos segmento n
IF [sąlyginė išraiška] THEN, pvz.: JEI [#I=#J] THEN #K=0
6. Ciklo teiginiai
WHILE [sąlyginė išraiška] Dom (m=1,2,,3)
…
Jei sąlyga įvykdoma, paleiskite programą nuo Dom iki ENDm (kol sąlyga nebebus įvykdyta); kitu atveju paleiskite programą po to





