Kursangebot | | Programmierung

Programmierung

01. Wie ist ein NC-Programm aufgebaut?

Eine gewünschte Werkstückbearbeitung muss der NC-Steuerung in einer Beschreibung/einem Programm mitgeteilt werden. Der Aufbau dieser Steuerprogramme ist in der DIN 66025 festgelegt. Das NC-Programm ist aus einer Folge von Sätzen aufgebaut, wobei jeder Satz einem Arbeitsgang der Maschine entspricht. Die Einzelinformationen in einem Satz heißen Wörter. Die Reihenfolge der Wörter in einem Satz ist festgelegt.

 WeginformationenSchaltinformationen
  Geometrische InformationenTechnologische Informationen 
Satz-Nr.WegbedingungWegbefehleKreismittelpunkt-AbstandVorschubDrehzahlWerkzeug-Nr.Zusatzfunktion
NGXYZIJKFSTM
N 20G 01X 90Y 35    F300S 1000T 02M 08

Ein Wort besteht aus einem Adressbuchstaben und einer Ziffernfolge – der Kennung. Die meisten Befehle bleiben auch für nachfolgende Programmsätze bis zu ihrer ausdrücklichen Änderung (modal) wirksam. Programmwörter werden im Allgemeinen in Wegbedingungen, Koordinatenangaben sowie Zusatz- und Schaltfunktionen unterteilt.

BeispielAdresseKennungBedeutung
N 20N20Für die Adresse N bezeichnet die Kennung 20 die Nummer des NC-Satzes.
G 01G01G bedeutet in Verbindung mit der Kennung 01 „Verfahren des Werkzeuges entlang einer Geraden mit Vorschubgeschwindigkeit“.
X 90X90In Verbindung mit dem Befehl G 01 verfährt das Werkzeug im aktuellen Werkstückkoordinatensystem auf die Position X = 90.

Das Programm beginnt in der Regel mit dem Zeichen % für Programmanfang und der nachstehenden Programmnummer. Im Folgenden bietet sich zur Erleichterung beim Schreiben und Lesen folgende Strukturierung an:

Zu Beginn eines Programms stehen so genannte Routinesätze, die beispielsweise die Art der Messwertbestimmung (absolut oder inkremental) und Angaben zur Nullpunktverschiebung erhalten. Der Hauptteil des Programms enthält alle zur Werkstückbearbeitung erforderlichen und in Abschnitte gegliederte Arbeitsschritte. Der Schlussteil besteht wiederum aus einer Anzahl von Routinesätzen und dem Programmende-Befehl M30.

Adressbuchstaben

N (Satznummer)

Das Wort für die Satznummer ist das erste Wort eines jeden Satzes in einem Programm und dient zur eindeutigen Kennzeichnung der einzelnen Programmsätze, z. B. N 20. Jede Kennung darf dabei nur einmal verwendet werden. Die Satznummer hat jedoch keinen Einfluss auf die Abarbeitung der einzelnen Sätze, da sie nach der Reihenfolge ihrer Eingabe in die Steuerung aufgerufen werden.

G (Wegbedingung)

Die Wegbedingungen legen zusammen mit den Wörtern für die Koordinaten im Wesentlichen den geometrischen Teil des NC-Programms fest. Sie bestehen aus dem Adressbuchstaben G und einer zweistelligen Kennzahl (z. B. G 03).

Die folgende Tabelle zeigt eine Auswahl von Worten, die aus der Kombination des Adressbuchstabens G mit verschiedenen Kennungen resultieren.

WortBedeutung
G 00Lineare Interpolation im Eilgang
G 01Geradeninterpolation (lineare Interpolation in der Vorschubgeschwindigkeit)
G 02Kreisinterpolation im Uhrzeigersinn (cw = clockwise)
G 03Kreisinterpolation im Gegenuhrzeigersinn (ccw = counterclockwise)
G 04Verweilzeit
G 33Gewindeschneiden
G 90Absolutmaßeingabe
G 91Kettenmaßeingabe (Relativmaßeingabe)

X, Y, Z (Koordinaten)

Die Koordinaten beschreiben die Zielpunkte, welche für die Verfahrbewegung notwendig sind.

I, J, K (Interpolationsparameter)

Die Interpolationsparameter dienen z. B. bei einer kreisförmigen Bahnbewegung zur Beschreibung der Kreismittelpunktkoordinaten. Sie werden meist inkremental als Abstand vom Anfangspunkt eingegeben.

F (Vorschub)

Die Funktion F beschreibt die Geschwindigkeit, mit der sich das Werkzeug bewegen soll und wird in mm/min oder mm/U angegeben. Die Bedeutung der Zahl wir durch eine G-Funktion festgelegt und ist modal wirksam.

