Mächtige Sprache für komplexe Aufgaben

Hochsprachenprogrammierung mit SINUMERIK

Hochsprache erweitert die Grenzen der klassischen G-Code- und auch der grafischen CNC-Programmierung. Bei besonderen Anforderungen ist sie oft das Mittel der Wahl. 

Hochsprache für die CNC

Spezialaufgaben in der CNC-Programmierung gibt es viele. Zum Beispiel:

  • parametrierbare CNC-Programme für Bauteilfamilien, die sich lediglich in wenigen geometrischen Größen unterscheiden 
  • Bauteile, die einen eigenen Technologiezyklus erfordern, weil sie sich mit Standardzyklen nicht effizient fertigen lassen 
  • vom laufenden CNC-Programm heraus generierte Bedienermeldungen
  • Protokollierung von Bearbeitungsparametern und Messergebnissen
  • ...

In derartigen Fällen hilft eine CNC-Hochsprache weiter.

 

Im Vergleich zur hardwarenahen Assembler-Programmierung können mit Computer-Hochsprachen komplexe Programmabläufe einfach lesbar – und damit 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.

Eine grundsätzliche Voraussetzung für das Programmieren 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. Mit Funktionen wie AND, OR, NOT ist auch die Boolsche Algebra im Operationsumfang enthalten.

 

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 das effiziente Übertragen der Flussdiagramme in Programmcode.

 

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:

 

Datentypen

NC-Code

 

Kommentar

 

INT 
Ganzzahl
REAL 
Gleitkommazahl
BOOL 
Wahrheitswert
CHAR 
ASCII-Zeichen
STRING 
Zeichenkette
AXIS 
CNC-Achsname
FRAME
Koordinatenverschiebung
Beispiel Variablendeklaration:

Kontrollstrukturen

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

 

NC-Code

 

Kommentar

 

IF, ELSE, ENDIF
Bedingte Verzweigung
LOOP, ENDLOOP 
Endlos-Programmierschleife
FOR, ENDFOR 
Zählschleife
WHILE, ENDWHILE 
Programmschleife
REPEAT UNTIL
Programmschleife
Beispiel Kontrollstruktur

Operationen in der SINUMERIK-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 Operationen

Feedback

Haben Sie Fragen zum Thema oder einen Themenvorschlag?

Schreiben Sie uns!