- Fakultät für angewandte Naturwissenschaften und
Transcription
- Fakultät für angewandte Naturwissenschaften und
BACHELORARBEIT 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 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 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-AchsFrä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 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. Abbildung 1: Dialog: NC-Fertigung Optionen 1.2 Das Produkt fastPOST Das Produkt fastPOST (bis Ende 2009 als cPost bekannt) wurde im Rahmen der CAAPartnerschaft 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. [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.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 CENITLö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 3 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. Abbildung 4: Dialog: Auswahl der Modus „Advanced Machining“ Man selektiert die Frontscheibe und wählt in der Menü-Leiste durch einen Rechtsklick die 5Achskonturfräse. Abbildung 5: Dialog: Auswahl 5Achskonturfräsen 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 6: Dialog: Auswahl der Randelemente 4 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. Abbildung 7: Dialog: Auswahl Schnitttiefe und Werkzeugachse 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. Abbildung 8: Dialog: Einstellung des Konturfräsens 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 9: Dialog: NC-Code generieren 5 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 NCCode Konfiguration 6 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 (Werkzeugwechsel) N5 T1 M66 2 SPINDL/ 70.0000,RPM,CLW (Spindel ein, 70 1/min, ClockWise) RAPID (Verfahren im Eilgang) GOTO/ 93.20000, 100.32264, 10.00000 (zu den Achsenwerten) N6 G0 X93.2 Y100.323 Z10 S70 M13 3 FEDRAT/ 300:0000; MMPM (Verfahren Vorschub 300 mm/min) GOTO/ 93.20000, 100.32264, 0.00000 (zu den Achswerten) N7 G1 Y0 F300 Die Umwandlung des APTSOURCE bzw. der CLDATA in NC- Steuerungssätze (z.B. nach DIN 66028) ist eine der wichtigsten Aufgaben des NC-Postprozessors (FormatKonvertierung). Gleichzeitig hat er die Aufgabe, alle spezifischen Randbedingungen der NCMaschine, 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. 7 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. 8 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-TableMaschine. 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: Abbildung 12: Fräsen-Typ: Table-Table Hier handelt es sich um eine Head-HeadMaschine. Im Gegensatz zu der TableTable-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. Abbildung 13: Fräsen-Typ: Head-Head 2.3.3 Head – Table: Hier handelt es sich um eine Head-TableMaschine. 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 [4] Abbildung von Internetseite: http://youtu.be/zpx6dOgNJHA 9 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 CADSystemen 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. Abbildung 16: Auswerfer.ppf - Edgecam CAD Schnittstellen Alle gängigen CAD-Formate können direkt eingeladen werden. Abbildung 17: 3D-CAD-Programme Assoziativität Alle Änderungen im CAD werden sofort im CAM gemeldet und alle Werkzeugbahnen werden mit einem Klick wieder angepasst. [5] Abbildung von Internetseite: http://www.c-cam.de/edgecam.html 10 WerkzeugDatenbank und Technologie- 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, Abbildung 18: Edgecam 14.0 Multi-Flute Ende Mill 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 20: Bearbeitete 3D-Modelle 11 Fräsen - Feature-Erkennungen - Die Bohrungen, Taschen, Außenkonturen, offenen Taschen, Nuten, Planflächen werden automatisch erkannt. - Leistungsfähige Frässtrategien z.B. erfolgt Nutfräsen auf Feature-Basis im Pendelbetrieb und wellenförmiges Schruppen.3D-Fräs-Zyklen, z.B. Schlichten in Z-Stufen, Konturparallel 3D-Schlichten, achsparallel Schlichten, Fließkurven folgen 5-Achsen-simultan mit vielfältigsten Steuerungsmöglichkeiten für Werkzeugwinkel und Konturen, sowie Stoppflächen und Projektionselementen. 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. Abbildung 23: Einstich Steg-2 Abbildung 22: Drehen aktuelles Rohrmaterial - 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. 12 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 NC - Programm Edgecam 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. Edgecam Postprocessor Siemens Maschinensteuerung Siemens Postprocessor Schneider Electric Maschinensteuerung Schneider Electric Postprocessor Mitsubishi Maschinensteuerung Mitsubishi 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 „CodeAbbildung 24: Start Wizard“. Dies ist in der Software von Edgecam verfügbar und für den Code Wizard Aufbau der Postprozessor-Datei verantwortlich. 13 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). Abbildung 25: Auswahl der CNC-Maschine 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 ZRichtung 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 26: Dialog: Auswahlmöglichkeit der FräsenTypen 14 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 MaschinenBaum 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 GraphikBezugspunkt bis auf ihre eigene Achse, welcher auf dem Koordinatenursprung 0,0,0 Abbildung 27: Auswahl Gantry -Typ Head-Head liegt. Machine 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. Abbildung 28: Hauptteile zur Generierung des neuen Postprozessors: Code Generator und Maschine Setup 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 29: 5-Schritte zur Erstellung des Postprozessors 15 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, VorschubGeschwindigkeit. 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 [6] Online Hilfe „Code Wizard”.Stichwort „Machine Parameters“ 16 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 CNCCode 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-DateiStandarderweiterung) 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. 17 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 360Grad-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) 18 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 ZAchse 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. 19 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-AchsenZyklus 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. Abbildung 31: Absolute Koordinaten für Werkzeugspitze - 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 „DrehtischAusgabe“ 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. 20 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 CodeGenerator 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. 21 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. [7] Online Hilfe „Code Wizard”.Stichwort „Turret“ 22 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 BAchsen-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. 23 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-, Yund 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 RevolverGrafikflä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) 24 - 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 EinschlittenWerkzeugmaschine 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. 25 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-/KopfMaschine 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) [8] Online Hilfe „Code Wizard”.Stichwort „Spindle Gears“ 26 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 [9] Online Hilfe „Code Wizard”.Stichwort „Gears“ [10] Online Hilfe „Code Wizard”.Stichwort „Rotary Axes“ 27 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-CNCCode 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 X,3,4,128,4,3,128,0 Y,3,4,128,4,3,128, 1 I,3,4,128,4,3,128, 2 J,3,4,128,4,3,128, 3 R,3,4,128,4,3,128, 4 G,2,0,1,2,0,1, 5 N,5,0,0,5,0,0, 6 ENDF% Kommentar X MOVE Y MOVE I MOVE J MOVE R MOVE GCODE BLOCK NUMBER [11] Online Hilfe „Code Wizard”.Stichwort „Format Table“ 28 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 1 Code Zeichen 2 3 4 5 6 7 Beschreibung Das ist der Charakter vor dem ersten Wert beispielsweise X Charakter. Ziffern Das ist die Anzahl der signifikanten Ziffern vor dem Komma für das Inch CNC-Format. Dezimalstellen Anzahl der Nachkommastellen für das Inch CNC-Format. Steuercode Steuercode für das Inch CNC für das erforderliche Format (siehe unten). Ziffern Das ist die Anzahl der signifikanten Ziffern vor dem Komma für das Millimeter CNC-Format. Dezimalstellen Anzahl der Nachkommastellen für das Millimeter CNCFormat. 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 CNCProgramm. Der Code setzt sich aus der Summe der Steuerwerte zusammen. Diese sind aus der Tabelle zu entnehmen: Steuerwert 1 2 4 8 16 32 64 128 256 512 1024 2048 Steuerfunktion Anzahl von Nullen Anzahl der Leerzeichen Anzahl von Nullen nach dem Komma Anzahl von Leerzeichen nach dem Komma Ganzzahlig man verwendet ',' statt '.' bewirkt '.' am Ende der Zahl bewirkt '.0' am Ende von ganzen Zahlen bewirkt '+' vor positiven Zahlen bewirkt '0.' vor Zahlen zwischen -1 und +1 Nach dem Komma mit einer Anzahl von 5 Ziffern auffüllen Nach dem Komma mit einer Anzahl von 10 Ziffern auffüllen 29 Die folgenden Beispiele zeigen die Ergebnisse der verschiedenen Steuercodes: Tabellen Format X,3,3,128,3,3,128 Y,3,3,128,3,3,128 I,4,3,64,4,3,64 J,4,2,21,4,2,21 Nummer 2 2.125 .25 2 2.125 .25 2 2.125 .25 2 2.125 .25 CNC-Code X2.0 X2.125 Y.25 Y2.0 Y2.125 I.25 I2.0 I2.125 X.25 J000200 J000212 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 30 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 [12] Online Hilfe „Code Wizard”.Stichwort „NC Style, G-Codes and Modality“ 31 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: Abbildung 39: Dialog: Struktur Baum der Code Constructors 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 [13] Online Hilfe „Code Wizard”.Stichwort „Code Constructors“ 32 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 Abbildung 40: Menü Tokens, positiv statt negativ und umgekehrt. Optionen: Tokens 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. Abbildung 41: Dialog: Postprozessor erstellen Letztendlich steht der Postprozessor grundsätzlich unter dem Pfad „ C:\program Files(x86)\planit\edgecam 2014 r2\cam\machdef\template“ zur Verfügung. 33 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. 34 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: InitialisationsFehler der A- und C-Achse 35 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 Aund 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 36 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 [14] Technisches Handbuch Controller für Schritt und BLDC-Motoren SMCI36.Stichwort „Nanotec“ 37 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-AchsenMikrocontroller 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. 38 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_(MFunktionen) 17. Tabellenbuch Metall. (2008). EUROPA LEHMITTEL 39 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 40 10. Anhang 1. 2. 3. Token Liste Definitionen Code-Constructor Zusatzfunktionen (M-Funktionen, Auswahl) Programmaufbau der NC- Technik 41 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 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 BOREGCODE Bore Cycle #CYCLEGCODE BORESTANDOFF Bore Stand Off Distance #BOREOFFSET BORESTANDOFF2 Bore Stand Off Distance #BOREOFFSET2 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 COMMENT Operator Message USERDEFINEDSTRING COMPGCODE Cutter Radius Compensation Code #COMPGCODE CONTINUATION Continuation Character $CONTINUE CONTOUR Contour Plane Selection $G16CODE COOLANT OFF Coolant Control #COOL COOLANT ON Coolant Control #COOL CPLNAME CPL Name $CPLNAME CRC L/R Compensation RR/RL $COMP CRC REGISTER Cutter Radius Compensation Register #COMPDCODE CYCLE-APPROACH Cycle Approach Blocks CYCLE-AXIS Axis for Application of Cycles CYCL-CODE Cycle number Anmerkungen Calls procedure Sets variable directly Sets variable directly Sets variable directly Calls procedure Calls procedure $CYCLEAXIS 42 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 MFunction 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 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 43 Sets variable directly 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 44 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 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 Calls procedure 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 45 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 SEQID Machining Sequence $SEQID SEQUENCENAME M/C Sequence Name SEQUENCENAME SETDATUMS Set-up Workdatums SETTOOLGCODE Set Tool Data #SETTOOLGCODE SMOOTHMCODE Smooth Mcode #EXACTGCODE SPEED Spindle Speed #SPEED SPINDIR Spindle Direction #DIRECTION Sets variable directly Calls procedure Sets variable directly Calls procedure SPINSTOP Spindle Stop Code #DIRECTION 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 Sets variable directly 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 TAP-ZDEPTH Z Depth #ZMOVE TAP-ZFEED Hole Cycle Z Feedrate #FEED TAP-ZLEVEL Z Level #ZLEVEL THISZMOVE Z of First Leg #ZMOVE 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 46 Sets variable directly Siemens mill approach moves 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 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 Calls procedure 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, GCodes and Modality', 'Workplane Definition' tab. WORKOFFSETID Offset Program ID #TMP2 Sets variable directly WORKREGISTER Work Offset Register #COORDNUM X0 X Incremental Zero Move #XZERO WRAP HEIGHT Wrap Height (Radius/Diameter) #WRAPHEIGHT XABSORIGIN Absolute X Origin #XSUB XADDINC Additive X Origin #XADDINC 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 47 %IF #XMOVE=#FUNNY %THEN #XZERO=#FUNNY Sets variable directly Sets variable directly 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 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 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 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 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 ZARCEND Arc End Z Coord #ZMOVE ZARCENDW Arc End Z Coord #ZMOVEW ZBRACKET Trailing Bracket on Z Coefficients $ZBRAK ZCENTRE Arc Centre Z Coord #ZCENTRE ZCLEAR Z Clearance Plane #TMP ZDEPTH Z Depth #ZDEPTHOUT Z-DEPTH Z Depth #ZDRILL ZDEPTHW Z Depth #ZMOVEW 48 Incremental from last absolute datum position Sets variable directly Sets variable directly Incremental from last absolute datum position Sets variable directly Calls procedure Sets variable directly Calls procedure ZGAUGELENGTH Tool Z Gauge Length #ZGAUGE ZHOME Move to Z Home #ZMOVE ZHOME840 Z Home Position #ZMOVE ZHOMEPOS Z Home Position #ZMOVE ZINC Incremental Z Origin #ZMOVE ZINITIAL Initial Plane #ZMOVE 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 ZSAFE Z Safe Distance #ZSAFE ZSHIFT Datum shift #ZSHIFT ZTOOL Move to Z Toolchange #ZMOVE ZTOOLPOS Z Toolchange Position #ZMOVE [15] Online Hilfe „Code Wizard“.Stichwort „Tokens“ 49 Sets variable directly Sets variable directly Sets variable directly Calls procedure Incremental from last absolute datum position Sets variable directly 2. Zusatzfunktionen (M-funktionen, Auswahl) Klassen Bearbeiten Klasse 1: Klasse 2: Klasse 4: Klasse 6: Fräs- und Bohrmaschinen, Lehrenbohrwerke, Bearbeitungszentren. Drehmaschinen und Dreh-Bearbeitungszentren. Brenn-, Plasma-, Wasserstrahlschneiden und für Drahterodiermaschinen. Maschinen mit mehreren Schlitten, Spindeln und Handhabungsausrüstung. Tabelle Klassen 1, 2 u.6. Code M00 M01 M02 M03 M04 M05 M06 M07 M08 M09 M10 M11 M12 M13 M14 M17 M19 M30 M31 M34 M35 M40 M4145 M48 M49 M50 Funktion Programmierter Halt Wahlweiser Halt Programmende Spindel im Uhrzeigersinn Spindel im Gegenuhrzeigersinn Spindel Halt Werkzeugwechsel Kühlschmiermittel 2 EIN Kühlschmiermittel 1 EIN Kühlschmiermittel AUS Klemmung EIN (Werkstück) Klemmung AUS (Werkstück) Synchronisation Spindel im Uhrzeigersinn mit Kühlschmierstoff Wirksamkeit Klasse K1,2 K1,2 K1,2 K1,2 K1,2 K1,2 K6 K1,2 M15 Spindel Stop und Kühlmittel aus ( nur für Spindel) Spindel im Gegenuhrzeigersinn mit Kühlschmierstoff Unterprogrammende Spindel-Halt in definierter Endstellung Programmende mit Rücksetzen Aufheben der Verriegelung Spanndruck normal Spanndruck reduziert Automatische Getriebeschaltung K1,2 K1,2 K1,2 K1,2 K1,2 K1,2 Getriebestufe 1 bis 5 K1,2 Überlagerung wirksam Überlagerung unwirksam Kühlschmiermittel 4 EIN K1,2 50 M51 M54 M55 M56 M57 M58 M59 M60 M70 M7172 M7178 M80 M81 M82 M83 M84 M85 M87 M88 M89 M99 Kühlschmiermittel 3 EIN Reitstockpinole zurück Reitstockpinole vor Reitstock mitschleppen AUS Reitstock mitschleppen EIN Konstante Spindeldrehzahl AUS Konstante Spindeldrehzahl EIN Werkstückwechsel Unbedingter Start aller Systeme Unbedingter Start von System 19 K1,2 K2 K2 K2 K2 K2 K2 Indexposition der Drehtisches K1 Lünette 1 öffnen Lünette 1 schließen Lünette 2 öffnen Lünette 2 schließen Lünette mitschleppen AUS Lünette mitschleppen EIN Status-Anzeige Bearbeitung Status-Anzeige Ruhestellung Statusanzeige Ruhestellung für alle Systeme Zyklus Wiederholung K2 K2 K2 K2 K2 K2 K6 K6 K6 K6 K6 K6 [16] Tabelle von Internetseite: http://de.metalltechnik.wikia.com/wiki/Zusatzfunktionen_(M-Funktionen) 51 3. Programmaufbau des NC- Technik [17] Tabellenbuch Metall. (2008). EUROPA LEHMITTEL 52