S (Spindeldrehzahl)

Die Funktion S dient zur Eingabe der Spindeldrehzahl in U/min.

T (Werkzeug)

Die T-Funktion legt mit der folgenden Schlüsselzahl das zum Einsatz kommende Bearbeitungswerkzeug fest. Zudem sind die Werkzeugmaße im Werkzeugkorrekturspeicher der Steuerung unter der Werkzeugnummer abgespeichert und werden automatisch bei allen Verfahrbewegungen verrechnet.

M (Zusatzfunktion)

Zusatzfunktionen werden mit dem Adressbuchstaben M und einer zweistelligen Schlüsselzahl eingegeben und beschreiben zusätzliche technologische Informationen.

02. Welche Programmierverfahren werden unterschieden?

Programmierung von NC-Werkzeugmaschinen bedeutet eine der Programmiervorschrift entsprechende Erstellung von Steuerinformationen, die exakt und in der richtigen Reihenfolge die Arbeitsbefehle für die Werkzeugmaschine enthalten. Die Steuerinformationen werden der Maschine heute üblicherweise via Datenträger oder DNC übertragen. Aus den Eingabedaten errechnet die NC die an die Maschine auszugebenden Weg- und Schaltinformationen. Die NC arbeitet die eingegebenen Informationen Satzweise ab, entweder direkt vom Datenträger oder vom internen Datenspeicher. Der Programmaufbau ist nach DIN 66025 genormt.

Die jeweiligen in der Praxis angewendeten Programmierverfahren werden in der Regel nach der organisatorischen Zuordnung (Programmierung in der Werkstatt, Arbeitsvorbereitung oder Konstruktionsabteilung), nach räumlichen Kriterien (Maschine, Maschinennähe oder Büro) und den ausführenden Personen (Maschinenbediener, Einrichter, NC-Programmierer oder Konstrukteur) unterschieden. Im Allgemeinen zielt man jedoch darauf ab, Universalität und somit Flexibilität im Bereich der Programmierung zu erreichen.

Das Spektrum der Programmierverfahren reicht von der klassischen manuellen Programmierung anhand der genormten Programmiersprache nach DIN 66025 über die maschinelle Programmierung bis hin zur werkstattorientierten Programmierung (WOP).

Grundsätzlich gehört die WOP in den Bereich der maschinellen Programmierung. Das Verfahren kann jedoch aufgrund eines einheitlichen, grafischen und benutzerfreundlichen Programmierkonzepts auch direkt an der Maschine genutzt werden und ist damit nicht nur an den klassischen Einsatz in der Arbeitsvorbereitung gebunden.

Die Wahl eines geeigneten Verfahrens hängt in erster Linie von der Art und Menge sowie der Komplexität des Werkstückes, den zur Verfügung stehenden Maschinen wie auch der innerbetrieblichen NC-Programmierung, die in unterschiedlichen Abteilungen zu finden ist, ab.

03. Wie erfolgt die manuelle Programmierung?

Die manuelle Programmierung erfordert eine exakte Planung jedes einzelnen Bearbeitungsschrittes durch den Programmierer. Neben den Geometriebedingungen des Werkstückes müssen vor allem die technologischen und die maschinenspezifischen Aspekte bei der Programmierung berücksichtigt werden. Während in einem Arbeitsplan die Bearbeitungsreihenfolge festgelegt wird, sind im Einrichteplan Angaben über die eingesetzten Werkzeuge, Spannlage des Werkstückes u. a. zu finden.

imported

Bedingt durch die erforderliche Umrechnung der Werkstückgeometrie auf den Bahnverlauf des Werkzeuges erfordert die Ermittlung und Festlegung der geometrischen Maße den weitaus größten Zeitanteil. Zudem ist aufgrund der verschiedenen Interpolationsarten einer NC-Steuerung die Aufteilung der Werkstückkontur in einzelne Konturelemente notwendig.

imported

Technologische Größen wie Vorschub und Schnittgeschwindigkeit werden aus Richtwerttabellen ermittelt und mit den weiteren technologischen Informationen wie z. B. Kühlschmiermittel-Ein/Aus oder Werkzeugwechsel in den Datenspeicher übernommen.

Programmierbeispiel

Zur Fertigung eines Werkstückes auf einer NC-Drehmaschine ist das Programm zu erstellen. Drehmaschine, Werkzeuge, Dreibackenfutter und Spannlage sind bereits vorgegeben.

imported

