Anwenderspezifische M/H-Funktionen

M/H-Funktionen werden im wesentlichen durch die Programmierung der "Speicherprogrammierbaren Steuerung" (SPS,...) bestimmt. Diese Steuerung erhält über eine Schnittstelle ("Fenster zur SPS") Mitteilung über die programmierten M/H –Funktionen im aktuellen NC-Satz. Zusätzlich werden Synchronisationsbedingungen mitgegeben, die die Synchronisation zwischen NC und SPS steuern.

M <expr> 

bzw.

H<expr>

M/H-Funktionen können mit allgemeinen mathematischen Ausdrücken programmiert werden. Dies erlaubt insbesondere die Wertzuweisung über Parameter, z.B. MP10. Vor dem Zugriff auf die M/H-Funktion wird der berechnete Zahlenwert gerundet und in eine Ganzzahl gewandelt. Der kleinste zulässige Wert ist 0 (Null). Negative Werte erzeugen eine Fehlermeldung.

Die maximale Anzahl von M/H-Funktionen pro NC-Kanal sowie die maximale Anzahl von M/H-Funktionen pro NC-Satz ist fest vorgegeben.

Mit der EXIST-Funktion (siehe Kapitel 2.6.1.3) kann geprüft werden, ob eine M/H-Funktion überhaupt verfügbar ist.

Programmierbeispiel

Durch die EXIST-Abfrage wird in einem ersten Schritt vor der Verwendung einer anwenderspezifischen M-Funktion zunächst geprüft, ob diese überhaupt in der Kanalparameterliste definiert ist

...
N10 G90 Y0
N20 $IF EXIST[M80] == TRUE
N30   X0 Y0 Z0 M80      (M80 ist verfuegbar)
N40 $ELSE
:
   
N60 $ENDIF
...
M30

Folgende M-Funktionen haben im NC-Programm eine vordefinierte feste Bedeutung, d.h. sie sind nicht frei verfügbar. Lediglich ihr Synchronisationsmode kann noch vom Anwender selbst belegt werden.

M00 Programmierter Halt

M01 Wahlweiser Halt

M02 Programmende, Stillsetzen der Maschine

M17 Unterprogrammende

M29 Unterprogrammende

M30 Programmende, Stillsetzen der Maschine