Die programmierbaren Funktionen von CNC-Werkzeugmaschinen werden in zwei Kategorien unterteilt:
Eine Kategorie wird verwendet, um den Werkzeugweg zu steuern, d. h. die Bewegung jeder Vorschubachse, wie z. B. lineare/zirkuläre Interpolation, Vorschubsteuerung, Ursprungsversatz und Transformation des Koordinatensystems, Einstellung der Maßeinheit, Werkzeugversatz und -kompensation usw. Diese Funktionskategorie wird als Vorbereitungsfunktionen bezeichnet und besteht aus dem Buchstaben G gefolgt von zwei Ziffern, auch bekannt als G--Codes.
Die andere Kategorie von Funktionen wird als Hilfsfunktionen bezeichnet und zur Vervollständigung der Programmausführungssteuerung, Spindelsteuerung, Werkzeugsteuerung, Steuerung von Hilfsgeräten usw. verwendet. Unter diesen Hilfsfunktionen wird Tx x zur Werkzeugauswahl und Sx xxx zur Steuerung der Spindelgeschwindigkeit verwendet. Andere Funktionen werden mithilfe von M--Codes implementiert, die aus dem Buchstaben M gefolgt von zwei Ziffern bestehen.
1. Häufig verwendete G--Code-Funktionen
G00-Positionierung (Eilgang)
G01 Lineare Interpolation (Vorschub)
G02 Kreisinterpolation im Uhrzeigersinn
G03 Kreisinterpolation gegen den Uhrzeigersinn
G04 Pause, präziser Stopp
G09 Präziser Stopp
G17 X/Y-Ebene auswählen
G18 Z/X-Ebene auswählen
G19 Y/Z-Ebene auswählen
G27 Referenzpunkt zurückgeben und prüfen
G28 Rückkehr zum Referenzpunkt
G29 Rückkehr vom Referenzpunkt
G30 Rückkehr zum zweiten Referenzpunkt
G40 Werkzeugradiuskompensation abbrechen
G41 Radiuskompensation des linken Werkzeugs
G42 Radiuskompensation des rechten Werkzeugs
G43 Werkzeuglängenkompensation +
G44 Werkzeuglängenkompensation -
G49 Werkzeuglängenkompensation abbrechen
G52 Lokales Koordinatensystem festlegen
G53 Maschinenkoordinatensystem auswählen
G54 Wählen Sie das Werkstückkoordinatensystem 1
G55 Werkstückkoordinatensystem 2 wählen
G56 Werkstückkoordinatensystem 3 auswählen
G57 Werkstückkoordinatensystem 4 wählen
G58 Werkstückkoordinatensystem 5 wählen
G59 Werkstückkoordinatensystem 6 wählen
G60 Positionierung in eine-Richtung
G61 Präziser Stoppmodus
G64 Schneidmodus
G65 Makroprogrammaufruf
G66 Modaler Makroprogrammaufruf
G67 Modalen Makroprogrammaufruf abbrechen
G73 Fester Tieflochbohrzyklus
G74 Fester Zyklus zum Rückwärtsgewindeschneiden
G76 Feinbohr-Festzyklus
G80 Fixzyklus abbrechen
G81 Fester Bohrzyklus
G82 Fester Bohrzyklus
G83 Fester Tieflochbohrzyklus
G84 Fester Gewindebohrzyklus
G85 Fester Bohrzyklus
G86 Langweiliger fester Zyklus
G87 Fester Rückwärtsbohrzyklus
G88 Langweiliger fester Zyklus
G89 Langweiliger fester Zyklus
G90 Absolutwert-Befehlsmodus
G91 Inkrementalwert-Befehlsmodus
G92 Werkstück-Nullpunkteinstellung
G98 Feste Zyklusrückkehr zum Ausgangspunkt
G99 Feste Zyklusrückkehr zum R-Punkt
2. Häufig verwendete M-Code-Funktionen
M00 Programmpause
M01 Bedingter Programmstopp
M02 Programmende
M03 Vorwärtsdrehung der Spindel
M04 Rückwärtsdrehung der Spindel
M05 Spindelstopp
M06 Werkzeugaustausch
M08 Kühlung ein
M09 Abkühlung aus
M18 Spindelausrichtung abbrechen
M19 Spindelausrichtung
M29 Starres Gewindeschneiden
M30 Programmende und Rückkehr zum Programmkopf
M98 Unterprogrammaufruf
M99 Unterprogramm beenden Rückkehr/Ausführung wiederholen
3. Gemeinsame Arithmetik
Zusatz: #i=#j + #k
Subtraktion: #i=#j - #k
Multiplikation: #i=#j * #k
Division: #i=#j / #k
Sinus: #i=SIN[#j]
Arkussinus: #i=ASIN[#j]
Kosinus: #i=COS[#j]
Inverser Kosinus: #i=ACOS[#j]
Tangente: #i=TAN[#j]
Arkustangens: #i=ATAN[#j]
Quadratwurzel: #i=SQRT[#j]
Absoluter Wert: #i=ABS[#j]
Rundung: #i=ROUND[#j]
Ganzzahlrundung: #i=FIX[#j]
Abrunden ganzer Zahlen: #i=FUP[#j]
Natürlicher Logarithmus: #i=LN[#j]
Exponentialfunktion: #i=EXP[#j]
ODER: #i=#j ODER #k
XOR: #i=#j X ODER #k
UND: #i=# UND #k
Konvertieren von BCD nach BIN: #i=BIN[#j]
Konvertieren von BIN nach BCD: #i=BCD[#j]
4. Logische Operatoren
EQ: Gleich
NE: Nicht gleich
GT: Größer als
GE: Größer oder gleich
LT: Weniger als
LE: Kleiner oder gleich
5. Programmübertragung und Schleifen
Bedingungslose Übertragung: GOTO
Bedingte Übertragung: IF [bedingter Ausdruck]
IF [bedingter Ausdruck] GOTO n, wenn die Bedingung erfüllt ist, springe zum Programmsegment n
IF [bedingter Ausdruck] THEN, z. B.: IF [#I=#J] THEN #K=0
6. Schleifenanweisungen
WHILE [bedingter Ausdruck] Dom (m=1,2,,3)
…
Wenn die Bedingung erfüllt ist, führen Sie das Programm von Dom bis ENDm aus (bis die Bedingung nicht mehr erfüllt ist). andernfalls führen Sie das Programm danach aus





