M-Codes ( Zusatz- oder Maschinenfunktionen )
Diese Codes werden verwendet, wenn der Bediener im TeXt programmiert oder MDI ( Hand )
Befehle ausführt. Diese Codes werden zusammen mit steuerungseigenen Parametern von der
Dialogsoftware erstellt. Anfänger nutzen meist die Dialog-Software für die Programmerstellung.
Sollten Sie planen, Ihre Programme in M-Code zu erstellen, befassen Sie sich mit diesem
Abschnitt. Erscheint Ihnen die Dialogprogrammierung als einfacher und vorteilhafter, so können
Sie sich später mit detaillierten Informationen im Abschnitt M-Code beschäftigen.
Die Maschinenfunktion ( M - Code ) besteht aus einem oder zwei Zahlen mit vorausgehendem M.
Ist die Zahl kleiner 10 kann die 0 ausgelassen werden ( M02 oder M2 )
Die Funktionen bestimmen eine Reihe von Maschinenfunktion gemäss der folgenden Liste:
M-Code |
Beschreibung |
Ausführung
vor
Bewegung |
Ausführung
nach
Bewegung |
M00
M01
M02
M30 |
Programm-Stop
Optionaler Programmstop
Programmende
Programmende |
|
X
X
X
X |
M03
M04
M05 |
Spindel Ein rechts
Spindel Ein links
Spindel Stop |
X*
X* |
X* |
M06 |
Werkzeugwechsel |
|
X* |
M08
M09 |
Kühlmittel ein
Kühlmittel aus |
X* |
X* |
M20
M29
M60-
M80 |
Ein ⁄ Ausgangsbefehle
der Steuerung
|
X* |
|
M32 |
Wait Channel |
X* |
|
M90 |
Grafik Aus |
X* |
|
M91 |
Grafik An |
X* |
|
M98 |
Unterprogramm-Aufruf |
X* |
|
M99 |
Unterprogramm Ende |
X* |
|
* Diese Befehle sind wahlweise vor oder nach Bewegung wählbar
Achtung:
Die Steuerung akzeptiert mehr als einen M-code in einem Satz. Es wird trotzdem empfohlen, nur
einen M-code pro Zeile zu programmieren. Bei der Ausführung von mehreren M-codes in einem
Satz kann es passieren, dass die Ausführung nicht in der Reihenfolge erfolgt, wie sie in dem Satz
stehen. Im Allgemeinen sollten sie in numerischer Reihenfolge ausgeführt werden, d. h. M00 zuerst
und M99 zuletzt, es sei denn in den Maschinenparametern ist eine andere Reihenfolge bezüglich
der Bewegungen gesetzt.
Hier eine erweiterte Liste der M-Funktionen
( die Ausführung verschiedener Funktionen ist nur möglich, wenn die Option in der Maschine ist )
00 Programm Stop
02 Programmende
04 Spindel links
06 WZG-Wechsel
09 Kuehlung aus
19 Spindel Orient
20 WZG-W Weiter
21 WZG-Scheibe rechts
23 Stangenlader Macro
24 Pinole vor
26 Teilefaenger ein
30 Progr. Ende Spindel aus
38 Spantransport an
41 Getriebe 1
42 Getriebe 2
50 Tool Setter kalibrieren
61 Futter zu
63 Aussen spannen
65 Misc Mcode on
67 Spare Func1 on
68 Spare Func2 on
69 Spare Func3 on
50 Spare Func4 on
90 Graph Off
98 Aufruf U-Programm |
01 Optional Stop
03 Spindel rechts
05 Spindel aus
08 Kuehlung an
28 Orient aus
22 WZG-Scheibe links
25 Pinole zurueck
27 Teilefaenger aus
39 Spantransport aus
62 Futter auf
64 Innen spannen
75 Misc Mcode off
77 Spare Func1 off
78 Spare Func2 off
79 Spare Func3 off
60 Spare Func4 off
91 Graph On
99 Ende Unterprogramm |
Programm-Stop M00
Die Ausführung des Programms wird in dem Satz angehalten, in dem der M00 programmiert ist.
Der Bediener wird aufgefordert Cycle Start zu drücken. Ist ein M00 in einem Satz mit Bewegung
programmiert, wird erst die Bewegung ausgeführt, bevor das Programm anhält. Ist in dem Satz
ein Kommentar eingegeben, wird dieser angezeigt
Optionaler Stop M01
Diese Funktion ist wie ein M00, jedoch muss die Option M01 gewählt sein
Block Skip ( ⁄ )
Eine Programmzeile kann für die Bearbeitung ausgeblendet werden. Dazu muss vor dem
Satz ein Slash ( " ⁄ " ) Zeichen stehen und die Funktion muss aktiviert sein.
Programmende M02 ⁄ M30 ⁄ M99
All diese Funktionen können verwendet werden, um ein Programm zu beenden. M02 und M99
schalten die Spindel und das Kühlmittel nicht aus, währen ein M30 dies tut.
Nach Ausführung der Codes springt das Programm wieder an den Anfang. Wird der Code in
einem Unterprogramm gelesen, erfolgt ein Rücksprung in das aufrufende Programm.
Spindel rechts ⁄ links ⁄ aus M3 ⁄ M4 ⁄ M5
Diese Befehle schalten die Spindel ein und aus. Die Ausführung erfolgt vor einer Achsenbewegung.
M3 = Spindel rechts
M4 = Spindel links
M5 = Spindel aus
Werkzeugwechsel M06
Ein Standard M6 Befehl bewegt die X-Achse auf die Werkzeugwechsel-Position. Die Programm-
ausführung wird angehalten und der Bediener für einen WZG-Wechsel aufgefordert. Ein optionaler
Kommentar wird angezeigt. Der M6 Befehl wird solange angezeigt, bis der WZG-Wechsel vom
Bediener quittiert wird ( Tool-Reset ). Danach kann das Programm mit einem Zyklus-Start
fortgesetzt werden.
Für automatische Werkzeug-Wechsler stellt der Hersteller ein spezielles Programm für den
Werkzeugwechsel bereit.
Kühlung ein ⁄ aus M08 ⁄ M09
Mit dem Befehl M8 wird das Kühlmittel vor einer Achsenbewegung eingeschaltet.
Mit M9 wird das Kühlmittel nach Ende einer Achsbewegung ausgeschaltet.
Wait Channel M32
Mit diesem Befehl kann die Abfrage des Wait Channel aktiviert werden
Diverse M-Funktionen
Jede Steuerung hat eine freie M-Funktion
M65 ein
M66 aus
Zusätzliche M-Funktionen im Viererpaket werden wie folgt angesteuert:
1. M67 an M77 aus
2. M68 an M78 aus
3. M69 an M79 aus
4. M50 an M60 aus
Grafik ein⁄ aus M90 ⁄ M91
Für verschiedene Bearbeitungen kann es von Vorteil sein, vorhandene und nicht notwendige
Grafiken abzuschalten. Z.b. bei einem Programm mit Wiederholungen schreiben sie am Ende
der ersten Wiederholung einen M90 ( Grafik aus ). Mit einem M91 nach Ende der Wieder-
holungen kann der nächste Bereich im Programm angezeigt werden. War der letzte Befehl
ein M90 und das Programm wird neu gestartet, wird automatisch ein M91 gesetzt.
Unterprogramm aufrufen M98
Mit dem Befehl M98 kann jedes Programm im Speicher zur Ausführung aufgerufen werden.
Das Programm wird ausgeführt und anschliessend geht die Steuerung auf den Satz nach
M98 in dem aufrufenden Programm.
Ein Aufruf aus dem Hauptprogramm wird als 1-fache Verschachtelung angesehen.
Eine 2-fache Verschachtelung sieht wie folgt aus:
Mit dem Befehl M98 und einem Befehl L.... kann das Unterprogramm bis zu 999 mal
wiederholt werden. Verschachtelungen sind bis zu einer Anzahl von 50 möglich.
Hinweis: Anstatt eines M98 kann auch der Befehl " CALL " verwendet werden
Unterprogramm Ende M99
Mit dem Befehl M99 endet das Unterprogramm und der Rücksprung in das Hauptprogramm
erfolgt.
M2 kann anstatt von M99 verwendet werden.
Endet ein Unterprogramm ohne M2 oder M99 erfolgt trotzdem ein Rücksprung in das
Hauptprogramm
Vorbereitung eines Unterprogrammes
Das Unterprogramm wird genau geschrieben wie ein Hauptprogramm. Ein M99 am
Unterprogrammende ist optional. Nach Aufruf eines Unterprogrammes mit M98 oder
CALL erzwingt ein M02, M30 oder M98 ebenfalls einen Rücksprung.
Hinweis: Ein M30 schaltet Spindel und Kühlung aus
Unterprogramm ausführen
Ein Unterprogramm wird ausgeführt, wenn es durch ein Hauptprogramm oder ein Unterprogramm
aufgerufen wird. Der Aufruf hat folgendes Format:
M98 P#### L####
Programm-Nummer Anzahl Wiederholungen
Beispiel: M98 P0002 L5
M98 P2 L5
CALL 2 L2
Diese Befehle bedeuten: Rufe Unterprogramm 2 insgesamt 5 mal
Wird L ausgelassen, findet nur 1 Wiederholung statt
Ein Unterprogramm-Aufruf kann auch in einem Bewegungssatz stehen, wird aber erst nach
Ende der Bewegung aktiviert
Der Ablauf sieht wie folgt aus:
Wird ein Unterprogramm durch ein Unterprogramm aufgerufen erfolgt die Ausführung in derselben
Sequenz wie vor
Note 1: Wird das gerufen Programm nicht gefunden, erscheint eine Fehlermeldung
Note 2: Ein Unterprogramm kann nicht mit dem Befehl M98 in MDI ( Hand ) ausgeführt werden.
Schreiben sie in diesem Fall ein kleines Programm wie folgt:
O####
M98 P####
M02 und führen Sie das Programm in Auto aus
Note 3: Modifiziert ein Unterprogramm die NPV, z. B. durch einen G92 X0 Y0 im ersten
Satz des Unterprogramms, wird der Zustand wieder hergestellt, der vor Aufruf
des Unterprogramms aktiv war. Nützlich für die Bearbeitung von Konturen an
verschieden Positionen.