Tools

Site ExplorerSite Explorer
Close site explorer

Keine Angst vor komplexen Aufgaben

CNC-Programmierer werden zunehmend mit Spezialaufgaben konfrontiert, deren Lösung sie an die Grenzen der klassischen (DIN 66025) und der grafischen CNC-Programmierung bringen. Die CNC-Hochsprachenprogrammierung mit SINUMERIK bietet hier wertvolle Unterstützung.

SINUMERIK CNC-Hochsprache

Spezialaufgaben in der CNC-Programmierung gibt es viele. Egal, ob parametrierbare CNC-Programme für Bauteilfamilien, die sich lediglich in wenigen geometrischen Größen unterscheiden, ob bestimmte Bauteile, die einen eigenen Technologiezyklus erfordern, weil mit den Standardzyklen nicht jede Spezialaufgabe gelöst werden kann, oder ob eine einfache Bedienermeldung aus dem laufenden CNC-Programm heraus generiert werden soll, was sich allein mit dem Befehlsvorrat der DIN 66025 oder der grafischen CNC-Programmierung (z.B. ShopMill oder ShopTurn) nur begrenzt umsetzen lässt – in all diesen Fällen bietet die Verwendung einer CNC-Hochsprache neue Möglichkeiten, flexibel und schnell zu reagieren.

Vorteile von Hochsprachen

Im Vergleich zur hardwarenahen Assembler-Programmierung können mit Computer-Hochsprachen komplexe Programmabläufe einfach lesbar – also sehr transparent – abgebildet werden. Das trifft im übertragenen Sinn auch auf die CNC-Programmierung zu. Die CNC-Hochsprache ergänzt die maschinennahe DIN 66025-Programmierung (G00, G01, G02 …). Im CNC-Markt bietet die SINUMERIK-Hochsprachenprogrammierung grundlegende Eigenschaften höherer Computer-Hochsprachen der 3. Generation wie C, C++, Visual Basic, Pascal oder Java. Für die Praxis bedeutet das: Die Flexibilität von CNC-Bearbeitungsprogrammen lässt sich damit deutlich steigern und CNC-Programmierer können auch anspruchsvolle CNC-Anwendungen realisieren.

Typische Eigenschaften höherer Programmiersprachen

Eine grundsätzliche Voraussetzung für die Programmierung mit Hochsprachen sind für den Programmierer lesbare („mnemonische") Sprachbefehle wie REPEAT, WHILE, CASE etc. Außerdem legt der Programmierer fest, welche Variablen im Programm genutzt werden und welchem Variablentyp diese zuzuordnen sind. Der Variablentyp definiert, ob die Variable eine Achsposition (Gleitkommazahl Typ REAL), einen Zähler (Ganzzahl Typ INTEGER) oder das Ergebnis eines Vergleichs (Typ BOOLEAN) beinhalten soll. Wichtig für die Abbildung des Programmablaufs sind auch Kontrollstrukturen, zum Beispiel Bedingte Verzweigungen (IF, ELSE) oder Wiederholungsschleifen (WHILE, REPEAT UNTIL). Über die Grundrechenarten hinaus bieten Hochsprachen auch höherwertige mathematische Funktionen wie beispielsweise Sinus/ Cosinus oder eine Logarithmus-Funktion. Aber auch die Boolsche Algebra mit Funktionen wie AND, OR, NOT sind im Operationsumfang enthalten.

Einfache Vorbereitung mit Flussdiagrammen

Für komplexe Aufgaben nutzen Programmierer die Flussdiagrammtechnik. Der grundsätzliche, schrittweise Ablauf des Programms wird zuerst „am grünen Tisch" in einer abstrakten, leicht verständlichen Darstellungsart abgebildet, geprüft und optimiert.
Erst im letzten Schritt überträgt der Programmierer die Flussdiagramme in konkrete Sprachbefehle. Die Sprachbefehle der Hochsprachen ermöglichen dabei eine äußerst effiziente Übertragung der Flussdiagramme.

Mehr Flexibilität schon im Standard

Ein großes Plus der SINUMERIK-Hochsprache ist, dass sie „Bordmittel" jeder SINUMERIK ist. So kann sie jeder CNC- Programmierer ohne zusätzliche Software direkt im CNC-Editor nutzen. Neben der Lösung von Spezialaufgaben bietet sie auch entscheidende Vorteile in der Ausbildung: Der Umgang mit der SINUMERIK-Hochsprache steigert die Flexibilität von CNC-Programmen und schafft bei Auszubildenden ein grundsätzliches Verständnis für den Umgang mit höheren Programmiersprachen. Damit wird die CNC-Ausbildung aufgewertet und die Jobchancen der zukünftigen Fachkräfte steigen.

Die SINUMERIK-Hochsprache

Die SINUMERIK-Hochsprache verfügt über grundlegende Eigenschaften von Programmiersprachen der 3. Generation. Hier einige Beispiele:

Abstrakte Datentypen

Variablen folgenden Typs können in SINUMERIK-CNC-Programmen definiert werden:

NC-Code

Kommentar

INT
REAL
BOOL
CHAR
STRING
AXIS
FRAME

Ganzzahl
Gleitkommazahl
Wahrheitswert
ASCII-Zeichen
Zeichenkette
CNC-Achsname
Koordinatenverschiebung

Beispiel


 

Kontrollstrukturen

Folgende Kontrollstrukturen lassen sich in der SINUMERIK-CNC-Hochsprache nutzen:

NC-Code

Kommentar

IF, ELSE, ENDIF
LOOP, ENDLOOP
FOR, ENDFOR
WHILE, ENDWHILE
REPEAT UNTIL

Bedingte Verzweigung
Endlos-Programmierschleife
Zählschleife
Programmschleife
Programmschleife

Beispiel


 

Operationen in der SINUMERIK CNC-Hochsprache

Folgende Operationen können in CNC-Programmen genutzt werden (Auszug):

NC-Code

Kommentar

Vergleichsoperation

 

==
<>
>
<
>=
<=

(gleich)
(ungleich)
(größer)
(kleiner)
(größer gleich)
(kleiner gleich)

Rechenoperationen

 

+, -, *, /
SIN(), COS(), TAN(), ASIN(), ACOS(), ATAN()
SQRT(), POT()
LN(), EXP()
TRUNC(), ROUND()

 

Beispiel