Hochschule München - fb06.fh-muenchen.de€¦ · SoMachine als auch die Einbindung der Codesys...
Transcript of Hochschule München - fb06.fh-muenchen.de€¦ · SoMachine als auch die Einbindung der Codesys...
Hochschule München Fakultät für angewandte Naturwissenschaften und Mechatronik
Thema:
Entwicklung eines Postprozessors für ein Fräsportal
von
Marcos Glausch
Matrikelnummer: 06177208
Studienrichtung Mechatronik und Feinwerktechnik
zur
Erlangung des akademischen Grades
Bachelor of Engineering
(B. Eng.)
Betreuer: Prof. Dr. Dieter Haller
Prof. Dr. Georg Herndl
Eingereicht: 01.12.2014
BACHELORARBEIT
Erklärung des Bearbeiters
Name Vorname
Ich erkläre hiermit, dass ich die vorliegende Arbeit selbstständig angefertigt habe. Es wurden
nur die in der Arbeit ausdrücklich benannten Quellen und Hilfsmittel benutzt. Wörtlich oder
sinngemäß übernommenes Gedankengut habe als solches kenntlich gemacht.
Ort, Datum Unterschrift
Kurzfassung /Abstract
Kurzfassung
Thema: Entwicklung eines Postprozessors für ein Fräsportal
Beschreibung:
Das Fräsportal der Firma Schneider Electric ist eine 5-Achs-CNC-Bearbeitungsmaschine, die
das Bearbeiten von Glasscheiben in besonderer Form ermöglicht. Mit Hilfe ihrer Software
„SoMaschine“ können beispielsweise in CATIA V5 generierte 3D Modelle in Form einer
Frontscheibe aus dem NC Code hergestellt werden. Ziel der Bachelorarbeit ist, die Fahrwege
für die Bearbeitung von Plexiglas zu korrigieren. Es soll ein neuer Postprozessor für die
richtige Generierung des NC Codes entwickelt werden. In vorhergehenden Arbeiten wurde
das 5-Achs-Fräsportal mit passender Software erweitert und ein Fräskopf mit den zwei
zusätzlichen Achsen gefertigt.
Abstract
Topic: Developing a Postprocessor for a milling machine
Description:
The milling machine of Scheider Electric is a 5-axis CNC machine tool, which allows to
finish panes of glass in a special form. The software from the same company "SoMaschine",
can integrate for example, NC codes of windshield 3D models generated by CATIA V5. The
aim of this bachelor thesis is to correct the milling routes on the NC codes. Therefore, a new
specific post processor has to be developed to generate NC codes correctly. In the previous
bachelor thesis, the 5-axis milling machine has been improved with proper software and
complemented a with two additional axes milling head.
Danksagung
Danksagung
An dieser Stelle möchte ich mich zunächst bei allen denjenigen bedanken, die mich während
der Anfertigung dieser Bachelorarbeit unterstützt und motiviert haben.
Ganz besonders gilt dieser Dank Herrn Prof. Dr. Dieter Haller, der mir mit hilfreichen
Informationen und Tipps geholfen hat.
Ich danke meiner Familie und meinen Freunden, auf deren Unterstützung ich immer während
meines Studiums zählen konnte. Sie haben mich ständig motiviert und somit wesentlich zum
Erfolg meines Studiums beigetragen.
Inhaltsverzeichnis
Inhaltsverzeichnis
Einleitung .........................................................................................................................................1
1 CATIA V5-Integration .........................................................................................................2
1.1 Voreinstellungen ..................................................................................................................2
1.2 Das Produkt fastPOST .........................................................................................................2
1.3 fastPOST Runtime innerhalb CATIA V5 ............................................................................3
1.4 Auswahl des richtigen Modus „Advanced Machining“ .......................................................4
1.5 NC-Code interaktiv generieren ............................................................................................5
2 Postprozessor ........................................................................................................................7
2.1 Definition .............................................................................................................................7
2.2 Postprozessortypen ...............................................................................................................8
2.2.1 Individuelle Einzellösung .....................................................................................................8
2.2.2 Generalisierter Postprozessor ...............................................................................................8
2.2.3 Postprozessorgenerator .........................................................................................................8
2.3 Unabhängigkeit der Drehachse ............................................................................................9
2.3.1 Table – Table:.......................................................................................................................9
2.3.2 Head – Head: ........................................................................................................................9
2.3.3 Head – Table: .......................................................................................................................9
3 EDGECAM 2014 R2 ........................................................................................................ 10
4 Entwicklung des Postprozessors für das 5-Achsen Fräsportal ......................................... 13
4.1 Aufgabe des Postprozessors .............................................................................................. 13
5 Generierung des Postprozessors mit „Code Wizard“ ........................................................ 14
5.1.1 Machine Parameters Dialog - Registerkarte Maschinenparameter ................................... 16
5.1.2 Machine Parameters Dialog - Registerkarte Turret (Revolver)......................................... 22
5.1.3 Machine Parameters Dialog - Registerkarte - Spindle Gears Tab ..................................... 26
5.1.4 Machine Parameters Dialog - Registerkarte - Gears Tab .................................................. 27
5.1.5 Machine Parameters Dialog - Registerkarte - Rotary Axes Tab ....................................... 27
5.2 Format Table ..................................................................................................................... 28
5.3 NC Style, G-Codes & Modality ........................................................................................ 31
5.4 Code Constructors ............................................................................................................. 32
5.5 M - Funktionen .................................................................................................................. 34
6 Fehler Analyse des X-Projekt 5 Axis-project - So Machine ............................................. 35
6.1 Fehler bei der Initialisierung der A- und C- Rotationsachse von Nanotec ........................ 35
6.2 Fehler beim Starten der A- und C- Rotationsachse ........................................................... 36
Inhaltsverzeichnis
6.3 Überprüfungen der Verkabelung, Stromversorgung ......................................................... 37
6.4 Programmierungsfehler beim Hochladen der generierten .txt - Datei ............................... 37
7. Bewertung der Arbeit ........................................................................................................ 38
8. Literaturverzeichnis ........................................................................................................... 39
9. Abbildungsverzeichnis ...................................................................................................... 40
10. Anhang .............................................................................................................................. 41
Einleitung
1
Einleitung
Das Gesamtprojekt gliedert sich in mehrere Teilbereiche, die bereits in vorherigen Praktika -
und Bachelorarbeiten bearbeitet wurden. Dadurch wurde die Grundlage für das 5-Achs-
Fräsportal geschaffen. Es wurde ein 3-Achs-Fräsportal der Firma Schneider Electric
installiert. Dieses wird über eine SPS-Steuerung vom Typ LMC058LF42SO Modicon Motion
Controller geführt. Aus vorherigen Bachelorarbeiten wurden bereits unter anderem die
Software entwickelt und ein Fräskopf mit zwei zusätzlichen Achsen für die
Rotationsbewegung gefertigt.
Bei der Software-Entwicklung sind sowohl die gesamte Programmbeschreibung des
SoMachine als auch die Einbindung der Codesys erklärt worden. Für die Generierung des
neuen Postprozessors sind aus dieser Bachelorarbeit die ersten Voreinstellungen in Catia zu
entnehmen.
Die Erstellung des neuen Postprozessors wird in dieser Arbeit mit Hilfe des Programms Code
Wizard aus der Software Edgecam unterstützt. Dies soll unter anderem die gesamte
Konfiguration, Programmierung und Simulation des Postprozessors erstellen.
[1] Online Hilfe „CATIA V5“.Stichwort „NC-Code“
[2] Online Hilfe „CATIA V5“.Stichwort „Postprozessor“
[3] Online Hilfe „CATIA V5“.Stichwort „Advanced Machining“
2
1 CATIA V5-Integration
Aus vorheriger Arbeit sind bereits die 3D Modelle der Scheibe gezeichnet und die ersten
Einstellungen für die Generierung der NC - Code getroffen. Allerdings sind für die
Generierung der G-Codes noch weitere Anforderungen nötig. Ein Teil ist die Erstellung eines
Postprozessors für das 5-Achs-Fräsportal von Firma Schneider Electric.
1.1 Voreinstellungen
Für CATIA V5 werden von verschiedenen Herstellern Softwarelösungen zu Postprozessoren
angeboten. Im Lieferumfang von CATIA V5 sind bereits Postprozessoren von verschiedenen
Herstellern (CENIT, IMS, ICAM) für gängige Werkzeugmaschinensteuerungen enthalten. Es
können auch selbstentwickelte Lösungen integriert werden. In den folgenden Abbildungen
werden die Einstellungen vom Hersteller und der Pfade zum Postprozessor und Ressourcen
dargestellt.
1.2 Das Produkt fastPOST
Das Produkt fastPOST (bis Ende 2009 als cPost bekannt) wurde im Rahmen der CAA-
Partnerschaft der Fa. CENIT AG mit Dessault Systems entwickelt und besteht aus den
Modulen fastPost Runtime (Laufzeitmodul) und fastPOST Builder (Postprozessorgenerator).
Für die grafischen Benutzeroberflächen der beiden Produkte wird ein JAVA Runtime
Environment benötigt.
Abbildung 1: Dialog: NC-Fertigung Optionen
3
1.3 fastPOST Runtime innerhalb CATIA V5
Im Lieferumfang von CATIA V5 steht das Modul fastPOST Runtime als integrierte Lösung
in der Manufacturing-Infrastruktur ohne eine zusätzliche Lizenz zur Verfügung. Außerdem
sind bereits einige Parameterdateien für gängige Maschinensteuerungen erhalten und stellen
damit bereits lauffähige Postprozessoren bereit. Voraussetzung zur Nutzung dieser CENIT-
Lösung ist die nebenstehende Einstellung im Dialog:
Abbildung 2: Dialog: Postprozessoreinstellung
Der Aufruf des fastPOST Runtime Moduls
(Postprozessorlauf) erfolgt dann in CATIA
über das Icon „NC-Code generieren“, sofern
in dem Dialog als NC-Datentyp „NC-Code“
eingestellt wurde. Damit wird zunächst
grundsätzlich eine APT-Datei und danach
über den eingestellten Postprozessor die
steuerungsspezifische NC-Datei erstellt. Die
Einstellung des zu verwendenden
Postprozessors erfolgt in dem Karteireiter
NC-Code. Wichtig ist dabei, in der
Aufspannung die dazu passende
Postprozessortabelle einzustellen, nach der
die APT-Syntax der Ausgabe definiert wird.
Abbildung 3: Dialog: NC-Datentyp
4
1.4 Auswahl des richtigen Modus „Advanced Machining“
Nach Laden der Step-Datei des BMW-Frontscheiben Prototypes wird der Modus über den
Pfad „Start/NC-Fertigung/Advanced Machining „ gewechselt.
Man selektiert die Frontscheibe und wählt in
der Menü-Leiste durch einen Rechtsklick die 5-
Achskonturfräse.
Es öffnet sich die Einstellung der Konturfräse.
In diesem Menü wählt man die Randelemente
durch einen Klick auf die orangefarbene Fläche,
in diesem Fall die vier Seiten der Frontscheibe.
Hier hat man unter anderem die Möglichkeit der
Bearbeitung der Schnittrichtung durch Auswahl
von Gleichlauf oder Gegenlauf. Um eine
optimale Oberfläche zu erhalten, wählt man
Gleichlauf.
Abbildung 4: Dialog: Auswahl der Modus „Advanced Machining“
Abbildung 5: Dialog: Auswahl 5-
Achskonturfräsen
Abbildung 6: Dialog: Auswahl der Randelemente
5
Die maximale Schnitttiefe kann unter dem
Reiter „Axial“ bestimmt werden. Des
Weiteren soll die Werkzeuge-Achse
tangential zu Oberfläche sein. Dies lässt
sich durch Auswahl „Senkrecht zur
Randfläche“ im Reiter Werkzeugachse
eingeben.
Im nächsten Dialog-Fenster werden noch einmal
die Kontur und die Fläche ausgewählt. Die Pfeile
sollen senkrecht zur Oberfläche der Frontscheibe
dargestellt werden. Eine Auswahl der Werkzeuge
und ihrer Größe können in der Registerkarte
Werkzeugbeschreibung getroffen werden.
1.5 NC-Code interaktiv generieren
Im weiteren Verlauf kann mit der Generierung des G-Codes begonnen werden, durch einen
Rechtsklick auf „Herstellungsprogramm.1/Objekt Herstellungsprogramm.1/NC-Code
interaktiv generieren“.
Abbildung 7: Dialog: Auswahl Schnitttiefe und
Werkzeugachse
Abbildung 8: Dialog: Einstellung des
Konturfräsens
Abbildung 9: Dialog: NC-Code generieren
6
Bei geöffnetem Dialog-Fenster werden die
letzten Einstellungen vor der Generierung des
NC-Codes eingegeben. Im Reiter „Ein/Aus“
wird die Speicherart der Ausgabedatei bestimmt.
Unter der Registerkarte NC-Code kann eine
Auswahl für einen passenden Postprozessor in
der Cenit-Postprozessordatei getroffen werden.
Da für das Schneider-Electric Fräsportal kein
solcher vorhanden ist, muss ein geeigneter neuer
Postprozessor programmiert werden.
Abbildung 10: Dialog: Auswahl des Postprozessors Abbildung 11: Dialog: Auswahlmöglichkeit NC-
Code Konfiguration
7
2 Postprozessor
2.1 Definition
Ein Postprozessor ist ein Computerprogramm, das die Ergebnisse eines anderen Programms
in ein neues Format umwandelt.
Bei CNC-Maschinen in der Fertigung dient ein Postprozessor beispielsweise dazu, ein
maschinenunabhängiges Programm, das die Herstellung eines Werkstücks beschreibt, in ein
maschinenabhängiges Format zu wandeln. Ein allgemein verwendbares Programm dient zur
Erarbeitung der einzelnen Schritte. Jede Maschine kann dann ihren speziellen Postprozessor
haben, der das Format in ein für sie lesbares Format konvertiert.
In der Regel liest ein Postprozessor Daten im APT-Format (Automatically Programmed Tool)
ein, das stark an die APT- Programmiersprache angelehnt ist. In einigen Fällen wird als Basis
für den Postprozessorlauf das CLDATA-Format nach DIN 66125 verwendet.
Der Postprozessor erzeugt aus dem APT- oder CLDATA-File die NC Anweisungen unter
Berücksichtigung des spezifischen Befehlssatzes der zu verwendenden NC-Steuerung. Die
folgende Tabelle zeigt einen Auszug aus einer APT-Ausgabe und die entsprechende
Umsetzung der Anweisung durch den Postprozessor im NC-Code:
APT-Code NC-Code
1 LOADTL/1 N5 T1 M66
(Werkzeugwechsel)
2 SPINDL/ 70.0000,RPM,CLW N6 G0 X93.2 Y100.323 Z10 S70 M13
(Spindel ein, 70 1/min, ClockWise)
RAPID
(Verfahren im Eilgang)
GOTO/ 93.20000, 100.32264, 10.00000
(zu den Achsenwerten)
3 FEDRAT/ 300:0000; MMPM N7 G1 Y0 F300
(Verfahren Vorschub 300 mm/min)
GOTO/ 93.20000, 100.32264, 0.00000
(zu den Achswerten)
Die Umwandlung des APTSOURCE bzw. der CLDATA in NC- Steuerungssätze (z.B. nach
DIN 66028) ist eine der wichtigsten Aufgaben des NC-Postprozessors (Format-
Konvertierung). Gleichzeitig hat er die Aufgabe, alle spezifischen Randbedingungen der NC-
Maschine, z.B. die programmierten Verfahr-Wege, gegen die maximale Länge der
Maschinen-Verfahr-Wege zu prüfen, die Verfahr-Richtung in Abhängigkeit davon
festzulegen, ob das Werkzeug oder das Werkstück bewegt wird, steuerungseigene Zyklen
aufzurufen und Optimierungen zur Verminderung der Bearbeitungsnebenzeiten zu berechnen.
8
2.2 Postprozessortypen
Man unterscheidet grundsätzlich drei verschiedene Methoden zur Erstellung bzw.
Anwendung von NC-Postprozessoren.
2.2.1 Individuelle Einzellösung
Der Postprozessor wird spezifisch für eine Steuerung-Maschinen-Kombination erstellt. Dabei
werden der volle Leistungsumfang sowie alle programmtechnischen Besonderheiten eines
Maschinen-/Steuerungskonzepts, insbesondere die Bearbeitungszyklen, berücksichtigt. Damit
werden weniger Programmsätze und kürzere Bearbeitungszeiten erzeugt. Vorteilhaft wirkt
sich ebenso die kompatible Editierbarkeit der konvertierten Steuerungsprogramme für den
Maschinenbediener beim Programmeinfahren aus. Nachteilig sind die höheren
Softwarekosten.
2.2.2 Generalisierter Postprozessor
Hier sind alle für ein Arbeitsverfahren (z.B. Fräsen) typischen Aufgaben der Übersetzung und
Abprüfung zunächst allgemeingültig parametriert programmiert. Unter Zuhilfenahme von
Parameterdateien, welche die spezifischen Eigenheiten der einzusetzenden Steuerung und der
NC-Maschine berücksichtigen, erfolgt bei der Anwendung des generalisierten Postprozessors
über den Zugriff auf die spezifischen Werte eine Anpassung. Nachteilig wirkt sich bei der
Konvertierung die Auflösung in elementare Werkzeug-Verfahr-Bewegungen aus, wodurch
man viele Programmsätze erzeugt und die Editierbarkeit erschwert.
2.2.3 Postprozessorgenerator
Dabei handelt es sich um eine Software, die ebenfalls unter Zugriff auf steuerungs- und
maschinenspezifische Werte vorprogrammierte Postprozessoralgorithmen so verändert, dass
ein ganz spezifischer Postprozessor daraus erzeugt wird. Dies ist insbesondere eine Methode
der Software-Erstellung, wie sie von Software-Herstellern zur Erstellung eines spezifischen
Postprozessors verwendet wird.
[4] Abbildung von Internetseite: http://youtu.be/zpx6dOgNJHA
9
2.3 Unabhängigkeit der Drehachse
Um einen Postprozessor richtig zu generieren, ist Wissen über die Unabhängigkeit der Achse
der Maschine erforderlich. Nachfolgend werden drei gewöhnliche, häufig verwendete
Fräsmaschinen dargestellt.
2.3.1 Table – Table:
Hier handelt es sich um eine Table-Table-
Maschine. Zu sehen sind die X - Y - Z
Achsen, die lineare Bewegungen ausüben. In
diesem Fall liegt die Z-Achse im rechten
Winkel zur Y-Achse. Für die
Rotationsbewegung sind die Achsen A und
B zuständig. Die Lage der A-Achse
festzustellen, ist erst nach der Positionierung
der B-Achse möglich. Man bezeichnet sie
deswegen als eine „ Abhängige Achse“.
2.3.2 Head – Head:
Hier handelt es sich um eine Head-Head-
Maschine. Im Gegensatz zu der Table-
Table-Maschine ist die Z-Achse hier
senkrecht zu X-Achse dargestellt. Für die
Rotationsbewegung sind die Achsen A und
C zuständig. Dabei rotiert die C-Achse um
die Z-Achse. Hier ist die A-Achse abhängig
von der C-Achse. Die Lage der A- Achse
festzustellen, ist erst nach der Positionierung
der C-Achse möglich.
2.3.3 Head – Table:
Hier handelt es sich um eine Head-Table-
Maschine. Die Anordnung der linearen
Achsen sind analog zur Table-Table
Maschine. Im Gegensatz zu den beiden
vorherigen Beispielen sind hier die
Rotationsachsen nicht voneinander
abhängig.
Abbildung 14: Fräsen-Typ: Head-Table
Abbildung 12: Fräsen-Typ: Table-Table
Abbildung 13: Fräsen-Typ: Head-Head
[5] Abbildung von Internetseite: http://www.c-cam.de/edgecam.html
10
3 EDGECAM 2014 R2
Abbildung 15: Solidworks & Edgecam
Edgecam ist ein System von CAM (Computer Aided Manufacturing) für die Produktion,
Bearbeitung und Werkzeug- und Formenbau. Die Software verfügt über Module für Fräsen
und Drehen bis 5-Achs-Bearbeitung von Oberflächen, angetriebene Werkzeuge, zwei
Türmen, C & Y, B-Achse, Gegenspindel, dem Drahterodieren und andere Achsen. Als
Windows-basiertes Betriebssystem, hat Edgecam Automatisierungstools wie die Verwaltung
von Prozessbeschreibungen, Werkzeug Shop, Code-Wizard und Bearbeitung Simulator.
Darüber hinaus bietet Edgecam eine komplette Bibliothek von Bearbeitungstechnologien und
Datenbankwerkzeugen. Die Software unterstützt auch die direkte Übersetzung von Dateien
wie Solidworks, Inventor, Pro / E, CATIA und Solidedge sowie anderen beliebten CAD-
Systemen auf dem Markt, entwickelt von der britischen Firma Planit Holdings plc.
Allgemeine Informationen:
Das Programm ist sehr einfach zu bedienen, übersichtlich gestaltet und das Erlernen ist leicht,
die Bearbeitung bietet dynamische Hilfe.
CAD Schnittstellen
Alle gängigen CAD-Formate können direkt eingeladen werden.
Assoziativität
Alle Änderungen im CAD werden sofort im CAM gemeldet und alle Werkzeugbahnen
werden mit einem Klick wieder angepasst.
Abbildung 16: Auswerfer.ppf - Edgecam
Abbildung 17: 3D-CAD-Programme
11
Werkzeug- und Technologie-
Datenbank
Es steht eine schnelle SQL-Datenbank mit
3D-Werkzeugenund Material-spezifischen
Technologie-Parametern zur Verfügung.
Bearbeitungszeiten
Dies eignet sich sehr gut zur Kalkulation.
Die exakte Zeit wird unter Berücksichtigung
der Geschwindigkeit jeder Achse,
Werkzeugwechsel- und Schwenkzeiten
berechnet.
Arbeitspläne
Automatische Einrichteblätter werden mit Werkzeugliste und Aufspann-Skizze erstellt.
Feature-Erkennung
Ein automatisches Erkennen von differenzierten Dreh- und Fräsfeatures ist möglich.
Automatisierung
Der Strategie-Manager und alle Prozesse mittels Makro-Technik können automatisch
programmiert werden.
Maschinen-Simulation
Die vollständige Maschine wird inkl. Berücksichtigung
der Kinematik bei der Programmierung und Simulation
dargestellt.
Abbildung 19: CNC-Maschinen
Postprozessoren
Unabhängig von der Steuerung und Kinematik werden die Postprozessoren selbst geschrieben
und vor-Ort getestet.
Abbildung 18: Edgecam 14.0 Multi-Flute Ende Mill
Abbildung 20: Bearbeitete 3D-Modelle
12
Fräsen
- Feature-Erkennungen
- Die Bohrungen, Taschen, Außenkonturen, offenen Taschen, Nuten, Planflächen wer-
den automatisch erkannt.
- Leistungsfähige Frässtrategien
z.B. erfolgt Nutfräsen auf Feature-Basis im Pendelbetrieb und wellenförmiges Schrup-
pen.3D-Fräs-Zyklen, z.B. Schlichten in Z-Stufen, Konturparallel 3D-Schlichten, achspa-
rallel Schlichten, Fließkurven folgen 5-Achsen-simultan mit vielfältigsten Steuerungs-
möglichkeiten für Werkzeugwinkel und Konturen, sowie Stoppflächen und Projektions-
elementen.
Abbildung 21: 5-Achsen-simultan
Drehen
- Feature-Erkennung
Die Innen- und Außen-Drehkonturen auf Haupt- und Gegenspindel, Einstiche, Lochkreise
und Gewinde werden automatisch erkannt.
- Shopfloor-Editor
Eingeschränkte Anpassungen in reduzierter Edgecam-Oberfläche durch
Maschinenbediener in der Nachtschicht oder beim Einfahren sind möglich. Änderungen
werden in Edgecam gespeichert.
Probing
Messtaster und Mess-Zyklen können direkt in Edgecam unterstützt werden.
Postprozessor-Assistent
Hier kann man Postprozessoren selbst erstellen.
Abbildung 22: Drehen aktuelles Rohrmaterial Abbildung 23: Einstich Steg-2
13
Abbildung 24: Start
Code Wizard
4 Entwicklung des Postprozessors für das 5-Achsen Fräsportal
Um einen Postprozessor zu generieren, muss vorab geklärt werden, was zur Erstellung
benötigt wird. Grundlegende Fragen sind, wie man den Prozessor einrichtet und eine
Simulation der Maschine in den Postprozessor einfügt.
4.1 Aufgabe des Postprozessors
Ein Postprozessor ist die Datei, die den Code bzw. die grafische Sprache in die numerische
Sprache umwandelt. Er übermittelt dem NC Code Generator die nötigen Eigenschaften der
Maschine wie die maximale Drehzahl, Interpolationen, Vorschub-Geschwindigkeit,
maximaler Radius, Werkzeuge, d.h. die gesamte Struktur für die Programmierung der
Maschine. Dies ist notwendig, um den Code der Maschine im Edgecam vollständig zur
erzeugen. Daraus folgt, dass für jede Maschinensteuerung ein passender Postprozessor
gebraucht wird. Beispielsweise wird für eine Maschine mit Siemens-Kommandos ein
Prozessor mit Parametern von Siemens benötigt.
Ein weiterer sehr wichtiger Faktor ist, dafür zu sorgen, dass Edgecam nur richtige
Einstellungen erzeugt. Wenn der Postprozessor nicht richtig konfiguriert wurde, d.h. nicht
richtig grafisch programmiert ist, ist die Simulation unvollständig. In diesem Fall funktioniert
Edgecam erst korrekt, wenn ein richtiger Postprozessor entwickelt wurde, um das zuvor
Programmierte zu generieren. Vorteilhaft für Programmierer ist, dass
Edgecam einen eigenen Compiler besitzt, also unabhängig von anderer
CAM-Software ist. Man bezeichnet den Edgecam Postprozessor als
„offenen Postprozessor“. Dies bedeutet, dass man für die Erstellung
dessen ein eigenes Interface hat. Der Benutzer kann dementsprechend
das Programm des Postprozessors bearbeiten. Um in Edgecam einen
Postprozessor zu entwickeln, nutzt man das Programm „Code-
Wizard“. Dies ist in der Software von Edgecam verfügbar und für den
Aufbau der Postprozessor-Datei verantwortlich.
Maschinensteuerung
Siemens
Postprocessor
Mitsubishi
Postprocessor
Schneider Electric
Postprocessor
Siemens
Edgecam Maschinensteuerung
Schneider Electric
Maschinensteuerung
Mitsubishi
NC - Programm Edgecam
14
5 Generierung des Postprozessors
mit „Code Wizard“
Das Programm Code Wizard wird geöffnet und
anschließend eine neue Datei erstellt. Danach
wählt man den Maschinen-Typ, für diesen Fall:
„Mill“ (Fräsen).
Es öffnet sich in Code Wizard die erste
Konfiguration des Postprozessors. Wie
bereits in den Kapitel 2.3.2 beschrieben,
handelt es sich hier um eine Head-Head
Maschine. Man wählt nun beim Typ der
Maschine „Gantry“, um Voreinstellungen
zu treffen. Beim Rotary Head ist die
Reihenfolge zu beachten, da die A-Achse
in Abhängigkeit zur C-Achse steht. Man
wählt als „First“ erst die C-Achse, die um
die Z-Achse rotiert. Als „Second“ wird
die A-Achse ausgewählt, die von -90° bis
+ 90° um die Z-Achse schwenkt. In dem
Fall wird keine zusätzliche Achse in Z-
Richtung benötigt. Unter Name sind
vorgegebene Vorlagen aufgelistet. Diese
sollen je nach Maschinen-Hersteller die
ersten Vorprogrammierten Einstellungen
des Postprozessors einrichten. Diese
Templates sind vorteilhaft, denn es
werden mit der neuen Edgecam Version
automatische Vorlagen aktualisiert. Man
wählt hier das adaptive-mill-iso.cgt, da es
sich um einen neuen Hersteller handelt.
Abbildung 25: Auswahl der CNC-Maschine
Abbildung 26: Dialog: Auswahlmöglichkeit der Fräsen-
Typen
15
Durch einen Klick auf die Schaltfläche
akzeptiert man die Standard-Einstellungen
INITIALLY. Es folgt eine ähnliche Einstellung
wie in der Abbildung 27. Es werden die Teile
auf eine ortsfeste Basis und die Position der
primären Komponente unter dem Maschinen-
Baum platziert, anstatt in einer X-Achse oder
Y-Verzweigung. Der ATC-ONE HEAD
befindet sich am Ende des Achsen-Baumes.
Der Graphik-Bezugspunkt ist in der
Spindelnase positioniert. Die A-Achse hat die
positiven Koordinaten der Z-Richtung. Sie
entspricht dem Abstand vom Graphik-
Bezugspunkt bis auf ihre eigene Achse,
welcher auf dem Koordinatenursprung 0,0,0
liegt.
Die Entwicklung des Postprozessors ist allgemein
in 2 Hauptteile untergliedert: „Machine Setup“
und „Code Generator“. In der Machine Setup
werden die physikalischen Größen der
Fräsmaschine eingegeben. Beispielsweise
minimale und maximale lineare Bewegung bzw.
Rotationsbewegungen, Richtungen entlang der
Achse, max. Radius, Länge, Breite, Höhe der
Fräsmaschine.
In Code Generator öffnen sich die
wesentlichen Schritte zur Erstellung eines
neuen Postprozessors. Nach dargestellter
Reihenfolge konfiguriert man den richtigen
passenden Postprozessor. Man gibt den
Namen des Postprozessors ein. Durch einen
Klick auf Next öffnet sich das erste
Einstellungs-Fenster „Machine Parameters“.
Es sollen insgesamt 5 Wesentliche Schritte
durchgeführt werden.
Abbildung 27: Auswahl Gantry -Typ Head-Head
Machine
Abbildung 29: 5-Schritte zur Erstellung des
Postprozessors
Abbildung 28: Hauptteile zur Generierung des
neuen Postprozessors: Code Generator und
Maschine Setup
[6] Online Hilfe „Code Wizard”.Stichwort „Machine Parameters“
16
5.1.1 Machine Parameters Dialog - Registerkarte Maschinenparameter
Man verwendet den Reiter „Machine Parameters“, um Parameter einzugeben bzw. zu
bearbeiten. Diese sind Informationen über die physikalische Konfiguration der
Werkzeugmaschine, wie beispielsweise die Werkzeugwechsel-Position, Drehzahl, Vorschub-
Geschwindigkeit. Hier sind einige mögliche Einstellungen der Registerkarte
„Maschinenparameter“ zu bestimmen. Diese sind in ihrem Vorhandensein abhängig von der
gewählten Vorlage.
Abbildung 30: Dialog: Machine Parameters
17
Machine Name
In dem Feld „Machine Name“ gibt man den Namen der Maschine ein. Weiter soll man die
Einheitsgröße definieren. Hier sind Metrisch oder Zoll auszuwählen. Die Einheit spielt eine
wichtige Rolle für die grafische Darstellung der Fräsmaschine.
Die Default Extension for NC File (Standarderweiterung für NC-Datei)
Für die NC-Datei muss eine Standarderweiterung (ohne den Punkt vor der Dateierweiterung)
eingegeben werden. Diese Option wird nur verwendet, wenn beim Generieren vom CNC-
Code keine NC-Dateierweiterung angegeben wird, und hat Vorrang vor der
Standarderweiterung, die im Menü Options (Optionen) ► Preferences (Einstellungen) ►
Registerkarte Toolpaths (Werkzeugwege) ► Default NC File Extension (NC-Datei-
Standarderweiterung) angegeben wird.
Initial Plane (Ausgangsebene)
In der Initial Plane wird die Ausgangsebene (standardmäßige lichte Höhe) eingegeben, die für
die Werkzeugmaschine zur Anwendung kommen soll.
Helical Arc Capability (Unterstützung von Schraubenlinien)
Eine der folgenden Einstellungen soll vorgenommen werden:
- Not Supported (Keine Unterstützung)
Hier werden Schraubenlinien als Folge linearer Bewegungen ausgegeben.
- Quadrant (Quadrant)
Schraubenlinien werden in Form einzelner Quadranten ausgegeben.
- Single Turn (Einzelne Umdrehung)
Die Winkelbewegung von Schraubenlinien beträgt maximal 360°. Für eine größere Zahl von
Umdrehungen wird eine Reihe von Schraubenlinien ausgegeben.
- Multi Turn (Unbegrenzte Umdrehungen)
Die Winkelbewegung der Schraubenlinien ist nicht begrenzt.
Maximum Programmable Radius (Maximaler programmierbarer Radius)
Der maximale Radius ist der, dem die Steuerung in Form einer bogenförmigen Bewegung
folgen kann. Bögen mit größeren Radien werden als Reihen linearer
Interpolationsbewegungen ausgegeben.
CRC Helical Support (Unterstützung von CRC für Schraubenlinien)
Diese Option wird nur aktiviert, wenn die Maschine eine zyklische Redundanzprüfung (CRC)
für Schraubenlinienbewegungen durchführen kann.
Resolved Rapids (Auflösung von Eilgangbewegungen)
Diese Option wird aktiviert, wenn die Werkzeugmaschine Eilgangbewegungen in aufgelöster
(linearer) Form ausgibt. Wenn diese Option nicht aktiviert ist, werden Eilgangbewegungen als
nicht aufgelöste Bewegungen (sogenannte „Hundekurven“) ausgegeben; maximale
Eilganggeschwindigkeit in beiden Achsen.
18
Rapid 3D (3-D-Ausgabe)
Diese Option wird aktiviert, wenn die Werkzeugmaschine XYZ in einer einzigen Bewegung
ausgeben soll (bzw. XY gemeinsam und Z anschließend in einem separaten Block).
Maximum Rapid Rate (Maximale Eilganggeschwindigkeit)
Hier wird die maximale Eilganggeschwindigkeit der Werkzeugmaschine eingegeben.
Festgelegt in der aktuellen Einstellung „Units“ (Einheiten).
Maximum Angular Feed (deg/min) (Maximale Schrägzustellung (Grad/Min.))
Man stellt die maximale Geschwindigkeit der Schrägzustellung (in Grad pro Minute) der
Werkzeugmaschine ein. Dieser Wert wird zur Berechnung der Zeit für eine Indexierung oder
eine Winkelverschiebung (Move Angular) herangezogen. Eine Winkelverschiebung (Move
Angular) kann sowohl eine Linear- als auch eine Drehbewegung beinhalten. Die Berechnung
der Zeit wird der längsten der beiden Bewegungen zugrunde gelegt.
Diese Option ist standardmäßig auf 4,320 Grad/Minute eingestellt, d. h. dass für eine 360-
Grad-Bewegung 5 Sekunden benötigt werden.
Set Blank Input Fields to Zero (Leerfelder auf null setzen)
Diese Option wird ausgewählt, wenn Leerfelder auf null gesetzt werden sollen. Vor
Version 2011 R2 wurde bei der Verwendung von numerischen Benutzervariablen im
Codegenerator nicht zwischen einem Null-Wert und der Zahl Null unterschieden. Dies hat
sich in der neuen Version geändert und die MM-Linie wurde um einen Steuerschalter (45)
ergänzt.
Wenn der Steuerschalter 45 in der MM-Linie auf 1 gesetzt wird, werden Nullwerte in Feldern
mit Benutzervariablen auf #FUNNY gesetzt. Die Zahl 0 bleibt als 0 erhalten.
Codegeneratoren aus Versionen vor 2011 R2 arbeiten nach dem gleichen Prinzip wie bisher.
Um die genannte Umstellung zu bewirken, muss der Schalter betätigt werden.
Radius Compensation Factor (Faktor zur Radiuskompensation)
Wenn in der Steuerung die Option Werkzeugradiuskompensation implementiert ist, gibt
Egdecam einen vorausberechneten Werkzeugweg für den Mittelpunkt des Werkzeuges aus.
Die Darstellung des Werkzeugwegs erfolgt mit abgerundeten oder eckigen Winkeln, je
nachdem, ob hier die Option „Round“ (Abgerundet) oder „Sharp“ (Eckig) gewählt wird. Hier
wählt man die für die Fräsmaschine geeignete Einstellung.
Man kann den Effekt der Einstellungen in einem Profilierungszyklus sehen, mit (CRC)
Kompensierung eingestellt auf Geometrie, an den äußeren Ecken.
Ignore Coincident CPLs (Übereinstimmende CPLs ignorieren)
Man setzt diese Option auf Yes (Ja), wenn keine Unterscheidung zwischen CPLs gemacht
werden soll, wenn diese dieselbe Position und dieselben Winkel aufweisen (auf diese Weise
wird die erste identische CPL-Angabe wiederverwendet). Diese Option wird auf No (Nein)
gesetzt, wenn identische CPLs zu Nachbearbeitungszwecken unterschieden werden sollen,
wobei für jede eine neue Angabe erstellt wird.
Multi-Plane Coordinate System Output (Ausgabe in Koordinatensystem mit
mehreren Ebenen)
19
Diese Option wird für Maschinen mit Drehachsen im Kopf genutzt, wenn die Werkzeugachse
eventuell nicht an den Linearachsen der Maschine ausgerichtet ist.
Man wählt unter einer der folgenden Option aus:
- CPL Coordinates (CPL- Koordinaten)
Jeder Index hat die Ausgabe einer neuen Arbeitsebene zur Folge, um das Werkzeug an der Z-
Achse ausgerichtet zu halten.
- Machine Coordinates (Maschinen-Koordinaten)
Der NC-Code wird immer in dem Koordinatensystem der Maschinen ausgegeben,
entsprechend den X-, Y- und Z-Linearachsen der Maschine. Man arbeitet in verschiedenen
CPLs innerhalb von Edgecam und es führt die Umwandlung auf das statische
Koordinatensystem der Maschine durch (das für die Sequenz nach der Einstellung
„Anfängliche CPL“ aufgerichtet wird).
Man beachtet, dass mit dieser Einstellung feste Bohrzyklen nur auf einer Ebene unterstützt
werden, die parallel zur anfänglichen CPL liegt.
CPL-Namen werden immer in der Form LEFT.TOP (LINKS.OBEN) usw. ausgegeben. Zum
Beispiel wird für Maschinen mit 3 Achsen ein TOP.TOP (OBEN.OBEN) CPL-Name in der
NC-Datei ausgegeben.
Multi-plane Nutated Output (Rotationsbewegung werden in mehreren Ebenen
ausgegeben)
Man wählt zwischen:
- Orthogonally Aligned (Orthogonal ausgerichtet)
Der Werkzeugpfad wird wie für eine gewöhnliche orthogonale Maschine ausgegeben, und das
Maschinenwerkzeug führt die erforderlichen Umwandlungen für die Schwankungsbewegung
aus.
- Machine Axis Aligned (An der Maschinenachse ausgerichtet)
Der Werkzeugpfad wird in echten Maschinenachsenkoordinaten ausgegeben.
Pivot about tool tip (Drehung an Werkzeugspitze)
Diese Option steht nur zur Indexierung von Maschinen mit FräsKopf zur Verfügung
(einschließlich B-Achsen-Drehmaschinen).
Als Standardeinstellung wird dazu die Option Pivot About Tool Tip (Drehung an
Werkzeugspitze) im Menü Move (Bewegen) ► im Dialogfeld Index (Index) in Edgecam
aktiviert.
20
Always Reset Rotary Datum (Drehtischangabe immer zurücksetzen)
Um eine „Abwicklung“ zwischen Fünf-Achsen-Zyklen zu vermeiden, aktiviert man diese
Option. Ist diese Option aktiviert, wird eine Achse, nachdem sie durch einen Fünf-Achsen-
Zyklus um mehr als 360° gedreht wurde, vor dem nächsten Fünf-Achsen-Zyklus
zurückgesetzt. Wenn ein Controller für das Zurücksetzen einen Code benötigt, legt man
diesen im Code Constructor unter der Option Reset Rotary Datum (Drehtischangabe)
zurücksetzen fest (ansonsten trägt man hier nichts ein).
Five Axis Coordinates (Fünf-Achsen-Koordinaten)
Man wählt unter folgenden Optionen aus:
- Absolute Coordinates Tool Tip (Absolute Koordinaten für Werkzeugspitze)
Man sieht hier den Werkzeugpfad für die Werkzeugspitze in absoluten Koordinaten.
- Absolute Coordinates Pivot Point (Absolute Koordinaten für Drehpunkt)
Der Werkzeugpfad für den Drehpunkt des Werkzeugs in absoluten Koordinaten. Eine Option
für B-Achsen-Drehmaschinen und Kopf-/Kopf-Fräsmaschinen.
Siehe Abbildung oben.
- Part Coordinates (Teilkoordinaten)
Der Werkzeugpfad für die Spitze des Werkzeugs, Ausgabe in „Teilbereich“.
Diese Einstellung wird gewöhnlich mit einer Einstellung „IJK-Ausgabe“ unter „Drehtisch-
Ausgabe“ kombiniert (siehe unten).
Rotary Output (Drehtisch-Ausgabe)
Man wählt unter folgenden Optionen aus:
- ABC Angles (ABC-Winkel)
Der Vektor wird in Form von Neigungswinkeln in den Ebenen XY, XZ und YZ ausgedrückt.
- IJK Output (IJK-Ausgabe)
Der Vektor wird ausgedrückt als Skalierungswerte für die Einheitsvektoren i, j und k (die
jeweils parallel zu den X-, Y- und Z-Achsen liegen).
Man beachtet, dass IJK nur unterstützt wird, wenn das Werkzeug auf die anfängliche CPL der
Sequenz in Edgecam indexiert ist.
Abbildung 31: Absolute Koordinaten für Werkzeugspitze
21
Five Axis Inverse Time Feedrate (Zeitreziproker Vorschub bei fünf Achsen)
Hier überprüft man die Werte für den zeitreziproken Vorschub zur simultanen maschinellen
Bearbeitung mit 5 Achsen (der Fünf-Achsen-Zyklus).
Dies weist Edgecam zur Berechnung des zeitreziproken Vorschubs an. Man musst außerdem
sicherstellen, dass NC Style, G-Codes and Modality > 4-5 Axis Machining > Inverse Time
Feed G Code (NC-Stil, G-Codes und Modalität > maschinelle Bearbeitung mit 4-5
Achsen> zeitreziproker Vorschub G-Code) korrekt eingestellt sind, und dass der
zugeordnete Token FEEDMODEGCODE korrekt verwendet wird (zum Beispiel in Code
Constructors > Multi-Axis (Rotary) > 5 Axis Mode On (Code Constructors > Mehrere
Achsen (Drehtisch) > 5-Achsen-Modus ein).
Spline Output (Ausgabe als Spline)
Einige Maschinen-Werkzeuge sind in der Lage, NC-Blöcke zur Erstellung einer
mathematischen Umrisslinie oder Spline auszugeben. Der Code Wizard ermöglicht dies in
Fanuc-, Siemens- und Heidenhain TNC-Formaten. Wird diese Option aktiviert, werden die
geeigneten Ausgabeformate verwendet, sofern dies vom Edgecam-Zyklus gefordert wird.
Es ist zu beachten, dass nicht alle diese Kurven echte Spline darstellen und dass der Code-
Generator so eingestellt ist, dass er jedes für eine Maschine geeignete Format verwendet.
Dynamic Offset (Dynamischer Achsversatz)
Der dynamische Achsversatz (G54.2) setzt den Datenpunkt auf ähnliche Weise wie der
absolute Achsversatz (G54). Der Unterschied besteht darin, dass bei einer Drehung des
Tisches der Datenpunkt mit der Drehung mit wandert, d.h. die Datenangabe verhält sich
relativ zum Teil.
Aktiviert man diese Option, wird unter Datum Type (Datenangabetyp) im Dialogfeld
Indexoperation und in der Registerkarte Allgemein im Dialogfeld Bearbeitungsabfolge die
Option Dynamic (Dynamisch) bereitgestellt.
Allow G40 on Retract Move (G40 bei Zurückfahrbewegung zulassen)
Wählt man diese Option aus, wird CRC abgebrochen und in der Zurückfahrbewegung eines
Fräsprofilierungszyklus ausgegeben.
Der Token CRCGCODE muss im Rapid Code Constructor vorhanden sein.
Wenn keine Abfahranweisung vorliegt, wird G40 bei der Zurückfahrbewegung am Ende des
Zyklus aktiviert.
Wenn im Rapid Code Constructor kein Token enthalten ist, wird G40 bei der nächsten
Vorschubbewegung erscheinen – die automatisch generierte Senkrechte zum
Geometrieausgleich.
Output Angle Directions (Ausgabe Winkelrichtungen)
Wird die Option aktiviert, werden für alle Winkelbewegungen Richtungs-Änderungen
(ROT1DIR und ROT2DIR) eingestellt.
[7] Online Hilfe „Code Wizard”.Stichwort „Turret“
22
5.1.2 Machine Parameters Dialog - Registerkarte Turret (Revolver)
In dem Dialogfenster für Maschinen-Parameter können über den physischen Konfigurator der
Werkzeugmaschine Informationen eingegeben und bearbeitet werden, wie beispielsweise die
Werkzeugwechselpositionen. Hier sind einige Hinweise zu den Einstellungen auf der
Registerkarte Turret (s) (Es ist zu beachten, dass nicht alle diese Einstellungen vorhanden und
abhängig von der Vorlage sind):
Abbildung 32: Dialog: Turret (Revolver)
Name (Name)
Man gibt den Referenznamen für den Revolver ein.
Type (Typ)
Man wählt ggf. den Revolvertyp aus (Index oder ATC).
Rotate to face Spindle (In Richtung Spindel drehen)
Es wird verwendet zur Unterstützung von Drehmaschinen mit einem unteren Revolver, der
um die X-Achse indexiert.
23
Rotate for Reverse Mount (Für rückwärtige Montage drehen)
Dies wird verwendet, um die Montage eines Werkzeugs an der Vorder- oder Rückseite eines
Revolvers zu ermöglichen. Wird die Option aktiviert, wird die Option Reverse Mount
(Rückwärtige Montage) im Dialogfeld zum Werkzeugwechsel angezeigt. Ein Werkzeug, bei
dem Reverse Mount (Rückwärtige Montage) aktiviert ist, wird auf -90 ausgerichtet und an
der gegenüberliegenden Seite des Revolvers montiert.
Es ist zu beachten, dass dieser Parameter bei einer Montage des Werkzeugs auf einer B-
Achsen-Maschine keine Wirkung hat, weil die B-Achsen-Maschine zu -90 schwenken kann,
um die richtige Ausrichtung zu erreichen.
Holder Type (Haltertyp)
Dies ist für die eigenen Erfordernisse im Zusammenhang mit Strategien. Man wählt aus der
Typenliste, oder man gibt den eigenen Wert ein. Die Einstellung steht für Strategien zur
Verfügung als Job-Attribut Maschine, Revolver 1 (oder 2) und Haltertyp.
Number of Stations (Anzahl der Stationen)
Hier gibt man die Anzahl der Werkzeugstationen in der Werkzeugmaschine ein.
Default Spindle (Standard-Spindel)
Die erste Spindel, mit der der Revolver arbeitet – wird aus der Liste ausgewählt.
Filename Suffix (Erweiterung des Dateinamens)
Nur vorhanden, wenn Tape-Ausgang (in der Registerkarte Maschinenparameter) auf „Zwei“
eingestellt ist. Es wird eine separate CNC-Code-Datei für jeden Revolver produziert. Man
gibt die Erweiterung ein, die man zur Kennzeichnung der Datei des betreffenden Revolvers
verwenden haben will.
Die Erweiterung wird automatisch an den „CNC-Namen“ angehängt, den man für den
Ausgabe-NC-Code festlegt. Die Standardeinstellungen „-1“ und „-2“ für Revolver 1 bzw.
Revolver 2 ergeben zum Beispiel die Dateinamen cncCode-1.nc bzw. cncCode-2.nc.
Tool Home (Werkzeug-Grundeinstellung)
Art der X-, Y- oder Z-Koordinate der Standardgrundeinstellung der Werkzeugmaschine vom
Maschinennullpunkt.
Tool Change (Werkzeugwechsel)
Art der X-, Y- oder Z-Koordinate der Standardwechselstellung des Werkzeugs vom
Maschinennullpunkt.
Angle at Toolchange (Winkel bei Werkzeugwechsel)
Schwenkposition der B-Achse, bei dem Werkzeugwechsel erfolgt.
24
Default Safe Start (Standardeinstellung für Startposition)
Standardfestlegung der X-, Y- und Z-Koordinaten für eine abgesicherte Startposition.
Beim Fräsen ist dies eine Position relativ zum ursprünglichen CPL, der als sicherer
Standardbezugspunkt angenommen wird, wenn Use Background Processing
(Hintergrundverarbeitung verwenden) in Edgecam gewählt wird.
Beim Drehen kann jede Pistole ihren sicheren Bezugspunkt individuell festlegen, es sind aber
nur Hauptspindelpositionen erforderlich, weil die der Gegenspindeln gespiegelt zum CPL der
Gegenspindel erstellt wird.
Always set Safe Start Position (Sichere Startposition immer einstellen)
Man markiert immer dieses Kästchen, wenn man einen Punkt festlegen will, an dem jeder
Zyklus beginnt und endet.
Tool Setting Position 1 (Werkzeugeinstellung Position 1)
Dies ist der Punkt auf der Achse, wo das Werkzeug montiert wird. Die X-, Y- und Z-Werte
beziehen sich auf den Revolvernullpunkt.
Bei einem Drehstern würde man in der Regel den X-Wert so einstellen, dass er dem
Revolverradius entspricht (und für Werkzeugmaschinensimulation, wobei der Einstellpunkt in
das Zentrum der Revolver-Grafikfläche käme, wenn Z auf 0 bliebe).
In der Regel würde man Y bei 0 lassen.
Mating Angle (Anschlusswinkel) und Mating Rotation (Anschlussdrehung) sind nur
verfügbar, wenn Keyed Mating Points (Anschlusspunkte mit Einkerbung) gewählt
werden. Siehe Tool Setting Position 2 (Werkzeugeinstellung Position 2) für mehr
Informationen.
Tool Setting Position 2 (Werkzeugeinstellung Position 2)
Das ist nur verfügbar, wenn Keyed Mating Point 2 (Anschlusspunkt 2 mit Einkerbung)
gewählt wird. Dies ist der Punkt auf der Pistole, wo das Werkzeug montiert wird. Die X-, Y-
und Z-Werte beziehen sich auf den Revolvernullpunkt. Bei einem Drehstern würde man in
der Regel den X-Wert so einstellen, dass er dem Revolverradius entspricht (und für
Werkzeugmaschinensimulation, wobei der Einstellpunkt in das Zentrum der Revolver-
Grafikfläche käme, wenn Z auf 0 bliebe). In der Regel würde man Y bei 0 lassen.
Manche Maschinen sind mit Drehsternen mit Einkerbungen ausgerüstet, in die vormontierte
Werkzeughalter montiert werden können:
- Mating Angle (Anschlusswinkel)
Der Anschlusswinkel (0, 90 oder 180), angezeigt mit dem gelben Pfeil (siehe Abbildung),
zeigt die Anschlussrichtung.
Abbildung 33: Mating Angle (Anschlusswinkel)
25
- Mating Rotation (Anschlussdrehung)
Die Anschlussdrehung (0, 180 oder beides), angezeigt mit dem grünen Punkt (Siehe
Abbildung oben), zeigt die Seite des Keilnutes. Es ist möglich, dass der Revolver auf beiden
Seiten gekerbt ist, in diesem Fall Both (Beide) wählen.
Tool Setting Position 3 (Werkzeugeinstellung Position 3)
Es ist nur verfügbar, wenn Keyed Mating Point 3 (Anschlusspunkt 3 mit Einkerbung)
gewählt wird, siehe Tool Setting Position 2 (Werkzeugeinstellung Position 2).
Tool Setting Position 4 (Werkzeugeinstellung Position 4)
Es ist nur verfügbar, wenn Keyed Mating Point 4 (Anschlusspunkt 4 mit Einkerbung)
gewählt wird, siehe Tool Setting Position 2 (Werkzeugeinstellung Position 2).
Maximum Feedrate (Maximale Vorschubgeschwindigkeit)
Die Standardeinstellung ist 4800 mm/min (100 in/min) für beide Revolver in allen „neuen“
Postprozessoren (in Edgecam 2010 R1 SP1 oder später erstellt oder aktualisiert). Für ältere
Postprozessoren gilt Folgendes:
Beim Updating vorhandener Postprozessoren bleiben die zuvor eingestellten Werte des
oberen Revolvers unverändert, der untere Revolver wird auf 4800 mm/min (100 in/min)
eingestellt. Für Postprozessoren, die auf Siemens- und Integrex-Templates basieren, war die
maximale hohe Vorschubgeschwindigkeit für den unteren Revolver zuvor auf 0 eingestellt.
Beim Updaten eines dieser Templates bleibt dieser Wert unverändert. Man muss ihn so
einstellen, dass er der Fräsmaschinen-Spezifikationen entspricht.
Slide Separation (Schlittenseparation)
Man gibt die Separation in Z und X zwischen den Revolvern Ihrer Einschlitten-
Werkzeugmaschine ein.
Angular Extent (Winkelumfang)
Hier handelt es sich um den minimalen und maximalen Schwenkwinkel der B-Achse.
Angular Increment (Winkelinkrement)
Hier handelt es sich um die minimal mögliche Änderung der Schwenkposition der A-Achse in
Grad.
Toolchange dwell/ Wire thread dwell (Werkzeugwechsel/Drahteinfädelung)
Hier gibt man die typische Zeit (in Sekunden) für einen Werkzeugwechsel oder eine
Drahteinfädelung ein (je nach Werkzeugmaschinentyp).
Index Time per Station (Indexierungszeit pro Station)
Man gibt ein, wie lange der Revolver braucht, die nächste Station zu indexieren. Dies wird in
Sekunden eingegeben.
Main Park Position (Hauptparkposition)
Dies sind die X-, Y-, Z-Koordinaten der Revolver-Parkposition am Hauptspindelende der
Maschine.
[8] Online Hilfe „Code Wizard”.Stichwort „Spindle Gears“
26
Sub Park Position (Sub-Parkposition)
Dies sind die Koordinaten der Revolver-Parkposition am Sub-Spindelende der Maschine
(Man beachtet, dass die „Sub-Park“-Einstellungen auf das entgegengesetzte Ende der
Maschine zur „Hauptposition” bezogen sind). Sie gelten auch dann, wenn die Maschine keine
Sub-Spindel hat.
Angle at Main Park (Winkel an Hauptparkposition)
Es ist der B-Winkel des Revolvers an der Hauptparkposition.
Angle at Sub Park (Winkel an Sub-Parkposition)
Es ist der B-Winkel des Revolvers an der Sub-Parkposition.
5.1.3 Machine Parameters Dialog - Registerkarte - Spindle Gears Tab
Hier werden die Einstellungen der
Spindelgetroffen. In dem Reiter sind die
Voreinstellungen der ausgewählten
Templates, nämlich der Kopf-/Kopf-
Maschine zu sehen. Es wird eine Spindel
vom Typ „Driven“ und das Fräswerkzeug
„One Head“ ausgewählt. Es ist noch die
Leistung, einzugeben.
Abbildung 34: Dialog: Spindle (Spindel)
[9] Online Hilfe „Code Wizard”.Stichwort „Gears“
[10] Online Hilfe „Code Wizard”.Stichwort „Rotary Axes“
27
5.1.4 Machine Parameters Dialog - Registerkarte - Gears Tab
In einem weiteren Reiter wird die Anzahl der Werkzeuge und ihrer Drehzahlen eingegeben.
Es sind die maximale und minimale RPM Zahlen einzugeben. Im Max User RPM legt man
die maximale RPM Zahl für die vorhandene Fräsmaschine fest. Im M-Code wird die
Getriebestufe definiert. Diese kann man von 1 bis 5 einstellen.
Abbildung 35: Dialog: Gears (Fräswerkzeug)
5.1.5 Machine Parameters Dialog - Registerkarte - Rotary Axes Tab
Co-ordinate Output
Man wählt eine der folgenden Optionen, um festzulegen, wie die Koordinaten im CNC-Code
Output dargestellt werden sollen.
- Wrapped at Specific Cycle Depth
Man setzt die NC-Koordinaten für die angegebene Tiefe des Zyklus ein.
- Wrapped at Wrap Radius
Man setzt die NC-Koordinaten für die Höhe der angegebenen Einheiten ein.
- As Original Unwrapped Data
Man wählt diese Option für die Ausgabe der NC-Koordinaten der nicht angegebenen
Einheiten.
Abbildung 36: Dialog: Einstellung der Rotationsachse
[11] Online Hilfe „Code Wizard”.Stichwort „Format Table“
28
5.2 Format Table
Der zweite wichtige Teil „Formate Table“ handelt von der Syntax des Programms. Im
„Format Table“ werden die Richtungen mit dem Buchstaben- und dementsprechenden
Zahlen-Format definiert, welcher Buchstabe soll für welche Richtung stehen. Beispielsweise,
wenn das Werkzeug in X-Richtung fahren soll, steht der Charakter X vor dem Wert. Es wird
in „Format Control“ die Stelle nach dem Komma definiert. Hier wird der Code je nach
Formatierung der Syntax generiert. Wird eine numerische Variable mit dem Ausgangs-CNC-
Code eingegeben, wird damit der Wert für die Länge der Laufrichtung des Werkzeugs in der
jeweiligen Achse zugeordnet.
Abbildung 37: Dialog: Format Table
Die erste Stelle nach dem % FORMAT ist die Nummer Null. Die nächste Stelle ist die
Nummer Eins. Dies wird in aufsteigender Zahlenfolge bis zum Ende der Deklarationen
fortgeführt. Ein Beispiel zum Tabellenformat:
%FORMAT ; Inch MM Kommentar
X,3,4,128,4,3,128,0 X MOVE
Y,3,4,128,4,3,128, 1 Y MOVE
I,3,4,128,4,3,128, 2 I MOVE
J,3,4,128,4,3,128, 3 J MOVE
R,3,4,128,4,3,128, 4 R MOVE
G,2,0,1,2,0,1, 5 GCODE
N,5,0,0,5,0,0, 6 BLOCK NUMBER
ENDF%
29
Die Tabelle muss mit dem Zeichen '% FORMAT' starten und die Linien müssen in
nachfolgend aufgelisteter Reihenfolge stehen. Jede Zeile in der Tabelle muss sieben Einträge,
durch Komma getrennt, enthalten.
Nummer Linie Beschreibung
1 Code Zeichen Das ist der Charakter vor dem ersten Wert beispielsweise X
Charakter.
2 Ziffern Das ist die Anzahl der signifikanten Ziffern vor dem Komma
für das Inch CNC-Format.
3 Dezimalstellen Anzahl der Nachkommastellen für das Inch CNC-Format.
4 Steuercode Steuercode für das Inch CNC für das erforderliche Format
(siehe unten).
5 Ziffern Das ist die Anzahl der signifikanten Ziffern vor dem Komma
für das Millimeter CNC-Format.
6 Dezimalstellen Anzahl der Nachkommastellen für das Millimeter CNC-
Format.
7 Steuercode Steuercode für den Millimeter CNC für das erforderliche
Format (siehe unten).
Der Steuercode ist entscheidend für die Steuerung des Formates der Nummer in dem CNC-
Programm. Der Code setzt sich aus der Summe der Steuerwerte zusammen. Diese sind aus
der Tabelle zu entnehmen:
Steuerwert Steuerfunktion
1 Anzahl von Nullen
2 Anzahl der Leerzeichen
4 Anzahl von Nullen nach dem Komma
8 Anzahl von Leerzeichen nach dem Komma
16 Ganzzahlig
32 man verwendet ',' statt '.'
64 bewirkt '.' am Ende der Zahl
128 bewirkt '.0' am Ende von ganzen Zahlen
256 bewirkt '+' vor positiven Zahlen
512 bewirkt '0.' vor Zahlen zwischen -1 und +1
1024 Nach dem Komma mit einer Anzahl von 5
Ziffern auffüllen
2048 Nach dem Komma mit einer Anzahl von 10
Ziffern auffüllen
30
Die folgenden Beispiele zeigen die Ergebnisse der verschiedenen Steuercodes:
Tabellen Format Nummer CNC-Code
X,3,3,128,3,3,128 2 X2.0
2.125 X2.125
.25 Y.25
Y,3,3,128,3,3,128 2 Y2.0
2.125 Y2.125
.25 I.25
I,4,3,64,4,3,64 2 I2.0
2.125 I2.125
.25 X.25
J,4,2,21,4,2,21 2 J000200
2.125 J000212
.25 J002500
Das Format der Tabelle muss mit der Zeile '% ENDF' enden.
Ein Beispiel für die Umsetzung des Codes in der Formattabelle ist folgendes:
% MACRO = 1 = FE =...
...
...
#BNUM=+#BNUMVAR: #XMOVE=XMOVE: #YMOVE=YMOVE: #GCODE=1
...
<[#BNUM=7] [#GCODE=6][#XMOVE=0][#YMOVE=1]>
...
%ENDM
Im Anschluss würde diese Art von Code ausgegeben werden:
N1 10 G01 X25.352 Y-42.1
[12] Online Hilfe „Code Wizard”.Stichwort „NC Style, G-Codes and Modality“
31
5.3 NC Style, G-Codes & Modality
Beim vorletzten wichtigen Teil „NC Style, G-Codes and Modality“ handelt es sich um die
Informationen, wie die Maschine sich verhalten soll. Also beim NC Style wird definiert, wie
der Code generiert werden soll. Im Gegensatz zum „Formattable“, indem es um die Syntax
geht, werden hier die Aufgaben des Werkzeugs bestimmt.
Da bereits die vorgegebene Adaptive-Iso-Vorlage ausgewählt wurde, ist hier keine
notwendige Änderung vorzunehmen.
Abbildung 38: Dialog: Einstellung der Aufgabe des Steuerprogramms
[13] Online Hilfe „Code Wizard”.Stichwort „Code Constructors“
32
5.4 Code Constructors
Man verwendet die Code Constructors-Dialoge, um festzulegen, wie der CNC-Code gebaut
wird. Also man entwirft, wie der Code in der CNC-Output-Liste aufgebaut wird. Um das zu
realisieren, benötigt man die
sogenannten „Tokens“. Diese sind
nichts anderes als Variablen, um das
Programm des Postprozessors zu
schreiben. Es sind wichtige Punkte zu
beachten, bevor man einen NC-Code
aufbaut:
Welche Variable ist gefragt und wo stellt man sie in das Programm?
Wie und mit welchen Aufgaben sind Tokens vor der Ausgabe jeweils zu interpretieren? Um
einen Code zu schreiben, klickt man beispielsweise auf den Pfad „Code Constructors/ NC
Programm General/ Programm Start“. Hier soll bestimmt werden, was beim Öffnen meines
erstellten NC-Codes angezeigt wird, wie zum Beispiel in folgender Abbildung:
Maschinenname, Datum und Hinweise.
Abbildung 40: Dialog: Auswahlmöglichkeit zu den Tokens-Funktionen
Abbildung 39: Dialog: Struktur Baum der Code
Constructors
33
Zu beachten ist, dass nach jedem Schreiben eines Code Constructors, diesen mit ok zu
bestätigen, um die entsprechenden Änderungen zu speichern.
Mit einem Rechtsklick auf den Token, öffnet man das Menü Optionen:
Force Output Now – bewirkt Ausgang des Tokens.
Force Output Later – bewirkt Ausgang für das nächste
Mal, wenn das Token benötigt wird.
Force Positive – bewirkt positiven Ausgang des Tokens.
Force Negative – bewirkt negativen Ausgang des Tokens.
Reverse Sign – bewirkt Ausgang des gegensätzlichen
Tokens, positiv statt negativ und umgekehrt.
Man kann auch die Schriftart und Größe im Ausgabenfeld festlegen.
Man arbeitet mit der Valid Token Liste, in dem man durch Doppelklick auf die gewünschten
Token diese in die Ausgaben-Liste einfügt.
Beschreibung, Hinweise oder Bemerkungen können in die Note Box geschrieben werden.
Man kann mehrere Fenster Code Constructors öffnen, für den schnellen Vergleich der Inhalte
und beispielsweise für Ausschneiden und Einfügen.
Um einen optimierten passenden Postprozessor zu entwickeln, sollte man möglichst genau
über die Eigenschaften der Maschine Bescheid wissen. Beispielsweise sollte man beim
Bohren oder Fräsen genau wissen, wie die Maschine sich verhält.
Nun wird das geschriebene Programm gespeichert und im Menü Compile (Strg + D)
generiert.
Letztendlich steht der Postprozessor grundsätzlich unter dem Pfad „ C:\program
Files(x86)\planit\edgecam 2014 r2\cam\machdef\template“ zur Verfügung.
Abbildung 40: Menü
Optionen: Tokens
Abbildung 41: Dialog: Postprozessor erstellen
34
5.5 M - Funktionen
Mit den M-Funktionen werden Befehle an der Maschine, wie z.B. Kühlmittel EIN/AUS,
ausgelöst. Eine Übersicht über die wichtigsten M-Funktionen gibt die folgende Auflistung:
M00 programmierter Halt
M03 Spindellauf rechts
M04 Spindellauf links
M06 Werkzeugwechsel
M07 Kühlmittel EIN
M17 Unterprogrammende
M27 Kühlmittel AUS
M30 Programmende
M85 Luft neben der Spindel EIN
M86 Luft neben der Spindel AUS
Je nach Maschinenausstattung gibt es weitere M-Funktionen für evtl. vorhandene
Peripheriegeräte, z.B. Späne-Förderer, die hier nicht aufgeführt werden.
35
6 Fehler Analyse des X-Projekt 5 Axis-project - So Machine
Vor der Korrektur der Verfahrenswege wurden in der von Schneider Electric X-Projekt 5
Axis-projects mehrere Software- und Hardware-Probleme mit dem Fräsportal festgestellt.
In diesem Kapitel werden die auftretenden Fehler und entsprechende Lösungen erläutert.
6.1 Fehler bei der Initialisierung der A- und C- Rotationsachse von
Nanotec
Um das Programm zu starten, müssen die 5 Achsen davor initialisiert werden sein,
entsprechend sollen die Motoren und Anschlüsse funktionsfähig sein. Dies war wegen dem
wiederholt auftretenden Fehler „Keine Verbindung zur SPS“ nicht möglich. Es war trotz
mehrerer Überprüfungen von Komponenten, Motoren und Anschlüssen keine
Kommunikation zwischen dem Mikrocontroller LMC058 und der Nanotec-CANopen Platine
zu realisieren. Im Gegensatz dazu war die andere Achse ohne weitere Probleme zu
initialisieren.
Abbildung 42: Fehler: Keine Verbindung zur SPS
Abbildung 43: Fehler: Initialisations-
Fehler der A- und C-Achse
36
6.2 Fehler beim Starten der A- und C- Rotationsachse
Das Controlword ist ein 16 Bit langes SDO (Service Data Object).Die Bits 1 und 2 müssen
zuerst auf 1 gesetzt werden. Falls der Notfall nicht aktiviert ist, muss immer Bit 1 aktiviert
sein. Bit 2 schaltet die Spannung zu dem Motor, was die Hexadezimalzahl 0x06 ergibt.
Allerdings wird dieser letzte Befehl nicht realisiert, da keine Programm-Initialisierung der A-
und C- Achsen vorhanden ist. Daraus folgt ein andauernder Versuch zur Ausführung des
Fräsprogramms. Dies bedeutet, dass die A- und C-Achsen während des Laufs gestoppt
bleiben. In der Abbildung 44 ist des Initialisierung-Fehlers „Fehler-Code 16#0" zu sehen.
Abbildung 44: Fehler: Fehler-Code 16#0
Abbildung 45: Keine Bearbeitung des A- C
Programm-Code während der Ausführung des
NC-Codes
[14] Technisches Handbuch Controller für Schritt und BLDC-Motoren SMCI36.Stichwort „Nanotec“
37
6.3 Überprüfungen der Verkabelung, Stromversorgung
Um die aufgetretenen Fehler mit den entsprechenden Lösungen zu beheben, wurden die
gesamten Soft- und Hardware-Komponenten überprüft und getauscht. Eine weitere
Überprüfung war die Verkabelung von Motor zu Platine und von Controller zu Motor.
Mit Hilfe vom Multimeter wurden die Stromleitung und die Spannungsversorgung überprüft.
Die Anschlüsse der Motoren, Platine und Controller sind aus dementsprechenden technischen
Handbüchern von Nanotec durchgeführt worden.
Es sind falsche Anschlüsse, Motoren- oder Komponenten-Schaden durch mehrere
Überprüfungen ausgeschlossen worden.
Abbildung 46: Verkabelung der Nanotec-Antrieb
6.4 Programmierungsfehler beim Hochladen der generierten .txt - Datei
Beim Laden von mehreren .txt- Dateien des generierten NC-Codes gab es einen
Programmierfehler. In der Abbildung 47 ist zu sehen, dass die erste .txt-Datei nach Einfügen
nicht in dem HMIS5T Display angezeigt wird.
Abbildung 47: Programmierungsfehler beim Hochladen der txt. - Datei
38
7. Bewertung der Arbeit
Die Arbeit war sehr zeitintensiv und stellte im Rahmen der Komplexität des Themas eine
große Herausforderung dar. Bei der Erstellung des neuen Postprozessors konnte ich in
mehreren Bereichen mein Wissen erweitern, wie in der NC- Programmierung mit Hilfe des
Edgecam Software Systems und anschließend über die Fehler-Analyse.
Zur Erklärung und zum Verständnis der gesamten Fehleranalyse der Fräsmaschine war der
Zugang zu den Informationen über das Programm schwer zu erhalten. Daraus folgt, dass
Problem-Lösungen nur bedingt möglich waren. Ein Ansatz ist, einen 5-Achsen-
Mikrocontroller zu erwerben, um eine bessere SPS-Steuerung des Controllers zu erzielen.
Der neue Postprozessor ist in der Lage die richtige Generierung des NC-Codes für das 5-Achs
Fräsportals zu erstellen. Allerdings ist eine Überprüfung dessen erst dann möglich, wenn ein
neuer 5-Achen-Mikrocontroller vorliegt. Durch den erstellten Postprozessor kann mit Hilfe
vom Code Wizard aus der Software Edgecam die weitere Bearbeitung erfolgen.
39
8. Literaturverzeichnis
1. Online Hilfe „CATIA V5“.Stichwort „NC-Code“
2. Online Hilfe „CATIA V5“.Stichwort „Postprozessor“
3. Online Hilfe „CATIA V5“.Stichwort „Advanced Machining“
4. Abbildung von Internetseite: http://youtu.be/zpx6dOgNJHA
5. Abbildung von Internetseite: http://www.c-cam.de/edgecam.html
6. Online Hilfe „Code Wizard”.Stichwort „Machine Parameters“
7. Online Hilfe „Code Wizard“.Stichwort „Turret“
8. Online Hilfe „Code Wizard“.Stichwort „Spindle“
9. Online Hilfe „Code Wizard“.Stichwort „Gears“
10. Online Hilfe „Code Wizard“.Stichwort „Rotary Axes“
11. Online Hilfe „Code Wizard“.Stichwort „NC Style, G-Codes & Modality“
12. Online Hilfe „Code Wizard“.Stichwort „Format table“
13. Online Hilfe „Code Wizard“.Stichwort „Code Constructors“
14. Technisches Handbuch Controller für Schritt und BLDC-Motoren SMCI36.Stichwort
„Nanotec“
15. Online Hilfe „Code Wizard“.Stichwort „Tokens“
16. Tabelle von Internetseite: http://de.metalltechnik.wikia.com/wiki/Zusatzfunktionen_(M-
Funktionen)
17. Tabellenbuch Metall. (2008). EUROPA LEHMITTEL
40
9. Abbildungsverzeichnis
Abbildung 1: Dialog: NC-Fertigung Optionen ........................................................................................................ 2
Abbildung 2: Dialog: Postprozessoreinstellung ...................................................................................................... 3
Abbildung 3: Dialog: NC-Datentyp ......................................................................................................................... 3
Abbildung 4: Dialog: Auswahl der Modus „Advanced Machining“ ....................................................................... 4
Abbildung 5: Dialog: Auswahl 5-Achskonturfräsen ................................................................................................ 4
Abbildung 6: Dialog: Auswahl der Randelemente .................................................................................................. 4
Abbildung 7: Dialog: Auswahl Schnitttiefe und Werkzeugachse ............................................................................. 5
Abbildung 8: Dialog: Einstellung des Konturfräsens .............................................................................................. 5
Abbildung 9: Dialog: NC-Code generieren ............................................................................................................. 5
Abbildung 10: Dialog: Auswahl des Postprozessors ............................................................................................... 6
Abbildung 11: Dialog: Auswahlmöglichkeit NC-Code Konfiguration .................................................................... 6
Abbildung 12: Fräsen-Typ: Table-Table ................................................................................................................. 9
Abbildung 13: Fräsen-Typ: Head-Head .................................................................................................................. 9
Abbildung 14: Fräsen-Typ: Head-Table ................................................................................................................. 9
Abbildung 15: Solidworks & Edgecam .................................................................................................................. 10
Abbildung 16: Auswerfer.ppf - Edgecam ............................................................................................................... 10
Abbildung 17: 3D-CAD-Programme ..................................................................................................................... 10
Abbildung 18: Edgecam 14.0 Multi-Flute Ende Mill ............................................................................................ 11
Abbildung 19: CNC-Maschinen............................................................................................................................. 11
Abbildung 20: Bearbeitete 3D-Modelle ................................................................................................................. 11
Abbildung 21: 5-Achsen-simultan.......................................................................................................................... 12
Abbildung 22: Drehen aktuelles Rohrmaterial ...................................................................................................... 12
Abbildung 23: Einstich Steg-2 ............................................................................................................................... 12
Abbildung 24: Start Code Wizard .......................................................................................................................... 13
Abbildung 25: Auswahl der CNC-Maschine .......................................................................................................... 14
Abbildung 26: Dialog: Auswahlmöglichkeit der Fräsen-Typen ............................................................................ 14
Abbildung 27: Auswahl Gantry -Typ Head-Head Machine ................................................................................... 15
Abbildung 28: Hauptteile zur Generierung des neuen Postprozessors: Code Generator und Maschine Setup .... 15
Abbildung 29: 5-Schritte zur Erstellung des Postprozessors ................................................................................. 15
Abbildung 30: Dialog: Machine Parameters......................................................................................................... 16
Abbildung 31: Absolute Koordinaten für Werkzeugspitze ..................................................................................... 20
Abbildung 32: Dialog: Turret (Revolver) .............................................................................................................. 22
Abbildung 33: Mating Angle (Anschlusswinkel) .................................................................................................... 24
Abbildung 34: Dialog: Spindle (Spindel) .............................................................................................................. 26
Abbildung 35: Dialog: Gears (Fräswerkzeug) ...................................................................................................... 27
Abbildung 36: Dialog: Einstellung der Rotationsachse ........................................................................................ 27
Abbildung 37: Dialog: Format Table .................................................................................................................... 28
Abbildung 38: Dialog: Einstellung der Aufgabe des Steuerprogramms ................................................................ 31
Abbildung 39: Dialog: Struktur Baum der Code Constructors ............................................................................. 32
Abbildung 40: Menü Optionen: Tokens ................................................................................................................. 33
Abbildung 41: Dialog: Postprozessor erstellen ..................................................................................................... 33
Abbildung 42: Fehler: Keine Verbindung zur SPS ................................................................................................ 35
Abbildung 43: Fehler: Initialisations-Fehler der A- und C-Achse ........................................................................ 35
Abbildung 44: Fehler: Fehler-Code 16#0 ............................................................................................................. 36
Abbildung 45: Keine Bearbeitung des A- C Programm-Code während der Ausführung des NC-Codes .............. 36
Abbildung 46: Verkabelung der Nanotec-Antrieb ................................................................................................. 37
Abbildung 47: Programmierungsfehler beim Hochladen der txt. - Datei ............................................................. 37
41
10. Anhang
1. Token Liste Definitionen Code-Constructor
2. Zusatzfunktionen (M-Funktionen, Auswahl)
3. Programmaufbau der NC- Technik
42
1. Token Liste Definitionen Code-Constructors
Die folgende Token Liste für Fräsen können in jedem einzelnen Code-Constructors
angewendet werden, diese können von Vorlage zu Vorlage variieren.
Token Beschreibung Variable Anmerkungen
5AXISMODE Switch to 5 axis mode #AX5MODE
A0 A0 Cutter Compensation $A0
ABS-INC Absolute/Incremental
Coords Code
#ABSINC
ARCRADIUS Arc Radius #RADIUS
AXIS Active Axis $AXIS
BLKNUM Block Number #BNUM Calls procedure
BOREGCODE Bore Cycle #CYCLEGCODE
BORESTANDOFF Bore Stand Off Distance #BOREOFFSET
BORESTANDOFF2 Bore Stand Off Distance #BOREOFFSET2 Sets variable directly
BORESTANDOFF-X Bore Stand Off X USERVAR2
BORESTANDOFF-Y Bore Stand Off Y USERVAR3
CANCELWORKPLANE See
'WORKPLANECODE'
below.
#WPLANEGCODE
CCLWGCODE CCLW Code #GCODE
CHIPBREAKGCODE Chipbreak Drill Cycle #CYCLEGCODE
CLWGCODE CLW Code #GCODE
COEFF-XA Polynomial Xa Coefficient #AX
COEFF-XB Polynomial Xb Coefficient #BX
COEFF-YA Polynomial Ya Coefficient #AY
COEFF-YB Polynomial Yb Coefficient #BY
COEFF-ZA Polynomial Za Coefficient #AZ
COEFF-ZB Polynomial Zb Coefficient #BZ
;COLON: see Including Code
Generator Source Code
COLON Colon Character $TEMP3 Sets variable directly
COMMENT Operator Message USERDEFINEDSTRING
COMPGCODE Cutter Radius
Compensation Code
#COMPGCODE
CONTINUATION Continuation Character $CONTINUE
CONTOUR Contour Plane Selection $G16CODE
COOLANT OFF Coolant Control #COOL Sets variable directly
COOLANT ON Coolant Control #COOL
CPLNAME CPL Name $CPLNAME
CRC L/R Compensation RR/RL $COMP Calls procedure
CRC REGISTER Cutter Radius
Compensation Register
#COMPDCODE
CYCLE-APPROACH Cycle Approach Blocks Calls procedure
CYCLE-AXIS Axis for Application of
Cycles
$CYCLEAXIS
CYCL-CODE Cycle number
43
CYCL-DESC Cycle description
CYCLEAXIS Cycle Axis Letter Address $DEPTHDIR
CYCLEDWELLTIME Counterbore Dwell Time DWELL
CYCLEFIRSTDWELL Cycle First Peck Dwell
Time
#FIRSTDWELL
CYCLEGCODE Hole Cycle #CYCLEGCODE
CYCLENPECKS Number of Pecks #NPECKS Calls procedure
CYCLESPEED Spindle Speed #SPEED Sets variable directly
CYCLESPINDIR Spindle Direction #DIRECTION
CYCLETIME Cycle Time Including
Toolchange
MACHTIME1
CYCLEZFEED Hole Cycle Z Feedrate #FEED
DATE Program Creation Date DATE
DEGRESSION Hole Cycle Degression #DEGR
DELETE Block Delete #DELETE
DRILLGCODE Drill Cycle #CYCLEGCODE
DWELLGCODE Dwell Code #DWELLGCODE
DWELLTIME Dwell Time DWELL
ENDCYCLEGCODE End Canned Cycle #CYCLEGCODE Sets variable directly
EULER-1 Output coordinate system
rotation angle. Useful for
head/head machines.
EULER1 Use with
WORKPLANECODE
token in 'Index Table' code
constructor, for example.
EULER-2 See above EULER2 See above
EULER-3 See above EULER3 See above
EXACTSTOPGCODE Exact Stop Code #EXACTGCODE See note on Exact Stop M-
Function
FEED Feedrate #FEED
FEEDGCODE Feed Code #GCODE
FIRST ROT First Rotary Angle #FIRSTANGLE
FEEDMODEGCODE Feed Mode Code #FEEDMODEGCODE
FIRSTDEPTH First Depth #FIRSTDEPTH
FIRSTTOOL Re-select First Tool #FIRSTTOOL Sets variable directly
FORCE-INC Incremental G Code #ABSINC Sets variable directly
G28XYBlock G28 XY Movement Block Calls procedure
G28ZBlock G28 Z Movement Block Calls procedure
G45 G45 Cutter Compensation $G45
G60 G60 Cutter Compensation $G60
GEARMCODE Gear Range #GEARMCODE
HDR-TOOLDIAM Tool Diameter #TOOLDIA Sets variable directly
HDR-TOOLGAUGE Tool Z Gauge TOOLEN
HDR-TURRETNO Turret No. POSITION
HIGHSPEED TOL High Speed M/C
Tolerance
#HIGHSPEEDTOL
INC-ANGLE Arc Included Angle #INCANGLE
IVALUE Arc I Value #IVALUE
IVECTOR Tool tilt vector component #INORMAL
44
JM-COM Job Manager Comment JOBCOM
JM-CUST Job Manager Customer JOBCUST
JM-DESC Job Manager Description JOBDESC
JM-FAM Job Manager Family JOBFAM
JM-MACH Job Manager Machine JOBMACH
JM-MATL Job Manager Material JOBMATL
JM-PROG Job Manager Programmer JOBPROG
JM-REV Job Manager Revision JOBREV
JVALUE Arc J Value #JVALUE
JVECTOR Tool tilt vector component #JNORMAL
K1 COEFF K1 Coefficient #K1VALUE
K1 EXPONENT K1 Exponent #K1EXP
K2 COEFF K2 Coefficient #K2VALUE
K2 EXPONENT K2 Exponent #K2EXP
K3 COEFF K3 Coefficient #K3VALUE
K3 EXPONENT K3 Exponent #K3EXP
KNOT NURB Knot #KNOT
KVALUE Arc K Value #KVALUE
KVECTOR Tool tilt vector component #KNORMAL
LASTDEPTH Last Depth #LASTDEPTH
LBRKT Left Bracket Character $TEMP1 Sets variable directly
LCHEV Left Chevron Character $TEMP1 Sets variable directly
LEADER Leader (Punch Tape) #LEADER
LENGTHOFFSET Tool Length Offset (TLO) #HCODE
LOOPNUMBER Loop Number #HEADER
M62 M62 Cutter Compensation $M62
M89/M99 Modal (M89)/ Non Modal
(M99)
#MODALCYCLE
MACHINENAME Machine Description MACHINENAME
MANREADABLE Manreadable (Punch Tape) $MANREADABLE Sets variable interactively
MAXFEED Rapid Feed Value #FEED Sets variable directly
MOVEHOMEREF Rapid to Home Reference
Point
#CODEHOME Sets variable directly
Used in ISO mill templates
to allow G28/30 style
moves to reference point.
MOVETCREF Rapid to Toolchange
Reference Point
#CODETC See above
NEXT_COMMENT Next Comment $NEXTCOMMENT
NEXT_DESCRIPTION Next Description $NEXTDESCRIPTION
NEXT_GROUP Next Group $NEXTGROUP
NEXT_GROUP_NUMBE
R
Next Group Number #NEXTGROUPNUMBER
NEXT_GROUP_TEXT Next Group Text $NEXTGROUPSTRING
NEXT_ID Next ID $NEXTID
NEXT_ID_NUMBER Next ID Number #NEXTIDNUMBER
NEXT_ID_TEXT Next ID Text $NEXTIDSTRING
NEXTTOOL Pre-select Next Tool #NEXTTOOL
45
NSUBEND Block Number End #ENDSUB
N-SUBEND Block Number End ENDSUB
N-SUBSTART Block Number Start STARTSUB
NUM2RETRACTS Number of Secondary
Retracts
#NUM2RET
OPNUM Operation Number #SBNUM
ORDER NURB Order #ORDER
PARTNAME Part Name PARTNAME
PECKDEPTH Pecking Depth #DEPTH
PECKGCODE Peck Drill Cycle #CYCLEGCODE
PECKSAFE Peck Safe Distance #ZSAFE
PITCH Thread/Tap Pitch #PITCH
PIVOT MODE Head indexing - Pivot
round tool tip on/off
PIVOT
PLANEGCODE Co-ordinate Plane #PLANEGCODE
POLAR-RAD Polar Arc Radius #RADIUS
POLY-X Polynomial X End Point #EX
POLY-Y Polynomial Y End Point #EY
POLY-Z Polynomial Z End Point #EZ
PRESETGCODE Datum Shift Code #PRESETGCODE
PRIMARY ROT Primary Rotary Axis #ROT1
PROGDESCR Program Description $DESCR Calls procedure
PROGID Program ID #PROGID Calls procedure
PROGRAMMER Programmers Name $ID Calls procedure
PROGUNITS NC Program Units $PROGUNIT
PROGVERSION Program Version No $PROGVER Calls procedure
QUILL Quill Move #QUILLMOVE
RAPIDGCODE Rapid Code #GCODE
RBRKT Right Bracket Character $TEMP2 Sets variable directly
RCHEV Right Chevron Character $TEMP2 Sets variable directly
RDEPTH Relative Depth #RELDEPTH
REAMGCODE Ream/Bore Cycle #CYCLEGCODE
REFPLANE Reference Plane (RFP) #ZLEVEL
RESET_SPINDLE Reset Spindle Direction Calls
PT_RESET_SPINDLE
Tool change
RETFEED Retract Feed #RETFEED
RETRACT2 Secondary Retract
Distance
#RETRACT2DIST
RETRACTGCODE Cycle Retract Code #RETRACTGCODE
RETRACTMCODE Cycle Retract Code #RETRACTGCODE
ROTARYGCODE Rotary/Planar Code #ROTARYGCODE
ROTATE CLW/CCLW Code for Direction of
Rotation
#ROTDIRMCODE
RPLANE R Plane #RPLANE
SAFEBLKNUM Safe/Toolchange Block
Number
#SBNUM Calls procedure
S-COLON Semicolon Character $TEMP Sets variable directly
46
SECDWELL Secondary Dwell Time #SECDWELL
SECFEED Secondary Feed Rate #SECFEED
SECOND ROT Second Rotary Angle #SECONDANGLE
SECONDARY ROT Secondary Rotary Axis #ROT2
SEMICOLON Semicolon Character $TEMP Sets variable directly
SEQID Machining Sequence $SEQID
SEQUENCENAME M/C Sequence Name SEQUENCENAME
SETDATUMS Set-up Workdatums Calls procedure
SETTOOLGCODE Set Tool Data #SETTOOLGCODE Sets variable directly
SMOOTHMCODE Smooth Mcode #EXACTGCODE
SPEED Spindle Speed #SPEED Calls procedure
SPINDIR Spindle Direction #DIRECTION
SPINSTOP Spindle Stop Code #DIRECTION Sets variable directly
SPOTGCODE Spot Face Cycle #CYCLEGCODE
START-ANGLE Arc Start Angle #BEARING1
STOPMCODE Program/ Optional Stop #STOPMCODE
SUBCALL Subroutine Call M- Code #SUBSTARTMCODE Sets variable directly
SUBEND Subroutine End M-Code #SUBENDMCODE Sets variable directly
SUBNO Subroutine Program
Number
#SUBROUTINE
SUBNOCALL Call Subroutine Program
Number
#SUBROUTINE
SUBROUTINES Subroutines position
T-MILL-START_ANGLE Thread Mill Start Angle STARTANGLE
T-MILL-STEP Threads Per Step #THRDSTEP
T-MILL-TAPER Thread Mill Taper Angle INCLUDEDANGLE
T-MILL-TDEPTH Thread Mill Thread Depth #THREADDEPTH
TAP-DWELLTIME Counterbore Dwell Time DWELL
TAPGCODE Tapping Cycle #CYCLEGCODE
TAP-PITCH Thread/ Tap Pitch #PITCH
TAP-RPLANE R Plane #RPLANE
TAP-ZCLEAR Z Clearance Plane #TMP Sets variable directly
TAP-ZDEPTH Z Depth #ZMOVE
TAP-ZFEED Hole Cycle Z Feedrate #FEED
TAP-ZLEVEL Z Level #ZLEVEL
THISZMOVE Z of First Leg #ZMOVE Siemens mill approach
moves
TIME Program Creation Time TIME
TOOL-ANGLE Tool tip angle INCLUDEDANGLE
TOOL-AXIS Tool Axis $TOOLAXIS
TOOL_ID Complete 'Code ID' setting
as a string.
$ID
TOOL_ID_NUMBER First numeric character
sequence in 'TOOL_ID' as
a numeric variable. For
example '123' in
'abc123def'. The '.'
character is interpreted as
IDNUMBER
47
a decimal point.
TOOL_ID_TEXT First letter character
sequence in 'TOOL_ID', as
a string. For example 'abc'
in 'abc123def'.
IDSTRING
TOOLDESCR Tool Description $TOOLDESCRIPTION Sets variable directly
TOOLDIAM Tool Diameter #TOOLDIA Sets variable directly
TOOLOFFSETID Offset Program ID #TMP1 Sets variable directly
TOOLRADIUS Tool Radius TOOLRAD
TOOLTYPE Tool Type $TYPE Calls procedure
TOOLUNITS Tool Units $UNIT
TURRETNO Turret/ Position Number POSITION
UNITSGCODE NC Program Units #UNITSGCODE
USER-1 User Numeric Token #USER1
. . .
. . .
USER-20 User Numeric Token #USER20
USER-STRING User String Token $USER
USER-STRING-1 User String Token $USER1
. . .
. . .
USER-STRING-5 User String Token $USER5
no token $USER6
. .
. .
no token $USER20
WARNING Warning messages $WARNING
WEIGHT NURB Weight #WEIGHT
WORKGCODE Work/Fixture Offset #WORKGCODE
WORKPLANECODE Co-ordinate system
orientation shift
#WPLANEGCODE Code set in 'NC-Style, G-
Codes and Modality',
'Workplane Definition' tab.
WORKOFFSETID Offset Program ID #TMP2 Sets variable directly
WORKREGISTER Work Offset Register #COORDNUM
X0 X Incremental Zero Move #XZERO %IF #XMOVE=#FUNNY
%THEN
#XZERO=#FUNNY
WRAP HEIGHT Wrap Height
(Radius/Diameter)
#WRAPHEIGHT
XABSORIGIN Absolute X Origin #XSUB
XADDINC Additive X Origin #XADDINC Sets variable directly
XARCEND Arc End X Coord #XMOVE
XBRACKET Trailing Bracket on X
Coefficients
$XBRAK
XCENTRE Arc Centre X Coord #XCENTRE
XHOME Move to X Home #XMOVE
XHOME840 X Home Position #XMOVE
XHOMEPOS X Home Position #XMOVE Sets variable directly
48
XINC Incremental X Origin #XMOVE
XMCORIGIN Separation in X between
the Machine Datum and
the current CPL origin,
where 'X' is parallel to the
Initial CPL's X axis.
XINC
XMOVE X Move #XMOVE
XSHIFT Datum shift #XSHIFT Incremental from last
absolute datum position
XTOOL Move to X Toolchange #XMOVE
Y0 Y Incremental Zero Move #YZERO %IF #YMOVE=#FUNNY
%THEN
#YZERO=#FUNNY
XTOOLPOS X Toolchange Position #XMOVE Sets variable directly
YABSORIGIN Absolute Y Origin #YSUB
YADDINC Additive Y Origin #YADDINC Sets variable directly
YARCEND Arc End Y Coord #YMOVE
YBRACKET Trailing Bracket on Y
Coefficients
$YBRAK
YCENTRE Arc Centre Y Coord #YCENTRE
YHOME Move to Y Home #YMOVE
YHOME840 Y Home Position #YMOVE
YHOMEPOS Y Home Position #YMOVE Sets variable directly
YINC Incremental Y Origin #YMOVE
YMCORIGIN Separation in Y between
the Machine Datum and
the current CPL origin,
where 'Y' is parallel to the
Initial CPL's Y axis.
YINC
YMOVE Y Move #YMOVE
YSHIFT Datum shift #YSHIFT Incremental from last
absolute datum position
YTOOL Move to Y Toolchange #YMOVE
YTOOLPOS Y Toolchange Position #YMOVE Sets variable directly
Z0 Z Incremental Zero Move #ZZERO %IF #ZMOVE=#FUNNY
%THEN
#ZZERO=#FUNNY
ZABSORIGIN Absolute Z Origin #ZSUB
ZADDINC Additive Z Origin #ZADDINC Sets variable directly
ZARCEND Arc End Z Coord #ZMOVE
ZARCENDW Arc End Z Coord #ZMOVEW Calls procedure
ZBRACKET Trailing Bracket on Z
Coefficients
$ZBRAK
ZCENTRE Arc Centre Z Coord #ZCENTRE
ZCLEAR Z Clearance Plane #TMP Sets variable directly
ZDEPTH Z Depth #ZDEPTHOUT
Z-DEPTH Z Depth #ZDRILL
ZDEPTHW Z Depth #ZMOVEW Calls procedure
[15] Online Hilfe „Code Wizard“.Stichwort „Tokens“
49
ZGAUGELENGTH Tool Z Gauge Length #ZGAUGE Sets variable directly
ZHOME Move to Z Home #ZMOVE
ZHOME840 Z Home Position #ZMOVE
ZHOMEPOS Z Home Position #ZMOVE Sets variable directly
ZINC Incremental Z Origin #ZMOVE
ZINITIAL Initial Plane #ZMOVE Sets variable directly
ZLEVEL Z Level #ZLEVEL
Z-LEVEL Z Level #ZLEVEL
ZLEVEL-R Z Level #ZLEVEL
ZMCORIGIN Separation in Z between
the Machine Datum and
the current CPL origin,
where 'Z' is parallel to the
Initial CPL's Z axis.
ZINC
ZMOVE Z Move #ZMOVE
ZMOVEW Z Move #ZMOVEW Calls procedure
ZSAFE Z Safe Distance #ZSAFE
ZSHIFT Datum shift #ZSHIFT Incremental from last
absolute datum position
ZTOOL Move to Z Toolchange #ZMOVE
ZTOOLPOS Z Toolchange Position #ZMOVE Sets variable directly
50
2. Zusatzfunktionen (M-funktionen, Auswahl)
Klassen Bearbeiten
Klasse 1: Fräs- und Bohrmaschinen, Lehrenbohrwerke, Bearbeitungszentren.
Klasse 2: Drehmaschinen und Dreh-Bearbeitungszentren.
Klasse 4: Brenn-, Plasma-, Wasserstrahlschneiden und für Drahterodiermaschinen.
Klasse 6: Maschinen mit mehreren Schlitten, Spindeln und Handhabungsausrüstung.
Tabelle Klassen 1, 2 u.6.
Code Funktion Wirksamkeit Klasse
M00 Programmierter Halt
M01 Wahlweiser Halt
M02 Programmende
M03 Spindel im Uhrzeigersinn K1,2
M04 Spindel im Gegenuhrzeigersinn K1,2
M05 Spindel Halt K1,2
M06 Werkzeugwechsel
M07 Kühlschmiermittel 2 EIN K1,2
M08 Kühlschmiermittel 1 EIN K1,2
M09 Kühlschmiermittel AUS K1,2
M10 Klemmung EIN (Werkstück)
M11 Klemmung AUS (Werkstück)
M12 Synchronisation K6
M13 Spindel im Uhrzeigersinn mit
Kühlschmierstoff K1,2
M14 Spindel im Gegenuhrzeigersinn
mit Kühlschmierstoff
M15
Spindel Stop und
Kühlmittel aus ( nur für
Spindel)
K1,2
M17 Unterprogrammende
M19 Spindel-Halt in definierter
Endstellung K1,2
M30 Programmende mit Rücksetzen K1,2
M31 Aufheben der Verriegelung
M34 Spanndruck normal K1,2
M35 Spanndruck reduziert K1,2
M40 Automatische Getriebeschaltung K1,2
M41-
45 Getriebestufe 1 bis 5 K1,2
M48 Überlagerung wirksam
M49 Überlagerung unwirksam
M50 Kühlschmiermittel 4 EIN K1,2
[16] Tabelle von Internetseite: http://de.metalltechnik.wikia.com/wiki/Zusatzfunktionen_(M-Funktionen)
51
M51 Kühlschmiermittel 3 EIN K1,2
M54 Reitstockpinole zurück K2
M55 Reitstockpinole vor K2
M56 Reitstock mitschleppen AUS K2
M57 Reitstock mitschleppen EIN K2
M58 Konstante Spindeldrehzahl AUS K2
M59 Konstante Spindeldrehzahl EIN K2
M60 Werkstückwechsel
M70 Unbedingter Start aller Systeme K6
M71-
72
Unbedingter Start von System 1-
9 K6
M71-
78 Indexposition der Drehtisches K1
M80 Lünette 1 öffnen K2
M81 Lünette 1 schließen K2
M82 Lünette 2 öffnen K2
M83 Lünette 2 schließen K2
M84 Lünette mitschleppen AUS K2
M85 Lünette mitschleppen EIN K2
M87 Status-Anzeige Bearbeitung K6
M88 Status-Anzeige Ruhestellung K6
M89 Statusanzeige Ruhestellung für
alle Systeme K6
M99 Zyklus Wiederholung K6