Download - NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

Transcript
Page 1: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

NCT® 99M

NCT® 2000MSteuerungen für Fräsmaschinen und Bearbeitungszentren

Programmieranleitung

Page 2: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

Hergestellt und entwickelt von: NCT Automation kft.H-1148 Budapest Fogarasi út 7. :Adresse: H-1631 Bp. Pf.: 26 F Telefon: +36 (1) 467 63 00 F Telefax: + 36 (1) 363 66 05

E-mail: [email protected] Page: www.nct.hu

Page 3: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

3

Inhaltsverzeichnis

1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.1 Das Teileprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Wort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Satz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Programmnummer und Programmname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Programmanfang, Programmende . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Programmformat im Speicher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Programmformat bei der Kommunikation mit externen Geräten . . . . . . . . . . . . . . . . . . . . . 9Hauptprogramm und Unterprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9DNC-Kanal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.2 Grundbegriffe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2 Angesteuerte Achsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.1 Benennung der Achsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.2 Mass- und Inkrementensystem der Achsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3 Vorbereitungsfunktionen (G-Kodes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4 Die Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.1 Das Positionieren (G00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.2 Geradeninterpolation (G01) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.3 Die Kreisinterpolation und die ebene Spiraleninterpolation (G02, G03) . . . . . . . . . . . . . . 244.4 Die räumliche Spiraleninterpolation (G02, G03) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.5 Gewindeschneiden gleichmässiger Gewindesteigungen (G33) . . . . . . . . . . . . . . . . . . . . . 294.6 Polarkoordinaten-Interpolation (G12.1, G13.1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.7 Zylinderinterpolation (G7.1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5 Koordinatenangaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.1 Absolute und inkrementale Programmierung, I-Operator (G90, G91) . . . . . . . . . . . . . . . 385.2 Dateneingabe in Polarkoordinaten (G15, G16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.3 Umwandeln Zoll/metrisch (G20, G21) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.4 Angabe und Wertbereich der Koordinaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.5 Bedienung der Umdrehung der umlaufenden Achsen . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

6 Der Vorschub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446.1 Eilgangsvorschub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446.2 Arbeitsvorschub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6.2.1 Vorschub pro Minute und pro Umdrehung (G94, G95) . . . . . . . . . . . . . . . . . . . . . 456.2.2 Abgrenzung des Arbeitsvorschubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

6.3 Automatische Beschleunigung/Verzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476.4 Vorschubsteuernde Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

6.4.1 G09: Genauhalt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486.4.2 G61: Betriebsart Genauhalt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Page 4: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4

6.4.3 G64: Betriebsart Stetiges Spanen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496.4.4 G63: Betriebsart Korrektur- und Stop-Sperre . . . . . . . . . . . . . . . . . . . . . . . . . . . 496.4.5 G62: Automatische Vorschubreduzierung bei scharfen Ecken . . . . . . . . . . . . . . . . 496.4.6 Automatische Vorschubreduzierung bei inneren Kreisbögen . . . . . . . . . . . . . . . . . 50

7 Die Verweilzeit: G04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

8 Der Referenzpunkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528.1 Automatisches Referenzpunktanfahren (G28) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528.2 Positionieren auf die Referenzpunkte 1, 2, 3, 4 (G30) . . . . . . . . . . . . . . . . . . . . . . . . . . 538.3 Automatischer Rückkehr von dem Referenzpunkt (G29) . . . . . . . . . . . . . . . . . . . . . . . . 53

9 Koordinatensysteme, Anwahl der Ebene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559.1 Das Maschinen-Koordinatensystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

9.1.1 Einstellen des Maschinen-Koordinatensystems . . . . . . . . . . . . . . . . . . . . . . . . . . . 569.1.2 Anwählen des Maschinen-Koordinatensystems (G53) . . . . . . . . . . . . . . . . . . . . . 56

9.2 Maschinen-Koordinatensysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569.2.1 Einstellen der Werkstück-Koordinatensysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . 569.2.2 Anwählen des Werkstück-Koordinatensystems: G54, ..., G59 . . . . . . . . . . . . . . . 579.2.3 Verschieben des Werkstück-Koordinatensystem aus dem Programm . . . . . . . . . . 589.2.4 Herstellen eines neuen Werkstück-Koordinatensystems (G92) . . . . . . . . . . . . . . . 59

9.3 Das lokale Koordinatensystem (G52) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609.4 Anwählen von Ebenen (G17, G18, G19) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

10 Die Spindelfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6310.1 Die Spindeldrehzahlbefehl (S-Kode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6310.2 Programmierung der Berechnung der konstanten Schnittgeschwindigkeit . . . . . . . . . . . 63

10.2.1 Angabe der Berechnung der konstanten Schnittgeschwindigkeit (G96, G97). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

10.2.2 Abgrenzung des Wertes der konstanten Schnittgeschwindigkeit (G92) . . . . . . . . . 6410.2.3 Achsenbestimmung zur Berechnung der konstanten Schnittgeschwindigkeit

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6510.3 Rückkoppelung der Spindelposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6510.4 Orientierter Spindelstop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6510.5 Spindelpositionierung (Indexierung) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6610.6 Überwachung der Schwankung der Hauptspindeldrehzahl (G25, G26) . . . . . . . . . . . . 66

11 Die Werkzeugverwaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6911.1 Befehl des Werkzeugaufrufes (T-Kode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6911.2 Programmformat zur Werkzeugprogrammierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

12 Zusatzfunktionen und Hilfsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7112.1 Zusatzfunktionen (M-Kodes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7112.2 Hilfsfunktionen (A-, B-, C-Kodes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7212.3 Reihenfolge der Durchführung verschiedener Funktionen . . . . . . . . . . . . . . . . . . . . . . . 72

Page 5: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5

13 Organisierung des Teileprogrammes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7313.1 Die Satznummer (N-Adresse) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7313.2 Bedingte Ausblendsätze (/-Adresse) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7313.3 Hauptprogramm und Unterprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

13.3.1 Aufrufen des Unterprogrammes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7313.3.2 Rückkehr aus dem Unterprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7413.3.3 Sprung innerhalb des Hauptprogrammes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

14 Die Werkzeugkorrektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7714.1 Bezugnahme auf Werkzeugkorrekturen (H und D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7714.2 Modifizieren der Werkzeugkorrekturwerte von dem Programm aus (G10) . . . . . . . . . . 7814.3 Die Werkzeuglängenkorrektur (G43, G44, G49) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7914.4 Die Werkzeugverschiebung (G45...G48) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8014.5 Werkzeugradienkorrektur in der Ebene (G38, G39, G40, G41, G42) . . . . . . . . . . . . . 84

14.5.1 Einschalten der Radienkorrektur. Anfahren an die Kontur . . . . . . . . . . . . . . . . . . 8714.5.2 Eingeschaltete Radienkorrektur. Fahren der Kontur entlang . . . . . . . . . . . . . . . . . 9114.5.3 Ausschalten der Werkzeugradienkorrektur. Verlassen der Kontur . . . . . . . . . . . . 9414.5.4 Richtungswechsel bei der Radienkorrekturberechnung . . . . . . . . . . . . . . . . . . . . . 9714.5.5 Beibehaltung des Vektors (G38) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9914.5.6 Programmieren von Bögen an Ecken (G39) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10014.5.7 Allgemeines über die Anwendung der in der Ebene liegenden Radienkorrektur

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10114.5.8 Störungsprobleme beim Konturfahren. Interferenzprüfung . . . . . . . . . . . . . . . . . 107

14.6 Die dreidimensionale Werkzeugkorrektur (G41, G42) . . . . . . . . . . . . . . . . . . . . . . . . 11114.6.1 Ein- und Ausschalten der dreidimensionalen Werkzeugkorrektur (G40, G41, G42)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11114.6.2 Der dreidimensionale Korrekturvektor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

15 Sondertransformationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11315.1 Verdrehen des Koordinatensystems (G68, G69) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11315.2 Masstabieren (G50, G51) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11415.3 Spiegeln (G50.1, G51.1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11515.4 Programmierregeln der Sondertransformationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

16 Automatische geometrische Rechnungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11816.1 Programmierung von Anfasen und Eckenverrunden . . . . . . . . . . . . . . . . . . . . . . . . . . 11816.2 Angabe einer Gerade durch Neigungswinkel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11916.3 Schnittpunktsrechnungen in der Ebene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

16.3.1 Schnittpunkt zweier Geraden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12116.3.2 Schnittpunkt einer Gerade und eines Kreises . . . . . . . . . . . . . . . . . . . . . . . . . . . 12316.3.3 Schnittpunkt eines Kreises und einer Gerade . . . . . . . . . . . . . . . . . . . . . . . . . . . 12516.3.4 Schnittpunkt zweier Kreise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12716.3.5 Verkettung von Schnittpunktsrechnungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

17 Bohrzyklen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13017.1 Ausführliche Beschreibung der Bohrzyklen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

Page 6: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6

17.1.1 Tiefbohrzyklus mit hoher Geschwindigkeit (G73) . . . . . . . . . . . . . . . . . . . . . . . 13617.1.2 Bohrzyklus für Linksgewinden (G74) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13717.1.3 Ausdrehen mit automatischer Werkzeugverstellung (G76) . . . . . . . . . . . . . . . . . 13817.1.4 Ausschalten des Zyklus (G80) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13917.1.5 Bohrzyklus, Rückzug im Eilgang (G81) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13917.1.6 Bohrzyklus mit Verweilen, Rückzug im Eilgang (G82) . . . . . . . . . . . . . . . . . . . . 14017.1.7 Tiefbohrzyklus (G83) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14117.1.8 Gewindebohrzyklus (G84) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14217.1.9 Gewindebohrzyklus ohne Ausgleichsfutter (G84.2, G84.3) . . . . . . . . . . . . . . . . 14317.1.10 Bohrzyklus, Rückzug mit Vorschub (G85) . . . . . . . . . . . . . . . . . . . . . . . . . . . 14617.1.11 Bohrzyklus, Eilgangsrückzug bei stillstehender Spindel (G86) . . . . . . . . . . . . . 14717.1.12 Bohrzyklus, Handbedienung im Bohrungsgrund/Ausdrehen rückwärts mit automatischer

Werkzeugrückstellung (G87) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14817.1.13 Bohrzyklus, Handbedienung nach einer Verweilzeit im Bohrungsgrund (G88)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15017.1.14 Bohrzyklus mit Verweilen im Bohrungsgrund, Rückzug mit Vorschub (G89)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15117.2 Anmerkungen zur Anwendung der Bohrzyklen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

18 Messfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15318.1 Messen beim Löschen des Restweges (G31) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15318.2 Automatische Werkzeuglängenmessung (G37) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

19 Sicherheitsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15619.1 Programmierbare Arbeitsraumabgrenzung (G22, G23) . . . . . . . . . . . . . . . . . . . . . . . 15619.2 Parametrierter Endschalter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15819.3 Arbeitsraumüberwachung vor dem Anlassen einer Bewegung . . . . . . . . . . . . . . . . . . 158

20 Kundenmakros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16020.1 Einfaches Abrufen eines Makros (G65) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16020.2 Erbliches Aufrufen von Makros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

20.2.1 Aufrufen eines Makros nach jedem Fahrbefehl (G66) . . . . . . . . . . . . . . . . . . . . 16120.2.2 Aufrufen von Makros aus jedem Satz (G66.1) . . . . . . . . . . . . . . . . . . . . . . . . . 162

20.3 Benutzerseitiger Makroaufruf auf G-Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16320.4 Benutzerseitiges Aufrufen von Makros auf einen M-Code . . . . . . . . . . . . . . . . . . . . . 16420.5 Benutzerdefiniertes Aufrufen eines Unterprogrammes durch M-Code . . . . . . . . . . . . . 16420.6 Benutzerdefiniertes Aufrufen von Unterprogrammen durch T-Code . . . . . . . . . . . . . . 16520.7 Benutzerdefiniertes Aufrufen von Unterprogrammen durch S-Code . . . . . . . . . . . . . . 16520.8 Benutzerdefiniertes Aufrufen von Unterprogrammen durch A-, B-, C-Codes . . . . . . . 16620.9 Unterschied zwischen einem Unterpogramm- und einem Makroaufruf . . . . . . . . . . . . 166

20.9.1Mehrmaliger Aufruf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16620.10 Format des Benutzermakros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16820.11 Variablen der Programmsprache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

20.11.1 Identifizierung der Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16820.11.2 Bezugnahme auf eine Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16920.11.3 Leere Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Page 7: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

7

20.11.4 Zahlenmässige Darstellung von Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16920.12 Typen der Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

20.12.1 Lokale Variablen: #1 - #33 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17020.12.2 Globale Variablen: #100 - #199, #500 - #599 . . . . . . . . . . . . . . . . . . . . . . . . 17120.12.3 Systemvariablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

20.13 Anweisungen der Programmiersprache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18020.13.1 Die wertzuweisende Anweisung: #i = #j . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18020.13.2 Arithmetische Operationen und Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 18020.13.3 Bedingte Ausdrücke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18420.13.4 Unbedingter Sprung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

20.13.5 Bedingter Sprung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18420.13.6 Bedingte Anweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18520.13.7 Zyklusorganisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

20.13.8 Datenausgabebefehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18720.14 NC- und Makroanweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19120.15 Abarbeitung der Makrosätze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19320.16 Anzeigen von Makros und Unterprogrammen im Automatikbetrieb . . . . . . . . . . . . . . 19320.17 Benutzung der STOP-Taste bei der Abarbeitung einer Makroanweisung . . . . . . . . . 19420.18 Taschenfräszyklus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

Notizen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

Stichwortverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

2. Juli 2002

Page 8: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

8

1 Einleitung

1.1 Das Teileprogramm

Ein Teileprogramm ist eine Anzahl von Anweisungen, die die Steuerung interpretieren kann und mitdenen die Maschinenfunktionen angesteuert werden können.Ein Teileprogramm besteht aus Sätzen. Die Sätze werden aus Wörtern gebildet.

Wort: Adresse und AngabeEin Wort besteht aus zwei Teilen, aus der Adresse und der Angabe. Die Adresse besteht aus einemoder mehreren Charakteren. Die Angabe ist ein numerischer Wert, die ganze Werte und Dezimalwerteaufnehmen kann. Gewisse Adresssen können vorzeichenbehaftet sein, bzw. einen I-Operator erhalten.

Adressenkette:

Adressen Bedeutung Wertgrenze

O Programmnummer 0001 - 9999

/ optioneller Satz 1 -9

N Satznummer 1 -99999

G Vorbereitungsfunktion *

X, Y, Z, U, V, W Längskoordinaten I, -, *

A, B, C Winkel- u. Längskoordinaten, Hilfsfunktionen I, -, *

R Kreisradius, Hilfsangabe I, -, *

I, J, K Kreismittelpunktkoordinate, Hilfskoordinate -, *

E Hilfskoordinate -, *

F Vorschub*

S Spindeldrehzahl*

M Zusatzfunktion 1 - 999

T Werkzeugnummer 1 - 9999

H, D Nummer der Längs- und Radienkorrekturen 1 - 99

L Wiederholungszahl 1 - 9999

P Hilfsangabe, Verzögerungszeit -, *

Q Hilfsangabe -, *

,C Fasenbreite -, *

,R Abrundungsradius -, *

,A Neigungswinkel einer Geraden -, *

( Anmerkung

Die Adressen, die in der Spalte Wertgrenze mit einem * bezeichnet sind, können auch Dezimalwerteannehmen.

Page 9: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

9

Für die Adressen, bei denen I und das Minuszeichen ersichtlich ist, kann ein Inkrementaloperator, bzw.das Vorzeichen angegeben werden.Das Pluszeichen wird nicht angezeigt und nicht gespeichert.

SatzEin Satz wird aus Wörtern zusammengesetzt.Die Wörter werden im Speicher durch den Charakter s (Line Feed) getrennt. In den Sätzen ist dieBenutzung der Satznummer unverbindlich. Damit das Satzende und Satzbeginn getrennt werden können,wird mit dem Satzanfang immer in einer neuen Zeile begonnen und das > Zeichen vorangesetzt. InSätzen, die länger als eine Zeile sind, werden die nachfolgenden Zeilen um eins Charakter eingerückt.

Programmnummer und ProgrammnameEin Programm wird durch die Programmnummer und den Programmnamen identifiziert. Die Anwendungder Programmnummer ist verbindlich, die des Programmnamens nicht.Die Adresse der Programmnummer heisst: O und muss genau mit 4 Ziffern gefolgt werden.Der Programmname ist eine beliebige Charakterserie zwischen beginnenden "(" und abschliessenden")" Klammern geschrieben. Er kann höchstens 16 Charaktere enthalten.Die Programmnummer und der Programmname werden durch das Zeichen s (Line Feed) von denanderen Programmsätzen im Speicher getrennt.Während einer Programmerstellung werden die Programmnummer und der Progammname in der erstenZeile stets angezeigt.Im Hintergrundspeicher können keine Programme unter derselben Programmnummer untergebarchtwerden.

Programmanfang, ProgrammendeEin Programm wird mit dem Charakter % begonnen und beendet. Während einer Programmerstellungsteht das abschliessende Charakter hinter dem letzten Satz. So kann gesichert werden, dass die bereitsabgeschlossenen Sätze gespeichert werden, selbst wenn ein Stromausfall während derProgrammerstellung auftritt.

Programmformat im SpeicherEin im Speicher hintergelegtes Programm ist ein Haufen von ASCII-Charakteren.Programmformat:

%O1234(PROGRAMMNAME)s/1N12345G1X0Y...sG2Z5...s....s...s...sN1G40...M2s%

In der obigen Charakterkette werden durchs das LF Charakter (Line Feed) und% das Anfang und das Ende des Programmes

symbolisiert.

Programmformat bei der Kommunikation mit externen GerätenDas angegebene Format gilt auch bei einer Kommunikation mit externen Geräten.

Page 10: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

10

Hauptprogramm und UnterprogrammDie Teileprogramme können auf

Hauptprogramme undUnterprogramme

unterteilt werden.Die Bearbeitung eines Werkstückes wird im Hauptprogramm beschrieben. Sollen sich wiederholendeMuster an verschiedenen Stellen bearbeitet werden, brauchen diese Programmabschnitte imHauptprogramm nicht von neuem beschrieben zu werden. Es können Unterprogramme organisiertwerden, die aus beliebigen Stellen des Hauptprogrammes, sogar aus Unterprogrammen aufgerufenwerden können. Aus einem Unterprogramm kann man ins aufrufende Programm zurückkehren.

DNC-KanalEs ist auch möglich, ein Programm in einer äusseren Einheit (z.B. in einem Computer) durchzuführen,ohne es in der Steuerungsmemorie zu speichern. In diesem Fall nimmt die Steuerung das Programmnicht von der Memorie, sondern durch die Oberfläche RS232 von äusserem Datenträger. DieseVerbindung wird DNC-Kanal genannt. Diese Methode ist bei der Durchführung solcher Programme,die wegen ihres Masses in die Steuerungsmemorie nicht hineingehen könnten, äusserst nützlich.Der DNC-Kanal ist ein protokollgesteuerter Datenübertragungskanal dem Folgenden gemäss:

Wobei die Bedeutung (und der ASCII-Kode) der Mnemoniken das Folgende ist:BEL (7): Die Steuerung fordert die Senderseite zur Aufnahme der Verbindung auf. Ist ACK

innerhalb einer bestimmten Zeit nicht vorhanden, gibt die Steuerung wiederholt BELaus.

ACK (6): Quittieren.NAK (21): Falsche Datenübertragung (z.B. Hardware-Fehler in der Leitung oder BCC-

Fehler). Die Blockübertragung ist zu wiederholen.DC1 (17): Die Übertragung des nächsten Blocks soll starten.DC3 (19): Unterbrechung der Verbindung.BLOCK:

- Grundsätzlich ist er ein NC-Satz (auch den Satz abschliessender s) und derenSumme (BCC) in 7 Biten gespeichert als letzter Byte des Satzes (BCC ist 7,der höchste Bit ist in jedem Fall 0). Im Satz kann kein SPACE (32) oderkleinerer Charakter mit ASCII-Kode sein.

- EOF (26): (End Of File): der Senderfile sendet Endezeichen und damit unterbrichtdie Verbindung.

Zur DNC-Betriebsart ist der zweite physische Kanal (nur dieser kann als DNC-Kanal angewandtwerden) in der Art 8 Bit gerade Parität zu stellen. Das vom DNC-Kanal durchgeführte Hauptprogramm kann nur lineare Sekvenz haben. Es bezieht sichauf die eventuell aufgerufenen Unterprogrammen oder Makros nicht, aber diese sollen in derSteuerungsmemorie sein. Wenn von der linearen Sekvenz im Hauptprogramm abgewichen wird(GOTO, DO WHILE), gibt die Steuerung den Fehlerkode 3058 NICHT IN DNC BETRIEB. Wenndie Steuerung BLOCK-Fehler wahrnimmt und mit NAK antwortet, ist BLOCK zu wiederholen.

Steuerung: Sender:

< BEL > DC1 NAK/ACK DC3 ACK > BLOCK <

Page 11: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

11

Page 12: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

12

Abb. 1.2-1

Abb. 1.2-2

Abb. 1.2-3

1.2 Grundbegriffe

Die InterpolationIm Laufe der Bearbeitung kann die Steuerungdas Werkzeug einer Geraden, oder einer Kreis-bahn entlangführen. Diese Möglichkeit wird In-terpolation genannt.Werkzeugbewegung entlang einer Geraden:Programm:

G01 Y__X__ Y__

Werkzeugbewegung entlang einer Kreisbahn:Programm:

G03 X__ Y__ R__

Obwohl bewegt sich der Tisch samt demWerkstück - und nicht das Werkzeug - sprechenwir in dieser Beschreibung immer über dieRelativbewegung des Werkzeuges zumWerkstück.

Vorbereitungsfunktionen (G-Kodes)Der Typ einer durch einen Satz durchführbaren Tätigkeit wird mit Hilfe der vorbereitenden Funktionen,anders genannt der G-Kodes beschrieben. Z.B. leitet der G01-Kode eine lineare Interpolation ein.

VorschubDie Relativgeschwindigkeit des Werkzeuges zumWerkstück während der Bearbeitung wird Vor-schub genannt. In einem Programm kann der ge-wünschte Vorschub durch einen Zahlenwert un-ter der F-Adresse angegeben werden. F150 be-deutet z.B. 150 mm/min.

Page 13: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

13

Abb. 1.2-4

Abb. 1.2-5

ReferenzpunktDer Referenzpunkt ist ein fester Punkt auf der Werkzeugmaschine. Nach Einschalten der Maschinemüssen die Schlitten den Referenzpunkt anfahren. Nach erfogtem Referenzpunktfahren kann dieSteuerung auch Absolutkoordinaten interpretieren.

KoordinatensystemDie auf der Teilezeichnung angegebenen Abmes-sungen beziehen sich auf einen bestimmten Punktdes Werkstückes. Dieser Punkt ist der Nullpunktdes Werkstück-Koordinatensystems. Im Teile-programm sind diese Massangaben für die Ko-ordinatenadressen eingeschrieben werden. Z.B.:X340 bedeutet den X-Koordinatenpunkt 340des Werkstück-Koordinatensystems.

Das in der Steuerung re-gistrierte Koordinatensys-tem, in dem die Abmes-sungen interpretiert wer-den, verunterscheidet sichvon dem des Werkstüc-kes. Damit die Steuerungkorrekte Werkstücke her-stellen kenn, müssen dieNullpunkte der beidenKoordinatensysteme aufdie selbe Position ge-bracht werden. Dies kannz.B. dadurch erreicht wer-den, dass der Werkzeug-mittelpunkt auf eine bekannte Position des Werkstückes gefahren wird und das Koordinatensystem derSteuerung auf diesen Wert umgestellt wird.

Page 14: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

14

Abb. 1.2-6

Abb. 1.2-7

Absolute KoordinatenangabeBei einer absoluten Koordinatenangabe bewegtsich das Werkzeug bis zu einer vom Origo desKoordinatensystems berechneten Entfernung, al-so auf den auf der Koordinate angegebenenPunkt.Der Kode einer absoluten Weginformation istG90. Durch die Anweisungszeile

G90 X50 Y80 Z40

wird das Werkzeug auf den Punkt der oben an-gegebenen Position bewegt unabhängig davon,wo es sich vor der Ausgabe des Befehls befindethat.

Inkrementelle KoordinatenangabeBei einer inkrementellen Koordinatenangabe in-terpretiert die Steuerung die Koordinatenangabeso, dass das Werkzeug auf eine von der momen-tanen Position berechnete Entfernung bewegtwird.Der Kode einer inkrementellen Koordinatenan-gabe heisst G91. Der Kode G91 bezieht sich aufalle Koordinatenwerte. Die Anweisungszeile

G91 X70 Y-40 Z-20

bringt das Werkzeug auf die oben besagte Ent-fernung von der vorherigen Position.Eine inkrementelle Angabe kann auch als Koor-dinate definiert werden. Der Charakter I nachder Koordinatenadresse bedeutet, dass die ge-gebene Koordinate inkrementell betrachtet wer-den soll.In der Anweisungszeile

G90 XI-70 Y80 Z40

werden die X-Angabe inkrementell, jedoch die Y- und Z-Angaben infolge des Kodes G90 absolutinterpretiert.

Erbliche (modale) FunktionenBei dieser Programmiersprache wird die Wirkung gewisser Anweisungen, oder ihrer Wert solangegeerbt, bis kein Befehl entgegengesetzten Sinnes, oder kein anderer Wert für die entprechende Funktionausgegeben wird. Im Programmteil

N15 G90 G1 X20 Y30 F180N16 X30N17 Y100

werden z.B. die Zustände G90 (absolute Angabe) und G1 (Geradeninterpolation), bzw. der Wert von

Page 15: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

15

Abb. 1.2-8

F (Vorschub) von den Sätzen N16 und N17 geerbt, so brauchen diese Funktionen nicht satzweiseangegeben zu werden.

Nichterbliche FunktionenDie Wirkungen gewisser Funktionen, oder der Wert gewisser Angaben sind nur im gegebenen Satzwirksam. Diese Funktionen sind nichterbliche Funktionen.

SpindeldrehzahlDie Spindeldrehzahl kann unter der S-Adresse, die auch S-Funktion genannt wird, angegeben werden.Die Anweisung S1500 besagt, dass sich die Spindel mit einer Drehzal von 1500 pro Minute dreht.

WerkzeugnummerIm Laufe der Bearbeitung sind verschiedene spanende Operationen mit unterschiedlichen Werkzeugendurchgeführt werden. Die Werkzeuge sind durch Nummern verunterschieden. Ein Bezugnahme auf dieWerkzeuge erfolgt durch den T-Kode. Die Anweisung T25 im Programm bnedeutet, dass dasWerkzeug der Nummer 25 eingewechselt werden soll. Je nach Maschinenausführung kann einWerkzeugwechsel manuell, oder automatisch erfolgen.

ZusatzfunktionenIm Laufe der Bearbeitung sind eine Anzahl von Ein- und Ausschaltoperationen erforderlich, z.B sind dieSpindel anzulassen, oder das Kühlmittel anzuschalten. Diese Operationen sind durch die M-Funktionenmöglich. In der Anweisungszeile

M3 M8

bedeutet z.B. M3 die Spindeldrehung im Uhrzeigersinn, M8 aber die Zuscahltung des Kühlmittels.

LängenkorrekturDie verschieden Operationen werdenmit Werkzeugen unterschiedlicher Län-gen durchgeführt. Bei einer Serienferti-gung müssen auch dieselben Operatio-nen mit unterschiedlich langen Werk-zeugen, u.a. infolge von Werkzeug-brüchen verrichtet werden. Damit dieim Teileprogramm beschriebenen Be-wegungen von der Werkzeuglänge,bzw. der Auskragung unabhängig wer-den, müssen die Werkzeuglängen derSteuerung mitgeteilt werden. Wenn dieWerkzeugspitze auf den angegebenenPunkt bewegt werden soll, muss der angegebene Wert der Längenangabe samt einem begleitendenKode aufgerufen werden. Das ist unter der H-Adresse möglich. Z.B. bezieht sich die Anweisung H1auf die Längenangabe Nr. 1. Von nun an führt die Steuerung die Werkzeugspitze auf den angegebenenPunkt. Diese Operation ist die Zuschaltung der Längenkorrektur.

Page 16: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

1 Einleitung

16

Abb. 1.2-9

RadienkorrekturBeim Fräsen einer Kontur soll das Werkstückmit Fräswerkzeugen unterschiedlicher Radien be-arbeitet werden. Im dessen Interesse, dass imProgramm nicht die Mittelpunktbahn unter Inbe-trachtnahme der Werkzeugradien, sondern dieeffektive Werkstückkontur beschrieben werdenkann, ist eine Radienkorrektur einzuführen. DieWerte für die Längenkorrekturen sind in dieSteuerung anzugeben. In den weiteren kann unterder D-Adresse auf Längenkorrekturen Bezuggenommen werden.

VerschleisskorrekturWährend des Bearbeitungsprozesses sind die Werkzeuege einem Verschleiss ausgesetzt. Die soentstehenden Massänderungen können sowohl in Längsrichtung als auch radial alsVerschleisskorrekturen inbetrachtgenommen werden. Die Korrekturwerte können in die Steuerungeingegeben werden. Jeder Korrekturgruppe (auf die unter der H-, oder D-Adresse mit einer Zahlhingewiesen wird) gehören je ein Geometriewert, d.h. die Originallänge, oder der Radius desWerkzeuges und je ein Werhschleiswert. Als die Steuerung die Korrektur aufruft, wird die Bewegungdurch die Summe der beiden Werte korrigiert.

Page 17: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

2 Angesteuerte Achsen

17

Abb. 2.1-1

2 Angesteuerte Achsen

Anzahl Achsen in Grundausführung 3

Anzahl ergänzender Achsen 5 (insgesamt 8 Achsen)

Anzahl gleichzeitig bewegbarer Achsen 8 (mit Geradenintepolation)

2.1 Benennung der Achsen

Die Benennung der gesteuerten Achsen kann im Parameterspeicher definiert werden. Hier kannbestimmt werden, ob welche physikalische Achse unter welcher Adresse bewegt wird.Die Achsnamen einer Fräsmaschinen-steuerung in Grundausführung sind: X,Y undZ.Die Benennung der ergänzenden Achsen istvom Typ der Achse abhängig.Die möglichen Benennungen der ergänzendenlinearen Achsen sind: U, V und W. Liegendiese Achsen zu einer Hauptrichtung parallel,so ist die zur X-Achse parallel liegende er-gänzende Achse die U-Achse, die zur Y pa-rallel liegende Achse heisst V und die zur Zparallel liegende Achse ist die W-Achse.Die Namen der rotierenden Achsen sind: A,B und C. Der Name der zur X-Richtung pa-rallel liegenden Drehachse heisst A, der zur Yparallel liegende Achse heisst B und zur Zparallel liegenden Achse ist die C-Achse.

2.2 Mass- und Inkrementensystem derAchsen

Koordinatenangaben können bis zu 8 Ziffern angegeben werden. Diese Daten könnenvorzeichenbehaftet sein. Das Pluszeichnen wird nicht ausgeschrieben.Die Daten der eingehenden Längskoordinaten können in mm, oder in Zoll angegeben werden. Das istdas Input-Massystem. Das Input Massystem kann im Programm angewählt werden.Die an der Maschine angebrachten Wegmessyteme können die Positionen in mm, oder in Zollaufnehmen. Das Wegmessystem bestimmt das ausgehende, oder Output-Massystem, das derSteuerung parametriert angegeben werden muss. Innerhalb einer Maschine können die Massystemenicht gemischt angewandt werden.Sind das Input- und Output-Massytem unterschiedlich, erfolgt das Umschalten durch die Steuerung

Page 18: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

2 Angesteuerte Ahsen

18

automatisch.Das Massystem der Drehachsen ist immer der Winkelgrad.Die kleinste angebbare Abmessung ist als Input-Inkrementensystem der Steuerung betrachtet. DiesesInput-Inkrementensystem der Steuerung kann durch einen Parameter angewählt werden. Es kann ausdrei Systemen gewählt werden: IS-A, IS-B und IS-C. Auf der selben Maschine können dieInkrementensysteme nicht gemischt angewandt werden.Nach erfolgter Verarbeitung der Eingangsdaten gibt die Steuerung Weginformationen für dieAchsbewegungen aus. Die Auflösung dieser Daten entspricht immer dem Zweifachen des Input-Inkrementensystems. Das ist das Output-Inkrementensystem der Steuerung.Also das Input-Inkrementensystem der Steuerung wird durch die Auflösung der Wegmessystemebestimmt.

Inkrementensystem Kleinste eingebbare Abmessung Grösste eingebbare Abmessung

IS-A

0.01 mm 999999.99 mm

0.001 Zoll 99999.999 Zoll

0.01 Grad 999999.99 Grad

IS-B

0.001 mm 99999.999 mm

0.0001 Zoll 9999.9999 Zoll

0.001 Grad 99999.999 Grad

IS-C

0.0001 mm 9999.9999 mm

0.00001 Zoll 999.99999 Zoll

0.0001 Grad 9999.9999 Grad

Page 19: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

3 Vorbereitungsfunktionen (G-Kodes)

19

3 Vorbereitungsfunktionen (G-Kodes)

Der Typ eines Befehls wird im gegebenen Satz durch die G-Adresse und der darauffolgenden Zahlbestimmt.Die durch die Steuerung interpretierten G-Kodes, deren Funktionen und Gruppierung sind in derfolgenden Tabelle enthalten.

G-Kode Gruppe Funktion Seite

G00*

01

Positionieren 2222

G01* Geradeninterpolation 22

G02 Kreis- Spiraleninterpolation im Uhrzeigersinn24

G03 Kreis- und Spiraleninterpolation im Gegenuhrzeigersinn

G04

00

Verweilzeit 51

G05.1 Einstellung der Betriebsart mehrfacher Vorbearbeitung

G07.1 Zylinderinterpolation 3535

G09 Genauhalt im gegebenen Satz 48

G10 programmierte Dateneingabe 58, 78

G11 Sperre der programmierten Dateneingabe

G12.126

Polarkoordinaten-Interpolation ein3131

G13.1* Polarkoordinaten-Interpolation aus

G15*

17Polarkoordinateneingabe ausgeschaltet

3838G16 Polarkoordinateneingabe

G17*

02

Anwahl der XpYp-Ebene

61G18* Anwahl der ZpXp-Ebene

G19 Anwahl der YpZp-Ebene

G2006

Dateneingabe in Zoll40

G21 Dateneingabe in mm

G22*

04Einschalten der Arbeitsraumabgrenzung

156G23 Ausschalten der Arbeitsraumabgrenzung

G258

Ausschalten der Schwankungsüberwachung der Hauptspindeldrehzahl6666

G26 Einschalten der Schwankungsüberwachung der Hauptspindeldrehzahl

G28

00

programmiertes Referenzpunktanfahren 52

G29 Rückkehr vom Referenzpunkt 53

G30 Ersten, zweiten, dritten u.vierten Referenzpunkt anfahren 53

G31 Messen bei Löschen des Restweges 153

G33 01 Gewindeschneiden 29

Page 20: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

3 Vorbereitungsfunktionen (G-Kodes)

G-Kode Gruppe Funktion Seite

20

G37

00

automatische Werkzeuglängenvermessung 154

G38 Beibehalten des Radienkorrekturvektors 99

G39 Eckabrundung mit Redienkorrektur 100

G40*

07

Ausschalten der Werkzeugradienkorrektur-Berechnung 84, 94

G41 Werkzeugradienkorrektur-Berechnung von links84, 87

G42 Werkzeugradienkorrektur-Berechnung von rechts

G43*

08Längenkorrektur +

79G44* Längenkorrektur -

G45

00

Vermehrung um die Werkzeugverschiebung

80G46 Reduzierung um die Werkzeugverschiebung

G47 Vermehrung um die zweifache Werkzeugverschiebung

G48 Reduzierung um die zweifache Werkzeugverschiebung

G49* 08 Ausschalten der Längenkorrektur 79

G50*

11Masstabieren ausschalten

114G51 Masstabieren

G50.1*

18Spiegeln ausschalten

115G51.1 Spiegeln einschalten

G5200

Koordinatenverschiebung 60

G53 Positionieren im Maschinen-Koordinatensystem 56

G54*

14

Anwahl des Werkstück-Koordinatensystems 1

57

G55 Anwahl des Werkstück-Koordinatensystems 2

G56 Anwahl des Werkstück-Koordinatensystems 3

G57 Anwahl des Werkstück-Koordinatensystems 4

G58 Anwahl des Werkstück-Koordinatensystems 5

G59 Anwahl des Werkstück-Koordinatensystems 6

G61

15

Betriebsart Genauhalt 48

G62 Vorschubreduzierung bei Ecken 49

G63 Override-Sperre 49

G64* kontinuierliches Spanen 49

G65 00 Einfaches Abrufen eines Makros 160

G6612

Aufrufen eines Makros nach jedem Fahrbefehl 161

G66.1 Aufrufen von Makros aus jedem Satz 160162

Page 21: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

3 Vorbereitungsfunktionen (G-Kodes)

G-Kode Gruppe Funktion Seite

21

G67 Löschbefehl 161

G6816

Verdrehung des Koordinatensystems113

G69* Verdrehung des Koordinatensystems ausschalten

G73

09

Tiefbohrzyklus mit hoher Geschwindigkeit 136

G74 Bohrzyklus für Linksgewinden 137

G76 Ausdrehen mit automatischer Werkzeugrückstellung 138

G80* Ausschalten des Zykluszustandes 139

G81 Bohrzyklus, Rückzug im Eilgang 139

G82 Bohrzyklus mit Verzögerung, Rückzug im Eilgang 140

G83 Tiefbohrzyklus 141

G84 Gewindebohren 142

G84.2 Rechtsgewindezyklus ohne Ausgleichsfutter 143

G84.3 Linksgewindezyklus ohne Ausgleichsfutter 143

G85 Bohrzyklus, Rückzug mit Vorschubgeschwindigkeit 146

G86 Bohrzyklus, Eilgangsrückzug bei stillstehender Spindel 147

G87 Ausdrehen rückwärts, Rückzug automatisch/manuell 148

G88 Bohrzyklus, manuelle Betätigung im Tiefpunkt 150

G89 Bohrzyklus mit Verzögerung, Vorschubrückzug 151

G90*

03Massangabe absolut

38G91* Massangabe inkremental

G92 00 Einrichten des Koordinatenssystems 59

G94*

05Vorschub pro Minute

3745G95* Vorschub pro Umdrehung

G9613

Einschalten der Schnittgeschwindigkeitsberechnung5664

G97* Ausschalten der Schnittgeschwindigkeitsberechnung

G98*

10Rückkehr im Bohrzyklus auf den Ausgangspunkt

126131G99 Rückkehr im Bohrzyklus auf R (Annäherungspunkt)

L Anmerkung – Innerhalb einer Gruppe bedeuten die mit * bezeichneten G-Kodes den Zustand, der die

Steuerung nach dem Einschalten annimmt. – Gibt es in einer Gruppe mehrere Kodes mit * bezeichnet, kann mit einem Parameter angewählt

werden, welche davon nach dem Einschalten wirksam werden sollen. Diese sind: G00,G01; G17, G18; G43, G44, G49; G90, G91; G94, G95.

Page 22: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

3 Vorbereitungsfunktionen (G-Kodes)

22

– Aus G20 und G21 wird beim Einschalten wirksam, der beim Ausschalten eingestellt wordenwar.

– Die Grundinterpretation nach Einschalten des Befehls G05.1 kann auf Parameter MULBUFangegeben werden.

– Die G-Kodes der Gruppe 00 werden nicht weitergeerbt, alle anderen sind erblich. – In einem Satz können mehrere G-Kodes mit der Voraussetzung geschrieben werden, dass nur

je eine Funktion aus der selben Gruppe angegeben werden kann. – Die Bezugnahme auf einen illegalen G-Kode, oder die Angabe mehrerer G-Kodes derselben

Gruppe löst die Fehleranzeige 3005 ILLEGALER G-KODE aus.

Page 23: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

23

Abb. 4.1-1

4 Die Interpolation

4.1 Das Positionieren (G00)

Die AnweisungszeileG00 v

bezieht sich auf das Positionieren im aktuellen Koordinatensystem.Das Positionieren erfolgt auf den Koordinatenpunkt v. Hier (und im Weiteren) bezieht sich dieBezeichnung v auf alle gesteuerte Achsen der gegebenen Werkzeugmaschine. (Diese können X, Y, Z,U, V, W, A, B, C sein).Das Positionieren erfolgt bei gleichzeitiger Bewegung aller im Satz angegebenen Achsen, entlang einerGeraden. Die Koordinaten können absolut, oder inkremental sein.Die Positioniergeschwindigkeit kann aus dem Prog-ramm nicht eingestellt werden, sie ist ein vom Werk-zeugmaschinenhersteller in einem Parameter festge-stellter je Achse unterschiedlicher Wert. Bei gleich-zeitiger Bewegung mehrerer Achsen errechnet dieSteuerung die resultierende Geschwindigkeit so,dass das Positionieren binnen einer optimalen Zeiterfolgt und die Geschwindigkeit den Wert der für diejeweiligen Achse eingestellten Geschwindigkeit inkeiner Achse übertritt.Bei der Abarbeitung der Anweisung G00 werdendie Bewegungen am Anfang beschleunigt und amEnde verzögert. Bei Beenden der Bewegung überprüft die Steuerung das Signal "in Position", wenn derParameter des Parameterfeldes POSCHECK gleich 1, wenn er 0 ist, erfolgt keine Kontrolle. DieSteuerung wartet 5 Sekunden auf das Signal "in Position". Steht das Signal binnen dieser Zeit nicht an,sendet die Steuerung die Fehleranzeige 1020 POSITIONSFEHLER. Die von der Position gemessenegrösste, noch annehmbare Abweichung kann im Parameter INPOS angegeben werden. G00 ist ein erblicher Kode, er ist wirksam, solange er von einem anderen Interpolationsbefehl nicht ü-berschrieben wird. Entsprechend dem in der Parametergruppe CODES festgelegten Wert sind dieKodes G00, oder G01 beim Einschalten wirksam.

4.2 Geradeninterpolation (G01)

Die AnweisungszeileG01 v F

stellt eine lineare Interpolation ein. Die für die v-Adresse eingeschriebenen Daten können absolut, oderinkremental sein und sie werden im aktuellen Koordinatensystem interpretiert. DieVorschubgeschwindigkeit kann unter der F-Adresse programmiert werden.Der unter der F-Adresse programmierte Vorschub erfolgt immer entlang der programmierten Bahn. IhreAchskomponenten sind:

Vorschub entlang der X-Achse:

Page 24: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

24

Abb. 4.2-1

Abb. 4.2-2

Vorschub entlang der Y-Achse:

.............................

Vorschub entlang der U-Achse:

.............................

Vorschub entlang der C-Achse:

wobei x, y, .u, ..c die entlang den entsprechenden Achsen programmierten Weglängen sind.

Die programmierte Weglänge:

G01 X100 Y80 F150

Entlang einer Drehachse ist der Vorschub in °/min dimensi-oniert. Im Satz

G01 B270 F120

bedeutet F120: 120 °/min.Im dem Fall, wenn die Bewegungen einer Drehachse undeiner linearen Achse durch die Geradeninterpolation zu-sammengezogen werden, werden die Vorschubkomponen-ten laut den obigen Formeln aufgeteilt. Z.B. im Satz

G91 G01 Z100 B45 F120

sind die Vorschubkomponeneten der Richtung Z, bzw. Bdie Folgenden:

Vorschub entlang der Z-Achse: mm/min

Vorschub entlang der B-Achse: °/min

G01 ist ein erblicher Kode, der wirksam ist, solange er von einem anderen Interpolationsbefehl nicht

Page 25: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

25

Abb. 4.3-1

überschreiben wird. Entsprechend dem in der Parametergruppe CODES des Parameterfeldes sind G00,oder G01 nach dem Einschalten der Steuerung wirksam.

4.3 Die Kreisinterpolation und die ebene Spiraleninterpolation (G02, G03)

In der Anweisungszeilen

ist eine Kreisinterpolation vorgeschrieben.Die Kreisinterpolation erfolgt in der durch die Befehle G17, G18, G19 angewählter Ebene, imUhrzeigersinn (bei der Eingabe von G02), oder im Gegenuhrzeigersinn (bei der Eingabe von G03).

Xp, Yp, Zp bedeuten hier und in den Weiteren:Xp: X-Achse, oder eine dazu parallel liegende Achse,Yp: Y-Achse, oder eine dazu parallel liegende Achse,Zp: Z-Achse, oder eine dazu parallel liegende Achse,

Xp, Yp, Zp sind die Koordinaten des Endpunktes des Kreises im gegebenen Koordinatensystem, dieabsolut, oder inkremental angegeben sind.

Page 26: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

26

Abb. 4.3-2

Abb. 4.3-3

Die weiteren Daten eines Kreises können auf zweierlei Arten eungegeben werden:

Fall 1:Unter der R-Adresse, wobei R der Kreisradius ist. In die-sem Fall errechnet die Steuerung die Kreismittelpunktko-ordinaten aus den Koordinaten des Anfangspunktes (Posi-tion, in der sich die Steuerung im Moment des Einlesensdes Kreissatzes befindet), aus denen des Endpunktes (demunter Xp, Yp, Zp definierten Wert) und aus dem program-mierten Kreisradius automatisch. Da der Umlaufrichtungentsprechend (G02 oder G03) können zwei unterschiedli-che Kreisbögen des Radius R zwischen dem Anfangs- unddem Endpunkt gezogen werden, fährt die Steuerung ent-lang einem von 180° kleineren Bogen, wenn für R ein ne-gativer Wert angegeben wird, bzw. entlang einem vom180° grösseren Bogen, bei Angabe eines positiven Wertes. Z.B.:

Bogenstrecke 1 : G02 X50 Y40 R40Bogenstrecke 2 : G02 X50 Y40 R-40Bogenstrecke 3 : G03 X50 Y40 R40Bogenstrecke 4 : G03 X50 Y40 R-40

Fall 2:Für die Xp-, Yp- und Zp-Achsen wird der Kreismittelpunkt unter den I-, J- und K-Adressenangegeben. Die Steuerung interpretiert diese Angaben stets inkremental und zwar so, dass der durchI, J und K definierte Vektor gegen den Kreismittelpunkt zeigt. Z.B.:

bei G17: G03 X10 Y70 I-50 J-20bei G18: G03 X70 Z10 I-20 K-50bei G19: G03 Y10 Z70 J-50 K-20

Page 27: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

27

Abb. 4.3-4

Abb. 4.3-5

Unter der F-Adresse kann die tangentiale Bahngeschwindig-keit, die der gesamten Bahn entlang stetig ist, programmiertwerden.

L Anmerkungen: – I0, J0, K0 sind vernachlässigbar, z.B. G03 X0 Y100

I-100 – Wenn Xp, Yp, Zp alle weggelassen werden, oder die Ko-

ordinate des Endpunktes mit der des Anfangspunktesübereinstimmt, gibt es zwei Fälle:a. Werden die Mittelpunktkoordinaten des Kreises

unter I, J, K programmiert, interpoliert dieSteuerung einen Vollkreis von 360° (z.B.G03 I-100).

b. Beim Programmieren des Radius R zeigt die Steuerung den Fehlerkode 3012 FALSCHEKREISANWEISUNG R an.

– Die Steuerung zeigt den Fehlerkode 3014 FALSCHE KREISANWEISUNG an, wenn der Kreissatza. weder Radius (R), noch I, J, K enthält, oderb. eine Bezugnahme auf die I-, J-, K-Adressen ausserhalb der angewählten Ebene erfolgt. Z.B.:

G03 X0 Y100, oder (G18) G02 X0 Z100 J-100. – Ist der Differenz zwischen den Radien des Anfangs-, bzw. Endpunktes des im G02-, G03-Satz

bestimmten Kreises grösser, als der im Parameter RADDIF bestimmter Wert, zeigt die Steu-erung den Fehlerkode 3011 KREISRADIUSDIFFERENZ an.

Ist die Differenz der Radien kleiner,als der im genannten Parameter an-gegebene Wert, führt die Steuerungdas Werkzeug entlang einer spiralenBahn, deren Radius sich abhängigvon dem Zentralwinkel linear än-dert.Beim Interpolieren eines Kreisesänderlichen Radius bleibt nicht dieBahngeschwindigkeit, sondern dieWinkelgeschwindigkeit konstant.

Page 28: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

28

Abb. 4.3-6

Abb. 4.3-7

Der folgende Programmteil zeigt ein Beispiel dafür, wie einKreis änderlichen Radius durch die Anwendung der Adres-sen I, J, K definiert werden kann:

G17 G90 G0 X50 Y0G3 X-20 I-50

Ist der angegebene Kreisradius kleiner als die Hälfte der denAnfangspunkt und den Endpunkt verbindenden Geraden, be-trachtet die Steuerung den angegebenen Kreisradius für denanfänglichen Radius des Kreises und interpoliert einen Kreisvon änderlichem Radius, dessen Mittelpunkt auf der dem An-fangspunkt und den Endpunkt verbindenden Geraden und imAbstand R vom Anfangspunkt liegt:

G17 G0 G90 X0 Y0G2 X40 Y30 R10

4.4 Die räumliche Spiraleninterpolation (G02, G03)

Die Anweisungszeilen

definieren eine Spiraleninterpolation.Die Spiraleninterpolation unterscheidet sich von der Kreisinterpolation dadurch, dass auch eine dritte,nicht in der Kreisebene liegende Achse "q" in den Kreissatz geschrieben wird. Die Steuerung führt eineeinfache Bewegung entlang der q-Achse.

Page 29: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

29

Abb. 4.4-1

Abb. 4.4-2

Der unter der F-Adresse angegebene Vorschuberfolgt der Kreisbahn entlang. Die Vorschub-komponente Fq parallel zur q-Achse ergibt sichaus der folgenden Formel:

wobeiLq: Weg entlang der q-AchseLbog: KreisbogenlängeF: programmierter VorschubFq: Vorschub entlang der q-Achse

sind.

Beispielsweise:G17 G03 X0 Y100 Z20 R100 F150

Die Anweisungsserie

definiert eine mehrdimensionale räumliche Spiraleninterpolation, wobei q, r, s die in derKreisinterpolation nicht teilnehmenden Achsen sind.Beispielsweise führt die Anweisungszeile

G17 G3 X0 Y-100 Z50 V20 I-100

das Werkzeug entlang dem Mantel eines schiefenZylinders, wenn V die mit Y parallel liegendeAchse ist.

L Anmerkungen: – In dem Fall, wenn der Parameter HELICALF

des Parameterfeldes auf 1 gesetzt ist, re-alisiert die Steuerung den programmier-ten Vorschub der räumlichen Bahn ent-lang.

– Ist der Radius des in der angewählten Ebenedefinierten Kreises änderlich, erfolgt dieInterpolation entlang dem Mantel einesvorgegebenen Kegels.

Page 30: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

30

Abb. 4.5-1

Abb. 4.5-2

– Eine vorgegebene Werkzeugradienkorrektur wird stets in der Kreisebene realisiert.

4.5 Gewindeschneiden gleichmässiger Gewindesteigungen (G33)

Die AnweisungG33 v F QG33 v E Q

definiert das Gewindeschneiden von zylindri-schen, oder kegeligen Gewinden gleichmässigerSteigung. Für den Vektor v können Koordinatenangaben von maximum zwei Achsen eingege-ben werden. Sind zwei Koordinatenangaben fürv angegeben, wird ein kegeliges Gewinde ge-schnitten. Die Steuerung nimmt die Gewindestei-gung entlang der Achse in Betracht, in der sichein längerer Weg resultiert.Wenn "<45°, d.h. Z>X, wird die programmierteGewindesteigung entlang der Z-Achse, wenn">45°,d.h. X>Z, wird die programmierte Ge-windesteigung entlang der X-Achse realisiert.Die Gewindesteigung kann auf zweierlei Arten definiert werden: – Wird die Gewindesteigung unter der F-Adresse angegeben, wird die Angabe als mm/Umdrehung

oder Zoll/Umdrehung interpretiert. Ist ein Gewinde der Steigung von 2.5 mm erforderlich, istF2.5 zu programmieren.

– Wird die Gewindesteigung unter der E-Adresse angegeben, wird ein Zoll-Gewinde geschnitten. DieE-Adresse wird als Gewinden/Zoll interpretiert. Wird z.B. E3 programmiert, wird ein Gewindeder Steigung von a" = 25.4/3 = 8.4667 mm gechnitten.

Unter der Q-Adresse wird der von dem Nullimpuls Impulsgebers der Hauptspindel berechneteWinkelverdrehung angegeben, bei der die Steuerung mit dem Gewindeschneiden beginnt. Einmehrgängiges Gewinde kann durch entsprechendes Programmieren des Q-Wertes hergestellt werden.Hier kann also programmiert werden, ob die einzelnen Gewindegänge bei welcher Spindelverdrehungbegonnen werden. Wird z.B. ein zweigängiges Gewinde geschnitten, wird der erste Gang bei Q0 (esist nicht gesondert zu programmieren), der zweite Gang bei Q180 zu starten.G33 ist eine erbliche Funktion. Werden mehrereGewindesätze nacheinander programmiert, kannein Gewinde auf einer durch beliebige geradeStrecken abbegrenzten Oberfläche geschnittenwerden.

Die Steuerung wird im ersten Satz mit dem Nullimpuls des Impulsgebers der Hauptspindelsynchronisiert, in den weiteren Sätzen erfolgt keine Synchronisierung, dessen infolge wird dieGewindesteigung in allen Strecken gleich sein. Die programmierte Winkelverdrehung Q wird ebensonur im ersten Satz inbetrachtgenommen.

Page 31: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4 Die Interpolation

31

Abb. 4.5-3

Beipiel fürs Gewindeschneiden:N50 G90 G0 X0 Y0 S100 M4N55 Z2N60 G33 Z-100 F2N65 M19N70 G0 X5N75 Z2 M0N80 X0 M4N85 G4 P2N90 G33 Z-100 F2...

Erklärung:N50, N55: Das Werkzeug wir über den Bohrungsmittel-

punkt positioniert, die Spindel wird im Gegenuhrzei-gersinn gestartet.

N60: Erste Operation, Gewindesteigung=2 mm, N65: Orientierter Spindelstop (die Spindel hält in einer fester

Position)N70: Werkzeugrückzug entlang der X-Achse,N75: Werkzeugrückzug über die Bohrung, programmierter

Halt, der Bediener stellt das Werkzeug für die nächst-folgende Gewindeoperation (Schnitt) ein.

N80: Rückpositionierung über die Bohrungsmitte, erneuterSpindelstart,

N85: Verzögerung bis die Hauptspindel die entsprechende Drehzahl erreicht,N90: zweite Gewindeoperation (zweiter Schnitt).

L Anmerkungen: – Enthält der Gewindesatz mehr als zwei Koordinaten, oder sind sowohl die F- als auch die E-Adresse

ausgefüllt, zeigt die Steuerung den Fehlerkode 3020 DATENANWEISUNGSFEHLER G33an.

– Wird 0 für die E-Adresse im Gewindesatz eingegeben, zeigt die Steuerung den Fehlerkode 3022DIVISION MIT 0 G33 an.

– Zum Ausführen des Befehls G33 ist ein Impulsgeber auf der Hauptspindel erforderlich. – Während der Abarbeitung des Befehls G33 nimmt die Steuerung den Vorschub- und den Haupt-

spindel-Overriderwert automatisch für 100% an. Die Wirkung der Taste Vorschub Stop wirderst nach Abarbeiten des Satzes realisiert.

– Infolge des Schleppfehlers des Servosystems muss ein An- und ein Auslauf ausserhalb desWerkstoffes an beiden Gewindeenden gesichert werden, damit die Gewindesteigung dergesamten Strecke entlang gleichmässig bleibt.

– Der Vorschub (in mm/min) kann im Laufe des Gewindeschneidens den Wert von im Parameterfeldpro Achsen einstellbaren FEEDMAXn nicht überschreiten.

– Die Spindeldrehzahl kann im Laufe des Gewindeschneidens die für den Impulsgeber zugelassenenHöchstdrehzahl, bzw. die aus der Grenzfrequenz des Impulsgebers (aus der durch denImpulsgeber lieferbaren Höchstfrequenz) errechnete kleinere Drehzahl nicht überschreiten.

Page 32: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.6 Polarkoordinaten-Interpolation (G12.1, G13.1)

32

Abb. 4.6-1

4.6 Polarkoordinaten-Interpolation (G12.1, G13.1)

Die Polarkoordinaten-Interpolation ist eine Funktionsart der Steuerung, in der das Werkstück imrechtwinkeligen (Descartes) Koordinatensystem seinen Konturweg durch die Bewegung einer linearenund einer umlaufenden Achse läuft.

Die AnweisungG12.1 Polarkoordinaten-Interpolation ein

schaltet den Polarkoordinaten-Betrieb ein. Im danach folgenden Programmteil kann derWeg desFräswerkzeugs im rechtwinkeligen Koordinatensystem, auf die gewöhnliche Weise, durch dieProgrammierung Gerade- und Kreisinterpolation unter Berücksichtigung der Werkzeugradienkorrektur,beschrieben werden. Die Anweisung soll immer im separaten Satz angegeben werden und andereAnweisung darf dazu nicht programmiert werden.

Die AnweisungG13.1 Polarkoordinaten-Interpolation aus

schaltet den Polarkoordinaten-Betrieb aus. Die Anweisung soll immer im separaten Satz angegebenwerden und andere Anweisung darf dazu nicht programmiert werden. Nach Einschalten oder Resetnimmt die Steuerung immer den Zustand G13.1 auf.

EbenenwahlVor dem Einschalten der Polarkoordinaten-Interpolation ist eine Ebene, die die Adresse der anzuwen-denden linearen und umlaufenden Achse bestimmt, anzuwählen.

Die AnweisungG17 X_ C_

bestimmt die Achse X zur linearen Achse und die Achse C zur umlaufenden Achse. In der Abbildungwurde die virtuelle Achse, deren Programmierung durch die Angabe der Längsabmessung durchgeführtwird, durch C gezeichnet.Durch die Anweisungen

G18 Z_ B_G19 Y_ A_

können die weiteren linearen und umlaufenden Achsen dem Obigen gemäss gezeichnet.

Position des Werkstücknullpunkts im Laufe der Polarkoordinaten-InterpolationIm Falle der Anwendung der Polarkoordinaten-Interpolation ist es verbindlich, den Nullpunkt desangewandten Koordinatensystems an der linearen Achse so anzuwählen, damit er mit der Drehachse

Page 33: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.6 Polarkoordinaten-Interpolation (G12.1, G13.1)

33

der Kreisachse zusammenfällt.

Position der Achsen im Moment der Einschaltung der Polarkoordinaten-InterpolationVor der Einschaltung der Polarkoordinaten-Interpolation (Anweisung G12.1) ist es dafür zu sorgen,damit die Kreisachse im Punkt mit der Position 0 ist. Die Position der linearen Achse kann sowohlnegativ als auch positiv, aber nicht 0 sein.

Programmierung der Längsdaten im Laufe der Polarkoordinaten-InterpolationIm eingeschalteten Zustand der Polarkoordinaten-Interpolation werden Längsdaten an beiden derangewählten Ebene gehörenden Achsen programmiert: die umlaufende Achse in der angewählten Ebenewird die zweite (virtuelle) Achse sein. Wenn z.B. die Achsen X, C durch die Anweisung G17 X_ C_angewählt wurden, kann die Adresse C so programmiert werden, wie Y im Falle der Ebenenwahl G17X_ Y_.Die Programmierung der virtuellen Achse wird dadurch nicht beeinflusst, ob die Programmierung derersten Achse in Durchmesser durchgeführt wird. An der virtuellen Achse sind die Koordinatendatenimmer in Radius anzugeben.Wenn z.B. die Polarkoordinaten-Interpolation in der Ebene X C durchgeführt wird, ist der Wert unterder Adresse C in Radius anzugeben, unabhängig davon, ob die Adresse X in Durchmesser oder inRadius angegeben wird.

Bewegung der Achsen, die an der Polarkoordinaten-Interpolation nicht teilnehmenAn diesen Achsen bewegt sich das Werkzeug, wie im normalen Fall, unabhängig vom eingeschaltetenZustand der Polarkoordinaten-Interpolation.

Programmierung der Kreisinterpolation im Laufe der Polarkoordinaten-InterpolationIm eingeschalteten Zustand der Polarkoordinaten-Interpolation ist die Angabe des Kreises auf diebekannte Weise, durch Radius oder durch die Programmierung der Koordinate des Kreismittelpunktesmöglich. Wenn das Letzte angewählt wird, sind die Adressen I, J, K entsprechend der angewähltenEbene dem Folgenden gemäss anzuwenden:

G17 X_ C_G12.1...G2 (G3) X_ C_ I_ J_

G18 Z_ B_G12.1...G2 (G3) B_ Z_ I_ K_

G19 Y_ A_G12.1...G2 (G3) Y_ A_ J_ K_

Anwendung der Werkzeugradienkorrektur im Falle der Polarkoordinaten-InterpolationDie Anweisung G41, G42 kann im eingeschalteten Zustand der Polarkoordinaten-Interpolation auf diegewöhnliche Weise angewandt werden. Auf ihre Anwendung beziehen sich die folgenden Beschränkungen: – Die Einschaltung der Polarkoordinaten-Interpolation (Anweisung G12.1) ist nur im Zustand G40

möglich, – Wenn G41 oder G42 im Zustand G12.1 eingeschaltet wurde, ist G40 vor der Ausschaltung der

Polarkoordinaten-Interpolation (Anweisung G13.1) zu programmieren.

Programmierungsbeschränkungen im Laufe der Polarkoordinaten-InterpolationIm eingeschalteten Zustand der Polarkoordinaten-Interpolation dürfen die folgenden Anweisungen nichtangewandt werden:

Page 34: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.6 Polarkoordinaten-Interpolation (G12.1, G13.1)

34

Abb. 4.6-2

– Wechseln der Ebenen: G17, G18, G19, – Koordinatentransformationen: G52, G92, – Wechseln des Werkstückkoordinatensystems: G54, ..., G59, – Positionieren im Maschinenkoordinatensystem: G53.

Vorschub im Laufe der Polarkoordinaten-InterpolationDie Interpretation des Vorschubs im eingeschalteten Zustand der Polarkoordinaten-Interpolation erfolgtauf die bei der rechtwinkeligen Interpolation gewöhnte Weise, als Geschwindigkeit entlang den Weg:die relative Geschwindigkeit des Werkstücks und des Werkzeugs wird angegeben.Im Laufe der Polarkoordinaten-Interpolation läuft das Werkzeug einen im rechwinkeligen Koordinaten-system angegebenen Weg durch die Bewegung einer linearen und einer umlaufenden Achse ab. Wie sich der Mittelpunkt des Werkzeugs zur Drehachse der Kreiskoordinate annähert, so müsste dieumlaufende Achse während Zeiteinheit je grössere Schritte machen, damit die Geschwindigkeit entlangden Weg konstant ist. Die Geschwindigkeit der Kreisachse wird aber durch die zulässige maximaleGeschwindigkeit der umlaufenden Achse, die durch Parameter bestimmt wird, begrenzt. Deshalbvermindert die Steuerung den Vorschub entlang den Weg in der Nähe des Origos stufenweise im dessenInteresse, damit die Geschwindigkeit der umlaufenden Achse nicht über alle Grenze zunimmt.Die beigelegte Abbildung zeigt den Fall, wenn die zur Achse X parallelen Geraden (1, 2, 3, 4) program-miert werden. Zum programmierten Vorschub gehört dieVerschiebung )x während Zeiteinheit.Zur Verschiebung )x gehört immer andererWinkelausschlag (n1, n2, n3, n4) im Falle ver-schiedener Geraden (1, 2, 3, 4). Es kann be-merkt werden: je näher die Bearbeitung zum O-rigo ist, desto grösseren Winkelausschlag dieumlaufende Achse während Zeiteinheit zu tun hat,um den programmierten Vorschub halten zukönnen.Wenn der Winkelausschlag, der während Zeit-einheit zu tun ist, den für die umlaufende Achseeingestellten Parameterwert FEEDMAX über-steigt, vermindert die Steuerung den Vorschubentlang den Weg stufenweise. Aufgrund des Obigen ist die Erstellung von Prog-rammen, im Falle deren der Mittelpunkt des Werkzeugs in der Nähe des Origos läuft, zu vermeiden.

Page 35: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.6 Polarkoordinaten-Interpolation (G12.1, G13.1)

35

Abb. 4.6-3

MusterbeispielIm Folgenden wird einMusterbeispiel zur An-wendung der Polarko-ordinaten-Interpolationgezeigt.Die an der Interpola-tion teilnehmendenAchsen: X (lineareAchse) und C (umlau-fende Achse). DieProgrammierung derAchse X wird inDurchmesser, die derAchse C in Radiusdurchgeführt.

%O7500(POLARKOORDINATEN-INTERPOLATION)

...N050 T808

N060 G59 (Anfangspunkt des Koordinatensystems G59 ist inder Richtung X Drehachse C)

N070 G17 G0 X200 C0 (Wahl der Ebene X, C; Positionierung auf dieKoordinate XÖ0, C=0)

N080 G94 Z-3 S1000 M3N090 G12.1 (Polarkoordinaten-Interpolation ein)N100 G42 G1 X100 F1000N110 C30N120 G3 X60 C50 I-20 J0N130 G1 X-40N140 X-100 C20N150 C-30N160 G3 X-60 C-50 R20N170 G1 X40N180 X100 C-20N190 C0N200 G40 G0 X150N210 G13.1 (Polarkoordinaten-Interpolation aus)N220 G0 G18 Z100 (Rückzug des Werkzeugs Wahl der Ebene X, Z)...%

Page 36: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.7 Zylinderinterpolation (G7.1)

36

Abb. 4.7-1

4.7 Zylinderinterpolation (G7.1)

Wenn auf den Mantel eines Zylinders Leitweg zu fräsen ist, wird Zylinderinterpolation angewandt. Indiesem Fall soll die Drehachse des Zylinders und einer umlaufenden Achse zusammenfallen. DieVerschiebung der umlaufenden Achse wird im Programm in Grad angegeben, den die Steuerung zurlinearen Verschiebung entlang den Mantel abhängig vom Radius des Zylinders so umrechnet, damitlineare und Kreisinterpolation samt einer anderen linearen Achse programmiert werden kann. DieVerschiebung nach der Interpolation wird zum Winkelausschlag für die umlaufende Achse rückgeformt.

Die AnweisungG7.1 Qr Zylinderinterpolation ein

schaltet die Zylinderinterpolation ein, wobeiQ: die Adresse der an der Zylinderinterpolation teilnehmenden umlaufenden Achse,r: der Radius des Zylinders ist.

Wenn z.B. die Achse C die an der Zylinderinterpolation teilnehmende umlaufende Achse ist und derRadius des Zylinders 50 mm ist, kann die Zylinderinterpolation durch die Anweisung G7.1 C50eingeschaltet werden. Im danach folgenden Programmteil kann der an den Mantel des Zylinders zu fräsende Weg durch dieAngabe von Gerade- und Kreisinterpolation angegeben werden. Die Koordinate wird an der Längsach-se immer in mm oder Inch, an der umlaufenden Achse aber in ° angegeben.

Die AnweisungG7.1 Q0 Zylinderinterpolation aus

schaltet die Zylinderinterpolation aus, d.h. der Code G derselbe ist, wie der Code der Einschaltung,unter die Adresse der umlaufenden Achse ist aber 0 einzugeben.Die gemäss dem obigen Beispiel (G7.1 C50) eingeschaltete Zylinderinterpolation kann durch dieAnweisung G7.1 C0 ausgeschaltet werden. Die Anweisung G7.1 ist im separaten Satz anzugeben.

Wahl der EbeneDer Code der Wahl der Ebene wird immer durch den Namen der linearen Achse, zu der die umlaufen-de Achse parallel ist, bestimmt.Die umlaufende Achse, deren Achse parallel zur Achse X ist, ist A.Die umlaufende Achse, deren Achse parallel zur Achse Y ist, ist B.Die umlaufende Achse, deren Achse parallel zur Achse Z ist, ist C.G17 X A, oderG17 B Y

G18 Z C, oder G18 A X

G19 Y B, oderG19 C Z

KreisinterpolationIn der Betriebsart Zylinderinterpolation ist die Angabe der Kreisin-terpolation möglich, aber nur durch die Angabe von Radius R.Kreisinterpolation ist durch die Angabe des Mittelpunkts desKreises (I, J, K) im Falle Zylinderinterpolation nicht möglich.Der Radius des Kreises wird immer in mm oder in Inch interpretiertund nie in Grad.Kreisinterpolation kann z.B. zwischen den Achsen Z und C zweierlei angegeben werden:

Page 37: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.7 Zylinderinterpolation (G7.1)

37

Abb. 4.7-2

28 651

1800 5. .mm mm⋅

°°

⋅ =π

G18 Z_ C_G2 (G3) Z_ C_ R_

G19 C_ Z_G2 (G3) C_ Z_ R_

Anwendung der Werkzeugradienkorrektur im Laufe der ZylinderinterpolationDie Anweisung G41, G42 kann im eingeschalteten Zustand der Zylinderinterpolation auf die gewöhnli-che Weise angewandt werden. Auf ihre Anwendung beziehen sich die folgenden Beschränkungen: – Die Einschaltung der Zylinderinterpolation (Anweisung G7.1 Qr) ist nur im Zustand G40 möglich. – Wenn G41 oder G42 im Zustand Zylinderinterpolation eingeschaltet wurde, ist G40 vor der Aus-

schaltung der Zylinderinterpolation (Anweisung G7.1 Q0) zu programmieren.

Programmierungsbeschränkungen im Laufe der ZylinderinterpolationIm eingeschalteten Zustand der Zylinderinterpolation können die folgenden Anweisungen nichtangewandt werden: – Ebenenwechsel: G17, G18, G19, – Koordinatentransformationen: G52, G92, – Wechsel des Werkstückkoordinatensystems: G54, ..., G59, – Positionieren im Maschinenkoordinatensystem: G53, – Kreisinterpolation durch die Angabe des Kreismittelpunktes (I, J, K), – Bohrzyklen.

MusterbeispielFräsen Sie einen Weg lautder beigelegten Abbildungauf den Mantel eines Zylin-ders mit dem Radius vonR=28.65 mm in der Tiefe von3 mm. Das umlaufende WerkzeugT606 ist zur Achse X paral-lel.Die Verschiebung für einenGrad (1°) auf dem Manteldes Zylinders:

Die Achsenanordnung in der Abbildung entspricht der Ebenenwahl G19.

%O7602(ZYLINDERINTERPOLATION)...N020 G0 X200 Z20 S500 M3 T606N030 G19 Z-20 C0 (G19: Wahl der Ebene C–Z)N040 G1 X51.3 F100N050 G7.1 C28.65 (Einschaltung der Zylinderinterpolati-

on,die umlaufende Achse: C, Radius der

Page 38: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

4.7 Zylinderinterpolation (G7.1)

38

Achse: 28.65mm)N060 G1 G42 Z-10 F250N070 C30N080 G2 Z-40 C90 R30N090 G1 Z-60N100 G3 Z-75 C120 R15N110 G1 C180N120 G3 Z-57.5 C240 R35N130 G1 Z-27.5 C275N140 G2 Z-10 C335 R35N150 G1 C360N160 G40 Z-20N170 G7.1 C0 (Ausschaltung der Zylinderinterpolation)N180 G0 X100...%

Page 39: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

39

Abb. 5.1-1

5 Koordinatenangaben

5.1 Absolute und inkrementale Programmierung, I-Operator (G90, G91)

Die Input-Koordinatenwerte können sowohl absolut als auch inkremental angegeben werden. Bei derabsoluten Datenangabe sind die Endpunktkoordinaten, bei der inkrementalen Angabe die im Satz zubefahrende Weglänge einzugeben.

G90: Programmieren mit AbsolutwertenG91: Programmieren mit Inkrementalwerten

G90, G91 sind erbliche Funktionen. Beim Einschalten kann es nach dem Parameter CODESentschieden werden, welchen Zustand die Steuerung annehmen soll.Das Anfahren einer absoluten Position ist erst nach erfolgtem Referenzpunktfahren möglich.Beispiel:Anhand der Abbildung können Bewegungen auf zweiArten programmiert werden:

G90 G01 X20 Y50G91 G01 X-40 Y30

Der I-Operator ist nur im Zustand G90 Absolute Da-teneingabe wirksam. Er bezieht sich nur auf die nachder Adresse stehende Koordinate. Seine Bedeutung:inkrementale Daten. Das obige Beispiel kann auch fol-genderweise gelöst werden:

(G90) G01 XI-40 YI30G01 X20 YI30G01 XI-40 Y50

5.2 Dateneingabe in Polarkoordinaten (G15, G16)

Die Werte für die Endpunktkoordinaten können auch in Polarkoordinaten, d.h. durch Angabe einesWinkels und eines Radius angegeben werden.

G16: Einschalten der Polarkoordinaten-ProgrammierungG15: Ausschalten der Polarkoordinaten-Programmierung

Beim Reset gelangt die Steuerung in G15-Zustand. G15 und G16 sind erbliche Funktionen.Die Polarkoordinaten sind in der durch G17, G18, G19 bestimmter Ebene gültig.Bei der Dateneingabe werden die Adresse der waagerechten Achse der Ebene als Radius, diesenkrechte Achse aber als Winkel betrachtet. Z.B.: Im G17-Zustand ist die für X(U)-Adressegeschriebene Angabe der Radius, die für die Y(V)-Adresse der Winkel. Achtung: Im G18-Zustand sindZ die horizontale Achse (R-Angabe) und X die vertikale Achse (Winkelangabe).Bei Winkelangaben entspricht der Gegenuhrzeigersinn der positiven Richtung, der Uhrzeigersinn dernegativen Richtung des Winkels.Die anderen Achsangaben werden für kartesianische (rechtwinklige) Daten betrachtet. Der Radius undder Winkel können sowohl absolut als auch inkremental angegeben werden.Wird der Radius absolut angegeben, fällt das Origo des Polarkoordinatensystems mit dem des aktuellenKoordinatensystems zusammen.

Page 40: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

40

Abb. 5.2-1

Abb. 5.2-2

Beispiel:

G90 G16 G01 X100 Y60 F180

Der Winkel und der Radius sind abso-lute Werte, das Werkzeug fährt in diedurch den Radius 100 und 60° be-stimmte Position.

G90 G16 G01 X100 YI40 F180

Der Winkel ist eine inkrementale Anga-be. Im Verhältnis zur vorangehendenWinkelposition wird um 40° weiter po-sitioniert.

Wird der Radius als Inkrementalwertdefiniert, bestimmen die Momentanpo-sitionen der Achsen das Origo des Po-larkoordinatensystems.Auch beim eingeschalteten Zustand vonG16 Polarkoordinate kann ein Kreisprogrammiert werden. Der Kreis kannmit dem Radius, oder mit I,J,K ange-geben werden. Im letzteren Fall be-trachtet die Steuerung die I,J,K-Adres-se für rechtwinklige Angaben. Fällt dasOrigo des aktuellen Koordinatensys-tems mit dem des Kreises zusammen, können auch mehrgängige Kreise, oder Spiralen programmiertwerden.Beispiel:

(G17 G16 G90) G02 X100 Y-990 Z50 R-100

Im obigen Satz wurde eine Spirale von 2 und 3/4 Umdrehungen im Gegenuhrzeigersinn. BeimProgrammieren eines Kreises von mehreren Umdrehungen ist darauf zu achten, dass bei G2 einnegativer, bei G3 ein positiver Polarwinkel programmiert wird.

L Anmerkungen:Die Steuerung betrachtet die in den folgenden Anweisungen vorkommenden Adressen für keinePolarkoordinatenadressen, wenn auch der Zustand G16 eingeschaltet ist: – G10 Einstellanweisung – G52 Koordinatenverschiebung – G92 Koordinateneinstellung – G53 Positionieren im Maschinen-Koordinatensystem – G68 Verdrehung des Koordinatensystems – G51 Einschalten des Masstabierens – G50.1 Programmierbare Spiegelung

Page 41: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

41

Abb. 5.2-3

Beispiel: Fräsen eines SechseckesN1 G90 G17 G0 X60 Y0 F120N2 G16 G1 Y60N3 Y120N4 Y180N5 Y240N6 Y300N7 Y360N8 G15 G0 X100

5.3 Umwandeln Zoll/metrisch (G20, G21)

Die Eingangsdaten können entweder in Zoll-, oder im metrischen System, durch Programmieren desentsprechenden G-Kodes eingegeben werden.

G20: Anwählen des Zoll-SystemsG21: Anwählen des metrischen Systems

Am Anfang des Prograammes ist das gewünschte Massystem anzuwählen. Das angewählte Massystembleibt wirksam, solange ein entgegengesetzter Befehl nicht ausgegeben wird, also G20, G21 sinderbliche Kodes. Die Wirkungen der Kodes bleiben selbst nach Ausschalten erhalten, beimWiedereinschalten wird also das vorher gültige Massystem wirksam.Der Befehl G20/G21 soll immer im selbständigen Satz als einzige Anweisung programmiert werden. Anandere Adressen soll kein Befehl geschrieben werden, weil ihn die Steuerung nicht durchführen wird.Das Umwandeln des Massystems beeinflusst die folgenden Positionen:

– Koordinaten- und Korrektionangaben – Vorschub, – Konstante Schnittgeschwindigkeit, – Positions-, Korrektur- und Vorschubanzeige.

5.4 Angabe und Wertbereich der Koordinaten

Die Angaben für die Koordinaten können mit 8 Stellen angegeben werden.Der Dezimalpunkt wird von der angewandten Massystems abhängig interpretiert: – X2.134 bedeutet 2.134 mm, oder 2.134 Zoll, – B24.36 bedeutet 24.36 Grad, wenn unter B eine Winkelangabe gespiechert wird,Die Anwendung des Dezimalpunktes ist unverbindlich, z.B.: – X325 bedeutet 325 mm.Vorangestellte Nullen können weggelassen werden: – .032=0.032Die nachgesetzten Nullen nach dem Dezimalpunkt können weggelassen werden: – 0.320=.32Die Steuerung interpretiert auch eine des angewandten Inkrementensystems kleinere Zahl. Ist daseingestellte Inkrementensystem IR-B, interpretiert die Steuerung z.B. den Befehl X1.23456 – im metrischen Massystem als 1.235 mm,

Page 42: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

42

– im Zoll-System als 1.2346 Zoll.Die Eingangsdaten werden also als gerundete Werte ausgegeben.Die Wertgrenzen der Längskoordinaten sind aus der folgenden Tabelle ersichtlich:

Eingangs-Massystem

Ausgangs-Massystem

Inkrementen-system

Wertgrenzen derLängskoordinaten

Dimension

mm mm

IS-A ± 0.01-999999.99

mmIS-B ± 0.001-99999.999

IS-C ± 0.0001-9999.9999

Zoll mm

IS-A ± 0.001-39370.078

ZollIS-B ± 0.0001-3937.0078

IS-C ± 0.00001-393.70078

Zoll Zoll

IS-A ± 0.001-99999.999

ZollIS-B ± 0.0001-9999.9999

IS-C ± 0.00001-999.99999

mm Zoll

IS-A ± 0.01-999999.99

mmIS-B ± 0.001-99999.999

IS-C ± 0.0001-9999.9999

Wertgrenzen der Winkelkoordinaten:

Inkrementensystem Wertgrenze der Winkelkoordinaten Dimension

IS-A ± 0.01-999999.99

GradIS-B ± 0.001-99999.999

IS-C ± 0.0001-9999.9999

5.5 Bedienung der Umdrehung der umlaufenden Achsen

Diese Funktion kann im Falle umlaufender Achsen angewandt werden, d.h. wenn die Adresse A, Boder C zur Bedienung umlaufender Achse bestimmt ist. Unter Bedienung der Umdrehung wird verstan-den, dass die Position an der bestimmten Achse nicht zwischen plus und minus Unendliche, sondern diePreiodizität der Achse in Betracht nehmend z.B. zwischen 0/ und 360/, registriert wird.

Bestimmung der Achse zur umlaufenden AchseDiese Bestimmung kann durchgeführt werden, wenn 1 als Parameter 0182 A.ROTARY im Falle derAchse A, als Parameter 0185 B.ROTARY im Falle der Achse B und als Parameter 0188 C.ROTARYim Falle der Achse C angegeben wird. Falls einer dieser Parameter gleich 1 ist, – führt die Steuerung die Konversion Inch/metrisch im Falle der gegebenen Achse nicht durch, – kann die Bedienung der Umdrehung an der gegebenen Achse zugelassen werden, wenn 1 das

entsprechende Parameter ROLLOVEN ist.

Zulassung der Funktion UmdrehungDie Funktion wird zugelassen, wenn 1 als Parameter 0241 ROLLOVEN_A im Falle der Achse A, als

Page 43: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

43

Parameter 0242 ROLLOVEN_B im Falle der Achse B und als Parameter 0243 ROLLOVEN_C imFalle der Achse C angegeben wird, aufgenommen, dass die entsprechende Achse zur umlaufendenAchse bestimmt wurde. Wenn das entsprechende Parameter ROLLOVEN_x – =0 ist: wird die umlaufende Achse bedient, wie die linearen Achsen und das Ausfüllen weiterer

Parameter hat keine Wirkung, – =1 ist: wird die Bedienung der Umdrehung für die umlaufenden Achsen angewandt, deren Wesen

bestimmt das Folgende.

Bestimmung des Weges für eine DrehungDer Weg während einer Umdrehung der Achse wird im Eingangsinkrement im Parameter 0261ROLLAMNT_A im Falle der Achse A, im Parameter 0262 ROLLAMNT_B im Falle der Achse B,sowie im Parameter 0263 ROLLAMNT_C im Falle der Achse C bestimmt. Also, wenn die Steuerungim Inkrementensystem B im Betrieb ist und die Achse während einer Umdrehung 360°dreht, ist der inden entsprechenden Parameter ROLLAMNT zu schreibende Wert : 360000.Die Steuerung zeigt die Position der umlaufenden Achse mit den obigen Parametereinstellungen immerim Bereich 0°- +359.999°, unabhängig davon, in welcher Richtung die umlaufende Achse gedreht istund wieviel Drehung sie getan hat.

Page 44: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

44

Bewegung der umlaufenden Achse im Falle absolutes ProgrammierensWenn die Bedienung der Umdrehung für die umlaufende Achse zugelassen ist (ROLLOVEN_x=1),bewegt sich die Achse im Falle absoluter Datenangabe nie mehr, als die im entsprechenden ParameterROLLAMNT_x eingestellte Bewegung. D.h. wenn z.B.: ROLLAMNT_C=360000 (360/), ist diegrösste Bewegung 359.999°.Aufgrund der Parameter 0244 ABSHORT_A, 0245 ABSHORT_B und 0246 ABSHORT_C kann eingestellt werden, dass die Richtung der Bewegung immer gemäss dem Vorzeichen der unter derAchsenadresse bestimmten Position oder auf dem kürzeren Weg durchgeführt wird. Wenn der entsprechende Parameter ABSHORT_x – =0 ist: bewegt sie sich immer in der Richtung des Vorzeichens der programmierten Position, – =1 ist: bewegt sie sich immer in der kürzeren Richtung.

0188 C.ROTARY=1,0243 ROLLOVEN_C=10263 ROLLAMNT_C= =360000

Durch absolute Koordi-natenangabe programmierter

Satz

DurchgeführteBewegung auf

Wirkung des Satzes

Position amEnde desSatzes

0246 ABSHORT_C=0

bewegt sich immer in der Richtung,gemäss dem unter Adresse Cprogrammierten Vorzeichen

C=0

G90 C450 90 C=90

G90 C0 ( 0 ist positive Zahl!) 270 C=0

G90 C–90 –90 C=270

G90 C–360 –270 C=0

0246 ABSHORT_C=1

bewegt sich immer auf demkürzeren Weg

C=0

G90 C450 90 C=90

G90 C0 –90 C=0

G90 C–90 –90 C=270

G90 C–360 90 C=0

Page 45: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

5 Koordinatenangaben

45

Bewegung der umlaufenden Achse im Falle inkrementaler ProgrammierungIm Falle der Programmierung inkrementaler Datenangabe ist die Richtung der Bewegung immer gemässdem programmierten Vorzeichen.Es kann im Parameter 0247 RELROUND_A für die Achse A, im Parameter 0248 RELROUND_Bfür die Achse B, im Parameter 0249 RELROUND_C für die Achse C eingestellt werden, ob derentsprechende Parameter ROLLAMNT_x für die Grösse der Bewegung angewandt werden soll odernicht. Wenn der entsprechende Parameter RELROUND_x : – =0 ist: wird der Parameter ROLLAMNT_x nicht angewandt, d.h. die Bewegung kann grösser sein,

als 360/, – =1 ist: wird der Parameter ROLLAMNT_x angewandt.Wenn z.B.: ROLLAMNT_C=360000

(360/), kann die grösste Bewegung an der Achse C 359.999° sein.

0188 C.ROTARY=1,0243 ROLLOVEN_C=10263 ROLLAMNT_C= =360000

Durch inkrementale Koordina-tenangabe programmierter

Satz

DurchgeführteBewegung auf

Wirkung des Satzes

Position amEnde desSatzes

0249 RELROUND_C=0

der Parameter ROLLAMNT_C wirdnicht angewandt

C=0

G91 C450 450 C=90

G91 C0 0 C=90

G91 C–90 –90 C=0

G91 C–360 –360 C=0

0249 RELROUND_C=1

der Parameter ROLLAMNT_C wirdangewandt

C=0

G91 C450 90 C=90

G91 C0 0 C=90

G91 C–90 –90 C=0

G91 C–360 0 C=0

Page 46: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

46

Abb. 6.2-1

6 Der Vorschub

6.1 Eilgangsvorschub

Das Positionieren erfolgt auf die Wirkung des Befehls G00 im Eilgang.Der Maschinenhersteller stellt die Eilgangswerte je Achse im Parameterfeld ein. DieEilgangsgeschwindigkeit kann in jeder Achse verschieden sein.Führen mehrere Achsen eine Eilgangsbewegung gleichzeitig aus, errechnet die Steuerung den Wert derresultierenden Geschwindigkeit, dass die Geschwindigkeitskomponeneten in Achsrichtung die für diejeweilige Achse im Parameter definierte Eilgangsgrenze in keiner Achse überschreiten und dasPositionieren binnen einer minimalen Zeit erfolgt.Der Korrekturschalter modifiziert den Eilgangsvorschub, der die folgenden Stelle aufnehmen kann:

F0: der im RAPOVER Parameter geschriebene Wert in % interpretiert,bzw. 25 %, 50 %, 100%.

Der Wert des Eilgangs überschreitet 100 % nicht.Die Stellung 0% des Korrekturschalters unterbricht immer den Eilgangsvorshub.Bei fehlendem Referenzpunkt sind die durch den Maschinenhersteller definierten, reduziertenEilgangswerte in den Achsen wirksam, solange das Anfahren des Referenzpunktes nicht erfolgt.Die Steuerung kann die obigen Eilgangsprozentwerte auch vom Korrekturschalter nehmen. Bei traditionellem Fahren (Jog) ist die Geschwindigkeit ein, in jeder Achse unterschiedlicher, ebenso imParameterfeld eingestellter Wert, der sich von der positionierenden Eilgangsgeschwindigkeitunterscheidet. Sinngemäss ist diese Geschwindigkeit kleiner als die Positioniergeschwindigkeit, damitdie zum Anhalten erforderliche menschliche Reaktionszeit einkalkuliert werden kann.

6.2 Arbeitsvorschub

Der Vorschub wird unter der F-Adresse programmiert.Der programmierte Vorschub ist inden Geradeninterpolations- (G01)und den Kreisinterpolationssätzen -(G02, G03) wirksam.Der Vorschub ist der programmier-ten Bahn entlang tangential.

F: Tangentialer Vorschub (programmierter Wert)Fx: Vorschubkomponente in der X-RichtungFy: Vorschubkomponente in der Y-Richtung

Der programmierte Vorschub kann mit Hilfe des Korrekturschalters im Bereich von 0 bis 120%, mitAusnahme des Zustandes G63, Korrekturschalter und Stop-Sperre, modifiziert werden.

Page 47: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

47

Der Wert des Vorschubs F ist erblich. Nach dem Einschalten der Steuerung wird der im ParameterFEED des Parameterfeldes eingestellte Vorschubswert wirksam.

6.2.1 Vorschub pro Minute und pro Umdrehung (G94, G95)

Die Masseinheit des Vorschubes kann durch die Kodes G94 und G95 im Programm angegebenwerden:

G94: Vorschub pro Minute G95: Vorschub pro Umdrehung

Unter Vorschub pro Minute sind die in den Dimensionen mm/min, Zoll/min, oder Grad/min angegebenenVorschübe verstanden. Unter Vorschub pro Umdrehung sind die Vorschübe pro Hauptspindelumdrehung in den Dimensionenmm/Umdr, Zoll/Umdr, vagy Grad/Umdr verstanden. Umdrehungsvorschübe können nur dannprogrammiert werden, wenn die Spindel mit einem Impulsgeber ausgerüstet ist.Erbliche Werte: Nach dem Einschalten der Steuerung werden die Zustände G94, oder G95,entsprechend der Parametergruppe CODES des Parameterfeldes angewählt. Der Zustand G94/G95beeinflusst die Eilgangsvorschübe nicht, sie sind immer in mm/min verstanden.

Page 48: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

48

Die untenstehende Tabelle zeigt die für die F-Adresse programmierbaren Höchstwerte für verschiedeneFälle:

Eingangs-Massystem

Ausgangs-Massystem

Inkremen-tensystem Wertgrenze der F-Adresse Dimension

mm mm

IS-A 0.001 - 250000 mmoder

Grad/Min.IS-B 0.0001 - 25000

IS-C 0.00001 - 2500

IS-A 0.0001 - 5000 mmoder

Grad/Umdr.IS-B 0.00001 - 500

IS-C 0.000001 - 50

Zoll mm

IS-A 0.0001 - 9842.5197 Zolloder

Grad/Min.IS-B 0.00001 - 984.25197

IS-C 0.000001 - 98.25197

IS-A 0.00001 - 196.85039 Zolloder

Grad/Umdr.IS-B 0.000001 - 19.685039

IS-C 0.0000001 - 1.9685039

Zoll Zoll

IS-A 0.0001 - 25000 Zolloder

Grad/Min.IS-B 0.00001 - 2500

IS-C 0.000001 - 250

IS-A 0.00001 - 500 Zolloder

Grad/Umdr.IS-B 0.000001 - 50

IS-C 0.0000001 - 5

mm Zoll

IS-A 0.001 - 250000 mmoder

Grad/Min.IS-B 0.0001-25000

IS-C 0.00001-2500

IS-A 0.0001 - 5000 mmoder

Grad/Umdr.IS-B 0.00001-500

IS-C 0.000001-50

6.2.2 Abgrenzung des Arbeitsvorschubes

Der Maschinenhersteller kann den für die Maschine programmierbaren Höchstvorschub pro Achsenim Parameterfeld beschränken. Die hier eingestellten Werte sind immer in Minute interpretiert.Gleichzeitig ist dieser Wert die Geschwindigkeit der Vorschubbewegungen im eingeschalteten Zustand

Page 49: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

49

Abb. 6.3-1

Abb. 6.3-2

Abb. 6.3-3

des Schalters TROCKENLAUF. Wird ein davon grösserer Vorschub programmiert, beschränkt dieSteuerung die Geschwindigkeit aufgrund des Parameters im Laufe der Programmdurchführung.Der Maximalwert des traditionellen Vorschubes kann im Parameterfeld gesondert eingestellt werden,damit die menschliche Rekationszeit in Rechnung getragen wird.

6.3 Automatische Beschleunigung/Verzögerung

Bei Eilgangsbewegungen führt die Steuerung führteine lineare Beschleunigung beim Anlaufen undeine lineare Verzögerung vor dem Anhalten auto-matisch durch. Die Beschleunigung ist von demMaschinenhersteller im Parameter ACCn desParameterfeldes, abhängig von der Belastbarkeitder Maschine bestimmt.

Bei Vorschubbewegungen wird der tangentiale(programmierte) Vorschubwert mit einer linearenBeschleunigung erreicht und linear reduziert. Ge-gen der traditionellen exponentialen Beschleuni-gung bietet diese Methode - bei Annahme glei-cher Zeitkonstanten - den Vorteil an, dass diegewünschte Geschwindigkeit schneller erreichtwird. Dadurch werd die Beschleunigungs-/Ver-zögerungszeit, dh. die Zeit der effektiven Schlit-tenbewegungen reduziert.

Ein anderer Vorteil der linearen Beschleunigungbesteht darin, dass die Profilverzerrungen bei derHochgeschwindigkeitsbearbeitung von Kreiseninfolge der Reaktionszeit des Servosystems klei-ner sind als bei einer exponentialen Beschleuni-gung.

Page 50: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

50

Abb. 6.3-4

Abb. 6.4-1

Die Steuerung überwacht und registriert die Ge-schwindigkeitsänderungen im voraus. Das ist er-forderlich, dass die gewünschte Zielgeschwindig-keit durch eine kontinuierliche, eventuell mehrereSätze umfassende Beschleunigung erreicht wer-den kann. Mit der Beschleunigung auf eine hö-here Vorschubgeschwindigkeit wird stets am An-fang des Satzes begonnen, in dem dieser Vor-schub definiert ist. Erforderlicherweise kann die-ser Vorgang über mehrere Sätze hinaus dauern.Mit der Verzögerung auf eine neuere kleinereVorschubgeschwindigkeit wird immer in einementsprechenden vorangehenden Satz begonnen, damit die Bearbeitung in dem Satz, in dem die neuekleinere Geschwindigkeit angegeben ist, mit der in ihm programmierten Geschwindigkeit begonnen wird.Beim traditionellen Fahren mit Handrad, oder Richtungstasten ist die Beschleunigung/Verzö-gerungebenso linear. Der Wert ist pro Achsen durch Parameter bestimmt.

6.4 Vorschubsteuernde Funktionen

Die vorschubsteuernden Funktionen sind bei der Bearbeitung von Ecken, sowie in den Fällenerforderlich, wenn die Technologie die Unwirksamkeit des Korrektur-, bzw. des Stop-Schalters fürerforderlich macht.Bei einer stetigen Bearbeitung können die Schlit-ten den durch die Steuerung ausgegebenen Weg-befehlen infolge der Trägheit nicht folgen. DieEcken werden dabei mehr, oder weniger abge-rundet.Sind scharfe Ecken am Werkstück erforderlich,muss der Steuerung mitgeteilt werden, dass siedie Bewegung am Ende abbremsen und das An-halten der Achsen abwarten soll. Die nächste Bewegung darf erst danach angelassen werden.

6.4.1 G09: Genauhalt

Diese Funktion wird nicht geerbt, sie wirkt nur im Satz, in dem sie programmiert wurde.Am Endes des Satzes, in dem diese Funktion programmiert worden ist, bremst die Steuerung nachAusführen der Interpolation und wartet das Signal In Position ab. Steht das Signal binnen 5 Sekundennicht an, zeigt die Steuerung die Fehlernachricht 1020 POSITIONSFEHLER an.Diese Funktion dient das genaue Umfahren von scharfen Ecken.

Page 51: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

51

Abb. 6.4.5-1

6.4.2 G61: Betriebsart Genauhalt

Diese Funktion wird geerbt und durch die Befehle G62, G63, G64 gelöscht.Die Steuerung bremst nach einer jeden Interpolation und wartet das Signal In Position ab und dernächste Interpolationszyklus wird erst dann gestartet. Steht das Signal binnen 5 Sekunden nicht an, zeigtdie Steuerung die Fehlernachricht 1020 POSITIONSFEHLER an.

6.4.3 G64: Betriebsart Stetiges Spanen

Erbliche Funktion. Nach dem Einschalten nimmt die Steuerung diesen Zustand an. Dieser Zustand wirddurch die Kodes G61, G62, G63 aufgehoben.In dieser Betriebsart werden die Bewegungen nach Ausführen der Interpolation nicht gestoppt, dieSchlitten werden nicht gebremst und die Interpolation des nächsten Satzes beginnt unverzüglich.In dieser Betriebsart können scharfe Ecken nicht bearbeitet werden, da sie bei den Übergängen durchdie Trägheit der Schlitten abgerundet werden.

6.4.4 G63: Betriebsart Korrektur- und Stop-Sperre

Erbliche Funktion. Die Kodes G61, G64 heben diesen Zustand auf. In dieser Betriebsart sind die Vorschub- und Drehzahlkorrektur, sowie der Vorschub-Stop unwirksam.Die Korrekturwerte werden unabhängig von der Stellung des Korrekturschalters für 100%angenommen. Nach der Interpolation wird nicht gebremst, sondern der nächste Interpolationszykluswird sofort gestartet.Diese Betriebsart kann bei der Bearbeitung unterschiedlicher Gewinden eingesetzt werden.

6.4.5 G62: Automatische Vorschubreduzierung bei scharfen Ecken

Es ist eine erbliche Funktion. Die Kodes G61, G63, G64 heben diesen Zustand auf.Bei der Bearbeitung scharfer Ecken vergössertsich die auf das Werkzeug wirkende Spankraft inden der Ecke vorangehenden und der Ecke fol-genden Strecken. Im dessen Interesse, dass dasWerkzeug nicht schwingt und eine befriedigendeOberfläche entsteht, reduziert die Steuerung denVorschub auf der der Ecke vorangehenden undauf der der Ecke folgenden Strecke bei einge-schaltetem Zustand von G62 automatisch.Die Vorschubverminderung ist unter den folgen-den Bedingungen wirksam: – 1. Eingeschalteter Zustand einer in der Ebene liegenden Werkzeugradienkorrektur (G41, G42), – 2. zwischen den Sätzen G0, G1, G2, G3, – 3. bei den Bewegungen in der angewählten Ebene, – 4. wenn die Ecke von innen umgefahren wird, – 5. wenn der Winkel der Ecke kleiner, als im Parameterfeld bestimmt ist, – 6. innerhalb eines im Parameterfeld bestimmten Abstandes vor und nach der Ecke.

Page 52: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

52

Abb. 6.4.5-2

Abb. 6.4.5-3

Abb. 6.4.6-1

Die Funktion Vorschubverminderung ist für allemöglichen vier Fälle, für Gerade-Gerade, Ge-rade-Kreis, Kreis-Gerade und Kreis-Kreiswirksam.Die Grösse des innenliegenden Winkels 1 kannim Parameter CORNANGL im Bereich 1 -180°eingestellt werden.

Die Steuerung beginnt im Abstand L1 vor derEcke zu verzögern und im Abstand Lg zu be-schleunigen. Bei Kreisbögen werden die Abstän-de L1 und Lg entlang dem Bogen gemessen. DieBestimmung des Abstandes L1 erfolgt im Para-meter DECDIST, die des Abstandes Lg im Para-meter ACCDIST.

Der Korrekturwert, worauf der Vorschub vermindert wird, kann im Parameter CORNOVER prozentualeingestellt werden. Die Korrektur wird im Abstand L1 vor der Ecke wirksam und sie bleibt bis zumAbstand Lg nach der Ecke wirksam. Die Steuerung nimmt die Werte des Eckenprozentes und desVorschubprozentes gemeinsam in Betracht:

F*Vorschub%*Ecke%.Soll ein Genauhalt im Zustand G62 programmiert werden, ist G09 in den gegebenen Satz eingegebenwerden.

6.4.6 Automatische Vorschubreduzierung bei inneren Kreisbögen

Bei der Innenbearbeitung von Kreisbögen, im eingeschaltetemZustand der ebenen Werkzeugradienkorrektur (G41, G42)reduziert die Steuerung den Vorschub automatisch so, dassder programmierte Vorschubswert aus dem Radius der Zer-spanung gilt. Die Grösse des Vorschubes im Mittelpunkt desWerkzeugradius:

worin Fc: der Mittelpunktverschiebung des Mittelpunktesdes Werkzeugradius (korrigierter Vorschub)R: der programmierte Kreisradius,Rc: der korrigierte Kreisradius,F: der programmierte Vorschub

sind.Die automatische Vorschubreduzierung ist unten durch den Parameter CIRCOVER abbegrenzt, in dem

Page 53: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

6 Der Vorschub

53

das Minimum der Vorschubverminderung prozentual bestimmt werden kann. Die infolge des Kreisradiuserforderliche Korrektur wird mit den Werten des Vorschubes und der Eckenkorrektur multipliziert undso ausgegeben.

Page 54: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

7 Die Verweilzeit

54

7 Die Verweilzeit: G04

Durch den Befehl(G94) G04 P....

kann eine Wartezeit in Sekunden programmiert werden. Wertbereich von P: 0.001 - 99999.999 sec.Durch den Befehl

(G95) G04 P....kann eine Wartezeit in Spindelumdrehungen programmiert werden. Werbereich von P: 0.001 -99999.999 Umdrehungen.In Abhängigkeit des Parameters SECOND kann die Wartezeit immer in Sekunden, unabhängig von denZuständen G94, G95, interpretiert werden.Die Wartezeit bezieht sich immer auf die eine verzögerte Ausführung des nächsten programmiertenSatzes. Diese Funktion ist von einmaliger Wirkung.Während der Wartezeit wird die Aufschrift WART im den 5. Interpolationszustand zeigendenStatusfenster angezeigt, damit die Aufmerksamkeit auf die Ursache des Stillstandes der Schlitten gelenktwird.

Page 55: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

8 Der Referenzpunkt

55

Abb. 8-1

8 Der Referenzpunkt

Der Referenzpunkt ist ein fester Punkt auf derWerkzeugmaschine, den die Steuerung einfachanfahren kann. Die Position des Referenzpunktesim Maschinen-Koordinatensystem kann durcheinen Parameter bestimmt werden. Nach erfolg-tem Referenzpunktfahren können die Werk-stück-Koordinatensysteme vermessen und abso-lute Positionen angefahren werden. Die paramet-rierten Endstellungen und die programmierte Ab-grenzung des Arbeitsraumes sind erst nach er-folgtem Anfahren des Referenzpunktes.

8.1 Automatisches Referenzpunktanfahren (G28)

Durch die AnweisungG28 v

werden Referenzpunkte in den im Vektor v bestimmten Achsen angefahren. Die Bewegungen setzensich aus zwei Teilen zusammen.Zunächst werden die Schlitten auf die durch den Vektor v festgelegten Zwischenkoordinaten mit einerlinearen Bewegung gesteuert. Die angegebenen Koordinatenwerte können absolut oder inkrementalsein. Die Bewegungen erfolgen stets im aktuellen Koordinatensystem.Die Endpunkte der linearen Bewegungen werden so angefahren, dass der Vektor der Werkzeugradien-korrektur gelöscht wird.Die Koordinaten des zwischenliegenden Punktes werden für die durch den Vektor v bestimmten Achsenabgespeichert.In der zweiten Phase werden die Schlitten in den durch den Vektor v bestimmten Achsen gleichzeitig,wie es bei der manuellen Referenzpunktaufnahme bestimmt ist, auf den Referenzpunkt gesteuert.Die Referenzpunktaufnahme erfolgt mit einer nichtlinearen Bewegung und mit einer für jede Achsebestimmten Geschwindigkeit. Nach erfolgter Referenzpunktaufnahme nimmt die Steuerung die imParameterfeld bestimmte Ausgangsposition an.Dieser Kode ist nicht erblich.

L Anmerkungen: – Existiert noch kein gültiger Referenzpunkt, müssen die zwischenliegenden v-Koordinaten mit inkre-

mentalen Werten behaftet werden. – Die im G28-Satz programmierten Zwischenkoordinaten werden abgespeichert und bis zum Aus-

schalten aufbewahrt. Also, für die Koordinaten, die im momentanen G28-Befehl keinen Werterhalten haben, bleibt der im füheren G28-Befehl bestimmte Zwischenwert gültig. Z.B.:

Page 56: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

8 Der Referenzpunkt

56

G28 X100 Zwischenpunkt: X=100, Y=0G28 Y200 Zwischenpunkt: X=100, Y=200

8.2 Positionieren auf die Referenzpunkte 1, 2, 3, 4 (G30)

Die AnweisungsfolgeG30 v P

steuert die unter den Adressen des v-Vektors bestimmten Achsen auf den unter der P-Adressedefinierten Achsen.

P1: Referenzpunkt 1P2: Referenzpunkt 2P3: Referenzpunkt 3P4: Referenzpunkt 4

Die Referenzpunkte sind durch Parameter bestimmte Punkte im Maschinen-Koordinatensystem(REFPOS1,...,REFPOS4), die in der Regel zum Bestimmen verschiedener Wechselpositionen, wieWerkzeugwechselposition, Palettenwechselposition angewandt werden. Der erste Referenzpunkt istimmer die Position des Maschinen-Referenzpunktes, d.h. der Punkt, auf den die Steuerung beimReferenzpunktfahren positioniert. Diese Anweisung funktioniert erst nach Aufnahme des Maschinen-Referenzpunktes.Die Bewegung setzt sich aus zwei Strecken zusammen. Zunächst werden die Schlitten auf die durch denVektor v festgelegten Zwischenkoordinaten mit einer linearen Bewegung im Eilgang gesteuert. Dieangegebenen Koordinatenwerte können absolut oder inkremental sein. Die Bewegungen erfolgen stetsim aktuellen Koordinatensystem. Die Endpunkte der linearen Bewegungen werden so angefahren, dassder Vektor der Werkzeugradienkorrektur gelöscht wird. Die Koordinaten des zwischenliegendenPunktes werden für die durch den Vektor v bestimmten Achsen im aktuellen Koordinatensystemabgespeichert. Die so abgespeicherten Koordinaten überschreiben die in der Anweisung G28abgelegten Koordinaten.In der zweiten Phase werden die Schlitten in den durch den Vektor v bestimmten Achsen auf den unterder P-Adresse angewählten Referenzpunkt positioniert.Das Positionieren auf den Referenzpunkt erfolgt ohne Inbetrachtnahme der Korrekturvektoren (Länge,Verschiebung, 3dimensionaler Radius), sie brauchen vor der Ausgabe der Anweisung G30 nichtgelöscht zu werden, jedoch werden sie beim Programmieren weiterer Bewegungen durch die Steuerungaktualisiert. Die ebene Werkzeugradienkorrektur wird im ersten Bewegungssatz automatischeingeschaltet.Dieser Kode ist nicht erblich.

8.3 Automatischer Rückkehr von dem Referenzpunkt (G29)

Auf die Wirkung der AnweisungG29 v

kehrt die Steuerung entlang den durch den Vektor v bestimmten Achsen vom Referenzpunktautomatisch zurück. Die Anweisung G29 wird nach G28 und G30 unverändert durchgeführt. DerRückkehr erfolgt in zwei Phasen.In der ersten Phase werden die Schlitten auf den währen der Abarbeitung der Anweisung G28 oderG30 registrierten Zwischenpunkt in den durch den Vektor v bestimmten Achsen positioniert. DieKoordinaten des Zwischenpunktes werden nicht geerbt. Werden Achsen in Bezug genommen, die in

Page 57: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

8 Der Referenzpunkt

57

Abb. 8.3-1

einem G29 vorangehenden G28- oder G30-Satz keinen Wert erhalten haben, wird der nächstfrühereWert inbetrachtgenommen. Der Zwischenpunkt wird bei Inbetrachtnahme der Werkzeuglänge, derWerkzeugverschiebung und der 3dimensionalen Werkzeugradienkorrektur angefahren.Die Koordinaten des Zwischenpunktes gelten stets im aktuellen Werkstück-Koordinatensystem. Wurdez.B. ein Koordinatensystemwechsel nach dem Positionieren auf den Referenzpunkt und vor derAnweisung G29 programmiert, wird der Zwischenpunkt im neuen Koordinatensysteminbetrachtgenommen.In der zweiten Phase wird von dem Zwischenpunkt auf den in der Anweisung G29 bestimmten Punktder v-Koordinaten positioniert. Ist der Wert der v-Koordinate inkremental angegeben, wir dieWeglänge von dem Zwischenpunkt beginnend errechnet.Bei eingeschalteter ebener Werkzeugradienkorrektur wird der Endpunkt der Bewegung unterInbetrachtnahme des Korrekturvektors angefahren.Dieser Kode ist nicht erblich.Anwendungsbeispiel für die Kodes G30 undG29:

...G90...G30 P1 X500 Y200G29 X700 Y150......

Page 58: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

58

Abb. 9-1

Abb. 9.1-1

9 Koordinatensysteme, Anwahl der Ebene

Eine Position, die das Werkzeug anfahren soll, wird im Programm durch die Angabe der Koordinatendefiniert. Verfügt die Steuerung über 3 Achsen (X, Y, Z), wird die Werkzeugposition durch dreiKoordinaten X Y Z bestimmt.

Eine Werkzeugposition wird durch so viele Koordinaten bestimmt, wie viele Achsen die Maschine hat.Die Koordinatenangaben sind immer in einem gegebenen Koordinatensystem zu verstehen.In der Steuerung sind dreierlei Koordinatensysteme verunterschieden:

1. Maschinen-Koordinatensystem2. Werkstück-Koordinatensystem3. lokales Koordinatensystem.

9.1 Das Maschinen-Koordinatensystem

Der Maschinennullpunkt, d.h. der des Maschinen-Koordinatensystems ist ein fester Punkt aufder Werkzeugmaschine, der i.a. vom Maschinen-hersteller bestimmt ist. Die Steuerung erfasst dasMaschinen-Koordinatensystem beim Referenz-punktfahren.Nachdem das Maschinen-Koordinatensystemerfasst worden ist, wird es weder von einemWechsel des Koordinatensystems (G54...G59)noch anderen Koordinatentransformationen(G52, G92), sondern nur durch Ausschalten derSteuerung abgeändert.

Page 59: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

59

Abb. 9.2.1-1

9.1.1 Einstellen des Maschinen-Koordinatensystems

Das Maschinen-Koordinatensystem kann im Parameterfeld nach erfolgtem Referenzpunktfahrenerfolgen. Als REFPOS1 Parametergruppe ist der Abstand zwischen dem Referenzpunkt und demNullpunkt des Maschinen-Koordinatensystems pro Achsen einzugeben.

9.1.2 Anwählen des Maschinen-Koordinatensystems (G53)

Auf die Wirkung der AnweisungG53 v

fährt das Werkzeug auf die v-Koordinaten des Maschinen-Koordinatensystems. – Unabhängig vom Zustand G90, G91 werden die v-Koordinaten immer als absolute Koordinaten

betrachtet. – Der I-Operator ist nach den Koordinatenadressen unwirksam. – Die Bewegung erfolgt immer im Eilgang, ähnlich wie bei G00. – Das Positionieren erfolgt immer unter Inbetrachtnahme der eingestellten Werkzeugkorrekturen.Die Anweisung G53 kann erst nach erfolgtem Referenzpunktfahren durchgeführt werden. Der BefehlG53 ist nur von einmaliger Wirkung, er wirkt nur im Satz, in dem er eingegeben worden ist.

9.2 Maschinen-Koordinatensysteme

Das Koordinatensystem, das bei der Bearbeitung eines Werkstückes angewandt wird, ist Maschinen-Koordinatensystem genanannt. In der Steuerung können sechs verschiedene Werkstück-Koordinatensysteme definiert werden.

9.2.1 Einstellen der Werkstück-Koordinatensysteme

Im Einrichteberieb können die Positionen der verschiedenen Werkstück-Koordinatensysteme imMaschinen-Koordinatensystem festgestellt und die erforderlichen Einstellungen vorgenommen werden.

Page 60: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

60

Abb. 9.2.1-2

Darüber hinaus können alle Werkstück-Koordinatensysteme um einen gemeinsamen Wert verschobenwerden. Dies kann wiederum im Einrichtebetrieb erfolgen.

9.2.2 Anwählen des Werkstück-Koordinatensystems: G54, ..., G59

Die verschiedenen Werkstück-Koordinatensysteme können mit Hilfe der Anweisungen G54...G59angewählt werden.

G54........Werkstück-Koordinatensystem 1G55........Werkstück-Koordinatensystem 2G56........Werkstück-Koordinatensystem 3G57........Werkstück-Koordinatensystem 4G58........Werkstück-Koordinatensystem 5G59........Werkstück-Koordinatensystem 6

Vor dem Anfahren des Referenzpunktes sind diese erblichen Funktionen unwirksam. Nach erfolgtemReferenzpunktfahren wird das Werkstück-Koordinatensystem G54 angewählt.

Page 61: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

61

Abb. 9.2.2-1

Abb. 9.2.2-2

Die Steuerung nimmt die absoluten Koordinatenangaben derInterpolationssätze im aktuellen Koordinatensystem in Be-tracht. Beispielsweise positioniert die Steuerung bei der An-weisung

G56 G90 G00 X60 Y40

auf den Punkt X=60, Y=40 des Werkstück-Koordinatensys-tems 3. Die Verschiebungen der Werkstück-Koordinatensys-teme können eingemessen werden und die Verschiebungswer-te werden nach Ausschalten geerbt.

Beim Wechseln des Werkstück-Koordinaten-systems wird die Werkzeugposition im neuenKoordinatensystem angezeigt. Beispielsweise be-finden sich zwei Werkstücke auf dem Tisch.Dem ersten ist das Werkstück-Koordinatensys-tem G54 zugeordnet, dessen Verschiebung zurMaschinen-Koordinatensystem X=300, Y=800ist. Dem Bezugspunkt des zweiten Werkstückesist das Maschinen-Koordinatensystem G55 zu-geordnet, dessen Verschiebung im Maschinen-Koordinatensystem X=1300, Y=400 ist. Im Ko-ordinatensystem G54 X',Y' entspricht die Werk-zeugposition X'=700, Y'=500. Auf die Wirkungder Anweisung G55 wird die Werkzeugpositionim Koordinatensystem X'', Y'' interpretiert: X''=–300, Y''=900.

9.2.3 Verschieben des Werkstück-Koordinatensystem aus dem Programm

Die Werkstück-Koordinatensysteme und ihre gemeinsame Verschiebung können durch einegemeinsame Programmanweisung durchgeführt werden. Dies erfolgt durch die Anweisung

G10 v L2 Ppwobei

p = 0 Einstellung der gemeinsamen Verschiebungp = 1...6 Einstellung der Werkstück-Koordinatensysteme 1-6y (X,Y,Z, ...): gemeinsamer Verschiebungswert je Achse.

Die Koordinatenangaben werden immer als absolute karthesische Koordinaten eingelesen. DieAnweisung G10 hat nur eine einmalige Wirkung.

Page 62: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

62

Abb. 9.2.4-1

Abb. 9.2.4-2

9.2.4 Herstellen eines neuen Werkstück-Koordinatensystems (G92)

Auf die Wirkung der AnweisungG92 v

wird ein neues Werkstück-Koordinatensystem gebildet, und zwar so, dass ein fester Punkt, z.B. dieWerkzeugspitze (wenn eine Längenkorrektur programmiert ist), oder der Basispunkt desWerkzeughalters (wenn keine Längenkorrektur) wird der v-Koordinatenpunkt des neuen Werkstück-Koordinatensystems. Danach werden alle weiteren Absolutbefehle in diesem Koordinatensysteminterpretiert und auch die Positionsanzeigen erfolgen in diesem System. Die im Befehl G92 angegebenenKoordinaten werden immer als rechtwinklige Absolutwerte interpretiert.Befindet sich das Werkzeug beispielsweise imKoordinatenpunkt X=150, Y=100 des aktuellenX-Y-Koordinatensystems, wird auf die Wirkungder Anweisung

G92 X90 Y60

ein neues X',Y' Koordinatensystem gebildet, indem sich das Werkzeug in der KoordinatenpunktX'=90, Y'=60 befindet. Die Komponenten deszwischen den Koordinatensystemen X,Y-X',Y'existierenden Verschiebungsvektors V' sind:

V'x=150-90=60,V'y=100–60=40.

Der Befehl G92 ist in allen sechsWerkstück-Koordinatensystemenwirksam, d.h. die in einem Koordina-tensystem errechnete V-Verschiebungin den weiteren fünf Koordinaten wirk-sam wird.

L Anmerkungen: – Eine durch die Anweisung G92 ein-

gestellte Verschiebung einesWerkstück-Koordinatensys-tems wird durch die Ausfüh-rung der Programmende-Be-fehle M2, M30 und durch RE-SET auf den Programmanfanggelöscht.

– Die Anweisung G92 löscht die durch G52 programmierten Verschiebungen des lokalen Koordina-tensystems in den Achsen, die in der Anweisung enthalten sind.

Page 63: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

63

Abb. 9.3-1

9.3 Das lokale Koordinatensystem (G52)

Beim Erstellen eines Teileprogrammes ist es in gewissen Fällen leichter, die Koordinatenangaben nichtim Werkstück-Koordinatensystem, sondern in einem anderen sog. lokalen Koordinatensystemanzugeben.Die Anweisung

G52 vbringt ein lokales Koordinatensystem zustande. – Ist die v-Koordinate als Absolutwert angegeben, fällt das Origo des lokalen Koordinatensystems mit

dem Punkt der v-Koordinate des Werkstück-Koordinatensystems zusammen. – Ist die v-Koordinate inkremental angegeben, wird das Origo des lokalen Koordinatensystems um

v verschoben, wenn ein lokales Koordinatensystem vorher definiert worden war. Ist es nichtder Fall, erfolgt die Verschiebung relativ zum Origo des Werkstück-Koordinatensystems.

Von nun an werden alle durch Absolutkoordinaten angegebenen Fahrbefehle im neuenKoordinatensystem ausgeführt. Die Positionen werden im neuen Koordinatensystem angezeigt. DieWerte der v-Koordinaten werden immer für rechtwinklige Koordinaten betrachtet.Befindet sich das Werkzeug beispielsweise aufdem Koordinatenpunkt X=150, Y=100 des ak-tuellen X,Y Werkstück-Koordinatensystems, er-zeugt die Anweisung

G90 G52 X60 Y40 ein neues lokales X',Y' Koordinatensystem, indem sich das Werkzeug auf dem Koordinaten-punkt X'=90, Y'=60 befindet. Die Achskompo-nenten des Verschiebungsvektors V' zwischenden Koordinatensystemen X,Y - X',Y' werdendurch die Anweisung G52 bestimmt: V'x=60, ill.V'y=40.Soll das lokale Koordinatensystem nun auf denPunkt der Position X'', Y'' verlagert werden, können wir aus zwei Verfahren wählen: – Bei absoluter Angabe: die Anweisung (G90) G52 X30 Y60 setzt das Origo des X'',

Y''Koordinatensystems auf den Koordinatenpunkt X=30, Y=60 des X, Y Werkstück-Koordi-natensystems um. Die Komponeneten des Vektors V''werden durch die Wertangabe V''x=30,V''y=60 gebildet.

– Bei inkrementaler Angabe: Die Anweisung G91 G52 X-30 Y20 verlagert das Origo des X'', Y''Koordinatensystems auf den Koordinatenpunkt X'=-30, Y'=20 im Koordinatensystem X', Y'.Der V''-Vektor, der die Lage des neuen lokalen Koordinatensystem im Werkstück-Koordina-tensystem X, Y anzeigt, ist: V''=V'+V. Dessen Komponenten sind: V''x=60+(-30)=30,V''y=40+20=60.

Die Werkzeugposition im Koordinatensystem X'', Y'': X''=120, Y''=40.Die Anweisung

G90 G52 v0löscht die Verschiebungen in den v-Koordinatenpunkten.

Page 64: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

64

Abb. 9.3-2

Abb. 9.3-3

Die Verschiebung des lokalen Koordinatensys-tems wird in allen Werkstück-Koordinatensyste-men wirksam.

In den Achsen, für die Werte gegeben worden sind, löscht das Programmieren der Anweisung G92 diedurch die Anweisung G52 gebildeten Verschiebungen, als ob der Befehl G52 v0 ausgegeben wäre.Befindet sich das Werkzeug im Koordinaten-punkt X=200, Y=120X, des Werkstück-Koor-dinatensystems X, Y, erhält es die PositionX'=140, Y'=80 im lokalen KoordinatensystemX', Y' auf die Wirkung der Anweisung

G52 X60 Y40. Dann nimmt das Werkzeug auf die Wirkung desBefehls

G92 X110 Y40 die Position X''=110, Y''=40 im neuen Werk-stück-Koordinatensystem X'', Y'' an. Also wirddas lokale Koordinatensystem X', Y' auf dieWirkung des Befehls G92 gelöscht, als wäre derBefehl G52 X0 Y0 ausgegeben.

L Anmerkung: – Durch die Durchführung der Befehle M2, M30, oder durch RESET auf den Programmanfang wird

die Verschiebung des lokalen Koordinatensystems gelöscht.

9.4 Anwählen von Ebenen (G17, G18, G19)

Eine Ebene, in der – eine Kreisinterpolation, – eine Eingabe in Polarkoordinaten,– eine Verdrehung des Koordinatensystems,– eine Werkzeugradienkorrektur in der Ebene,– Positionierungen von Bohrzyklen

realisert werden sollen, kann durch die folgenden G-Kodes angewählt werden:G17............Ebene XpYp

G18............Ebene ZpXp

G19............Ebene YpZp

Page 65: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

9 Koordinatensysteme, Anwahl der Ebene

65

Abb. 9.4-1

worin Xp: X, oder die dazu parallel liegende Achse,Yp: Y, oder die dazu parallel liegende Achse,Zp: Z, oder die dazu parallel liegende Achse

sind. Die Angewählte Ebene heisst Hauptebene.Ob welche der parallelen Achsen angewählt wird, hängt vonden durch die Anweisungen G17, G18, oder G19 in einemSatz programmierten Achsadressen ab:Wenn X und U, Y und V, Z und W parallel liegende Achsensind, dann wählt die Steuerung

G17 X____ Y____ die Ebene XY,G17 X____ V____ die Ebene XV,G17 U____ V____ die Ebene UV,G18 X____ W____ die Ebene XW,G19 Y____ Z____ die Ebene YZ,G19 V____ Z____ die Ebene VZ

an.Ist in einem Satz kein G17, G18, G19 angegeben, bleibt die angewählte Ebene unverändert:

G17 X____ Y____ Ebene XY U____ Y____ bleibt die Ebene XY.

Ist in den G17-, G18-, G19-Sätzen keine Achsadresse angegeben, wählt die Steuerung dieHauptachsen an:

G17 Ebene XY,G17 X Ebene XY,G17 U Ebene UY,G17 V Ebene XV,G18 Ebene ZX,G18 W Ebene WX

Ein Fahrbefehl beeinträchtigt die Ebenenanwahl nicht:. Auf die Wirkung von(G90) G17 G00 Z100

wird die Ebene XY angewählt und die Z-Achse bewegt sich auf den Koordinatenpunkt 100.Nach dem Einschalten der Steuerung wird die im Parameter CODES des Parameterfeldes angegebeneEbene: G17, oder G18 angewählt.Innerhalb eines Programmes können Ebenen auch mehrmals gewechselt werden.Die Bezeichnung der U, V, W-Adressen für parallele Achsen kann im Parameterfeld erfolgen.

Page 66: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

10 Die Spindelfunktion

66

Abb. 10.2-1

10 Die Spindelfunktion

10.1 Die Spindeldrehzahlbefehl (S-Kode)

Wird auf die S-Adresse eine höchstens fünfstellige Zahl eingeschrieben, sendet die NC einen Kode derPLC. In Anhängigkeit der Bauweise der gegebenen Werkzeugmaschine kann die PLC den S-Kode alseinen Kode, oder einen in Umdrehungen pro Minute angegebenen Wert interpretieren.Wenn ein Fahrbefehl und eine Spindelumdrehung (S) in demselben Satz programmiert werden, wird dieS-Funktion während Abarbeitung oder nach Abarbeitung des Fahrbefehls ausgegeben.Die Abarbeitungsweise wird vom Maschinenhersteller bestimmt. Die unter der S-Adresse angegebenen Drehzahlwerte werden geerbt. Beim Einschalten nimmt dieSteuerung die niedrigste Drehzahl des gegebenen Drehzahlbereiches an. Bei den verschiedenenGetriebestufen gibt es eine minimale und eine maximale Spindeldrehzahl, die von denWerkzeugmaschinenhersteller im Parameterfeld festgelegt sind.

10.2 Programmierung der Berechnung der konstanten Schnittgeschwindigkeit

Die Funktion Berechnung der konstantenSchnittgeschwindigkeit kann nur im Falle stufen-freies Hauptantriebs angewandt werden. In die-sem Fall ändert die Steuerung die Hauptspindel-drehzahl, dass die Geschwindigkeit des Werk-zeugs im Vergleich zur Stückoberfläche stetskonstant und mit dem programmierten Wertgleich ist.Der Wert der konstanten Schnittgeschwindigkeitist vom Inputmassystem abhängig aufgrund derfolgenden Tabelle zu bestimmen.

Input Masseinheit Masseinheit der konstanten Schnittgeschwindigkeit

mm (G21 metrisch) m/min (Meter/Min.)

Zoll (G20 in Zoll) feet/min (Fuss/Min.)

Page 67: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

10 Die Spindelfunktion

67

10.2.1 Angabe der Berechnung der konstanten Schnittgeschwindigkeit (G96, G97)

Die AnweisungG96 S

schaltet die Berechnung der konstanten Schnittgeschwindigkeit ein. Unter der Adresse S ist der Wertder konstanten Schnittgeschwindigkeit in der Masseinheit laut der obigen Tabelle anzugeben. Die Anweisung

G97 Sschaltet die Berechnung der konstanten Schnittgeschwindigkeit aus. Unter der Adresse S kann diegewünschte Hauptspindelumdrehung (in der Masseinheit Umdrehung/Min.) angegeben werden. – Zum Zwecke der Berechnung der konstanten Schnittgeschwindigkeit ist das Koordinatensystem so

einzustellen, damit der Nullpunkt des Koordinatensystems mit der Drehachse zusammenfällt. – Die Berechnung der konstanten Schnittgeschwindigkeit ist nur dann wirksam, wenn der Hauptspindel

mit M3 oder M4 gestartet wurde. – Der Wert der Berechnung der konstanten Schnittgeschwindigkeit wird geerbt, auch dann, wenn ihre

Rechnung mit der Anweisung G97 ausgeschaltet wurde. Der Wert der konstantenSchnittgeschwindigkeit wird nach dem Einschalten durch den Parameter CTSURFSP bestimmt.

G96 S100 (100 M/Min. oder 100 Fuss/Min.)G97 S1500 (1500 Umdrehung/Min.)G96 X260 (100 M/Min. oder 100 Fuss/Min.)

– Die Berechnung der konstanten Schnittgeschwindigkeit ist auch in der Art G94 (Vorschub/Min.)wirksam.

– Wenn die Berechnung der konstanten Schnittgeschwindigkeit mit dem Befehl G97 ausgeschaltet undkeine neue Hauptspindelumdrehung angegeben wurde, bleibt die im Zustand G96 auf-genommene letzte Hauptspindelumdrehung wirksam.

G96 S100 (100 M/Min. oder 100 Fuss/Min.) . . .

G97 (Die zum sich ergebenden Durchmesser Xgehörende Drehzahl)

–Im Fallle des Eilgangspositionierens (Satz G00) wird die konstante Schnittgeschwindigkeit nichtfortlaufend berechnet, sondern die Steuerung stellt die zur im Endpunkt des Positionierensfälligen Position gehörende Drehzahl ein. Das ist nötig, damit die Hauptspindeldrehzahlüberflüssig nicht geändert wird.

– Zur Berechnung der konstanten Schnittgeschwindigkeit ist der Nullpunkt der Achse, aufgrund derenPosition die Hauptspindeldrehzahl geändert wird, auf die Drehachse der Hauptspindel zu stellen.

10.2.2 Abgrenzung des Wertes der konstanten Schnittgeschwindigkeit (G92)

Mit der AnweisungG92 S

kann die bei der Berechnung der konstanten Schnittgeschwindigkeit zulässige höchsteHauptspindeldrehzahl eingestellt werden. Die Steuerung erlaubt im eingeschalteten Zustand derBerechnung der konstanten Schnittgeschwindigkeit nicht, grössere Hauptspindelumdrehung als der hierangegebene Wert auszugeben. Masseinheit von S ist in diesem Fall: Umdrehung/Min. – Nach Einschalten bzw. wenn der S-Wert mit dem Befehl G92 nicht abgegrenzt wurde, ist die obere

Page 68: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

10 Die Spindelfunktion

68

Grenze der Hauptspindeldrehzahl im Falle der Berechnung der konstantenSchnittgeschwindigkeit der für den gegebenen Bereich zulässige Maximalwert.

– Der Wert der maximalen Drehzahl wird geerbt, bis ein neuer programmiert oder die Steuerungausgeschaltet wird.

10.2.3 Achsenbestimmung zur Berechnung der konstanten Schnittgeschwindigkeit

Die Achse, aus der die Steuerung die konstante Schnittgeschwindigkeit berechnet, wird durch denParameter AXIS bestimmt. Als Parameter ist die logische Achsennummer zu schreiben.Wenn von der bestimmten Achse abzuweichen ist, kann die Achse, aus der die Schnittgeschwindigkeitzu berechnen ist, mit der Anweisung

G96 Pangegeben werden. Interpretation der P-Adresse:

P1: X, P2: Y, P3: Z,P4: U, P5: V, P6: W,P7: A, P8: B, P9: C

– Der unter der P-Adresse eingestellte Wert wird geerbt. Nach Einschalten macht die Steuerung dieBerechnung der konstanten Schnittgeschwindigkeit für die im Parameter AXIS eingestellteAchse wirksam.

10.3 Rückkoppelung der Spindelposition

Bei einer normalen Bearbeitung gibt die NC einen mit der programmierten Drehzahl (den unter S-Adresse engegebenen Wert) proportionalen Drehzahlbefehl aus. In diesem Fall arbeitet derHauptantrieb mit Drehzahlregelung.Bei gewissen Bearbeitungsaufgaben kann erforderlich sein, dass die Hauptspindel in eine bestimmteWinkelposition gebracht wird. Dieses Verfahren heisst Spindelpositionierung oder Indexierung.Vor dem Positionieren setz die NC den Hauptantrieb in die Betriebsart Positionsregelung. Dann gibtdie NC keinen mit dem S-Kode proportionalen Drehzahlbefehl aus. Die Spindelposition wird mit erHilfe eines auf die Hauptspindel angebrachten Winkelpositionsgeber gemessen und die NC gibt Befehledem Hauptantrieb in Abhängigkeit der Winkelverdrehung aus, wie bei den anderen geregeleten Achsen.Diese Methode heisst Positionsrückkoppelung.Zum Realisieren der Spindelpositionierung ist es erfordelich, dass die Hauptspindel mit einemWinkelpositionsgeber versehen wird, bzw. der Hauptantrieb mit der Positionsrückkoppelung arbeitenkann.

10.4 Orientierter Spindelstop

Spindelorientierung oder orientierter Spindelstop heisst die Funktion, bei der die Hauptspindel in einerbestimmten Winkelposition angehalten wird. Dies kann z.B. bei einem automatischen Werkzeugwechselund bei der Durchführung gewisser Bohrzyklen erforderlich sein. Die Tatsache, dass die Orientierungauf der gegebenen Werkzeugmaschine möglich ist, muss der Steuerung im Parameter ORIENT1 desParameterfeldes mitgeteilt werden. Der Befehl Spindelorientierung wird durch die Funktion M19ausgegeben, jedoch er kann, abhängig von der konkreten Werkzeugmaschine, durch eine andereFunktion ausgelöst werden. Technisch kann die Spindelorientierung auf zweierlei Arten erfolgen.

Page 69: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

10 Die Spindelfunktion

69

Kann die Hauptspindel zur Positionsregelung zurückgekoppelt werden nicht, kann sie durch Anfahrenan einen Positionsschalters verwirklicht werden.Kann die Hauptspindel an eine Positionsregelung zurückgekoppelt werden, führt die Steuerung denSpindel auf den Referenzimpuls des Spindeldrehgebers. Dann die Steuerung führt das Schliessen desPositionsregelkreises automatisch durch.

10.5 Spindelpositionierung (Indexierung)

Eine Spindelindexierung ist erst nach Schliessen des Positionsregelkreises der Hauptspindel, d.h. nacherfolgter Orientierung möglich. Diese Funktion dient zum Schliessen der Regelschleife. Das Öffnen derSchleife erfolgt mit den Drehbefehlen M3 oder M4.In dem Fall, wenn der Wert des Parameters INDEX1 =1 (dieser Parameter bestimmt, dass derHauptantrieb an die Positionsregelung zurückgekoppelt werden kann) und der Wert des ParametersINDEX_C1 =0 ist, erfolgt die Spindelindexierung auf M-Funktion.In diesem Fall interpretiert die Steuerung die mit dem im Parameter M_NUMB1 eingestelltenSchwellenwert beginnenden und bis zu (M_NUMB1+360) reichenden M-Funktionen als Indexie-rungsbefehle. Die Schwellenzahl wird aus dem Wert von M abgezogen und die resultierende Zahl wirdals ein inkrementaler, in Grad angegebener Wert behandelt.Beispiel: Bei M_NUMB1=100 bedeutet der Befehl M160, dass sich die Hauptspindel relativ zurmomentanen Spindelposition um 160-100=60 Grad verdrehen soll. Die Verdrehrichtung ist durch denim Parameter CDIRS1 angegebenen Wert, die Geschwindigkeit ist durch den im Parameter RAPIDS1eingestellten Wert bestimmt.Wenn der Wert des Parameters INDEX C1 = 1, kann die Hauptspindelindexierung unter C-Adresseangegeben werden.

10.6 Überwachung der Schwankung der Hauptspindeldrehzahl (G25, G26)

Die AnweisungG26

schaltet die Überwachung der Schwankung der Hauptspindeldrehzahl ein, die AnweisungG25

schaltet sie aus. Nach Einschalten oder nach RESET ist die Steuerung im Zustand G26, d.h. dieÜberwachung der Schwankung der Drehzahl ist eingeschaltet. Diese Funktion zeigt die im Laufe derDrehung der Hauptspindel eingetretenen Abnormalitäten, so kann z.B. die Klemmung der Hauptspindelvermieden werden. Die Überwachung der Schwankung der Drehzahl beeinflussen 4 Parameter. Diese Parameter könnenim Programm mit den Adressen nach der G26-Kode umgeschrieben werden. Die umgeschriebenenParameter werden nach Ausschalten geerbt. Auf Anweisung

G26 Pp Qq Rr Ddwerden die Parameter umgeschrieben. Die Interpretation der Parameter beinhaltet die folgende Tabelle:

Page 70: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

10 Die Spindelfunktion

70

Abb. 10.6-1

Name Parameter Bedeutung Einheit Grenzwert

p 5001 TIME maximale Zeitdauer zwischen demBefehlerteilen der Drehzahl und demKontrollanfang

100 Msec 65535

q 5002 SCERR zulässige prozentuale Abweichungzwischen dem Drehzahlbefehl und dertatsächlichen Drehzahl

% 1-50

r 5003 FLUCT% zulässiges Mass derDrehzahlschwankung im Prozent derausgegebenen Drehzahl

% 1-50

d 5004 FLUCTW zulässiges Mass derDrehzahlschwankung im Absolutwert

Umdr./Min 65535

Die Überwachung der Drehzahlschwankung erfogt folgenderweise:

Anfang der Überwachung der DrehzahlschwankungDurch die Wirkung neues Drehzahlbefehls unterbricht die Steuerung die Überwachung. DieÜberwachung der Drehzahlschwankung beginnt, wenn

- die aktuelle Hauptspindeldrehzahlden Wert des Drehzahlbefehls bin-nen der im “q”-Wert bestimmtenToleranzgrenze erreicht, oder

Page 71: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

10 Die Spindelfunktion

71

Abb. 10.6-2

Abb. 10.6-3

- die aktuelle Hauptspindeldrehzahlden Wert des Drehzahlbefehls bin-nen der im “q”-Wert bestimmtenToleranzgrenze nicht erreicht, aberdie im “p”-Wert bestimmte Zeitvom Befehlerteilen an vergeht.

FehlerdetektierungIm Laufe der Überwachung gibt die Steuerung Fehleranzeige, wenn die Abweichung der aktuellenDrehzahl vom Drehzahlbefehl

- die im “r”-Wert angegebene, im Prozent desBefehlwertes ausgedrückte Toleranzgrenze und- auch die im “d”-Wert angegebene Absoluttole-ranzgrenze überschreitet.Wenn der Wert der aktuellen Drehzahl beideToleranzgrenze überschritten hat, stellt NC gegenPLC eine Meldung.In der Abbildung 3 ist der Drehzahlbereich er-sichtlich, worin NC Fehleranzeige sendet. Wenndie programmierte Hauptspindelumdrehung unterdem in der Abbildung mit “S” bezeichneten Wertliegt, gibt NC Fehleranzeige, wenn die aktuelleDrehzahl mehr als 1 Sekunde 0 Umdrehung/Min.ist. – Die Funktion Überwachung der Drehzahl-

schwankung ist nur dann wirksam, wenndie Hauptspindel mit Impulsgeber ausge-rüstet ist.

– Der Drehzahlbefehl, im Verhältnis zu dem die aktuelle Drehzahl überwacht wird im ZustandOverride, Drehzahlgrenzen der Bereiche und Berechnung der konstantenSchnittgeschwindigkeit G96 mit Berücksichtigung der programmierten maximalen Drehzahl(G92 S) berechnet.

– Die Überwachung der Hauptspindeldrehzahl ist nur im Falle G26 und drehender Hauptspindel(Zustand M3 oder M4) wirksam.

– Der Befehl G26 ist im selbständigen Satz zu programmieren.

Page 72: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

11 Die Werkzeugverwaltung

72

11 Die Werkzeugverwaltung

11.1 Befehl des Werkzeugaufrufes (T-Kode)

Wird auf die T-Adresse eine höchstens vierstellige Zahl eingeschrieben, sendet die NC einen Kode derPLC. Wenn ein Wegbefehl und ein Werkzeug (T) im denselben Satz programmiert werden, wird die T-Funktion während oder nach Abarbeitung des Wegbefehls ausgegeben. Die Durchführungsweise wirdvom Maschinenhersteller bestimmt.

11.2 Programmformat zur Werkzeugprogrammierung

Im Teileprogramm kann der Werkzeugwechsel auf zwei verschiedene Arten aufgerufen werden. Diesebeiden Arten hängen von der Bauweise der Werkzeugmaschine ab. Die im Teileprogramm anwendbareWerkzeugaufruftechnik wird vom Werkzeugmaschinenhersteller festgelegt.

Fall ADer Werkzeugwechsel auf der Maschine erfolgt manuell, oder mit Hilfe einer Werkzeug-wechseleinrichtung (Revolverkopf) erfolgen. Nach Aufrufen des T-Kodes erfolgen die Folgenden: – Bei manuellem Werkzeugwechsel wird die Nummer des einzuwechselnden Werkzeuges angezeigt,

das in die Spindel mauell eingesetzt werden muss. Die Barbeitung setzt sich auf die Wirkung vonStart fort.

– Bei der Anwendung eines Revolverkopfes wechselt wird das Werkzeug auf die Wirkung des T-Kodes automatisch eingewechselt.

Praktisch löst der Werkzeugaufruf einen unverzüglichen Werkzeugwechsel in dem Satz aus, in dem derT-Kode angegeben worden ist.

Fall BDer Werkzeugwechsel erfordert eine Vorbereitung auf der Maschine. Deren Schritte sind dieFolgenden: – Das neue Werkzeug muss im Werkzeugspeicher gesucht werden. Dabei wird das Werkzeug durch

den Aufruf des T-Kodes im Teileprogramm in die Wechselposition gebracht. Diese Operationläuft im Hintergrund, parallel zur Bearbeitung ab.

– Die Schlitten, oder nur einer davon, müssen in eine Wechselposition gebracht werden. – Der Werkzeugwechsel erfolgt durch die M06-Funtion im Programm. Der Werkzeugwechsel wird

verzögert, solange das in der Vorbereitung befindliche Werkzeug in die Wechselposition nichtgelangt. Beim Erreichen dieser Position wird das Werkzeug eingewechselt und die Bearbeitungkann sich fortsetzen.

– Das alte Werkzeug wird in den Werkzeugspeicher zurückgesetzt. Diese Operation erfogt imHintergrund, parallel zur Bearbeitung.

– Die Steuerung beginnt mit der Suche nach dem neuem Werkzeug.

Page 73: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

11 Die Werkzeugverwaltung

73

Dieser Vorgang wird im Teileprogramm folgenderweise beschrieben:

Teileprogramm Erklärung.....................Tnnnn........ Suche nach dem Werkzeug Tnnnn. ................. Das Teileprogramm läuft, im Hintergrund wird das Werkzeug Tnnnn

gesucht....M06 Tmmmm.... Das Werkzeug Tnnnn wird in die Spindel gesetzt.................. Das alte Werkzeug wird in den Werkzeugspeicher zurückgesetzt.................. Die Suche nach dem Werkzeug Tmmmm beginnt, während die

Bearbeitung läuft. ...M06 Tpppp..... Das Werkzeug Tmmmm wird in die Spindel gesetzt.

.................

Das Werkzeug Tnnnn wird in den Werkzeugpeicher zurückgesetzt, dieSuche nach dem Werkzeug Tpppp beginnt,

................. inzwischen läuft die Bearbeitung.

Page 74: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

12 Zusatzfunktionen und Hilfsfunktionen

74

12 Zusatzfunktionen und Hilfsfunktionen

12.1 Zusatzfunktionen (M-Kodes)

Nach Eingabe eines max. dreistelligen Zahlenwertes auf die M-Adresse übergibt die NC den Kode derPLC.Werden ein Wegbefehl und eine Zusatzfunktion in demselben Satz programmiert, wird dieZusatzfunktion parellel mit der Abarbeitung des Wegbefehls oder nach der Abarbeitung des Wegbefehlsausgeführt. Die Ausführungsweise wird vom Maschinenhersteller bestimmt. Unter den M-Kodes befinden sich bestimmte Kodes, die nur für betimmte Funktionen anwendbar sind.Diese sind die Folgenden:

M00, M01, M02, M30, M96, M97, M98, M99: programmsteuernde KodesM03, M04, M05, M19: Spindelkodes

M06: Kode für den Werkzeugwechsel M07, M08, M09: Kodes für die Kühlmittelzuschaltung M11, ..., M18: Kodes der DrehzahlbereichumschaltungDie Weiteren M-Kodes sind frei anwendbar.Funktioniert das Indexieren auf einen M-Kode, werden die M-Kodes durch Parameter bestimmt.Die Steuerung ermöglicht das Einschreiben mehrerer, unterschiedlichen Gruppen gehörigen M-Kodesin einen Satz. Die Reihenfolge der Abarbeitung ist folgend:

Gruppe 1 M06: WerkzeugwechselGruppe 2 M11, ..., M18: DrehzahlbereichumschaltungGruppe 3 M03, M04, M05, M19: SpindelkodesGruppe 4 M07, M08, M09: KühlmittelzuschaltungGruppe 5 Mnnn: andere beliebige M-FunktionenGruppe 6 M-kodes der SpindelindexierungGruppe 7 M00, M01, M02, M30, M96, M97, M98, M99: programmsteuernde Kodes

Die Anzahl der in einem Satz programmierbaren M-Funktionen ist maximum 5. Aus einer Gruppe kannnur, je ein M-Kode in einem Satz programmiert werden. Ein falsches Programmieren resultiert dieFehleranzeige 3032 WIDERSPRECHENDE M KODE .Die genaue Funktionen der einzelnen M-Kodes sind von dem Werkzeugmaschinenhersteller inAbhängigkeit der Bauweise der Maschine bestimmt. Ausnahmen davon sind die programmsteuerndenKodes.

Programmsteuernde M-Kodes:M00: programmierter Halt

Am Ende des Satzes, in dem M00 angegeben worden ist, wird ein Stop-Zustand generiert. Alleerblichen Funktionen bleiben unverändert. Neustart durch den Startbefehl.

M01: bedingter HaltEr hat die selbe Wirkung, wie M00. Er wird bei eingeschaltetem Zustand der Taste BEDINGTERHALT durchgeführt. Ist die entsprechende Taste nicht eingeschaltet, ist diese Funktion unwirksam.

M02, M30: ProgrammendeDie Operationen werden stillgesetzt und die Steuerung nimmt den Grundzustand an.. Das PLC-Programm setzt die Maschine in den Grundzustand.

M98: Unterprogramm aufrufen

Page 75: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

12 Zusatzfunktionen und Hilfsfunktionen

75

Durch diese Funktion werden Unterprogramme aufgerufen.M99: Ende Unterprogramm

Die Steuerung springt auf die Stelle des Aufrufes zurück.

12.2 Hilfsfunktionen (A-, B-, C-Kodes)

Wenn eine, oder alle der A-, B-, C-Adressen im Parameterfeld für Hilfsfunktionen bestimmt sind, Kannein max. dreistellige Zahl für diese Adressen eingegeben werden. Diese Werte werdem in die PLCübertragen.Werden ein Wegbefehl und eine Hilfsfunktion in demselben Satz programmiert, wird die Hilfsfunktionparallel mit der Abarbeitung des Wegbefehls oder nach der Abarbeitung des Wegbefehls durchgeführt.Der Werkzeugmaschinenhersteller bestimmt die Reihenfolge der Durchführung, die in derMaschinenspezifikation enthalten ist. Unter der B-Adresse kann z.B. das Indexieren eines Teiltischesverwirklicht werden.

12.3 Reihenfolge der Durchführung verschiedener Funktionen

Die in einem Satz geschriebenen Funktionen werden im allgemeinen in der folgenden Reihenfolgedurchgeführt:

1. Werkzeugwechsel: M062. Werkzeugaufruf: T3. Drehzahlbereichumschaltung: M11, ..., M184. Spindelumdrehung: S5. Spindelverwaltung: M03, M04, M05, M196. Kühlmittel: M07, M08, M097. Andere M-Funktion: Mnnn8. Spindelindexierung: durch M-Funktion9. A-Funktion: A

10. B-Funktion: B11. C-Funktion: C12. programmsteuernde Kodes: M00, M01, M02, M30, M96, M97, M98,

M99Entspricht die obige Reihenfolge nicht, ist der Satz auf mehrere Sätze aufzuteilen und die entsprechendenFunktionen sind in der gewünschten Reihenfolge in die Sätze einzuschreiben.

Page 76: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

13 Organisierung des Teileprogrammes

76

13 Organisierung des Teileprogrammes

In der Einführung wurde es bereits besprochen, mit welchen Kodes und in welchem Format dieProgramme im Speicher plaziert sind. In diesem Kaptel handelt es sich um die Organiserung derTeileprogramme.

13.1 Die Satznummer (N-Adresse)

Die Programmsätze werden nummeriert. Die Nummerierung kann unter der N-Adresse, mit einer max.5stelligen Zahl erfolgen. Die Anwendung der N-Adresse ist unverbindlich. Gewisse Sätze könnennummeriert werden, andere Sätze nicht. Die Nummerierung braucht nicht laufend zu sein.

13.2 Bedingte Ausblendsätze (/-Adresse)

Ausblendsätze können unter der /-Adresse (Schrägstrich) programmiert werden. Diese Adresse kanndie Werte 1-9 annehmen. Diese Zahlen bedeuten Schalternummer. Der Schalter BEDINGTER SATZ1 befindet sich an der Bedientafel der Steuerung.Die anderen Schalter sind optionell, ihre Signale können über die Anpassfläche eingegeben werden.In dem Fall, wenn am Anfang eines Satzes /n programmiert wird, dann wird der Satz der Nummer n – bei eingeschaltetem Zustand des Schalters n übersprungen, also nicht abgearbeitet, – bei ausgeschaltetem Zustand des Schalters n durchgeführt.

13.3 Hauptprogramm und Unterprogramm

Es werden zwei Arten der Programme, Hauptprogramme und Unterprogramme unterschieden. Bei derBearbeitung eines Werkstückes können sich wiederholende Operationen vorkommen, die durchdenselben Programmteil beschrieben werden können. Im dessen Interesse, dass diese sichwiederholdenen Programmteile nicht mehrmals geschrieben werden müssen, können Unterprogrammeerstellt werden, die vom Hauptprogramm aus aufgerufen werden können. Der Aufbau der Haupt- undder Unterprogramme ist vollkommen gleich. Der Unterschied besteht darin, dass die Bearbeitung nach Abarbeiten des Hauptprogrammes beendetwird, während die Steuerung kehrt nach Durchführen des Unterprogrammes ins aufrufende Programmzurück und die Bearbeitung setzt sich von dieser Stelle an fort.Programmtechnisch besteht dieser Unterschied zwischen den beiden Programmen im Abschliessen derProgramme. Das Ende eines Hauptprogrammes wird mit M02, oder M30 bezeichnet (ihre Anwendungist unverbindlich). Unterprogramme werden verbindlich mit dem Kode M99 abgeschlossen.

13.3.1 Aufrufen des Unterprogrammes

Die AnweisungszeileM98 P....

generiert den Aufruf eines Unterprogrammes. Auf die Wirkung der Anweisung setz sich dieProgrammabarbeitung mit deren des unter der P-Adresse bestimmten Unterprogrammes. DerWertbereich der P-Adresse liegt zwische 1 und 9999. Nach Abarbeiten des Unterprogrammes wirddie Bearbeitung mit dem nächstfolgenden Satz des aufrufenden Programmes fortgesetzt:

Page 77: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

13 Organisierung des Teileprogrammes

77

Aufrufendes Programm

O0010............M98 P0011 --->

nächster Satz <---

......

......

Unterprogramm

O0011..................M99

Anmerkung

Abarbeiten des Program-mes O0010

Aufrufen des Unterpro-grammes O0011Abarbeiten des Unterpro-grammes O0011

Rücksprung ins aufrufen-de ProgrammFortsetzung des Program-mes O0010

Die AnweisungszeileM98 P.... L....

ruft das unter der P-Adresse definierte Unterprogramm so viele Male auf, wie es unter der L-Adresseangegeben ist. Wertbereich der L-Adresse: 1-9999. Wird für L kein Wert eingegeben, wird dasUnterprogramm nur einmal aufgerufen, d.h. die Steuerung nimmt L=1 an. Die Anweisung M98 P11 L6 bedeutet, dass das Unterprogramm O0011 sechsmal nacheinanderaufgerufen werden soll.Unterprogramme können auch von einem anderen Unterprogramm aus aufgerufen werden. Die Aufrufekönnen bis zu 4 Ebenen geschachtelt werden.

L Anmerkungen: – Fehleranzeige 3069 EXTREMVERSCHACHTELUNG erscheint, wenn die Aufrufebene 4 über-

schreitet. – Fehleranzeige 3071 FEHLENDE ODER FALSCHE P erscheint, wenn der Wert der P-Adresse

grösser als 9999 ist, oder fehlt – Fehleranzeige 3072 ANWEISUNGSFEHLER L erscheint, wenn der L-Wert falsch ist. – Fehleranzeige 3073 KEINE PROGRAMNUMMER erscheint, wenn sich das unter die P-Adresse

definierte Programm im Speicher nicht vorhanden ist.

13.3.2 Rückkehr aus dem Unterprogramm

Die Anwendung der AnweisungM99

in einem Unterprogramm bedeutet das Ende des Unterprogrammes. Die Programmsteuerung wird aufden dem Aufruf folgenden Satz übergeben.

Hauptprogram Unterprog. Unterprogr. Unterprogr. Unterprog.O0001 >O0011 >O0012 >O0013 >O0014.... .... .... .... ........ .... .... .... ....M98P11 M98P12 M98P13 M98P14 ........< ....< ....< ....< ........ .... .... .... ....M02 M99 M99 M99 M99

Page 78: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

13 Organisierung des Teileprogrammes

78

Aufrufendes Programm

O0010..................

Unterprogramm Anmerkung

Abarbeiten des Pro-grammes O0010

N101 M98 P0011 –––> O0011 A u f r u f d e s U n t e r -programmes O0011

......

......

......

Abarbeiten des Unter-programmes O0011

N102 ...... <––– M99 Rücksprung auf dennächsten Satz desProgrammes, Fortset-zung des ProgrammesO0010

Die Anwendung der AnweisungM99 P.....

in einem Unterprogramm bedeutet das Ende des Unterprogrammes und die Programmsteuerung wirddem Satz der unter der P-Adresse angegebenen Nummer übergeben. Der Wertbereich der P-Adresseist in diesem Fall 1-99999.

Aufrufendes Programm

O0010..................

Unterprogramm Anmerkung

Abarbeiten des Pro-grammes O0010

N101 M98 P0011 –––> O0011 A u f r u f d e s U n t e r -programmes O0011

......

......

......

Abarbeiten des Unter-programmes O0011

N250 ...... <–––

......

......

M99 P250 Rücksprung auf den Satz N250 des auf-rufenden Programmes,Fortsetzung des Pro-grammes O0010

Die AnweisungM99 (P.....) L....

überschreibt den Zykluszähler des aufrufenden Programmes. Wird Null für L geschrieben, wird dasUnterprogramm nur einmal aufgerufen. Wenn das Unterprogramm beispielsweise mit der AnweisungM98 P11 L20 aufgerufen wird und das Unterprogramm mit der Anweisung M99 L5 verlassen wird,wird das Unterprogramm O11 insgesamt 6mal aufgerufen (Wertbereich von L: 1-9999).

L Anmerkung: – Wenn die Steuerung die angegebenen Satznummer (P) beim Rücksprung nicht findet, erfolgt die

Fehleranzeige 3070 KEINE SATZNUMMER P.

Page 79: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

13 Organisierung des Teileprogrammes

79

13.3.3 Sprung innerhalb des Hauptprogrammes

Die Anwendung der AnweisungM99

im Hauptprogramm resultiert einen unbedingten Sprung auf den ersten Satz des Hauptprogrammes unddie Steuerung setz mit der Programmabarbeitung von hier an fort. Die Anwendung der Anweisung bringteinen unendlichen Zyklus zustande:

Die Anwendung der AnweisungM99 P.....

im Hauptprogramm resultiert einen unbedingten Sprung auf den Satz der unter der P-Adresse desHauptprogrammes angegebenen Nummer und die Programmsteuerung setz mit der Programm-abarbeitung von hier an fort. Die Anwendung der Anweisung kann einen unendlichen Zyklushervorrufen:

Die eventuell entstehenden unendlichen Zyklen können vermieden werden, wenn der die AnweisungM99 enthaltende Satz in Form /1 M99 eingegeben wird. In diesem Fall wird der Sprung anhängig vonder Schalterstellung durchgeführt, oder weggelassen.

O0123N1... <.............M99

O0011 O0011.... ........ M99 P225N128....< ........ ........ N225 <M99 P128 ....

Page 80: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

80

14 Die Werkzeugkorrektur

14.1 Bezugnahme auf Werkzeugkorrekturen (H und D)

Bezugnahme auf Längenkorrekturen: unter H-AdresseBezugnahme auf Werkzeugradienkorrekturen: unter D-AdresseDie nachgesetzte Nummer, die Korrekturnummer zeigt, welcher Korrekturwert aufgerufen wird.Wertbereiche der H- und D-Adressen: 0-999.Die Aufteilung des Korrekturspeichers ist in der untenstehenden Tabelle enthalten:

H-Kode D-Kode

Korrektur-nummer

GeometrischerWert

VerschleisswertGeometrischer

WertVerschleisswert

0102 . . .

-350200830500 0.130-0.102

.

.

.

-3212052328 0.012-0.008

.

.

.

Die Korrekturnummer 00 ist in der Tabelle nicht enthalten, die Korrekturwerte unter dieser Nummersind immer Null.Geometrischer Wert: Länge/Radius des vermessenen Werkzeuges. Vorzeihenbehaftete Zahl.Verschleisswert: Grösse des während der Bearbeitung auftretenen Verschleisses. Vorzeichen behaftete Zahl.Wird im Programm auf einen Korrekturwert unter der H-, oder D-Adresse Bezug genommen,nimmt die Steuerung immer die Summe des geometrischen und des Verschleisswertes in Betracht.Wird z.B. im Programm auf H2 Bezug genommen, beträgt die Längenkorrektur laut der obigenTabelle : 830.500+(-0.102)=830.398.Die H- und die D-Adresse sind erblich, d.h. die Steuerung nimmt denselben Korrekturwert inBetracht, solange sie keinen anderen H-, oder D-Befehl erhält. Die Korrekturwerte imKorrekturspeicher sind auch beim Ausschalten speichergeschützt.

Page 81: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

81

Wertgrenzen der Geometrie- und Verschleisswerte:

Eingangs-Massystem

Ausgangs-Massystem

Inkremen-tensystem

Geometrischer Wert VerschleisswertDimen-

sion

mm mm

IS-A ±0.01 ÷99999.99 ±0.01÷163.80

mmIS-B ±0.001÷9999.999 ±0.001÷16.380

IS-C ±0.0001÷999.9999 ±0.0001÷1.6380

Zoll mm

IS-A ±0.001÷9999.999 ±0.001÷6.448

ZollIS-B ±0.0001÷999.9999 ±0.0001÷0.6448

IS-C ±0.00001÷99.99999 ±0.00001÷0.06448

Zoll Zoll

IS-A ±0.001÷9999.999 ±0.001÷16.380

ZollIS-B ±0.0001÷999.9999 ±0.0001÷1.6380

IS-C ±0.00001÷99.99999 ±0.00001÷0.16380

mm Zoll

IS-A ±0.01÷99999.99 ±0.01÷416.05

mmIS-B ±0.001÷9999.999 ±0.001÷41.605

IS-C ±0.0001÷999.9999 ±0.0001÷4.1605

Die Werkzeugkorrekturwerte können mit Dateneingabe am Bedienungstafel, sowie im Programmdurch die Anwendung der Einstellanweisung G10 eingestellt, bzw. modifiziert werden. DieWertbereiche der H- und D-Adressen in einer gegebenen Steuerung, d.h. die Anzahl der in derSteuerung definierbaren Längen und Radienkorrekturen sind von dem Speicherausbau derSteuerung bestimmt. Bei einer minimalen Speicherausbau beträgt die Anzahl der Korrekturen 99,d.h. der Wertbereich der H- und der D-Adresse liegt zwischen 0 und 99.

14.2 Modifizieren der Werkzeugkorrekturwerte von dem Programm aus (G10)

Die Werkzeugkorrekturwerte können durch die AnweisungG10 R L P

von dem Programm aus modifiziert werden. Die Anweisung G10 hat nur eine einmalige Wirkung.Die Bedeutung der Adressen und ihrer Werten sind die Folgenden:Der Korekturwert wird unter der R-Adresse angegeben. Im absoluten Befehlszustand G90 wird derunter der R-Adresse eingeschriebene Wert ins entsprechende Korrekturregister geladen. Iminkrementalen Befehlszustand G91, oder bei Anwendung des I-Operators wird die unter der R-Adresse eingegebene Angabe dem Inhalt des entsprechenden Korrekturregisters addiert.Der zu modifizierende Korrekturwert wird unter der L-Adresse angegeben:

L=10 : Modifizierung des geometrischen Wertes der Längenkorrektur (H-Kode)L=11 : Modifizierung des Verschleisswertes der Längenkorrektur (H-Kode)L=12 : Modifizierung des geometrischen Wertes der Radienkorrektur (D-Kode)L=13 : Modifizierung des Verschleisswertes der Radienkorrektur (D-Kode)

Die Nummer des zu modifizierenden Korrekturwertes wird unter der P-Adresse angegeben.

L Anmerkung: Der unter der R-Adresse angegebene Wert ist im Laufe der programmiertenModifizierung der Werkzeugradienkorrektur in jedem Fall als Radius zu interpretieren,unabhängig vom Zustand des Parameters TOOLRAD. Die Steuerung gibt die Anzeige 3001EXTREMWERT X,Y,...F, wenn die angegebenen Werte die in der obigen Tabellebestimmten Grenzwerte überschreiten.

Page 82: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

82

14.3 Die Werkzeuglängenkorrektur (G43, G44, G49)

Die AnweisungG43 q H, oderG44 q H

schaltet die Betriebsart der Werkzeuglängenkorrektur ein.Bedeutung der q-Adresse: Die Werkzeuglängenkorrektur ist in der q-Achse (q: X, Y, Z, U, V, W,A, B, C) wirksam.Bedeutung der H-Adresse: Dert Wert der Werkzeuglängenkorrektur wird aus dem unter dieserAdresse angegebenen Korrekturfach herausgenommen.Die Anweisung G43 addiert den unter der H-Adresse angegebenen Korrekturwert (wobei qentweder eine inkrementale, oder eine absolute Angabe sein kann) der resultierendenEndpunktkoordinate:

G43: +KorrekturwertDie Anweisung G44 zieht den unter der H-Adresse angegebenen Korrekturwert (wobei q entwedereine inkrementale, oder eine absolute Angabe sein kann) aus der resultierenden Endpunktkoordinateab:

G43: –KorrekturwertDa für die Z-Achse eine inkrementale Weglänge von 0 programmiert wurde, ergeben dieAnweisungen G43 G91 Z0 H1, oder G44 G91 Z0 H1 einen der Werkzeuglänge genauentsprechenden Weg. Die Bewegungsrichtung ist positiv, wenn der Unter der H-Adresse angegebenWert positiv ist, bzw. negativ, wenn er negativ ist. Bei G44 sind die Verhältnisse umgekehrt. NachAbarbeiten des Befehls ist die für die Z-Koordinate angezeigte Position die selbe wie vorher, danach dem Einschalten der Längenkorrektur die Position der Werkzeugspitze angezeigt wird.Werkzeugkorrekturen können gleichzeitig für mehrere Achsen definert werden: z.B.

G43 Z250 H15G43 W310 H16

Werden in einem Satz mehrere Achsen bezeichnet, wird die Korrektur in allen bezeichneten Achsenrealisiert:

G44 X120 Z250 H27

Wird der Korrekturwert durch den Aufruf einer neuen H-Adresse modifiziert, wird der alte Wertgelöscht und der neue Wert realisiert:

H1=10, H2=20G90 G00G43 Z100 H1..........Anfahren des Punktes Z=110G43 Z100 H2..........Anfahren des Punktes Z=120

Die Auswirkung von G43 und G44 wird geerbt, solange kein andere Befehl aus dieser Gruppeausgegeben wird.

Die BefehleG49 oderH00

schalten die Werkzeuglängenkorrektur für alle Achsen mit Bewegung, wenn im Satz auch eineBewegung programmiert worden ist, oder mit einer Transformation, wenn keine Bewegungprogrammiert worden ist, aus.Der Unterschied zwischen den beiden Befehlen besteht darin, dass die Anweisung H00 nur die

Page 83: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

83

Abb. 14.3-1

Korrektur löscht und den Zustand G43 oder G44 unverändert lässt. Wird nun auf eine von Nullabweichende H-Adresse Bezug genommen, wird die neue Werkzeuglängenkorrektur entsprechenddem Zustand G43 oder G44 eingeschaltet.Bei der Anwendung der Anweisung G49 sindalle Bezugnahmen auf die H-Adresse unwirk-sam, solange keine G43 oder G44 program-miert werden.Beim Einschalten wird es anhand des in derParametergruppe CODES des Parameterfeldesentschieden, welcher Kode (G43, G44, G49)gültig ist.Das folgende Beispiel zeigt eine einfache Bohr-operation mit einer Werkzeuglängenkorrektur:

Länge des Bohrers: H1=400

N1 G90 G0 X500 Y600 (Positionieren in der XY-Ebene)N2 G43 Z410 H1 (Anfahren der Position Z410 mit Längenkorrektur H1) N3 G1 Z100 F180 (Bohren bis zu Z100 mit Vorschub F180) N4 G4 P2 (Verzögerung von 2 sec)N5 G0 Z1100 H0 (Werkzeugrückzug bei Ausschalten der

(Längenkorrektur, Werkzeugspitze im Punkt X700)N6 X-800 Y-300 (Rücklauf in der XY-Ebene im Eilgang)

14.4 Die Werkzeugverschiebung (G45...G48)

G45: vergrössert die Weglänge um den KorrekturwertG46: vermindert die Weglänge um den KorrekturwertG47: vergrössert die Weglänge um den zweifachen KorrekturwertG48: vermindert die Weglänge um den zweifachen Korrekturwert

Die Befehle G45...G48 sind samt der durch den D-Kode angewählten Korrektur wirksam, solangekein anderer Wert in Begleitung von G45...G48 aufgerufen wird.Diese Kodes sind nicht erblich, sie sind nur im Satz wirksam, in dem sie spezifiziert sind.Bei einer absoluten Wegangabe entspricht die Weglänge dem Abstand zwischen dem im aktuellenSatz definierten Endpunkt und dem Endpunkt des vorangehendesn Satzes. Die Vergösserung oderReduzierung ist in der so ergebenden Richtung zu verstehen.

Page 84: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

84

Abb. 14.4-1 Abb. 14.4-2

Abb. 14.4-3 Abb. 14.4-4

Abb. 14.4-5

Beim Programmieren von G45:(Weglänge um den Korrekturwert vergrössert)a. Weginformation: 20 b. Weginformation: 20

Korrekturwert:5 Korrekturwert: -5

c. Weginformation: -20 d. Weginformation: -20Korrekturwert : 5 Korrekturwert : -5

Beim Programmieren von G46:(Weglänge um den Korrekturwert reduziert)a. Weginformation: 20 Fall b., c., d. ähnlich

Korrekturwert : 5 wie bei G45

Page 85: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

85

Abb. 14.4-6

Abb. 14.4-7

Abb. 14.4-8

Beim Programmieren von G47:(Weglänge und den zweifachen Korrekturwert vergrössert)a. Weginformation: 20 Fall b., c., d. ähnlich

Korrekturwert : 5 wie bei G45

Beim Programmieren von G48:(Weglänge und den zweifachen Korrekturwert reduziert)a. Weginformation: 20 Fall b., c., d. ähnlich

Korrekturwert : 5 wie bei G45

Ist in dem einem Befehl G45...G48 folgenden Satz der Wegbefehl für mehrere Achsen gleichzeitigausgegeben, wird die so gebildete Korrektur in allen programmierten Achsen, je Achse getrennt, mitden gültigen unter D angegeben Wert wirksam. (Keine vektorielle Bildung).Wenn z.B. D1=30, beträgt die Weglänge nachdem Befehl G91 G45 G1 X100 Y40 D1:x=130, y=70.Die so entstehenden Korrekturen können we-der durch einen gemeinsamen G-Befehl (wiez.B G49 bei Längenkorrekturen) noch dasProgrammieren von D00, sondern nur durcheinen der entgegengesetzten BefehleG45...G48 gelöscht werden.Während der Anwendung von G45 ... G48kann immer nur derselbe D-Kode angewandtwerden, andernfalls gibt die Steuerung die An-zeige 3008 FALSCHE G45 ... G48 .Wird eine inkrementale Weglänge von 0

Page 86: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

86

Abb. 14.4-9

begleitet durch G45...G48, interpretiert die Steuerung auch das dem 0 vorangesetzten Vorzeichen,wie folgt:Wenn D1=12:

NC-Befehl G45 XI0 D1 G46 XI0 D1 G45 XI-0 D1 G46 XI-0 D1

Weglänge x=12 x=-12 x=-12 x=12

Die samt den Kodes G45...G48 angewandten Werkzeugradienkorrekturen können auch bei 1/4und 3/4 Kreisbögen angewandt werden, wenn die Kreismittelpunkte unter I-, J-, oder K-Adresseangegeben werden.

Beispiel: D1=10

N1 G91 G46 G0 X40 Y40 D1N2 G47 G1 Y100 F180N3 G47 X40N4 Y-40N5 G48 X60N6 Y40N7 G47 X20N8 G45 Y-0N9 G46 G3 X40 Y-40 I40N10 G45 G1 X0N11 G45 Y-20N12 G45 G2 X-40 Y-40 I-40N13 G45 G1 X-120N14 G46 G0 X-40 Y-40

Page 87: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

87

Abb. 14.5-1

14.5 Werkzeugradienkorrektur in der Ebene (G38, G39, G40, G41, G42)

Damit zum Umfräsen einer in der Ebene liegen-de Form die Werkstückpunkte nach der Teile-zeichnung unabhängig von den angewandtenWerkzeugabmessungen programmiert werdenkönnen, muss die Steuerung den Werkzeugmit-telpunkt parallel zur Werkstückkontur in einemAbstand des Werkzeugradius entlangführen.Die Steuerung bestimmt den Abstand zwischendem Werkzeugmittelpunkt und der program-mierten Kontur in Abhängigkeit des Wertes deraufgerufenen, unter der D-Adresse registriertenWerkzeugradienkorrektur.Der Korrekturvektor ist ein in der Ebene lie-genden Vektor, den die Steuerung in jedemSatz von neuem berechnet. Die Steuerung mo-difiziert dann die programmierten Bewegungen um die Vektoren, die am Anfang und dem Ende desSatzes stehen. Die Längen und Richtungen der sich ergebenden Korrekturvektoren hängen vondem unter der D-Adresse aufgerufenen Korrekturwert und der Geometrie des Übergangeszwischen zwei Sätzen ab.Die Steuerung berechnet die Korrekturvektoren in der durch die Anweisungen G17, G18, G19angewählten Ebene. Bewegungen, die ausser dieser Ebene stattfinden, werden durch dieRedienkorrektur nicht beeinflusst. Z.B.: wird die Ebene X, Y im Zustand G17 angewählt, werdendie Korrekturvektoren für die Ebene X, Y errechnet. Eine Bewegung in der Z-Richtung wirddadurch nicht beeinflusst.Während der Berechnung der Werkzeugradienkorrektur ist ein Ebenenwechsel unzulässig. Versuchtman trotzdem die Ebene zu ändern, zeigt die Steuerung die Fehlernachricht 3010 EBENENWAHLIN G41, G42 an.In dem Fall, wenn die Korrekturebene für nicht in einer Hauptebene liegenden Achsen definiertwerden soll, müssen die Nebenachsen im Parameterfeld als parallele Achsen definiert werden. Istz.B. U als eine parallel liegende Achse definiert und die Werkzeugradienkorrektur in der Z, U-Ebene angewandt werden soll, so kann die Ebene durch die Eingabe von G18 U_ Z_ bezeichnetwerden.

G40: Ausschalten der WerkzeugradienkorrekturG41: Werkzeugradienkorrektur von linksG42: Werkzeugradienkorrektur von rechts

Page 88: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

88

Abb. 14.5-2

Die Befehle G41 oder G42 schalten die Kor-rekturberechnung ein. Im Zustand G41 wirddie programmierte Kontur in der Fahrtrichtunggesehen von links, im G42 von rechts entlang-gefahren. Die angewandten Werkzeugradien-korrekturwerte sind unter der D-Adresse anzu-geben. Die Angabe von D00 bedeutet immerden Aufruf des RAdius Null. Die Korrekturbe-rechnung erfolgt für die Interpolationsbewegun-gen G00, G01, G02, G03.Die bisher besagten gelten für die Angabe einer positiven Werkzeugradienkorrektur. Die Werkzeug-radienkorrektur kann aber auch negativ sein. Dies ist von Bedeutung, wenn ein positives Stück (z.B.Stempel) und ein angepasstes negatives Stück (z.B. Matrize) mit demselben Unterprogramm bear-beitet werden sollen. Die Bearbeitung könnte so durchgeführt werden, dass die Matrize mit G41,der Stempel aber mit G42 gefräst würden. Dieser Wechsel braucht in das programm nicht einge-schrieben werden, wenn die Matrize mit einer positiven, der Stempel aber mit einer negativen Werk-zeugradienkorrektur b earbeitet werden. In diesem Fall wechselt die Bahn des Werkzeugmittelpunk-tes auf G41, oder G42 die Seite.

Radienkorrektur: positiv Radienkorrektur: negativ

G41 von links von rechts

G42 von rechts von links

L Anmerkung: – In den weiteren Beschreibungen und Abbildungen wird einfachheitshalber mit einer positiven Ra-

dienkorrektur gearbeitet.

Die Befehle G40 oder D00 schalten die Korrekturberechnung aus. Der Unterschied zwischen denbeiden Befehlen besteht darin, dass D00 nur die Länge des Korrekturvektors löscht und denZustand G41 oder G42 nicht berührt. Wird dann eine neue, von Null abweichende D-Adresseeingeführt, wird ein neuer Korrekturvektor abhängig von G41 oder G42 mit dem neuenWerkzeugradius errechnet.Wird demgegenüber die Anweisung G40 angewandt, bleiben alle bezugnahmen auf die D-Adressesolange wirkungslos, bis G41 oder G42 nicht programmiert werden.Das Ein- und Ausschalten der Radienkorrektur sind Regeln unterworfen, die in den nachfolgendenAbschnitten erörtert werden.Die Befehle G40, G41, G42 werden geerbt. Nach Einschalten, am Programmende und durchRESET an den Programmanfang nimmt die Steuerung den Zustand G40 an und die Radienkorrek-turvektoren werden gelöscht.Die Korrekturanweisungen werden nur im Automatikbetrieb durchgeführt. Die Korrekturen sind inEinzelsätzen im Handbetrieb unwirksam. Die Ursache liegt darin, dass der nächste Bewegungssatzmuss auch eingelesen werden, damit die Steuerung den Korrekturvektor berechnen kann. DerÜbergang zwischen den beiden Sätzen hängt von dem Korrekturvektor ab. Also sind die

Page 89: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

89

Abb. 14.5-3

Vorverarbeitung mehrerer Sätze zum Errechnen des Korrekturvektors erforderlich.Vor der Abhandlung der Einzelheiten der Kor-rekturberechnung sind einige Hilfsangaben ein-zuführen. Im Schnittpunkt zweier Strecken, d.h.zweier Sätzen bilden die Tangenten der beidenKurven den Winkel ". Die Drehrichtung von "hängt davon ab, ob die Kontur von links odervon rechts entlanggefahren wird.Die Steuerung wählt die Strategie der Rich-tungswechsel bei den Schnittpunkten in Abhän-gigkeit von " an. Ist ">180°, d.h. das Werk-zeug von innen arbeitet, errechnet die Steue-rung einen Schnittpunkt für die beidenStrecken. Wenn "<180°, d.h. das Werkzeug die Kontur von aussen umfährt, werden möglicher-weise weitere gerade Strecken zum Ausweichen zwischengefügt.

Page 90: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

90

Abb. 14.5.1-1

14.5.1 Einschalten der Radienkorrektur. Anfahren an die Kontur

Nach dem Einschalten, am Programmende, oder durch RESET an den Programmanfang nimmt dieSteuerung den Zustand G40 an. Der Radienkorrekturvektor wird gelöscht, die Bahn desWerkzeugmittelpunktes fällt mit der programmierten Bahn zusammen.Auf die Anweisung G41 oder G42 tritt die Steuerung aus dem Zustand G40 in die Betriebsart derBerechnung der Radienkorrektur. Die Korrekturwerte werden aus dem Korrekturfach unter der D-Adresse entnommen. Die Steuerung nimmt die Zustände G41 oder G42 nur in Sätzen an, in deneneine Geradeninterpolation beschrieben ist (G00, G01). Wird die Korrekturberechnung in einemKreissatz eingeschaltet, zeigt die Steuerung die Fehlernachricht 3043 G41, G42 IN G2, G3 an. DieStrategie des Anfahrens an die Kontur wählt die Steuerung erst dann, wenn aus dem Zustand G40 inG41 oder G42 umgeschaltet wird. Wenn z.B. die Korrektur mit D00 gelöscht wird, dann mit Dnnzurückgeschaltet wird (nn ist eine von Null abweichende Zahl), wählt die Steuerung die Strategie desAnfahrens nicht.Die Grundfälle des Einschaltens der Korrektur sind in Abhängigkeit des Winkels " und dermoglichen Übergängen, wie Gerade-Gerade, Gerade-Kreis, in den nachstehenden Abbildungenersichtlich. Die Abbildungen gelten für den Fall G42, bei Annahme einer positiven Radienkorrektur.

L Anmerkung: Bezeichnungen auf den Abbildungen und in den weiteren:r: Wert der radienkorrekturL: gerade StreckeC: KreisbogenS: Anhaltpsunkt in Einzelsätzengestrichelte Linie: Bahn des Werkzeugmittelpunkteskontinuierkiche Linie: programmierte Bahn

Grundfälle des Einschaltens der Radienkorrektur:

(G40) (G40)G42 G01 X_ Y_ D_ G42 G01 X_ Y_ D_X_ Y_ G2 X_ Y_ R_

Anfahren an eine innere Ecke: 180°<"<360°

Page 91: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

91

Abb. 14.5.1-2

Abb. 14.5.1-3

Abb. 14.5.1-4

Anfahren an eine aussere Ecke unter einem stumpfen Winkel: 90°#"#180°

Anfahren an eine aussere Ecke unter einem spitzen Winkel: 0°#"#90°

Sonderfälle des Einschaltens der Radienkorrektur:Werden I, J, K (aber nur die, die in der angewähltenEbene liegen) in einem das Einschalten der Radien-korrektur auslösenden Satz (G41 oder G42) mitWert behaftet (z.B. I,und J bei G17), dann positio-niert die Steuerung unter Inbetrachtnahme der Radi-enkorrektur auf den Schnittpunkt der durch I,J,K be-stimmten und der durch den nächstfolgenden Satz be-stimmten Geraden. Die Werte von I, J und K sind im-mer inkremental. Der durch ihnen bestimmte Vektorzeigt auf den Endpunkt des Satzes, in dem er prog-rammiert worden ist. Diese Möglichkeit kann z.B.beim Anfahren inneren Ecken von Nutzen sein.

Page 92: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

92

Abb. 14.5.1-5

Abb. 14.5.1-6

Abb. 14.5.1-7

...G91 G17 G40...N110 G42 G1 X-80 Y60 I50 J70 D1N120 X100...

In diesem Fall berechnet die Steuerung immer den Schnitt-punkt unabhängig davon, ob eine innere (konkave) oder ei-ne aussere (convexe) Ecke bearbeitet werden soll.

Findet die Steuerung keinen Schnittpunkt, positioniert siesenkrecht auf den Anfangspunkt des nächstfolgenden Sat-zes.

Wird die Korrektur in einem separaten Satz durchgeführt, in dem keine Bewegung in der an-gewählten Ebene programmiert worden ist, wird die Korrektur ohne Bewegung eingeschaltet unddie Länge des errechnetes Korrekturvektors gleich Null ist. Der Korrekturvektor wird am Ende desnächstfolgenden Bewegungssatzes nach der dem eingeschalteten Zustand der Radienkorrektur-berechnung entsprechenden Strategie berechnet (siehe nächsten Punkt):

...N10 G40 G17 G0 X0 Y0N15 G42 D1N20 G1 X80N25 X110 Y60...

Page 93: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

93

Abb. 14.5.1-8

Wurde im das Einschalten der Korrektur enthaltenden Satz (G41, G42) eine Weglänge von Nullprogrammiert, oder sich eine Weglänge von Null resultiert, führt die Steuerung keine Bewegung aus,sondern sie setzt mit der Bearbeitung nach der besagten Strategie fort.

...N10 G40 G17 G0 X0 Y0N15 G91 G42 D1 X0N25 X30 Y60...

Ergibt sich eine Weglänge von 0 in der angewählten Ebene nach dem Einschalten der Korrektur.Wird der Korrekturvektor senkrecht zum das Einschalten auslösenden Satz gestellt. In demnächstfolgenden Satz liegt die Werkzeugbahn zur programmierten Kontur nicht parallel:

...N10 G40 G17 G0 X0 Y0N15 G91 G42 D1 X80N20 G1 X0N25 X30 Y60N30 X60...

Page 94: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

94

Abb. 14.5.2-1

14.5.2 Eingeschaltete Radienkorrektur. Fahren der Kontur entlang

Bei eingeschaltetem Zustand der Korrekturberechnung werden die Korrekturvektoren zwischen denSätzen G00, G01, G02, G03, entprechend den Grundfällen stetig berechnet, solange nicht mehr alseinen Satz, der in der angewählten Ebene keine Weginformation hat, zwischengefügt wird. Dazugehören auch die Sätze, die eine Verzögerung, sowie nur eine Funktion enthalten.

Grundfälle der eingeschalteter Radienkorrekturberechnung:

Schnittpunktberechnung bei inneren Ecken: 180°<"<360°

Page 95: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

95

Abb. 14.5.2-2

Abb. 14.5.2-3

Es kann vorkommen, dass es bei gewissenWerkzeugradien keinen Schnittpunkt gibt. Indiesem Fall bleibt die Steuerung während derAbarbeitung des vorangehenden Satzes stehenund zeigt den Fehlerkode 3046 KEINSCHNITTPUNKT G41, G42 an.

Umfahren ausserer Ecken von einem stumpfen Winkel: 90°#"#180°

Page 96: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

96

Abb. 14.5.2-4

Abb. 14.5.2-5

Umfahren ausserer Ecken von einem spitzen Winkel: 0°<"<90°

Sonderfälle der eingeschalteter Radienkorrekturberechnung:

Wurde in einem Satz der angewählten Ebene eine Weglänge von Null bei eingeschaltetem G41 oderG42 programmiert, oder sich eine Weglänge von Null ergibt, stellt die Steuerung auf den Endpunktdes vorangehenden Satzes einen senkrechten Vektor, dessen Länge der Radienkorrektur entspricht.Man muss vorsichtig sein, da solche Fälle einen unerwünschten Unterschnitt, oder Verzerrungen beiKreisen verursachen können.Beispielsweise:

...G91 G17 G42N110 G1 X40 Y50N120 X0N130 X90N140 X50 Y-20...

Page 97: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

97

Abb. 14.5.3-1

Abb. 14.5.3-2

14.5.3 Ausschalten der Werkzeugradienkorrektur. Verlassen der Kontur

Der Befehl G40 schaltet die Werkzeugradienkorrekturberechnung aus. Der Befehl G40 kann nur miteiner linearen Interpolation ausgegeben werden. Wird der Befehl G40 in einem Kreissatzausgegeben, zeigt die Steuerung den Fehlerkode 3042 G40 IN G2, G3 an.

Grundfälle der ausgeschalteten Radienkorrektur:

(G42) (G42)G01 X_Y_ G02 X_Y_R_G40 X_Y_ G40 G1 X_Y_

Verlassen einer inneren Ecke: 180°<"<360°

Verlassen einer ausseren Ecke unter einem stumpfen Winkel: 90°#"#180°

Page 98: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

98

Abb. 14.5.3-3

Abb. 14.5.3-4

Abb. 14.5.3-5

Verlassen einer ausseren Ecke unter einem spitzen Winkel: 0°#"<90°

Sonderfälle der ausgeschalteten Radienkorrektur:

Werden I, J, K (aber nur die, die in der angewählten Ebene liegen) in einem das Einschalten derRadienkorrektur auslösenden Satz (G41 oder G42) mit Wert behaftet (z.B. I,und J bei G17), dannpositioniert die Steuerung auf den Schnittpunkt der durch I,J,K bestimmten und der durch dennächstfolgenden Satz bestimmten Geraden. Die Werte von I, J und K sind immer inkremental. Derdurch ihnen bestimmte Vektor zeigt auswärts von dem Endpunkt des Satzes. Diese Möglichkeit kann z.B. beim Verlassen innerer Eckenvon Nutzen sein.

...

...G91 G17 G42N100 G1 X50 Y60N110 G40 X70 Y-60 I100 J-20...

In diesem Fall berechnet die Steuerung immer den Schnitt-punkt unabhängig davon, ob innere oder aussere Ecken be-arbeitet werden.

Page 99: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

99

Abb. 14.5.3-6

Abb. 14.5.3-7

Abb. 14.5.3-8

Findet die Steuerung keinen Schnittpunkt, positioniertsie senkrecht auf den Endpunkt des vorangehendenSatzes.

Wird die Korrektur in einem Satz ausgeschaltet, indem keine Bewegung in der angewählten Ebeneprogrammiert worden ist, stellt die Steuerung eineSenkrechte auf den Endpunkt des vorangehendenSatzes und der Korrekturvektor wird am Ende desnächstfolgenden Bewegungssatzes gelöscht.

...G42 G17 G91N110 G1 X80 Y40N120 G40N130 X-70 Y20...

Wurde in dem das Ausschalten der Korrektur enthal-tenden Satz (G40) eine Weglänge von Null program-miert, oder sich eine Weglänge von Null ergibt, stelltdie Steuerung auf den Endpunkt des vorangehendenSatzes einen senkrechten Vektor, dessen Länge derRadienkorrektur entspricht. Dann wird dieser Vektorim G40-Satz abgearbeitet. Beispielsweise:

...G42 G17 G91N110 G1 X80 Y40N120 G40 X0N130 X-70 Y20...

Page 100: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

100

Abb. 14.5.4-1

14.5.4 Richtungswechsel bei der Radienkorrekturberechnung

Die Richtungen der Radienkorrekturberechnung, d.h. des Konturfahrens sind in der untenstehendenTabelle ersichtlich:

Radienkorrektur: positiv Radienkorrektur: negativ

G41 von links von rechts

G42 von rechts von links

Die Richtung des Konturfahrens kann auch bei eingeschalteter Korrekturberechnung gewechseltwerden. Dies kann durch Programmieren von G41 oder G42, oder durch Abrufen der Werkzeugra-dienkorrektur entgegengesetzes Vorzeichens unter der D-Adresse erfolgen. Als die Richtung desKonturfahrens gewechselt wird, -berpr-ft die Steuerung nicht, ob sie sich "aussen", oder "innen"befindet, sondern errechnet sie im ersten Schritt immer einenSchnittpunkt. In den folgenden Abbildungen wurdemn ein positiver Werkzeugradius und das Um-schalten von G42 auf G41 angenommen:

Page 101: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

101

Abb. 14.5.4-2

Abb. 14.5.4-3

Abb. 14.5.4-4

Ergibt sich kein Schnittpunkt bei einem Über-gang Gerade-Gerade, ist die Werkzeugbahndie folgende:

Ergibt sich kein Schnittpunkt bei einem Über-gang Kreis-Kreis, ist die Werkzeugbahn diefolgende:

Ergibt sich kein Schnittpunkt bei einem Gera-de-Gerade- oder Kreis-Kreis-Übergang, ver-bindet die Steuerung den Endpunkt des im An-fangspunkt des ersten Kreissatzes resultieren-den Korrekturvektors und den Endpunkt deszum Anfangspunkt des zweiten Satzes senk-recht stehenden Korrekturvektors durch einenunkorrigierten Kreisbogen vom programmier-ten Radius R. In diesem Fall fällt der Mittel-punkt des verbindenden Radius mit dem desprogrammierten Kreisbogens nicht. Kann derRichtungswechsel selbs mit der geschildertenUmlagerung des Kreismittelpunktes nichtdurchgeführt werden, zeigt die Steuerung denFehlerkode 3047 ÄNDERUNG NICHTMÖGLICH an.

Page 102: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

102

Abb. 14.5.5-1

Abb. 14.5.5-2

14.5.5 Beibehaltung des Vektors (G38)

Auf die Wirkung des BefehlsG38 v,

wenn die Werkzeugradienkorrekturberechnung eingeschaltet ist, behält die Steuerung den zwischendem vorangehenden Satz und dem G38-Satz gültigen letzten Korrekturvektor bei und sie aktiviertdiese Korrektur am Endes des G38-Satzes unabhängig von dem zwischen dem G38-Satz und demdarauffolgenden Satz exisierenden Übergang. Der G38-Kode ist von einmaliger Wirkung, d.d. erwird nicht geerbt. Ist die Beibehaltung des Vektors in mehreren nacheinanderfolgenden Sätzenerforderlich, muss G38 von neuem programmiert werden.Das Programmieren von G38 ist nur im G00- oder G01-Zustand möglich, der die Beibehaltung desVektors enthaltende Satz muss also eine Geradeninterpolation beschreiben. Ist es nicht der Fall,zeigt die Steuerung den Fehlerkode 3040 G38 NICHT IN G0, G1 an. Wird der Kode G38 nichtbei eingeschalteter Radienkorrektur (G41, G42) angewandt, zeigt die Steuerung den Fehlerkode3039 G38 KODE IN G40 an.Beispiel für die Funktion von G38:

...G17 G41 G91...N110 G1 X60 Y60N120 G38 X90 Y-40N130 X20 Y70N140 X60...

Programmieren eines Einstiches ohne Aus-schalten des Konturfahrens:

...G17 G42 G91...N110 G1 X40N120 G38 X50N130 G38 Y70N140 G38 Y-70N150 X60...

Page 103: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

103

Abb. 14.5.6-1

Abb. 14.5.6-2

14.5.6 Programmieren von Bögen an Ecken (G39)

Durch das Programmieren des SatzesG39 (I J K)

im eingeschalteten Zustand der Radienkorrekturberechnung kann erreicht werden, dass dieSteuerung keinen Schnittpunkt berechnet, oder keine geraden Strecken zum Umfahren zwischenfügt,sondern sie den Werkzeugmittelpunkt auf einen Kreisbogen des Werkzeugradius führt. DerDrehsinn des Kreisbogens entspricht G02 im Zustand G41 und G03 im Zustand G42. Der Anfangspunkt des Kreisbogens wird durchden zum Endpunkt der Bahn des vorangehen-den Satzes senkrechten Vektor des Werkzeug-radius und dessen Endpunkt durch den zumAnfangspunkt des nächstfolgenden Satzessenkrechten Vektor des Werkzeugradius be-stimmt. G39 ist in einem gesonderten Satz zuprogrammieren:

...G17 G91 G41...N110 G1 X100N120 G39N130 G3 X80 Y-80 I80...

Werden im G39-Satz I, J oder K entsprechendder angewählten Ebene programmiert, be-stimmt der zum durch I, J oder K bestimmtenVektor im Endpunkt des vorangehenden Sat-zes senkrechte stehende Vektor, dessen Radi-us der Werkzeugradius ist, den Endpunkt desKreisbogens:

...G17 G91 G41...N110 G1 X100N120 G39 I50 J-60N130 G40 X110 Y30...

Für den durch I, J oder K bestimmten Vektor gelten die vorher eingestellten Spiegelungs- oderVerdrehungsbefehle. Sinngemäss beeinflusst ein Masstabierungsbefehl die Richtung nicht. In einemSatz des Typs G39 kann kein Bewegungsbefehl programmiert werden. Wird ein G39-Befehl imZustand G40 oder in der Betriebsart Räumliche Korrekturberechnung ausgegeben, zeigt dieSteuerung den Fehlerkode 3036 G39 KODE IN G40 an.

Page 104: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

104

Abb. 14.5.7-1

Abb. 14.5.7-2

14.5.7 Allgemeines über die Anwendung der in der Ebene liegenden Radienkorrektur

Bei eingeschaltetem Konturfahren (G41, G42) muss die Steuerung Korrekturvektoren immerzwischen zwei Bewegungssätzen in der angewählten Ebene berechnen. In der Praxis kann eserforderlich sein, dass kein Bewegungssatz, oder ein Bewegungssatz ausserhalb der angewähltenEbene zwischen zwei in der Ebene liegenden Bewegungssatzes programmiert werden sollen. SolcheSätze können sein:

Funktionen: M, S, T Verzögerung: G4 PBewegung ausserhalb der angewählten Ebene: (G17) G1 ZAufruf eines Unterprogrammes: M98 PEin- u. Ausschalten von Sondertransformationen: G50, G51, G50.1, G51.1, G68, G69.

L Anmerkung: Werden Unterprogramme aufgerufen, muss darauf geachtet werden, dass dasUnterprogramm mit einem in der angewählten Ebene liegenden Bewegungssatzes begonnenwird, sonst wir die Bahn verzerrt.

Die Steuerung lässt das Programmieren eines der oben be-sagten zwischen zwei in der Ebene liegenden Bewegungs-sätzen Sätze zu, wodurch die Werkzeugbahn nicht beein-flusst wird:

...G17 G42 G91...N110 G1 X50 Y70N120 G4 P2N130 X60...

Fügt die Steuerung ein oder mehrere Umfahrsätze zwischen zwei Kontursätzen ein, werdendie zwischen den Kontursätzen programmierten anderen Sätze in den Anhaltspositionendurchgeführt, die in den Abbildungen mit "S" bezeichnet sind.

Werden zwei Sätze, die Bewegungen ausser-halb der angewählten Ebene beschreiben, oderkeine Bewegung enthalten ins Programm ge-schrieben, stellt die Steuerung eine Senkrechtezum Endpunkt des letzten Kontursatzes, diezum Korrekturvektor wird. Die Bahn wird ver-zerrt:

...G17 G42 G91...N110 G1 X50 Y70N120 G4 P2N130 S400N140 X60...

Page 105: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

105

Abb. 14.5.7-3

Abb. 14.5.7-4

Abb. 14.5.7-5

Wenn die Zustellung in der z-Richtung erst nach dem Einschalten derRadienkorrektur erfolgen kann, kann wie folgt verfahren werden:

...G17 G91...N110 G41 G0 X50 Y70 D1N120 G1 Z-40N130 Y40...

In diesem Fall ist die Werkzeugbahn korrekt, wie es aus der Abbil-dung ersichtlich ist.

Wird die z-Bewegung auf eine Eilgangs- und eine Vorschubstreckeaufgeteilt, wird die Bahn verzerrt, da zwei nicht in der Konturebeneliegende Sätze aufeinander folgen:

...G17 G91...N110 G41 G0 X50 Y70 D1N120 Z-35N130 G1 Z-5N140 G1 Z-5N150 Y40...

Als Zwischenlösung kann eine kleine y-Bewegung zwischen den bei-den z-Bewegungen eingefügt werden:

...G17 G91...N110 G41 G0 X50 Y69 D1N120 Z-35N130 Y1N140 G1 Z-5N150 Y40...

Durch die Anwendung des obigen Tricks wird der Korrekturvektor richtig aufgebaut.Werden die Anweisungen

G22, G23, G52, G54-G59, G92

Page 106: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

106

Abb. 14.5.7-6

Abb. 14.5.7-7

G53G28, G29, G30

zwischen zwei Kontursätzen zwischengefügt, wird die Werkzeugbahn folgendermassen gestaltet.Werden die Befehle G22, G23, G52, G54-G59, oder G92 zwischen zwei Bewegungssätzen beieingeschaltetem G41 oder G42 programmiert, löscht die Steuerung den Korrekturvektor imEndpunkt des vorangehenden Satzes, führt den Befehl aus, dann stellt sie den Korrekturvektor imEndpunkt des nächstfolgenden Bewegungssatze wieder her. Beschreibt der vorangehende odernachfolgende Sazt eine Kreisinterpolation, sendet die Steuerung den Fehlerkode 3041 NACH G2,G3 ILLEG. SAZT. Beispielsweise:

...G91 G17 G41...N110 G1 X80 Y-50N120 G92 X0 Y0N130 X80 Y50...

Wird der Befehl G53 zwischen zwei Bewegungssätzen bei eingeschaltetem G41 oder G42programmiert, löscht die Steuerung den Korrekturbektor im Endpunkt des vorangehenden Satzes,sie führt die Positionierung im G53 durch und stellt den Korrekturvektor im Endpunkt desnächstfolgenden Bewegungssatzes (kein G53) wieder her. Wenn der diesem Befehl vorangehendeoder nachfolgende Bewegungssatz eine Kreisinterpolation beschreibt, sendet die Steuerung denFehlerkode 3041 NACH G2, G3 ILLEG. SATZ. Beispielsweise:

...G91 G17 G41...N110 G1 X80 Y-50N120 G53 Y80N130 G53 Y0N140 X80 Y50...

Werden G28 oder G30 und anschliessend G29 zwischen zwei Kontursätzen bei eingeschaltetemG41 oder G42 programmiert, löscht die Steuerung den Korrekturvektor im Endpunkt des auf denZwischenpunkt positionierenden Satzes, dann führt sie das Anfahren auf den Referenzpunkt aus undstellt sie den Korrekturvektor im Endpunkt des wiederkehrenden G29-Satzes.

Page 107: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

107

Abb. 14.5.7-8

Abb. 14.5.7-9

Beispielsweise:...G91 G17 G41...N110 G1 X80 Y-50N120 G28 Y80N130 G29 Y0N140 X80 Y50...

Bei eingeschalteter Radienkorrekturbe-rechnung (G41, G42) kann ein neuerRadienkorrekturwert unter der D-Ad-resse abgerufen werden. Wechselt derKorrekturwert das Vorzeichen, erfolgtder bereits erörterte Vorgang des Rich-tungswechsels an der Kontur. Erfolgtkein Richtungswechsel, ist das Verfahrenanders. Der Korrekturvektor wird mitdem neuen Radienwert im Endpunkt desSatzes berechnet, in dem die neue D-Adresse programmiert wurde. Da der Korrekturvektor imAnfangspunkt dieses Satzes mit dem alten Radius errechnet worden ist, liegt die Bahn desWerkzeugmittelpunktes zur programmierten Bahn nicht parallel. Auch in einem Kreissatz kann einneuer Radienkorrekturwert unter der D-Adresse abgerufen werden, aber der Werkzeugmittelpunktbewegt sich in diesem Fall auf einem Kreisbogen von änderlichem Radius.Ein besonderer Fall ist, wenn die Korrektur mit D00 ausgeschaltet und mit Dnnn eingeschaltet wird.

Page 108: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

108

Abb. 14.5.7-10

Abb. 14.5.7-11

Abb. 14.5.7-12

Im untenstehenden Beispiel kann der Unterschied bemerkt werden, wenn die Korrektur mit G41oder G42 eingeschaltet und mit G40 ausgeschaltet wird, bzw. das Ein- und Ausschalten durchAbrufen der D-Adresse erfolgt:

Ein gegebener Programmteil, oder ein Unterprogramm kann auch zum Herstellen eines Stempelsdurch eine positive Radienkorrektur und einer Matrize durch eine negative Radienkorrekturangewandt werden. Dazu ein kleiner Programmteil:

...N020 G42 G1 X80 D1N030 G1 Z-5N040 G3 I-80N050 G1 Z2N060 G40 G0 X0...

Wird die Radienkorrektur für einen Kreis mitänderlichem Radius angewandt, berechnet dieSteuerung den (die) Korrekturvektor(en) imAnfangspunkt des Kreises für einen theoreti-schen Kreis, dessen Radius dem Anfangsradiusdes programmierten Kreises entspricht unddessen Mittelpunkt mit dem programmiertenMittelpunkt zusammenfällt. Im Endpunkt desKreises wird (werden) der (die) Korrekturvek-tor(en) für einen theoretischen Kreis berechnet,dessen Radius dem Endpunktradius des programmierten Kreises entspricht und dessen Mittelpunkt

Page 109: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

109

Abb. 14.5.7-13

Abb. 14.5.7-14

mit dem des programmierten Kreises zusammenfällt.

Dei der Programmierung eines Vollkreises können sich eine Anzahl von Fällen ergeben, in denen dieWerkzeugbahn mehr als eine volle Umdrehung befährt.Beim programmieren des Richtungswechsels auf der Konturkann z.B. die folgende Situation vorkommen:

...G17 G42 G91...N110 G1 X30 Y-40N120 G41 G2 J-40N130 G42 G1 X30 Y40...

Der Werkzeugmittelpunkt befährt einen vollen Kreis vondem Punkt P1 aus bis zum Punkt P1 und einen Bogen vondem Punkt P1 bis zum Punkt P2.

Für den Fall, wenn das Konturfahren durch Programmierenvon I, J, K ausgeschaltet wird, zeigt das nebenstehendeBeispiel eine ähnliche Situation:

...G17 G90 G41...N090 G1 X30N100 G2 J-60N110 G40 G1 X120 Y180 I-60 J-60...

Der Werkzeugmittelpunkt befährt einen vollen Kreis vondem Punkt P1 aus bis zum Punkt P1 und einen Bogen vondem Punkt P1 bis zum Punkt P2.

Page 110: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

110

Abb. 14.5.7-15

Beim Umfahren von scharfen Ecken können zwei, o-der mehrere Korrekturvektoren gebildet werden.Liegen deren Endpunkte zueinander nah, ergibt sichkaum Bewegung zwischen den beiden Punkten:In dem Fall, wenn der Abstand zwischen den beidenVektoren in den beiden Achsen kleiner als der im Pa-rameterfeld eingestellte Parameterwert DELTV, wirdder in der Abbildung gezeigte Vektor weggelassenund die Werkzeugbahn der Abbildung entsprechendgeändert wird.

Page 111: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

111

Abb. 14.5.8-1

Abb. 14.5.8-2

14.5.8 Störungsprobleme beim Konturfahren. Interferenzprüfung

Währen der Ausführung des Konturfahrens kann es oft vorkommen, dass die Werkzeugbahn mitdem programmierten Bahn entgegengesetzt wird. In diesem Fall kann das Werkzeug trotz demWillen des Programmierers ins Werkstück eingreifen. Dieser Fall wird als Störung desKonturfahrens, oder Interferenz genannt.

Im Beispiel ergibt sich eine der programmierten entgegenge-setzte Werkzeugbahn bei der Abarbeitung des Satzes N2.Das schattierte Feld zeigt, dass das Werkzeug ins Werk-stück schneidet.

Um solche Fälle zu vermeiden führt die Steuerung eine Interferenzprüfung durch, wenn derParameter INTERFER auf 1 gesetz wird. In diesem Fall überprüft die Steuerung, ob die Bedingung-90°#n#+90° für den Winkel n zwischen dem programmierten Weg und dem um dieRedienkorrektur modifizierten Weg erfüllt wird.Mit anderen Worten über-prüft die Steuerung, ob derkorrigierte Bewegungsvek-tor eine dem programmier-ten Vektor entgegengesetzteKomponente hat.

Ist der Parameter ANGLAL des Parameterfeldes auf 1 gesetzt, sendet die Steuerung den Fehlerko-de 3048 KOLLISIONSALARM einen Satz früher, bevor der Fehler auftritt.

Page 112: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

112

Abb. 14.5.8-3

In dem Fall, wenn der Parameter ANGLAL auf 0 gesetzt ist, sendet die Steuerung keinenFehlerkode, sondern sie versucht den Fehler mit dem Zweck zu korrigieren, dass dieEinschneidungen vermieden werden. Der Ablauf der Korrektur ist folgend:Das Konturfahren in den Sätzen A, B und C ist eingeschaltet. Die zwischen den Sätzen A und Berrechneten Korrekturvektoren sind: LP 1, LP 2, LP 3, LP 4, die Korrekturvektoren zwischen den Sätzen Bund C sind LP 5, LP 6, LP 7, LP 8.Entsteht eine Interferenz zwischen LP 4 und LP 5, werden LP 4 und LP 5 weggelassen,entsteht eine Interferenz zwischen LP 3 und LP 6, werden LP 3 und LP 6 weggelassen,entsteht eine Interferenz zwischen LP 2 und LP 7, werden LP 2 und LP 7 weggelassen,entsteht eine Interferenz zwischen LP 1 und LP 8, werden LP 1 und LP 7 weggelassen.

Es ist ersichtlich, dass die Steuerung die Korrekturvektoren im Anfangs- und im Endpunkt desSatzes B paart und sie löscht sie paarweise. Ist die Anzahl der Korrekturvektoren an der einen Seiteeins, oder auf eins abnimmt, werden nur die Vektoren an der anderen Seite weggelassen. DieVektoren werden solange weggelassen, bis die Interferenz besteht. Am Anfangs- und im Endpunktdes Satzes B können der erste, bzw. der letzte Korrekturvektor nicht weggelassen werden. Wenn

Page 113: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

113

Abb. 14.5.8-4

Abb. 14.5.8-5

die Interferenz infolge der weggelassenen Korrekturvektoren aufhört, wird kein Fehler angezeigt,wenn nicht, wird der Fehlerkode 3048 KOLLISIONSALARM ausgegeben. Die restlichenKorrekturvektoren werden durch Geraden verbindet, selbst wenn der Satz B einen Kreisbeschreibt.Wie es ersichtlich, kann mit der Abarbeitung des Satzes A erst dann begonnen werden, wenn dieSteuerung die Interferenzprüfung für den Satz B durchgeführt hat. Dazu ist es aber erforderlich, dassauch der Satz C in den Puffer eingelesen wird und die Korrekturvektoren für den Übergang B-Cerrechnet werden.

Einige typische Fälle der Interferenz:

Bearbeiten eines Absatzes, dessen Höhekleiner als der Werkzeugradius ist. DieSteuerung zeigt den Fehlerkode 3048KOLLISIONSALARM an, da dasWerkzeug ins Material einschneidenkönnte.

Bearbeiten einer inneren Ecke, deren Abrundungkleiner ist, als der Werkzeugradius. Die Steuerungzeigt den Fehlerkode 3048 KOLLISIONSALARMan, da das Werkzeug ins Material einschneiden könn-te.

Page 114: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

114

Abb. 14.5.8-6

Abb. 14.5.8-7

Abb. 14.5.8-8

Bearbeiten einer Stufe entlang einemKreisbogen. Die Höhe ist kleiner als derWerkzeugradius. Ist der ParameterANGLAL auf 0 gesetzt, löscht die Steu-erung den Vektor LP 2 und verbindet dieVektoren LP 1 und LP 3 durch eine Gerade,damit der Einschnitt vermieden wird. Istder Parameter ANGLAL auf 1 gesetzt,wird der Fehlerkode 3048 KOLLISI-ONSALARM angezeigt und die Steue-rung hält im vorangehenden Satz.

Es gibt Fälle, in denen das Werkzeug ins Material nicht einschneiden würde, die Interferenz-überwachung meldet trotzdem Fehler.Wird eine Vertiefung bearbeitet, deren Tiefekleiner als die Radienkorrektur ist, erfolgt evtl.kein Einschnitt, wie es aus der Abbildung er-sichtlich ist, trotzdem meldet die Steuerung denFehlerkode 3048 KOLLISIONSALARM, dadie Bewegungsrichtung auf der im Satz B korri-gierten Bahn entgegengesetzt mit der program-mierten Bahn ist.

In diesem Beispiel wird wiederum Interferenz-fehler angezeigt, da die Bewegungsrichtung aufder im Satz B korrigierten Bahn entgegenge-setzt mit der programmierten Bahn ist.

Page 115: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

115

14.6 Die dreidimensionale Werkzeugkorrektur (G41, G42)

Die Anwendung der in der Ebene liegenden Werkzeugkorrektur verschiebt das Werkzeug in derdurch die Befehle G17, G18, G19 angewählten Ebene. Es besteht aber die Möglichkeit eineräumliche Werkzeugkorrektur durch die Anwendung der dreidimensionalen Werkzeugkorrektur zuverwirklichen.

14.6.1 Ein- und Ausschalten der dreidimensionalen Werkzeugkorrektur (G40, G41, G42)

Durch den BefehlG41 (G42) Xp Yp Zp I J K D (E)

kann die räumliche Werkzeugkorrektur eingeschaltet werden.Xp, Yp, Zp bedeuten: X-, Y-, Z-, oder parallel liegende Achsen, wenn existieren.Wird eine der Koordinatenrichtungen nicht angegeben, nimmt die Steuerung die Hauptrichtungenautomatisch in Betracht. Beispielsweise:Die Anweisung G41 X I J K bezieht sich auf den Raum X Y Z,die Anweisung G41 U V Z I J K bezieht sich auf den Raum U V Z,die Anweisung G41 W I J K bezieht sich auf den Raum X Y W.Die Adressen I, J, K müssen beim Einschalten der dreidimensionalen Werkzeugkorrektur spezifiziertwerden. Erfolgt diese Spezifikation nicht, nimmt die Steuerung den Zustand der Berechnung der inder Ebene liegenden Werkzeugkorrektur automatisch an.Die unter der I-, J-, K-Adresse angegebenen Werte sind die Komponenten des dreidimensionalenKorrekturvektors. Die einzelnen Komponenten werden solange geerbt, bis keine neue I-, J-, oderK-Werte eingeführt werden.Der anzuwendende Korrekturwert kann unter der D-Adresse abgerufen werden. Unter dieserAdresse kann der Wert der dominierenden Konstante für die Korrekturberechnung angegebenwerden.

Der BefehlG40, oderD00

schaltet die dreidimensionalen Korrekturberechnung aus.Der Unterschied zwischen den beiden Befehlen besteht darin, dass D00 nur die Korrektur löschtund den Zustand G41 oder G42 unverändert lässt. Wird dann auf einen von NUll abweichenden D-Adresse hingewisen, wird die neue Werkzeugkorrektur abhängig vom Zustand G41 oder G42eingeschaltet.Wird die Anweisung G40 angewandt, bleiben alle Hinweise auf die D-Adresse wirkungslos, solangekein G41 oder G42 programmiert werden.Die Korrekturberechnung kann nur in einem eine lineare Bewegung beschreibenden Satzeingeschaltet (G41, G42) oder ausgeschaltet (G00, G01) werden.Die Befehle G40, G41, G42 werden geerbt. Nach dem Einschlaten nimmt die Steuerung denZustand G40 an.

Page 116: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

14 Die Werkzeugkorrektur

116

Abb. 14.6.2-1

14.6.2 Der dreidimensionale Korrekturvektor

Die Steuerung generiert die Komponenten des Korrekturvektors folgender Weise:

worin r: der unter der D-Adresse abgerufene Korrekturwert,P: die normierende Zahl oder der dominierende Konstante,I, J, K: die im Programm angegebenen Werte

sind.Wird kein anderer Wert unter der E-Adresse angegeben, nimmt die Steuerung den Wert dernormierenden Zahl vom Parameter DOMCONST des Parameterfeldes. Ist der Wert derdominierenden Konstante 0 und kein Wert unter der E-Adresse angegeben wurde, errechnet dieSteuerung den Wert von P aus der folgenden Formel:

Die Steuerung nimmt die Korrektur in je-dem Satz anhand der im Satz angegebe-nen vektorialen Richtungen in Betracht.So braucht das CAM-System die Bahnbei einer Bearbeitung für ein gegebenesWerkzeug nicht zu generieren, sie sollnur die Richtungen der Vektoren imEndpunkt eines Satzes errechnen. Die sogenerierten Programme können bei derAnwendung verschiedener Werkzeugeabgearbeitet werden.In einem Kreissatz kann der Korrekturvektor nicht abgeändert werden, d.h. die Korrekturvektorenam Anfang und am Endes eines Kreissatzes sind gleich.

Die Anweisung G42 funktioniert wie G41 mit dem Unterschied, dass der Korrekturvektor in derentgegengesetzten Richtung errechnet wird:

Ein Umschalten von G41 in G42 oder umgekehrt kann nur im Falle einer Geradeninterpolationerfolgen.Werden sowohl I als auch J wie auch K bei eingeschalteter dreidimensionaler Werkzeugkorrekturweggelassen, werden die vorher gültigen Werte geerbt.Eine dreidimensionale Werkzeugkorrektur und eine in der Ebene wirksame Werkzeugkorrekturkönnen nicht gleichzeitig eingeschaltet werden.

Page 117: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

15 Sondertransformationen

117

Abb. 15.1-1

Abb. 15.1-2

15 Sondertransformationen

15.1 Verdrehen des Koordinatensystems (G68, G69)

Mit Hilfe des BefehlsG68 p q R

kann eine programmierte Figur in der durch G17, G18,G19 bezeichneten Ebene verdreht werden.Die Mittelpunktkoordinaten der Rotation werden unter p-und q-Adresse angegeben. Die Steuerung interpretiert nurdie für die p- und q-Koordinaten der angegebenen Ebeneeingeschriebeben Werte.Selbst bei einer Polarkoordinatenangabe werden die einge-gebenen p- und q-Koordinaten in einem rechtwinkligenKoordinatensystem interpretiert. Die p- und q-Koordinatendes Rotationsmittelpunktes können sowohl absolut als auchinkremental, bei der Anwendung von G90, G91, oder desI-Operators angegeben werden.Wird für p und/oder q kein Wert einegegeben, betrachtetdie Steuerung die momentane Achsposition für den Dreh-mittelpunkt.

Der Verdrehungswinkel wird unter der R-Adresse angege-ben. Ein positiver Wert bedeutet Gegenuhrzeigersinn, einnegativer Wert bedeutet Uhrzeigersinn.Der Wert von R kann 8stellig angegeben werden. Die Ge-nauigkeit der Verdrehung kann mit dem Parameter ANG.-ACCU bestimmt werden. Wenn der Parameterwert 0annimt, ist die Rechengenauigkeit 0.001°, wenn 1, beträgtdiese Genauigkeit 0.00001°. Der Wert von R kann absolut, oder inkremental sein. Wirdder Verdrehungswinkel inkremental angegeben, wird R denvorher programmierten Verdrehungswinkeln addiert.

Mit Hilfe des BefehlsG69

Kann die Rotation ausgeschaltet werden. Dieser Befehl löscht die Koordinaten des Verdrehungsmit-telpunktes und den Verdrehungswinkel. Diese Anweisung kann mit anderen Befehlen zusammenangegeben werden.

Page 118: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

15 Sondertransformationen

118

Abb. 15.1-3

Abb. 15.2-1

Beispiel:N1 G17 G90 G0 X0 Y0N2 G68 X90 Y60 R60N3 G1 X60 Y20 F150 (G91 X60 Y20 F150)N4 G91 X80N5 G3 Y60 R100N6 G1 X-80N7 Y-60N8 G69 G90 X0 Y0

15.2 Masstabieren (G50, G51)

Durch den BefehlG51 v P

kann eine programmierte Form verkleinert, oder vergrössert werden.P1...P4: die im Teileprogramm angegebenen

Punkte,P1'...P4': Punkte nach Masstabieren, P0: Mittelpunkt des Masstabierens.Der Mittelpunkt des Masstabierens wird in v-Koordinateneingegeben. Anwendbare Adressen: Y, Z, U, V, W. Selbstbei einer Polarkoordinatenangabe werden die hier eingege-benen v-Koordinaten im rechtwinkligen Koordinatensysteminterpretiert.Die v-Koordinaten des Mittelpunktes können sowohl abso-lut, als auch inkremental, bei Anwendung von G90, G91, o-der des I-Operators angegeben werden.Wird kein Wert für eine Achsadresse eingegeben, nimmtdie Steuerung die momentane Achsposition als Mittelpunktdes Masstabierens an.Der Masstab kann unter der P-Adresse mit einer 8stelligen Zahl angegeben werden. Die Stelle desDezimalpunktes ist beliebig.

Durch den BefehlG50

kann der Rechenvorgang des Masstabierens ausgeschaltet werden.

Page 119: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

15 Sondertransformationen

119

Abb. 15.2-2

Beispiel:N1 G90 G0 X0 Y0N2 G51 X60 Y140 P0.5N3 G1 X30 Y100 F150 (G91 X30 Y100 F150)N4 G91 X100N5 G3 Y60 R100N6 G1 X-100N7 Y-60N8 G50 G90 X0 Y0

15.3 Spiegeln (G50.1, G51.1)

Der BefehlG51.1 v

bewirkt, dass die programmierte Form um die Spiegelungsachse(n) gespiegelt wird. DieKoordinaten der Spiegelungsache(n) können für v angegeben werden, wobei v: X, Y, Z, U, V, W,A, B, C sein kann.Bei einer Polarkoordinatenangabe werden die hier angegebenen v-Koordinaten im rechtwinkligenKoordinatensystem interpretiert.Die v-Koordinaten der Spiegelungsachsen können sowohl absolut, als auch inkremental, beiAnwendung von G90, G91, oder des I-Operators angegeben werden.Wird kein Wert für eine Achsadresse eingegeben, erfolgt um diese Achse keine Spiegelung.

Der BefehlG50.1 v

schaltet das Spiegeln um die unter v angegebene(n) Koordinate(n) aus. Für v kann ein beliebigerWert eingegeben werden, es stellt nur das Ausschalten fest.Bei der Ausgabe des Befehls kann kein Befehlzustand fürs Verdrehen, oder Masstabieren existieren,sonst gibt die Steuerung die Fehleranzeige 3000 SPIEGELUNG IN G51, G68 aus.Wird um eine Achse der angewählten Ebene gespiegelt, – wird der Drehsinn eines Kreises automatisch umgekert, (Wechsel zwischen G02, G03), – wird die Drehrichtung des Winkels (G68) entgegengesetzt interpretiert.

Page 120: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

15 Sondertransformationen

120

Abb. 15.3-1

Beispiel:

Unterprogramm:

O0101N1 G90 G0 X180 Y120 F120N2 G1 X240N3 Y160N4 G3 X180 Y120 R80N5 M99

Hauptprogramm:

O0100N1 G90N2 M98 P101N3 G51.1 X140N4 M98 P101N5 G51.1 Y100N6 M98 P101N7 G50.1 X0N8 M98 P101N9 G50.1 Y0

Koordinatenangabe absolutAufruf des UnterprogrammesSpiegeln um die Achse der Koordinate X=140, parallel zurY-AchseAufruf des UnterprogrammesSpiegeln auch um die Achse der Koordinate Y=140,parallel zur XAufruf des UnterprogrammesAusschalten des Spiegelns in der zu Y parallelen AchseAufruf des UnterprogrammesAusschalten der Spiegelung in der zu parallelen Achse

15.4 Programmierregeln der Sondertransformationen

Die Reihenfolge der Anweisungen G68 Verdrehen und G51 Masstabieren kann beliebig sein.Es muss jedoch beachtet werden, dass sich der Verdrehungsbefehl auch auf die Mittelpunkt-koordinaten des Masstabierens bezieht, wenn zuerst verdreht und dann masstabiert wird. Undumgekehrt, wenn zuert masstabiert und erst dann verdreht wird, bezieht sich der Masstabierbefehlauf die Mittelpunktkoordinaten des Verdrehens auch.Die Ein- und Ausschaltbefehle der beiden Operation müssen ineinander geschachtelt werden, siedürfen sich nicht überlappen:

Verdrehen-MasstabierenN1 G90 G17 G0 X0 Y0N2 G68 X80 Y40 R60N3 G51 X130 Y70 P0.5N4 X180 Y40N5 G1 Y100 F200N6 X80N7 Y40N8 X180N9 G50N10 G69 G0 X0 Y0

Masstabieren-VerdrehenN1 G90 G17 G0 X0 Y0N2 G51 X130 Y70 P0.5N3 G68 X80 Y40 R60N4 X180 Y40N5 G1 Y100 F200N6 X80N7 Y40N8 X180N9 G69N10 G50 G0 X0 Y0

Page 121: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

15 Sondertransformationen

121

Abb. 15.4-1

Auf dem Bild ist es ersichtlich, dass die Reihenlfolge der Anwendung der verschiedenen Transfor-mationen nicht gleichgültig ist.

Beim Spiegeln ist die Situation anders. Das Spiegeln kann nur in den Zuständen G50 und G69 ein-geschaltet werden, also wenn kein Zustand für Masstabieren und Verdrehen existiert.Jedoch beim eingeschalteten Zustand der Spiegelung können sowohl das Masstabieren als auch dasVerdrehen zugeschaltet werden.Auch für das Spiegeln gilt, dass es sich mit keinen Verdrehungs- und Masstabierbefehl überlappenkann, also müssen zuerst das Verdrehen und dann das Masstabieren in entsprechender Reihenfolge,und erst dann das Spiegeln ausgeschaltet werden.

G51.1 ... (Einschalten des Spiegelung)G51 ... (Einschalten des Masstabierens)G68 ... (Einschalten des Verdrehens)...

G69 ... (Ausschalten der Rotation)G50 ... (Ausschalten des Masstabierens)G50.1 ... (Ausschalten der Spiegelung)

Page 122: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

122

Abb. 16.1-1

Abb. 16.1-2

Abb. 16.1-3

16 Automatische geometrische Rechnungen

16.1 Programmierung von Anfasen und Eckenverrunden

Zwischen zwei Sätze mit Geradeinterpolation (G01) oder Kreisinterpolation (G02, G039) kann dieSteuerung automatisch Abbrechen oder Abrunden einfügen.Ein gleichschenkliges Abbrechenmit der unter der Adresse

,C (Komma und C) angegebenenLänge wird zwischen den End-punkt des Satzes mit der Adresse,C und den Anfangspunkt desnächsten Satzes eingefügt. Z.B.:

N1 G1 G91 X30 ,C10N2 X10 Y40

Der unter der Adresse ,C angege-bene Wert zeigt, in welchem Ab-stand von dem angenommenen Schnittpunkt der beiden, aufeinander folgenden Sätze dasAbbrechen beginnt bzw. endet. Ein Abbrechen kann auch zwischen zwei Kreise oder zwischeneinen Kreis und eine Gerade eingefügt werden. Der Wert ,C ist in diesem Fall gleich mit der Längeder vom Schnittpunkt gezogenen Sehne.Ein Abrunden mit dem unter derAdresse

,R (Komma und R) angegebenenHalbmesser wird zwischen denEndpunkt des Satzes mit der Ad-resse ,R und den Anfangspunktdes nächsten Satzes eingefügt.Z.B.:

N1 G91 G01 X30 ,R8N2 G03 X-30 Y30 R30

Der Kreisbogen mit dem Halbmesser ,R wird zwischen dieSätze so eingefügt, dass die Kreislinie sich an beide Bahn-teile tangentiell anschmiegt.Befehle mit Abbrechen oder Abrunden können an die Enden von mehreren aufeinander folgenden Sätze eingegebenwerden, wie das folgende Beispiel zeigt:

...G1 Y40 ,C10X60 ,R22G3 X20 Y80 R40 ,C10G1 Y110...

Page 123: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

123

Abb. 16.2-1

L Achtung: – Abbrechen oder Abrunden können nur zwischen die Teile in der ausgewählten Ebene (G17, G18,

G19) eingefügt werden, sonst wird der Fehler 3081 ANWEISUNGSFEHLER ,C ,Rangezeigt.

– Abbrechen oder Abrunden können nur zwischen den Sätzen G1, G2 oder G3 programmiertwerden, sonst wird der Fehler 3081 ANWEISUNGSFEHLER ,C ,R angezeigt.

– Wenn die Schenkellänge beim Abbrechen oder der Halbmesser beim Abrunden so gross sind,dass sie den programmierten Sätzen nicht angepasst werden können, wird der Fehler 3084 ,C ,R ZU GROSS angezeigt.

– Wenn ,C und ,R in einem Satz programmiert werden, wird der Fehler 3017 ,C UND ,R INEINEM SATZ angezeigt.

– In der Betriebsart Satzweise wird der STOP-Zustand erst nach der Durchführung desAbbrechens oder Abrundens aufgenommen.

16.2 Angabe einer Gerade durch Neigungswinkel

Eine Gerade kann in der durch die Befehle G17, G18, G19 bestimmten Ebene durch eine derKoordinaten der ausgewählten Ebene und durch den unter der Adresse ,A angegebenenRichtungswinkel definiert werden.

In der oben angeführten Formel stehen Xp, Yp, Zp für die Achsen X, Y, Z oder für die zu diesenparallel verlaufenden Achsen, während q eine oder mehrere beliebige Achsen ausserhalb derausgewählten Ebene bezeichnet. Die Adressenangabe ,A ist auch bei den Codes G0 und G1möglich. Der Winkel ,A errechnet sich von der ersten Achse der ausgewählten Ebene, und diepositive Richtung ist gegen den Uhrzeigersinn zu verstehen. Der Wert ,A kann sowohl eine positiveals auch eine negative Zahl sein und kann über 360° bzw. unter !360° liegen.

Page 124: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

124

Abb. 16.2-2

Zum Beispiel:G17 G90 G0 X57.735 Y0 ... G1 G91...X100 ,A30 (Diese Angabe ist equivalent

mit der Angabe X100 Y57.735,wobei 7.735=100Atg30°)

Y100 ,A120 (Diese Angabe ist equivalentmit der Angabe X-57.735 Y100wobei !57.735=100/tg120°)

X-100 ,A210 (Diese Angabe ist equivalentmit der Angabe X-100 Y-57.735 wobei!57.735=!100Atg30°)

Y-100 ,A300 (Diese Angabe ist equivalentmit der Angabe X57.735 Y-100 wobei 57.735=!100/tg120°)

L Achtung: – In einem Satz können gleichzeitig eine Gerade durch ihren Richtungswinkel und ein Abbrechen

oder Abrunden angegeben werden. Zum Beispiel:X100 ,A30 ,C5Y100 ,A120 ,R10X-100 ,A210

– Ein Richtungswinkel unter der Adresse ,A kann auch bei Bohrzyklen angegeben werden. Indiesem Fall wird die Angabe beim Positionieren in der ausgewählten Ebene wie obengeschildert berücksichtigt. Der Satz

G81 G91 X100 ,A30 R-2 Z-25

ist beispielsweise equivalent mit dem folgenden Satz:G81 G91 X100 Y57.735 R-2 Z-25

Page 125: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

125

16.3 Schnittpunktsrechnungen in der Ebene

Die hier aufgeführten Schnittpunktsrechnungen werden nur im eingeschalteten Zustand derRechnungen für die Werkzeugradiuskorrektur (G41, G42) durchgeführt. Selbst wenn keineWerkzeugradiuskorrektur im Programm berücksichtigt werden soll, ist der Zustand einzuschaltenund die Korrektur D00 abzurufen:mit Radiuskorrektur:G41(oder G42) ...Dnn...Schnittpunktsrechnungen...G40

ohne Radiuskorrektur:G41(oder G42) ...D00...Schnittpunktsrechnungen...G40

Page 126: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

126

Abb. 16.3.1-1

16.3.1 Schnittpunkt zweier Geraden

Wenn zwei Sätze für Geradeinterpolatio-nen aufeinander folgen und der zweite soangegeben wird, dass ein Punkt der Ge-rade durch seine beiden Koordinatenin der ausgewählten Ebene und auchder Richtungswinkel der Gerade definiertwerden, wird der Schnittpunkt der imersten Satz ausgewählten und der imzweiten Satz angegebenen Gerade er-rechnet. Die im zweiten Satz auf dieseWeise angegebene Gerade wird im wei-teren überdefinierte Gerade genannt. DerEndpunkt des ersten bzw. der Anfangs-punkt des zweiten Satzes stellen denerrechneten Schnittpunkt dar.

G17 G41 (G42)N1 G1 ,A1 oder

X1 Y1

N2 G1G90 X2 Y2 ,A2

G18 G41 (G42)N1 G1 ,A1 oder

X1 Z1

N2 G1G90 X2 Z2 ,A2

G19 G41 (G42)N1 G1 ,A1 oder

Y1 Z1

N2 G1G90 Y2 Z2 ,A2

Der Schnittpunkt wird immer in der durch G17, G18, G19 bestimmten Ebene errechnet. Wenn dererste Satz (N1) nur durch den Richtungswinkel (,A1) angegeben wird, wird eine Gerade vomAusgangspunkt bis zum Schnittpunkt im entsprechenden Richtungswinkel gezogen. Wenn einbeliebiger, vom Ausgangspunkt abweichender Punkt der Gerade (X1, Y1; X1, Z1; oder Y1, Z1)angegeben wird, wird der Schnittpunkt auf Grund der über die beiden Punkte verlaufenden Geradeerrechnet. Die im zweiten Satz (N2) angegebenen Koordinaten werden von der Steurung immerals absolute (G90) Daten ausgelegt.

Page 127: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

127

Abb. 16.3.1-2

Zum Beispiel:G17 G90 G41 D0...G0 X90 Y10N10 G1 ,A150N20 X10 Y20 ,A225G0 X0 Y20...

Der Satz N10 kann auch durch die Ko-ordinaten eines Punktes der Gerade an-gegeben werden:

G17 G90 G41 D0...G0 X90 Y10N10 G1 X50 Y33.094N20 X10 Y20 ,A225G0 X0 Y20...

Es sei angemerkt, dass die im Satz N10 angegebenen Koordinaten X, Y (X50 Y33.094) in diesemFall nicht als Endpunkt betrachtet werden, sondern als Durchlaufpunkt der Strecke, die denAnfangspunkt der Gerade mit dem angegebenen Punkt verbindet. Die Schnittpunktsrechnung kann

Page 128: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

128

Abb. 16.3.1-3 Abb. 16.3.1-4

mit Abbrechen oder Abrunden kombiniert werden. Zum Beispiel:

G17 G90 G41 D0...G0 X90 Y10N10 G1 X50 Y33.094 ,C10N20 X10 Y20 ,A225G0 X0 Y20...

G17 G90 G41 D0...G0 X90 Y10N10 G1 X50 Y33.094 ,R10N20 X10 Y20 ,A225G0 X0 Y20...

Im oben angeführten Beispiel wird die Länge des Abbrechens vom errechneten Schnittpunktzurückgemessen, bzw. das Abrunden dem errechneten Schnittpunkt angepasst.

Page 129: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

129

Abb. 16.3.2-1 Abb. 16.3.2-2

16.3.2 Schnittpunkt einer Gerade und eines Kreises

Wenn ein Satz für Kreisinterpolation nach einem Satz für Geradeinterpolation so angegeben wird,dass sowohl die Endpunkts- und Anfangspunktskoordinaten des Kreises als auch der Kreishalb-messer definiert werden, d.h. der Kreis überdefiniert wird, wird der Schnittpunkt zwischen derGerade und dem Kreis errechnet. Der Endpunkt des ersten bzw. der Anfangspunkt des zweitenSatzes stellen den errechneten Schnittpunkt dar.G17 G41 (G42)N1 G1 ,A oder

X1 Y1

N2 G2 (G3) G90 X2 Y2 I JR Q

G18 G41 (G42)N1 G1 ,A oder

X1 Z1

N2 G2 (G3) G90 X2 Z2 IK R Q

G19 G41 (G42) N1 G1 ,A oder

Y1 Z1

N2 G2 (G3) G90 Y2 Z2 JK R Q

Der Schnittpunkt wird immer in der durch G17, G18, G19 bestimmten Ebene errechnet. Wenn dererste Satz (N1) nur durch den Richtungswinkel (,A) angegeben wird, wird eine Gerade vomAusgangspunkt bis zum Schnittpunkt im entsprechenden Richtungswinkel gezogen. Wenn einbeliebiger, vom Ausgangspunkt abweichender Punkt der Gerade (X1, Y1; X1, Z1; oder Y1, Z1)angegeben wird, wird der Schnittpunkt auf Grund der über die beiden Punkte verlaufenden Geradeerrechnet. Die im zweiten Satz (N2) angegebenen Koordinaten, unter anderem die Koordinaten I,J, K für den Kreismittelpunkt werden von der Steuerung immer als absolute (G90) Datenausgelegt. Welcher von den beiden möglichen Schnittpunkten errechnet werden soll, kann unter derAdresse Q angegeben werden.Wenn der Adressenwert kleiner ist als Null (Q<0), wird der nähere, wenn der Wert grösserist als Null (Q>0), der fernere Schnittpunkt in Richtung der Gerade errechnet. DieRichtung der Gerade wird durch den Richtungswinkel bestimmt.

Page 130: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

130

Abb. 16.3.2-3 Abb. 16.3.2-4

Hier ist ein Beispiel:

%O9981N10 G17 G42 G0 X100 Y20 D0 S200 M3N20 G1 X-30 Y-20N30 G3 X20 Y40 I20 J-10 R50 Q-1N40 G40 G0 Y60N50 X120N60 M30%

%O9982N10 G17 G42 G0 X100 Y20 D0 S200 M3N20 G1 X-30 Y-20N30 G3 X20 Y40 I20 J-10 R50 Q1N40 G40 G0 Y60N50 X120N60 M30%

Der Kreissatz N30 G3 ist überdefiniert, weil sowohl die Mittelpunktskoordinaten (I20 J–10 alsAbsolutwert) als auch der Kreisradius (R50) angegeben sind. Die Steuerung errechnet daher denSchnittpunkt der im Satz N20 angegebenen Gerade und des im Satz N30 angegebenen Kreises. ImProgramm O9981 wird der nähere Schnittpunkt in Richtung der Gerade errechnet, denn imKreissatz N30 wurde Q–1 programmiert. Im Programm O9982 wird dagegen der fernereSchnittpunkt in Richtung der Gerade errechnet, denn im Kreissatz N30 wurde Q1 angegeben.

Die Schnittpunktsrechnung zwischen einer Gerade und einem Kreis kann mit Abbrechen oder Ab-runden kombiniert werden. Zum Beispiel:

%O9983N10 G17 G42 G0 X100 Y20 D0 S200 M3N20 G1 X-30 Y-20 ,R15N30 G3 X20 Y40 I20 J-10 R50 Q-1N40 G40 G0 Y60N50 X120N60 M30%

Die Steuerung errechnet den Schnittpunkt der Sätze N20 und N30 und passt diesem Schnittpunktauf Wirkung des im Satz N20 angegebenen Wertes ,R15 ein Abrunden mit einem Radius von 15mm an.

Page 131: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

131

Abb. 16.3.3-1 Abb. 16.3.3-2

16.3.3 Schnittpunkt eines Kreises und einer Gerade

Wenn ein Satz für Geradeinterpolation nach einem Satz für Kreisinterpolation so angegeben wird,dass die Gerade überdefiniert wird, d.h. sowohl die Endpunktskoordinate als auch der Richtungs-winkel der Gerade definiert werden, wird der Schnittpunkt zwischen dem Kreis und der Geradeerrechnet. Der Endpunkt des ersten bzw. der Anfangspunkt des zweiten Satzes stellen denerrechneten Schnittpunkt dar.

G17 G41 (G42)N1 G2 (G3) X1 Y1 I J

oder R N2 G1 G90 X2 Y2 ,A Q

G18 G41 (G42)N1 G2 (G3) X1 Z1 I K

oder R N2 G1 G90 X2 Z2 ,A Q

G19 G41 (G42)N1 G2 (G3) Y1 Z1 J K

oder R N2 G1 G90 Y2 Z2 ,A Q

Der Schnittpunkt wird immer in der durch G17, G18, G19 bestimmten Ebene errechnet. Der ersteSatz (N1), also der Kreis wird durch einen beliebigen Kreispunkt (X1, Y1; X1, Z1; oder Y1, Z1) unddurch die Mittelpunktskoordinate (I J; I K; oder J K) angegeben. Statt der Mittelpunktskoordinatekann auch der Kreisradius (R) angegeben werden. Im zweiten Satz (N2) wird die Geradeüberdefiniert, d.h. sowohl die Endpunktskoordinaten (X2 Y2; X2 Z2; oder Y2 Z2) als auch derRichtungswinkel (,A) der Gerade werden angegeben. Die Endpunktskoordinaten der Geradewerden von der Steuerung immer als absolute (G90) Daten ausgelegt. Unter der Adresse ,A istimmer der Richtungswinkel des Vektors vom Schnittpunkt zum definierten Endpunktanzugeben, sonst kommt es zu unerwünschten Bewegungen. Welcher von den beiden möglichenSchnittpunkten errechnet werden soll, kann unter der Adresse Q angegeben werden.Wenn der Adressenwert kleiner ist als Null (Q<0, z.B.: Q–1), wird der nähere, wenn derWert grösser ist als Null (Q>0, z.B.: Q1), der fernere Schnittpunkt in Richtung der Geradeerrechnet. Die Richtung der Gerade wird durch den Richtungswinkel bestimmt.

Page 132: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

132

Abb. 16.3.3-3 Abb. 16.3.3-4

Hier ist ein Beispiel:

%O9983N10 G17 G0 X90 Y0 M3 S200N20 G42 G1 X50 D0N30 G3 X-50 Y0 R50N40 G1 X-50 Y42.857 ,A171.87 Q-1N50 G40 G0 Y70 N60 X90N70 M30%

%O9984N10 G17 G0 X90 Y0 M3 S200N20 G42 G1 X50 D0N30 G3 X-50 Y0 R50N40 G1 X-50 Y42.857 ,A171.87 Q1N50 G40 G0 Y70 N60 X90N70 M30%

Der Satz N40 ist überdefiniert, weil sowohl die Endpunktskoordinaten (X–50 Y42.857) als auchder Richtungswinkel (,A171.87) der Gerade angegeben sind. Die Koordinaten X–50 Y0 des imvorangehenden Satz N30 programmierten Kreises werden daher nicht als Endpunktswerteangesehen, sondern als ein Punkt, den die Kreislinie passiert. Der Endpunkt deckt sich mit demerrechneten Schnittpunkt. Im Programm O9983 wurde der nähere Schnittpunkt in Bewegungsrich-tung (Q–1), im Programm O9984 dagegen der fernere Schnittpunkt in Bewegungsrichtung (Q1)angegeben.

Die Schnittpunktsrechnung zwischen einem Kreis und einer Gerade kann mit Abbrechen oderAbrunden kombiniert werden. Zum Beispiel:

%O9983N10 G17 G0 X90 Y0 M3 S200N20 G42 G1 X50 D0N30 G3 X-50 Y0 R50 ,R15N40 G1 X-50 Y42.857 ,A171.87 Q-1N50 G40 G0 Y70 N60 X90N70 M30%

In diesem Beispiel wurde ein Abrunden von 15 mm (,R15) im Satz N30 angegeben. Die Steuerungerrechnet den Schnittpunkt der Sätze N30 und N40, und passt das programmierte Abrunden derentstandenen Kontur an.

Page 133: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

133

Page 134: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

134

Abb. 16.3.4-1 Abb. 16.3.4-2

16.3.4 Schnittpunkt zweier Kreise

Wenn zwei Sätze für Kreisinterpolationen aufeinander folgen und der zweite so angegeben wird,dass sowohl die Endpunkts- und Mittelpunktskoordinaten als auch der Radius definiert werden, d.h.der zweite Kreis überdefiniert wird, errechnet die Steuerung den Schnittpunkt der Kreise. DerEndpunkt des ersten bzw. der Anfangspunkt des zweiten Satzes stellen den errechnetenSchnittpunkt dar.

G17 G41 (G42)N1 G2 (G3) X1 Y1 I1 J1

oder X1 Y1 R1

N2 G2 (G3) G90 X2 Y2 I2

J2 R2 Q

G18 G41 (G42)N1 G2 (G3) X1 Z1 I1 K1

oder X1 Z1 R1

N2 G2 (G3) G90 X2 Z2 I2

K2 R2 Q

G19 G41 (G42)N1 G2 (G3) Y1 Z1 J1 K1

oder Y1 Z1 R1

N2 G2 (G3) G90 Y2 Z2 J2

K2 R2 Q

Der Schnittpunkt wird immer in der durch G17, G18, G19 bestimmten Ebene errechnet. Der ersteSatz (N1) wird entweder durch die Mittelpunktskoordinate des Kreises (I1 J1; I1 K1; J1 K1) oderdurch den Radius des Kreises (R1) angegeben. In diesem Satz entspricht die Auslegung der

Page 135: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

135

Mittelpunktskoordinaten den Grundangaben eines Kreises, d.h. sie bedeuten den vom Mittelpunktgemessenen relativen Abstand. Die im zweiten Satz (N2) angegebenen Koordinaten, unter anderemdie Koordinaten I, J, K für den Kreismittelpunkt werden von der Steuerung immer als absolute(G90) Daten ausgelegt. Welcher von den beiden möglichen Schnittpunkten errechnet werden soll,kann unter der Adresse Q angegeben werden. Wenn der Adressenwert kleiner ist als Null (Q<0,z.B.: Q–1), wird der erste, wenn der Wert grösser ist als Null (Q>0, z.B.: Q1), der zweiteSchnittpunkt errechnet.Der erste Schnittpunkt ist derjenige, der bei der Bewegung im Uhrzeigersinn (unabhängigvon der programmierten Richtung G2, G3) als erster passiert wird.

Page 136: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

136

Abb. 16.3.4-3 Abb. 16.3.4-4

Hier ist ein Beispiel:

%O9985N10 G17 G54 G0 X200 Y10 M3 S200N20 G42 G1 X180 D1N30 G3 X130 Y-40 R-50N40 X90 Y87.446 I50 J30 R70 Q–1N50 G40 G0 Y100N60 X200N70 M30%

%O9986N10 G17 G54 G0 X200 Y10 M3 S200N20 G42 G1 X180 D1N30 G3 X130 Y-40 R-50N40 X90 Y87.446 I50 J30 R70 Q1N50 G40 G0 Y100N60 X200N70 M30%

Der Satz N40 ist überdefiniert, weil sowohl die Mittelpunktskoordinaten (I50 J30 als Absolutwert)als auch der Radius (R70) angegeben sind. Die Koordinaten X130 Y-40 des im vorangehendenSatz N30 programmierten Kreises werden daher nicht als Endpunktswerte angesehen, sondern alsein Punkt, den die Kreislinie passiert. Der Endpunkt deckt sich mit dem errechneten Schnittpunkt.Im Programm O9985 wurde der nähere Schnittpunkt im Uhrzeigersinn (Q–1), im Programm O9986dagegen der fernere Schnittpunkt im Uhrzeigersinn (Q1) angegeben. Die Schnittpunktsangabenzweier Kreise können mit Abbrechen oder Abrunden kombiniert werden. Zum Beispiel:

%O9986N10 G17 G54 G0 X200 Y10 M3 S200N20 G42 G1 X180 D1N30 G3 X130 Y-40 R-50 ,R20N40 X90 Y87.446 I50 J30 R70 Q1N50 G40 G0 Y100N60 X200N70 M30%

In diesem Beispiel wurde ein Abrunden von 20 mm (,R20) im Satz N30 angegeben. Die Steuerungerrechnet den Schnittpunkt der Sätze N30 und N40, und passt das programmierte Abrunden derentstandenen Kontur an.

Page 137: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

16 Automatische geometrische Rechnungen

137

Abb. 16.3.5-1

16.3.5 Verkettung von Schnittpunktsrechnungen

Die Sätze für Schnittpunktsrechnungen können miteinander verkettet werden, d.h. mehrere,aufeinander folgende Sätze können zu Schnittpunktsrechnungen bestimmt werden. Solange dieSteuerung überdefinierte Geraden oder Kreise im Programm findet, werden Schnittpunktegerechnet.Hier ist ein Beispiel:

%O9984N10 G17 G54 G0 G42 X230 Y20 D1 F300 S500 M3N20 G1 X170 Y50N30 G3 X110 Y10 I150 J40 R50 Q-1N40 X60 Y70 I100 J70 R40 Q1N50 G1 X80 Y60 ,A135 Q1N60 X10 Y108 ,A180N70 G40 G0 Y130N80 X240N90 M30%

In diesem Beispiel sind die Sätze N30, N40, N50, N60 überdefiniert. Die Gerade N20 wird nichtbis zum programmierten Endpunkt (X170 Y50) geführt, denn der Satz N30 ist überdefiniert, d.h.die Adressen I J R sind alle ausgefüllt und unter der Adresse Q ist angegeben, welcher Schnittpunktgesucht werden soll. Der Kreissatz N30 wird auch nicht bis zum programmierten Endpunkt (X110Y10) geführt, denn der Satz N40 ist ebenfalls überdefiniert. Der letzte überdefinierte Satz imProgramm ist die Gerade N60. Da die darauf folgende Geradesatz N70 nicht überdefiniert ist,werden die im Satz N60 programmierten Koordinaten X10 Y108 nicht als Durchlaufpunkt derGerade, sondern als Endpunktskoordinaten des Satzes N60 betrachtet.

Im allgemeinen lässt sich sagen, dass die in der ausgewählten Ebene befindlichen Koordina-ten der überdefinierten Sätze für Geraden und Kreise nur dann als Endpunktkoordinaten be-trachtet werden, wenn danach keine überdefinierten Sätze mehr folgen.

Page 138: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

138

Abb. 17-1

17 Bohrzyklen

Die Bohrzyklen können in die folgenden Gruppen unterteilt werden:Operation 1: Positionierung in der angewählten EbeneOperation 2: Tätigkeit nach der PositionierungOperation 3: Eilgangsbewegung bis zum Punkt R (Annäherungspunkt)Operation 4: Tätigkeit im Punkt ROperation 5: Bohren bis zum BohrungsgrundOperation 6: Tätigkeit im BohrungsgrundOperation 7: Rücklauf bis zum Punkt ROperation 8: Tätigkeit im Punkt ROperation 9: Rücklauf im Eilgang bis zum AusgangspunktOperation 10: Tätigkeit im Ausgangspunkt

Punkt R, Annäherungspunkt: Das Werkzeug nähert dem Werkstück bis zu diesem Punkt mitEilgangsgeschwindigkeit an.

Ausgangspunkt: Position der Bohrachse, die vor dem Zyklustart angenommen wird.

Die benannten Operation beschreiben die Bohrzyklen allgemein, in kontreten Fällen können dieeinzelnen Operationen weggelassen werden.Ein Bohrzyklus hat eine Positionierebene und eine Bohrachse, die durch die Anweisungen G17,G18, G19 angewählt werden.

Page 139: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

139

Abb. 17-2

G-Kode Positionierebene Bohrachse

G17 XpYp Zp

G18 ZpXp Yp

G19 YpZp Xp

worin: Xp: X-Achse oder eine dazu parallel liegende Achse,Yp: Y-Achse oder eine dazu parallel liegende Achse,Zp: Z-Achse oder eine dazu parallel liegende Achse

sind.

Die Achsen U, V, W werden für Parallelachsen betrachtet, wenn sie im Parameterfeld als parallelliegende Achsen definiert sind.

Das Konfigurieren der Bohrzyklen kann durch die Anweisungen G98 und G99 erfolgen. G98: Im Ablauf des Bohrzyklus wird das Werkzeug bis zum Ausgangspunkt zurückgezogen.Es ist

die Ausgangssituation, die die Steuerung nach Einschalten, Reset, oder Löschen des Zyklusannimt.

G99: Im Laufe des Bohrzyklus wird das Werkzeug bis zum Punkt R zurückgezogen, folglich wer-den die Operationen 9 und 10 weggelassen.

Die Kodes der Bohrzyklen sind: G73, G74, G76, G81, ..., G89Diese Kodes schalten die Betriebsart Bohrzyklus ein, die das Weitererben der Zyklusvariablen er-möglicht.Der Kode G80 schaltet die Betriebsart aus und lüscht die abgespeicherten Variablen.

Page 140: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

140

Die in Bohrzyklen angewandten Adressen und ihre Interpretation:

Kode des Bohrens :

Die Interpretation der Kodes werden später erörtert.Die Kodes werden geerbt, solange eine G80-Anweisung, oder ein zur G-Kodegruppe 1 gehörigerKode (Interpolationsgruppe: G01, G02, G03, G33) nicht programmiert wird.Solange der Zykulszustand durch die Anweisungen G73, G74, G76, G81, ..., G89 eingeschaltet ist,werden die erblichen Zyklusvariablen auch unter den Bohrzyklen unterschiedlicher Art geerbt.

Anfangspunkt oder Ausgangspunkt:

Der Anfangspunkt ist die Position der zum Bohren bestimmten Achse, die registriert wird – beim Einschalten der Betriebsart Zyklus; beispielsweise bei

N1 G17 G90 G0 Z200N2 G81 X0 Y0 Z50 R150N3 X100 Y30 Z80

ist die Position des Anfangspunktes Z=200 sowohl im Satz N2 als auch im N3; – oder beim Bestimmen einer neuer Bohrachse, beispielsweise bei

N1 G17 G90 G0 Z200 W50N2 G81 X0 Y0 Z50 R150N3 X100 Y30 W20 R25

ist die Anfangspunktposition Z=200 im Satz N2 undW=50 im Satz N3.

Wird die Bestimmung der Bohrachse abgeändert, ist R verbindlich zu programmieren, sonst zeigt dieSteuerung den Fehlerkode 3053 KEIN GRUND- ODER R-PUNKT an.

Bohrungsposition: Xp, Yp, Zp

Die Steuerung nimmt aus den eingegebenen Koordinatenwerten für Bohrungsposition an, die in derangewählten Ebene liegen.Die eingegebenen Werte können in rechtwinkligen oder Polarkoordinaten, absolut oder inkrementalangegeben werde, ihre Dimension kann mm oder Zoll sein.Für die eingegebenen Koordinatenwerte gelten die Spiegelungs-, Rotations- und Masstabierungsbe-fehle.Die Bohrungsposition wird mit Eilgangsgeschwindigkeit angefahren, unabhängig davon, ob welcherKoder der Gruppe 1 gültig ist.

G17 G_ Xp_ Yp_ I_ J_ Zp_ R_ Q_ E_ P_ F_ S_ L_G18 G_ Zp_ Xp_ K_ I_ Yp_ R_ Q_ E_ P_ F_ S_ L_G19 G_ Yp_ Zp_ J_ K_ Xp_ R_ Q_ E_ P_ F_ S_ L_

WiederholzahlBohrangaben

Weg nach SpindelorientierungBohrungspositionCode des Bohrens

Page 141: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

141

Abb. 17-3

Abb. 17-4

Weg nach Spindelorientierung: I, J, K.

Ist die Werkzeugmaschine zur Spindel-orientierung geeignet, wird das Werk-zeug in den Ausdrehzyklen G76 undG87 von der Oberfläche entfernt zu-rückgezogen werden, damit die Werk-zeugspitze die Oberfläche nicht zer-kratzt. Die Richtung, in der die Steue-rung das Werkzeug von der Oberflächeentfernen soll, kann unter der I-, J- undK-Adresse angegeben werden. DieAdressen werden der angewählten O-berfläche entsprechend interpretiert:

G17: I, JG18: K, I G19: J, K

Die Adressen werden immer als inkre-mentale Angaben in rechtwinkligemKoordinatensystem interpretiert. Die Adressen können in metrisch oder in Zoll angegeben werden.Für Die I-, J- und K-Angaben gelten die Spiegelungs-, Rotations- und Masstabierungsbefehle nicht.I, J und K sind erbliche Werte. Diese Werte werden durch den Befehl G80 oder die Kodes derInterpolationsgruppe gelöscht. Die Rückstellung des Werkzeuges erfolgt mit Eilgangsgeschwindig-keit.

Bohrangaben:

Die Basispunkt der Bohrung ist: Xp, Yp, Zp

Die Basispunkt der Bohrung kann unter der Adresse der Bohrachse angegeben werden. DieKoordinate wird stets in rechtwinkligem Koordinatensystem interpretiert. Die Koordinate kann inmm oder Zoll, absolut oder inkremental eingegeben werden. Wird sie inkremental angegeben, wirddie Weglänge von dem Punkt R an berechnet.

Page 142: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

142

Für die Daten des Basispunktes gelten die Spiegelungs- und Masstabierungsbefehle. Diese Datensind erbliche Werte. Die Angaben des Basispunktes werden durch G80, oder die Kodes derInterpolationsgruppe gelöscht. Die Steuerung nähert den Basispunkt stets mit der programmiertenVorschubgeschwindigkeit an.

Annäherungspunkt: RDer An näherungspunkt wird unter der R-Adresse angegeben. Die R-Adresse ist immer ein absolutoder inkremental, in mm oder in Zoll, in rechtwinkligem Koordinatensystem interpretiertes Datum.Ist es inkremental angegeben, wird es von dem Ausgangspunkt an berechnet. Für die Daten des R-Punktes gelten die Spigelungs- und Masstabierungsbefehle. Das Datum des R-Punktes wird geerbtund durch G80 oder die Kodes der Interpolationsgruppe gelüscht. Der R-Punkt wird stets mitEilgangsgeschwindigkeit angenähert.

Bohrtiefe: QDieser Wert bestimmt die Bohrtiefe in den Zyklen G73 und G83. Dieser Wert ist immer ien inkre-mentaler positiver Wert in rechtwinkligen Koordinaten. Er ist ein erblicher Wert. Er wir durch G80,oder die Kodes der Interpolationsgruppe gelöscht. Für die Bohrtiefe gilt der Massstabierungsbefehlnicht.

Hilfsangbe: EDieser Wert bestimmt die Grösse des Werkzeugrückzuges im Zyklus G83, bzw. den vor dem Bohr-vorschub befahrenen Eilgangsweg im G83. Dieser wert ist immer ein inkrementaler, positiver undrechtwinkliger Wert, Der Wert der Hilfsangabe wird geerbt und durch G80 oder die Kodes derInterpolationsgruppe gelöscht. Für die Hilfsangabe gilt der Masstabierungsbefehl nicht. Wird dieHilfsangabe nicht programmiert, nimmt die Steuerung den erforderlichen Wert aus dem ParameterRETG73 oder CLEG83.

Verweilzeit: PUnter der P-Adresse wird die Verweilzeit im Bohrungsgrund angegeben. Für die Eingabe dieser Zeitgelten die bei G04 besagten Regeln. Der Wert der Verweilzeit ist erblich und er wird durch G80oder die Kodes der Interpolationsgruppe gelöscht.

Vorschub: FDiese Angabe bestimmt den Vorschub. Dieser Wert ist erblich und er wird nur durch Programmie-ren einer anderen F-Angabe überschrieben, er wird durch G80 oder einen anderen Kode nichtgelöscht.

Spindeldrehzahl: SDieser Wert ist erblich. Er wird nur durch Programmieren einer anderen S-Angabe überschrieben.Er wird durch G80 oder einen anderen Kode nicht gelöscht.

Wiederholungszahl: LDieser Wert bestimmt die Anzahl der Zykluswiederholungen. Der Wertbereich entspricht 1-9999.Ist L mit keinen Wert belegt, nimmt die Steuerung L=1 an. Bei L=0 werden die Zyklusangabenabgespeichert, jedoch nicht abgearbeitet. Der Wert von L ist nur im Satz gültig, in dem er angegebenworden ist.

Beispiel für die erblichen Bohrkodes und Zyklusvariablen:N1 G17 G0 Z M3

Page 143: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

143

Abb. 17-5

N2 G81 X Y Z R F

Am Anfang des Zyklus sind die Bohrangaben (Z, R) verbindlich anzugebenN3 X

Da im Satz N2 sind die Bohrangaben bestimmt und im Satz N3 die selben Angaben erforderlichsind, brauchen sie nicht von neuem anzugeben, d.h. G81, Z , R , F kann weggelassen werden. DieBohrungsposition ändert sich nur in der X-Richtung, Der Bohrer wird in dieser Richtung verstellt under bohrt die selbe Bohrung wie im Satz N2.

N4 G82 Y Z P

Die Bojrungsposition wird in der Y-Richtung verstellt. Der Ablauf des Bohrens entspricht G82. DerBAsispunkt nimmt einen neuen Z-Wert an, der Annäherungspunkt und der Vorschub (R, F) werdenvon dem Satz N2 geerbt.

N5 G80 M5

Diese Zeile löscht den Zyklusbetrieb un die erblichen Zyklusvariablen mit Ausnahme von F.N6 G85 Y Z R P M3

Da die Bohrangaben im Satz N5 durch die Anweisung G80 gelöscht worden sind, sind die Werte Z,R und P von neuem anzugeben.

N7 G0 X Y

Diese Zeile löscht den Zyklusbetrieb un die erblichen Zyklusvariablen mit Ausnahme von F.

Beispiele für die Anwendung der Zykluswiederholung:Sind gleiche Bohrungen mit gleichen Parameternin gleichmässigen Abständen herzustellen, kanndie Wiederholungszahl unter der L-Adresse ange-geben werden. L ist nur im Satz wirksam, in demer angegeben worden ist.

N1 G90 G17 G0 X0 Y0 Z100 M3N2 G91 G81 X100 Z-40 R-97 F50L5

Auf die Wirkung dieser Anweisungen Bohrt die Steuerung 5 gleiche Bohrungen in Abständen von100 mm. Die Position der ersten Bohrung ist X=100, Y=0.Auf die Wirkung von G91 wurde die Bohrungsposition inkremental angegeben. Wäre sie absolut(G90) angegeben, würde die Operation im Koordinatenpunkt X100, Y0 fünfmal ausgeführt.

N1 G90 G17 G16 G0 X200Y-60 Z50 N2 G81 Y160 Z-40 R3 F50 L6

Page 144: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

144

Abb. 17-6

Auf die Wirkung der obigen Anweisungen bohrtdie Steuerung 6 Bohrungen auf je 60 Grad auf ei-nem Lochkreis des Radius von 200 mm. Die ers-te Bohrungsposition liegt auf dem Koordinaten-punkt X=200, Y=0.

Page 145: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

145

Abb. 17.1.1-1

17.1 Ausführliche Beschreibung der Bohrzyklen

17.1.1 Tiefbohrzyklus mit hoher Geschwindigkeit (G73)

Die im Zyklus angewandten Zyklusvariablen sind:G17 G73 Xp Yp Zp R Q E F L G18 G73 Zp Xp Yp R Q E F L G19 G73 Yp Zp Xp R Q E F L

Operationen des Zyklus:Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: -Operation 7: bei G99: Rückzug bis zum Punkt R im EilgangOperation 8: -Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: -

Beschreibung der Bohroperation 5: – Die unter Q angegebene Bohrtiefe wird ins Material mit Vorschub eingebohrt, – Rückzug um den unter E, oder den im Parameter RETG73 bestimmten Wert, – berechnet vom tiefsten Punkt des vorangehenden Bohrens wird die Tiefe Q eingebohrt, – Rückzug um den unter der E-Adresse angegebenen Wert im Eilgang.Das Verfahren wird bis zum Erreichen des unter der Z-Adresse definierten Basispunktes fortgesetzt.

Page 146: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

146

Abb. 17.1.2-1

17.1.2 Bohrzyklus für Linksgewinden (G74)

Dieser Zyklus kann nur beim Einsatz eines Gewindebohrers mit Ausgleichfutter angewandt werden.Die im Zyklus angewandten Variablen sind:

G17 G74 Xp Yp Zp R (P ) F L G18 G74 Zp Xp Yp R (P ) F L G19 G74 Yp Zp Xp R (P ) F L

Vor dem Zyklusstart ist M4 (Spindeldrehung im Gegenuhrzeigersinn) einzuschalten.Der Vorschub ist entsprechend der Steigung des Gewindebohrers anzugeben: – Bei G94 (Zeitvorschub):

F=P*Sworin P: Gewindesteigung in mm/Umdrehung oder in Zoll/Umdrehung,

S: Spindeldrehzahl in Umdrehung/Minute – Bei G95 (Umdrehungsvorschub):

F=Pworin P: Gewindesteigung in mm/Umdrehung oder in Zoll/Umdrehung,

Die Operationen des Zyklus sind die folgenden:Operation 1: Positionierung im Eilgang in der angewählten Ebene,Operation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt R,Operation 4: -Operation 5: Bohren bis zum Basispunkt mit Vorschub F, Override und Stop gesperrt.Operation 6: – Verweilen bis unter P angegebenem Wert, wenn der Parameter

TAPDWELL freigegeben ist (=1). – Drehrichtungsumkehr: M3

Operation 7: Rückzug bis zum Punkt R mit Vorschub, Override und Stop gesperrt.Operation 8: Drehrichtungsumkehr: M4Operation 9: Bei G98: Eilgangsrücklauf bis zum Ausgangspunkt.Operation 10: -

Page 147: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

147

Abb. 17.1.3-1

17.1.3 Ausdrehen mit automatischer Werkzeugverstellung (G76)

Der Zyklus G76 kann erst angewandt werden, wenn die Spindelorientierung ind die Werkzeugma-schine eingebaut ist. Diese Tatsache wird durch den Zustand 1 des Parameterbits ORIENT1 derSteuerung mitgeteilt. Im Gegenfall wird den Fehlerkode 3052 FEHLER IN G76, G87 angezeigt.Da die Haputsindel nach der Ausdrehoperation orientiert wird und das Werkzeug von der Oberflä-che um den unter I, J und K angegebenen Wert zurückgestellt wird, wird die Oberfläche beimWerkzeugrückzug nicht zerkratzt.Die im Zyklus angewandten Variablen sind die folgenden:

G17 G76 Xp Yp I J Zp R P F L G18 G76 Zp Xp K I Yp R P F L G19 G76 Yp Zp J K Xp R P F L

Vor dem Zyklusstart ist der Befehl M3 auszugeben.Die Operationen des Zyklus sind die folgenden:

Operation 1: Positionierung im Eilgang in der angewählten Ebene,Operation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt R,Operation 4: -Operation 5: Ausdrehen bis zum Basispunkt mit Vorschub F, Override und Stop

gesperrt.Operation 6: Verweilen bis unter P angegebenem Wert

– Spindelorientierung: M19 – Werkzeugverstellung in der angewählten Ebene im Eilgang um den unter

I, J K angegebenen Wert Operation 7: Bei G99: Rückzug bis zum Punkt R mit EilgangsgeschwindigkeitOperation 8: Bei G99:

– Werkzeugrückstellung in der angewählten Ebene um den unter I, J K an-gegebenen Wert, in entgegengesetzter Richtung,

– Wiederstart der Spindel in Richtung M3Operation 9: Bei G98: Eilgangsrücklauf bis zum Ausgangspunkt.Operation 10: Bei G98:

Page 148: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

148

Abb. 17.1.5-1

– Werkzeugrückstellung in der angewählten Ebene um den unter I, J, Kangegebenen Wert, in entgegengesetzter Richtung,

– Wiederstart der Spindel in Richtung M3

17.1.4 Ausschalten des Zyklus (G80)

Der Kode G80 schaltet den Zyklus aus und löscht die Zyklusvariablen.Werden im G80-Satz Koordinaten ohne andere Anweisungen programmiert, wird der Bewegungs-ablauf nach dem vor dem Einschalten gültigen Interpolationskode (G-Kodegruppe 1, oderInterpolationsgruppe) ausgeführt.

17.1.5 Bohrzyklus, Rückzug im Eilgang (G81)

Die im Zyklus angewandten Zyklusvariablen sind:G17 G81 Xp Yp Zp R F L G18 G81 Zp Xp Yp R F L G19 G81 Yp Zp Xp R F L

Operationen des Zyklus:Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: -Operation 7: bei G99: Rückzug bis zum Punkt R im EilgangOperation 8: -Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: -

Page 149: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

149

Abb. 17.1.6-1

17.1.6 Bohrzyklus mit Verweilen, Rückzug im Eilgang (G82)

Die im Zyklus angewandten Zyklusvariablen sind:G17 G82 Xp Yp Zp R P F L G18 G82 Zp Xp Yp R P F L G19 G82 Yp Zp Xp R P F L

Operationen des Zyklus:Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: Verweilen bis zur unter P angegebenen ZeitOperation 7: bei G99: Rückzug bis zum Punkt R im EilgangOperation 8: -Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: -

Page 150: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

150

Abb. 17.1.7-1

17.1.7 Tiefbohrzyklus (G83)

Die im Zyklus angewandten Zyklusvariablen sind:G17 G83 Xp Yp Zp R Q E F L G18 G83 Zp Xp Yp R Q E F L G19 G83 Yp Zp Xp R Q E F L

Operationen des Zyklus:Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: -Operation 7: bei G99: Rückzug bis zum Punkt R im EilgangOperation 8: -Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: -

Beschreibung der Bohroperation 5: – Die unter Q angegebene Bohrtiefe wird ins Material mit Vorschub eingebohrt. – Rücklauf im Eilgang bis zum Punkt R. – Die vorherige Bohrtiefe wird mit dem Abstand im Eilgang E angenähert. – Die Bohrtiefe Q wird, berechnet von dem Bohrungsgrund der vorherigen Bohrung, mit dem Vor-

schub F von neuem eingebohrt (Weglänge= E+Q). – Rücklauf im Eilgang bis zum Punkt R.Das Verfahren wiederholt sich bis zum Erreichen des unter der Z-Adresse angegebenen Basispunk-tes.

Page 151: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

151

Abb. 17.1.8-1

Diese Länge wird entweder aus der E-Adresse vom Programm, oder aus dem Parameter CLEG83entnommen.

17.1.8 Gewindebohrzyklus (G84)

Der Zyklus kann nur bei Einsatz eines Ausgkeichfutters angewandt werden.Die im Zyklus angewandten Variablen sind:

G17 G84 Xp Yp Zp R (P ) F L G18 G84 Zp Xp Yp R (P ) F L G19 G84 Yp Zp Xp R (P ) F L

Vor dem Anlassen des Zyklus ist die Spindeldrehrichtung M3 (Uhrzeigersinn) einzuschalten.Der Vorschub ist entsprechend der Steigung des Gewindebohrers zu bestimmen: – Bei G94 (Zeitvorschub):

F=P*Sworin P: Gewindesteigung in mm/Umdrehung oder in Zoll/Umdrehung,

S: Spindeldrehzahl in Umdrehung/Minute – Bei G95 (Umdrehungsvorschub):

F=Pworin P: Gewindesteigung in mm/Umdrehung oder in Zoll/Umdrehung,

Die Operationen des Zyklus sind die folgenden:Operation 1: Positionierung im Eilgang in der angewählten Ebene,Operation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt R,Operation 4: -Operation 5: Bohren bis zum Basispunkt mit Vorschub F, Override und Stop

gesperrt.Operation 6: – Verweilen bis unter P angegebenem Wert, wenn der Parameter

TAPDWELL freigegeben ist (=1).– Drehrichtungsumkehr: M4

Operation 7: Rückzug bis zum Punkt R mit Vorschub, Override und Stop gesperrt.Operation 8: Drehrichtungsumkehr: M3Operation 9: Bei G98: Eilgangsrücklauf bis zum Ausgangspunkt.Operation 10:

Page 152: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

152

17.1.9 Gewindebohrzyklus ohne Ausgleichsfutter (G84.2, G84.3)

Beim Gewindebohren muss der Quotient des Bohrachsenvorschubes und der Spindeldrehzahl mitder Steigung des Gewindebohrers gleich sein. Mit anderen Worten muss der Quotient

P=F/Sim Idealfall stets konstant bleiben. Im Zusammenhang bedeuten:

P: Gewindesteigung (mm/Umdrehung oder ionch/Umdrehung)F: Vorschub (mm/min oder Zoll/min)S: Spindeldrehzahl (1/min)

In den Bohrzyklen G74 (Linksgewinde) und G84 (Rechtsgewinde) werden die Spindeldrehzahl undder Bohrachsenvorschub vonainander vollkommen unabhängig angesteuert. Die besagteVoraussetzun kann also nicht genau erfüllt werden. Vorallem im Bohrungsgrund ist es so, wo derVorschub und die Spindeldrehzahl synchronisiert sollten verzögert und abgehalten und dann in derentegegengesetzten Richtung beschleunigt werden. Im besagten Fall kann diese Voraussetzunsteuerungstechnisch durchaus nicht erfüllt werden. Das Problem kann durch die Anwendung einesAusgleichsfutters gelöst werden, das die Schwankungen des Quotienten F/S ausgleicht.Ganz anders ist das Steuerungsprinzip bei den Gewindebohrzyklen G84.2 und G84.3, bei denen dieSteuerung dafür sorgt, dass der Quotient F/S konstant bleibt.Im ersten Fall regelt die Steuerung nur die Spindeldrehzahlen, im zweiten Fall dagegenregelt sie auch die Spindelpositionen. In den Bohrzyklen G84.2, G84.3 werden die Bewegungen derBohrachse und der Spindel durch eine Geradeninterpolation verbunden. Diese Methode ermöglicht,dass der Quotient F/S konstant bleibt.

G84.2: Bohren von Rechtsgewinden ohne AusgleichsfutterG84.3: Bohren von Linksgewinden ohne Ausgleichsfutter

Diese Zyklen können nur bei Maschinen angewandt werden, deren Hauptspindel mit einem Posi-tionsimpulsgeber ausgerüstet ist und der Hauptantrieb an eine Lageregelung zurückgekoppeltwerden kann (der Parameter INDEX1=1).Ist es nicht der Fall zeigt die Steuerung die Fehleranzeige 3052 FEHLER IN G76, G87 beim Auf-rufen des Kodes an.Die im Zyklus angewandten Variablen sind:

G17 G84._ Xp Yp Zp R F S L G18 G84._ Zp Xp Yp R F S L G19 G84._ Yp Zp Xp R F S L

Am Ende des Zyklus wird die Hauptspindel stillgesetzt. Nötigenfalls muss der Programmierer für dasWiederstarten sorgen.Der Vorschub und die Spindeldrehzahl ist abhängig von der Gewindesteigung bestimmt werden: – beim Zeitvorschub G94: F=P*S

worin: P: Gewindesteigung in mm/Umdrehung oder Zoll/UmdrehungS: Spindeldrehzahl in 1/min

In diesem Fall sind der Verfahrweg und der Vorschub entlang der Bohrachse, bzw. derSpindel die folgenden (angenommen, dass die Bohrachse die Z-Achse ist):

Page 153: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

153

Abb. 17.1.9-1

Verfahrweg Vorschub

Z z=Abstand zwischen R-Punkt und Basispunkt

S

– Beim Umdrehungsvorschub G95: F=Pworin: P: Gewindesteigung in mm/Umdrehung oder Zoll/Umdrehung. Daraus ist es ersichtli-

ch, dass die Gewindesteigung beim Umdrehungsvorschub (G95) direkt program-miert werden kann, aber das Programmieren von S ist zur Bestimmung derVorschübe auch erforderlich.

In diesem Fall sind der Verfahrweg und der Vorschub entlang der Bohrachse, bzw. derSpindel die folgenden (angenommen, dass die Bohrachse die Z-Achse ist):

Verfahrweg Vorschub

Z z=Abstand zwischen R-Punkt und Basispunkt

S

Die Operationen des Zyklus G84.2 sind die folgenden:Operation 1: Positionierung im Eilgang in der angewählten Ebene,Operation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt R,Operation 4: Spindelorientierung M19Operation 5: Geradeninterpolation zwischen der Bohrachse und der Spindel im Uhrzeig-

ersinn (+)Operation 6: -Operation 7: Geradeninterpolation zwischen der Bohrachse und der Spindel im

Page 154: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

154

Abb. 17.1.9-2

Gegenuhrzeigersinn (-).Operation 8: -Operation 9: Bei G98: Eilgangsrücklauf bis zum Ausgangspunkt.Operation 10: -

Die Operationen des Zyklus G84.3 sind die folgenden:Operation 1: Positionierung im Eilgang in der angewählten Ebene,Operation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt R,Operation 4: Spindelorientierung M19Operation 5: Geradeninterpolation zwischen der Bohrachse und der Spindel im Gegen-

uhrzeigersinn (-).Operation 6: -Operation 7: Geradeninterpolation zwischen der Bohrachse und der Spindel im Uhr-zeig-

ersinn (-).Operation 8: -Operation 9: Bei G98: Eilgangsrücklauf bis zum Ausgangspunkt.Operation 10: -

Page 155: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

155

Abb. 17.1.10-1

17.1.10 Bohrzyklus, Rückzug mit Vorschub (G85)

Die im Zyklus angewandten Zyklusvariablen sind:G17 G85 Xp Yp Zp R F L G18 G85 Zp Xp Yp R F L G19 G85 Yp Zp Xp R F L

Operationen des Zyklus:Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: -Operation 7: bei G99: Rückzug bis zum Punkt R im EilgangOperation 8: -Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: -

Page 156: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

156

Abb. 17.1.11-1

17.1.11 Bohrzyklus, Eilgangsrückzug bei stillstehender Spindel (G86)

Die im Zyklus angewandten Zyklusvariablen sind:G17 G86 Xp Yp Zp R F L G18 G86 Zp Xp Yp R F L G19 G86 Yp Zp Xp R F L

Beim Zyklusstart ist die Spindeldrehrichtung M3 einzugeben.Operationen des Zyklus:

Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: Stillsetzen der Spindel: M5Operation 7: bei G99: Rückzug bis zum Punkt R im EilgangOperation 8: bei G99: Wiederstarten der Spindel: M3Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: bei G98: Wiederstarten der Spindel: M3

Page 157: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

157

Abb. 17.1.12-1

17.1.12 Bohrzyklus, Handbedienung im Bohrungsgrund/Ausdrehen rückwärts mitautomatischer Werkzeugrückstellung (G87)

Die Steuerung führt den Zyklus auf zwei Arten durch:

A. Bohrzyklus, Handbedienung im BohrungsgrundIst die Möglichkeit der Spindelorientierung in der Maschine nicht ausgebaut (ParameterORIENT1=0), arbeitet die Steuerung nach dem Fall A.Die im Zyklus angewandten Zyklusvariablen sind:

G17 G87 Xp Yp Zp R F L G18 G87 Zp Xp Yp R F L G19 G87 Yp Zp Xp R F L

Beim Starten des Zyklus ist die Spindeldrehrichtung M3 einzugeben.Operationen des Zyklus:

Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: – Stillsetzen der Spindel: M5

– Die Steuerung tritt in den Stopzustand M0, nach Eintritt in einen derHandbedienungsbetriebe (BEWEGUNG, SCHRITT, HANDRAD)kann der Bediener die Maschine manuell bedienen. D.h.: derBediener kann die Werkzeugspitze von der Oberfläche der Bohrungwegziehen und das Werkzeug aus der Bohrung hinausziehen. NachRücktritt in den AUTOMATIKBETRIEB wird die Bearbeitungdann auf Start fortgesetzt.

Operation 7: bei G99: nach Wiederstarten Rückzug bis zum Punkt R im EilgangOperation 8: bei G99: erneuter Spindelstart: M3Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: bei G98: erneuter Spindelstart: M3

Page 158: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

158

Abb. 17.1.12-2

B. Ausdrehen rückwärts mit automatischer WerkzeugrückstellungIst die Möglichkeit der Spindelorientierung in der Maschine eingebaut (Parameter ORIENT1=1),arbeitet die Steuerung nach dem Fall B.Die im Zyklus angewandten Zyklusvariablen sind:

G17 G87 Xp Yp Zp I J R F L G18 G87 Zp Xp Yp K I R F L G19 G87 Yp Zp Xp J K R F L

Beim Starten des Zyklus ist die Spindeldrehrichtung M3 einzugeben.Operationen des Zyklus:

Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: – Spindelorientierung

– Werkzeugverstellung in der angewählten Ebene um den Wert I, J, K imEilgang

Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: – entgegengerichteter Werkzeugrückzug in der angewählten Ebene im

Eilgang um den Wert I, J, bzw. K– Wiederstarten der Spindel in der Richtung M3

Operation 5: Ausdrehen bis zum Bohrungsgrund mit Vorschub FOperation 6: – Spindelorientierung: M19

– Werkzeugverstellung in der angewählten Ebene um den Wert I, J, K imEilgang

Operation 7: -Operation 8: -Operation 9: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: erneuter Spindelstart: M3

Aus dem Zyklus folgt, dass der Annäherungspunkt R tiefer als der Bohrungsgrund liegt. DieseTatsache muss beim Programmieren der Bohrachse und der R-Adressen inbetrachtgenommenwerden.

Page 159: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

159

Abb. 17.1.13-1

Da die Spindel orientiert wird und das Werkzeug vor dem Ausdrehen um den Wert I, J, bzw. Kzurückgenommen wird, kann ein Werkzeugbruch vor dem Einfahren vermieden werden.

17.1.13 Bohrzyklus, Handbedienung nach einer Verweilzeit im Bohrungsgrund (G88)

Die im Zyklus angewandten Variablen sind:G17 G88 Xp Yp Zp R P F L G18 G88 Zp Xp Yp R P F L G19 G88 Yp Zp Xp R P F L

Beim Starten des Zyklus ist die Spindeldrehrichtung M3 einzugeben.Operationen des Zyklus:

Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: – Stillsetzen der Spindel: M5

– Die Steuerung tritt in den Stopzustand M0, nach Eintritt in einen derHandbedienungsbetriebe (BEWEGUNG, SCHRITT, HANDRAD)kann der Bediener die Maschine manuell bedienen. D.h.: derBediener kann die Werkzeugspitze von der Oberfläche der Bohrungwegziehen und das Werkzeug aus der Bohrung hinausziehen. NachRücktritt in den AUTOMATIKBETRIEB wird die Bearbeitungdann auf Start fortgesetzt.

Operation 7: bei G99: nach Wiederstarten Rückzug bis zum Punkt R im EilgangOperation 8: bei G99: erneuter Spindelstart: M3Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: bei G98: erneuter Spindelstart: M3

Der Zyklus ist gleich wie der Fall A bei G87, nur erfolgt eine Verweilzeit vor dem Stillsetzen derSpindel.

Page 160: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

160

Abb. 17.1.14-1

17.1.14 Bohrzyklus mit Verweilen im Bohrungsgrund, Rückzug mit Vorschub (G89)

Die im Zyklus angewandten Variablen sind:G17 G89 Xp Yp Zp R P F L G18 G89 Zp Xp Yp R P F L G19 G89 Yp Zp Xp R P F L

Operationen des Zyklus:Operation 1: Positionierung in der angewälten Ebene im EilgangOperation 2: -Operation 3: Eilgangsbewegung bis zum Annäherungspunkt ROperation 4: -Operation 5: Bohren bis zum Bohrungsgrund mit Vorschub FOperation 6: Verweilen mit dem unter P bestimmten WertOperation 7: Rückzug bis zum Punkt R im EilgangOperation 8: -Operation 9: bei G98: Rückzug bis zum Ausgangspunkt im EilgangOperation 10: -

Mit der Ausnahme der Verweilzeit ist der Zyklus gleich wie G85.

Page 161: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

17 Bohrzyklen

161

17.2 Anmerkungen zur Anwendung der Bohrzyklen

– Wenn in der Betriebsart Zyklus ein Satz ohne G-Kode eine der AdressenXp, Yp, Zp, oder R

enthält, wird der Bohrzyklus durchgeführt. Ohne diese Voraussetzung wird der Bohrzyklusnicht durchgeführt.

– Nach der Programmierung des Verweilsatzes G04 P in der Betriebsart Zyklus wird der Befehlgemäss dem programmierten P ausgeführt, jedoch die auf das Verweilen bezogene Zyklus-variable wird nicht gelöscht und nicht überschrieben.

– Die Werte für I, J, K, Q, E, P sind in einem Satz einzugeben, in dem das Bohren erfolgt, sonstwerden diese Werte nicht abgespeichert.

Die besagten sollen durch das folgende Beispiel verdeutlicht werden:G81 X_ Y_ Z_ R_ F (Der Bohrzyklus wird durchgeführt.)

X (Der Bohhrzyklus wird durchgeführt.)F_ (Der Bohrzyklus wird nicht ausgeführt, F wird

überschrieben)M_ (Der Bohrzyklus wird nicht duchgeführt, der

M-Kode wird abgearbeitet.)G4 P_ (Der Bohrzyklus wird nicht durchgeführt, das

Verweilen wird realisiert, die Zyklusvariabledes Verweilens wird nicht überschrieben.)

I_ Q_ (Der Bohrzyklus wird nicht ausgeführt, dieprogrammierten Werte werden alsZyklusvariablen nicht registriert.)

– Wird eine Funktion neben einem Bohrzyklus programmiert, wird die Funktion am Ende derersten Operation, nach Beenden der Positionierung durchgeführt. Wurde im Zyklus auch Lprogrammiert, wird die Funktion nur im ersten Umlauf durchgeführt.

– Im satzweisen Betrieb hält die Steuerung nach den Operationen 1, 3 und 10 innerhalb des Zyklus. – In den Operationen 5, 6 und 7 der Zyklen G74, G84 ist die STOP-Taste unwirksam. Wird die

STOP-Taste während dieser Operationen angedrückt, arbeitet die Steuerung weiter undhält erst am Ende der Operation 7 an.

– In den Operationen 5, 6 und 7 der Zyklen G74, G84 sind die Vorschub- und die Drehzahlkor-rektur unabhängig von der Stellung der Korrekturschalter immer 100%.

– Wird in einem Zyklussatz G43, G44 oder G49 programmiert oder einen neuen H-Wert angege-ben, wird die Längenkorrektur in der Operation 3 stets der Bohrache entlang inbetrachtge-nommen.

– Die Anweisungen G45, ..., G48 werden in Bohrzyklen nicht durchgeführt.

Page 162: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

18 Messfunktionen

162

Abb. 18.1-1

18 Messfunktionen

18.1 Messen beim Löschen des Restweges (G31)

Auf die Wirkung der AnweisungG31 v (F) (P)

beginnt die Bewegung mit einer Geradeninterpolation in der durch die v Vektor angegebenenRichtung, wie mit G01 Linearinterpolation befohlen werden. Falls während der Durchführung diesesBefehls ein externes Überlesesignal eingegeben wird, wird die Befehlsausführung abgebrochen undder nächste Satz durchgeführt. Wenn kein Überlesesignal eingegeben wird, wird die Interpolation biszur von dem Vektor v angegebenen Koordinate durchgeführt. Die Anweisung G31 ist ein Einmahlbefehl, sie ist nur im Satz gültig, in dem sie programmiert wordenist. Die Steuerung hat 4 verschiedene Überlesesignaleingänge. Man kann auf der Addresse P angeben,welcher Eingang während der Durchführung zu beachten ist:

P0: Überlesesignal 1 P1: Überlesesignal 2 P2: Überlesesignal 3 P3: Überlesesignal 4 .

Wenn Addresse P nicht angegeben wird, beachtet die Steuerung das Überlesesignal 1.Wird in der Anweisung G31 ein Syntaxfehler gefunden, wird Fehlerkode 3051 G22, G28, ... G31,G37 angezeigt.Die Geschwindigkeit der Bewegung ist – der eingegebene oder geerbte F-Wert, wenn der Parameter SKIPF=0 ist; – die im Parameter G31FD enthaltene Vorschubgeschwindigkeit, wenn der Parameter SKIPF=1

ist.Die Bewegung läuft solange – ein externes Signal (z.B. ein Messtastersignal) nicht ansteht, oder – sie in der angegebenen Koordinate programmiert nicht endet.Im Moment, als die Bewegung aufhört, werdendie Achspositionen in den folgenden Systemva-riablen abgespeichert:

#5061.........Position der Achse 1#5062.........Position der Achse 2..#5068.........Position der Achse 8

Eine so abgespeicherte Position ist – die beim Anstehen des Signals festgesetzte Position, wenn ein externes Signal angekommen war; – die Endpunktposition des Satzes G31, wenn kein externes Signal angekommen ist; – immer im aktuellen Werkstück-Koordinatensystem, – bei Inbetrachtnahme der aktuellen Längenkorrektur (G43, G44) und

Page 163: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

18 Messfunktionen

163

Abb. 18.1-2

Abb. 18.1-3

Abb. 18.2-1

– der aktuellen Werzeugverschiebung (G45...G48) zu verstehen.Die Satzbarbeitung ist nur im Zustand G40 möglich. Wird G31 im Zustand G41 oder G42programmiert, wird die Fehleranzeige 3054 G31 IM FALSCHEN ZUSTAND ausgelöst. Genausowird dieser Fehlerkode angezeigt, wenn die Zustände G95, G51, G51.1, G68 oder G16 gültig sind.Der für die v-Koordinate eingegebene Wert kann absolut oder inkremental sein. Ist die Koordina-tenangabe für den nächstfolgenden Wegbefehl inkremental, wird der Verfahrweg von dem Punktdes G31-Satzes an berechnet, in dem die Bewegung in dem vorangehenden Satz aufgehört hat.Beispielsweise:

N1 G31 G91 X100N2 X30 Y50

Im Satz N1 wird eine inkrementale Bewegungin der Richtung X in Gang gesetzt. Steht dasexterne Signal nach Befahren eines Verfahrwe-ges X=86.7 an, wird 30 mm in der X-Richtungund 50 mm in der Y-Richtung, berechnet vondiesem Punkt an, im Satz N2 befahren.

Beim Programmieren einer absoluten Datenein-gabe gestaltet sich der Bewegungsablauf wiefolgt:

N1 G31 G90 X200N2 X300 Y100

Im Satz N1 wird eine Bewegung in der X-Richtung bis zum Koordinatenpunkt X=200gestartet. Steht das externe Signal im Koordi-natenpunkt X=167 an, wird der Verfahrweg imSatz N2 X=300-167, also X=133 mm sein.

18.2 Automatische Werkzeuglängenmessung (G37)

Auf die Wirkung der AnweisungG37 q

beginnt die Bewegung mit Eilgangsgeschwindigkeit in der durch die q-Koordinate angegebenenRichtung. Der Wert von q wird immer als absolute Angabe interpretiert.Die Bewegung läuft bis zur Position q - RAP-DIST im Eilgang, wobei RAPDIST ein im Pa-rameter eingestellter Wert ist.Dann setzt sich die Bewegung mit einer im Pa-rameter G37FD eingestellten Vorschubge-schwindigkeit fort, solange das Abtastsignalnicht ansteht, bzw. die Steuerung keinen Fehleranzeigt. Die Fehlermeldung 3103 AUSSERBEREICH erfolgt, wenn das Abtastsignalausser dem Bereich des Radius ALADIST derunter der q-Adresse programmierten Position(erwartete Messposition) ansteht.

Page 164: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

18 Messfunktionen

164

Ist die Messung erfolgreich und steht das Abtastsignal im Koordinatenpunkt Q an, – addiert die Steuerung die Differenz Q-q (wenn Parameter ADD=1) dem Verschleißwert des

aktuellen Korrekturregisters H, oder – zieht sie die Differenz aus dem Verschleißwert des aktuellen Korrekturrigsters (wenn Parameter

ADD=0) ab.

Vor dem Beginn der Messung sind der entsprechende H-Wert und die Längenkorrektureinzuschalten. – Die Anweisung G37 ist von einmaliger Wirkung. – Der Zyklus G37 wird immer im aktuellen Werkstück-Koordinatensystem durchgeführt. – Die Parameter RAPDIST und ALADIST sind immer positive Werte. Für die beiden Parameter

muss die folgende Bedingung erfüllt werden: RAPDIST>ALADIST. – Beim Vorliegen eines Syntaxfehlers wird der Fehlerkode 3051 G22, G28, ... G31, G37 ange-

zeigt. – Ein auf die Längenkorrektur bezogener G-Kode (G43, G44, G49) kann im G37-Satz nicht ange-

geben werden, sonst erfolgt die Fehleranzeige 3055 G31 IN INKORREKTER ZUSTAND. – Ebenso erfolgt die obige Fehleranzeige, wenn die Zustände G51, G51.1, G68 oder G16 beste-

hen.

Die während der Durchführung der Funktion G37 vorkommenden Fehleranzeigen sind die folgen-den: – 3103 AUSSER BEREICH, wenn das Abtastsignal innerhalb des Bereiches des Radius ALADIST

der im Satz G37 programmierten Endposition nicht ansteht.

Page 165: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

19 Sicherheitsfunktionen

165

Abb. 19.1-1

19 Sicherheitsfunktionen

19.1 Programmierbare Arbeitsraumabgrenzung (G22, G23)

Die AnweisungG22 X Y Z I J K P

schaltet die Überwachung der Arbeitsraumabgrenzung ein. Durch diese Anweisung können dieVerfahrwege der Achsen abbegrenzt werden. Bedeutungen der Adressen der Anweisung:

X: positive Grenze in der X-AchseI: negative Grenze in der X-AchseY: positive Grenze in der Y-AchseJ: negative Grenze in der Y-AchseZ: positive Grenze in der Z-AchseK: negative Grenze in der Z-Achse

Für die angegebenen Daten müssen die folgenden Bedingungen erfüllt werden:X$I, Y$J, Z$K

Unter dieser Adresse kann bestimmt werden, ob der abbegrenzte Raum von aussen oder von innengesperrt ist.Bei P=0 ist der bestimmte Raum innen gesperrt.Bei P=1 ist der bestimmte Raum aussen gesperrt.

Die AnweisungG23

schaltet die Arbeitsraumüberwachung aus.Die Anweisungen G22, G23 überschreiben die entsprechenden Elemente des Parameterfeldesunmittelbar.Die Anweisung G22 setz den Parameter STRKEN auf 1, die Anweisung G23 setzt ihn auf 0.Die Anweisung G22 P0 setzt den Parameter EXTER auf 0, G22 setzt ihn auf 1.Die Koordinaten X, Y, Z in der Anweisung G22 überschreiben die den entsprechenden Achsengehörigen Parameter LIMP2n, die Koordinaten I, J, K überschreiben die den entsprechenden

Page 166: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

19 Sicherheitsfunktionen

166

Achsen gehörigen Parameter LIMPN2n.Bevor die Koordinaten in der Anweisung G22 in die entsprechenden Parameter eingeschriebenwerden, werden ins Maschinen-Koordinatensystem so umberechnet, dass sie gleichzeitig auch dieeingeschalteten Korrekturverschiebungen enthalten. Wurde z.B. die Längenkorrektur für die Z-Richtung beim Definieren der G22-Anweisung eingeschaltet, begrenzen die für diese Achseangegebenen abgrenzenden Koordinatenangaben die Verfahrwege so ab, dass die Werkzeugspitzediese Grenzen nicht überschreiten kann. Ist die Korrektur nicht eingeschaltet, kann der Bezugspunktdes Werkzeughalters ins Innere der gesperrten Zone nicht einfahren. Die Grenze der gesperrtenZone in der Koordinate, die in der Längsachse des Werkzeuges liegt, ist zweckmässigerweise fürdas längtse Werkzeug einzustellen. – Eine Arbeitsraumabgrenzung kann nur für die Hauptachsen angegeben werden. – Die Anweisungen G22, G23 sind in selbstständigen Sätzen anzugeben. – Die Arbeitsraumabgrenzung ist erst nach Einschalten der Maschine und Aufnahme des Referenz-

punktes wirksam. – Wenn das Werkzeug nach erfolgter Referenzpunktaufnahme, oder auf die Wirkung des Program-

mierens von G22 in den gesperrten Arbeitsraum hineinfährt und die Zone von innen gesperrtist, muss die Sperre durch Programmieren von G23 in Handbetrieb freigegeben werden.Das Werkzeug muss in traditioneller Weise aus dem Raum gebracht werden. Endlich ist dieArbeitsraumüberwachung durch Programmieren von G22 wieder einzuschalten. Ist die Zonevon aussen gesperrt, kann sie ähnlich wie beim Anfahren der Endstellungen verlassenwerden.

– Wird die Grenze der gesperrten Zone im Laufe einer Bewegung erreicht, kann das Werkzeug imHandbetrieb durch traditionelles Fahren entfernt werden.

– Wenn X=I, Y=J, Z=K und P=0, ist der vollkommene Raum freigegeben. – Wenn X=I, Y=J, Z=K und P=1, ist der vollkommene Raum gesperrt. – Wenn der Arbeitsraum von innen gesperrt ist und die gesperrte Zone oder deren Grenzen ange-

fahren werden, zeigt die Steuerung die Fehlernachricht 1400 INNERLICHES SCHUTZ-BEREICH an.

– Ist der Arbeitsraum von aussen gesperrt, zeigt die Steuerung die Fehlermeldung SCHUTZBE-REICH t+ oder SCHUTZBEREICH t– an, wo “t” der Name der die gesperrte Zone an-fahrenden Achse ist.

Page 167: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

19 Sicherheitsfunktionen

167

Abb. 19.2-1

Abb. 19.3-1

19.2 Parametrierter Endschalter

Der Maschinenhersteller kann in den Steuerungsparametern den auf der gegebenen Maschinephysikalisch möglichen Bewegungsbereich, also die Endstellungen bestimmen. Werden dieseGrenzen angefahren, zeigt die Steuerung Fehler an, als würden die Endschalter angefahren. – Die parametrierte Endpositionsüberwachung

wird erst nach Aufnahme des Refe-renzpunktes wirksam.

– Die parametrierte Endpositionsüberwachungsperrt den Arbeitsraum stets von aus-sen.

– Die parametrierte Endpositionsüberwachungund die programmierte Arbeitsraumab-grenzung können sich überlappen.

19.3 Arbeitsraumüberwachung vor dem Anlassen einer Bewegung

Die Steuerung kann zwei gesperrte Zonen verunterscheiden. Die erste Zone ist die Abgrenzung desphysikalisch möglichen Bewegungsbereiches der Maschine. Die äussersten Positionen dieseBereiches sind Endstellungen genannt. Im Laufe einer Bewegung lässt die Steuerung diese Grenzennicht überfahren. Die Endpositionen werden durch den Maschinenhersteller eingestellt und sie dürfenvom Anwender nicht modifiziert werden.Die andere gesperrteZone, die program-mierbare Arbeitsra-umabgrenzung wirdvom Anwender fest-gestellt. Dies kanndurch Programmierender Anweisung G22,oder durch Über-schreiben der Para-meter erfolgen.Ist der ParameterCHBFMOVE im Pa-rameterfeld auf 1 ge-setzt, überprüft die Steuerung vor dem Anlassen der Achsbewegungen, ob der programmierte End-punkt des betreffenden Satzes nicht in einer gesperrten Zone liegt.

Page 168: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

19 Sicherheitsfunktionen

168

Abb. 19.3-2

Liegt der Endpunktausserhalb des Berei-ches der Endpositio-nen, wird der Fehler-kode 3056 GRENZE angezeigt. Liegt derEndpunkt innerhalbder programmiert ge-sperrten Zone, erfolgtdie Fehleranzeige 3057 SCHUTZBEREICH. So kann die Bewegung praktisch nicht in Gang gesetztwerden. Da die Steuerung vor dem Start eines Satzes nur kontrolleirt, ob der Endpunkt des Satzesin keiner gesperrten Zone liegt, erfolgt die Fehleranzeige in den auf den Abbildungen gezeigten Fällenerst nach erfolgter Bewegung.

Page 169: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

169

20 Kundenmakros

20.1 Einfaches Abrufen eines Makros (G65)

Auf den BefehlG65 P(Programmnummer) L(Wiederholungszahl) <Bezeichnung des Argumentes>

wird ein unter der P-Adresse (Programmnummer) angegebenes Makroprogramm so viele Malewiederholt aufgerufen, wie es unter der L-Adresse angegeben ist.Einem Makroprpgramm können Argumente übergeben werden. Die Argumente sind für bestimmteAdressen gegebene konkrete Zahlenwerte, die während des Aufrufes des Makros in entsprechen-den lokalen Variablen abgespeichert werden. Das Makroprogramm kann diese lokalen Variablenbenutzen. Also ist das Aufrufen eines Makroprogrammes eine spezielle Art von Aufrufen einesUnterprogrammes, bei dem das Hauptprogramm Variablen (Parameter) dem Unterprogrammübergeben kann.In einer G65-Anweisung sind zweierlei Argumentenbezeichnungen möglich:

Adressen der Argumentenbezeichnung 1:

A B C D E F H I J K M Q R S T U V W X Y Z

Unter der Adressen G, L, N, O, P können keine Werte für des MAkroprogramm übergeben wer-den, also können diese Adressen für Argumentenbezeichnung in der G65-Anweisung nichtangewandt werden. Die Adressen können in beliebiger Reihenfolge ausgefüllt werden, eine ABC-Reihenfolge ist nicht nötig.

Adressen der Argumentenbezeichnung 1:

A B C I1 J1 K1 I2 J2 K2 ... I10 J10 K10

Ausser den A-,B- und C-Adressen können höchstens 10 Argumente für die I-,J- und K-Adressenbezeichnet werden. Die Reihenfolge der Ausfüllung ist beliebig. Wurden mahrere Argumentedieselben Adressen zugeördnet, so nehmen sie die entsprechenden Werte in der Reihenfolge derZuordnung an.

l v 1. a k 2. a k l v 1. a k 2. a k l v 1. a k 2. a k

#1 A A #12 (L) K3 #23 W J7

#2 B B #13 M I4 #24 X K7

#3 C C #14 (N) J4 #25 Y I8

#4 I I1 #15 (O) K4 #26 Z J8

#5 J J1 #16 (P) I5 #27 – K8

#6 K K1 #17 Q J5 #28 – I9

#7 D I2 #18 R K5 #29 – J9

#8 E J2 #19 S I6 #30 – K9

#9 F K2 #20 T J6 #31 – I10

#10 (G) I3 #21 U K6 #32 – J10

#11 H J3 #22 V I7 #33 – K10

Page 170: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

170

– Abkürzungen: lv: lokale Variable, 1.ak: Argumentenbezeichnung 1, 2.ak: Argumentenbe-zeichnung 2.

Die Indizes nach den Adressen I, J, K zeigen die Reihenfolge der Argumentenbezeichnungen an.Innerhalb eines Satzes können die Argumentenbezeichnung 1 und 2 gleichzeitig vorkommen, dieSteuerung nimmt es an. Fehler wird angezeigt, wenn auf eine Variable zweimal bezuggenommenwird.Beispielsweise:

In diesen Beispiel wurde #8 ein Wert durch die zweite J-Adresse (-12) zugeordnet. Da auch derWert der E-Adresse der Variable #8 zugeordnet ist, zeigt die Steuerung Fehler 3064 FALSCHERMAKROAUSDRUCK an.Der Grenzwert der Adressen für Argumente ist gleich mit dem Grenzwert bei ihrer normaler Anwen-dung. Auch Kommas, Vorzeichen und I-Operatoren können unter den Adressen angegebenwerden, soweit dies auch in normalen Programmen möglich ist.

20.2 Erbliches Aufrufen von Makros

20.2.1 Aufrufen eines Makros nach jedem Fahrbefehl (G66)

Auf den BefehlG66 P(Programmnummer) L(Wiederholungszahl) <Bezeichnung des Argumentes>

wird ein unter der P-Adresse (Programmnummer) angegebenes Makroprogramm so viele Malenach Abarbeiten jedes Fahrbefehls wiederholt aufgerufen, wie es unter der L-Adresse angegebenist. Die Auslegung der P- und L-Adressen, sowie die Regel für die Argumentenbezeichnung sindgleich wie die bei der Anweisung G65.Das gewählte Makro wird solange aufgerufen, bis der Löschbefehl

G67nicht programmiert wird.Beispiel: Auf einem Segment des Teileprogrammes ist eine Bohrung nach jedem Verfahrweg zuverfertigen:

Hauptprogram

G65 A2.12 B3.213 J36.9 J–12 E129.73 P2200

Variable#1=2.12#2=3.213#5=36.9#8=–12#8=Fehler

...G66 P1250 Z–100 R–1 X2 F130 (Z=Basispunkt der Bohrung

R=Annäherungspunkt X=Wartezeit F=Vorschub)G91 G0 X100Y30 Es wird nach jeder Positionierung gebohrt.X150...G67

Page 171: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

171

Makroprogramm %O1250 G0 Z#18 (Eilgangspositionierung in Z auf den unter der R–1

Adresse bestimmten Punkt) G1 Z#26 F#9 Bohren bis zum unter der Z–100 Adresse angegebenen

Tiefpunkt mit dem unter der F130 Adresseangegebenen Vorschub)

G4 P#24 (Verzögerung im Tiefpunkt der Bohrung bis zur unterder X2 Adresse angegebenen Zeit)

G0 Z-[#18+#26] (Werkzeugrückzug auf den Ausgangspunkt) M99 (Rückkehr in das aufrufende Programm) %

20.2.2 Aufrufen von Makros aus jedem Satz (G66.1)

Auf den BefehlG66.1 P(Programmnummer) L(Wiederholungszahl) <Argumentenbezeichnung>

versteht die Steuerung alle nachfolgenden Sätze, als wären sie Argumentenbezeichnungen, und sieruft das Makro der unter der P-Adresse angegebenen Nummer. Dieses Makro wird dann so vieleMale wiederholt, wie es unter der L-Adresse angegeben ist.Der Befehl hat die selbe Wirkung, als jeder Satz ein Makroaufruf G65 wäre:

Das gewählte Makro wir solange weitergeerbt, bis der LöschbefehlG67

nicht programmiert wird.

Regeln für die Argumentenbezeichnung:

1. Im einschaltenden Satz (in dem G66.1 programmiert wurde):Die bei der Argumentenbezeichnung anwendbaren Adressen sind die gleichen, wie beieinem G65-Befehl.

2. In den G66.1 folgenden Sätzen:L: #12,P: #16,G: #10 mit der Bedingung, dass die Steuerung nimmt nur eine Bezugnahme auf eine G-

Adresse an. Werden mehrere G-Adressen programmiert, wird der Fehler 3005ILLEGALER G KODE angezeigt.

N: #14 Steht eine N-Adresse am Satzanfang (es kann höchstens die Adresse / einesbedingten Satzes vor ihr stehen), nimmt die Steuerung die zweite N-Adresse für einArgumgent an:

G66.1 P LX Y Z G65 P L X Y ZM S = G65 P L M SX G65 P L XG67

/N130 X12.3 Y32.6 N250

Satznummer#24=12.3#25=32.6#14=250

Page 172: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

172

Befindet sich die N-Adresse mitten eines Satzes (steht eine von / abweichendeAdresse vor ihr), wird sie als Argument ausgelegt:

Wurde die N-Adresse bereits einmal als Argument eingegeben, resultiert die nächsteBezugnahme auf die N-Adresse die Fehleranzeige 3064 FALSCHER MAKRO-AUSDRUCK.

Regeln die Satzabarbeitung bei G66.1:

Das gewählte Makro wird bereits im Satz aufgerufen, in dem der Code G66.1 angegeben wordenist, mit Betracht auf die Regeln der Argumentenbezeichnung im Punkt 1.Entsprechend den Regeln der Argumentenbezeichnung im Punkt 2 resultiert jeder NC-Satz von demden Code G66.1 enthaltenden Satz an bis zum den Code G67 enthaltenden Satz einen Makroaufruf.Das Makro wird nicht aufgerufen, wenn die Steuerung einen leeren Satz, z.B. N1240 findet, in demdie N-Adresse nur einmal angegeben worden ist. Genauso wird das Makro von einem eineMAkroanweisung enthaltenden Satz aus nicht aufgerufen.

20.3 Benutzerseitiger Makroaufruf auf G-Codes

Im Parameterfeld können höchstens 10 G-Codes bezeichnet werden, auf die Makroaufrufe erfolgensollen. In diesem Fall ist anstelle der Anweisungszeile

Nn G65 Pp <Argumentenbezeichnung>die Anweisungzeile

Nn Gg <Argumentenbezeichnung>einzugeben. Im Parameterfeld ist es anzugeben, welche Programmnummer der aufrufende G-Codeaufrufen soll. Die Codes G65, G66, G66.1, G67 können für diesen Zweck nicht angegeben werden.

G(9010): es ist der G-Code, der das Programm Nr. O9010 aufruft.G(9011): es ist der G-Code, der das Programm Nr. O9011 aufruft. :G(9019): es ist der G-Code, der das Programm Nr. O9019 aufruft.

Wird im Parameterfeld ein negativer Wert angegeben, generiert der G-Code einen modalen Aufruf.Z.B.: ist G(9011)=-120, resultiert G120 einen erblichen Aufruf im Programm. Der Typ des Aufrufeswird durch den Zustand des Parameters

MODGEQU=0 (Der Aufruf ist vom Typ G66)MODGEQU=1 (Der Aufruf ist vom Typ G66.1)

bestimmt. Ist der Parameter auf 0 gesetzt, wird das Makro am Ende eines jeden Verfahrsatzesaufgerufen. Hat der Parameter den Wert 1, wird das Makro bei jedem Satz aufgerufen.Wird ein standardisierter G-Code (z.B. G01) für den benutzerdefinierten Aufruf gewählt, und erfolgteine wiederholte Bezugnahme auf diesen Code im Stamm des Makros, resultiert diese Bezugnahmekeinen weiteren Makroaufruf. Die Steuerung legt diesen Code als einen gewöhnlichen G-Code ausund führt ihn dementsprechend durch.Steht in einem Benutzeraufruf, im Stammteil des Makros wiederholt eine Bezugnahme auf denaufrufenden G-Code, und ist dieser Code kein Standardcode, zeigt die Steuerung den Fehler 3005

X34.236 N320

#24=34.236#14=320

Page 173: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

173

ILLEGALER G KODE an. – Das Aufrufen von benutzerdefinierten M, S, T, A, B, C aus einem benutzerseitigen Aufrufen eines

G-Codes, – das Aufrufen eines benutzerseitigen G-Codes aus dem Aufrufen von benutzerdefinierten M, S, T,

A, B, Csind in Abhängigkeit des Parameterzustandes zugelassen:

FGMAC=0: nicht zugelassen (sie werden als gewöhnliche M-,S-,...G-Codes durchgeführt), FGMAC=1: zugelassen, also erfolgt ein neues Aufrufen.Argumentensatz der benutzerseitigen G-Codes: – Für die Codes vom Typ G65 oder G66 gelten der den G65 zugeordnete Argumentensatz, sowie

P und L. – Ist der Code vom Typ G66.1, so gelten die für diesen Code Besagten.Ein erbliches Aufrufen wir durch die Anweisung G67 gelöscht.

20.4 Benutzerseitiges Aufrufen von Makros auf einen M-Code

Im Parameterfeld können höchstens 10 verschiedene M-Codes bezeichnet werden, auf denen dasAufrufen von Makros erfolgen sollen. In diesem Fall ist die Anweisungszeile

Nn Mm <Argumentenangabe>einzugeben. In diesem Fall wird der M-Code der PLC nicht übergeben, sondern das Makro derentsprechenden Nummer wird aufgerufen.Im Parameterfeld ist die durch das Makro aufzurufende Programmnummer einzustellen.

M(9020): dieser M-Code ruft das Programm Nr. O9020 auf.M(9021): dieser M-Code ruft das Programm Nr. O9021 auf.

:M(9029): dieser M-Code ruft das Programm Nr. O9029 auf.

Durch einen M-Code wird immer ein nicht erblicher Aufruf bestimmt werden.Wird im Stammteil eines Makros in einem benutzerseitigen Aufrufen wiederholt auf denselben M-Code Bezug genommen, wird das Makro nicht von neuem aufgerufen, sondern der M-code wirdder PLC übergeben.Wenn im Makrostamm ein benutzerseitiges Aufrufen von G,S,T,A,B,C oder ein anderes Aufrufenvon M erfolgt: FGMAC=0: nicht zugelassen (sie werden als gewöhnliche M-,S-,...G-Codes durchgeführt), FGMAC=1: zugelassen, also erfolgt ein neues Aufrufen.Einem im Parameterfeld bezeichneten, einen Makroaufruf einleitenden M-Code können nur / und dieN-Adresse vorangehen.In einem Satz, der einen Makroaufruf durch M-Code enthält, kann nur ein M-Code stehen.Dessen Argumentensatz 1 lautet:

A B C D E F G H I J K L P Q R S T U V W X Y ZBei einer M-Funktion kann der Argumentensatz 2 auch benutzt werden.

20.5 Benutzerdefiniertes Aufrufen eines Unterprogrammes durch M-Code

Im Parameterfeld können höchstens 10 M-Codes, durch die Unterprogramme aufgerufen werdenkönnen. Anstelle der Anweisung

Nn Gg Xx Yy M98

Page 174: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

174

kann hier die folgende Anweisung eingegeben werden:Nn Gg Xx Yy Mm.

Der angegebene M-Code wird dann der PLC nicht übergeben, sondern das entsprechende Unter-programm wird aufgerufen.Im Parameterfeld ist anzugeben, welche Programmnummer der aufrufende M-Code aufrufen soll.

M(9000): es ist der M-Code, der das Programm Nr. O9000 aufruft.M(9001): es ist der M-Code, der das Programm Nr. O9001 aufruft.

:M(9009): es ist der M-Code, der das Programm Nr. O9009 aufruft.

Erfolgt eine wiederholte Bezugnahme auf den aufrufenden M-Code im Unterprogramm, wird dasUnterprogramm nicht wieder aufgerufen, sondern der M-Code wird der PLC übergeben.Wenn im Unterprogramm ein benutzerseitiges Aufrufen von G,S,T,A,B,C oder ein anderes Aufrufenvon M erfolgt: FGMAC=0: nicht zugelassen (sie werden als gewöhnliche M-,S-,...G-Codes durchgeführt), FGMAC=1: zugelassen, also erfolgt ein neues Aufrufen.

20.6 Benutzerdefiniertes Aufrufen von Unterprogrammen durch T-Code

Ein T-Wert, der neben dem Parameterwert T(9034) ins Programm eingegeben wird, wird der PLCnicht übergeben, sondern er veranlasst das Aufrufen des Unterprogrammes Nr. O9034.Dabei ist der Satz

Gg Xx Yy Ttmit den folgenden zwei Sätzen equivalent:

#199=tGg Xx Yy M98 P9034.

Der für die T-Adresse gegebene Wert wird als Argument der globalen Variablen #199 übergeben.Erfolgt eine erneute Bezugnahme auf die T-Adresse in dem durch den T-Code gestarteten Unter-programm, wird das Unterprogramm von neuem nicht aufgerufen, sondern der Wert der T-Adresseder PLC übergeben.Wenn im Unterprogramm ein benutzerseitiges Aufrufen von G,M,S,A,B,C erfolgt: FGMAC=0: nicht zugelassen (sie werden als gewöhnliche M-,S-,...G-Codes durchgeführt), FGMAC=1: zugelassen, also erfolgt ein neues Aufrufen.

20.7 Benutzerdefiniertes Aufrufen von Unterprogrammen durch S-Code

Ein S-Wert, der neben dem Parameterwert S(9033) ins Programm eingegeben wird, wird der PLCnicht übergeben, sondern er veranlasst das Aufrufen des Unterprogrammes Nr. O9033.Dabei ist der Satz

Gg Xx Yy Ssmit den folgenden zwei Sätzen equivalent:

#198=sGg Xx Yy M98 P9033.

Der für die S-Adresse gegebene Wert wird als Argument der globalen Variablen #198 übergeben.Erfolgt eine erneute Bezugnahme auf die S-Adresse in dem durch den S-Code gestarteten Unter-programm, wird das Unterprogramm von neuem nicht aufgerufen, sondern der Wert der S-Adresseder PLC übergeben.

Page 175: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

175

Wenn im Unterprogramm ein benutzerseitiges Aufrufen von G,M,T,A,B,C erfolgt: FGMAC=0: nicht zugelassen (sie werden als gewöhnliche M-,S-,...G-Codes durchgeführt), FGMAC=1: zugelassen, also erfolgt ein neues Aufrufen.

20.8 Benutzerdefiniertes Aufrufen von Unterprogrammen durch A-, B-, C-Codes

Werden die neben den Parameterwerten A(9030)=1 oder B(9031) oder C(9032) ins Programmeingegebenen A-,B- oder C-Werte der PLC, oder dem Interpolator nicht übergeben, veranlassendann die A-, B- oder C-Codes das Aufrufen der Unterprogramme O9030, O9031 oder O9032.In diesem Fall ist z.B. der Satz

Gg Xx Yy Bbmit den folgenden zwei Sätzen equivalent:

#196=bGg Xx Yy M98 P9031.

Der für die A-, B- und C-Adresse eingegebenen Werte werden den globalen Variablen #195, bzw.#196 und der für, bzw. #197 übergeben.Erfolgt eine erneute Bezugnahme in dem auf den A-, B- oder C-Code gestarteten Unterprogramm,wird das Unterprogramm nicht mehr gestartet, sondern der Wert der Adresse wird der PLC oderdem Interpolator übergeben.Wenn im Unterprogramm ein benutzerseitiges Aufrufen von G,M,S,T, erfolgt: FGMAC=0: nicht zugelassen (sie werden als gewöhnliche M-,S-,...G-Codes durchgeführt), FGMAC=1: zugelassen, also erfolgt ein neues Aufrufen.

20.9 Unterschied zwischen einem Unterpogramm- und einem Makroaufruf

– Ein Makroaufruf kann Argumente enthalten, ein Unterprogrammaufruf nicht. – Ein Unterprogrammaufruf verzweigt sich erst nach der Abarbeitung der im Satz programmierten

oder anderen Befehle. Ein Makroaufruf nur verzweigt sich. – Ein Makroaufruf verändert die Schachtelungstiefe der globalen Varianten, ein Unterprogrammauf-

ruf nicht. Z.B. derWert von #1 ist vor dem Aufrufen von G65 anders als im Makrostamm.Vor einem M98 ist der Wert von #1 derselbe, wie der von #1 im Unterprogramm.

20.9.1Mehrmaliger Aufruf

Von einem Makro aus kann ein anderes Makro aufgreufen werden. Das Aufrufen von Makros istbis zu einer vierfachen Schachtelungstiefe möglich, die einfachen und die erblichen Makroaufrufeinbegriffen. Samt den Unterprogrammaufrufen kann die maximale Schachtelungstiefe achtfach sein.Bei mehrmaligem Aufrufen von Makros des Typs G66 wird nach Abarbeiten jedes Bewegungssat-zes zuerst das zuletzt definierte Makro aufgerufen und von diesem Makro aus werden die vorherdefinierten Mokros in umgekehrter Reihenfolge aufgerufen. Beispiel:

Page 176: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

176

%O0001:N10 G66 P2N11 G1 G91 Z10 (1-11)N12 G66 P3N13 Z20 (1-13)N14 G67 (Löschen des Aufrufes G66 P3)N15 G67 (Löschen des Aufrufes G66 P2)N16 Z-5 (1-16)%

%O0002N20 X4 (2-20)N21 M99%

%O0003N30 Z2 (3-30)N31 Z3 (3-31)N32 M99%

Die Reihenfolge der Abarbeitung bei Inbetrachtnahme nur der Bewegungssätze:

Die erste der zwischen Klammern stehenden Zahlen bedeutet die Nummer der gerade abzuarbeiten-den Programmes. Die zweite Zahl ist die Nummer des gerade abzuarbeitenden Satzes.Die im Satz N14 angegebene Anweisung G67 löscht das im Satz N12 definierte Makro (O0003)und diese Anweisung im Satz N15 löscht das Makro im Satz N10 (O0002).Bei mehrmaligem Aufrufen von Makros des Typs G66.1 wird das zuletzt definierte Makro beimEinlesen eines jeden Satzes aufgerufen, wobei die Adressen dieses Satzes für Argumente betrachtetwerden. Nach Einlesen der Sätze des Makroprogrammes, wobei die Adressen der Makrosätze fürArgumente betrachtet werden, wird das vorher angegebene Makro aufgerufen.Wird von einem Makro aus wiederum ein Makro aufgerufen, wird auch die Ebene der lokalen Vari-ablen mit der Zunahme der Makroebene höher.

Hauptprogramm Makro Makro Makro Makro Ebene 0 Ebene 1 Ebene 2 Ebene 3 Ebene 4 O____ O____ O____ O____ : : : : : G65 PG65 P PG65 G65 P : : : : : : M99 M99 M99 M99

lokale Variablen Ebene 0 Ebene 1 Ebene 2 Ebene 3 Ebene 4 #1 #1 #1 #1 #1 : : : : #33 #33 #33 #33 #33

(1–11) (1–13) (1–16) Aufrufsniveau))) Niveau 0

(2–20) (3–30) (3–31)))) Niveau 1

(2–20) (2–20)))) Niveau 2

Page 177: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

177

Beim Anrufen des ersten Makros werden die lokalen Variablen #1 bis #33 des Hauptprogrammesabgespeichert und auf der Ebene 1 nehmen die lokalen Variablen die beim Anrufen angegebenenArgumentenwerte an. Beim erneuten Makroanruf von der ersten Ebene aus werden die lokalenVariablen der ersten Ebene von #1 bis #33 abgespeichert und auf der zweiten Ebene nehmen dielokalen Variablen die beim Anrufen angegebene Argumentenwerte an. Bei mehrmaligem Anrufenwerden die lokalen Variablen der vorangehenden Ebene abgespeichert und auf der nächsten Ebenenehmen die lokalen Variablen die beim Anrufen angegebenen Argumentenwerte an. Bei M99, wenn die Steuerung aus dem angerufenen Makro in das anrufende Programm zurückkehrt, werden dieabgespeicherten lokalen Variablen in den Zustand wiederhergestellt, in dem sie beim Anrufenabgespeichert worden sind.

20.10 Format des Benutzermakros

Das Format eines Benutzermakros ist gleich wie das der Unterprogramme:O(Programmnummer):Befehle:M99

Die Programmnummer kann beliebig sein, aber die Programmnummer von O9000 bis O9034 sindfür spezielle Anrufe reserviert.

20.11 Variablen der Programmsprache

Im Hauptrogramm, den Unterprogrammen und den Makros können Variablen anstelle konkreterZahlenwerte den einzelnen Adressen gegeben werden. Die Variablen können mit Werten innerhalbder zugelassenen Grenzen behaftet sein. Durch die Anwendung der Variablen wird dasProgrammieren flexibler.In den Haupt- und Unterprogrammen können die entsprechenden Massangaben durch die Anwen-dung von globalen Variablen parametriert werden, so müssen keine neue Programme für ähnlicheaber verschieden dimensionierte Werkstücke erstellt werden, durch Überschreiben der globalenVariablen kann ein neues Werkstück bearbeitet werden.Durch die Anwendung der Variablen ist ein Makro mehr flexibler, als ein traditionelles Unterprog-ramm. Während ein Unterprogramm keine Parameter übernehmen kann, können die MakrosArgumente oder Parameter über die lokalen Variablen übernehmen.

20.11.1 Identifizierung der Variablen

Zahlreiche Variablen können angewandt werden. Jede Variante wird durch ihre Nummer identifi-ziert. Eine Bezugnahme auf eine Variable wird durch das Zeichen # eingeleitet. Die darauffolgendeZahl bestimmt die Nummer der Variablen. Beispielsweise:

#12#138#5106

Die Bezugnahme auf eine Variable kann durch eine Formel auch erfolgen: #[<Formel>]Beispielsweise:

Page 178: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

178

#[#120] bedeutet: die Nummer der bezogenen Variablen bnefindet sich in der Variable Nr.120.

#[#120-4] bedeutet: Die Nummer der bezogenen Variablen ergibt sich, wenn aus dem inder Variablen Nr. 120 befindlichen Zahlenwert 4 abgezogen wird.

20.11.2 Bezugnahme auf eine Variable

In den Worten eines Programmszatzes können die verschiedenen Adressen nicht nur Zahlenwerte,sondern die Werte von Variablen annehmen. Bei einer Bezugnahme auf eine Variable nach derAdresse kann auch das Minuszeichen "-" , bzw. der I-Operator benutzt werden, wen es beiZahlenwerten zugelassen ist. Beispielsweise:

G#102 wenn #102=1.0, dann ist diese Bezugnahme gleich mit G1.XI-#24, wenn #24=135.342, dann ist diese Bezugnahme gleich mit XI-135.342.

– Nach den Adressen O einer Programmnummer, N einer Satznummer und / eines bedingtenSatzes ist eine Bezugnahme auf eine Variable nicht zugelassen. Die N-Adresse wird für eineSatznummer betrachtet, wenn ihr höchstens die /-Adresse vorangeht.

– Die Nummer einer Variablen kann durch keine Variable ersetzt werden, d.h. ##120 kann nichtgeschrieben werden. Die richtige Angabe lautet: #[#120].

– Wird eine Variable nach einer Adresse benutzt, kann der Wert der Variable die Grenzen des fürdie Adresse zugelassenen Wertbereiches nicht überschreiten. Beispielsweise löst dieBezugnahme M#112 eine Fehleranzeige aus, wenn #112=5630 ist.

– Wird eine Variable hinter einer Adresse benutzt, wird der Wert der Variablen auf den der Adres-se entsprechenden Zahlenwert auf-, bzw. abgerundet. Beispiel:

bei #112=1.23 wird M#112=M1bei #112=1.6 wird M#112=M2.

20.11.3 Leere Variablen

Der Wert einer Variablen, auf die noch keine Bezugnahme erfolgte, ist leer. Der Wert der Variablen#0 ist immer leer:

#0=<leer>

20.11.4 Zahlenmässige Darstellung von Variablen

Die Variablen werden auf eine 32-bit-Mantisse und einer 8-bit Charakteristik dargestellt:Variable=M*2C

Darstellung einer leeren Variablen: M=0, C=0Darstellung einer Variablen des Wertes 0: M=0, C=-128Vergleich zwischen einer leeren Variablen und einem Variablen des Wertes 0:

Verweis auf eine leere Variable in einer Adresse:

wenn #1=(leer)

G90 X20 Y#19

G90 X20

wenn #1=0

G90 X20 Y#19

G90 X20 Y0

Page 179: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

179

Eine leere Variable in einer wertzuweisenden Anweisung:

wenn #1=(leer)

#2=#19

#2=(leer)

#2=#1*39

#2=0

#2=#1+#19

#2=0

wenn #1=0

#2=#19

#2=0

#2=#1*39

#2=0

#2=#1+#19

#2=0

Unterschied zwischen leeren Variablen und denen vom Wert 0 bei Bedingungsüberprüfung:

wenn #1=(leer)#1 EQ #0

9erfüllt

#1 NE 09

erfüllt

#1 GE #09

erfüllt

#1 GT 09

erfüllt

wenn #1=0

#1 EQ #09

nicht erfüllt

#1 NE 09

nicht erfüllt

#1 GE #09

nicht erfüllt

#1 GT 09

nicht erfüllt

20.12 Typen der Variablen

Nach der Anwendungsart und den Eigenschaften sind die Variablen auf lokale und globale Variablenund Systemvariablen gruppiert. Die entsprechende Gruppe ist durch die Nummer einer Variablenbezeichnet.

20.12.1 Lokale Variablen: #1 - #33

Eine lokale Variable ist eine Variable, die von einem Makroprogramm an einer gegebenen Stelle,lokal benutzt wird. Wenn das Makro A das Makro B aufruft, und eine Bezugnahme auf die lokaleVariable #i sowohl im Makro A als auch im B erfolgt, geht der Wert der lokalen Variablen #i aufder Ebene von Makro A nach dem Aufrufen des Makros B nicht verloren und er wird nichtüberschrieben, trotz dem dass auch im Makro B eine Bezugnahme auf #i erfolgt. Die lokalenVariablen werden zum Übertragen von Argumenten benutzt. Die Übereinstimmung zwischen derArgumentenadresse und den lokalen Variablen ist in der Tabelle des das einfache Aufrufen von

Page 180: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

180

Makros (G65) beschreibenden Kapitels zu sehen.Eine lokale Variable, deren Adresse in der Argumentenbezeichnung nicht angegeben ist, ist leer undsie frei anwendbar ist.

20.12.2 Globale Variablen: #100 - #199, #500 - #599

Im Gegensatz zu den lokalen Variablen sind die globalen Variablen nicht nur auf den gleichenEbenen der Programmaufrufe, sondern über das gesamte Programm gleich, unabhängig davon, dasssie sich im Hauptprogramm, in einem Unterprogramm, oder einem Makro und auf welcher Ebeneeines Makros befinden. Wurde #i in einem Makro benutzt und mit einem Wert behaftet, bewährt siediesen Wert solange sie nicht überschrieben wird. Dir globalen Variablen spielen keine spezielleRolle und sie sind frei anwendbar.Die globalen Variablen von #100 bis #199 werden beim Ausschalten gelöscht.Der Wert der globalen Variablen von #500 bis #599 wird auch nach einem Ausschalten der

Steuerung aufbewahren.Die Makrovariablen von #500 bis #599 können mit der Hilfe der Parameter WRPROT1 undWRPROT2 für schreibgeschützt gemacht werden. Für den Parameter WPROT1 wird das ersteElement, für den WPROT2 das letzte Element des zu schützenden Blocks eingegeben. Sollen z.B.die Variablen von #530 bis #540 schreibgeschützt werden, dann sind die Parameter aufWPROT1=530, bzw. WPROT2=540 zu setzen.

Page 181: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

181

20.12.3 Systemvariablen

Die Systemvariablen sind verbindlich anwendbare Variablen, die Informationen über den Systemzu-stand liefern.

Interface-Eingangssignale: #1000 - #1015, #1032

Über die Systemvariablen von #1000 bis #1015 können 16 Interface-Eingangssignale einzeln abge-fragt werden:

Bezeichnung der Interface-Eingänge lautSystemvariablen Auslegung des PLC-Programmes

#1000 I[CONST+000] #1001 I[CONST+001] #1002 I[CONST+002] #1003 I[CONST+003] #1004 I[CONST+004] #1005 I[CONST+005] #1006 I[CONST+006] #1007 I[CONST+007] #1008 I[CONST+010] #1009 I[CONST+011] #1010 I[CONST+012] #1011 I[CONST+013] #1012 I[CONST+014] #1013 I[CONST+015] #1014 I[CONST+016] #1015 I[CONST+017]

Wo CONST=I_LINE*10 ist und I_LINE ist ein Parameter. So können zwei beliebige Interface-Eingangsbyte abgefragt werden. Die Werte der obigen Variablen:

0: wenn der Kontakt am Eingang offen ist,1: wenn der Kontakt am Eingang geschlossen ist.

Auf der Variablen #1032 können die obigen 16 Eingänge gleichzeitig abgefragt werden. Der abge-fragte Wert lautet in der Abhängigkeit der den einzelnen Abfragungen zugeordneten Systemvariab-len:

Ist also 24V an die Eingänge #1002 und #1010 gelegt und sind die anderen Eingänge offen, beträgtder Wert der Variablen #1032:

Die Variablen der Interface-Eingänge sind nur lesbar und sie k0nnen nicht an der linken Seite einesarithmetischen Ausdruckes stehen.

Page 182: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

182

Interface-Ausgangssignale: #1100 — #1115, #1132

Über die Systemvariablen von #1100 bis #1115 können 16 Interface-Ausgangssignale ausgegebenwerden:

Bezeichnung der Interface-Ausgänge lautSystemvariablen Auslegung des PLC-Programmes

#1100 Y[CONST+000] #1101 Y[CONST+001] #1102 Y[CONST+002] #1103 Y[CONST+003] #1104 Y[CONST+004] #1105 Y[CONST+005] #1106 Y[CONST+006] #1107 Y[CONST+007] #1108 Y[CONST+010] #1109 Y[CONST+011] #1110 Y[CONST+012] #1111 Y[CONST+013] #1112 Y[CONST+014] #1113 Y[CONST+015] #1114 Y[CONST+016] #1115 Y[CONST+017]

Wo CONST=O_LINE*10 ist und O_LINE ist ein Parameter. So können zwei beliebige Interface-Ausgangsbyte abgefragt werden. Die Werte der obigen Variablen:

0: wenn der Kontakt am Ausgang offen ist,1: wenn der Kontakt am Ausgang geschlossen ist.

Auf der Variablen #1132 können die obigen 16 Ausgänge gleichzeitig abgefragt werden. Der abge-fragte Wert lautet in der Abhängigkeit der den einzelnen Abfragungen zugeordneten Systemvariab-len:

Werden also die Ausgänge #1102 und #1109 eingeschaltet und bleiben die anderen Ausgänge of-fen, ist der folgende Wert auf der Variablen #1132 auszugeben:

Page 183: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

183

Werkzeugkorrekturwerte: #10001 — #13999

Die Werkzeugkorrekturwerte können an den Parametern #10001 — #13999 abgelesen, bzw ein-gegeben werden.

Korrekturnummer H D

geometrischer Verschleiss geometrischer Verschleiss

1

2

:

999

#10001

#10002

:

#10999

#11001

#11002

:

#11999

#12001

#12002

:

#12999

#13001

#13002

:

#13999

Werkstücknullpunkt-Verschiebungen: #5201 — #5328

Die Werte der Werkstücknullpunkt-Verschiebungen können an den Variablen #5201—#5328 ab-gelesen, bzw. eingegeben werden.

Nummer derVariablen

Wert der Variablen Werkstück-Koordinaten-system

#5201#5202

: #5208

gemeinsame Werstücknullpunkt-Verschiebung Achse 1gemeinsame Werstücknullpunkt-Verschiebung Achse 2

:gemeinsame Werstücknullpunkt-Verschiebung Achs 8

gültig für alle Werkstück-Koordinaten-systeme

#5221#5222

: #5228

Werstücknullpunkt-Verschiebung Achse 1Werstücknullpunkt-Verschiebung Achse 2

:Werstücknullpunkt-Verschiebung Achse 8

G54

#5241#5242

: #5248

Werstücknullpunkt-Verschiebung Achse 1Werstücknullpunkt-Verschiebung Achse 2

:Werstücknullpunkt-Verschiebung Achse 8

G55

#5261#5262

: #5266

Werstücknullpunkt-Verschiebung Achse 1Werstücknullpunkt-Verschiebung Achse 2

:Werstücknullpunkt-Verschiebung Achse 6

G56

#5281#5282

: #5288

Werstücknullpunkt-Verschiebung Achse 1Werstücknullpunkt-Verschiebung Achse 2

:Werstücknullpunkt-Verschiebung Achse 8

G57

#5301#5302

: #5308

Werstücknullpunkt-Verschiebung Achse 1Werstücknullpunkt-Verschiebung Achse 2

:Werstücknullpunkt-Verschiebung Achse 8

G58

#5321#5322

: #5328

Werstücknullpunkt-Verschiebung Achse 1Werstücknullpunkt-Verschiebung Achse 2

:Werstücknullpunkt-Verschiebung Achse 8

G59

Page 184: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

184

Die Nummerierung der Achsen bedeuetet die physikalische Achsnummer. Der Zusammenhangzwischen der Achsnummer und der Achsbenennung wird von dem Maschinenhersteller über dieParametergruppe AXIS bestimmt. Im allgemeinen sind die Achse 1 zur X-Adresse, die Achse 2 zurY-Adresse und die Achse 3 zur Z-Adresse zugeordnet, aber davon abweichende Angaben sindmöglich.

Fehleranzeige: #3000

Durch die Angabe#3000 = nnn(FEHLERANZEIGE)

können nummerierte (nnn: max. drei Ziffern) und/oder textliche Fehleranzeigen definiert werden. EinText muss zwischen Klammern (.) liegen. Die Länge einer Fehleranzeige kann höchstens 25Charaktere betragen.Wird ein Fehler in einem Makro während der Programmabarbeitung wahrgenommen, d.h. läuft dasProgramm in eine Abzweigung, in der die Variable #3000 einen Wert hat, wird das Programm biszum vorangehenden Satz abgearbeitet, dann wird die Abarbeitung aufgehoben und auf demBildschirm erscheint die zwischen Klammern angegebene Fehleranzeige bzw. der Kode derAnzeige in der Form 4nnn, d.h. 4000 wird zur auf Wert #3000 angegebenen nnn-Nummeraddiert.Wurde keine Nummer angegeben, so wird der Kode der Anzeige 4000 sein. Wurde keinText angegeben, so erscheint nur der Kode. Der Fehlerzustand kann durch die RESET-Tastebeseitigt werden.

Millisekunden-Zeitmessung: #3001

Der Wert der Variablen #3001 kann eingegeben und abgelesen werden.Ein Zeitraum zwischen zwei Zeitpunkten kann in Millisekunden, bei einer Genauigkeit von ca. 20 msgemessen werden. Der Zähler von #3001 überläuft bei 65536. Beim Einschalten wird von 0 anaufwärts gezählt. Bei eingeschalteter Steuerung wird stetig gezählt.

Messen der Zerspanungszeit (Hauptzeit): #3002

Der Wert der Variablen #3001 kann eingegeben und abgelesen werden.Ein Zeitraum zwischen zwei Zeitpunkten kann in Minuten, bei einer Genauigkeit von ca. 20 msgemessen werden. Beim Einschalten startet der Wert der Variablen #3002 bei einer bestimmtengültigen Wert. Das Zählen erfolgt aufwärts.Die Zeitmessung erfolgt bei leuchtender START-Lampe, d.h. beim Start-Zustand der Steuerung.Diese Variable befindet sich im Zeitglied CUTTING2 des Parameterspeichers.

Unterdrücken der satzweisen Abarbeitung: #3003

Wenn #3003=1, wird die satzweise Abarbeitung am Ende eines Satzes solange nicht gestoppt, bisder Wert dieser VAriablen nicht 0 annimmt.Nach dem Einschalten der Steuerung und durch RESET auf den Programmanfang erhält die Variab-le den Wert 0.

#3003 satzweise Abarbeitung 0 nicht unterdrückt 1 unterdrückt

Page 185: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

185

Vorschub Halt, Vorschubkorrektur, Genauhalt unterdrücken: #3004

Beim Unterdrücken der Funktion Vorschub Halt hält der Vorschub nach dem Andrücken der Stop-Taste an, wenn die Unterdrückung freigegeben wird.Beim Unterdrücken der Vorschubkorrektur nimmt die Steuerung den Vorschubkorrekturwert für100% an, solange die Unterdrückung nicht freigegeben wird.Beim Unterdrücken der Funktion Genauhalt führt die Steuerung keine Überprüfung, solange dieUnterdrückung nicht freigegeben wird.Beim Einschalten und durch RESET auf den Programmanfang wird die Variable auf 0 gesetzt.

#300401234567

Genauhalt00001111

Vorschubkorrektur00110011

Vorschub Halt01010101

0: die Funktion ist wirksam1: die Funktion ist unterdrückt

Halt mit Anzeige: #3006

Auf die Wirkung einer Werteingabe für#3006=nnn(ANZEIGE)

wird die Programmabarbeitung unterbrochen und auf dem Bildschirm erscheint die Nachrichtzwischen Klammern bzw. der Kode der Anzeige in der Form 5nnn, d.h. 5000 wird zur auf demWert #3006 angegenenen nnn-Nummer addiert. Wurde keine Nummer angegeben, so wird derKode der Anzeige 5000 sein. Wurde kein Text angegeben, so erscheint nur der Kode. DieProgrammabarbeitung wird auf Andrücken der Start-Taste fortgesetzt und die Nachricht wirdgelöscht. Die Länge der Nachricht kann höchstens 25 Charaktere betragen. Diese Anweisung istsehr nützlich in dem Fall, wenn ein bedienerseitiger Eingriff während der Programmabarbeitungerforderlich ist.

Spiegelung: #3007

Durch Ablesen der Variablen #3007 kann festgestellt werden, für welche Achse ein gültiger Spiege-lungsbefehl besteht. Diese Variable ist nur lesbar.Binäre Auslegung der Variablen:1 1 1 1 1 15 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0

Achse 1Achse 2Achse 3..Achse 8

Page 186: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

186

Auslegung der einzelnen bites:0: keine Spiegelung1: Spiegelung eingeschaltet

Beträgt der Wert der Variablen z.B. 5, dann ist die Spiegelung in den Achsen 1 und 3 eingeschaltet.Die Achsnummer bedeutet die physikalische Achsnummer. Die Zuordnung der Achsnamen zu denphysikalischen Achsnummern ist durch den Parameter bestimmt.

Anzahl Fertigstücke, Anzahl der zu verfertigenden Werkstücke, #3901, #3902

Die Steuerung sammelt die Anzahl der bearbeiteten Werkstücke im Zähler #3901. Bei Durchführenjeder M02-, M30- oder durch Parameter bestimmten M-Funktion wird der Zählerinhalt um 1erhöht. Als die Anzahl der bearbeiteten Werkstücke die nötige Stückzahl erreicht hat (Zähler#3902), bekommt die PLC eine Nachricht über einen Flag.

Anzahl der bearbeiteten Werkstücke #3901Anzahl der zu verfertigenden Werkstücke #3902

Der Zähler #3901 ist am Parameter PRTTOTAL, der Zähler #3902 ist am Parameter PRTREQRDdes Parameterspeichers befindlich.

Erbliche Informationen: #4001 — #4130, #4201 — #4330

Die im vorangehenden Satz gültigen erblichen Befehle können durch Ablesen der Systemvariablen#4001 — #4130 bestimmt werden.Die für die momentan abzuarbeitenden Satz gültigen erblichen Befehle können durch das Ablesender Variablen #4201 — #4330 bestimmt werden.

System-varia-blen

erbliche Informationen desvorangehenden Satzes

System-varia-blen

erbliche Informationendes in der Abarbeitungbefindlichen Satzes

#4001:

#4020#4101#4102#4103#4107#4108#4109#4111#4113#4114#4115#4119#4120

G-Codes Gruppe 1:

G-Codes Gruppe 20A-CodeB-CodeC-CodeD-CodeE-CodeF-CodeH-Code

zuerst eingelesene M-CodeSatznummer: N

Programmnummer: OS-CodeT-Code

#4201:

#4220#4301#4302#4303#4307#4308#4309#4311#4313#4314#4315#4319#4320

G-Codes Gruppe 1:

G-Codes Gruppe 20A-CodeB-CodeC-CodeD-CodeE-CodeF-CodeH-Code

zuerst eingelesene M-CodeSatznummer: N

Programmnummer: OS-CodeT-Code

Page 187: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

187

Positionsinformationen: #5001 — #5106

Positionen an Satzenden

System-variable

PositionsinformationEinlesen währendeiner Bewegung

#5001#5002 :#5008

Position der Achse 1 am SatzendePosition der Achse 2 am Satzende

:Position der Achse 8 am Satzende

möglich

Die Position am Satzende wird – im aktuellen Werkstück-Koordinatensystem, – bei Inbetrachtnahme der Koordinatenverschiebungen, – in rechtwinkligen Koordinaten, – ohne Inbetrachtnahme aller Korrekturen (Längen- u. Radienkorrekturen, Werkzeugverschiebun-

gen) dem Parameter übergeben.

Momentanpositionen im Maschinen-Koordinatensystem

System-variable

PositionsinformationEinlesen währendeiner Bewegung

#5021#5022 :#5028

Momentanposition der Achse 1 (653)Momentanposition der Achse 2 (G53)

:Momentanposition der Achse 8 (G53)

unmöglich

Die Momentanposition (G53) wird – im Maschinen-Koordinatensystem, – ohne Inbetrachtnahme aller Korrekturen (Längen- u. Radienkorrekturen, Werkzeugverschiebun-

gen) dem Parameter übergeben.

Momentanpositionen im Werkstück-Koordinatensystem

System-variable

PositionsinformationEinlesen währendeiner Bewegung

#5041#5042 :#5048

Momentanposition der Achse 1Momentanposition der Achse 2

:Momentanposition der Achse 8

unmöglich

Die Momentanposition (G53) wird – im aktuellen Werkstück-Koordinatensystem, – bei Inbetrachtnahme der Koordinatenverschiebungen, – in rechtwinkligen Koordinaten, – bei Inbetrachtnahme aller Korrekturen (Längen- u. Radienkorrekturen, Werkzeugverschiebun-

gen)dem Parameter übergeben.

Page 188: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

188

Abb. 20.12.3-1

Abtastpositionen

System-variable

PositionsinformationEinlesen währendeiner Bewegung

#5061#5062 :#5068

Abtastposition der Achse 1 (G31)Abtastposition der Achse 2 (G31)

:Abtastposition der Achse 8 (G31)

möglich

Die Position im Satz G31, in der das Abtastsignal ansteht, wird – im aktuellen Werkstück-Koordinatensystem, – bei Inbetrachtnahme der Koordinatenverschiebungen, – in rechtwinkligen Koordinaten, – bei Inbetrachtnahme aller Korrekturen (Längen- u. Radienkorrekturen, Werkzeugverschiebun-

gen)dem Parameter übergeben.Steht das Abtastsignal nicht an, nehmen die obigen Variablen die im G31-Satz programmierte End-position an.

Werkzeuglängen-Korrekturen

System-variable

PositionsinformationEinlesen währendeiner Bewegung

#5081#5082 :#5088

für die Achse 1 eingegebene Längenkorrekturfür die Achse 2 eingegebene Längenkorrektur

:für die Achse 8 eingegebene Längenkorrektur

unmöglich

Die Ablesbare Werkzeuglängen-Korrektur ist die für den in Abarbeitung befindlichen Satz gültigeLängenkorrektur.

Page 189: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

189

Abb. 20.12.3-2

Schleppabstand

System-variable

PositionsinformationEinlesen währendeiner Bewegung

#5101#5102 :#5108

Schleppabstand in der Achse 1Schleppabstand in der Achse 2

Schleppabstand in der Achse 8

unmöglich

20.13 Anweisungen der Programmiersprache

Bei der Beschreibung wird der Ausdruck#i = <Formel>

benutzt. Ein <Formel> kann arithmetische Operationen, Funktionen, Variablen und Konstantenenthalten.Im allgemeinen erfolgt die Bezugnahme auf die Variablen #j und #k.Ein <Formel> kann nicht nur an der rechten Seite einer wertzuweisenden Anweisung, in einem NC-Satz können auch die verschiedenen Adressen ein Formel anstatt eines konkreten Zahlenwertesoder einer Variablen annehmen.

20.13.1 Die wertzuweisende Anweisung: #i = #j

Der Code der Anweisung lautet: =Auf diese Anweisung nimmt die Variable #i den Wert der Variablen #j an, d.h. der Wert der Vari-ablen #j wird #i übergeben.

20.13.2 Arithmetische Operationen und Funktionen

Operationen mit einem Operanden

Minus mit einem Operanden: #i = –#jOperationscode: –Als Ergebnis der Operation nimmt die Variable #i den Absolutwert von #j, aber mit entge-

Page 190: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

190

gengesetztem Vorzeichen an.

Arithmetische Negation: #i = NOT #jOperationscode: NOTAuf die Wirkung der Operation wird die Variable # zuerst in eine 32-Bit-Zahl mit festemDezimalpunkt umgewandelt. Kann die so umgewandelte Zahl auf 32 Bits nicht dargestelltwerden, erfolgt die Fehleranzeige 3091 FALSCHE OPERATION # . Dann werden alle 32Bits dieser Festpunktzahl negiert und die so entstandene Zahl wird wiederum in eine Zahl mitschwebendem Dezimalpunkt umgewandelt und in der Variablen #i abgelegt.

Additive arithmetische Operationen

Addition: #i = #j + #kOperationscode: +Auf die Wirkung der Operation nimmt die Variable #i die Summe der Werte der Variablen#j und #k an.

Subtraktion: #i = #j – #kOperationscode: –Auf die Wirkung der Operation nimmt die Variable #i die Differenz der Werte der Variablen#j und #k an.

Arithmetisches ODER: #i = #j OR #kOperationscode: ORAuf die Wirkung der Operation werden die logischen Summen der Variablen #j und #kbitweise in die Variable #i, für alle 32 Bits übergeben. An die Stelle, an der die beidenZahlen mit 0 belegt sind, wird 0 als Resultat eingeschrieben, ansonsten 1.

Arithmetisches ausschliessliches ODER: #i = #j XOR #kOperationscode: XORBei dieser Operation werden die gleichen Stellenwerte der Variablen #j und #k verglichen.An den Stellen, wo gleiche Zahlen gefunden werden, erhält die Variable #i eine 0, an denungleichen Stellen erhält sie 1.

Multiplikative arithmetische Operationen

Multiplikation: #i = #j * #kOperationscode: *Auf die Wirkung der Operation nimmt die Variable #i das Produkt der Werte der Variablen#j und #k an.

Division: #i = #j / #kOperationscode: /Auf die Wirkung der Operation nimmt die Variable #i den Quotienten der Werte der Vari-ablen #j und #k an. Der Wert von #k kann nicht 0 sein, sonst erfolgt die Fehleranzeige 3092DIVISION MIT 0 #.

Modulbildung: #i = #j MOD #kOperationscode: MOD

Page 191: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

191

Auf die Wirkung der Operation nimmt die Variable #i den Rest der Dividierung der Variab-len #j und #k an. Der Wert von #k kann nicht 0 sein, sonst erfolgt die Fehleranzeige 3092DIVISION MIT 0 #. Beispiel: #120 = 27 MOD 4. Der Wert der Variablen #120 wird 3.

Arithmetisches UND: #i = #j AND #kOperationscode: ANDAuf die Wirkung der Operation erhalten alle 32 Bits der Variablen #i das logische Produktder bitweisen Werten der Variablen #j und #k. Sind die gleichen Stellen mit 1 belegt, dannist das Resultat 1, sonst 0.

Funktionen

Quadratwurzel: #i = SQRT #jFunktionscode: SQRTAuf die Wirkung der Operation nimmt die Variable #i die Quadratwurzel der Variablen #jan. Der Wert der Variablen #j kann nicht negativ sein.

Sinus: #i = SIN #jFunktionscode: SINDie Variable #i nimmt den Sinus von #j an. Der Wert von #j versteht sich stets in Grad.

Kosinus: #i = COS #jFunktionscode: COSDie Variable #i nimmt den Cosinus von #j an. Der Wert von #j versteht sich stets in Grad.

Tangens: #i = TAN #jFunktionscode: TANDie Variable #i nimmt den Tangens der Variablen #j an. Der Wert von #j versteht sich stetsin Grad. Der Wert von #j kann nicht (2n+1)*90° sein, wobei n=0, ±1, ±2, ... sein.

Arkussinus: #i = ASIN #jFunktionscode: ASINDie Variable #i nimmt den Arkussinus von #j an. Die Bedingung -1<= #j<=1 soll sich erfül-len. Das Resultat, d.h. der Wert von #i liegt zwischen +90° und -90°.

Arkuskosinus: #i = ACOS #jFunktionscode: ACOSDie Variable #i nimmt den Arkuskosinus von #j an. Die Bedingung -1 <= #j <= 1 soll sicherfüllen. Das Resultat, d.h. der Wert von #i liegt zwischen 0° und 180°.

Arkustangens: #i = ATAN #jFunktionscode: ATANDie Variable #i nimmt den Arkustangens von #j an. Das Resultat, d.h. der Wert von #i liegtzwischen +90° und -90°.

Exponential:#i = EXP #jFunktionscode: EXPAuf die Wirkung der Operation nimmt die Variable #i den Wert der #j-sten Potenz einernatürlichen Zahl (e).

Page 192: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

192

Natürlicher Logarithmus: #i = LN #jFunktionscode: LNAuf die Wirkung der Operation nimmt die Variable #i den natürlichen Logarithmus der Zahl#j an. Der Wert von #j kann nicht negativ oder 0 sein.

Absolutwert: #i = ABS #jFunktionscode: ABSAuf die Wirkung der Operation nimmt die Variable #i den Absolutwert der Variablen #j an.

Umwandeln von Binärzahlen in binär codierte Dezimalform: #i = BCD #jFunktionscode: BCDAuf die Wirkung der Operation nimmt die Variable #i den BCD-Wert der Variablen #j an.Der Wertbereich der Variablen #j erstreckt sich von 0 bis 99999999.

Umwandeln einer binär codierten Dezimalzahl in Binärform: #i = BIN #jFunktionscode: BINAuf die Wirkung der Operation nimmt die Variable #i den binären Wert der Variablen #j an.Der Wertbereich der Variablen #j erstreckt sich von 0 bis 99999999. Die Zahlen in denTetraden der Variablen #j können nicht grösser als 9 sein.

Abrunden im Absolutwert: #i = FIX #jFunktionscode: FIXDie Operation lässt den Bruchteil der Variablen #j weg und -bergibt den Ganzteil der Vari-ablen #i.Beispielsweise:

#130 = FIX 4.8 = 4#131 = FIX -6.7 = -6

Aufrunden im Absolutwert: #i = FUP #jFunktionscode: FUPDie Operation lässt den Bruchteil der Variablen #j weg und gibt dem Ganzteil 1 zu.Beispiel:

#130 = FUP 12.1 = 13#131 = FUP -7.3 = -8

Abarbeitungsreihenfolge zusammengesetzter arithmetischer Operationen

Die oben aufgeführten arithmetischen Operationen und Funktionen können miteinander kombiniertwerden. Die Präzedenzregel, d.h. die Reihenfolge der Abarbeitung der Operationen ist folgend:Funktionen — multiplikative arithmetische Operationen — additive arithmetische Operationen.Beispielsweise:

Ändern der Abarbeitungsreihenfolge von Operationen

Durch die Anwendung der eckigen Klammern [und] kann die Reihenfolge der Durchführung der

#110 = #111 + #112 * COS #1131

2 Reihenfolge der Operationen3

Page 193: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

193

Operationen abgeändert werden. Die Klammerung kann fünffach geschachtelt werden. Bei einergrösseren Schachtelungstiefe zeigt die Steuerung den Fehlercode 3064 FALSCHERMAKROAUSDRUCK an.Beispiel für eine dreifache Schachtelung:

Die Zahlen zeigen die Abarbeitungsreihenfolge der Operationen an. Es ist ersichtlich, dass für dieAbarbeitungsreihenfolge der Operationen zwischen Klammern auf der gleichen Ebene die obenerwähnte Prezedenzregel gilt.

20.13.3 Bedingte Ausdrücke

Die Programmiersprache kennt die folgenden bedingten Ausdrücke:gleich: #i EQ #jungleich: #i NE #jgrösser als: #i GT #jkleiner als: #i LT #jgrösser oder gleich: #i GE #jkleiner oder gleich: #i LE #j

An den beiden Seiten eines bedingten Ausdruckes können die Variablen durch ein Formel ersetztwerden. Die obengenannten bedingten Ausdrücke können einer der bedingungsprüfendenAnweisungen IF oder WHILE folgen.L Anmerkung: Da im Hintegrund der obigen bedingten Ausdrücke Addition und Substraktion

stehen, müssen die möglichen Fehler in Kauf genommen werden.

20.13.4 Unbedingter Sprung: GOTOn (GEHE)

Auf die Wirkung der Anweisung GOTOn setz sich die Programmabarbeitung am n-ten Satzdesselben Programmes, ohne Bedingung fort. Die Zahl n kann durch eine Variable, oder ein Formelersetzt werden. Die Satznummer, auf die durch die Anweisung GOTO gesprungen wird, muss amSatzanfang stehen. Findet die Steuerung die Satznummer nicht, zeigt sie den Fehlercode 3070KEINE SATZNUMMER P an.

20.13.5 Bedingter Sprung: IF[<Bedingung>] GOTOn (WENN[ <..> GEHE)

Wird die unbedingt zwischen eckigen Klammern stehende <Bedingung> erfüllt wird, setzt dieSteuerung der Programmabarbeitung am n-ten Satz desselben Programmes fort.Wird die [<Bedingung>] nicht erfüllt, setzt sich die Programmabarbeitung mit dem nächstfolgendenSatz fort.Erfolgt keine Bedingungsprüfung nach IF, zeigt die Steuerung den Fehlercode 3091 FALSCHEOPERATION MIT # an. Wird ein Syntaxfehler bei der Bedingungsprüfung gefunden, zeigt dieSteuerung den Fehlercode 3064 FALSCHER MAKROAUSDRUCK an.

#120 = COS [ [ [#121 - #122] * #123 + #125] * #126]1

23

45

Page 194: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

194

20.13.6 Bedingte Anweisung: IF[<Bedingung>] (THEN)Anweisung (WENN[ <..> DANN)

Wird die [<Bedingung>] erfüllt, dann wird die Anweisung hinter THEN durchgeführt.Wird die [<Bedingung>] nicht erfüllt, setzt sich die Programmabarbeitung mit den nächstfolgendenSatz fort.THEN kann in der Anweisung weggelassen werden, die Reihenfolge der Durchführung derAnweisungszeile

IF[<Bedingung>] Anweisungbleibt unverändert.

20.13.7 Zyklusorganisierung: WHILE [<Bedingung>] DOm (solange[<..>],mache) ...ENDm(Ende)

Bis zur Erfüllung der [<Bedingung>] werden die Sätze nach DO m bis zum SAtz END m wiederholtdurchgeführt. D.h. die Steuerung überprüft, ob die BEdingung erffült ist. Ist die Bedingung erfüllt,wird der Programmteil zwischen DO m und END m, dann kehrt das Programm auf die Wirkung derAnweisung END m zur erneutem Überprüfen der nach WHILE stehenden Bedingung zurück.Wird die [<Bedingung>] nicht erfüllt, setzt sich die Programmabarbeitung mit dem nächstfolgendenSatz fort.Wird der Ausdruck WHILE [<Bedingung>] weggelassen, d.h. der Zyklus nur durch die Anweisun-gen DO m ... END m beschrieben wird, wird der Programmteil zwischen DO m und END munendlich viele Male durchgeführt.Mögliche Werte von m sind: 1, 2, 3. Bei der Angabe davon abweichender Werte zeigt die Steue-rung den Fehlercode 3091 FALSCHE OPERATION MIT # an. Erfolgt nach WHILE keine Bedingungsprüfung, erfolgt die Fehleranzeige 3091 FALSCHE OPERA-TION MIT #. Besteht ein Syntaxfehler in der Bedingungsprüfung, erfolgt die Fehleranzeige 3064FALSCHER MAKROAUSDRUCK.

Regeln der Zyklusorganisierung:

– Die Anweisung DO m muss vor der Anweisung END m angegeben werden::END 1::: FALSCH DO1

– Die Anweisungen DO m und END m müssen paarweise angegeben werden::DO1:DO1 FALSCH:END1:

Page 195: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

195

oder

:DO1:END1 FALSCH:END1:

– Die selbe Identnummer kann mehrfach benutzt werden::DO1:END1:: RICHTIG:DO1:END1:

– Die DOm - ENDm-Paare können dreifach ineinander geschachtelt werden::DO1:DO2:DO3:: RICHTIG:END3:END2:END 1:

– Die DOm - ENDm-Paare dürfen einander nicht überlappen::DO1:DO2:: FALSCH:END1:END2

Page 196: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

196

– Von einem Zyklus aus kann nach aussen verzweigt werden::DO1:GOTO150::: RICHTIGEND1:N150:

– Von Aussen kann in einen Zyklus nicht eingetreten werden::GOTO150:DO1:: FALSCH:N150:END:

oder:DO1:N150:: FALSCH:END1:GOTO150:

– Von einem Zyklus aus kann ein Unterprogramm, oder ein Makro aufgerufen werden. Innerhalbeines Unterprogrammes oder Benutzermakros können die Zyklen wiederum dreifachineinander geschachtelt werden::DO1:M98... RICHTIG:G65... RICHTIG:G66... RICHTIG:G67... RICHTIG:END1:

Page 197: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

197

20.13.8 Datenausgabebefehle

Die Steuerung kenn die folgenden Datenausgabebefehle:POPEN Eröffnen einer PeripherieBPRNT Datenausgabe binärDPRNT Datenausgabe dezimalPCLOS Schliessen einer Peripherie

Diese Befehle können zur Ausgabe der Werte von Charakteren und Variablen benutzt werden. DieAusgabe kann in den Speicher der Steuerung und auf ein externes Datenspeichergerät erfolgen.

Eröffnen einer Peripherie: POPENn

Vor der Ausgabe von Daten muss das entsprechende Peripheriegerät, über das die Datenausgabeerfolgen soll, eröffnet werden. Die Peripherie wird durch die entsprechende Zahl n erwählt:

n = 1 RS-232C serielles Interface-Linien = 31 Memorie der Steuerung

Beim Eröffnen einer Peripherie wird auch der Charakter % der Peripherie gesandt, d.h. jede Daten-ausgabe beginnt mit dem Charakter %.

Datenausgabe binär: BPRNT[...]

Der Befehle sendet die Charakter ISO- oder ASCII-codiert (abhängig von dem Parameterzustand),die Variablen binär. – Die Charaketere werden ISO- oder ASCII-codiert gesandt. Die sendbaren Charaketer sind:

Alphabetische Charaktere: A, B, ..., Znumerische Charaktere: 1, 2, ..., 0Sondercharaktere: *, /, +, -Anstelle des Charakters * sendet die Steuerung den ISO-Code der Leerstelle (Space, A0h).

– Die Werte der Variablen werden auf 4 Byte, d.h. auf 32 Bits, beginnend mit dem gr0ssten Stel-lenwert ausgegeben. Nach der Nummer der Variablen ist die Anzahl der Dezimalstellenzwischen eckigen Klammern anzugeben. Darauf wandelt die Steuerung den Wert mitschwebendem Dezimalpunkt in einen Wert mit festem Dezimalpunkt um, in dem die Anzahlder wertigen Dezimalstellen dem zwischen den eckigen Klammern [] angegebenen Wertentspricht. Beispielsweise:wenn #120 = 258.647673 und [3] S))))) dann 258648=0002F258h wird ausgegeben.

– Eine leere Variable wird mit dem Binärcode 00000000h ausgegeben. – Am Ende der Datenausgabe gibt die Steuerung den Charakter der Zeilenschaltung (LineFeed)

automatisch aus. Beispiel:

BPRNT[ a #b [c] ... ]

Anzahl Ziffern nach dem KommaVariableCharakter

Page 198: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

198

Die auszugebenden Charaktere sind:

Datenausgabe dezimal: DPRNT[...]

Alle Charaktere und Ziffern werden (abhängig von dem Parameterzustand) in ISO- oder ASCII-Code ausgegeben. – Die Regeln für die Ausgabe der Charaktere siehe bei der Anweisung BPRNT. – Bei der Ausgabe der Werte von Variablen sind die Anzahl der ganzen Stellen uind der Dezimal-

stellen zwischen eckigen Klammern anzugeben. Bei der Angabe der Ziffern muss dieBedingung 0 < c + d < 0 erfüllt werden. Die Ausgabe der Zahlen erfolgt von dem höchstenStellenwert an. Sowohl das negative Vorzeichen (-) und der Dezimalpunkt (.) werden inISO-Code ausgegeben. Ist der Parameter PRNT vom Wert PRNT=0, werden das +Vorzeichen und die führenden Nullen mit Leerstellen (Space) ausgegeben. Nach demDezimalpunkt werden alle Nullen (wenn sie existieren) mit 0-Code ausgegeben. WennPRNT=1, werden die führenden Nullen nicht ausgegeben, Ist der Dezimalpunkt definiert,werden die nachfolgenden Nullen ausgegeben. Ist der Dezimalpunkt nicht definiert, wederder Dezimalpunkt noch die Nullen werden nicht ausgegeben.

7 6 5 4 3 2 1 0 1 1 0 0 0 0 1 1 --- C 1 0 1 0 0 0 0 0 --- Leerstelle (Space) 1 0 1 0 1 1 1 1 --- / 1 1 0 1 1 0 0 0 --- X 0 0 0 0 0 0 0 0 --- 00 0 0 0 0 0 1 0 0 --- 04 1 1 0 1 1 1 0 0 --- DC 0 0 0 1 1 1 1 0 --- 1E 0 1 0 1 1 0 0 1 --- Y 0 0 0 0 0 0 0 0 --- 00 0 0 0 0 0 0 0 0 --- 00 0 0 0 0 0 0 1 0 --- 02 1 1 0 1 0 0 1 1 --- D3 0 1 0 0 1 1 0 1 --- M 0 0 0 0 0 0 0 0 --- 00 0 0 0 0 0 0 0 0 --- 00 0 0 0 0 0 0 0 0 --- 00 0 0 0 1 1 0 0 0 --- 18 0 0 0 0 1 0 1 0 --- Zeilenschaltung (Line Feed)

BPRNT [ C*/ X#110 [3] Y#120 [3] M#112 [0] ]#110=318.49362 318494=0004DC1Eh#120=0.723415 723=000002D3h#112=23.9 24=00000018h

DPRNT[ a #b [ c d ] ... ]

Anzahl Stellen nach dem DezimalpunktAnzahl Stellen vor dem DezimalpunktVariableCharakter

Page 199: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

199

– Wenn d=0, wird der Dezimalpunkt ausgegeben. Ist nur c ausgegeben, wird auch der Dezimal-punkt nicht ausgegeben.

– Eine leere VAriable wir mit dem 0-Code ausgegeben. – Am Ende der Datenausgabe gibt die Steuerung eine Zeilenschaltung (LF-Code) automatisch aus.

Page 200: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

200

Beispiel:

Datenausgabe bei PRNT=0 7 6 5 4 3 2 1 0 1 1 0 1 1 0 0 0 --- X 1 0 1 0 0 0 0 0 --- Leerstelle (space) 1 0 1 0 0 0 0 0 --- Leerstelle (space) 1 0 1 0 0 0 0 0 --- Leerstelle (space) 1 0 1 0 0 0 0 0 --- Leerstelle (space) 0 0 1 1 0 0 1 1 --- 3 0 0 1 1 0 1 0 1 --- 5 0 0 1 0 1 1 1 0 --- Dezimalpunkt (.) 1 0 1 1 1 0 0 0 --- 8 0 0 1 1 1 0 0 1 --- 9 1 0 1 1 0 1 1 1 --- 7 0 1 0 1 1 0 0 1 --- Y 0 0 1 0 1 1 0 1 --- negatives Vorzeichen (–) 1 0 1 0 0 0 0 0 --- Leerstelle (space) 1 0 1 0 0 0 0 0 --- Leerstelle (space) 1 0 1 1 0 0 0 1 --- 1 0 0 1 1 0 1 0 1 --- 5 0 0 1 1 0 0 0 0 --- 0 0 0 1 0 1 1 1 0 --- Dezimalpunkt (.) 1 0 1 1 1 0 0 0 --- 8 0 0 1 1 0 0 0 0 --- 0 0 0 1 1 0 0 0 0 --- 0 1 1 0 1 0 1 0 0 --- T 1 0 1 0 0 0 0 0 --- Leerstelle (space) 1 0 1 1 0 0 0 1 --- 1 0 0 1 1 0 1 0 1 --- 5 0 0 0 0 1 0 1 0 --- Zeilenschaltung (LF)

DPRNT [ X#130 [53] Y#500 [53] T#10 [2] ]#130=35.897421 35.897#500=–150.8 –150.8#10=214.8 15

Page 201: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

201

Datenausgabe bei PRNT=1

Abschliessen einer Peripherie: PCLOSn

Die durch den Befehl POPEN ist mit dem Befehl PCLOS abzuschliessen. NAch dem BefehlPCLOS ist die Nummer der abzuschliessenden Peripherie anzugeben. Die Steuerung sendet amEnde den Charakter % aus, d.h. die Datenausgabe wird mit % abgeschlossen.L Anmerkungen: – Die Reihenfolge der Datenausgabebefehle ist verbindlich. Die entsprechende Peripherie wird

zuerst mit dem Befehl POPEN eröffnet, dann folgt die Datenausgabe durch den BefehlBPRINT oder DPRINT, zuletzt ist die Peripherie durch die Anweisung PCLOS abzu-schliessen.

– Das Eröffnewn und das Abschliessen einer Peripherie kann an beliebiger Stelle des Programmeserfolgen. Beispielsweise kann eine Peripherie am Programmanfang eröffnet und amProgrammende abgeschlossen werden, wobei Datenausgaben an beliebigen Stellen desProgrammes, zwischen den beiden Anweisungen erfolgen können.

– Ein M30- oder M2-Befehl, der während einer Datenausgabe ausgegeben wird, unterbricht dieDatenübertragung. Um es zu vermeiden, muss während einer Datenübertragung, vor derAbarbeitung des M30-Befehls verzögert werden.

– Auf die Parameter einer eröffneten Peripherie (Baud-Rate, Anzahl Stop-Bites, usw.) muss ge-achtet werden. Diese Parameter können in der Gruppe SERIAL des Parameterfeldes einge-stellt werden.

20.14 NC- und Makroanweisungen

Die Programmiersprache verunterscheidet NC- und Makrosätze.NC-Sätze sind die durch die traditionellen Codes, wie G-, M-, usw. Codes beschriebenen Sätzeselbst in dem Fall, wenn die einzelnen Adressen nicht nur zahlenmässige Werte, sondern Variablen,oder Formeln annehmen.Für Makroanweisungen werden die folgenden Sätze betrachtet:

7 6 5 4 3 2 1 0 1 1 0 1 1 0 0 0 --- X 0 0 1 1 0 0 1 1 --- 3 0 0 1 1 0 1 0 1 --- 5 0 0 1 0 1 1 1 0 --- Dezimalpunkt (.) 1 0 1 1 1 0 0 0 --- 8 0 0 1 1 1 0 0 1 --- 9 1 0 1 1 0 1 1 1 --- 7 0 1 0 1 1 0 0 1 --- Y 0 0 1 0 1 1 0 1 --- negatives Vorzeichen (–) 1 0 1 1 0 0 0 1 --- 1 0 0 1 1 0 1 0 1 --- 5 0 0 1 1 0 0 0 0 --- 0 0 0 1 0 1 1 1 0 --- Dezimalpunkt (.) 1 0 1 1 1 0 0 0 --- 8 0 0 1 1 0 0 0 0 --- 0 0 0 1 1 0 0 0 0 --- 0 1 1 0 1 0 1 0 0 --- T 1 0 1 1 0 0 0 1 --- 1 0 0 1 1 0 1 0 1 --- 5 0 0 0 0 1 0 1 0 --- Zeilenschaltung (LF)

Page 202: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

202

– Wertzuweisende Sätze: #i=#j – Sätze, die eine bedingte oder zyklusorganisierende Anweisung enthalten: IF, WHILE – Kontrollanweisungen enthaltenen Sätze: GOTO, DO, END – Makroaufrufe enthaltenen Sätze: G65, G66, G66.1, G67, oder die G- oder M-Codes, die ein

Makroaufrufen auslösen. – Unterprogrammenaufruf (durch M98 P oder A, B, C, S, T, M ausgelöstes Unterprogramm)Aus dem Gesichtspunkt der Programmdurchführung wird der Makrosatz im eingeschalteten Zustandder Berechnung der Werkzeugradienkorrektur in der Ebene als keinen Funktions- oder keinen dieBewegung ausserhalb der angewählten Ebene beinhaltenden Satz angenommen.

Page 203: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

203

Abb. 20.15-1 Abb. 20.15-2

20.15 Abarbeitung der Makrosätze

Die Makrosätze können durch die Steuerung parallel mit der Abarbeitung der NC-Sätze oder da-nach durchgeführt werden. Der die Abarbeitung der NC und der Makrosätze regelnde Parameter istSBSTM. Ist der Parameter =0: werden die NC und Makrosätze in der im Programm beschriebenen Reihenfolge durchgeführt. =1: werden die Makroanweisungen während der Abarbeitung der NC-Sätze durchgeführt.Beispiel:SBSTM=0

%O1000...N10 #100=50 N20 #101=100N30 G1 X#100 Y#101N40 #100=60 (Definition nach N30)N50 #101=120 (Definition nach N30)N60 G1 X#100 Y#101

Die in den Sätzen N40 und N50 beschriebenenWertangaben werden nach der Abarbeitungdes Satzes N30 durchgeführt.

L Folgen: – Die Abarbeitung des Satzes ist langsamer. – Wenn die Abarbeitung des Satzes N30

unterbrochen und dann dieBearbeitung neugestartet wird, dader Satz N40, N50 die Variablen desSatzes N30 noch nicht umgeschrie-ben hat, kann die Bearbeitung ein-fach fortgesetzt werden.

SBSTM=1

%O1000...N10 #100=50 N20 #101=100N30 G1 X#100 Y#101N40 #100=60 (Def. inzwischen N30)N50 #101=120 (Def. inzwischen N30)N60 G1 X#100 Y#101

Die in den Sätzen N40 und N50 beschriebe-neWertangabe wird während der im Satz N30laufende Bewegung durchgeführt.

L Folgen: – Die Abarbeitung des Programmes ist

schneller. – Wenn die Abarbeitung des Satzes N30 un-

terbrochen und dann die Bearbei-tung neugestartet wird, da der SatzN40, N50 die Variablen des SatzesN30 schon umgeschrieben hat, kanndie Bearbeitung nicht fortgesetztwerden, nur im Fall, wenn für denSatz N30 Satzsuche gestartet wird.

20.16 Anzeigen von Makros und Unterprogrammen im Automatikbetrieb

Im Automatikbetrieb werden die Sätze der Makros und Unterprogramme angezeigt. Ist derParameter MD8 auf 0 gesetzt, werden die Sätze der von 8000 bis 8999 nummeriertenUnterprogramme und Makros bei der Abarbeitung nicht aufgeistet. Ist der Parameter MD8 auf 1

Page 204: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

204

gesetzt, werden auch diese Sätze angezeigt.Ist der Parameter MD9 auf 0 gesetzt, werden die von 9000 bis 9999 nummerierten Unterpro-gramme und Makros bei der Abarbeitung nicht aufgelistet.Ist der Parameter MD9 auf 1 gesetzt, werden auch diese Sätze angezeigt.

20.17 Benutzung der STOP-Taste bei der Abarbeitung einer Makroanweisung

Das Andrücken der STOP-Taste, d.h. die Aufhebung der Programmabarbeitung wird immer nachder Beendigung der in der Abarbeitung befindlichen Makroanweisung wirksam.

Page 205: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

205

Abb. 20.18-1

20.18 Taschenfräszyklus

Die AnweisungG65 P9999 X Y Z I J K R F D E Q M S T

löst einen Taschenfräszyklus aus. Zum Durchführen des Zyklus ist das Makroprogramm der Num-mer O9999, das im PROM-Speicher der Steuerung zu finden ist, in den Speicher einzulesen.Vor dem Aufrufen des Zyklus ist dasWerkzeug in der angewählten Ebene ü-ber den geometrischen Mittelpunkt derTasche, in einer gewissen Sicherheitsab-stand zu bringen. Am Zyklusende wirddas Werkzeug auf denselben Punkt zu-rückgezogen.Bedeutung der Adressen des Satzes: X: Taschenbreite in X Y: Taschenbreite in Y Z: FrästiefeDie Anweisungen G17, G18, G19 be-stimmen, ob welche Koordinate welcherAbmessung entspricht. Z.B. bei G17 istZ die Frästiefe, die längere Koordinatevon X und Y ist die Taschenlänge unddie kürzere Koordinate entspricht derTaschenbreite. Diese Werte sind als ab-solute positive Zahlen einzugeben. R: der Abrundungsradius der Tasche.

Unter der R-Adresse ist die e-ventuelle Abrundung der Eckeneinzugeben. Wird diese Adressenicht ausgefüllt, entspricht dieAbrundung dem Werkzeugra-dius.

I: Sicherheitsabstand in der Tiefenrichtung bei G19 J: Sicherheitsabstand in der Tiefenrichtung bei G18 K: Sicherheitsabstand in der Tiefenrichtung bei G17Abhängig von der angewählten Ebene ist der Sicherheitsabstand unter der Adresse I(G19), oderJ(G18), oder K(G17) im Satz einzugeben. Beim Zyklusstart nimmt die Steuerung an, dass sich dieWerkzeugspitze in diesem Abstand über Werkstückoberfläche befindet. Als eine Zustelltiefe fertiggefräst ist, zieht die Steuerung das Werkzeug auf den selben Abstand beimAnfahren an die Anfangsposition der nächsten Zustellung zurück. D: Adresse des Faches, in dem sich die Werkzeugradien-Korrektur befindet.Die Registernummer der Werkzeugradien-Korrektur des im Programm eingesetzten Werkzeuges istunter der D-Adresse verbindlich anzugeben. Das Taschenfräsen soll im Zustand G40 zu verrichten. E: Fräsbreite in % des Fräsdurchmessers

mit + Vorzeichen: Umfahren im Gegenuhrzeigersinn,

Page 206: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

206

Abb. 20.18-2

mit – Vorzeichen: Umfahren im Uhrzeigersinn.Unter dieser Adresse können zwei Informationen der Steuerung mitgeteilt werden. Der Wert von Egibt die Fräsbreite prozentual zum Fräsdurchmesser an. Ist dieser Wert nicht angegeben, nimmt dieSteuerung +83% automatisch an. Es kann vorkommen, dass die Steuerung den unter der E-Adresseabgelegten Wert abhängig von der Taschenbreite so modifiziert, dass die Frästiefe beim Ausfräseneiner Schicht gleichmässig bleibt. Diese Modifizierung bedeutet nur Abnahme der Zustelltiefe. DasVorzeichen der E-Adresse bestimmt die Umfahrrichtung des Fräsens. Ist E positiv, erfolgt dieBearbeitung im Gegenuhrzeigersin, ist sie negativ, dann wird im Uhrezeigersinn gefräst. Q: ZustelltiefeUnter der Q-Adresse kann die Zustelltiefe im angewandten Massystem, d.h. in mm oder in Zollangegeben werden. Im Interesse einer gleichmässigen Schnittaufteilung kann die Steuerung denprogrammierten Wert kontrollieren. Eine Modifizierung kann nur eine Minderung bedeuten. F: VorschubUnter der F-Adresse kann die Grösse des im Zyklus angewandten Vorschubes bestimmt werden.Beim Nichtausfüllen nimmt die Steuerung einen geerbten F-Wert in Betracht. In den folgendenFällen wird 50% des F-Wertes angewandt: – Beim Beginnen mit einer Schicht, wobei bis zur Tiefe Q in Achsrichtung des Werkzeuges gebohrt

wird. – Beim Längsfräsen, solange das Werkzeug beidseitig belastet ist. M S T: FunktionIm Satz der das Taschenfräsen aufruft, kann eine M-, oder S- oder T-Funktion definiert werden, dievor dem Beginn des Fräsens durchgeführt wird

Ausgeartete Fälle des Taschenfräsens

Wurde die Taschenbreite nicht definiert, nimmt die Steuerung den zweifachen Abrundungsradius derEcken für Taschenbreite an.

Wurde weder die Taschenbreite noch der Abrundungsradius der Ecken definiert, nimmt dieSteuerung den Werkzeugdurchmesser für die Taschenbreite an (Nutenfräsen).

Page 207: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

20 Kundenmakros

207

Abb. 20.18-3

Abb. 20.18-4

Wurde weder die Länge noch die Breite der Tasche angegeben und es wurde nur die R-Adresseprogrammiert, wird eine KreisförmigeTasche gefräst.

Wird weder die Länge, noch die Breite, noch der Radius definiert, entartet sich der Zyklus zu einemBohrzyklus.

Fehleranzeigen während der Durchführung des Taschenfräsens:

MACRO ERROR 1: Fehler beim Ausfüllen des Satzes. Mögliche Ursachen: – Taschentiefe wurde nicht angegeben. – Werkzeugradius fehlt. – Zustelltiefe wurde nicht angegeben.

MACRO ERROR 2: fehlerhafte Massangabe. Mögliche Ursachen: – Die Länge oder die Breite der Tasche ist kleiner als der doppelte Abrundungsradius. – Die Länge oder die Breite der Tasche ist kleiner als der unter der D-Adresse aufgerufene

Werkzeugdurchmesser. – Die angegebene Fräsbreite, oder der aufgerufene Werkzeugdurchmesser gleich Null. – Die Zustelltiefe gleich Null, d.h. für die Q-Adresse wurde 0 programmiert.

Page 208: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

Notizen

208

Notizen

Page 209: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

Stichwortverzeichnis

209

Stichwortverzeichnis

Abarbeitungsfolge . . . . . . . . . . . . . . . 71, 72Adressen

von Bohrzyklen . . . . . . . . . . . . . . . . . 132Adressenkette . . . . . . . . . . . . . . . . . . . . . . 8Anfangspunkt . . . . . . . . . . . . . . . . . . . . 132Annäherungspunkt . . . . . . . . . . . . . . . . 130Anwahl der Ebene . . . . . . . . . . . . . . . . . 55Arbeitsraumabgrenzung . . . . . . . . . . . . . 156Ausgangspunkt . . . . . . . . . . . . . . . . . . . 130Beibehaltung des Vektors . . . . . . . . . . . . 99Beschleunigung . . . . . . . . . . . . . . . . . . . . 47Bohrachse . . . . . . . . . . . . . . . . . . . . . . 130Bohrzyklen . . . . . . . . . . . . . . . . . . . . . . 130Dezimalpunkt . . . . . . . . . . . . . . . . . 40, 190Ebene . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Wechsel . . . . . . . . . . . . . . . . . . . . 62, 84Eckbogen . . . . . . . . . . . . . . . . . . . . . . . 100Ecke

innere . . . . . . 49, 87, 89, 91, 94, 95, 109Endstellun . . . . . . . . . . . . . . . . . . . . . . . 158Endstellung . . . . . . . . . . . . . . . . . . . . . . 157

parametriert . . . . . . . . . . . . . . . . . 52, 158Genauhalt . . . . . . . . . . . . . . . . . . . . . . . . 48Gesperrte Zone . . . . . . . . . . . . . . . . . . . 158Hauptachse . . . . . . . . . . . . . . . . . . . . . . . 62Hauptebene . . . . . . . . . . . . . . . . . . . . . . 62Hauptspindel . . . . . . . . . . . . . . . . . . . . . . 65Inkrementensystem . . . . . . . . . . . 41, 46, 78Innerer Kreisbogen . . . . . . . . . . . . . . . . . 50Interferenzprüfung . . . . . . . . . . . . . . . . . 107Kodes

von Bohrzyklen . . . . . . . . . . . . . . . . . 131Konfigurieren

der Bohrzyklen . . . . . . . . . . . . . . . . . 131Konstante

dominierend . . . . . . . . . . . . . . . . . . . . 112Konturfahren . . . . . . . . . . . . . . . . . . . . 101Koordinatenangaben . . . . . . . . . . . . . . . . 40Koordinatensysteme . . . . . . . . . . . . . . . . 55Kreis änderliches Radius . . . . . 26, 28, 104,

105Maschinen-Koordinatensystem . . . . . . . . 55

Masstabieren . . . . . . . . . . . . . . . . . . . . 114Vergrösserung . . . . . . . . . . . . . . . . . . 114Verkleinerung . . . . . . . . . . . . . . . . . . 114

Massystem . . . . . . . . . . . . . . 40, 41, 46, 78Messen . . . . . . . . . . . . . . . . . . . . . . . . . 153Messfunktionen . . . . . . . . . . . . . . . . . . . 153Metrisch . . . . . . . . . . . . . . . . . . . . . . . . . 40nachgesetzte Nullen . . . . . . . . . . . . . . . . . 40Normierende Zahl . . . . . . . . . . . . . . . . . 112Parameter

ADD . . . . . . . . . . . . . . . . . . . . . . . . . 155ALADIST . . . . . . . . . . . . . . . . . . . . . 155ANG.ACCU . . . . . . . . . . . . . . . . . . . 113ANGLAL . . . . . . . . . . . . . . . . . 107, 110CDIR6 . . . . . . . . . . . . . . . . . . . . . . . . 66CHBFMOVE . . . . . . . . . . . . . . . . . . 158CLEG83 . . . . . . . . . . . . . . . . . . 134, 141CORNANGL . . . . . . . . . . . . . . . . . . . 49CORNOVER . . . . . . . . . . . . . . . . . . . 50DECDIST . . . . . . . . . . . . . . . . . . . . . . 50DELTV . . . . . . . . . . . . . . . . . . . . . . . 106DOMCONST . . . . . . . . . . . . . . . . . . 112EXTER . . . . . . . . . . . . . . . . . . . . . . . 156FEED . . . . . . . . . . . . . . . . . . . . . . . . . 45G CODES . . . . . . . 22, 23, 38, 45, 62, 80G31FD . . . . . . . . . . . . . . . . . . . . . . . 153G37FD . . . . . . . . . . . . . . . . . . . . . . . 154HELICALF . . . . . . . . . . . . . . . . . . . . . 28INDEX_C1 . . . . . . . . . . . . . . . . . . . . . 66INDEX1 . . . . . . . . . . . . . . . . . . . 66, 143INTERFER . . . . . . . . . . . . . . . . . . . . 107LIMP2n . . . . . . . . . . . . . . . . . . . . . . 156M_NUMB1 . . . . . . . . . . . . . . . . . . . . 66ORIENT1 . . . . . . . . . . 65, 138, 148, 149POSCHECK . . . . . . . . . . . . . . . . . . . 22RADDIF . . . . . . . . . . . . . . . . . . . . . . . 26RAPDIST . . . . . . . . . . . . . . . . . . . . . 154RAPID6 . . . . . . . . . . . . . . . . . . . . . . . 66REFPOS . . . . . . . . . . . . . . . . . . . . . . . 53RETG73 . . . . . . . . . . . . . . . . . . 134, 136SECOND . . . . . . . . . . . . . . . . . . . . . . 51SKIPF . . . . . . . . . . . . . . . . . . . . . . . 153

Page 210: NCT 99M ProgrammieranleitungE4smaschine/... · NCT® 99M NCT® 2000M Steuerungen für Fräsmaschinen und Bearbeitungszentren Programmieranleitung

Stichwortverzeichnis

210

STRKEN . . . . . . . . . . . . . . . . . . . . . 156TAPDWELL . . . . . . . . . . . . . . 137, 142TEST FEED . . . . . . . . . . . . . . . . . . . . 30

Positionierebene . . . . . . . . . . . . . . . . . . 130Programmanfang . . . . . . . . . . . . . . . . . . . 9Programmende . . . . . . . . . . . . . . . . . . . . . 9Programmname . . . . . . . . . . . . . . . . . . . . 9Programmnummer . . . . . . . . . . . . . . . . . . 9R-Punkt . . . . . . . . . . . . . . . . . . . . . . . . 130Referenzpunkt . . . . . . . . . . . . . . . . . 52, 53Richtung

des Konturfahrens . . . . . . . . . . . . . . . . 97Rotation . . . . . . . . . . . . . . . . . . . . . . . . 113Satz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Sicherheitsfunktionen . . . . . . . . . . . . . . 156Spiegelung . . . . . . . . . . . . . . . . . . . . . . 115Störung

des Konturfahrens . . . . . . . . . . . . . . . 107Transformationen . . . . . . . . . . . . . . . . . 113

Programmierregeln . . . . . . . . . . . . . . 116Unterprogramm . . . . . . 10, 71, 73, 74, 101Verzögerung . . . . . . . . . . . . . . . . . . . . . 47Vollkreis . . . . . . . . . . . . . . . . . . . . 26, 105Vorangestellte Nullen . . . . . . . . . . . . . . . 40Vorschubreduzierung . . . . . . . . . . . . 49, 50Wartezeit . . . . . . . . . . . . . . . . . . . . . . . . 51Werkzeugkorrektur

dreidimensional . . . . . . . . . . . . . . . . . 111räumlich . . . . . . . . . . . . . . . . . . . . . . 111

Werkzeuglängenmessung . . . . . . . . . . . 154Werkzeugradienkorrektur . . . . . . . . . 28, 77

in der Ebene . . . . . . . . . . . . . . 54, 61, 84räumlich . . . . . . . . . . . . . . . . . . . . . . . 54

Werkzeugverwaltung . . . . . . . . . . . . . . . 69Wertgrenze . . . . . . . . . . . . . . . . . . . . . . 46Wort . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Zoll-Systems . . . . . . . . . . . . . . . . . . . . . 40