Die Bearbeitung soll mit zwei Werkzeugen erfolgen, die auf den Plätzen 1 und 2 des Werkzeugwechslers eingespannt sind. Eine eventuelle Werkzeuglängekorrektur erfolgt über die Korrekturwertspeicher 6 und 7. Mit Werkzeug 1 soll die Schruppbearbeitung, mit Werkzeug 2 die Schlichtbearbeitung durchgeführt werden. Die Werkzeuge sind bereits voreingestellt im Werkzeugträger montiert und sollen keinen Schneidkantenradius besitzen.

Aufgrund der gegebenen Werkstoff-/Schneidstoffkombination und der verfügbaren Maschinenleistung soll mit konstanter Schnittgeschwindigkeit von 100 m/min zerspant werden. Zur Gewährleistung einer guten Spanbildung sind die maßgebenden Größen für den Zerspanungsquerschnitt wie folgt gewählt:

Schnitttiefeap = 10 mm
Vorschub (Schruppbearbeitung)f1 = 0,5 mm/U
Vorschub (Schlichtbearbeitung)f2 = 0,1 mm/U
Das Rohteil hat die Abmessungen: 
Durchmesserd = 100 mm
LängeL = 80 mm

Das Schlichtaufmaß soll 1 mm betragen. Der Vorschub sei nur in mm/min programmierbar.

1. Lösungsschritt

Unter Berücksichtigung der maximalen Schnitttiefe und des Schlichtaufmaßes ergeben sich drei Schnitte für die Schruppbearbeitung und ein Schnitt für die Schlichtbearbeitung. In der gewählten Schnittaufteilung markieren die Punkte 1 – 18 jeweils die Endpunkte der Programmsätze mit Werkzeugbewegung.

imported

Berechnung der Koordinaten der jeweiligen Konturpunkte:

Nach Zeichnung ist

r= 25 mm (Zeichnung) – 1 mm (Schlichtaufmaß) = 24 mm
xs= 50 mm – h
zs= 40 mm – b

mit b = √r2 – h2

Für den ersten Schnitt ergibt sich mit h = a = 10 mm:

b= 21,817 mm
xs= 40 mm
zs= 18,183 mm

Die anderen Konturpunkte werden nach demselben Schema ermittelt.

2. Lösungsschritt

Ermittlung der technologischen Werte: Drehzahl und Vorschubgeschwindigkeit

Zwischen Schnittgeschwindigkeit, gedrehtem Werkstückdurchmesser und Drehzahl gilt folgender Zusammenhang:

$$v = π * d * n$$

Daraus ergibt sich für den ersten Schnitt

n1 = 397,89 min-1

und für die Vorschubgeschwindigkeit

$$v = n_{1} * f_{1}$$

Die übrigen Schnitte ergeben sich analog.

3. Lösungsschritt

Um die Bestimmung der Bewegungsanweisungen zu vereinfachen, lässt sich durch eine Nullpunktverschiebung der Maschinennullpunkt in den Werkstücknullpunkt verlegen. Hierdurch können die Maßangaben der Werkstückzeichnung weitgehend in das Programm übernommen werden.

Grundsätzlich bestehen zwei verschiedene Möglichkeiten der Nullpunktverschiebung. Unter Verwendung der Anweisungen G53 bis G59 erfolgt die Nullpunktverschiebung ausgehend von einem der Steuerung bekannten Bezugspunkt. Ein Bezugspunkt kann in diesem Fall beispielsweise der Maschinennullpunkt M sein.

Bei Verwendung der Anweisung G54 wird das Werkstück-Koordinatensystem in Bezug auf den Maschinennullpunkt festgelegt. Das Maschinenkoordinatensystem wird hier um 60 mm in Z-Richtung verschoben.

Eine andere Möglichkeit der Nullpunktverschiebung bietet das Setzen des Istwert-Speichers durch den Befehl G92. Die Werte der aktuellen Position werden im Speicher gesetzt und können so indirekt den Nullpunkt des Werkstückes festlegen.

 KommentarVerfahrwegDrehzahlVorschubNGXZIKFSTM
  xzn[min-1]f[m/U]          
1Programmanfang    %         
2Nullpunktverschiebung60130  N10G92X60Z130      
3Spindel ein, Wrkz.1  398 N20G04X2000    S398T0106M04
4Absolutbemaßung    N30G90        
5Zustellen, R → 1Ø 8082 EILN40G00X80Z82      
61. Schnitt, 1 → 2Ø 8018,183 199N50G01 Z18,183  F199   
7Abheben, 2 → 3Ø 8420 EilN60G00X84Z20      
8Rückfahren, 3 → 4Ø 8482530EilN70  Z82   S530  
9Zustellen, 4 → 5Ø 6026,733 EilN80 X60       
102. Schnitt, 5 → 6Ø 6026,733 265N90G01 Z26,733  F265   
11Abheben, 6 → 7Ø 6428 EilN100G00X65Z28      
12Rückfahren, 7 → 8Ø 6482758EilN110  Z82   S758  
13Zustellen, 8 → 9Ø 4282 EilN120 X42       
14Inkrementalbemaßung    N130G91        
153. Schnitt, 9 → 100–12 379N140G01 Z-12  F379   
16Verweilzeit  612 N150G04X1000    S612  
174. Schnitt, 10 → 115–15 306N160G01X5Z-15  F306   
185. Schnitt, 11 → 120–15  N170  Z-15      
19Verweilzeit  318 N180G04X1000    S318  
206. Schnitt, 12 → 1324–24 159N190G02X24Z-24124 F159  
21Absolutbemaßung    N200G90        
22Rückfahr RØ 120130796 N210G00X120Z130   S796  
23Fahrzeugwechsel    N220       T0207 
24Zustellen, R → 14Ø 4082  N230 X40Z82      
25Inkrementalbemaßung    N240G91        
267. Schnitt, 14→ 150–12 80N250G01Z-12Z-12  F80   
27Verweilzeit  637 N260G04X1000    S637  
288. Schnitt, 15 → 165–15 64N270G01X5Z-15  F65   
299. Schnitt, 16 → 170–15  N280  Z-15      
30Verweilzeit  318 N290G04X1000     S318 
3110. Schnitt, 17 → 1825–25 32N300G02X25Z-25125 F32   
32Absolutbemaßung    N310G90        
33Rückfahrt R, Spindel ausØ 120130  N320G00X120Z130     M05
34Ende    N330        M30

04. Wie erfolgt die maschinelle Programmierung?

Für den wirtschaftlichen Einsatz von NC-Maschinen ist die schnelle und sichere Erstellung des Steuerprogramms eine wesentliche Voraussetzung. Zur Entlastung des Programmierers wurden daher rechnergestützte Programmierverfahren entwickelt, die häufig wiederkehrende, zeitaufwändige und Fehler verursachende Tätigkeiten weitgehend automatisieren. Bei der maschinellen Programmierung wird die Werkstückbearbeitung mittels einer problemorientierten Sprache oder grafisch-interaktiv beschrieben. Problemorientierte Sprachen verwenden mnemotechnische Ausdrücke, d. h. Wörter und Symbole, die leicht zu merken sind, während grafisch-interaktive Systeme dem Benutzer die Programmerstellung dialogisch und mit grafischen Erläuterungen ermöglichen.

Zunächst wird das Teile-Programm allgemeingültig für alle Werkzeugmaschinen und unabhängig von der verwendeten Steuerung erstellt und übersetzt, die geometrischen und arithmetischen Anweisungen berechnet, Unterprogramme eingefügt und eine Fehleranalyse durchgeführt. Das Ergebnis wird satzweise in einem Daten-Zwischenformat (in der Regel CLDATA nach DIN 66215) gespeichert. Anschließend wird es durch den Postprozessor in eine der NC-Maschine angepasste Form gebracht.

Die maschinellen Programmiersysteme lassen sich grundsätzlich in geometrieorientierte Systeme und technologieorientierte Systeme unterteilen.

Die geometrieorientierten Systeme übernehmen die Codierung der Steuerdaten und die geometrischen Berechnungen. Den geometrisch orientierten Programmierverfahren ist gemeinsam, dass die Ermittlung der technologischen Daten und damit die Verantwortung für die Qualität des Fertigungsablaufs nach wie vor beim Programmierer liegen.

Die technologieorientierten Systeme bieten neben geometrischen auch technologische Ermittlungsmethoden an. Mit diesen Systemen können Arbeitsabläufe, Werkzeuge, Schnittwerte und Werkzeugwege automatisch ermittelt werden. Dabei unterstützen diese Systeme die gängigsten Fertigungsverfahren Drehen, Bohren und Fräsen. Hingegen wird das 5-Achsen-Fräsen nur von wenigen Systemen beherrscht.

Als universelle Programmiersprache gilt APT (Automatically Programmed Tools). Aus dieser ca. 300 symbolische Wörter umfassenden Sprache, sind aufgrund der damals hohen Anforderungen an die Rechnerkapazität zahlreiche andere Sprachen hervorgegangen, wie ADAPT, EXAPT, MINIAPT u. a. Aus diesem Grund ist auch der Übergang von einer Sprache zur anderen unproblematisch.