Herunterladen Inhalt Inhalt Diese Seite drucken
Inhaltsverzeichnis

Werbung

SINUMERIK SINUMERIK 840D sl/840Di sl/840D/840Di/810D Arbeitsvorbereitung
SINUMERIK
SINUMERIK
840D sl/840Di sl/840D/840Di/810D
Arbeitsvorbereitung
Programmierhandbuch
Gültig für
Steuerung
SINUMERIK 840D sl/840DE sl
SINUMERIK 840Di sl/840DiE sl
SINUMERIK 840D powerline/840DE powerline
SINUMERIK 840Di powerline/840DiE powerline
SINUMERIK 810D powerline/810DE powerline
Software
NCU Systemsoftware für 840D sl/840DE sl 1.4
NCU Systemsoftware für 840Di sl/DiE sl
NCU Systemsoftware für 840D/840DE
NCU Systemsoftware für 840Di/840DiE
NCU Systemsoftware für 810D/810DE
11/2006
6FC5398-2BP10-2AA0
Vorwort
______________
Flexible NC-Programmierung
Unterprogrammtechnik,
______________
Makrotechnik
Datei- und
______________
Programmverwaltung
______________
Schutzbereiche
______________
Spezielle Wegbefehle
______________
Frames
______________
Transformationen
______________
Werkzeugkorrekturen
______________
Bahnverhalten
Bewegungs-
______________
synchronaktionen
______________
Pendeln
______________
Stanzen und Nibbeln
______________
Weitere Funktionen
Version
______________
Eigene Abspanprogramme
1.0
7.4
3.3
______________
Tabellen
7.4
______________
Anhang
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A

Werbung

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für Siemens 840D sl/840DE sl

  • Seite 1 SINUMERIK 840Di powerline/840DiE powerline ______________ SINUMERIK 810D powerline/810DE powerline Weitere Funktionen Software Version ______________ NCU Systemsoftware für 840D sl/840DE sl 1.4 Eigene Abspanprogramme NCU Systemsoftware für 840Di sl/DiE sl NCU Systemsoftware für 840D/840DE NCU Systemsoftware für 840Di/840DiE ______________ Tabellen NCU Systemsoftware für 810D/810DE...
  • Seite 2: Sicherheitshinweise

    Lagerung, Aufstellung und Montage sowie sorgfältige Bedienung und Instandhaltung voraus. Marken Alle mit dem Schutzrechtsvermerk ® gekennzeichneten Bezeichnungen sind eingetragene Marken der Siemens AG. Die übrigen Bezeichnungen in dieser Schrift können Marken sein, deren Benutzung durch Dritte für deren Zwecke die Rechte der Inhaber verletzen kann.
  • Seite 3 ● Anwender-Dokumentation ● Hersteller-/Service-Dokumentation Eine monatlich aktualisierte Druckschriften-Übersicht mit den jeweils verfügbaren Sprachen finden Sie im Internet unter: http://www.siemens.com/motioncontrol Folgen Sie den Menüpunkten "Support" → "Technische Dokumentation" → "Druckschriften- Übersicht". Die Internet-Ausgabe der DOConCD, die DOConWEB, finden Sie unter: http://www.automation.siemens.com/doconweb...
  • Seite 4: Technical Support

    +49 180 5050 222 +86 1064 719 990 +1 423 262 2522 +49 180 5050 223 +86 1064 747 474 +1 423 262 2289 Internet http://www.siemens.com/automation/support-request E-Mail mailto:adsupport@siemens.com Hinweis Landesspezifische Telefonnummern für technische Beratung finden Sie im Internet: http://www.siemens.com/automation/service&support Fragen zur Dokumentation...
  • Seite 5: Eg-Konformitätserklärung

    EG-Konformitätserklärung Die EG-Konformitätserklärung zur EMV-Richtlinie finden/erhalten Sie ● im Internet: http://www.ad.siemens.de/csinfo unter der Produkt-/Bestellnummer 15257461 ● bei der zuständigen Zweigniederlassung des Geschäftsgebiets A&D MC der Siemens AG Exportvariante Folgende Funktionen sind in der Exportvariante nicht enthalten: Funktion 810DE 840DE sl...
  • Seite 6 Vorwort Arbeitsvorbereitung Die Programmieranleitung "Arbeitsvorbereitung" dient dem Technologen mit Kenntnissen über die gesamten Programmiermöglichkeiten. Die SINUMERIK 840D sl/840Di sl/840D/840Di/810D ermöglicht mit einer speziellen Programmiersprache die Programmierung eines komplexen Werkstückprogramms (z. B. Freiformflächen, Kanalkoordinierung,...) und erleichtert dem Technologen eine aufwendige Programmierung. Die Befehle und Anweisungen, die in dieser Programmieranleitung beschrieben sind, sind Technologie-unabhängig.
  • Seite 7: Inhaltsverzeichnis

    Inhaltsverzeichnis Vorwort ..............................iii Flexible NC-Programmierung ......................... 1-1 Variable und Rechenparameter (Anwenderdefinierte Variable, Rechenparameter, Systemvariable) ......................... 1-1 Variablendefinition (DEF Anwenderdefinierte Variable LUD, GUD, PUD) ........ 1-3 Felddefinitionen (DEF, SET, REP)..................... 1-7 Indirekte Programmierung ....................... 1-14 1.4.1 String als Teileprogrammzeile abarbeiten (EXECSTRING) ............ 1-17 Zuweisungen..........................
  • Seite 8 Inhaltsverzeichnis 1.22 FILEDATE/TIME/SIZE/STAT/INFO: File Informationen ............1-72 1.23 CHECKSUM: Checksummenbildung über ein Feld..............1-74 1.24 ROUNDUP: Aufrunden ......................1-75 Unterprogrammtechnik, Makrotechnik ....................2-1 Unterprogramme einsetzen......................2-1 Unterprogramme mit SAVE-Mechanismus ................2-4 Unterprogramme mit Parameterübergabe (PROC, VAR)............2-5 Unterprogramme aufrufen (L bzw. EXTERN) ................2-9 Parametrierbarer Unterprogrammrücksprung (RET) ...............
  • Seite 9 Inhaltsverzeichnis Spezielle Wegbefehle ..........................5-1 Codierte Positionen anfahren (CAC, CIC, CDC, CACP, CACN)..........5-1 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN)......5-2 Spline-Verbund (SPLINEPATH) ....................5-11 Kompressor (COMPOF/ON, COMPCURV, COMPCAD) ............5-13 Polynom-Interpolation (POLY, POLYPATH)................5-17 Einstellbarer Bahnbezug (SPATH, UPATH) ................5-23 Messen mit schaltendem Taster (MEAS, MEAW) ..............
  • Seite 10 Inhaltsverzeichnis 7.2.8 Orientierungsprogrammierung entlang einer Kegelmantelfläche (ORIPLANE, ORICONxx)......................7-27 7.2.9 Orientierungsvorgabe zweier Kontaktpunke (ORICURVE, PO[XH]=, PO[YH]=, PO[ZH]=) ..........................7-30 Orientierungspolynome (PO[Winkel], PO[Koordinate])............7-33 Drehungen der Werkzeugorientierung (ORIROTA, ORIROTR/TT, ORIROTC, THETA) ............................ 7-35 Bahnrelative Orientierungen ....................7-37 7.5.1 Orientierungsarten relativ zur Bahn ..................7-37 7.5.2 Bahnrelative Drehung der Werkzeugorientierung (ORIPATH, ORIPATHS, Drehwinkel)..
  • Seite 11 Inhaltsverzeichnis 8.7.5 D-Nummern ungültig setzen (DZERO) ..................8-36 Werkzeugträgerkinematik ......................8-37 Bahnverhalten ............................9-1 Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) ..........9-1 Mitschleppen (TRAILON, TRAILOF) ..................9-7 Kurventabellen (CTAB) ......................9-11 9.3.1 Kurventabellen: Allgemeine Zusammenhänge ................ 9-11 9.3.2 Kurventabellen Schwerpunktfunktionen (CTABDEF, CATBEND, CTABDEL) ......9-12 9.3.3 Kurventabellen Formen (CTABDEL, CTABNOMEM, CTABFNO, CTABID, CTABLOCK, CTABUNLOCK) ........................
  • Seite 12 Inhaltsverzeichnis 10.4.7 Synchronfunktion (SYNFCT)....................10-32 10.4.8 Abstandsregelung mit begrenzter Korrektur $AA_OFF_MODE..........10-35 10.4.9 Online-Werkzeugkorrektur (FTOC)..................10-37 10.4.10 Online-Werkzeuglängenkorrektur ($AA_TOFF[Werkzeugrichtung])........10-39 10.4.11 Positionierbewegungen......................10-40 10.4.12 Achse positionieren (POS)..................... 10-41 10.4.13 Position im vorgegebenen Referenzbereich (POSRANGE) ..........10-42 10.4.14 Achse starten/stoppen (MOV)....................10-43 10.4.15 Achstausch (RELEASE, GET) ....................
  • Seite 13 Inhaltsverzeichnis Weitere Funktionen..........................13-1 13.1 Achsfunktionen (AXNAME, AX, SPI, AXTOSPI, ISAXIS, AXSTRING) ........13-1 13.2 Vorhandenen NC-Sprachumfang prüfen (STRINGIS)............. 13-3 13.3 Funktionsaufruf ISVAR ( ) und Maschinendaten Array-Index lesen ........13-7 13.4 Kompensationskennlinien einlernen (QECLRNON, QECLRNOF) ........13-10 13.5 Synchronspindel ........................13-12 13.5.1 Synchronspindel (COUPDEF, COUPDEL, COUPON/ONC, COUPOF/OFS, COUPRES) ...
  • Seite 14 Inhaltsverzeichnis Anhang ..............................A-1 Liste der Abkürzungen .......................A-2 Publikationsspezifische Information...................A-7 A.2.1 Korrekturblatt - Faxvorlage......................A-7 A.2.2 Dokumentationsübersicht......................A-9 Glossar ............................Glossar-1 Index..............................Index-1 Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 15: Flexible Nc-Programmierung

    Flexible NC-Programmierung Variable und Rechenparameter (Anwenderdefinierte Variable, Rechenparameter, Systemvariable) Funktion Durch Verwendung von Variablen statt fester Werte können Sie ein Programm flexibel gestalten. Sie können damit auf Signale reagieren, wie z. B. Messwerte, oder Sie können durch Verwendung von Variablen als Sollwert dasselbe Programm für verschiedene Geometrien einsetzen.
  • Seite 16 Flexible NC-Programmierung 1.1 Variable und Rechenparameter (Anwenderdefinierte Variable, Rechenparameter, Systemvariable) BOOL Wahrheitswerte: TRUE (1) und FALSE (0) CHAR Zeichen ASCII, entsprechend Code 0 … 255 STRING Zeichenkette, Zeichenzahl in […], Folge von Werten mit 0 … 255 maximal 200 Zeichen AXIS nur Achsnamen (Achsadressen) alle im Kanal vorhandenen...
  • Seite 17: Variablendefinition (Def Anwenderdefinierte Variable Lud, Gud, Pud)

    Flexible NC-Programmierung 1.2 Variablendefinition (DEF Anwenderdefinierte Variable LUD, GUD, PUD) Variablendefinition (DEF Anwenderdefinierte Variable LUD, GUD, PUD) Funktion Neben den vordefinierten Variablen kann der Programmierer eigene Variablen definieren und mit Werten belegen. Die lokalen Variablen (LUD) gelten nur in dem Programm, in dem sie definiert sind. Die globalen Variablen (GUD) gelten in allen Programmen.
  • Seite 18 Flexible NC-Programmierung 1.2 Variablendefinition (DEF Anwenderdefinierte Variable LUD, GUD, PUD) Hinweis Wird einer Variablen bei der Definition kein Wert zugewiesen, so wird sie vom System mit Null vorbelegt. Variable müssen vor ihrer Verwendung am Anfang des Programms definiert werden. Die Definition muss in einem eigenen Satz erfolgen;...
  • Seite 19 Flexible NC-Programmierung 1.2 Variablendefinition (DEF Anwenderdefinierte Variable LUD, GUD, PUD) DEF CHAR GUSTAV_1=65 Den Variablen vom Typ Char kann ein Codewert für das entsprechende ASCII-Zeichen oder DEF CHAR GUSTAV_1="A" das ASCII-Zeichen direkt zugewiesen werden (Codewert 65 entspricht dem Buchstaben "A"). STRING DEF STRING[6] MUSTER_1="ANFANG"...
  • Seite 20: Beispiel Programmlokale Variablen

    Flexible NC-Programmierung 1.2 Variablendefinition (DEF Anwenderdefinierte Variable LUD, GUD, PUD) VAR1=VAR1+1 ;PUD lesen und schreiben VAR2=1 ;LUD schreiben ENDIF ;Unterprogrammaufruf SUB3 PROC SUB3 ;Unterprogramm SUB3 IF (VAR1==1) ;PUD lesen VAR1=VAR1+1 ;PUD lesen und schreiben VAR2=1 ;Fehler: LUD aus SUB2 nicht bekannt ENDIF Variablennamen Ein Variablenname besteht aus maximal 31 Zeichen.
  • Seite 21: Felddefinitionen (Def, Set, Rep)

    Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) Beispiel Abfrage auf vorhandene Geometrieachsen DEF AXIS ABSZISSE ;1. Geometrieachse IF ISAXIS(1) == FALSE GOTOF WEITER ABSZISSE = $P_AXN1 WEITER: Beispiel Indirekte Spindel Programmierung DEF AXIS SPINDLE SPINDLE=(S1) OVRA[SPINDLE]=80 ;Spindeloverride = 80% SPINDLE=(S3) …...
  • Seite 22 Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) Programmierung DEF CHAR NAME[n,m] oder DEF INT NAME[n,m] oder DEF REAL NAME[n,m] oder DEF AXIS NAME[n,m] oder DEF FRAME NAME[n,m] oder DEF STRING[Stringlänge] NAME[m] oder DEF BOOL[n,m] ● Initialisierung mit Wertelisten; SET Möglichkeiten bei der Felddefinition DEF Typ VARIABLE = SET(WERT) DEF Typ FELD[n,m] = SET(WERT, Wert, …) oder...
  • Seite 23 Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) Hinweis Variable vom Typ FRAME lassen sich nicht initialisieren. Wird für die Bereichsangabe ein Wert kleiner Null oder größer als die Anzahl der Feldelemente programmiert, so wird ein Alarm "Wertebereich überschritten" ausgegeben. Möglichkeiten im Programmlauf FELD[n,m] = REP(Wert) FELD[n,m] = REP(Ausdruck) FELD[n,m] = REP(Wert, AnzahlFeldelemente)
  • Seite 24 Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) FELD[n,m] = SET(Wert, Wert, Initialisierung aller Elemente eines Feldes mit ..) FELD[n,m] = SET(Ausdruck, aufgelisteten Werten im Programmlauf ...) FELD[n,m] = REP(Wert) Initialisierung aller Elemente eines Feldes mit dem FELD[n,m] = REP(Ausdruck) gleichen Wert im Programmlauf FELD[n, m] Feldindex Feldgröße für 1.
  • Seite 25: Beispiel Initialisierung Kompletter Variablenfelder

    Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) Speicherbedarf Variablentyp Speicherbedarf pro Element BOOL 1 Byte CHAR 1 Byte 4 Bytes REAL 8 Bytes STRING Stringlänge + 1 FRAME ∼ 400 Bytes, abhängig von Achsanzahl AXIS 4 Bytes Hinweis Die maximale Feldgröße bestimmt die Größe der Speicherblöcke, in denen der Variablenspeicher verwaltet wird.
  • Seite 26 Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) Initialisierung mit Wertelisten bei der Felddefinition, SET ● Es werden so viele Feldelemente zugewiesen, wie Initialisierungswerte programmiert sind. ● Feldelemente ohne Werte (Lücken in der Werteliste) werden automatisch mit 0 belegt. ● Bei Variablen vom Typ AXIS sind Lücken in der Werteliste nicht zugelassen. ●...
  • Seite 27 Flexible NC-Programmierung 1.3 Felddefinitionen (DEF, SET, REP) FELD[2,3] = SET(VARIABLE, 4*5.6) Bei Achsvariablen wird der Achsindex nicht durchlaufen: Beispiel: Initialisierung in einer Zeile $MA_AX_VELO_LIMIT[1, AX1] = SET(1.1, 2.2, 3.3) Entspricht: $MA_AX_VELO_LIMIT[1,AX1] = 1.1 $MA_AX_VELO_LIMIT[2,AX1] = 2.2 $MA_AX_VELO_LIMIT[3,AX1] = 3.3 Initialisierung mit gleichen Werten bei der Felddefinition, REP Alle Feldelemente werden mit dem gleichen Wert (Konstante) belegt.
  • Seite 28: Indirekte Programmierung

    Flexible NC-Programmierung 1.4 Indirekte Programmierung Indirekte Programmierung Funktion Durch indirekte Programmierung können Programme sehr universell genutzt werden. Dabei wird die erweiterte Adresse (Index) jeweils durch eine Variable geeigneten Typs ersetzt. Indirekte G-Code-Programmierung Die indirekte Programmierung von G-Codes über Variable ermöglicht eine effektive Zyklenprogrammierung.
  • Seite 29 Flexible NC-Programmierung 1.4 Indirekte Programmierung Eine notwendige Berechnung der G-Code-Nummer muss in einer eigenen Teileprogrammzeile vor der indirekten G-Code-Programmierung erfolgen. Hinweis Alle gültigen G-Codes sind in der PG, im Kapitel "Liste der G-Funktionen/Wegbedingungen" in verschiedenen Gruppen dargestellt. Siehe /PG/ Programmierhandbuch Grundlagen, "Tabellen"...
  • Seite 30: Beispiel Indirekte G-Code-Programmierung

    Flexible NC-Programmierung 1.4 Indirekte Programmierung DEF AXIS AXVAR1=X ;indirekte Programmierung: G2 X100 IP[AXVAR1]=20 ;Definition und Zuweisung des Achsnamens ;Indirekte Programmierung der ;Mittelpunktsangabe Indirekter Unterprogrammaufruf CALL "L" << R10 ;Aufruf des Programms, dessen Nummer in R10 ;steht Hinweis Auch R-Parameter können als eindimensionales Feld mit verkürzter Schreibweise verstanden werden (R10 entspricht R[10]).
  • Seite 31: String Als Teileprogrammzeile Abarbeiten (Execstring)

    Flexible NC-Programmierung 1.4 Indirekte Programmierung 1.4.1 String als Teileprogrammzeile abarbeiten (EXECSTRING) Funktion Mit dem Teileprogrammbefehl EXECSTRING wird als Parameter ein String übergeben, der die eigentlich auszuführende Teileprogrammzeile enthält. Programmierung EXECSTRING (<String-Variable>) Parameter EXECSTRING Übergabe einer String-Variablen mit der auszuführenden Teileprogrammzeile (<String-Variable>) Parameter mit eigentlich auszuführender Teileprogrammzeile...
  • Seite 32: Zuweisungen

    Flexible NC-Programmierung 1.5 Zuweisungen Zuweisungen Funktion Den Variablen/Rechenparametern können im Programm Werte eines passenden Typs zugewiesen werden. Programmierung Die Zuweisung erfordert dabei stets einen eigenen Satz; pro Satz sind mehrere Zuweisungen möglich. Die Zuweisung zu Achsadressen (Verfahranweisungen) erfordert einen getrennten Satz gegenüber den Variablenzuweisungen. Parameter Zuweisung an String-Variable Innerhalb einer CHAR- oder STRING-Kette wird zwischen Groß- und Kleinschreibung...
  • Seite 33: Rechenoperationen/Rechenfunktionen

    Flexible NC-Programmierung 1.6 Rechenoperationen /Rechenfunktionen Rechenoperationen/Rechenfunktionen Funktion Die Rechenfunktionen sind vorrangig für R-Parameter und Variable (oder Konstante und Funktionen) vom Typ REAL anwendbar. Zulässig sind auch die Typen INT und CHAR. Rechenfunktion ATAN2( , ) Die Funktion berechnet aus zwei aufeinander senkrecht stehenden Vektoren den Winkel des Summenvektors.
  • Seite 34 Flexible NC-Programmierung 1.6 Rechenoperationen /Rechenfunktionen Parameter Operatoren/Rechenfunktionen Addition Subtraktion Multiplikation Division Achtung: (Typ INT)/(Typ INT)=(Typ REAL); Beispiel: 3/4 = 0.75 Division, für Variablentyp INT und REAL Achtung: (Typ INT)DIV(Typ INT)=(Typ INT); Beispiel: 3 DIV 4 = 0 Modulo-Division (nur für Typ INT) liefert Rest einer INT-Division; Beispiel 3 MOD 4=3 Kettungsoperator (bei FRAME-Variablen) Sin ()
  • Seite 35 Flexible NC-Programmierung 1.6 Rechenoperationen /Rechenfunktionen Beispiel Initialisierung kompletter Variablenfelder R1=R1+1 ;neues R1 = altes R1 +1 R1=R2+R3 R4=R5-R6 R7=R8*R9 R10=R11/R12 R13=SIN(25.3) R14=R1*R2+R3 ;Punktrechnung geht vor Strichrechnung R14=(R1+R2)*R3 ;Klammern werden zuerst berechnet R15=SQRT(POT(R1)+POT(R2)) ;innere Klammern werden zuerst aufgelöst ;R15 = Quadratwurzel aus (R1+R2) RESFRAME= FRAME1:FRAME2 ;Mit dem Kettungsoperator werden Frames zu ;einem resultierenden Frame verknüpft oder...
  • Seite 36: Vergleichs- Und Logische Operationen

    Flexible NC-Programmierung 1.7 Vergleichs - und logische Operationen Vergleichs- und logische Operationen Funktion Vergleichsoperationen können z. B. zur Formulierung einer Sprungbedingung benutzt werden. Vergleichbar sind dabei auch komplexe Ausdrücke. Die Vergleichsoperationen sind für Variable vom Typ CHAR, INT, REAL und BOOL anwendbar.
  • Seite 37 Flexible NC-Programmierung 1.7 Vergleichs - und logische Operationen oder Zwischen BOOLSCHEN Operanden und Operatoren müssen Zwischenräume geschrieben werden. Bitweise Logische Operatoren B_AND oder B_OR oder B_NOT oder B_XOR Parameter Bedeutung der Vergleichsoperatoren gleich <> ungleich > größer < kleiner >= größer oder gleich <= kleiner oder gleich...
  • Seite 38 Flexible NC-Programmierung 1.7 Vergleichs - und logische Operationen Beispiel Vergleichsoperatoren IF R10>=100 GOTOF ZIEL oder R11=R10>=100 IF R11 GOTOF ZIEL Das Ergebnis des Vergleichs R10>=100 wird zunächst in R11 zwischengespeichert. Beispiel Logische Operatoren IF (R10<50) AND ($AA_IM[X]>=17.5) GOTOF ZIEL oder IF NOT R10 GOTOB START NOT bezieht sich nur auf einen Operanden.
  • Seite 39: Genauigkeitskorrektur Bei Vergleichsfehlern (Trunc)

    Flexible NC-Programmierung 1.7 Vergleichs - und logische Operationen 1.7.1 Genauigkeitskorrektur bei Vergleichsfehlern (TRUNC) Funktion Der TRUNC-Befehl schneidet den mit einem Genauigkeitsfaktor multiplizierten Operanden Einstellbare Genauigkeit bei Vergleichsbefehlen Teileprogrammdaten vom Typ REAL werden intern im IEEE-Format mit 64 Bit dargestellt. Aufgrund dieser Darstellungsform können Dezimalzahlen ungenau abgebildet werden, die bei einem Vergleich mit ideal gerechneten Werten zu unerwarteten Ergebnissen führen können.
  • Seite 40: Minimum, Maximum Und Bereich Von Variablen (Minval, Maxval, Bound)

    Flexible NC-Programmierung 1.7 Vergleichs - und logische Operationen Das beschriebene Verhalten der Vergleichsbefehle gilt auch bei Synchronaktionen. Beispiel Genauigkeitsbetrachtungen N40 R1=61.01 R2=61.02 R3=0.01 ;Zuweisung der Anfangswerte N41 IF ABS(R2-R1) > R3 GOTOF FEHLER ;Sprung würde bisher ausgeführt werden N42 M30 ;Programmende N43 FEHLER: SETAL(66000) R1=61.01 R2=61.02 R3=0.01...
  • Seite 41 Flexible NC-Programmierung 1.7 Vergleichs - und logische Operationen Ergebnis kleinerer Wert = <MINVAL>(<Variable1>, <Variable2>) Maximum Ergebnis größerer Wert = <MAXVAL>(<Variable1>, <Variable2>) Bereich Rückgabewert = <BOUND>(<Variable Min>, <Variable Max>, <Variable Prüf>) Hinweis Die drei Funktionen MINVAL( ), MAXVAL( ) und BNOUND( ) können auch in Synchronaktionen programmiert werden.
  • Seite 42: Priorität Der Operationen

    Flexible NC-Programmierung 1.8 Priorität der Operationen Priorität der Operationen Funktion Jedem Operator ist eine Priorität zugeordnet. Bei der Auswertung eines Ausdrucks werden stets die Operatoren höherer Priorität zuerst angewandt. Bei gleichrangigen Operatoren erfolgt die Auswertung von links nach rechts. In arithmetischen Ausdrücken kann durch runde Klammern die Abarbeitungsreihenfolge aller Operatoren festgelegt und damit von den normalen Prioritätsregeln abgewichen werden.
  • Seite 43: Mögliche Typenkonvertierungen

    Flexible NC-Programmierung 1.9 Mögliche Typenkonvertierungen Mögliche Typenkonvertierungen Funktion Typkonvertierung bei Zuweisung Der konstante Zahlenwert, die Variable oder der Ausdruck, der einer Variablen zugewiesen wird, muss mit dem Typ dieser Variablen verträglich sein. Ist dies gegeben, so wird bei der Zuweisung der Typ automatisch umgewandelt. Mögliche Typkonvertierungen nach REAL BOOL...
  • Seite 44: Stringoperationen

    Flexible NC-Programmierung 1.10 Stringoperationen 1.10 Stringoperationen 1.10 Überblick Neben den in diesem Kapitel beschriebenen klassischen Operationen "Zuweisung" und "Vergleich" stehen weitere Möglichkeiten für Stringmanipulationen zur Verfügung: Parameter Typkonvertierung nach STRING: STRING_ERG = <<bel._Typ Ergebnistyp: STRING STRING_ERG = AXSTRING (AXIS) Ergebnistyp: STRING Typkonvertierung von STRING: BOOL_ERG = ISNUMBER (STRING) Ergebnistyp: BOOL...
  • Seite 45: Typenkonvertierung Nach String

    Flexible NC-Programmierung 1.10 Stringoperationen Sonderbedeutung des 0-Zeichens Das 0-Zeichen wird intern als Enderkennung eines Strings interpretiert. Wird ein Zeichen durch das 0-Zeichen ersetzt, wird der String damit verkürzt. Beispiel DEF STRING[20] STRG = "Achse . steht" STRG[6] = "X" ;liefert die Meldung "Achse X steht" MSG(STRG) STRG[6] = 0 MSG(STRG)
  • Seite 46: Typenkonvertierung Von String

    Flexible NC-Programmierung 1.10 Stringoperationen Beispiel DEF STRING[32] STRING_ERG STRING_ERG = AXSTRING(X) ;jetzt: STRING_ERG == "X" 1.10.2 Typenkonvertierung von STRING Funktion Mit der Funktion NUMBER wird von STRING nach REAL konvertiert. Liefert ISNUMBER den Wert FALSE, wird bei AUFRUF von NUMBER mit dem gleichen Parameter Alarm ausgelöst.
  • Seite 47: Verkettung Von Strings

    Flexible NC-Programmierung 1.10 Stringoperationen 1.10.3 Verkettung von Strings Funktion Diese Funktionalität schafft die Möglichkeit, einen String aus einzelnen Bestandteilen zusammensetzen zu können. Realisiert wird die Verkettung über den Operator: <<. Dieser Operator hat für alle Kombinationen der Basistypen CHAR, BOOL, INT, REAL und STRING als Zieltyp STRING. Eine eventuell notwendige Konvertierung wird nach den bestehenden Regeln vorgenommen.
  • Seite 48: Wandlung In Klein-/Großbuchstaben

    Flexible NC-Programmierung 1.10 Stringoperationen Beispiel Verkettung von Strings DEF INT IDX = 2 DEF REAL VALUE = 9.654 DEF STRING[20]STRG = "INDEX:2" IF STRG == "Index:" <<IDX GOTOF NO_MSG MSG ("Index:" <<IDX <<"/Wert:" <<VALUE) ;Anzeige: "Index: 2/Wert: 9.654" NO_MSG: 1.10.4 Wandlung in Klein-/Großbuchstaben Funktion Diese Funktionalität erlaubt es, alle Buchstaben eines Strings in eine einheitliche Darstellung...
  • Seite 49: Länge Des Strings

    Flexible NC-Programmierung 1.10 Stringoperationen 1.10.5 Länge des Strings Funktion Diese Funktionalität erlaubt es, die Länge eines Strings zu bestimmen. Syntax INT_ERG = STRLEN (STRING) Ergebnistyp: INT Semantik Es wird eine Anzahl der Zeichen zurückgegeben, die - vom Anfang des Strings an gezählt - kein 0-Zeichen sind.
  • Seite 50 Flexible NC-Programmierung 1.10 Stringoperationen Parameter INDEX sucht das als zweiten Parameter angegebene Zeichen (von vorne) im ersten Parameter. RINDEX sucht das als zweiten Parameter angegebene Zeichen (von hinten) im ersten Parameter. MINDEX entspricht der Funktion INDEX, außer, dass eine Liste von Zeichen (als String) übergeben wird, von denen der Index des ersten gefundenen Zeichens zurückgegeben wird.
  • Seite 51: Auswahl Eines Teilstrings

    Flexible NC-Programmierung 1.10 Stringoperationen 1.10.7 Auswahl eines Teilstrings Funktion Diese Funktionalität erlaubt es, einen Teilstring aus einem String herauszulösen. Dazu wird der Index des ersten Zeichens und ggf. die gewünschte Länge angegeben. Wird die Längeninformation nicht angegeben, ist der Reststring gemeint. Programmierung Syntax STRING_ERG = SUBSTR (STRING,INT)
  • Seite 52: Beispiel Einzelzeichenzugriff Bei Call-By-Reference-Parameter

    Flexible NC-Programmierung 1.10 Stringoperationen Semantik Es wird das Zeichen innerhalb des Strings gelesen/geschrieben, das an der angegebenen Stelle steht. Ist die Positionsangabe negativ oder größer als der String, wird ein Alarm ausgelöst. Beispiel Meldungen: Einsetzen eines Achsbezeichners in einem vorgefertigten String. DEF STRING [50] MELDUNG = "Achse n hat Position erreicht"...
  • Seite 53: Case-Anweisung

    Flexible NC-Programmierung 1.11 CASE-Anweisung 1.11 CASE-Anweisung 1.11 Funktion Die CASE-Anweisung bietet die Möglichkeit, abhängig von einem aktuellen Wert des Typs INT unterschiedlich zu verzweigen. Je nachdem, welchen Wert die von der CASE-Anweisung überprüfte Konstante annimmt, verzweigt das Programm an die Stelle, die durch das zugehörige Sprungziel bestimmt wird. Programmierung CASE (Ausdruck) OF Konstante1 GOTOF LABEL1 …...
  • Seite 54 Flexible NC-Programmierung 1.11 CASE-Anweisung Beispiel 1 CASE(Ausdruck) OF 1 GOTOF LABEL1 2 GOTOF LABEL2 … DEFAULT GOTOF LABELn "1" und "2" sind mögliche Konstanten. Ist der Wert des Ausdrucks = 1 (INT-Konstante), springe zu Satz mit LABEL1 Ist der Wert des Ausdrucks = 2 (INT-Konstante), springe zu Satz mit LABEL2 …...
  • Seite 55: Kontrollstrukturen

    Flexible NC-Programmierung 1.12 Kontrollstrukturen 1.12 Kontrollstrukturen 1.12 Funktion Die Steuerung arbeitet die NC-Sätze standardmäßig in der programmierten Reihenfolge ab. Mit diesen Befehlen lassen sich - neben den in diesem Kapitel beschriebenen Programmsprüngen - zusätzliche Alternativen und Programmschleifen festlegen. Die Befehle ermöglichen strukturierte Programmierung und gute Lesbarkeit der Programme. Programmierung Schachtelungstiefe Kontrollstrukturen gelten programm-lokal.
  • Seite 56: Beispiel Endlosprogramm

    Flexible NC-Programmierung 1.12 Kontrollstrukturen Parameter Auswahl zwischen 2 Alternativen LOOP Endlos-Schleife Zählschleife WHILE Schleife mit Bedingung am Schleifenanfang REPEAT Schleife mit Bedingung am Schleifenende Beispiel Endlosprogramm %_N_LOOP_MPF LOOP IF NOT $P_SEARCH ;kein Satzsuchlauf G01 G90 X0 Z10 F1000 WHILE $AA_IM[X] <= 100 G1 G91 X10 F500 ;Bohrbild Z–F100...
  • Seite 57 Flexible NC-Programmierung 1.12 Kontrollstrukturen Beispiel für Variable vom Typ INT und REAL als Zählschleife %_N_VARIABLENZAEHLER_MPF ;bisherige Programmiermöglichkeit DEF INT iVARIABLE1 R10 = R12-R20*R1 R11 = 6 FOR iVARIABLE1 = R10 TO R11 ;Zählervariable = Integervariable R20 = R21*R22 + R33 ENDFOR ;erweiterte Programmiermöglichkeit R11 = 6...
  • Seite 58 Flexible NC-Programmierung 1.12 Kontrollstrukturen ELSE NC-Sätze ENDIF Hat der Ausdruck den Wert TRUE, d. h. die Bedingung ist erfüllt, so wird der nachfolgende Programmblock ausgeführt. Ist die Bedingung nicht erfüllt, so wird der ELSE-Zweig durchlaufen. Der ELSE-Zweig kann entfallen. 2. Endlos-Programmschleife LOOP Die Endlos-Schleife findet Verwendung in Endlos-Programmen.
  • Seite 59: Programmkoordinierung

    Flexible NC-Programmierung 1.13 Programmkoordinierung 1.13 Programmkoordinierung 1.13 Funktion Kanäle Ein Kanal kann sein eigenes Programm, unabhängig von anderen Kanälen, abarbeiten. Damit sind die ihm zeitweise zugeordneten Achsen und Spindeln über das Programm steuerbar. Bei der Inbetriebnahme können für die Steuerung zwei oder mehr Kanäle eingerichtet werden.
  • Seite 60 Flexible NC-Programmierung 1.13 Programmkoordinierung Bei relativer Pfadangabe gelten dieselben Beispiel: Regeln wie für Unterprogrammaufrufe. INIT(2,"ABRICHT") INIT(3,"UNTER_1_SPF") Bei Unterprogrammaufrufe muss "_SPF" im Programmnamen ergänzt werden. Parameter Zum Datenaustausch zwischen den Programmen können die Variablen benutzt werden, über die Kanäle gemeinsam verfügen (NCK-spezifische globale Variable). Ansonsten wird die Programmerstellung für jeden Kanal getrennt vorgenommen.
  • Seite 61 Flexible NC-Programmierung 1.13 Programmkoordinierung CLEARM (Marker-Nr., Marker-Nr., …) Löschen der Marker "Marker-Nr." im eigenen Kanal, ohne Einfluss auf die laufende Bearbeitung. Alle Marker im Kanal können mit CLEARM() gelöscht werden. CLEARM (0) löscht den Marker "0". CLEARM() behält Gültigkeit über RESET und NC-START hinweg. Entsprechende Kanalnummer oder Kanalname Hinweis Alle obigen Befehle müssen in eigenständigen Sätzen stehen.
  • Seite 62 Flexible NC-Programmierung 1.13 Programmkoordinierung Beispiel Kanal mit Namen "MASCHINE" soll Kanalnummer 1 erhalten, Kanal mit Namen "LADER" soll Kanalnummer 2 erhalten: DEF INT MASCHINE=1, LADER=2 Die Variablen erhalten den gleichen Namen wie die Kanäle. Damit lautet beispielsweise die Anweisung START: START(MASCHINE) Beispiel Programmkoordinierung Kanal 1:...
  • Seite 63 Flexible NC-Programmierung 1.13 Programmkoordinierung Beispiel Programm aus Werkstück N10 INIT(2,"/_N_WKS_DIR/_N_WELLE1_WPD/_N_ABSPAN1_MPF") Beispiel INIT-Befehl mit relativer Pfadangabe Im Kanal 1 ist das Programm /_N_MPF_DIR/_N_MAIN_MPF angewählt N10 INIT(2,"MYPROG") ;Programm /_N_MPF_DIR/_N_MYPROG_MPF in Kanal 2 anwählen Beispiel für Kanalname und Kanalnummer mit Integer Variable $MC_CHAN_NAME[0]= "CHAN_X" ;Name des 1. Kanals $MC_CHAN_NAME[1]= "CHAN_Y"...
  • Seite 64: Interruptroutine (Setint, Disable, Enable, Clrint)

    Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) 1.14 Funktion Die Zusammenhänge bezüglich Programmierung einer Interruptroutine werden anhand eines typischen Beispiels verdeutlicht: Während der Bearbeitung bricht das Werkzeug. Hierdurch wird ein Signal ausgelöst, das den laufenden Bearbeitungsablauf stoppt und gleichzeitig ein Unterprogramm –die sog.
  • Seite 65 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Parameter SETINT(n) Interruptroutine starten, wenn Eingang n schaltet, n (1…8) steht für die Nummer des Eingangs PRIO=1 Festlegung der Priorität 1 bis 128 (1 hat Vorrang) LIFTFAST Schnellabheben von der Kontur NAME Hier steht der Name des Unterprogramms, das abgearbeitet werden soll ALF=…...
  • Seite 66: Interruptroutine Als Unterprogramm Erstellen

    Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Beispiel In diesem Beispiel soll ein abgebrochenes Werkzeug automatisch durch ein Schwesterwerkzeug ersetzt werden. Die Bearbeitung wird dann mit dem neuen Werkzeug fortgesetzt. Hauptprogramm N10 SETINT(1) PRIO=1 W_WECHS -> Wenn Eingang 1 schaltet, wird sofort das ->...
  • Seite 67 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Hinweis Innerhalb der Interruptroutine können SETINT-Anweisungen programmiert und hierdurch weitere Interruptroutinen scharf geschaltet werden. Das Auslösen erfolgt erst durch den Eingang. Für weitere Informationen zur Erstellung von Unterprogrammen siehe Kapitel "Unterprogrammtechnik, Makrotechnik". Unterbrechungsposition speichern, SAVE Die Interruptroutine kann bei der Definition mit SAVE gekennzeichnet werden.
  • Seite 68 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Mehrere Interruptroutinen starten, Rangfolge festlegen, PRIO= Falls in Ihrem NC-Programm mehrere SETINT-Anweisungen stehen und hierdurch mehrere Signale gleichzeitig eintreffen können, müssen Sie die Interruptroutinen mit Rangfolgen belegen, nach denen abgearbeitet werden soll: PRIO 1 bis 128, 1 hat Vorrang. Beispiel: N10 SETINT(3) PRIO=1 ABHEB_Z N20 SETINT(2) PRIO=2 ABHEB_X...
  • Seite 69 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Interruptroutinen neu zuordnen Wird einem belegten Eingang eine neue Routine zugeordnet, ist die alte Zuordnung automatisch unwirksam. Beispiel: N20 SETINT(3) PRIO=2 ABHEB_Z … … N120 SETINT(3) PRIO=1 ABHEB_X Zuordnung löschen, CLRINT Mit CLRINT(n) können Zuordnungen gelöscht werden. Beispiel: N20 SETINT(3) PRIO=2 ABHEB_Z N50 CLRINT(3)
  • Seite 70 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) In beiden Fällen wird beim Schalten von Eingang 2 mit höchster Priorität Schnellabheben ausgeführt. ● Bei N10 wird die Bearbeitung mit dem Alarm 16010 gestoppt (da kein asynchrones Unterprogramm, ASUP, angegeben wurde). ●...
  • Seite 71 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Bezugsebene für die Beschreibung der Verfahrrichtungen Im Eingriffspunkt des Werkzeugs an der programmierten Kontur wird eine Ebene aufgespannt, die als Bezug für die Angabe der Abhebebewegung mit der entsprechenden Code-Nummer dient. Die Bezugsebene wird aufgespannt aus der Werkzeuglängsachse (Zustellrichtung) und einem Vektor, der zu dieser und senkrecht zur Tangente im Eingriffspunkt des Werkzeugs an der Kontur steht.
  • Seite 72 Flexible NC-Programmierung 1.14 Interruptroutine (SETINT, DISABLE, ENABLE, CLRINT) Code-Nummern mit Verfahrrichtungen im Überblick Ausgehend von der Bezugsebene finden Sie in nebenstehender Abbildung die Code- Nummern mit Verfahrrichtungen. Mit ALF=0 ist die Funktion Schnellabheben ausgeschaltet. Vorsicht Bei eingeschalteter Werkzeugradiuskorrektur sollten bei G41 die Codierungen 2, 3, 4 und bei G42 die Codierungen 6, 7, 8 nicht verwendet werden.
  • Seite 73: Achstausch, Spindeltausch (Release, Get, Getd)

    Flexible NC-Programmierung 1.15 Achstausch , Spindeltausch (RELEASE, GET, GETD) 1.15 Achstausch, Spindeltausch (RELEASE, GET, GETD) 1.15 Funktion Eine oder mehrere Achsen bzw. Spindeln können immer nur in einem Kanal interpoliert werden. Muss eine Achse wechselweise in zwei verschiedenen Kanälen arbeiten (z. B. Palettenwechsler), so muss sie zunächst im aktuellen Kanal freigegeben und dann in den anderen Kanal übernommen werden.
  • Seite 74 Flexible NC-Programmierung 1.15 Achstausch , Spindeltausch (RELEASE, GET, GETD) GET-Anforderung ohne Vorlaufstopp Wird nach einer GET-Anforderung ohne Vorlaufstopp die Achse mit RELEASE(Achse) oder WAITP(Achse) wieder freigegeben, so führt ein nachfolgender GET zu einem GET mit Vorlaufstopp. Vorsicht Eine mit GET übernommene Achse bzw. Spindel bleibt auch nach einem Tasten- oder Programm-RESET diesem Kanal zugeordnet.
  • Seite 75 Flexible NC-Programmierung 1.15 Achstausch , Spindeltausch (RELEASE, GET, GETD) Beispiel für Achstausch ohne Synchronisierung Wenn die Achse nicht synchronisiert werden muss, wird durch GET kein Vorlaufstopp erzeugt. N01 G0 X0 N02 RELEASE(AX5) N03 G64 X10 N04 X20 N05 GET(AX5) ;Wenn keine Synchronisation nötig, wird ;dies kein ausführbarer Satz.
  • Seite 76 Flexible NC-Programmierung 1.15 Achstausch , Spindeltausch (RELEASE, GET, GETD) Beschreibung Achse freigeben: RELEASE Bei der Achsfreigabe ist zu beachten: 1. Die Achse darf an keiner Transformation beteiligt sein. 2. Bei Achskopplungen (Tangentialsteuerung), müssen alle Achsen des Verbands freigegeben werden. 3. Eine konkurrierende Positionierachse kann in diesem Zustand nicht getauscht werden. 4.
  • Seite 77: Achse Einem Anderen Kanal Übergeben (Axtochan)

    Flexible NC-Programmierung 1.16 Achse einem anderen Kanal übergeben (AXTOCHAN) Weitere Informationen zur Funktionalität eines Achs- oder Spindeltausches siehe /FB2/ Funktionshandbuch Erweiterungsfunktionen; BAGs, Kanäle, Achstausch (K5). 1.16 Achse einem anderen Kanal übergeben (AXTOCHAN) 1.16 Funktion Mit dem Sprachbefehl AXTOCHAN kann eine Achse angefordert werden, um diese Achse einem anderen Kanal zu übergeben.
  • Seite 78: Newconf: Maschinendaten Wirksam Setzen

    Flexible NC-Programmierung 1.17 NEWCONF: Maschinendaten wirksam setzen Beispiel AXTOCHAN im NC-Programm Die Achsen X und Y sind im 1. Kanal und im 2. Kanal bekannt. Aktuell hat der Kanal 1 das Interpolationsrecht und im Kanal 1 wird folgendes Programm gestartet: N110 AXTOCHAN(Y,2) ;Y-Achse in den 2.
  • Seite 79: Write: Datei Schreiben

    Flexible NC-Programmierung 1.18 WRITE: Datei schreiben Parameter NEWCONF Alle Maschinendaten der Wirksamkeitsstufe "NEW_CONFIG" werden wirksam gesetzt. NEWCONF aus den Teileprogramm kanalübergreifend ausführen Werden axiale Maschinendaten aus dem Teileprogramm verändert und anschließend mit NEWCONF aktiviert, so setzt NEWCONF nur die Maschinendaten, die Änderungen für den Kanal des Teileprogramms bewirken, aktiv.
  • Seite 80 Flexible NC-Programmierung 1.18 WRITE: Datei schreiben Parameter Maschinenhersteller Mit dem Befehl WRITE können aus dem Teileprogramm Sätze in einer Datei abgelegt werden. Die Dateigröße für Protokolldateien (kByte) wird im MD festgelegt. Über das MD 11420: LEN_PROTOCOL_FILE wird die maximale Länge der Protokolldateien in KByte eingestellt.
  • Seite 81: Delete: Datei Löschen

    Flexible NC-Programmierung 1.19 DELETE: Datei löschen Hinweis Eine per WRITE-Befehl zu beschreibende Datei wird neu angelegt, wenn sie nicht in der NC existiert. Existiert eine Datei gleichen Namens auf der Festplatte, wird diese nach dem Schließen der Datei (in der NC) überschrieben. Abhilfe: Unter Bedienbereich Dienste über den Softkey "Eigenschaften"...
  • Seite 82 Flexible NC-Programmierung 1.19 DELETE: Datei löschen Parameter DELETE Die angegebene Datei löschen. error Fehlervariable für Rückgabe 0: kein Fehler 1: Pfad nicht erlaubt 2: Pfad nicht gefunden 3: Datei nicht gefunden 4: falscher Dateityp 11: Datei wird benutzt 12: keine Ressourcen frei 20: sonstiger Fehler filename Name der Datei, die gelöscht werden soll.
  • Seite 83: Read: Zeilen In Datei Lesen

    Flexible NC-Programmierung 1.20 READ: Zeilen in Datei lesen 1.20 READ: Zeilen in Datei lesen 1.20 Funktion Der READ-Befehl liest in der angegebenen Datei eine oder mehrere Zeilen und legt die gelesenen Informationen in einem Feld vom Typ STRING ab. Jede gelesene Zeile belegt in diesem Feld ein Feldelement.
  • Seite 84 Flexible NC-Programmierung 1.20 READ: Zeilen in Datei lesen line Positionsangabe des zu lesenden Zeilenbereichs (Call-By-Value-Parameter vom Typ INT). 0: Es werden die mit dem Parameter "number" angegebene Anzahl der Zeilen vor dem Dateiende gelesen 1 bis n: Nummer der ersten zu lesenden Zeile number Anzahl der zu lesenden Zeilen (Call-By-Value-Parameter vom Typ INT) result...
  • Seite 85: Isfile: Datei Im Anwendunsspeicher Nck Vorhanden

    Flexible NC-Programmierung 1.21 ISFILE: Datei im Anwendunsspeicher NCK vorhanden 1.21 ISFILE: Datei im Anwendunsspeicher NCK vorhanden 1.21 Funktion Mit dem ISFILE-Befehl wird geprüft, ob eine Datei im Anwenderspeicher des NCK's (passives Filesystem) existiert. Als Ergebnis wird TRUE (Datei vorhanden) oder FALSE (Datei nicht vorhanden) geliefert.
  • Seite 86: Filedate/Time/Size/Stat/Info: File Informationen

    Flexible NC-Programmierung 1.22 FILEDATE/TIME/SIZE/STAT/INFO: File Informationen 1.22 FILEDATE/TIME/SIZE/STAT/INFO: File Informationen 1.22 Funktion Über die Sprachbefehle FILEDATE, FILETIME, FILESIZE, FILESTAT und FILEINFO können bestimmte File Informationen wie Datum, Urzeit, aktuelle Dateigröße, File Status oder die Summe dieser Informationen vom Anwenderspeicher des NCK`s (passives Filesystem) ausgelesen werden.
  • Seite 87 Flexible NC-Programmierung 1.22 FILEDATE/TIME/SIZE/STAT/INFO: File Informationen file Name bzw. Pfad der zu lesenden Datei (Call-By-Value-Parameter vom Typ STRING mit einer maximalen Länge von 160 Byte). Die Datei muss sich im Anwenderspeicher des NCKs (Passives Filesystem) befinden. Dem Dateinamen kann die Domainkennung _N_ vorangestellt werden.
  • Seite 88: Checksum: Checksummenbildung Über Ein Feld

    Flexible NC-Programmierung 1.23 CHECKSUM: Checksummenbildung über ein Feld 1.23 CHECKSUM: Checksummenbildung über ein Feld 1.23 Funktion Mit CHECKSUM bilden Sie die Checksumme über ein Feld. Anwendung: Prüfung, ob sich beim Abspanen die Eingangskontur geändert hat. Programmierung error=CHECKSUM(VAR STRING[16] chksum, STRING[32]array, INT first, INT last) Parameter CHECKSUM...
  • Seite 89: Roundup: Aufrunden

    Flexible NC-Programmierung 1.24 ROUNDUP: Aufrunden Beispiel N10 DEF INT ERROR N20 DEF STRING[16] MY_CHECKSUM N30 DEF INT MY_VAR[4,4] N40 MY_VAR=... N50 ERROR=CHECKSUM (CHECKSUM;"MY_VAR", 0, 2) liefert in MY_CHECKSUM den Wert "A6FC3404E534047C" 1.24 ROUNDUP: Aufrunden 1.24 Funktion Die Funktion ROUNDUP liefert bei ●...
  • Seite 90 Flexible NC-Programmierung 1.24 ROUNDUP: Aufrunden Beispiele ROUNDUP(3.1) ergibt 4.0 ROUNDUP(3.6) ergibt 4.0 ROUNDUP(-3.1) ergibt -3.0 ROUNDUP(-3.6) ergibt -3.0 ROUNDUP(3.0) ergibt 3.0 ROUNDUP(3) ergibt 3.0 Arbeitsvorbereitung 1-76 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 91: Unterprogrammtechnik, Makrotechnik

    Unterprogrammtechnik, Makrotechnik Unterprogramme einsetzen Funktion Im Prinzip ist ein Unterprogramm aufgebaut wie ein Teileprogramm. Es setzt sich aus NC- Sätzen mit Fahr- und Schaltbefehlen zusammen. Prinzipiell besteht zwischen Haupt- und Unterprogramm kein Unterschied. Das Unterprogramm enthält entweder Arbeitsabläufe oder Arbeitsabschnitte, die mehrfach durchlaufen werden sollen.
  • Seite 92 Unterprogrammtechnik, Makrotechnik 2.1 Unterprogramme einsetzen Anwendung Bearbeitungsfolgen, die sich wiederholen, programmiert man nur einmal in einem Unterprogramm. Beispielsweise bestimmte Konturformen, die immer wieder vorkommen oder auch Bearbeitungszyklen. Dieses Unterprogramm kann dann in jedem beliebigen Hauptprogramm aufgerufen und abgearbeitet werden. Aufbau des Unterprogramms Der Aufbau des Unterprogramms ist identisch mit dem des Hauptprogramms.
  • Seite 93 Interruptroutinen sollten Sie 4 Ebenen freihalten bzw. nur 7 Unterprogrammaufrufe verschachteln. Für SIEMENS Bearbeitungs- und Messzyklen werden 3 Ebenen benötigt. Soll ein Zyklus von einem Unterprogramm aufgerufen werden, kann dies maximal in Ebene 5 erfolgen (falls 4 Ebenen für Interruptroutinen reserviert bleiben).
  • Seite 94: Unterprogramme Mit Save-Mechanismus

    Unterprogrammtechnik, Makrotechnik 2.2 Unterprogramme mit SAVE-Mechanismus Unterprogramme mit SAVE-Mechanismus Funktion Hierfür geben Sie bei der Definitionsanweisung mit PROC zusätzlich den Befehl SAVE an. Programmierung Im Unterprogramm PROC Unterprogrammname SAVE Durch das SAVE-Attribut werden die modalen G-Funktionen nach dem Ende der Unterprogramme auf den Wert, den sie beim Start der Unterprogramme hatten, eingestellt.
  • Seite 95: Unterprogramme Mit Parameterübergabe (Proc, Var)

    Unterprogrammtechnik, Makrotechnik 2.3 Unterprogramme mit Parameterübergabe (PROC, VAR) Unterprogramme mit Parameterübergabe (PROC, VAR) Funktion Programmanfang, PROC Ein Unterprogramm, das beim Programmablauf vom aufrufenden Programm Parameter übernehmen soll, wird mit dem Schlüsselwort PROC gekennzeichnet. Unterprogrammende M17, RET Mit dem Befehl M17 kennzeichnet man das Unterprogrammende mit gleichzeitiger Anweisung zum Rücksprung in das aufrufende Hauptprogramm.
  • Seite 96: Beispiel Parameterübergabe Zwischen Haupt- Und Unterprogramm

    Unterprogrammtechnik, Makrotechnik 2.3 Unterprogramme mit Parameterübergabe (PROC, VAR) Hinweis Die Definitionsanweisung mit PROC muss in einem eigenen NC-Satz programmiert werden. Für die Parameterübergabe können maximal 127 Parameter vereinbart werden. Beispiel Parameterübergabe zwischen Haupt- und Unterprogramm N10 DEF REAL LAENGE,BREITE N20 LAENGE=12 BREITE=10 N30 RAHMEN(LAENGE,BREITE) Die im Hauptprogramm in N20 zugewiesenen Werte werden beim Unterprogrammaufruf in N30 übergeben.
  • Seite 97: Beispiel Variablen Feldlängen

    Unterprogrammtechnik, Makrotechnik 2.3 Unterprogramme mit Parameterübergabe (PROC, VAR) ● Parameterübergabe mit Datenaustausch (Call-by-reference) Jede Änderung der Parameter im Unterprogramm bewirkt gleichzeitig die Änderung des Parameters im Hauptprogramm (siehe Bild). Beispiel Variablen Feldlängen %_N_BOHRPLATTE_MPF Hauptprogramm DEF REAL TABELLE[100,2] ;Positionstabelle definieren EXTERN BOHRBILD (VAR REAL[,2],INT) TABELLE[0,0]=-17.5 ;Positionen festlegen …...
  • Seite 98 Unterprogrammtechnik, Makrotechnik 2.3 Unterprogramme mit Parameterübergabe (PROC, VAR) IF ZAEHLER<ANZAHL GOTOB STEP ;Unterprogrammende Unterbrechungsfreier Bahnsteuerbetrieb Voraussetzung dafür, dass der Bahnsteuerbetrieb nicht unterbrochen wird ist: Das Unterprogramm darf kein SAVE-Attribut besitzen. Weitere Hinweise zum SAVE- Mechanismus siehe Kapitel Unterprogramm mit SAVE-Mechanismus. RET muss im eigenen NC-Satz programmiert werden.
  • Seite 99: Unterprogramme Aufrufen (L Bzw. Extern)

    Unterprogrammtechnik, Makrotechnik 2.4 Unterprogramme aufrufen (L bzw. EXTERN) Unterprogramme aufrufen (L bzw. EXTERN) Funktion Unterprogrammaufrufe ohne Parameterübergabe Im Hauptprogramm rufen Sie das Unterprogramm entweder ● mit Adresse L und Unterprogrammnummer oder ● durch Angabe des Programmnamens auf. Beispiel: N10 L47 oder N10 ZAPFEN_2 Programmierung Unterprogramm mit Parameterübergabe, Erklärung mit EXTERN...
  • Seite 100 Unterprogrammtechnik, Makrotechnik 2.4 Unterprogramme aufrufen (L bzw. EXTERN) Parameter Adresse L Unterprogramm-Nummer. Für den Wert sind 7 Dezimalstellen (nur ganzzahlig) möglich. Achtung: Führende Nullen sind bei der Namensgebung von Bedeutung (z. B. sind L123, L0123 und L00123 drei verschiedene Unterprogramme). EXTERN Bekanntmachung eines Unterprogramms mit Parameterangabe.
  • Seite 101 Unterprogrammtechnik, Makrotechnik 2.4 Unterprogramme aufrufen (L bzw. EXTERN) Beispiel Unterprogrammaufruf mit Parameterübergabe N10 DEF REAL LAENGE,BREITE,TIEFE N20 … N30 LAENGE=15.3 BREITE=20.2 TIEFE=5 N40 RAHMEN(LAENGE,BREITE,TIEFE) oder N40 RAHMEN(15.3,20.2,5) Beispiel Unterprogramm PROC SUB1 (INT VAR1, DOUBLE VAR2) IF $P_SUBPAR[1]==TRUE ;Parameter VAR1 wurde im Unterprogrammaufruf programmiert ELSE ;Parameter VAR1 wurde im Unterprogrammaufruf nicht programmiert ;und vom System mit dem Defaultwert 0 vorbesetzt...
  • Seite 102 Unterprogrammtechnik, Makrotechnik 2.4 Unterprogramme aufrufen (L bzw. EXTERN) Beschreibung Vorsicht Unterprogrammdefinition entspricht Unterprogrammaufruf Sowohl die Variablentypen als auch die Reihenfolge der Übergabe muss mit den Definitionen, die im Unterprogrammnamen unter PROC vereinbart wurden, übereinstimmen. Die Parameternamen können in Haupt- und Unterprogramm unterschiedlich sein. Definition im Unterprogramm: PROC RAHMEN(REAL LAENGE, REAL BREITE, REAL TIEFE) Aufruf im Hauptprogramm:...
  • Seite 103 Unterprogrammtechnik, Makrotechnik 2.4 Unterprogramme aufrufen (L bzw. EXTERN) Hauptprogramm als Unterprogramm aufrufen Auch ein Hauptprogramm kann als Unterprogramm aufgerufen werden. Das im Hauptprogramm gesetzte Programmende M2 oder M30 wird in diesem Fall wie M17 (Programmende mit Rücksprung ins aufrufende Programm) gewertet. Den Aufruf programmieren Sie durch Angabe des Programmnamens.
  • Seite 104: Parametrierbarer Unterprogrammrücksprung (Ret)

    Unterprogrammtechnik, Makrotechnik 2.5 Parametrierbarer Unterprogrammrücksprung (RET) Parametrierbarer Unterprogrammrücksprung (RET) Funktion Im allgemeinen wird aus einem Unterprogramm mit einem Unterprogrammende RET oder M17 in das aufgerufene Programm zurückgesprungen und die Bearbeitung des Teileprogramms mit der auf den Unterprogrammaufruf folgenden Programmzeile fortgesetzt. Es gibt jedoch auch Anwendungsfälle, wo es gewünscht ist, die Programmbearbeitung an einer anderen Stelle fortzusetzen: ●...
  • Seite 105: Beispiel Fehlerhandling: Wiederaufsetzen Im Hauptprogramm Nach Asup-Bearbeitung

    Unterprogrammtechnik, Makrotechnik 2.5 Parametrierbarer Unterprogrammrücksprung (RET) <Satz nach Satz mit Satznummer/Label>, Parameter vom Typ INTEGER Ist der Wertgrößer als 0, wird mit dem nächsten Satz nach "Satznummer/Label" fortgesetzt. Ist der Wertgleich 0, erfolgt der Unterprogrammrücksprung auf den Satz mit <Satznummer/Label>. <Anzahl_Rücksprungebenen>, Parameter vom Typ INTEGER mit den zulässigen Werten1 bis 11.
  • Seite 106 Unterprogrammtechnik, Makrotechnik 2.5 Parametrierbarer Unterprogrammrücksprung (RET) 2. <Satz nach Satz mit Satznummer/Label> Der Unterprogrammrücksprung erfolgt auf den Satz nach dem Satz mit <Satznummer/Label>. 3. <Anzahl der Rücksprungebenen> Das Programm wird in der aktuellen Programmebene minus <Anzahl der Rücksprungebenen> fortgesetzt. Arbeitsvorbereitung 2-16 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 107 Unterprogrammtechnik, Makrotechnik 2.5 Parametrierbarer Unterprogrammrücksprung (RET) Nicht zulässige Rücksprungebenen Ist für die Anzahl der Rücksprungebenen ein ● negativer Wert oder ● ein Wert größer als die aktuell aktiven Programmebenen –(maximal 11) programmiert, wird der Alarm 14091 mit dem Parameter 5 ausgegeben. Rücksprung mit SAVE-Anweisungen Beim Rücksprung über mehrere Programmebenen werden die SAVE-Anweisungen der einzelnen Programmebenen ausgewertet.
  • Seite 108: Unterprogramm Mit Programmwiederholung (P)

    Unterprogrammtechnik, Makrotechnik 2.6 Unterprogramm mit Programmwiederholung (P) Unterprogramm mit Programmwiederholung (P) Funktion Soll ein Unterprogramm mehrfach hintereinander abgearbeitet werden, kann im Satz mit dem Unterprogrammaufruf unter der Adresse P die gewünschte Anzahl der Programmwiederholungen programmiert werden. Parameter Vorsicht Unterprogrammaufruf mit Programmwiederholung und Parameterübergabe Parameter werden nur beim Programmaufruf bzw.
  • Seite 109 Unterprogrammtechnik, Makrotechnik 2.6 Unterprogramm mit Programmwiederholung (P) Das Unterprogramm Rahmen soll dreimal hintereinander abgearbeitet werden. Arbeitsvorbereitung 2-19 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 110: Modales Unterprogramm (Mcall)

    Unterprogrammtechnik, Makrotechnik 2.7 Modales Unterprogramm (MCALL) Modales Unterprogramm (MCALL) Funktion Mit dieser Funktion wird das Unterprogramm nach jedem Satz mit Bahnbewegung automatisch aufgerufen und abgearbeitet. Hierdurch lässt sich der Aufruf von Unterprogrammen, die an unterschiedlichen Werkstückpositionen abgearbeitet werden sollen, automatisieren; zum Beispiel für die Herstellung von Bohrbildern. Modalen Unterprogrammaufruf ausschalten Mit MCALL ohne Unterprogrammaufruf oder durch Programmierung eines neuen modalen Unterprogrammaufrufs für ein neues Unterprogramm.
  • Seite 111 Unterprogrammtechnik, Makrotechnik 2.7 Modales Unterprogramm (MCALL) In diesem Beispiel stehen die nachfolgenden NC-Sätze mit programmierten Bahnachsen in Unterprogramm L80. L70 wird durch L80 aufgerufen. Arbeitsvorbereitung 2-21 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 112: Unterprogramm Indirekt Aufrufen (Call)

    Unterprogrammtechnik, Makrotechnik 2.8 Unterprogramm indirekt aufrufen (CALL) Unterprogramm indirekt aufrufen (CALL) Funktion In Abhängigkeit von den gegebenen Bedingungen können an einer Stelle unterschiedliche Unterprogramme aufgerufen werden. Hierzu wird der Name des Unterprogramms in einer Variablen vom Typ STRING hinterlegt. Der Unterprogrammaufruf erfolgt mit CALL und dem Variablennamen.
  • Seite 113: Programmierung

    Unterprogrammtechnik, Makrotechnik 2.9 Programmteilwiederholung mit indirekter Programmierung (CALL) Programmierung CALL <Programmname> BLOCK <Startlabel> TO <Endelabel> CALL BLOCK <Startlabel> TO <Endelabel> Parameter CALL Schlüsselwort für indirekten Unterprogrammaufruf <Programmname> (Option) Variable oder Konstante vom Typ String Name des Programms, das den zu bearbeitenden Programmteil enthält.
  • Seite 114: Indirekter Aufruf Eines In Iso-Sprache Programmierten Programms (Isocall)

    Programm aufgerufen werden. Dabei wird der in den Maschinendaten eingestellte ISO-Mode aktiviert. Am Programmende wird wieder der ursprüngliche Bearbeitungsmode wirksam. Ist in den Maschinendaten kein ISO-Mode eingestellt, erfolgt der Aufruf des Unterprogramms im Siemens-Mode. Weitere Informationen zum ISO-Mode siehe /FBFA/ Funktionsbeschreibung ISO-Dialekte.
  • Seite 115: Unterprogramm Mit Pfadangabe Und Parametern Aufrufen (Pcall)

    Unterprogrammtechnik, Makrotechnik 2.11 Unterprogramm mit Pfadangabe und Parametern aufrufen (PCALL) 2.11 Unterprogramm mit Pfadangabe und Parametern aufrufen (PCALL) 2.11 Funktion Mit PCALL können Unterprogramme mit absoluter Pfadangabe und Parameterübergabe aufgerufen werden. Programmierung PCALL <Pfad/Programmname>(Parameter 1, …, Parameter n) Parameter PCALL Schlüsselwort für Unterprogrammaufruf mit absoluter Pfadangabe.
  • Seite 116: Suchpfad Bei Unterprogrammaufrufen Mit Callpath Erweitern

    Unterprogrammtechnik, Makrotechnik 2.12 Suchpfad bei Unterprogrammaufrufen mit CALLPATH erweitern 2.12 Suchpfad bei Unterprogrammaufrufen mit CALLPATH erweitern 2.12 Funktion Mit dem Befehl CALLPATH kann der Suchpfad für Unterprogrammaufrufe erweitert werden. Damit können auch Unterprogramme aus einem nicht ausgewählten Werkstückdirectory aufgerufen werden, ohne den vollständigen, absoluten Pfadnamen des Unterprogramms anzugeben.
  • Seite 117 Unterprogrammtechnik, Makrotechnik 2.12 Suchpfad bei Unterprogrammaufrufen mit CALLPATH erweitern Beispiel CALLPATH ("/_N_WKS_DIR/_N_MYWPD_WPD") Damit wird folgender Suchpfad eingestellt (Position 5. ist neu): 1. aktuelles Directory/unterprogrammbezeichner 2. aktuelles Directory/unterprogrammbezeichner_SPF 3. aktuelles Directory/unterprogrammbezeichner_MPF 4. /_N_SPF_DIR/unterprogrammbezeichner_SPF 5. /_N_WKS_DIR/_N_MYWPD/unterprogrammbezeichner_SPF 6. N_CUS_DIR/_N_MYWPD/unterprogrammbezeichner_SPF 7. /_N_CMA_DIR/unterprogrammbezeichner_SPF 8. /_N_CST_DIR/unterprogrammbezeichner_SPF Hinweis CALLPATH kann auch in INI-Dateien programmiert werden.
  • Seite 118: Externes Unterprogramm Abarbeiten (Extcall)

    Unterprogrammtechnik, Makrotechnik 2.13 Externes Unterprogramm abarbeiten (EXTCALL) 2.13 Externes Unterprogramm abarbeiten (EXTCALL) 2.13 Funktion Mit EXTCALL können Sie ein Programm vom HMI im Modus "Abarbeiten von Extern" nachladen. Dabei können alle Programme, die über die Verzeichnis-Struktur des HMI erreichbar sind, nachgeladen und abgearbeitet werden. Programmierung EXTCALL ("<Pfad/Programmname>") Parameter...
  • Seite 119: Beispiele

    Unterprogrammtechnik, Makrotechnik 2.13 Externes Unterprogramm abarbeiten (EXTCALL) Beispiele 1. Abarbeiten von der lokalen Festplatte Systeme: SINUMERIK solution line / powerline mit HMI Advanced Das Hauptprogramm "_N_MAIN_MPF" befindet sich im NC-Speicher und ist zur Abarbeitung angewählt: N010 PROC MAIN N020 ... N030 EXTCALL ("SCHRUPPEN") N040 ...
  • Seite 120 Unterprogrammtechnik, Makrotechnik 2.13 Externes Unterprogramm abarbeiten (EXTCALL) Auswirkungen EXTCALL-Aufruf mit absoluter Pfadangabe Wenn das Unterprogramm unter dem angegebenen Pfad existiert, dann wird es nach dem EXTCALL-Aufruf ausgeführt. Wenn es nicht existiert, dann wird die Programmausführung abgebrochen. EXTCALL-Aufruf mit relativer Pfadangabe / ohne Pfadangabe Bei einem EXTCALL-Aufruf mit relativer Pfadangabe bzw.
  • Seite 121 Unterprogrammtechnik, Makrotechnik 2.13 Externes Unterprogramm abarbeiten (EXTCALL) Hinweis Abarbeiten von Extern über USB-Schnittstelle bei SINUMERIK solution line Sollen externe Programme von einem externen USB-Laufwerk über USB-Schnittstelle übertragen werden, so darf hierfür nur die Schnittstelle über X203 mit den Namen "TCU_1" verwendet werden. Ein USB-FlashDrive kann als persistentes Speichermedium nicht empfohlen werden.
  • Seite 122: Einzelsatzunterdrückung (Sblof, Sblon)

    Unterprogrammtechnik, Makrotechnik 2.14 Einzelsatzunterdrückung (SBLOF, SBLON) 2.14 Einzelsatzunterdrückung (SBLOF, SBLON) 2.14 Funktion Einzelsatzunterdrückung programmspezifisch Mit SBLOF gekennzeichnete Programme werden bei jedem Einzelsatztyp wie ein Satz komplett abgearbeitet. SBLOF steht in der PROC-Zeile und gilt bis zum Ende oder Abbruch des Unterprogramms. Mit dem Rücksprung-Befehl wird entschieden, ob am Ende des Unterprogramms angehalten wird oder nicht.
  • Seite 123 Unterprogrammtechnik, Makrotechnik 2.14 Einzelsatzunterdrückung (SBLOF, SBLON) Der Bereich zwischen N20 und N60 wird im Einzelsatzbetrieb als ein Schritt bearbeitet. Beispiel Zyklus soll für den Anwender wie ein Befehl wirken Hauptprogramm N10 G1 X10 G90 F200 N20 X-4 Y6 N30 CYCLE1 N40 G1 X0 N50 M30 Programm cycle:1...
  • Seite 124: Beispiel Einzelsatzunterdrückung Bei Programmschachtelung

    Unterprogrammtechnik, Makrotechnik 2.14 Einzelsatzunterdrückung (SBLOF, SBLON) Beispiel Mit MD 10702 IGNORE_SINGLEBLOCK_MASK, Bit 12 = 1 wird nicht angehalten Im Einzelsatztyp SBL2 (Stopp in jeder Teileprogrammzeile) in der SBLON-Anweisung. ;SBL2 ist aktiv ;$MN_IGNORE_SINGLEBLOCK_MASK = 'H1000' ;im MD 10702: Bit 12 = 1 setzen N10 G0 X0 ;in dieser Teileprogrammzeile stoppen N20 X10...
  • Seite 125: Einzelsatzsperre Für Asynchrone Unterprogramme

    Unterprogrammtechnik, Makrotechnik 2.14 Einzelsatzunterdrückung (SBLOF, SBLON) N130 M17 ;in diesem Rücksprungssatz wird ;gestoppt, ;SBLOF der PROC-Anweisung aktiv N30 X0 ;in diesem Satz wird gestoppt N40 M30 ;in diesem Satz wird gestoppt Randbedingungen ● Die aktuelle Satzanzeige kann in Zyklen mit DISPLOF unterdrückt werden. ●...
  • Seite 126: Aktuelle Satzanzeige Unterdrücken (Displof)

    Unterprogrammtechnik, Makrotechnik 2.15 Aktuelle Satzanzeige unterdrücken (DISPLOF) ● SBL1: IPO-Einzelsatz mit Stopp nach jedem Maschinenfunktionssatz. ● SBL2: Einzelsatz mit Stopp nach jedem Satz. ● SBL3: Halt im Zyklus (durch die Anwahl von SBL3 wird der SBLOF Befehl unterdrückt). Einzelsatzunterdrückung bei Programmschachtelung Wurde in einem Unterprogramm SBLOF in der PROC-Anweisung programmiert, so wird auf den Unterprogrammrücksprung mit M17 angehalten.
  • Seite 127 Unterprogrammtechnik, Makrotechnik 2.15 Aktuelle Satzanzeige unterdrücken (DISPLOF) Parameter DISPLOF Aktuelle Satzanzeige unterdrücken Beispiel Aktuelle Satzanzeige im Zyklus unterdrücken %_N_CYCLE_SPF ;$PATH=/_N_CUS_DIR PROC CYCLE (AXIS TOMOV, REAL POSITION) SAVE DISPLOF ;aktuelle Satzanzeige unterdrücken ;jetzt wird als aktueller Satz der ;Aufruf des Zyklus angezeigt ;z.
  • Seite 128: Unterprogramme Mit Vorbereitung Kennzeichnen (Prepro)

    Unterprogrammtechnik, Makrotechnik 2.16 Unterprogramme mit Vorbereitung kennzeichnen (PREPRO) 2.16 Unterprogramme mit Vorbereitung kennzeichnen (PREPRO) 2.16 Funktion Mit dem Schlüsselwort PREPRO können im Hochlauf am Ende der PROC-Anweisungszeile alle Dateien gekennzeichnet werden. Maschinenhersteller Diese Art der Programmvorbereitung ist vom entsprechend eingestellten Maschinendatum abhängig.
  • Seite 129: Zyklen: Anwenderzyklen Parametrieren

    Unterprogrammtechnik, Makrotechnik 2.17 Zyklen : Anwenderzyklen parametrieren 2.17 Zyklen: Anwenderzyklen parametrieren 2.17 Funktion Mit den Dateien cov.com und uc.com können eigene Zyklen parametriert werden. Die Datei cov.com wird mit den Standardzyklen geliefert und ist entsprechend zu erweitern. Die Datei uc.com ist vom Anwender selbst zu erstellen. Beide Dateien sind im passiven Filesystem in das Verzeichnis "Anwenderzyklen"...
  • Seite 130 Unterprogrammtechnik, Makrotechnik 2.17 Zyklen : Anwenderzyklen parametrieren Beispiel Datei uc.com - Anwenderzyklenbeschreibung Die Erläuterung erfolgt anhand der Fortsetzung des Beispiels: Für die folgenden beiden Zyklen soll eine Zyklenparametrierung neu erstellt werden: PROC MEIN_ZYKLUS_1 (REAL PAR1, INT PAR2, CHAR PAR3, STRING[10] PAR4) ;Der Zyklus hat folgende Übergabeparameter: ;PAR1: Real-Wert im Bereich von -1000.001 <= PAR2 <= 123.456, Vorbelegung...
  • Seite 131 Unterprogrammtechnik, Makrotechnik 2.17 Zyklen : Anwenderzyklen parametrieren Beispiel Beide Zyklen Anzeigemaske für Zyklus MEIN_ZYKLUS_1 Anzeigemaske für Zyklus SPEZIALZYKLUS Syntaxbeschreibung für die Datei uc.com - Anwenderzyklenbeschreibung Kopfzeile pro Zyklus: wie in der Datei cov.com mit vorgesetztem "//" //C <Nummer> (<Zyklusname>) Kommentartext Beispiel: //C25 (MEIN_ZYKLUS_1) Anwenderzyklus_ Zeile für Beschreibung pro Parameter:...
  • Seite 132: Makrotechnik (Define

    Unterprogrammtechnik, Makrotechnik 2.18 Makrotechnik (DEFINE...AS) Minimalwert, Maximalwert (kann entfallen) Grenzen des einzugebenden Wertes, die bei der Eingabe überprüft werden; Werte außerhalb dieses Bereichs können nicht eingegeben werden. Es können Aufzählungswerte angegeben werden, die mit der Toggle-Taste bedient werden können; diese werden beginnend mit "*"...
  • Seite 133 Unterprogrammtechnik, Makrotechnik 2.18 Makrotechnik (DEFINE...AS) Parameter Vorsicht Schlüsselworte und reservierte Namen dürfen nicht mit Makros überdefiniert werden Mit Makrotechnik kann die Programmiersprache der Steuerung stark verändert werden! Setzen Sie deshalb die Makrotechnik mit großer Sorgfalt ein! DEFINE Makro definieren NAME Hier steht der Name des Makros Makrodefinition STRING Anweisung...
  • Seite 134 Unterprogrammtechnik, Makrotechnik 2.18 Makrotechnik (DEFINE...AS) ;$PATH=/_N_DEF_DIR ;Kundenspezifische Makros DEFINE PI AS 3.14 DEFINE TC1 AS M3 S1000 DEFINE M13 AS M3 M7 ;Spindel rechts, Kühlmittel ein DEFINE M14 AS M4 M7 ;Spindel links, Kühlmittel ein DEFINE M15 AS M5 M9 ;Spindel Halt, Kühlmittel aus DEFINE M6 AS L6 ;Aufruf des Werkzeugwechselprogramms...
  • Seite 135: Datei- Und Programmverwaltung

    Datei- und Programmverwaltung Programmspeicher Funktion Im Programmspeicher werden Dateien und Programme (z. B. Haupt- und Unterprogramme, Makro-Definitionen) persistent gespeichert (→ Passives Filesystem). Literatur: /FB2/ Funktionshandbuch Erweiterungsfunktionen; Speicherkonfiguration (S7) Daneben gibt es eine Anzahl von Dateitypen, die hier zwischengespeichert werden können und bei Bedarf (z.
  • Seite 136 Datei- und Programmverwaltung 3.1 Programmspeicher Standard-Verzeichnisse Folgende Verzeichnisse sind standardmäßig vorhanden: Verzeichnis Inhalt _N_DEF_DIR Datenbausteine und Makrobausteine _N_CST_DIR Standard-Zyklen _N_CMA_DIR Hersteller-Zyklen _N_CUS_DIR Anwender-Zyklen _N_WKS_DIR Werkstücke _N_SPF_DIR Globale Unterprogramme _N_MPF_DIR Hauptprogramme _N_COM_DIR Kommentare Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 137 Datei- und Programmverwaltung 3.1 Programmspeicher Dateitypen Im Programmspeicher können folgende Dateitypen eingebracht werden: Dateityp Beschreibung name _MPF Hauptprogramm name _SPF Unterprogramm name _TEA Maschinendaten name _SEA Settingdaten name _TOA Werkzeugkorrekturen name_ Nullpunktverschiebungen/Frame name _INI Initialisierungsdatei name _GUD Globale Anwenderdaten name _RPA R-Parameter name...
  • Seite 138 Datei- und Programmverwaltung 3.1 Programmspeicher _N_PART2_INI Allgemeines Initialisierungsprogramm der Daten für Programm Part 2 _N_PART2_UFR Initialisierungsprogramm für Frame-Daten für Programm Part 2 _N_WELLE_COM Kommentardatei Werkstückverzeichnisse am externen PC anlegen Die nachstehend beschriebene Vorgehensweise wird an einer externen Datenstation durchgeführt. Für die Datei- und Programmverwaltung (vom PC zur Steuerung), direkt an der Steuerung, finden Sie die Informationen in Ihrer Bedienungsanleitung.
  • Seite 139: Suchpfade Beim Unterprogrammaufruf

    Datei- und Programmverwaltung 3.1 Programmspeicher Suchpfade beim Unterprogrammaufruf Wird der Aufruf-Pfad nicht explizit im Teileprogramm beim Aufruf eines Unterprogramms (oder auch Initialisierungsdatei) angegeben, so wird das aufgerufene Programm nach einem festen Suchpfad ermittelt. Unterprogrammaufruf mit absoluter Pfadangabe Beispiel: CALL"/_N_CST_DIR/_N_CYCLE1_SPF" Unterprogrammaufruf ohne absoluter Pfadangabe In der Regel werden die Programme ohne Pfadangabe aufgerufen.
  • Seite 140: Arbeitsspeicher

    Datei- und Programmverwaltung 3.2 Arbeitsspeicher Arbeitsspeicher Funktion Der Arbeitsspeicher enthält die aktuellen System- und Anwenderdaten, mit denen die Steuerung betrieben wird (aktives Filesystem). Beispiel: Aktive Maschinendaten, Werkzeugkorrekturdaten, Nullpunktverschiebungen. Parameter Initialisierungsprogramme Hierbei handelt es sich um Programme, mit denen die Daten des Arbeitsspeichers vorbesetzt (initialisiert) werden.
  • Seite 141 Datei- und Programmverwaltung 3.2 Arbeitsspeicher Nach Inbetriebnahme der Steuerung ist ein Datensatz im Arbeitsspeicher vorhanden, der den ordnungsgemäßen Betrieb der Steuerung gewährleistet. Beispiel Vorgehensweise bei mehrkanaligen Steuerungen CHANDATA (Kanalnummer) für mehrere Kanäle ist nur in der Datei N_INITIAL_INI zulässig. N_INITIAL_INI ist die Inbetriebnahmedatei, mit der alle Daten der Steuerung initialisiert werden.
  • Seite 142: Anwenderdaten Definieren

    Datei- und Programmverwaltung 3.3 Anwenderdaten definieren Initialisierungsprogramme laden Die INI-Programme können auch als Teileprogramme angewählt und aufgerufen werden, wenn sie nur Daten eines Kanals verwenden. So ist es auch möglich, programmgesteuerte Daten zu initialisieren. Informationen zu allen Dateitypen finden Sie in der Bedienungsanleitung. Anwenderdaten definieren Funktion Achtung...
  • Seite 143: Beispiel Definitionsdatei, Globale Daten (Siemens)

    Optionaler Vorbesetzungswert, mehrere Werte bei Feldern, getrennt durch Komma oder REP (w1), SET(w1, W2, ...), (w1, w2, ...) Bei Typ Frame sind keine Initialisierungswerte möglich. Beispiel Definitionsdatei, globale Daten (Siemens) %_N_SGUD_DEF ;$PATH=/_N_DEF_DIR DEF NCK REAL RTP ;Rückzugsebene DEF CHAN INT SDIS ;Sicherheitsabstand...
  • Seite 144: Reservierte Bausteinnamen

    Im Verzeichnis /_N_DEF_DIR können folgende Bausteine hinterlegt werden: _N_SMAC_DEF enthält Makrodefinitionen (Siemens-Systemanwendungen) _N_MMAC_DEF enthält Makrodefinitionen (Maschinenhersteller) _N_UMAC_DEF enthält Makrodefinitionen (Anwender) _N_SGUD_DEF enthält Definitionen für globale Daten (Siemens- Systemanwendungen) _N_MGUD_DEF enthält Definitionen für globale Daten (Maschinenhersteller) _N_UGUD_DEF enthält Definitionen für globale Daten (Anwender) _N_GUD4_DEF frei definierbar _N_GUD5_DEF enthält Definitionen für Messzyklen (Siemens-Systemanwendungen)
  • Seite 145: Schutzstufen Für Anwenderdaten, Md, Sd Und Nc-Sprachbefehle

    Datei- und Programmverwaltung 3.4 Schutzstufen für Anwenderdaten, MD, SD und NC-Sprachbefehle _N_GUD4_DEF … _N_GUD9_DEF Dateien mit diesen Namen können Definitionen für GUD-Variable enthalten. 3. Definitionsdatei in den Programmspeicher der Steuerung laden Die Steuerung legt defaultmäßig immer ein Verzeichnis _N_DEF_DIR an. Dieser Name wird als Pfad in den Kopf der GUD-Definitionsdatei eingetragen und beim Einlesen über die entsprechende Schnittstelle ausgewertet.
  • Seite 146: Programmierung

    APR n für Lesen (Read) Schutzstufe n von 0 oder 10 (höchste Stufe) bis 7 oder 17 (niedrigste Stufe) Bedeutung der Schutzstufen n: 0 oder 10 SIEMENS 1 oder 11 OEM_HIGH 2 oder 12 OEM_LOW 3 oder 13 Endanwender 4 oder 14 Schlüsselschalter 3...
  • Seite 147: Automatische Aktivierung Von Guds Und Macs

    Datei- und Programmverwaltung 3.4 Schutzstufen für Anwenderdaten, MD, SD und NC-Sprachbefehle ;$PATH=/_N_DEF_DIR APR 15 APW 12 ;Schutzstufen für alle folgenden Variablen DEF CHAN REAL_CORRVAL DEF NCK INT MYCOUNT … GUD-Definitionsdatei erstmalig aktivieren Beim erstmaligen Aktivieren einer GUD-Definitionsdatei wird das möglicherweise darin enthaltene definierte Zugriffsrecht ausgewertet und auf die Schreib- und Leserechte der GUD-Definitionsdatei selbst automatisch rückübertragen.
  • Seite 148: Schutzstufen Für Maschinen- Und Settingdaten Ändern (Redef Md, Sd)

    Datei- und Programmverwaltung 3.4 Schutzstufen für Anwenderdaten, MD, SD und NC-Sprachbefehle GUD- und Makro-Definitionen laden Wird eine Definitions-Datei geladen, so erscheint eine Abfrage, ob die Datei aktiviert bzw. die Daten erhalten bleiben sollen. Lehnen Sie das Aktivieren ab, wird die Datei nicht geladen.
  • Seite 149 Datei- und Programmverwaltung 3.4 Schutzstufen für Anwenderdaten, MD, SD und NC-Sprachbefehle REDEF Neudefinition (REDEFintion) z. B. Maschinen- und Settingdaten einstellen Maschinen-/Settingdatum Maschinen- oder Settingdatum, dem eine Schutzstufe zugeordnet werden soll. Schutzstufe: Zugriffsschutz (Access Protection) APW n für Schreiben (Write) APR n für Lesen (Read) Schutzstufe n von 0 (höchste Stufe)
  • Seite 150: Schutzstufen Für Nc-Sprachbefehle (Redef)

    Datei- und Programmverwaltung 3.4 Schutzstufen für Anwenderdaten, MD, SD und NC-Sprachbefehle Beispiel Rechte bei einzelnen MD auf ursprünglichen Wert zurücksetzen %_N_SGUD_DEF ;$PATH=/_N_DEF_DIR REDEF $MA_CTRLOUT_SEGMENT_NR APR 7 APW 2 REDEF $MA_ENC_SEGMENT_NR APR 0 APW 0 REDEF $SN_JOG_CONT_MODE_LEVELTRIGGRD APR 7 APW 7 3.4.4 Schutzstufen für NC-Sprachbefehle (REDEF) Funktion...
  • Seite 151: Beispiel Unterprogrammaufruf In Definitionsdateien

    Datei- und Programmverwaltung 3.4 Schutzstufen für Anwenderdaten, MD, SD und NC-Sprachbefehle Parameter Der REDEF Befehl wirkt global für alle Kanäle und BAGs REDEF Wirkung und Anwendung des REDEF-Befehls NC-Sprachelement Sprachelement dem eine Schutzstufe für das Ausführen des Befehls zugeordnet werden soll: 1.
  • Seite 152: Redef: Attribute Von Nc-Sprachelementen Ändern

    Analog zu den GUD-Definitionen stehen eigene Definitionsdateien zur Verfügung, die im Steuerungshochlauf ausgewertet werden: Endanwender: /_N_DEF_DIR/_N_UACCESS_DEF Hersteller: /_N_DEF_DIR/_N_MACCESS_DEF Siemens: /_N_DEF_DIR/_N_SACCESS_DEF Unterprogrammaufruf in Definitionsdateien In den oben genannten Definitionsdateien können auch Unterprogramme aufgerufen werden, die REDEF Anweisungen enthalten. Die REDEF Anweisungen müssen grundsätzlich wie die DEF-Anweisungen am Anfang im Datenteil stehen.
  • Seite 153 Für Maschinen- und Settingdaten kann man nachträglich die voreingestellten Zugriffsberechtigungen überschreiben. Die zulässigen Werte reichen dabei von '0' (Siemens Passwort) bis '7' (Schlüsselschalterstellung 0) Optionale Parameter Wert (optional) Optionaler Parameter bei den Attributen INIPO, INIRE, INICF, PRLOC: Nachträgliche(r ) Startwert(e)
  • Seite 154 Datei- und Programmverwaltung 3.5 REDEF: Attribute von NC-Sprachelementen ändern Einzelwert z. B. 5 Werteliste z. B. (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) für Variable mit 10 Elementen mit REP (w1) w1: zu wiederholende Werteliste für Variable mit mehreren Elementen, z. B. REP(12) SET(w1, w2, w3, ...) oder (w1, w2, w3, ...)
  • Seite 155 Datei- und Programmverwaltung 3.5 REDEF: Attribute von NC-Sprachelementen ändern Nummer Bezeichner GCODE 42000 $SC_THREAD_START_ANGLE 42010 $SC_THREAD_RAMP_DISP DITS/DITE 42400 $SA_PUNCH_DWELLTIME PDELAYON 42800 $SA_SPIND_ASSIGN_TAB SETMS 43210 $SA_SPIND_MIN_VELO_G25 43220 $SA_SPIND_MAX_VELO_G26 43230 $SA_SPIND_MAX_VELO_LIMS LIMS 43300 $SA_ASSIGN_FEED_PER_REV_SOURCE FPRAON 43420 $SA_WORKAREA_LIMIT_PLUS 43430 $SA_WORKAREA_LIMIT_MINUS 43510 $SA_FIXED_STOP_TORQUE FXST 43520 $SA_FIXED_STOP_WINDOW FXSW...
  • Seite 156 Datei- und Programmverwaltung 3.5 REDEF: Attribute von NC-Sprachelementen ändern /_N_DEF_DIR/_N_SGUD_DEF REDEF $SA_SPIND_MAX_VELO_LIMS PRLOC ;Settingdatum für Grenzdrehzahl /_N_MPF_DIR/_N_MY_MPF N10 SETMS (3) N20 G96 S100 LIMS=2500 Die im Settingdatum ($SA_SPIND_MAX_VELO_LIMS) Drehzahlbegrenzung festgelegte Grenzdrehzahl sei 1200U/min. Da man in einem eingerichteten und fertig ausgetesteten Teileprogramm durchaus eine höhere Drehzahl zugelassen werden kann, wird hier LIMS=2500 programmiert.
  • Seite 157: Vorgabe Eines Defaultwertes

    Datei- und Programmverwaltung 3.5 REDEF: Attribute von NC-Sprachelementen ändern REDEF _MYGUD[1,1] INIRE // nicht möglich, Alarm wird ausgegeben // (Feldwert) ● Das Initialisieren von GUD-Feldern selbst bleibt unbeeinflusst. DEF NCK INT _MYGUD[10] =(0, 1, 2, 3, 4, 5, 6, 7, 8, 9) DEF NCK INT _MYGUD[100,100] = REP (12) DEF NCK INT _MYGUD[100,100] ;...
  • Seite 158: Strukturierungsanweisung Seform Im Stepeditor

    Datei- und Programmverwaltung 3.6 Strukturierungsanweisung SEFORM im Stepeditor Strukturierungsanweisung SEFORM im Stepeditor Funktion Die Anweisung SEFORM wird im Stepeditor ausgewertet, um daraus die Schrittansicht für HMI-Advanced zu generieren. Die Schrittansicht ist im HMI-Advanced verfügbar und dient zur besseren Lesbarkeit des NC-Unterprogramms. Mit der Strukturierungsanweisung SEFORM wird der Stepeditor (editorbasierte Programmunterstützung) über die drei angegebenen Parameter unterstützt.
  • Seite 159: Schutzbereiche

    Schutzbereiche Festlegung der Schutzbereiche (CPROTDEF, NPROTDEF) Funktion Mit Hilfe von Schutzbereichen lassen sich verschiedene Elemente an der Maschine, die Ausrüstung sowie das Werkstück vor falschen Bewegungen schützen. Werkzeugbezogene Schutzbereiche: Für Teile, die zum Werkzeug gehören (z. B. Werkzeug, Werkzeugträger). Werkstückbezogene Schutzbereiche: Für Teile, die zum Werkstück gehören (z.
  • Seite 160: Beschreibung

    Schutzbereiche 4.1 Festlegung der Schutzbereiche (CPROTDEF, NPROTDEF) Programmierung DEF INT NOT_USED CPROTDEF(n,t,applim,applus,appminus) NPROTDEF(n,t,applim,applus,appminus) EXECUTE (NOT_USED) Parameter DEF INT NOT_USED Lokale Variable, Datentyp Integer definieren (vgl. Kap. Bewegungssynchronaktion) CPROTDEF Kanalspezifische Schutzbereiche (nur für NCU 572/573) definieren NPROTDEF Maschinenspezifische Schutzbereiche definieren EXECUTE Definition beenden Nummer des definierten Schutzbereichs TRUE = Werkzeugbezogener Schutzbereich...
  • Seite 161 Schutzbereiche 4.1 Festlegung der Schutzbereiche (CPROTDEF, NPROTDEF) Konturbeschreibung von Schutzbereichen Die Kontur der Schutzbereiche wird mit maximal 11 Verfahrbewegungen in der angewählten Ebene angegeben. Dabei ist die erste Verfahrbewegung die Bewegung an die Kontur. Als Schutzbereich gilt dabei der Bereich links von der Kontur. Die zwischen CPROTDEF bzw. NPROTDEF und EXECUTE stehenden Verfahrbewegungen werden nicht ausgeführt, sondern definieren den Schutzbereich.
  • Seite 162: Schutzbereiche Aktivieren, Deaktivieren (Cprot, Nprot)

    Schutzbereiche 4.2 Schutzbereiche aktivieren, deaktivieren (CPROT, NPROT) Während der Definition der Schutzbereiche darf ● keine Fräserradius- bzw. Schneidenradiuskorrektur, ● keine Transformation, ● kein Frame aktiv sein. Es darf auch nicht Referenzpunktanfahren (G74), Festpunktanfahren (G75), Satzvorlauf- Stopp oder Programmende programmiert sein. Schutzbereiche aktivieren, deaktivieren (CPROT, NPROT) Funktion Vorher definierte Schutzbereiche zur Kollisionsüberwachung aktivieren, voraktivieren oder...
  • Seite 163: Beispiel Fräsen

    Schutzbereiche 4.2 Schutzbereiche aktivieren, deaktivieren (CPROT, NPROT) NPROT Aufruf maschinenspezifischer Schutzbereich Nummer des Schutzbereichs state Statusangabe 0 =Schutzbereich deaktivieren 1 = Schutzbereich voraktivieren 2 = Schutzbereich aktivieren 3 = Schutzbereich voraktivieren mit bedingtem Stopp xMov,yMov,zMov Bereits definierten Schutzbereich in den Geometrieachsen verschieben Beispiel Fräsen Für eine Fräsmaschine soll eine mögliche Kollision des Fräsers mit dem Messtaster...
  • Seite 164 Schutzbereiche 4.2 Schutzbereiche aktivieren, deaktivieren (CPROT, NPROT) NPROTDEF(1,FALSE,3,10,–10) Schutzbereich n–SB1 G01 X0 Y–10 Y–10 EXECUTE(SCHUTZB) NPROTDEF(2,FALSE,3,5,–5) Schutzbereich n–SB2 G01 X40 Y–5 Y–5 EXECUTE(SCHUTZB) CPROTDEF(1,TRUE,3,0,–100) Schutzbereich c–SB1 G01 X–20 Y–20 X–20 Y–20 EXECUTE(SCHUTZB) CPROTDEF(2,TRUE,3,–100,–150) Schutzbereich c–SB2 G01 X0 Y–10 G03 X0 Y10 J10 X0 Y–10 J–10 EXECUTE(SCHUTZB) CPROTDEF(3,TRUE,3,–150,–170)
  • Seite 165 Schutzbereiche 4.2 Schutzbereiche aktivieren, deaktivieren (CPROT, NPROT) Der Status ist immer kanalspezifisch, auch bei maschinenbezogenen Schutzbereichen. Wenn durch das PLC-Anwenderprogramm vorgesehen ist, dass ein Schutzbereich durch das PLC-Anwenderprogramm wirksam gesetzt werden kann, so erfolgt die dafür erforderliche Voraktivierung durch den Status = 1. Die Deaktivierung und damit das Ausschalten der Schutzbereiche erfolgt durch den Status = 0.
  • Seite 166: Überprüfung Auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung Und Softwarelimits

    Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits Funktion Die Funktion CALCPOSI dient dazu zu überprüfen, ob ausgehend von einem gegebenen Startpunkt die Geometrieachsen einen vorgegebenen Weg verfahren können, ohne die Achsgrenzen (Softwarelimits), Arbeitsfeldbegrenzungen oder Schutzbereiche zu verletzen. Für den Fall, dass der vorgegebene Weg nicht gefahren werden kann, wird der maximal zulässige Wert zurückgeben.
  • Seite 167 Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits Hunderterstelle 100: Der positive Grenzwert ist verletzt (nur, wenn die Einerstelle 1 oder 2 ist, d. h. bei Softwarelimits und Arbeitsfeldbegrenzung) 100: Es ist ein NCKSchutzbereich verletzt (nur, wenn die Einerstelle 3 ist).
  • Seite 168 Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits _BASE_SYS FALSE oder Parameter nicht angegeben: Bei der Bewertung der Positions- und Längenangaben wird der G-Code der Gruppe 13 (G70, G71, G700, G710; inch/metrisch) ausgewertet. Bei aktivem G70 und metrischem Grundsystem (bzw. aktivem G71 und inch) werden die WKSSystemvariablen $AA_IW[X] und $AA_MW[X]) im Grundsystem geliefert und müssen gegebenenfalls zur Verwendung durch die Funktion CALCPOSI umgerechnet werden.
  • Seite 169 Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits N10 def real _STARTPOS[3] N20 def real _MOVDIST[3] N30 def real _DLIMIT[5] N40 def real _MAXDIST[3] N50 def int _SB N60 def int _STATUS N70 cprotdef(2, true, 0) ;werkzeugbezogener Schutzbereich N80 g17 g1 x–y0 N90 g3 i2 x2 N100 i–x–...
  • Seite 170 Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits N190 nprotdef(3, false, 0) ;maschinenbezogener Schutzbereich N200 g17 g1 x10 y5 N210 x25 N220 y15 N230 x10 N240 y5 N250 execute(_SB) N260 cprot(2,2,0, 0, 0) ;Schutzbereiche aktivieren bzw. ;voraktivieren N270 cprot(4,1,0, 0, 0) N280 nprot(3,2,0, 0, 0) N290 g25 XX=–YY=–...
  • Seite 171 Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits N610 _DLIMIT[3] = 2. N620 _STATUS = calcposi(_STARTPOS,_MOVDIST, _DLIMIT, _MAXDIST,, 12) N630 _STARTPOS[0] = 0. N640 _STARTPOS[1] = 0. N650 _STARTPOS[2] = 0. N660 _MOVDIST[0] = 0. N670 _MOVDIST[1] = 30. N680 _MOVDIST[2] = 0. N690 trans x10 N700 arot z45 N710 _STATUS = calcposi(_STARTPOS,_MOVDIST, _DLIMIT, _MAXDIST)
  • Seite 172 Schutzbereiche 4.3 Überprüfung auf Schutzbereichsverletzung, Arbeitsfeldbegrenzung und Softwarelimits Die Überwachung der Softwarelimits und der Arbeitsfeldbegrenzungen ist wie im normalen Verfahrbetrieb abhängig von aktiven Einstellungen (Interfacesignale zur Auswahl der Softwarelimits 1 bzw. Softwarelimits 2, GWALIMON/WALIMOF, Settingdaten zur individuellen Aktivierung der Arbeitsfeldgrenzen und zur Festlegung, ob bei der Überwachung der Arbeitsfeldbegrenzungen der Radius des aktiven Werkzeuges berücksichtigt werden soll oder nicht).
  • Seite 173: Spezielle Wegbefehle

    Spezielle Wegbefehle Codierte Positionen anfahren (CAC, CIC, CDC, CACP, CACN) Funktion Über Maschinendaten können Sie für 2 Achsen jeweils maximal 60 (0 bis 59) Positionen in Positionstabellen eingeben. Programmierung CAC (n) oder CIC (n) oder CACP (n) oder CACN (n) Parameter CAC (n) Codierte Position absolut anfahren...
  • Seite 174: Spline-Interpolation (Aspline, Bspline, Cspline, Bauto, Bnat, Btan)

    Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) Beispiel Positioniertabelle für Linearachse und Rundachse Hinweis Falls eine Achse zwischen zwei Positionen steht, wird bei inkrementeller Angabe mit CIC(…) nicht verfahren. Es empfiehlt sich, den ersten Fahrbefehl immer mit absoluter Positionsangabe zu programmieren.
  • Seite 175 Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) Benutzer auch noch Einfluss auf eine Reihe von Parametern. Oftmals bedarf es einiger Versuche, um das gewünschte Bild zu erzeugen. Einen Spline programmieren Sie, wenn eine Punktfolge durch eine Kurve verbunden werden soll.
  • Seite 176 Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) A-, B- und C-Spline sind modal wirksam und gehören zur Gruppe der Wegbefehle. Die Werkzeugradiuskorrektur ist einsetzbar. Kollisionsüberwachung erfolgt in der Projektion auf die Ebene. Hinweis Parameter für A-SPLINE und C-SPLINE Für den Akima-Spline (A-Spline) und den Kubischen Spline (C-Spline) können Randbedingungen für das Übergangsverhalten am Beginn und am Ende der Spline Kurve programmiert werden.
  • Seite 177 Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) Hinweis Parameter für B-SPLINE Die programmierbaren Randbedingungen (siehe A- bzw. C-Spline) haben keinen Einfluss auf den B-Spline. Der B-Spline ist in Start- und Endpunkt immer tangential zum Kontrollpolygon. Punktgewicht:: PW = n Für jeden Stützpunkt ist die Programmierung der Gewichtsangabe als sogenanntes Punkt-Gewicht PW möglich.
  • Seite 178: Beispiel B-Spline

    Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) Beispiel B-Spline alle Gewichte 1 unterschiedliche Gewichte Kontrollpolygon N10 G1 X0 Y0 F300 G64 N10 G1 X0 Y0 F300 G64 N10 G1 X0 Y0 F300 G64 N20 BSPLINE N20 BSPLINE N20 ;entfällt N30 X10 Y20 N30 X10 Y20 PW=2...
  • Seite 179 Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) Beispiel C-Spline, am Anfang und am Ende Krümmung Null N10 G1 X0 Y0 F300 N15 X10 N20 BNAT ENAT ;C-Spline, am Anfang und am Ende Krümmung Null N30 CSPLINE X20 Y10 N40 X30 N50 X40 Y5 N60 X50 Y15...
  • Seite 180 Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) B-Spline Beim B-Spline sind die programmierten Positionen keine Stützpunkte, sondern lediglich Kontrollpunkte des Splines, d. h. die Kurve verläuft nicht direkt durch diese Punkte, sondern wird durch sie "angezogen". Die Verbindung der Punkte durch Geraden bildet das Kontrollpolygon des Splines.
  • Seite 181 Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) C-Spline Im Unterschied zum Akima-Spline ist der kubische Spline (C-Spline) in den Stützpunkten krümmungsstetig. Er neigt jedoch zu unerwarteten Schwingungen. Er kann dann eingesetzt werden, wenn die Punkte auf einer analytisch bekannten Kurve liegen. Der C-Spline benutzt Polynome 3.
  • Seite 182: Mindestanzahl An Spline-Sätzen

    Spezielle Wegbefehle 5.2 Spline-Interpolation (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN) Mindestanzahl an Spline-Sätzen Die G-Codes ASPLINE, BSPLINE und CSPLINE verbinden Satzendpunkte mit Splines. Dazu müssen im Vorlauf eine Reihe von Sätzen (Endpunkte) gleichzeitig berechnet werden. Die Größe des Puffers für die Berechnung beträgt standardmäßig 10 Sätze. Nicht jede Satzinformation ist ein Spline-Endpunkt.
  • Seite 183: Spline-Verbund (Splinepath)

    Spezielle Wegbefehle 5.3 Spline-Verbund (SPLINEPATH) Satzlänge ausreichend groß ist und nicht zu einer Verringerung der Bahngeschwindigkeit führt. Die Funktion wird aktiviert über das kanalspezifische Maschinendatum: MD20488 $MC_SPLINE_MODE (Einstellung für Spline-Interpolation) Literatur: /FB1/ Funktionshandbuch Grundfunktionen; Bahnsteuerbetrieb, Genauhalt, LookAhead (B1), Kapitel: Zusammenfassung kurzer Spline-Sätze Spline-Verbund (SPLINEPATH) Funktion Die im Splineverbund zu interpolierenden Achsen werden mit dem Befehl SPLINEPATH...
  • Seite 184: Beispiel Spline-Verbund Mit Drei Bahnachsen

    Spezielle Wegbefehle 5.3 Spline-Verbund (SPLINEPATH) Beispiel Spline-Verbund mit drei Bahnachsen N10 G1 X10 Y20 Z30 A40 B50 F350 N11 SPLINEPATH(1,X,Y,Z) ;Spline-Verbund N13 CSPLINE BAUTO EAUTO X20 Y30 Z40 A50 B60 ;C-Spline N14 X30 Y40 Z50 A60 B70 ;Stützpunkte … N100 G1 X… Y… ;Abwahl Spline-Interpolation Arbeitsvorbereitung 5-12...
  • Seite 185: Kompressor (Compof/On, Compcurv, Compcad)

    Spezielle Wegbefehle 5.4 Kompressor (COMPOF/ON, COMPCURV, COMPCAD) Kompressor (COMPOF/ON, COMPCURV, COMPCAD) Funktion Mit dem G-Code COMPON sind die Satzübergänge nur stetig in der Geschwindigkeit, während die Beschleunigung der beteiligten Achsen an den Satzübergängen Sprünge machen kann. Dies kann zur Anregung von Schwingungen der Maschine führen. Mit dem G-Code COMPCURV werden die Satzübergänge beschleunigungsstetig gestaltet.
  • Seite 186: Beispiel Compon

    Spezielle Wegbefehle 5.4 Kompressor (COMPOF/ON, COMPCURV, COMPCAD) Hinweis Die G-Codes COMPOF/COMPON, COMPCURV und COMPCAD sind modal wirksam. Beispiel COMPON N10 COMPON ;bzw. COMPCURV, Kompressor ein N11 G1 X0.37 Y2.9 F600 ;G1 muss vor dem Endpunkt und Vorschub ;stehen N12 X16.87 Y–.698 N13 X16.865 Y–.72 N14 X16.91 Y–.799…...
  • Seite 187 Spezielle Wegbefehle 5.4 Kompressor (COMPOF/ON, COMPCURV, COMPCAD) Voraussetzung Maschinenhersteller Für die Kompressorfunktion gibt es drei Maschinendaten: ● $MC_COMPRESS_BLOCK_PATH_LIMIT Eine maximale Weglänge wird eingestellt, bis zu der Sätze als komprimierbar gelten. Längere Sätze werden nicht komprimiert. ● $MA_COMPRESS_POS_TOL Für jede Achse kann eine Toleranz eingestellt werden. Die erzeugte Spline-Kurve weicht maximal um diesen Wert von den programmierten Endpunkten ab.
  • Seite 188 Spezielle Wegbefehle 5.4 Kompressor (COMPOF/ON, COMPCURV, COMPCAD) COMPCAD COMPCAD ist rechenzeit- und speicherplatzintensiv. Es sollte nur eingesetzt werden, wenn Maßnahmen zur Oberflächenverbesserung vom CAD/CAM-Programm nicht vorab geleistet werden können. Merkmale: ● COMPCAD erzeugt beschleunigungsstetig ineinander übergehende Polynomsätze. ● Bei benachbarten Bahnen führen die Abweichungen jeweils in die gleiche Richtung. ●...
  • Seite 189: Polynom-Interpolation (Poly, Polypath)

    Spezielle Wegbefehle 5.5 Polynom-Interpolation (POLY, POLYPATH) Polynom-Interpolation (POLY, POLYPATH) Funktion Im eigentlichen Sinn handelt es sich bei der Polynom-Interpolation (POLY) nicht um eine Spline-Interpolationsart. Sie ist in erster Linie als Schnittstelle für die Programmierung extern erzeugter Spline-Kurven gedacht. Hierbei können die Spline-Abschnitte direkt programmiert werden.
  • Seite 190 Spezielle Wegbefehle 5.5 Polynom-Interpolation (POLY, POLYPATH) POLY einschalten/ausschalten Die Polynominterpolation ist zusammen mit G0, G1, G2, G3, A-Spline, B-Spline und C- Spline in der ersten G-Gruppe. Wenn sie aktiv ist, ist es nicht erforderlich, die Polynomsyntax zu programmieren: Achsen, die nur mit ihrem Namen und Endpunkt programmiert sind, werden linear auf ihren Endpunkt verfahren.
  • Seite 191 Spezielle Wegbefehle 5.5 Polynom-Interpolation (POLY, POLYPATH) Beispiel Gültige Polynomsyntax mit PO Bisherige Polynomsyntax bleibt gültig ;Neue Polynomsyntax (ab SW 6) PO[Achsbezeichner]=(.. , ..) ;Achsbezeichner=PO(.. , ..) PO[PHI]=(.. , ..) ;PHI=PO(.. , ..) PO[PSI]=(.. , ..) ;PSI=PO(.. , ..) PO[THT]=(.. , ..) ;THT=PO(..
  • Seite 192: Beschreibung

    Spezielle Wegbefehle 5.5 Polynom-Interpolation (POLY, POLYPATH) Beschreibung Die Steuerung ist in der Lage, Kurven (Bahnen) zu verfahren, bei denen jede ausgewählte Bahnachse einer Polynom-Funktion max. 5. Grades folgt. Die allgemeine Form der Polynom-Funktion lautet: f(p)= a p + a oder f(p)= a p + a Dabei bedeuten:...
  • Seite 193 Spezielle Wegbefehle 5.5 Polynom-Interpolation (POLY, POLYPATH) Durch Belegen der Koeffizienten mit konkreten Werten sind die unterschiedlichsten Kurvenverläufe, wie Geraden-, Parabel-, Potenzfunktion, erzeugbar. Beim Setzen der Koeffizienten a = 0 oder a = 0 ergibt sich z. B. eine Gerade mit: f(p) = a Es gilt: = Achsposition am Ende des vorangehenden Satzes...
  • Seite 194 Spezielle Wegbefehle 5.5 Polynom-Interpolation (POLY, POLYPATH) Beispiel: POLY G90 X10 Y0 F100 ;Geometrieachsen verfahren ;linear auf die Position X10, Y0 PO[X]=(0,–) PO[Y]=(10) PO[]=(2,1) ;Geometrieachsen verfahren im ;Viertelkreis auf X0, Y10 Der konstante Koeffizient (a ) des Nennerpolynoms wird stets mit 1 angenommen, der angegebene Endpunkt ist unabhängig von G90/G91.
  • Seite 195: Einstellbarer Bahnbezug (Spath, Upath)

    Spezielle Wegbefehle 5.6 Einstellbarer Bahnbezug (SPATH, UPATH) Einstellbarer Bahnbezug (SPATH, UPATH) Funktion Während Polynominterpolation können vom Anwender zwei unterschiedliche Beziehungen zwischen den geschwindigkeitsbestimmenden FGROUP-Achsen und den übrigen Bahnachsen gewünscht sein: Letztere sollen ● entweder synchron zum Bahnweg der FGROUP-Achsen ● oder synchron zum Kurvenparameter geführt werden. Für die nicht in FGROUP enthaltenen Achsen gibt es daher zwei Möglichkeiten, der Bahn zu folgen: 1.
  • Seite 196 Spezielle Wegbefehle 5.6 Einstellbarer Bahnbezug (SPATH, UPATH) Beispiel 1 Im nachfolgenden Beispiel wird ein Quadrat mit 20 mm Kantenlänge mit G643 überschliffen. Die maximalen Abweichungen von der exakten Kontur werden dabei durch die Maschinendaten MD 33100: COMPRESS_POS_TOL[...] für jede Achse festgelegt. N10 G1 X…...
  • Seite 197: Messen Mit Schaltendem Taster (Meas, Meaw)

    Spezielle Wegbefehle 5.7 Messen mit schaltendem Taster (MEAS, MEAW) Randbedingungen Der eingestellte Bahnbezug hat keine Bedeutung bei ● Linear- und Kreisinterpolation, ● in Gewindesätzen und ● dann nicht, wenn alle Bahnachsen in FGROUP enthalten sind. Beschreibung Während Polynominterpolation - und damit seien immer die Polynominterpolation ●...
  • Seite 198: Programmierung

    Spezielle Wegbefehle 5.7 Messen mit schaltendem Taster (MEAS, MEAW) Das Messergebnis steht für die mit Messtaster erfassten Achsen unter folgenden Variablen zur Verfügung: ● Im Maschinenkoordinatensystem unter $AA_MM[Achse] ● Im Werkstückkoordinatensystem unter $AA_MW[Achse] Beim Lesen dieser Variablen wird intern kein Vorlaufstopp erzeugt. Mit STOPRE muss im NC-Programm an geeigneter Stelle ein Vorlaufstopp programmiert werden.
  • Seite 199: Beispiel Messsätze Programmieren

    Spezielle Wegbefehle 5.7 Messen mit schaltendem Taster (MEAS, MEAW) Parameter MEAS=±1 Messen mit Taster 1 auf Messeingang 1 MEAS=±2* Messen mit Taster 2 auf Messeingang 2 MEAW=±1 Messen mit Taster 1 auf Messeingang 1 MEAW=±2* Messen mit Taster 2 auf Messeingang 2 G...
  • Seite 200: Erweiterte Messfunktion (Measa, Meawa, Meac) (Option)

    Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Funktion Beim axialen Messen können mehrere Messtaster und mehrere Messsysteme benutzt werden. Bei MEASA, MEAWA werden für die jeweils programmierte Achse bis zu vier Messwerte pro Messung erfasst und passend zum Trigger-Ereignis in Systemvariablen abgelegt.
  • Seite 201 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Parameter MEASA Messen mit Restweglöschen MEAWA Messen ohne Restweglöschen MEAC Kontinuierliches Messen ohne Restweglöschen Achse Name der zur Messung verwendeten Kanalachse Modus Zweistellige Angabe zum Betriebsmodus; bestehend aus Messmodus (Einerdekade) und 0: Modus 0: Messauftrag abbrechen 1: Modus 1: bis zu 4 verschiedene gleichzeitig aktivierb.
  • Seite 202 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Beispiel Messen mit Restweglöschen im Modus 1 b) mit 2 Messsystemen N200 MEASA[X] = (31,1-1) G01 X100 F100 ;Messen im Modus 1 mit beiden ;Messsystemen. Warten auf Messsignal ;mit steigender/fallender Flanke von ;Messtaster 1 auf dem Verfahrweg nach ;X = 100.
  • Seite 203 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) N170 R12 = $AA_MM3[X] ;Zum dritten programmierten ;Triggerereignis ;(steigende Flanke Messtaster 2) ;gehörigen Messwert speichern. N180 R13 = $AA_MM4[X] ;Zum vierten programmierten ;Triggerereignis ;(steigende Flanke Messtaster 2) ;gehörigen Messwert speichern. N190 ENDE: Beispiel Kontinuierliches Messen im Modus 1 (Auswertung in zeitlicher Reihenfolge) a) Messen von bis zu 100 Messwerten...
  • Seite 204 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Beschreibung Die Programmierung kann im Teileprogramm oder aus einer Synchronaktion (siehe Kapitel "Bewegungssynchronaktion") heraus erfolgen. Pro Achse kann dabei zu ein- und demselben Zeitpunkt nur ein Messauftrag aktiv sein. Hinweis Der Vorschub ist dem jeweiligen Messproblem anzupassen. Bei MEASA und MEAWA können korrekte Ergebnisse nur bei Vorschüben gewährleistet werden, bei denen nicht mehr als ein gleiches und nicht mehr als 4 verschiedene Trigger- Ereignisse pro Lagereglertakt eintreffen.
  • Seite 205 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Messen mit und ohne Restweglöschen, MEASA, MEAWA Bei der Programmierung von MEASA wird Restweglöschen erst nach der Erfassung aller geforderten Messwerte durchgeführt. Für spezielle Messaufgaben, bei denen in jedem Fall die programmierte Position angefahren werden soll, wird MEAWA eingesetzt.
  • Seite 206 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Messergebnisse für MEASA, MEAWA Die Messergebnisse stehen unter folgenden Systemvariablen zur Verfügung: ● Im Maschinen-Koordinatensystem: $AA_MM1[Achse] Messwert des programmierten Messsystems bei Triggerereignis $AA_MM4[Achse] Messwert des programmierten Messsystems bei Triggerereignis ● Im Werkstück-Koordinatensystem: $AA_WM1[Achse] Messwert des programmierten Messsystems bei Triggerereignis $AA_WM4[Achse]...
  • Seite 207 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Messauftrag mit 2 Messsystemen Wird ein Messauftrag mit zwei Messsystemen durchgeführt, wird jedes der beiden möglichen Trigger-Ereignisse von beiden Messsystemen der jeweiligen Achse erfasst. Die Belegung der reservierten Variablen ist damit vorgegeben: $AA_MM1[Achse] bzw.
  • Seite 208 Spezielle Wegbefehle 5.8 Erweiterte Messfunktion (MEASA, MEAWA, MEAC) (Option) Kontinuierliches Messen MEAC Die Messwerte liegen bei MEAC im Maschinenkoordinatensystem vor und werden im angegebenen FIFO[n]-Speicher (Umlaufspeicher) abgelegt. Sind für die Messung zwei Messtaster projektiert, werden die Messwerte des zweiten Messtasters getrennt im zusätzlich dafür projektierten (über MD einstellbar) FIFO[n+1]-Speicher abgelegt.
  • Seite 209: Spezielle Funktionen Für Den Oem-Anwender (Oemipo1, Oemipo2, G810 Bis G829)

    Spezielle Wegbefehle 5.9 Spezielle Funktionen für den OEM-Anwender (OEMIPO1, OEMIPO2, G810 bis G829) Spezielle Funktionen für den OEM-Anwender (OEMIPO1, OEMIPO2, G810 bis G829) Funktion OEM-Adressen Die Bedeutung der OEM-Adressen bestimmt der OEM-Anwender. Die Funktionalität wird über Compile-Zyklen eingebracht. 5 OEM-Adressen sind reserviert. Die Adressbezeichner sind einstellbar.
  • Seite 210: Programmierbares Bewegungsendekriterium (Finea, Coarsea, Ipoenda, Ipobrka, Adisposa)

    Spezielle Wegbefehle 5.11 Programmierbares Bewegungsendekriterium (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA) Hinweis Diese Funktion gehört nicht zum Standardumfang von SINUMERK und muss für die relevanten Softwarestände freigeschaltet werden. Literatur: /FBA/ Funktionsbeschreibung ISO-Dialekte. Programmierung FENDNORM G62 G41 oder G621 Parameter FENDNORM Automatischer Eckenverzögerung aus Eckenverzögerung an Innenecken bei aktiver Werkzeugradiuskorrektur G621...
  • Seite 211 Spezielle Wegbefehle 5.11 Programmierbares Bewegungsendekriterium (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA) Je nachdem welches Bewegungsendekriterium eingestellt ist, werden Teileprogrammsätze bzw. Technologiezyklussätze mit Einzelachsbewegungen unterschiedlich schnell beendet. Gleiches gilt für PLC über FC15/16/18. Programmierung FINEA[Achse] oder COARSEA[Achse] oder IPOENDA[Achse] oder IPOBRKA(Achse,[, [Wert in Prozent]]) Mehrfachangaben sind möglich oder ADISPOSA(Achse, [Int][, [Real]]) Mehrfachangaben sind möglich Parameter...
  • Seite 212: Beispiel Satzwechselkriterium Bremsrampe Im Teileprogramm

    Spezielle Wegbefehle 5.11 Programmierbares Bewegungsendekriterium (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA) Beispiel Bewegungsende bei Erreichen von Interpolator-Stopp N110 G01 POS[X]=100 FA[X]=1000 ACC[X]=90 IPOENDA[X] Fahren auf Position X100 mit einer Bahngeschwindigkeit von 1000 U/min mit einem Beschleunigungswert von 90% und dem Bewegungsende bei Erreichen von Interpolator Stopp N120 EVERY $A_IN[1] DO POS[X]=50 FA[X]=2000 ACC[X]=140 IPOENDA[X] Fahren auf Position X50, wenn der Eingang 1 aktiv ist, mit einer...
  • Seite 213: Beispiel Satzwechselkriterium Bremsrampe In Synchronaktionen

    Spezielle Wegbefehle 5.11 Programmierbares Bewegungsendekriterium (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA) Beispiel Satzwechselkriterium Bremsrampe in Synchronaktionen Im Technologie- Zyklus: FINEA ;Bewegungsendekriterium Genauhalt fein POS[X]=100 ;Technologie-Zyklus-Satzwechsel erfolgt, wenn die X-Achse ;die Position 100 und Genauhalt fein erreicht hat IPOBRKA(X,100) ;Satzwechselkriterium Bremsrampe aktivieren POS[X]=100 ;POS[X]=100;...
  • Seite 214: Programmierbarer Servo-Parametersatz (Scpara)

    Spezielle Wegbefehle 5.12 Programmierbarer Servo-Parametersatz (SCPARA) Zum bereits bestehenden Satzwechselkriterium in der Bremsrampe kann auch ein zusätzliches Satzwechselkriterium Toleranzfenster angewählt werden. Die Freigabe erfolgt erst, wenn die Achse ● wie bisher den vorgegebenen %-Wert ihrer Bremsrampe erreicht hat und ● ihre aktuelle Ist- oder Sollposition nicht weiter als eine Toleranz von der Endposition der Achse im Satz entfernt ist.
  • Seite 215 Spezielle Wegbefehle 5.12 Programmierbarer Servo-Parametersatz (SCPARA) Literatur: /FB1/ Funktionshandbuch Grundfunktionen; Vorschübe (V1), Kapitel "Vorschubbeeinflussung". Beispiel N110 SCPARA[X]= 3 ;Der 3. Parametersatz wird für die Achse X angewählt Arbeitsvorbereitung 5-43 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 216 Spezielle Wegbefehle 5.12 Programmierbarer Servo-Parametersatz (SCPARA) Arbeitsvorbereitung 5-44 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 217: Frames

    Frames Koordinatentransformation über Framevariable Funktion Neben den im Programmierhandbuch "Grundlagen" bereits beschriebenen Programmiermöglichkeiten können Sie Koordinatensysteme auch mit vordefinierten Framevariablen festlegen. Folgende Koordinatensysteme sind definiert: MKS: Maschinen-Koordinatensystem BKS: Basis-Koordinatensystem BNS: Basisnullpunkt-Koordinatensystem ENS: Einstellbares Nullpunkt-Koordinatensystem WKS: Werkstück-Koordinatensystem Was ist eine vordefinierte Framevariable? Vordefinierte Framevariablen sind Schlüsselwörter, die im Sprachgebrauch der Steuerung mit entsprechender Wirkung bereits festgelegt sind und im NC-Programm verarbeitet werden können.
  • Seite 218 Frames 6.1 Koordinatentransformation über Framevariable Mögliche Framevariable: ● Basisframe (Basisverschiebung) ● einstellbare Frames ● programmierbarer Frame Wertzuweisungen und Istwerte auslesen Zusammenhang Framevariable/Frame Eine Koordinatentransformation kann durch Wertzuweisung eines Frames an eine Framevariable aktiviert werden. Beispiel: $P_PFRAME=CTRANS(X,10) Framevariable: $P_PFRAME bedeutet: aktueller programmierbarer Frame. Frame: CTRANS(X,10) bedeutet: programmierbare Nullpunktverschiebung der X-Achse um 10 Istwerte auslesen...
  • Seite 219: Vordefinierte Framevariable ($P_Bframe, $P_Iframe, $P_Pframe, $P_Actframe)

    Frames 6.1 Koordinatentransformation über Framevariable 6.1.1 Vordefinierte Framevariable ($P_BFRAME, $P_IFRAME, $P_PFRAME, $P_ACTFRAME) $P_BFRAME Aktuelle Basisframevariable, die den Bezug zwischen Basiskoordinatensystem (BKS) und Basis-Nullpunktsystem (BNS) herstellt. Soll der durch $P_UBFR beschriebene Basisframe sofort im Programm wirksam werden, muss entweder ● ein G500, G54...G599 programmiert werden oder ●...
  • Seite 220 Frames 6.1 Koordinatentransformation über Framevariable $P_PFRAME Aktuelle, programmierbare Framevariable, die den Bezug zwischen dem Einstellbaren Nullpunktsystem (ENS) und dem Werkstückkoordinatensystem (WKS) herstellt. $P_PFRAME enthält den resultierenden Frame, der sich ● aus der Programmierung von TRANS/ATRANS, ROT/AROT, SCALE/ASCALE, MIRROR/AMIRROR bzw. ● aus der Zuweisung von CTRANS, CROT, CMIRROR, CSCALE an den programmierbaren FRAME ergibt Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 221 Frames 6.1 Koordinatentransformation über Framevariable $P_ACTFRAME Aktueller, resultierender Gesamtframe, der sich durch Verkettung aus ● der aktuellen Basisframevariablen $P_BFRAME, ● der aktuellen einstellbaren Framevariablen $P_IFRAME mit Systemframes und ● der aktuellen programmierbaren Framevariablen $P_PFRAME mit Systemframes ergibt. Systemframes, siehe Kapitel "Im Kanal wirksame Frames" $P_ACTFRAME beschreibt den aktuell gültigen Werkstücknullpunkt.
  • Seite 222 Frames 6.1 Koordinatentransformation über Framevariable Falls $P_BFRAME, $P_IFRAME oder $P_PFRAME verändert werden, wird $P_ACTFRAME neu berechnet. $P_ACTFRAME entspricht $P_BFRAME:$P_IFRAME:$P_PFRAME Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 223 Frames 6.1 Koordinatentransformation über Framevariable Basisframe und einstellbarer Frame wirken nach Reset, wenn das MD 20110 RESET_MODE_MASK folgendermaßen eingestellt ist: Bit0=1, Bit14=1 --> $P_UBFR (Basisframe) wirkt Bit0=1, Bit5=1 --> $P_UIFR[$P_UIFRNUM] (einst. Frame) wirkt Vordefinierte einstellbare Frames $P_UBFR Mit $P_UBFR wird der Basisframe programmiert, er wird aber nicht gleichzeitig im Teileprogramm aktiv.
  • Seite 224: Framevariablen/Frames Werte Zuweisen

    Frames 6.2 Framevariablen/Frames Werte zuweisen Framevariablen/Frames Werte zuweisen 6.2.1 Direkte Werte zuweisen (Achswert, Winkel, Maßstab) Funktion Im NC-Programm können Sie direkt Frames oder Framevariablen mit Werten belegen. Programmierung $P_PFRAME=CTRANS (X, Achswert, Y, Achswert, Z, Achswert, …) oder $P_PFRAME=CROT (X, Winkel, Y, Winkel, Z, Winkel, …) oder $P_UIFR[..]=CROT (X, Winkel, Y, Winkel, Z, Winkel, …) oder...
  • Seite 225 Frames 6.2 Framevariablen/Frames Werte zuweisen N10 $P_PFRAME=CTRANS(X,10,Y,20,Z,5):CROT(Z,45):CMIRROR(Y) Frame-Rot-Komponenten mit anderen Werten vorbelegen Mit CROT alle drei Komponenenten von UIFR mit Werten vorbelegen $P_UIFR[5]=CROT (X, 0, Y, 0, Z, 0) N100 $P_UIFR[5, y, rt]=0 N100 $P_UIFR[5, x, rt]=0 N100 $P_UIFR[5, z, rt]=0 Beschreibung Sie können mehrere Rechenvorschriften nacheinander programmieren.
  • Seite 226: Framekomponenten Lesen Und Verändern (Tr, Fi, Rt, Sc, Mi)

    Frames 6.2 Framevariablen/Frames Werte zuweisen Hinweis Die mit den genannten Befehlen programmierten Werte werden den Frames zugewiesen und abgespeichert. Aktiv werden die Werte erst, wenn sie dem Frame einer aktiven Framevariablen $P_BFRAME bzw. $P_PFRAME zugewiesen werden. 6.2.2 Framekomponenten lesen und verändern (TR, FI, RT, SC, MI) Funktion Sie haben die Möglichkeit, auf einzelne Daten eines Frames, z.
  • Seite 227: Beschreibung

    Frames 6.2 Framevariablen/Frames Werte zuweisen R12=$P_UIFR[25, Z, TR] Der Verschiebewert TR in Z aus dem Datensatz des eingestellten Frames Nr. 25 soll der Variablen R12 zugewiesen werden. R15=$P_PFRAME[Y, TR] Der Verschiebewert TR in Y des aktuellen programmierbaren Frames soll der Variablen R15 zugewiesen werden.
  • Seite 228: Verknüpfung Von Kompletten Frames

    Frames 6.2 Framevariablen/Frames Werte zuweisen Für vordefinierte Framevariable und eigendefinierte Frames geben Sie den Namen an, z. B. $P_IFRAME. Daten aufrufen In den eckigen Klammern stehen Achsname und Framekomponente des Wertes, auf den Sie zugreifen oder den Sie verändern wollen, z. B. [X, RT] oder [Z, MI]. 6.2.3 Verknüpfung von kompletten Frames Funktion...
  • Seite 229: Definition Neuer Frames (Def Frame)

    Frames 6.2 Framevariablen/Frames Werte zuweisen Programmierung Frames zuweisen DEF FRAME EINSTELLUNG1 Dem aktuellen programmierbaren Frame EINSTELLUNG1=CTRANS(X,10) werden die Werte des selbst $P_PFRAME=EINSTELLUNG1 definierten Frames EINSTELLUNG1 zugewiesen. DEF FRAME EINSTELLUNG4 EINSTELLUNG4=$P_PFRAME Der aktuelle programmierbare Frame $P_PFRAME=EINSTELLUNG4 wird zwischengespeichert und dann bei Bedarf wieder zurückgespeichert. Frameketten Die Frames werden in der programmierten Reihenfolge miteinander verkettet, die Framekomponenten wie z.
  • Seite 230: Grob- Und Feinverschiebung (Cfine; Ctrans)

    Frames 6.3 Grob- und Feinverschiebung (CFINE; CTRANS) Programmierung DEF FRAME PALETTE1 oder PALETTE1=CTRANS(…):CROT(…)… Parameter DEF FRAME Neue Frames erzeugen. PALETTE1 Name des neuen Frames =CTRANS(...): Den möglichen Funktionen Werte zuweisen CROT(...)... Grob- und Feinverschiebung (CFINE; CTRANS) Funktion Feinverschiebung Mit dem Befehl CFINE(X, ...,Y ...) kann eine Feinverschiebung des Basisframes und aller einstellbaren Frames programmiert werden.
  • Seite 231 Frames 6.3 Grob- und Feinverschiebung (CFINE; CTRANS) Programmierung $P_UBFR=CTRANS(x, 10) : CFINE(x, 0.1) ;Verkettung von Verschiebung, : CROT(x, 45) ;Feinverschiebung und Rotation $P_UIFR[1]=CFINE(x, 0.5 y, 1.0, z, ;der gesamte Frame wird mit CFINE 0.1) ;einschl. Grobverschiebung ;überschrieben Der Zugriff auf die Einzelkomponenten der Feinverschiebung erfolgt durch die Komponentenangabe FI (Translation Fine).
  • Seite 232: Drf-Verschiebung

    Frames 6.4 DRF-Verschiebung DRF-Verschiebung Verschiebung mit dem Handrad, DRF Zusätzlich zu allen in diesem Kapitel behandelten Verschiebungen können Nullpunktverschiebungen über Handrad (DRF-Verschiebung) festgelegt werden. Die DRF-Verschiebung wirkt im Basis-Koordinatensystem auf Geometrie- und Zusatzachsen: Die Handradzuordnung muss aber für die Maschinenachse erfolgen (z.B. über NC/PLC- Nahtstellensignale "Handrad aktivieren"), auf die die Geometrie- und Zusatzachse abgebildet wird.
  • Seite 233: Externe Nullpunktverschiebung

    Frames 6.5 Externe Nullpunktverschiebung Externe Nullpunktverschiebung Funktion Hierdurch haben Sie eine weitere Möglichkeit, den Nullpunkt zwischen Basis- und Werkstückkoordinatensystem zu verschieben. Bei der externen Nullpunktverschiebung können nur lineare Verschiebungen programmiert werden. Programmierung Die Programmierung der Verschiebewerte, $AA_ETRANS erfolgt über die Belegung der achsspezifischen Systemvariablen.
  • Seite 234: Preset-Verschiebung (Preseton)

    Frames 6.6 Preset-Verschiebung (PRESETON) Preset-Verschiebung (PRESETON) Funktion Für spezielle Anwendungen kann es erforderlich werden, einer oder mehreren Achsen an der aktuellen Position (im Stillstand) einen neuen, programmierten Istwert zuzuweisen. Vorsicht Mit der Funktion PRESETON wird der Referenzpunkt ungültig. Deshalb sollten Sie diese Funktion nur für Achsen ohne Referenzpunktpflicht einsetzen.
  • Seite 235: Frame-Berechnung Aus 3 Messpunkten Im Raum (Meaframe)

    Frames 6.7 Frame-Berechnung aus 3 Messpunkten im Raum (MEAFRAME) Achse A fährt auf Position 760. Maschinenachse A1 erhält an Position 760 den neuen Istwert 60. Ab jetzt wird im neuen Istwertsystem positioniert. Frame-Berechnung aus 3 Messpunkten im Raum (MEAFRAME) Funktion MEAFRAME ist eine Erweiterung der 840D-Sprache für die Unterstützung der Messzyklen.
  • Seite 236 Frames 6.7 Frame-Berechnung aus 3 Messpunkten im Raum (MEAFRAME) Hinweis Qualität der Messung Damit die gemessenen den idealen Koordinaten mit einer kombinierten Rotation/Translation zugeordnet werden können, muss das von den Messpunkten aufgespannte Dreieck kongruent zum idealen Dreieck sein. Dies wird bewerkstelligt von einem Kompensationsalgorithmus, der die Summe der Quadrate der Abweichungen minimiert, die das gemessene in das ideale Dreieck überführen.
  • Seite 237 Frames 6.7 Frame-Berechnung aus 3 Messpunkten im Raum (MEAFRAME) ENDIF N240 IF FIT_QUALITY > FIT_QUALITY_LIMIT SETAL(65010) GOTOF NO_FRAME ENDIF N250 IF CORR_FRAME[X,RT] > ROT_FRAME_LIMIT ;Begrenzung des 1. RPY- ;Winkels SETAL(65020) GOTOF NO_FRAME ENDIF N260 IF CORR_FRAME[Y,RT] > ROT_FRAME_LIMIT ;Begrenzung des 2. RPY- ;Winkels SETAL(65021) GOTOF NO_FRAME...
  • Seite 238: Ncu-Globale Frames

    Frames 6.8 NCU-globale Frames N700 G500 ;Setzbaren Frame deaktivieren, da mit Nullframe (kein Wert eingetragen) ;vorbesetzt NO_FRAME: Beispiel Verkettung von Frames Verkettung von MEAFRAME für Korrekturen Die Funktion MEAFRAME( ) liefert ein Korrekturframe. Wird dieser Korrekturframe mit dem einstellbaren Frame $P_UIFR[1] verkettet, der bei Aufruf der Funktion aktiv war z. B. G54, so erhält man ein einstellbaren Frame für weitere Umrechnungen zum Verfahren oder Bearbeiten.
  • Seite 239: Kanalspezifische Frames ($P_Chbfr, $P_Ubfr)

    Frames 6.8 NCU-globale Frames ● Die Verkettung von globalen Frames und kanalspezifischen Frames ist möglich. Der resultierende Frame enthält alle Frameanteile inklusive der Rotationen für alle Achsen. Die Zuweisung eines Frames mit Rotationsanteilen an einen globalen Frame wird mit dem Alarm "Frame: Rotation unzulässig" abgelehnt. NCU-globale Frames NCU-globale Basisframes $P_NCBFR[n] Es können bis zu 8 NCU-globale Basisframes projektiert werden:...
  • Seite 240 Frames 6.8 NCU-globale Frames Kanalspezifische Frames $P_CHBFR[n] Über die Systemvariable $P_CHBFR[n] können die Basisframes gelesen und geschrieben werden. Beim Schreiben eines Basisframes wird der verkettete Gesamt-Basisframe nicht aktiviert, sondern die Aktivierung erfolgt erst mit der Ausführung einer G500, G54...G599- Anweisung. Die Variable dient vorwiegend als Speicher für Schreibvorgänge auf das Basisframe von HMI oder PLC.
  • Seite 241: Im Kanal Wirksame Frames

    Frames 6.8 NCU-globale Frames 6.8.2 Im Kanal wirksame Frames Funktion Im Kanal wirksame Frames werden vom Teileprogramm über die betreffenden Systemvariablen dieser Frames eingegeben. Hierzu gehören auch Systemframes. Über diese Systemvariablen kann im Teileprogramm das aktuelle Systemframe gelesen und geschrieben werden. Aktuelle im Kanal wirksame Frames Übersicht Aktuelle Systemframes...
  • Seite 242 Frames 6.8 NCU-globale Frames $P_CHBFRAME[n] Aktuelle Kanal-Basisframes Über die Systemvariable $P_CHBFRAME[n] können die aktuellen Kanal-Basisframe- Feldelemente gelesen und geschrieben werden. Der resultierende Gesamt-Basisframe wird durch den Schreibvorgang im Kanal eingerechnet. Beim Schreiben eines Basisframes wird der Gesamt-Basisframe neu berechnet. $P_BFRAME Aktueller 1. Basisframe im Kanal Über die vordefinierte Framevariable $P_BFRAME kann der aktuelle Basisframe mit dem Feldindex 0, der im Kanal gültig ist, im Teileprogramm gelesen und geschrieben werden.
  • Seite 243 Frames 6.8 NCU-globale Frames Mit der Programmierung der Variablen wird der Gesamt-Basisframe und der Gesamt-Frame neu berechnet. Nach Reset und in der Grundeinstellung ist der Wert von $P_CHBFRMASK = $MC_CHBFRAME_RESET_MASK und $P_NCBFRMASK = $MC_CHBFRAME_RESET_MASK. z. B. $P_NCBFRMASK = 'H81' ;$P_NCBFRAME[0] : $P_NCBFRAME[7] $P_CHBFRMASK = 'H11' ;$P_CHBFRAME[0] : $P_CHBFRAME[4] $P_IFRAME Aktueller einstellbarer Frame Über die vordefinierte Framevariable $P_IFRAME kann der aktuelle einstellbare Frame,...
  • Seite 244 Frames 6.8 NCU-globale Frames Frame-Kettung Der aktuelle Frame setzt sich aus dem Gesamt-Basisframe, dem einstellbaren Frame, dem Systemframe und dem programmierbaren Frame gemäß oben angegebenen aktuellen Gesamtframe zusammen. Arbeitsvorbereitung 6-28 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 245 Frames 6.8 NCU-globale Frames Arbeitsvorbereitung 6-29 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 246 Frames 6.8 NCU-globale Frames Arbeitsvorbereitung 6-30 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 247: Transformationen

    Transformationen Allgemeine Programmierung der Transformationsarten Allgemeine Funktion Zur Anpassung der Steuerung an verschiedene Maschinenkinematiken besteht die Auswahl Transformationsarten mit geeigneten Parametern zu programmieren. Über diese Parameter kann für die ausgewählte Transformation sowohl die Orientierung des Werkzeugs im Raum als auch die Orientierungsbewegungen der Rundachsen entsprechend vereinbart werden. Bei den Drei-, Vier- und Fünf-Achs-Transformationen beziehen sich die programmierten, Positionsangaben immer auf die Spitze des Werkzeugs, welches orthogonal zur im Raum befindlichen Bearbeitungsfläche nachgeführt wird.
  • Seite 248 Transformationen 7.1 Allgemeine Programmierung der Transformationsarten Orientierungstransformation Drei-, Vier- und Fünf- Achs-Transformationen TRAORI Zur optimalen Bearbeitung räumlich geformter Flächen im Arbeitsraum der Maschine, benötigen Werkzeugmaschinen außer den drei Linearachsen X, Y und Z noch zusätzliche Achsen. Die zusätzlichen Achsen beschreiben die Orientierung im Raum und werden nachfolgend Orientierungsachsen genannt.
  • Seite 249: Orientierungsbewegungen Bei Den Transformationen

    Transformationen 7.1 Allgemeine Programmierung der Transformationsarten TRAANG Soll die Zustellachse z. B. für die Technologie Schleifen auch schräg zustellbar sein, so kann mit TRAANG für die vereinbarte Transformation ein parametrierbarer Winkel programmiert werden. Kartesisches PTP-Fahren Zur kinematischen Transformation gehört auch das "Kartesisches PTP-Fahren" bei dem bis zu 8 unterschiedliche Gelenkstellungen STAT= programmiert werden können.
  • Seite 250 Transformationen 7.1 Allgemeine Programmierung der Transformationsarten Maschinenkinematik bei Drei-, Vier- und Fünf-Achs-Transformation TRAORI Es kann entweder das Werkzeug oder der Werkzeugtisch mit bis zu zwei Rundachsen drehbar sein. Eine Kombination von jeweils einachsigem Schwenkkopf und Drehtisch ist auch möglich. Maschinentyp Programmierung der Orientierung Drei-Achs-Transformation Programmierung der Werkzeugorientierung nur in der Ebene,...
  • Seite 251 Transformationen 7.1 Allgemeine Programmierung der Transformationsarten Generische 5/6-AchsTransformationen Maschinentyp Programmierung der Orientierungstransformation Generische Fünf-/Sechs- Programmierung der Orientierungstransformation. Kinematik Achs Transformation Maschinentypen 4 drei Linearachsen und drei orthogonalen Rundachsen. Zweiachs-Schwenkkopf Die Rundachsen sind parallel zu zwei der drei Linearachsen. mit drehbarem Werkzeug Die erste Rundachse wird von zwei kartesischen um sich selbst und Linearachsen bewegt.
  • Seite 252 Transformationen 7.1 Allgemeine Programmierung der Transformationsarten Kartesisches PTP-Fahren Die Bewegung der Maschine erfolgt in Maschinenkoordinaten und wird programmiert mit: TRAORI Aktivierung der Transformation PTP Punkt zu Punkt Position im kartesischen Koordinatensystem (MKS) anfahren fahren Bahnbewegung der kartesischen Achsen im (BKS) STAT Stellung der Gelenke ist abhängig von der Transformation Um welchen Winkel die Achsen auf den kürzesten Weg...
  • Seite 253: Übersicht Der Orientierungstransformation Traori

    Transformationen 7.1 Allgemeine Programmierung der Transformationsarten 7.1.2 Übersicht der Orientierungstransformation TRAORI Mögliche Programmierungsarten im Zusammenhang mit TRAORI Maschinentyp Programmierung bei aktiver Transformation TRAORI Maschinentypen 1, 2 oder Achsfolge der Orientierungsachsen und die 3 Zweiachs-Schwenkkopf Orientierungsrichtung des Werkzeugs ist und entweder oder Zweiachs-Drehtisch maschinenbezogen projektierbar über Maschinendaten oder eine Kombination von...
  • Seite 254 Transformationen 7.1 Allgemeine Programmierung der Transformationsarten Maschinentyp Programmierung bei aktiver Transformation TRAORI Programmierung der resultierenden Werkzeugorientierung A4, B4, C4 des Flächennormalvektors am Satzanfang A5, B5, C5 des Flächennormalvektors am Satzende LEAD Voreilwinkel für die Werkzeugorientierung TILT Seitwärtswinkel für die Werkzeugorientierung Interpolation des Orientierungsvektors auf einer Kegelmantelfläche Orientierungsänderungen auf einer beliebig im Raum...
  • Seite 255: Drei-, Vier- Und Fünf-Achs-Transformation (Traori)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) 7.2.1 Allgemeine Zusammenhänge Kardanischer Werkzeugkopf Funktion Um optimale Schnittbedingungen beim Bearbeiten räumlich gekrümmter Flächen zu erzielen, muss der Anstellwinkel des Werkzeugs veränderbar sein. Mit welcher Maschinenkonstruktion dies erreicht wird, ist in den Achsdaten hinterlegt. 5-Achs-Transformation Kardanischer Werkzeugkopf Hier legen drei Linearachsen (X, Y, Z) und zwei Orientierungsachsen (C, A) den...
  • Seite 256 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) In den hier gezeigten Beispielen sehen Sie die Anordnungen am Beispiel mit dem Kardanischen Werkzeugkopf der Maschinenkinematik CA! Maschinenhersteller Die Achsfolge der Orientierungsachsen und die Orientierungsrichtung des Werkzeugs kann abhängig von der Maschinenkinematik über Maschinendaten eingestellt werden. In diesem Beispiel liegt A' unter dem Winkel φ...
  • Seite 257 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Allgemein gelten folgende mögliche Zusammenhänge: A' liegt unter dem Winkel φ zur X-Achse B' liegt unter dem Winkel φ zur Y-Achse C' liegt unter dem Winkel φ zur Z-Achse Der Winkel φ kann im Bereich 0° bis +89° über Maschinendaten projektiert werden. Mit schwenkbarer Linearachse Hierbei handelt es sich um eine Anordnung mit bewegtem Werkstück und bewegtem Werkzeug.
  • Seite 258: Drei, Vier, Und Fünf- Achs-Transformation (Traori)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) 7.2.2 Drei, Vier, und Fünf- Achs-Transformation (TRAORI) Funktion Der Anwender kann zwei bzw. drei translatorische Achsen und eine rotatorische Achse projektieren. Die Transformationen gehen davon aus, dass die rotatorische Achse orthogonal auf der Orientierungsebene steht. Die Orientierung des Werkzeugs ist nur in der Ebene, die senkrecht zu der rotatorischen Achse ist, möglich.
  • Seite 259: Varianten Der Orientierungsprogrammierung Und Grundstellung (Otireset)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Beispiel Generische Transformationen Die Grundorientierung des Werkzeugs zeigt in: TRAORI(1,0,0,1) Z-Richtung TRAORI(1,0,1,0) Y-Richtung TRAORI(1,0,1,1) Y/Z-Richtung (entspricht Stellung -45°) Offset für Orientierungsachsen Bei Aktivierung der Orientierungstransformation kann ein zusätzlicher Offset für Orientierungsachsen direkt programmiert werden. Es dürfen Parameter weggelassen werden, wenn bei der Programmierung die richtige Reihenfolge eingehalten wird.
  • Seite 260: Grundstellung Der Werkzeugorientierung Orireset

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Hinweis Varianten der Orientierungsprogrammierung bei Drei- bis Fünf-Achs-Transformationen Bei der Drei- bis Fünf-Achs-Transformation schließen sich die Varianten 1. A, B, C direkte Angabe der Maschinenachspositionen 2. A2, B2, C2 Winkelprogrammierung virtueller Achsen über Eulerwinkel oder RPY-Winkel 3.
  • Seite 261: Programmierung Der Werkzeugorientierung (A

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Programmierung der Drehungen LEAD, TILT und THETA Die Drehungen der Werkzeugorientierung werden bei der Drei- bis Fünf-Achs- Transformation mit den Voreilwinkel LEAD und den Seitwärtswinkel TILT programmiert. Bei einer Transformation mit dritter Rundachse sind sowohl für die Orientierung mit Vektorkomponenten als auch mit Angabe der Winkel LEAD, TILT zusätzliche Programmierungen von C2 (Verdrehungen des Orientierungsvektors) erlaubt.
  • Seite 262 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Definition der Werkzeugorientierung über G-Code Hinweis Maschinenhersteller Über Maschinendatum kann zwischen Euler- oder RPY-Winkeln umgeschaltet werden. Bei entsprechenden Maschinendaten Einstellungen ist eine Umschaltung sowohl abhängig als auch unabhängig vom aktiven G-Code der Gruppe 50 möglich. Folgende Einstellmöglichkeiten stehen zur Auswahl: 1.
  • Seite 263 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Parameter G..Angabe der Bewegungsart der Rundachsen X Y Z Angabe der Linearachsen A B C Angabe der Maschinenachspositionen der Rundachsen A2 B2 C2 Winkelprogrammierung (Euler- oder RPY-Winkel) virtueller Achsen bzw. Orientierungsachsen A3 B3 C3 Angabe der Vektorkomponenten Richtungsvektors A4 B4 C4 Angabe z.
  • Seite 264 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Beschreibung In der Regel werden 5-Achs-Programme von CAD/CAM-Systemen erzeugt und nicht an der Steuerung eingegeben. Deshalb wenden sich die folgenden Erklärungen hauptsächlich an Programmierer von Postprozessoren. Die Art der Orientierungsprogrammierung wird in der G-Code Gruppe 50 festgelegt: ORIEULER über Euler-Winkel ORIRPY über RPY-Winkel (Drehreihenfolge ZYX) ORIVIRT1 über virtuelle Orientierungsachsen (Definition 1)
  • Seite 265: Programmierung In Rpy-Winkeln Orirpy

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Programmierung in RPY-Winkeln ORIRPY Die bei der Orientierungsprogrammierung mit A2, B2, C2 programmierten Werte werden als RPY-Winkel (in Grad) interpretiert. Hinweis Im Gegensatz zur Eulerwinkel-Programmierung haben hier alle drei Werte Einfluss auf den Orientierungsvektor.
  • Seite 266 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Programmierung der Werkzeugorientierung mit LEAD= und TILT= Die resultierende Werkzeugorientierung wird ermittelt aus: ● Bahntangente ● Flächennormalenvektor am Satzanfang A4, B4, C4 und am Satzende A5, B6, C5 ● Voreilwinkel LEAD in der von Bahntangente und Flächennormalenvektor aufgespannten Ebene ●...
  • Seite 267: Stirnfräsen (3D-Fräsen A4, B4, C4, A5, B5, C5)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) 7.2.5 Stirnfräsen (3D-Fräsen A4, B4, C4, A5, B5, C5) Funktion Stirnfräsen dient zur Bearbeitung beliebig gekrümmter Oberflächen. Für diese Art des 3D-Fräsens benötigen Sie die zeilenweise Beschreibung der 3D-Bahnen auf der Werkstückoberfläche. Arbeitsvorbereitung 7-21 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 268: Bezug Der Orientierungsachsen (Oriwks, Orimks)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Die Berechnungen werden unter Berücksichtigung der Werkzeugform und Werkzeugabmessungen üblicherweise im CAM durchgeführt. Die fertig berechneten NC- Sätze werden dann über Postprozessoren in die Steuerung eingelesen. Programmierung der Bahnkrümmung Beschreibung der Flächen Die Beschreibung der Bahnkrümmung erfolgt über Flächennormalenvektoren mit folgenden Komponenten: A4, B4, C4 Startvektor am Satzanfang A5, B5, C5 Endvektor am Satzende...
  • Seite 269 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Maschinenhersteller Mit dem Maschinendatum $MC_ORI_IPO_WITH_G_CODE wird festgelegt welche Interpolationsart wirksam ist: ORIMKS/ORIWKS oder ORIMACHAX/ORIVIRTAX. Programmierung N.. ORIMKS= oder N.. ORIWKS= Parameter ORIMKS Drehung im Maschinenkoordinatensystem ORIWKS Drehung im Werkstückkoordinatensystem Hinweis ORIWKS ist Grundeinstellung. Ist bei einem Fünf-Achs-Programm nicht von vornherein klar, auf welcher Maschine es ablaufen soll, so ist grundsätzlich ORIWKS zu wählen.
  • Seite 270 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Singuläre Stellungen Hinweis ORIWKS Orientierungsbewegungen im Bereich der singulären Stellung der Fünf-Achs-Maschine erfordern große Bewegungen der Maschinenachsen. (Beispielsweise sind bei einem Drehschwenkkopf mit C als Drehachse und A als Schwenkachse alle Stellungen mit A=0 singulär.) Maschinenhersteller Um die Maschinenachsen nicht zu überlasten, senkt die Geschwindigkeitsführung die...
  • Seite 271: Programmierung Der Orientierungsachsen (Oriaxes, Orivect, Orieuler, Orirpy)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) 7.2.7 Programmierung der Orientierungsachsen (ORIAXES, ORIVECT, ORIEULER, ORIRPY) Funktion Die Funktion Orientierungsachsen beschreibt die Orientierung des Werkzeugs im Raum und wird durch Programmierung der Offsets für die Rundachsen erreicht. Ein weiterer dritter Freiheitsgrad kann durch die zusätzliche Drehung des Werkzeugs um sich selbst erzielt werden.
  • Seite 272: Beschreibung

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) ORIEULER Orientierungsprogrammierung über Euler-Winkel ORIRPY Orientierungsprogrammierung über RPY-Winkel. Die Drehreihenfolge ist XYZ, wobei gilt: A2 ist der Drehwinkel um X B2 ist der Drehwinkel um Y C2 ist der Drehwinkel um Z ORIRPY2 Orientierungsprogrammierung über RPY-Winkel.
  • Seite 273: Orientierungsprogrammierung Entlang Einer Kegelmantelfläche (Oriplane, Oriconxx)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Literaturhinweis /FB2/ Funktionshandbuch Erweiterungsfunktionen; Kinematische Transformation (M1) 7.2.8 Orientierungsprogrammierung entlang einer Kegelmantelfläche (ORIPLANE, ORICONxx) Funktion Mit der erweiterten Orientierung ist es möglich, Orientierungsänderungen entlang sich einer im Raum befindlichen Kegelmantelfläche auszuführen. Die Interpolation des Orientierungsvektors auf einer Kegelmantelfläche erfolgt mit den modalen Befehlen ORICONxx.
  • Seite 274 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Hinweis Programmierung des Richtungsvektor A6, B6, C6 für die Drehachse des Kegels Die Programmierung einer Endorientierung ist nicht unbedingt erforderlich. Ist keine Endorientierung angegeben, dann wird ein voller Kegelmantel mit 360 Grad interpoliert. Programmierung des Öffnungswinkel des Kegels mit NUT=winkel Die Angabe einer Endorientierung ist zwingend erforderlich.
  • Seite 275: Beispiel Unterschiedliche Orientierungsänderungen

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Drehwinkel der Orientierung um die Richtungsachse des Kegels Öffnungswinkel des Kegels mögliche Polynome Außer den jeweiligen Winkeln sind auch Polynome maximal PO[PHI]=(a2, a3, a4, a5) 5. Grades programmierbar PO[PSI]=(b2, b3, b4, b5) Beispiel unterschiedliche Orientierungsänderungen …...
  • Seite 276: Orientierungsvorgabe Zweier Kontaktpunke (Oricurve, Po[Xh]=, Po[Yh]=, Po[Zh]=)

    Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Programmierung von Kreisen in einer Ebene G2/G3, CIP und CT Die erweiterte Orientierung entspricht der Interpolation von Kreisen in einer Ebene. Zu den entsprechenden Programmiermöglichkeiten von Kreisen mit Mittelpunktsangabe oder Radiusangabe wie G2/G3, Kreis über Zwischenpunkt CIP und Tangentialkreise CT siehe Literatur: Programmierhandbuch Grundlagen, "Wegbefehle programmieren".
  • Seite 277 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Programmierung Bei dieser Interpolationsart können für die beiden Raumkurven Punkte mit G1 bzw. Polynome mit POLY programmiert werden. Kreise und Evolventen sind nicht zulässig. Zusätzlich kann eine Spline-Interpolation mit BSPLINE und die Funktion "Zusammenfassung kurzer Spline-Sätze"...
  • Seite 278 Transformationen 7.2 Drei-, Vier- und Fünf-Achs-Transformation (TRAORI) Hinweis Bezeichner XH YH ZH für die Programmierung einer 2. Orientierungsbahn Die Bezeichner müssen so gewählt werden, dass kein Konflikt mit anderen Bezeichnern der Linearachsen X Y Z Achsen und Rundachsen wie A2 B2 C2 Eulerwinkel bzw. RPY-Winkel A3 B3 C3 Richtungsvektoren A4 B4 C4 bzw.
  • Seite 279: Orientierungspolynome (Po[Winkel], Po[Koordinate])

    Transformationen 7.3 Orientierungspolynome (PO[Winkel], PO[Koordinate]) Orientierungspolynome (PO[Winkel], PO[Koordinate]) Funktion Unabhängig davon, welche Polynominterpolation der G-Code Gruppe 1 gerade aktiv ist, können zwei verschiedene Typen von Orientierungspolynomen bis maximal 5. Grades bei einer Drei- bis Fünf-Achs-Transformation programmiert werden. 1. Polynome für Winkel: Voreilwinkel LEAD, Seitwärtswinkel TILT in Bezug auf die Ebene, die von Start- und Endorientierung aufgespannt wird.
  • Seite 280 Transformationen 7.3 Orientierungspolynome (PO[Winkel], PO[Koordinate]) Parameter PO[PHI] Winkel in der Ebene zwischen Start- und Endorientierung PO[PSI] Winkel der die Auskippung der Orientierung aus der Ebene zwischen Start- und Endorientierung beschreibt PO[THT] Drehwinkel der durch Drehung des Drehvektors einer der mit THETA programmierten G-Codes der Gruppe 54 Voreilwinkel LEAD Seitwärtswinkel TILT THETA...
  • Seite 281: Drehungen Der Werkzeugorientierung (Orirota, Orirotr/Tt, Orirotc, Theta)

    Transformationen 7.4 Drehungen der Werkzeugorientierung (ORIROTA, ORIROTR/TT, ORIROTC, THETA) Drehungen der Werkzeugorientierung (ORIROTA, ORIROTR/TT, ORIROTC, THETA) Funktion Soll bei Maschinentypen mit beweglichem Werkzeug auch die Orientierung des Werkzeugs veränderbar sein, so wird jeder Satz mit einer Endorientierung programmiert. Abhängig von der Maschinenkinematik können entweder die Orientierungsrichtung der Orientierungsachsen oder die Drehrichtung des Orientierungsvektors THETA programmiert werden.
  • Seite 282 Transformationen 7.4 Drehungen der Werkzeugorientierung (ORIROTA, ORIROTR/TT, ORIROTC, THETA) Parameter ORIROTA Drehwinkel zu einer absolut vorgegebenen Drehrichtung ORIROTR Drehwinkel relativ zur Ebene zwischen Start- und Endorientierung ORIROTT Drehwinkel als tangentialer Drehvektor zur Orientierungsänderung ORIROTC Drehwinkel als tangentialer Drehvektor zur Bahntangente THETA Drehung des Orientierungsvektors THETA=Wert...
  • Seite 283: Bahnrelative Orientierungen

    Transformationen 7.5 Bahnrelative Orientierungen ORIROTR Der Drehwinkel THETA wird relativ zur Ebene, die von der Start- und Endorientierung aufgespannt wird, interpretiert. ORIROTT Der Drehwinkel THETA wird relativ zur Orientierungsänderung interpretiert. Für THETA=0 wird der Drehvektor tangential zur Orientierungsänderung interpoliert und unterscheidet sich nur dann zu ORIROTR, wenn für die Orientierung mindestens ein Polynom für den "Kippwinkel PSI"...
  • Seite 284 Transformationen 7.5 Bahnrelative Orientierungen Ein durch eine Ecke im Bahnverlauf hervorgerufener Knick der Orientierung kann mit ORIPATHS geglättet werden. Die Richtung und Weglänge der Abhebebewegung wird durch den Vektor mit den Komponenten A8=X, B8=Y C8=Z programmiert. Mit ORIPATH/ORIPATHS können verschiedene Bezüge zur Bahntangente über die drei Winkel ●...
  • Seite 285: Bahnrelative Drehung Der Werkzeugorientierung (Oripath, Oripaths, Drehwinkel)

    Transformationen 7.5 Bahnrelative Orientierungen 7.5.2 Bahnrelative Drehung der Werkzeugorientierung (ORIPATH, ORIPATHS, Drehwinkel) Funktion Bei einer Sechs-Achs-Transformation kann zur Werkzeugorientierung beliebig im Raum auch das Werkzeug mit einer dritten Rundachse um sich selbst gedreht werden. Bei bahnrelativer Drehung der Werkzeugorientierung mit ORIPATH bzw. ORIPATHS kann die zusätzliche Drehung über den Drehwinkel THETA programmiert werden.
  • Seite 286: Bahnrelative Interpolation Der Werkzeugdrehung (Orirotc, Theta)

    Transformationen 7.5 Bahnrelative Orientierungen Parameter Bahnrelative Werkzeugorientierung ORIPATH Werkzeugorientierung bezogen auf die Bahn ORIPATHS Werkzeugorientierung bezogen auf die Bahn Knick im Orientierungsverlauf wird geglättet LEAD Winkel relativ zum Flächennormalenvektor, in der von Bahntangente und Flächennormalenvektor aufgespannten Ebene TILT Drehung der Orientierung um die Z-Richtung bzw. Drehung um die Bahntangente THETA Drehung um die Werkzeugrichtung nach Z...
  • Seite 287 Transformationen 7.5 Bahnrelative Orientierungen Parameter Bahnrelative Interpolation der Drehung des Werkzeugs bei Sechs-Achs-Transformation ORIROTC tangentialer Drehvektor zur Bahntangente anstellen THETA=Wert Drehwinkel in Grad, der am Satzende erreicht wird THETA=θ Drehwinkel mit Endwinkel Θ des Drehvektors THETA=AC(…) Satzweise auf Maßangabe absolut umschalten THETA=IC(…) Satzweise auf Kettenmaßangabe umschalten PO[THT]=(c...
  • Seite 288: Glättung Des Orientierungsverlaufs (Oripaths A8=, B8=, C8=)

    Transformationen 7.5 Bahnrelative Orientierungen A3= B3= C3= Richtungsvektorprogrammierung der Richtungsachse ORIPLANE Interpolation in der Ebene (Großkreisinterpolation) ORICONCW Interpolation auf einer Kegelmantelfläche im Uhrzeigersinn ORICONCCW Interpolation auf einer Kegelmantelfläche gegen Uhrzeigersinn ORICONTO Interpolation auf einer Kegelmantelfläche tangentialer Übergang A6= B6= C6= Programmierung der Drehachse des Kegels (normierter Vektor) NUT=winkel...
  • Seite 289: Komprimierung Der Orientierung Compon (A

    Transformationen 7.6 Komprimierung der Orientierung COMPON (A..., B..., C..., THETA) Programmierung Für stetige Werkzeugorientierungen bezogen auf die gesamte Bahn sind an einer Ecke der Kontur weitere Programmierangaben erforderlich. Die Richtung und die Weglänge dieser Bewegung wird durch den Vektor mit den Komponenten A8=X, B8=Y, C8=Z programmiert: N...
  • Seite 290 Transformationen 7.6 Komprimierung der Orientierung COMPON (A..., B..., C..., THETA) Programmierung Allgemeine Form des NC-Satzes Die zu komprimierenden Sätze dürfen nur Satznummer, Linearinterpolation G1, Achsadressen, Vorschub und einen Kommentar enthalten und haben damit folgende Programmsyntax: N... G1 X=... Y=... Z=... A=... B=... ;Kommentar F=...
  • Seite 291 Transformationen 7.6 Komprimierung der Orientierung COMPON (A..., B..., C..., THETA) Weitere Erläuterungen zur Programmierung des Drehwinkels THETA=... siehe Kapitel "Drehung der Werkzeugorientierung (ORIROTA/TR/TT, ORIROTC, THETA). Hinweis Komprimierung nur bei aktiver Großkreisinterpolation Dies ist der Fall, wenn sich die Werkzeugorientierung in der Ebene ändert, die von Start– und Endorientierung aufgespannt wird.
  • Seite 292 Transformationen 7.6 Komprimierung der Orientierung COMPON (A..., B..., C..., THETA) Beschreibung Genauigkeit NC-Sätze sind nur dann komprimierbar, falls man Abweichungen der Kontur von der programmierten Kontur zulässt. Die maximale Abweichung ist als Kompressor-Toleranz in Settingdaten einstellbar. Je größer die erlaubten Toleranzen sind, umso mehr Sätze können komprimiert werden.
  • Seite 293: Online-Werkzeuglängenkorrektur (Toffon, Toffof)

    Transformationen 7.7 Online -Werkzeuglängenkorrektur (TOFFON, TOFFOF) Online-Werkzeuglängenkorrektur (TOFFON, TOFFOF) Funktion Über die Systemvariable $AA_TOFF[ ] können die effektiven Werkzeuglängen entsprechend der drei Werkzeugrichtungen dreidimensional in Echtzeit überlagert werden. Als Index werden die drei Geometrieachsbezeichner verwendet. Damit ist die Anzahl der aktiven Korrekturrichtungen durch die zur selben Zeit aktiven Geometrieachsen festgelegt.
  • Seite 294 Transformationen 7.7 Online -Werkzeuglängenkorrektur (TOFFON, TOFFOF) Beispiel Anwahl der Werkzeuglängenkorrektur MD 21190: TOFF_MODE =1 ;absolute Werte werden angefahren MD 21194: TOFF_VELO[0] =1000 MD 21196: TOFF_VELO[1] =1000 MD 21194: TOFF_VELO[2] =1000 MD 21196: TOFF_ACCEL[0] =1 MD 21196: TOFF_ACCEL[1] =1 MD 21196: TOFF_ACCEL[2] =1 N5 DEF REAL XOFFSET N10 TRAORI(1) ;Transformation ein...
  • Seite 295: Kinematische Transformation

    Transformationen 7.8 Kinematische Transformation Variable $AA_TOFF_PREP_DIFF Das Maß für die Differenz zwischen der aktuellen im Interpolator wirksamen Korrektur und der Korrektur, die zum Zeitpunkt der Satzaufbereitung wirksam war, kann in der Variablen $AA_TOFF_PREP_DIFF[ ] abgefragt werden. Maschinendaten und Settingdaten einstellen Für die Online-Werkzeuglängenkorrektur stehen folgende Maschinendaten zur Verfügung: ●...
  • Seite 296 Transformationen 7.8 Kinematische Transformation TRANSMIT Transformationstypen Für TRANSMIT-Bearbeitungen gibt es zwei einstellbare Ausprägungen: ● TRANSMIT im Standardfall mit (TRAFO_TYPE_n = 256) ● TRANSMIT mit zusätzlicher Y-Linearachse (TRAFO_TYPE_n = 257) Der erweiterte Transformationstyp 257 kann dazu verwendet werden, um z. B. Aufspannkorrekturen eines Werkzeugs mit realer Y-Achse zu kompensieren.
  • Seite 297 Transformationen 7.8 Kinematische Transformation Parameter TRANSMIT Aktiviert die erste vereinbarte TRANSMIT-Funktion. Diese Funktion wird auch als Polar-Transformation bezeichnet. TRANSMIT(n) Aktiviert die n. vereinbarte TRANSMIT-Funktion; n darf maximal 2 sein (TRANSMIT(1) entspricht TRANSMIT). TRAFOOF Schaltet eine aktive Transformation aus OFFN Offset Kontur-normal: Abstand der stirnseitigen Bearbeitung von der programmierten Bezugskontur Hinweis Eine aktive Transformation TRANSMIT wird ebenfalls ausgeschaltet, wenn im jeweiligen...
  • Seite 298: Beschreibung

    Transformationen 7.8 Kinematische Transformation N110 G0 Z20 G40 OFFN=0 ;Werkzeugwechsel N120 T2 D1 X15 Y–15 N130 Z10 G41 N140 G1 X10 Y–10 ;Vierkant schlichten N150 X–10 N160 Y10 N170 X10 N180 Y–10 N190 Z20 G40 ;Frame abwählen N200 TRANS N210 TRAFOOF N220 G0 X20 Z10 SPOS=45 ;Anfahren der Ausgangsstellung N230 M30...
  • Seite 299: Zylindermanteltransformation (Tracyl)

    Transformationen 7.8 Kinematische Transformation 7.8.2 Zylindermanteltransformation (TRACYL) Funktion Die Zylindermantelkurventransformation TRACYL ermöglicht folgende Leistungen: Bearbeitung von ● Längsnuten an zylindrischen Körpern, ● Quernuten an zylindrischen Körpern, ● beliebig verlaufende Nuten an zylindrischen Körpern. Der Verlauf der Nuten wird bezogen auf die abgewickelte, ebene Zylindermantelfläche programmiert.
  • Seite 300: Programmierung

    Transformationen 7.8 Kinematische Transformation Achsnutzung Folgende Achsen können nicht als Positionierachse bzw. Pendelachse verwendet werden: ● die Geometrieachse in Umfangsrichtung der Zylindermantelfläche (Y-Achse) ● die zusätzliche Linearachse bei Nutwandkorrektur (Z-Achse) Programmierung TRACYL(d) oder TRACYL(d, n) oder für Transformationstyp 514 TRACYL(d, n, Nutwandkorrektur) oder TRAFOOF Rundachse...
  • Seite 301 Transformationen 7.8 Kinematische Transformation Beispiel Definition des Werkzeugs Folgendes Beispiel ist geeignet, die Parametrierung der Zylindertransformation TRACYL zu testen: Werkzeugparameter Bedeutung Bemerkung Nummer (DP) $TC_DP1[1,1]=120 Werkzeugtyp Fräser $TC_DP2[1,1]=0 Schneidenlage nur für Drehwerkzeuge Geometrie Längenkorrektur $TC_DP3[1,1]=8. Längenkorrekturvektor Verrechnung nach Typ $TC_DP4[1,1]=9. und Ebene $TC_DP5[1,1]=7.
  • Seite 302: Beispiel Fertigen Einer Hakenförmigen Nut

    Transformationen 7.8 Kinematische Transformation Beispiel Fertigen einer hakenförmigen Nut Zylindermanteltransformation einschalten N10 T1 D1 G54 G90 F5000 G94 ;Werkzeuganwahl, Aufspannkompensation N20 SPOS=0 ;Anfahren der Ausgangsstellung N30 G0 X25 Y0 Z105 CC=200 N40 TRACYL (40) ;Zylindermantelkurventransformation ;einschalten N50 G19 ;Ebenenanwahl Hakenförmigen Nut fertigen N60 G1 X20 ;Werkzeug auf Nutgrund zustellen N70 OFFN=12...
  • Seite 303 Transformationen 7.8 Kinematische Transformation Beschreibung Ohne Nutwandkorrektur (Transformationstyp 512): Die Steuerung transformiert die programmierten Verfahrbewegungen des Zylinder- Koordinatensystems auf die Verfahrbewegungen der realen Maschinenachsen: ● Rundachse ● Zustellachse senkrecht zur Drehachse ● Längsachse parallel zur Drehachse Die Linearachsen stehen senkrecht aufeinander. Die Zustellachse schneidet die Rundachse. Mit Nutwandkorrektur (Transformationstyp 513): Kinematik wie oben, aber zusätzlich –Längsachse parallel zur Umfangsrichtung Die Linearachsen stehen senkrecht aufeinander.
  • Seite 304 Transformationen 7.8 Kinematische Transformation Nutquerschnitt Bei Achskonfiguration 1 sind Nuten längs zur Rundachse nur dann parallel begrenzt, wenn die Nutbreite genau dem Werkzeugradius entspricht. Nuten parallel zum Umfang (Quernuten) sind an Anfang und Ende nicht parallel. Mit zusätzlicher Linearachse und mit Nutwandkorrektur (Transformationstyp 514): Diese Transformationsvariante nützt bei einer Maschine mit einer weiteren Linearachse die Redundanz aus, um eine verbesserte Werkzeugkorrektur durchzuführen.
  • Seite 305 Transformationen 7.8 Kinematische Transformation ● ein kleinerer Arbeitsbereich und ● dass die zweite Linearachse für das Abfahren des Teileprogramms nicht genutzt werden soll. Für das Teileprogramm und die Zuordnung der entsprechenden Achsen im BKS oder MKS werden bestimmte Maschinendateneinstellungen vorausgesetzt, siehe Literatur /FB2/ Funktionshandbuch Erweiterungsfunktionen;...
  • Seite 306 Transformationen 7.8 Kinematische Transformation 8. Kontur der Nutmittenlinie 9. WRK abwählen 10. Abfahrsatz (Ausfahren der WRK und Wegfahren von der Nutwand) 11. Positionieren 12. TRAFOOF 13. Ursprüngliche Koordinatenverschiebung (FRAME) wieder anwählen Besonderheiten ● WRK-Anwahl: WRK wird nicht hinsichtlich der Nutwand, sondern relativ zur programmierten Nutmittenlinie programmiert.
  • Seite 307: Schräge Achse (Traang)

    Transformationen 7.8 Kinematische Transformation 7.8.3 Schräge Achse (TRAANG) Funktion Die Funktion Schräge Achse ist für die Technologie Schleifen gedacht und ermöglicht folgende Leistungen: ● Bearbeitung mit schräger Zustellachse ● Für die Programmierung kann ein kartesisches Koordinatensystem verwendet werden. ● Die Steuerung transformiert die programmierten Verfahrbewegungen des kartesischen Koordinatensystems auf die Verfahrbewegungen der realen Maschinenachsen (Standardfall): schräge Zustellachse.
  • Seite 308 Transformationen 7.8 Kinematische Transformation TRAANG(α,n) Aktiviert die n. vereinbarte Transformation Schräge Achse. n darf maximal 2 sein. TRAANG(α,1) entspricht TRAANG(α). α Winkel der schrägstehenden Achse Zulässige Werte für α sind: -90 Grad < α < + 90 Grad TRAFOOF Transformation aus Anzahl vereinbarte Transformationen Winkel α...
  • Seite 309 Transformationen 7.8 Kinematische Transformation N50 OSP[Z]=10 OSP2[Z]=5 OST1[Z]=–2 -> ;Pendeln, bis Maß erreicht -> OST2[Z]=–2 FA[Z]=5000 ;(Pendeln siehe Kapitel "Pendeln") N60 OS[Z]=1 N70 POS[X]=4.5 FA[X]=50 N80 OS[Z]=0 N90 WAITP(Z) ;Pendelachsen als Positionierachsen ;freigeben N100 TRAFOOF ;Transformation ausschalten N110 G0 Z10 MU=10 ;Freifahren N120 M30 ->...
  • Seite 310: Schräge Achse Programmieren (G05, G07)

    Transformationen 7.8 Kinematische Transformation ● die Geschwindigkeitsreserve, die auf der parallelen Achse für die Ausgleichsbewegung bereitgehalten wird, ● die Achsbeschleunigungsreserve, die auf der parallelen Achse für die Ausgleichsbewegung bereitgehalten wird. Achskonfiguration Um im kartesischen Koordinatensystem programmieren zu können, muss der Steuerung der Zusammenhang zwischen diesem Koordinatensystem und den tatsächlich existierenden Maschinenachsen (MU, MZ) mitgeteilt werden: ●...
  • Seite 311 Transformationen 7.8 Kinematische Transformation Parameter Startposition anfahren Aktiviert Schrägeinstechen Beispiel N.. G18 ;Winkel für die Schräge Achse ;programmieren N50 G07 X70 Z40 F4000 ;Startposition anfahren N60 G05 X70 F100 ;Schräg einstechen N70 ... Arbeitsvorbereitung 7-65 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 312: Kartesisches Ptp-Fahren

    Transformationen 7.9 Kartesisches PTP-Fahren Kartesisches PTP-Fahren Funktion Mit dieser Funktion kann eine Position in einem kartesischen Koordinatensystem programmiert werden, die Bewegung der Maschine erfolgt aber in Maschinenkoordinaten. Die Funktion kann beispielsweise beim Wechseln der Gelenkstellung angewendet werden, wenn dabei die Bewegung durch eine Singularität führt. Hinweis Die Funktion ist nur in Verbindung mit einer aktiven Transformation sinnvoll.
  • Seite 313 Transformationen 7.9 Kartesisches PTP-Fahren Parameter Die Befehle PTP und CP sind modal wirksam. CP ist die Standardeinstellung. Während die Programmierung des STAT–Wertes modal gültig ist, wirkt die Programmierung von TU = <...> satzweise. Ein weiterer Unterschied ist auch, dass die Programmierung eines STAT–Wertes sich nur bei Vektorinterpolation auswirkt, während die Programmierung von TU auch bei aktiver Rundachsinterpolation ausgewertet wird.
  • Seite 314 Transformationen 7.9 Kartesisches PTP-Fahren N60 X1000 Z500 A20 N70 M30 Beispiel PTP-Fahren bei generischer 5-Achs Transformation Annahme: Es liegt eine rechtwinklige CA–Kinematik zu Grunde. TRAORI ;Transformation CA-Kinematik ein ;PTP-Fahren einschalten N10 A3 = 0 B3 = 0 C3 = 1 ;Rundachspositionen C = 0 A = 0 N20 A3 = 1 B3 = 0 C3 = 1 ;Rundachspositionen C = 90 A = 45...
  • Seite 315 Transformationen 7.9 Kartesisches PTP-Fahren Die Achsen verfahren auf kürzestem Weg: ● wenn bei einer Position kein TU programmiert wird, ● bei Achsen, welche einen Verfahrbereich > ±360 Grad besitzen. Beispiel: Die im Bild angegebene Zielposition kann in negativer oder in positiver Richtung angefahren werden.
  • Seite 316: Ptp Bei Transmit

    Transformationen 7.9 Kartesisches PTP-Fahren REPOS War während des Unterbrechungssatzes die Funktion "Kartesisches PTP-Fahren" eingestellt, wird auch mit PTP rückpositioniert. Überlagerte Bewegungen DRF-Verschiebung oder externe Nullpunktverschiebung sind beim kartesischen PTP-Fahren nur eingeschränkt möglich. Beim Wechsel von einer PTP- nach einer CP-Bewegung dürfen keine Überlagerungen im BKS vorhanden sind.
  • Seite 317 Transformationen 7.9 Kartesisches PTP-Fahren Parameter TRANSMIT Aktiviert die erste vereinbarte TRANSMIT-Funktion (siehe Kapitel "Fräsbearbeitungen an Drehteilen: TRANSMIT") PTPG0 Point to Point G0 (Punkt zu Punkt Bewegung automatisch zu jedem G0-Satz und danach wieder CP setzen) Da STAT und TU modal sind, gilt immer der zuletzt programmierte Wert. Point to Point (Punkt zu Punkt Bewegung) Für TRANSMIT bedeutet PTP, dass im Kartesischen auf Archimedischen Spiralen entweder um den Pol oder aus dem Pol herausgefahren wird.
  • Seite 318 Transformationen 7.9 Kartesisches PTP-Fahren Beispiel Herausfahren aus dem Pol mit PTP und TRANSMIT N070 X20 Y2 N060 X0 Y0 N050 X10 Y0 N001 G0 X90 Z0 F10000 T1 D1 G90 ;Ausgangsstellung N002 SPOS=0 N003 TRANSMIT ;Transformation TRANSMIT N010 PTPG0 ;zu jedem G0-Satz automatisch ;PTP und danach wieder CP N020 G0 X90 Y60 N030 X-90 Y-60...
  • Seite 319 Transformationen 7.9 Kartesisches PTP-Fahren Vorsicht Randbedingungen Hinsichtlich der Werkzeugbewegungen und Kollision gelten mehrere Randbedingungen und bestimmte Funktionsausschlüsse wie: Mit PTP darf keine Werkzeugradiuskorrektur (WRK) aktiv sein. Mit PTPG0 wird bei aktiver Werkzeugradiuskorrektur (WRK) per CP gefahren. Mit PTP ist Weiches An- und Abfahren (WAB) nicht möglich. Mit PTPG0 wird bei Weichem An- und Abfahren (WAB) per CP gefahren.
  • Seite 320: Randbedingungen Bei Der Anwahl Einer Transformation

    Transformationen 7.10 Randbedingungen bei der Anwahl einer Transformation 7.10 Randbedingungen bei der Anwahl einer Transformation 7.10 Funktion Die Anwahl von Transformationen ist über Teileprogramm bzw. MDA möglich. Dabei ist zu beachten: ● Ein Bewegungszwischensatz wird nicht eingefügt (Fasen/Radien). ● Eine Spline-Satzfolge muss abgeschlossen sein; wenn nicht, erscheint eine Meldung. ●...
  • Seite 321: Transformation Abwählen (Trafoof)

    Transformationen 7.11 Transformation abwählen (TRAFOOF) 7.11 Transformation abwählen (TRAFOOF) 7.11 Funktion Mit dem Befehl TRAFOOF werden alle aktiven Transformationen und Frames ausgeschaltet. Hinweis Danach benötigte Frames müssen durch erneute Programmierung aktiv geschaltet werden. Dabei ist zu beachten: Für die Abwahl der Transformation gelten dieselben Randbedingungen wie für die Anwahl (siehe Kapitel "Randbedingungen bei der Anwahl einer Transformation").
  • Seite 322: Programmierung

    Transformationen 7.12 Verkettete Transformationen (TRACON, TRAFOOF) Anwendungen ● Schleifen von Konturen, die als Mantellinie einer Zylinderabwicklung programmiert wurden (TRACYL) mit einer schräg stehenden Schleifscheibe z. B. Werkzeugschleifen. ● Feinbearbeitung einer mit TRANSMIT erzeugten nicht runden Kontur mit schräg stehender Schleifscheibe. Programmierung TRACON(trf, par) Eine verkettete Transformation wird eingeschaltet.
  • Seite 323: Umschaltbare Geometrieachsen (Geoax)

    Transformationen 7.13 Umschaltbare Geometrieachsen (GEOAX) Die in den Einzelbeschreibungen für die Transformationen angegebenen Randbedingungen und Sonderfälle sind auch bei der Benutzung innerhalb einer Verkettung zu beachten. Informationen zur Projektierung der Maschinendaten der Transformationen finden Sie im: /FB2/ Funktionshandbuch Erweiterungsfunktionen; Kinematische Transformationen (M1) und /FB3/ Funktionshandbuch Sonderfunktionen;...
  • Seite 324 Transformationen 7.13 Umschaltbare Geometrieachsen (GEOAX) Nach dem Einschalten ist die Verbindung X1, Y1, Z1 wirksam (einstellbar über MD). N100 GEOAX (3,Z2) ;Als Z-Achse fungiert Kanalachse Z2 N110 G1 ..N120 GEOAX (3,Z1) ;Als Z-Achse fungiert Kanalachse Z1 Beispiel Geometrieachskonfigurationen bei 6 Kanalachsen Eine Maschine besitzt 6 Kanalachsen mit den Namen XX, YY, ZZ, U, V, W.
  • Seite 325 Transformationen 7.13 Umschaltbare Geometrieachsen (GEOAX) N110 G1 X10 Y10 Z10 XX=25 ;Kanalachsen U, V, W fahren jeweils auf die Position 10, XX als ;Zusatzachse fährt auf Position 25. N120 GEOAX(0,V) ;V wird aus Geometrieachsverband herausgenommen. U und W sind ;weiterhin erste (X) und dritte Geometrieachse (Z). Die zweite ;Geometrieachse (Y) bleibt unbelegt.
  • Seite 326 Transformationen 7.13 Umschaltbare Geometrieachsen (GEOAX) Polarkoordinaten Ein Tausch der Geometrieachsen mit GEOAX setzt analog einem Ebenenwechsel (G17- G19) die modalen Polarkoordinaten auf den Wert 0. DRF, NPV Eine eventuelle Handrad-Verschiebung (DRF) oder eine externe Nullpunktverschiebung bleibt nach der Umschaltung wirksam. Achspositionen tauschen Durch Neuzuweisung der Achsnummern zu den bereits zugeordneten Kanalachsen ist auch ein Positionswechsel innerhalb des Geometrieachsverbunds möglich.
  • Seite 327: Werkzeugkorrekturen

    Werkzeugkorrekturen Korrekturspeicher Funktion Aufbau des Korrekturspeichers Jedes Datenfeld ist mit einer T- und D-Nummer aufrufbar (außer "Flache D-Nr.") und enthält neben den geometrischen Angaben für das Werkzeug noch weitere Einträge, z. B. den Werkzeugtyp. Flache D-Nummern-Struktur Die "flache D-Nummern-Struktur" wird verwendet, wenn die Werkzeugverwaltung außerhalb des NCK erfolgt.
  • Seite 328 Werkzeugkorrekturen 8.1 Korrekturspeicher Werkzeugparameter Bedeutung der Systemvariablen Bemerkung Nummer (DP) $TC_DP1 Werkzeugtyp Übersicht siehe Liste $TC_DP2 Schneidenlage nur für Drehwerkzeuge Geometrie Längenkorrektur $TC_DP3 Länge 1 Verrechnung nach $TC_DP4 Länge 2 Typ und Ebene $TC_DP5 Länge 3 Geometrie Radius $TC_DP6 Radius 1 / Länge 1 Fräs-/Dreh-/Schleifwerkz.
  • Seite 329 Werkzeugkorrekturen 8.1 Korrekturspeicher Werkzeugparameter $TC-DP1 bis $TC-DP23 mit Konturwerkzeugen Hinweis Die Werkzeugparameter, die in der Tabelle nicht aufgeführt sind wie z.B. $TC_DP7, werden nicht ausgewertet, d.h. ihr Inhalt ist bedeutungslos. Werkzeugaramameter Bedeutung Schneiden Dn Bemerkung Nummer (DP) $TC_DP1 Werkzeugtyp 400 bis 599 $TC_DP2 Schneidenlage Geometrie...
  • Seite 330: Sprachbefehle Zur Werkzeugverwaltung

    Werkzeugkorrekturen 8.2 Sprachbefehle zur Werkzeugverwaltung Sprachbefehle zur Werkzeugverwaltung Funktion Bei Verwendung der Werkzeugverwaltung können Werkzeugdaten verändert und aktualisiert werden. Über vordefinierte Funktionen können Sie im NC-Programm: ● Werkzeuge mit Namen anlegen und aufrufen. ● ein neues Werkzeug anlegen oder ein vorhandenes Werkzeug löschen. ●...
  • Seite 331 Werkzeugkorrekturen 8.2 Sprachbefehle zur Werkzeugverwaltung Beispiel NEWT-Funktion Mit der NEWT-Funktion kann im NC-Programm ein neues Werkzeug mit Namen angelegt werden. Die Funktion liefert als Rückgabeparameter die automatisch erzeugte T-Nummer, mit der das Werkzeug anschließend adressiert werden kann. Erfolgt keine Angabe der Duplonummer, wird diese in der Werkzeugverwaltung erzeugt. DEF INT DUPLO_NR DEF INT T_NR DUPLO_NR = 7...
  • Seite 332: Beispiel Getselt-Funktion

    Werkzeugkorrekturen 8.2 Sprachbefehle zur Werkzeugverwaltung Beispiel GETSELT-Funktion Die Funktion liefert die T-Nummer des für die Spindel vorgewählten Werkzeugs. Damit kann schon vor M6 auf die Korrekturdaten des Werkzeugs zugegriffen und die Synchronisation mit dem Hauptlauf schon etwas früher hergestellt werden. Beispiel Werkzeugwechsel mit Werkzeugverwaltung Werkzeugvorwahl, d.
  • Seite 333: Online-Werkzeugkorrektur (Putftocf, Putftoc, Ftocon, Ftocof)

    Werkzeugkorrekturen 8.3 Online -Werkzeugkorrektur (PUTFTOCF, PUTFTOC, FTOCON, FTOCOF) Online-Werkzeugkorrektur (PUTFTOCF, PUTFTOC, FTOCON, FTOCOF) Funktion Mit der Funktion werden Werkzeugkorrekturen, die sich aus der Bearbeitung ergeben, über eine online wirksame Werkzeuglängenkorrektur sofort eingerechnet (z. B. CD-Abrichten: die Schleifscheibe wird parallel zur Bearbeitung abgerichtet). Die Werkzeuglängenkorrektur kann aus dem Bearbeitungskanal oder einem parallelen Kanal (Abrichterkanal) verändert werden.
  • Seite 334 Werkzeugkorrekturen 8.3 Online -Werkzeugkorrektur (PUTFTOCF, PUTFTOC, FTOCON, FTOCOF) Parameter PUTFTOCF Online-Werkzeugkorrektur schreiben kontinuierlich FCTDEF Parametrierung der Funktion PUTFTOCF PUTFTOC Online-Werkzeugkorrektur schreiben diskret FTOCON Einschalten der Online-Werkzeugkorrektur FTOCOF Ausschalten der Online-Werkzeugkorrektur Polynom-Nr. Wert 1 bis 3: max. 3 Polynome sind gleichzeitig möglich; Polynom bis 3.
  • Seite 335 Werkzeugkorrekturen 8.3 Online -Werkzeugkorrektur (PUTFTOCF, PUTFTOC, FTOCON, FTOCOF) Bearbeitungsprogramm in Kanal 1: %_N_BEARB_MPF … N110 G1 G18 F10 G90 ;Grundstellung N120 T1 D1 ;Aktuelles Werkzeug anwählen N130 S100 M3 X100 ;Spindel ein, Fahren auf Ausgangsposition N140 INIT (2, "ABRICHT", "S") ;Anwahl des Abrichtprogramms in Kanal 2 N150 START (2) ;Starten des Abrichtprogramms in Kanal 2...
  • Seite 336 Werkzeugkorrekturen 8.3 Online -Werkzeugkorrektur (PUTFTOCF, PUTFTOC, FTOCON, FTOCOF) Abrichtprogramm modal: %_N_ABRICHT_MPF FCTDEF(1,-1000,1000,-$AA_IW[V],1) ;Funktion definieren. ID=1 DO FTOC(1,$AA_IW[V],3,1) ;Online-Werkzeugkorrektur anwählen: ;Istwert der V-Achse ist Eingangswert für ;Polynom 1; Ergebnis wird im Kanal 1 als ;Korrekturwert zur Länge 3 der aktiven ;Schleifscheibe addiert. WAITM(1,1,2) ;Synchronisation mit Bearbeitungskanal G1 V-0.05 F0.01, G91...
  • Seite 337 Werkzeugkorrekturen 8.3 Online -Werkzeugkorrektur (PUTFTOCF, PUTFTOC, FTOCON, FTOCOF) PUTFTOCF = Schreiben kontinuierlich Der Abrichtvorgang erfolgt zeitgleich mit der Bearbeitung: Abrichten über gesamte Schleifscheibenbreite mit Abrichtrolle oder mit Abrichtdiamant von einer Schleifscheibenseite zur anderen. Bearbeiten und Abrichten kann in verschiedenen Kanälen erfolgen. Wird kein Kanal programmiert, so wirkt die Korrektur im aktiven Kanal.
  • Seite 338: Werkzeugradiuskorrektur Konstant Halten (Cutconon)

    Werkzeugkorrekturen 8.4 Werkzeugradiuskorrektur konstant halten (CUTCONON) ● PUTFTOCF wirkt immer satzweise, d.h. im anschließenden Verfahrsatz. ● Die Online-Werkzeugkorrektur kann mit FTOC auch modal angewählt werden. Mehr Informationen hierzu siehe Kapitel "Bewegungssynchronaktionen". Werkzeugradiuskorrektur konstant halten (CUTCONON) Funktion Die Funktion "Werkzeugradiuskorrektur konstant halten" dient dazu, die Werkzeugradiuskorrektur für eine Anzahl von Sätzen zu unterdrücken, wobei jedoch eine durch die Werkzeugradiuskorrektur in vorher-gehenden Sätzen aufgebaute Differenz zwischen der programmierten und der tatsächlich abgefahrenen Bahn des...
  • Seite 339 Werkzeugkorrekturen 8.4 Werkzeugradiuskorrektur konstant halten (CUTCONON) N130 Y20 NORM ;Kein Umfahrungskreis b. Ausschalten der WRK N140 X0 Y0 G40 N150 M30 Beschreibung Im Normalfall ist vor der Aktivierung der Korrekturunterdrückung die Werkzeugradiuskorrektur bereits aktiv, und sie ist noch aktiv, wenn die Korrekturunterdrückung wieder deaktiviert wird.
  • Seite 340: Aktivierung 3D-Werkzeugkorrekturen (Cut3Dc

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) 8.5.1 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC, CUT3DF, CUT3DFS, CUT3DFF) Funktion Bei der Werkzeugradiuskorrektur für zylindrische Werkzeuge wird die veränderliche Werkzeugorientierung berücksichtigt. Für die Anwahl der 3D-Werkzeugradiuskorrektur gelten die gleichen Programmbefehle wie bei der 2D-Werkzeugradiuskorrektur. Mit G41/G42 wird die Korrektur links/rechts in Bewegungsrichtung angegeben.
  • Seite 341 Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) CUT3DFF oder CUT3DF Die Befehle sind modal wirksam und stehen in der gleichen Gruppe wie CUT2D und CUT2DF. Die Abwahl findet erst mit der nächsten Bewegung in der aktuellen Ebene statt. Dies gilt immer für G40 und ist unabhängig vom CUT-Befehl. Zwischensätze bei aktiver 3D-Werkzeugradiuskorrektur sind erlaubt.
  • Seite 342: Werkzeugradiuskorrektur: Umfangfräsen, Stirnfräsen

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) 8.5.2 3D-Werkzeugradiuskorrektur: Umfangfräsen, Stirnfräsen Umfangsfräsen Die hier benutzte Variante des Umfangsfräsens ist durch die Vorgabe einer Bahn (Leitlinie) und der zugehörigen Orientierung realisiert. Bei dieser Art der Bearbeitung ist auf der Bahn die Werkzeugform ohne Bedeutung. Entscheidend ist allein der Radius am Werkzeugeingriffspunkt.
  • Seite 343: Werkzeugtypen/Werkzeugwechsel Mit Veränderten Abmessungen (G40, G41, G42)

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Beispiel: NC-Sätze wurden mit Fräser 10 mm berechnet. Hier könnte auch mit Fräserdurchmesser 9,9 mm gefertigt werden, wobei dann mit verändertem Rauheitsprofil zu rechnen ist. 8.5.3 Werkzeugtypen/Werkzeugwechsel mit veränderten Abmessungen (G40, G41, G42) Funktion Fräserformen, Werkzeugdaten In dieser Tabelle sind die für Stirnfräsen möglichen Werkzeugformen und Grenzwerte der Werkzeugdaten zusammengestellt.
  • Seite 344 Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Wird im NC-Programm eine andere Typ-Nummer angegeben, als in der Tabelle aufgelistet, verwendet das System automatisch den Werkzeugtyp 110 Zylindrischer Gesenkfräser. Bei Verletzung der Grenzwerte für die Werkzeugdaten wird ein Alarm ausgegeben. Parameter Fräsertyp Typ-Nr.
  • Seite 345: Korrektur Auf Der Bahn, Bahnkrümmung, Eintauchtiefe Isd Und Werkzeugzustellung (Cut3Dc)

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Werkzeuglängenkorrektur Als Bezugspunkt für die Längenkorrektur gilt die Werkzeugspitze (Schnittpunkt Längsachse/Oberfläche). 3D-Werkzeugkorrektur, Werkzeugwechsel Ein neues Werkzeug mit veränderten Abmessungen (R, r, a) oder anderer Form darf nur mit Programmierung von G41 bzw. G42 angegeben werden (Übergang G40 nach G41 bzw. G42, erneute Programmierung von G41 bzw.
  • Seite 346 Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Für die Berechnung der Linearsätze sind in Maschinendaten für den Seitwärtswinkel zulässige Winkelbereiche hinterlegt. Falls die in Maschinendaten festgelegten Grenzwerte für zugelassene Winkelbereiche überschritten werden, meldet das System Alarm. Bahnkrümmung Die Bahnkrümmung wird nicht überwacht. Auch hier empfiehlt es sich, nur solche Werkzeuge zu verwenden, mit denen ohne Konturverletzung gearbeitet werden kann.
  • Seite 347: Innenecken/Außenecken Und Schnittpunktverfahren (G450/G451)

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Beschreibung Taschenfräsen mit schrägen Seitenwänden für Umfangsfräsen mit CUT3DC Bei dieser 3D-Werkzeugradiuskorrektur wird eine Abweichung des Fräserradius kompensiert, indem in Richtung der Flächennormalen der zu bearbeitenden Fläche zugestellt wird. Dabei bleibt die Ebene, in der die Stirnseite des Fräsers liegt unverändert, wenn die Eintauchtiefe ISD gleich geblieben ist.
  • Seite 348 Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Programmierung G450 oder G451 Parameter G450 Übergangskreis (Werkzeug umfährt Werstückecken auf einer Kreisbahn). G451 Schnittpunkt der Äquidistanten (Werkzeug schneidet in der Werkstückecke frei). Beschreibung Schnittpunktverfahren für 3D-Korrektur Bei 3D-Umfangsfräsen wird jetzt an Außenecken der G-Code G450/G451 ausgewertet, d. h.
  • Seite 349: Umfangsfräsen Mit Begrenzungsflächen Allgemeine Anwendung

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) 8.5.6 3D-Umfangsfräsen mit Begrenzungsflächen allgemeine Anwendung Funktion Anpassungen von 3D-Umfangsfräsen an Gegebenheiten von CAD-Programmen Von CAD-Sytemen generierte NC-Programme approximieren in der Regel die Mittelpunktsbahn eines Normwerkzeuges mit einer großen Anzahl kurzer Linearsätze. Damit diese so erzeugten Sätze vieler Teilekonturen die ursprüngliche Originalkontur möglichst genau nachbilden, ist es notwendig im Teileprogramm gewisse Anpassungen vorzunehmen.
  • Seite 350 Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Programmierung CUT3DCCD oder CUT3DCC Parameter CUT3DCCD Aktivierung 3D Werkzeugkorrektur für das Umfangsfräsen mit Begrenzungsflächen mit Differenzwerkzeug auf der Werkzeugsmittelpunktbahn: Zustellung zur Begrenzungsfläche. CUT3DCC Aktivierung 3D Werkzeugkorrektur für das Umfangsfräsen mit Begrenzungsflächen mit 3D- Radiuskorrektur: Kontur an der Bearbeitungsfläche Hinweis Werkzugradiuskorrektur mit G41, G42...
  • Seite 351: Beschreibung

    Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) Werkzeugtyp R = Schaftradius r = Eckenradius Zugelassen sind nur Fräsertypen mit Bei diesen zugelassenen Fräsertypen ist der Eckenradius r zylindrischen Schaft (Zylinder- oder gleich dem Schaftradius R. Alle anderen zugelassenen Schaftfräser) sowie Torusfräser (Typ Werkzeugtypen werden als Zylinderfräser interpretiert und 121 und 131) und im Grenzfall der ein eventuell angegebenes Maß...
  • Seite 352 Werkzeugkorrekturen 8.5 Aktivierung 3D-Werkzeugkorrekturen (CUT3DC..., CUT3DF...) ● programmiertem Werkzeugoffset OFFN. Ob die zu bearbeitende Fläche links oder rechts von der Bahn liegt, kann aus den erzeugten Teileprogramm nicht entnommen werden. Es wird deshalb von einem positiven Radius und einem negativen Verschleißwert des Originalwerkzeuges ausgegangen. Ein negativer Verschleißwert beschreibt immer ein Werkzeug mit verringertem Durchmesser.
  • Seite 353: Werkzeugorientierung (Oric, Orid, Osof, Osc, Oss, Osse, Osd, Ost)

    Werkzeugkorrekturen 8.6 Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) ● programmierten Werkzeugoffset OFFN herangezogen. Die Lage der Begrenzungsfläche wird bestimmt aus der Differenz der beiden Werte ● Abmessungen des Normwerkzeuges und ● Werkzeugradius (WZ-Parameter $TC_DP6). Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) Funktion Unter Werkzeugorientierung versteht man die geometrische Ausrichtung des Werkzeugs im...
  • Seite 354 Werkzeugkorrekturen 8.6 Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) Programmierung Eine Orientierungsänderung des Werkzeugs kann programmiert werden durch: ● direkte Programmierung der Rundachsen A, B, C (Rundachsinterpolation) ● Euler- oder RPY-Winkel ● Richtungsvektor (Vektorinterpolation durch Angabe von A3 oder B3 oder C3) ●...
  • Seite 355: Beispiel Oric

    Werkzeugkorrekturen 8.6 Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) Überschleifen der Orientierung durch Vorgabe der Winkeltoleranz in Grad bei Vektorinterpolation mit dem SD $SC_ORI_SMOOTH_TOL. Bei Rundachsinterpolation wird die vorgegebene Toleranz als maximale Abweichung der Orientierungsachsen angenommen. Beispiel ORIC Sind zwischen den Verfahrsätzen N10 und N20 zwei oder mehrere Sätze mit Orientierungsänderungen (z.
  • Seite 356 Werkzeugkorrekturen 8.6 Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) ORID N8 A2=… B2=… C2=… N10 X… Y… Z… N12 A2=… B2=… C2=… ; Der Satz N12 und N14 wird am Ende von N10 ;ausgeführt. Danach wird der Kreissatz mit der ;aktuellen Orientierung ausgefahren.
  • Seite 357: Verhalten An Außenecken

    Werkzeugkorrekturen 8.6 Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) Beispiel Änderung der Orientierung an einer Innenecke ORIC N10 X …Y… Z… G1 F500 N12 X …Y… Z… A2=… B2=…, C2=… N15 X Y Z A2 B2 C2 Verhalten an Außenecken An einer Außenecke wird immer ein Kreissatz mit dem Radius des Fräsers eingefügt.
  • Seite 358 Werkzeugkorrekturen 8.6 Werkzeugorientierung (ORIC, ORID, OSOF, OSC, OSS, OSSE, OSD, OST) Ist an Außenecken eine Orientierungsänderung notwendig, so kann diese wahlweise parallel zur Interpolation oder getrennt mit der Bahnbewegung erfolgen. Bei ORID werden zunächst die eingefügten Sätze ohne Bahnbewegung ausgeführt. Der Kreissatz wird unmittelbar vor dem zweiten der beiden Verfahrsätze eingefügt, durch welche die Ecke gebildet wird.
  • Seite 359: Freie D-Nummernvergabe, Schneidennummer

    Werkzeugkorrekturen 8.7 Freie D-Nummernvergabe, Schneidennummer Hinweis Im Unterschied zum Überschleifen der Kontur (und dem Orientierungsverlauf) mit G642 wird beim Überschleifen der Orientierung mit OSD bzw. OST kein eigener Satz gebildet, sondern die Überschleifbewegung wird direkt in die programmierten Originalsätze eingefügt. Mit OSD bzw.
  • Seite 360: D-Nummern Prüfen (Chkdno)

    Werkzeugkorrekturen 8.7 Freie D-Nummernvergabe, Schneidennummer 8.7.2 D-Nummern prüfen (CHKDNO) Funktion Mit CKKDNO prüfen Sie, ob die vorhandenen D-Nummern eindeutig vergeben worden sind. Die D-Nummern aller innerhalb einer TO-Einheit definierten Werkzeuge dürfen nur einmal auftreten. Ersatzwerkzeuge werden dabei nicht berücksichtigt. Programmierung state=CHKDNO(Tno1,Tno2,Dno) Parameter state...
  • Seite 361: T-Nummer Zur Vorgegebenen D-Nummer Ermitteln (Getacttd)

    Werkzeugkorrekturen 8.7 Freie D-Nummernvergabe, Schneidennummer Programmierung d = GETDNO (t,ce) state = SETDNO (t,ce,d) Parameter D-Nummer der Schneide des Werkzeuges T-Nummer des Werkzeuges Schneidennummer (CE-Nummer) des Werkzeuges state Gibt an, ob der Befehl fehlerfrei ausgeführt werden konnte (TRUE oder FALSE). Beispiel Umbenennen einer D-Nummer $TC_DP2[1,2] = 120 $TC_DP3[1,2] = 5.5...
  • Seite 362: D-Nummern Ungültig Setzen (Dzero)

    Werkzeugkorrekturen 8.7 Freie D-Nummernvergabe, Schneidennummer Parameter D-Nummer, für die die T-Nummer gesucht werden soll. Gefundene T-Nummer status 0: Die T-Nummer wurde gefunden. Tnr erhält den Wert der T-Nummer. -1: Zur angegebenen D-Nummer existiert keine T- Nummer; Tnr=0. -2: Die D-Nummer ist nicht absolut. Tnr erhält den Wert des ersten gefundenen Werkzeuges, das die D-Nummer mit dem Wert Dnr enthält.
  • Seite 363: Werkzeugträgerkinematik

    Werkzeugkorrekturen 8.8 Werkzeugträgerkinematik Werkzeugträgerkinematik Funktion Die Werkzeugträgerkinematik mit maximal zwei Drehachsen v oder v wird über die 17 Systemvariablen $TC_CARR1[m] bis $TC_CARR17[m] beschrieben. Die Beschreibung des Werkzeugträgers besteht aus: ● dem vektoriellen Abstand von der ersten Drehachse zum Bezugspunkt des Werkzeugträgers I , dem vektoriellen Abstand von erster zu zweiter Drehachse I , dem...
  • Seite 364 Werkzeugkorrekturen 8.8 Werkzeugträgerkinematik Funktion der Systemvariablen für orientierbare Werkzeugträger α Drehwinkel $TC_CARR13[m] α Drehwinkel $TC_CARR14[m] Offsetvector $TC_CARR15[m] $TC_CARR16[m] $TC_CARR17[m] Erweiterungen der Systemvariablen für orientierbare Werkzeugträger Bezeichnung x-Komponente y-Komponente z-Komponente Offsetvector $TC_CARR18[m] $TC_CARR19[m] $TC_CARR20[m] Achsbezeichner Achsbezeichner der Drehachsen v und v (Vorbelegung ist Null) Drehachse v $TC_CARR21[m]...
  • Seite 365 Werkzeugkorrekturen 8.8 Werkzeugträgerkinematik Hinweis Erklärungen zu den Parametern Mit "m" wird jeweils die Nummer des zu beschreibenden Werkzeugträgers angegeben. $TC_CARR47 bis $TC_CARR54 sowie $TC_CARR61 bis $TC_CARR63 sind nicht definiert und führen beim Versuch hierauf lesend oder schreiben zuzugreifen, zu einem Alarm.
  • Seite 366 Werkzeugkorrekturen 8.8 Werkzeugträgerkinematik Beispiel Der im folgenden Beispiel verwendete Werkzeugträger lässt sich durch eine Drehung um die Y-Achse vollständig beschreiben. N10 $TC_CARR8[1]=1 ;Definition der Y-Komponente der ersten ;Drehachse des Werkzeugträgers 1 N20 $TC_DP1[1,1]=120 ;Definition eines Schaftfräsers N30 $TC_DP3[1,1]=20 ;Definition eines Schaftfräsers mit ;Länge 20 mm N40 $TC_DP6[1,1]=5 ;Definition eines Schaftfräsers mit...
  • Seite 367 Werkzeugkorrekturen 8.8 Werkzeugträgerkinematik Voraussetzung Ein Werkzeugträger kann ein Werkzeug nur dann in alle möglichen Raumrichtungen orientieren, wenn ● zwei Drehachsen V und V vorhanden sind. ● die Drehachsen aufeinander senkrecht stehen. ● die Werkzeuglängsachse senkrecht auf der zweiten Drehachse V steht.
  • Seite 368 Werkzeugkorrekturen 8.8 Werkzeugträgerkinematik Feinverschiebungen Ein unzulässiger Feinverschiebungswert wird erst erkannt, wenn ein orientierbarer Werkzeugträger aktiviert wird, der solch einen Wert enthält und gleichzeitig das Settingdatum SD 42974: TOCARR_FINE_CORRECTION = TRUE ist. Der Betrag der zulässigen Feinverschiebung wird über Maschinendaten auf einen maximal zulässigen Wert begrenzt.
  • Seite 369: Bahnverhalten

    Bahnverhalten Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) Funktion Die Folgeachse wird gemäß der Tangente an der durch die Leitachsen festgelegten Bahn nachgeführt. Dadurch kann ein Werkzeug parallel zur Kontur ausgerichtet werden. Durch den in der TANGON-Anweisung programmierten Winkel kann das Werkzeug relativ zur Tangente angestellt werden.
  • Seite 370 Bahnverhalten 9.1 Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) Programmierung TANG (FAchse,LAchse1,LAchse2,Koppel,KS,Opt) oder TANGON (FAchse,Winkel, Dist, Winkeltol) oder TANGOF (FAchse) oder TLIFT (FAchse) oder TANGDEL (FAchse) Vereinfachte Programmierungen: Ein Koppelfaktor von 1 muss nicht explizit programmiert werden. TANG(C, X, Y, 1, "B", "P") kann abgekürzt notiert werden als TANG(C, X, Y, , , , "P").
  • Seite 371 Bahnverhalten 9.1 Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) TANG definiert werden soll. Ein Löschen ist nur möglich, wenn die Kopplung mit TANGOF(FAchse) ausgeschaltet ist. Parameter TANG Vorbereitende Anweisung für die Definition einer tangentialen Nachführung; Voreinstellung: 1 TANG(C,X,Y,1,"B") Bedeutet: Rundachse C folgt den Geometrieachsen X und Y.TLIFT ausschalten TANGON Tangentialsteuerung einschalten mit Angabe der Folgeachse und...
  • Seite 372: Beispiel Ebenenwechsel

    Bahnverhalten 9.1 Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) Beispiel Ebenenwechsel N10 TANG(A, X, Y,1) ;1. Definition der Tang. Nachführung N20 TANGON(A) ;Aktivierung der Kopplung N30 X10 Y20 ;Radius N80 TANGOF(A) ;Ausschalten der 1. Kopplung N90 TANGDEL(A) ;Löschen der 1. Definition TANG(A, X, Z) ;2.
  • Seite 373: Grenzwinkel Durch Arbeitsfeldbegrenzung

    Bahnverhalten 9.1 Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) N230 G1 X1500 Y760 N240 G3 X1360 Y900 I=AC(1360)_ J=AC(760) N250 G1 X1000 Y900 N280 TANGOF(C) N290 TRAFOOF N300 M02 Folge- und Leitachse definieren Die Definition von Folge- und Leitachsen erfolgt mit TANG. Ein Koppelfaktor gibt den Zusammenhang zwischen einer Winkeländerung der Tangente und der nachgeführten Achse an.
  • Seite 374 Bahnverhalten 9.1 Tangentialsteuerung (TANG, TANGON, TANGOF, TANGDEL) Zwischensatz an Konturecken einfügen, TLIFT An einer Ecke der Kontur ändert sich die Tangente und damit die Sollposition der nachgeführten Achse sprunghaft. Die Achse versucht normalerweise, diesen Sprung mit ihrer maximal möglichen Geschwindigkeit auszugleichen. Dabei ergibt sich jedoch über eine gewisse Strecke auf der Kontur nach der Ecke eine Abweichung zur gewünschten tangentiellen Anstellung.
  • Seite 375: Mitschleppen (Trailon, Trailof)

    Bahnverhalten 9.2 Mitschleppen (TRAILON, TRAILOF) Einfluss auf Transformationen Die Position der nachgeführten Rundachse kann Eingangswert für eine Transformation sein. Explizite Positionierung der Folgeachse Wird eine ihren Leitachsen nachgeführte Folgeachse explizit positioniert, so wirkt die Positionsangabe additiv zum programmierten Offsetwinkel. Zulässig sind alle Wegvorgaben: Bahn- und Positionierachsbewegungen. Status der Kopplung Im NC-Teileprogramm können Sie den Status der Kopplung mit folgender Systemvariablen abfragen:...
  • Seite 376 Bahnverhalten 9.2 Mitschleppen (TRAILON, TRAILOF) Programmierung TRAILON(FAchse,LAchse,Koppel) oder TRAILOF(FAchse,LAchse, LAchse2) oder Ausschalten ohne Angabe der Leitachse TRAILOF(FAchse) TRAILON und TRAILOF sind modal wirksam. Parameter TRAILON Mitschleppverband aktivieren und definieren Beispiel: V = Mitschleppachse, Y = Leitachse TRAILON(V,Y) TRAILOF Mitschleppverband ausschalten Beispiel: V = Mitschleppachse, Y = Leitachse TRAILOF(V,Y) TRAILOF mit 2 Parametern schaltet nur die Kopplung zu 1...
  • Seite 377 Bahnverhalten 9.2 Mitschleppen (TRAILON, TRAILOF) Koppel Koppelfaktor = Weg der Mitschleppachse/Weg der Leitachse Voreinstellung = 1 Hinweis Das Mitschleppen erfolgt immer im Basiskoordinatensystem (BKS). Die Anzahl der gleichzeitig aktivierbaren Mitschleppverbände wird nur begrenzt durch die Kombinationsmöglichkeiten der an der Maschine vorhandenen Achsen. Beispiel Das Werkstück soll zweiseitig mit der dargestellten Achskonstellation bearbeitet werden.
  • Seite 378 Bahnverhalten 9.2 Mitschleppen (TRAILON, TRAILOF) Achstypen im Verband Ein Mitschleppverband kann aus beliebigen Kombinationen von Linear- und Rundachsen bestehen. Als Leitachse kann dabei auch eine simulierte Achse definiert werden. Mitschleppachsen Einer Mitschleppachse können gleichzeitig maximal 2 Leitachsen zugeordnet werden. Die Zuordnung erfolgt in unterschiedlichen Mitschleppverbänden.
  • Seite 379: Kurventabellen (Ctab)

    Bahnverhalten 9.3 Kurventabellen (CTAB) Kurventabellen (CTAB) 9.3.1 Kurventabellen: Allgemeine Zusammenhänge Funktion Im Kapitel Kurventabellen finden Sie die Programmierbefehle, mit denen Zusammenhänge zwischen zwei Achsen (Leit- und Folgeachse) programmiert werden. In einem definierten Wertebereich des Leitwerts kann eindeutig zu jedem Leitwert die Folgegröße zugeordnet werden.
  • Seite 380: Kurventabellen Schwerpunktfunktionen (Ctabdef, Catbend, Ctabdel)

    Bahnverhalten 9.3 Kurventabellen (CTAB) 9.3.2 Kurventabellen Schwerpunktfunktionen (CTABDEF, CATBEND, CTABDEL) Funktion Mit Kurventabellen können Sie Positions- und Geschwindigkeitsbeziehungen zwischen 2 Achsen programmieren. Die Definition der Kurventabellen erfolgt in einem Teileprogramm. Beispiel für mechanische Kurvenscheiben ersetzen: Die Kurventabelle bildet dabei die Grundlage für die axiale Leitwertkopplung, indem sie den funktionellen Zusammenhang zwischen Leit- und Folgewert schafft: Die Steuerung berechnet bei entsprechender Programmierung aus einander zugeordneten Positionen von Leit- und Folgeachse ein Polynom, das der Kurvenscheibe entspricht.
  • Seite 381 Bahnverhalten 9.3 Kurventabellen (CTAB) Parameter Schwerpunktfunktionen CTABDEF ( ) Beginn Kurventabelle definieren. CTABEND( ) Ende Kurventabelle definieren. CTABDEL( ) Löschen aller Kurventabellen, ungeachtet vom Speichertyp FAchse Folgeachse Achse, die über die Kurventabelle programmiert wird. LAchse Leitachse Achse, durch die der Leitwert programmiert wird. n, m Nummer der Kurventabelle;...
  • Seite 382 Bahnverhalten 9.3 Kurventabellen (CTAB) Beispiel Definition einer Kurventabelle N100 CTABDEF(Y,X,3,0) ;Beginn der Definition einer ;nichtperiodischen Kurventabelle mit der ;Nummer 3 N110 X0 Y0 ;1. Bewegungsanweisung, legt ;Startwerte und 1. Stützstelle fest: ;Leitwert: 0; Folgewert: 0 N120 X20 Y0 ;2. Stützstelle: Leitwert: 0…20 ;Folgewert: Startwert…0 N130 X100 Y6 ;3.
  • Seite 383: Definition Der Kurventabelle

    Bahnverhalten 9.3 Kurventabellen (CTAB) Beispiel Definition einer periodischen Kurventabelle Definition einer periodischen Kurventabelle mit Nummer 2, Leitwertbereich von 0 bis 360, Folgeachsbewegung von 0 nach 45 und zurück nach 0: N10 DEF REAL DEPPOS N20 DEF REAL GRADIENT N30 CTABDEF(Y,X,2,1) ;Beginn der Definition N40 G1 X=0 Y=0 N50 POLY...
  • Seite 384 Bahnverhalten 9.3 Kurventabellen (CTAB) Start- und Endwert der Kurventabelle Als Startwert für den Beginn des Definitionsbereichs der Kurventabelle gilt die erste Angabe von zusammengehörigen Achspositionen (die erste Bewegungsanweisung) innerhalb der Kurventabellendefinition. Der Endwert des Definitionsbereichs der Kurventabelle wird entsprechend durch den letzten Verfahrbefehl bestimmt. Innerhalb der Definition der Kurventabelle steht der gesamte NC-Sprachumfang zur Verfügung.
  • Seite 385: Kurventabellen Formen (Ctabdel, Ctabnomem, Ctabfno, Ctabid, Ctablock, Ctabunlock)

    Bahnverhalten 9.3 Kurventabellen (CTAB) Beispiel: CATBDEF(Y, X, 1, 0) X0 Y0 ASPLINE X=5 Y=10 X10 Y40 CTABEND Abhängig vom Maschinendatum MD 20900: CATB_ENABLE_NO_LEADMOTION können Sprünge der Folgeachse bei fehlender Bewegung der Leitachse toleriert werden. Die übrigen im Hinweis genannten Einschränkungen gelten weiterhin. Beim Anlegen und Löschen von Tabellen können die Angaben des Speichertyps der NC benutzt werden.
  • Seite 386 Bahnverhalten 9.3 Kurventabellen (CTAB) Programmierung Modal wirksame Sprachbefehle mit Kurventabellen CTABDEL(n, m, memType) oder CTABNOMEM (memType) oder CTABFNO(memType) oder CTABID(n, memType) oder CTABLOCK(n, m, memType) oder CTABUNLOCK(n, m, memType) oder CTABDEL(n) oder CTABDEL(n, m) oder CTABLOCK(n) oder CTABLOCK(n, m) oder CTABLOCK() oder CTABLOCK(, , memType) oder CTABUNLOCK(n) oder CTABUNLOCK(n, m) oder CTABUNLOCK() oder...
  • Seite 387 Bahnverhalten 9.3 Kurventabellen (CTAB) Parameter Allgemeine Form im statischen oder dynamischen NC-Speicher: CTABDEL(n, m, Löschen der Kurventabellen des Kurventabellenbereiches, die memType) in memType gespeichert sind. CTABNOMEM(memType) Anzahl der definierten Kurventabellen. CTABFNO(memType) Anzahl der noch möglichen Tabellen CTABID(n, memType) Liefert Tabellen-Nr., die im Speichertyp als die n-te Kurventabelle eingetragen ist.
  • Seite 388: Beschreibung

    Bahnverhalten 9.3 Kurventabellen (CTAB) CTABPERIOD(n) Gibt die Tabellenperiodizität zurück. CTABSEG(memType) Anzahl der bereits verwendeten Kurvensegmente im betreffenden Speichertyp. CTABSEGID(n) Anzahl der von der Kurventabelle mit der Nummer n verwendeten Kurvensegmente. CTABFSEG(memType) Anzahl der möglichen Kurvensegmente. CTABMSEG(memType) Anzahl maximal möglicher Segmente. CTABPOLID(n) Anzahl der von der Kurventabelle mit der Nummer n verwendet.
  • Seite 389 Bahnverhalten 9.3 Kurventabellen (CTAB) Eine Tabelle, die im dynamischen Speicher (DRAM) angelegt wurde, wird bei Power-On gelöscht und muss eventuell noch einmal erzeugt werden. Die einmal erstellte Kurventabelle lässt sich auf beliebige Achskombinationen von Leit- und Folgeachse anwenden und ist unabhängig davon, welche Achsen zur Erstellung der Kurventabelle benutzt wurden.
  • Seite 390: Verhalten An Den Rändern Von Kurventabellen (Ctabtsv, Catbtsp, Ctabmin, Ctabmax)

    Bahnverhalten 9.3 Kurventabellen (CTAB) 9.3.4 Verhalten an den Rändern von Kurventabellen (CTABTSV, CATBTSP, CTABMIN, CTABMAX) Funktion Liegt der Leitwert außerhalb des Definitionsbereichs, so kann von einer Folgeachse der Wert am Anfang und am Ende der Kurventabelle gelesen werden. Mit CTABTSV wird von einer Folgeachse der Wert am Anfang der Kurventabelle gelesen. Mit CTABTEV wird von einer Folgeachse der Wert am Ende der Kurventabelle gelesen.
  • Seite 391 Bahnverhalten 9.3 Kurventabellen (CTAB) n, m Nummer der Kurventabellen Die Nummern der Kurventabellen können beliebig vergeben werden. Sie dienen ausschließlich zur eindeutigen Identifizierung. grad Gradient für die Steigung am Start bzw. Ende des Segments der Kurventabelle Werte und Wertebereich Werte der Folgeachse und Leitachse, die sich am Anfang und Ende einer Kurventabelle befinden CTABTSV, CTABTEV, CTABTSP, CTABTEP R10=CTABTSV(n, grad, FAchse).
  • Seite 392: Nicht Periodische Kurventabelle

    Bahnverhalten 9.3 Kurventabellen (CTAB) Beispiel Verwendung von CTABTSV, CTABTEV, CTABTSP, CTABTEP, CTABTMIN, CTABMAX Bestimmung des minimalen und maximalen Wertes der Kurventabelle. N10 DEF REAL STARTVAL N20 DEF REAL ENDVAL N30 DEF REAL STARTPARA N40 DEF REAL ENDPARA N50 DEF REAL MINVAL N60 DEF REAL MAXVAL N70 DEF REAL GRADIENT N100 CTABDEF(Y,X,1,0)
  • Seite 393 Bahnverhalten 9.3 Kurventabellen (CTAB) Periodische Kurventabelle Liegt der Leitwert außerhalb des Definitionsbereichs, wird der Leitwert Modulo des Definitionsbereichs bewertet und der entsprechende Folgewert ausgegeben. Arbeitsvorbereitung 9-25 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 394: Zugriff Auf Kurventabellenpositionen Und Tabellensegmente (Ctab, Ctabinv, Ctabssv, Catbsev)

    Bahnverhalten 9.3 Kurventabellen (CTAB) Hinweis CTABTSV, CTABTEV, CTABTSP, CTABTEP, CTABTMIN, CTABTMAX Diese Sprachbefehle können vom Teileprogramm oder von Synchronaktionen aus direkt verwendet werden. Abhängigkeit der internen Ausführungszeit der Funktion von der Anzahl der Tabellensegmente: CTABINV() abhängig unabhängig CTABTSV, CTABTEV, CTABTSP, CTABTEP (CTABTMIN, CTABTMAX nur, falls kein Intervall des Leitwertes vorgegeben wird) Lesen in Synchronaktionen...
  • Seite 395 Bahnverhalten 9.3 Kurventabellen (CTAB) Parameter CTAB Folgewert direkt von einem Leitwert lesen. CTABINV zu einem Folgewert den Leitwert lesen. CTABSSV von einer Folgeachse den Anfangswert des Kurvensegments lesen. CTABSEV von einer Folgeachse den Endwert des Kurvensegments lesen. FAchse Folgeachse Achse, die über die Kurventabelle programmiert wird. LAchse Leitachse Achse, durch die der Leitwert programmiert wird.
  • Seite 396 Bahnverhalten 9.3 Kurventabellen (CTAB) N120 X20 Y10 ; Endposition 1. Tabellensegment = Startposition 2. Tabellensegment... N130 X40 Y40 N140 X60 Y10 N150 X80 Y0 N160 CTABEND ; Ende der Tabellendefinition N200 STARTPOS = CTABSSV(30.0,1,GRADIENT) ; Startposition Y in Segment 2 = N210 ENDPOS = CTABSEV(30.0,1,GRADIENT) ;...
  • Seite 397: Axiale Leitwertkopplung (Leadon, Leadof)

    Bahnverhalten 9.4 Axiale Leitwertkopplung (LEADON, LEADOF) Hinweis CTAB, CTABINV, CTABSSV und CTABSEV Die Sprachbefehle CTAB, CTABINV und CTABSSV, CTABSEV können vom Teileprogramm oder von Synchronaktionen aus direkt verwendet werden. Alle Zusammenhänge zur Programmierung von Synchronaktionen sind im Kapitel "Bewegungssynchronaktionen" beschrieben. Die optionale Angabe der Leit- oder Folgeachse bei CTAB/CTABINV/CTABSSV/CTABSEV ist wichtig, falls Leit- und Folgeachse in verschiedenen Längeneinheiten projektiert sind.
  • Seite 398 Bahnverhalten 9.4 Axiale Leitwertkopplung (LEADON, LEADOF) Leitachse heißt diejenige Achse, die die Eingangswerte für die Kurventabelle liefert. Folgeachse heißt die Achse, die die über die Kurventabelle errechneten Positionen einnimmt. Ist- und Sollwertkopplung Als Leitwerte, also Ausgangswerte zur Positionsermittlung der Folgeachse können verwendet werden: ●...
  • Seite 399 Bahnverhalten 9.4 Axiale Leitwertkopplung (LEADON, LEADOF) Beispiel Leitwertkopplung aus Synchronaktion Bei einer Pressenanlage soll eine herkömmliche mechanische Kopplung zwischen einer Leitachse (Stempelwelle) und Achsen eines Transfersystems aus Transferachsen und Hilfsachsen durch ein elektronisches Koppelsystem ersetzt werden. Es demonstriert, wie bei einer Pressenanlage ein mechanisches Transfersystem durch ein elektronisches Transfersystem ersetzt wird.
  • Seite 400 Bahnverhalten 9.4 Axiale Leitwertkopplung (LEADON, LEADOF) N10 IDS=1 EVERY ($A_IN[1]==1) AND ($A_IN[16]==1) AND ($AC_MARKER[0]==0) DO LEADON(X,LW,1) LEADON(YL,LW,2) LEADON(ZL,LW,3) $AC_MARKER[0]=1 ;**** E1 0=>1 Kopplung Walzenvorschub EIN N20 IDS=11 EVERY ($A_IN[1]==1) AND ($A_IN[5]==0) AND ($AC_MARKER[5]==0) DO LEADON(U,LW,4) PRESETON(U,0) $AC_MARKER[5]=1 ; **** E1 0->1 Kopplung Richtkopf EIN N21 IDS=12 EVERY ($A_IN[1]==1) AND ($A_IN[5]==0) AND ($AC_MARKER[6]==0) DO LEADON(V,LW,4) PRESETON(V,0)
  • Seite 401 Bahnverhalten 9.4 Axiale Leitwertkopplung (LEADON, LEADOF) Kein Synchronlauf Entfernt sich die berechnete Folgeachssollposition mit Einschalten der Leitwertkopplung von der aktuellen Folgeachsposition, wird kein Synchronlauf hergestellt. Ist- und Sollwertkupplung Die Sollwertkopplung liefert im Vergleich zur Istwertkopplung einen besseren Synchronlauf zwischen Leit- und Folgeachse und ist deshalb standardmäßig voreingestellt. Sollwertkopplung ist nur möglich, wenn Leit- und Folgeachse von derselben NCU interpoliert werden.
  • Seite 402 Bahnverhalten 9.4 Axiale Leitwertkopplung (LEADON, LEADOF) Eine Umschaltung ist über das Settingdatum $SA_LEAD_TYPE möglich. Das Umschalten zwischen Ist- und Sollwertkopplung sollte immer bei Stillstand der Folgeachse erfolgen. Denn nur im Stillstand wird nach dem Umschalten neu synchronisiert. Anwendungsbeispiel Das Lesen der Istwerte kann bei großen Maschinenerschütterungen nicht fehlerfrei erfolgen. Beim Einsatz der Leitwertkopplung im Pressentransfer kann es daher in den Arbeitsschritten mit größten Erschütterungen notwendig werden, von Istwertkopplung auf Sollwertkopplung umzuschalten.
  • Seite 403: Vorschubverlauf (Fnorm, Flin, Fcub, Fpo)

    Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) Status der Kopplung Im NC-Teileprogramm können Sie den Kopplungsstatus mit folgender Systemvariablen abfragen: $AA_COUP_ACT[Achse] 0: Keine Kopplung aktiv 16: Leitwertkopplung aktiv Status-Verwaltung bei Synchronaktionen Schalt- und Koppelvorgänge werden über Echtzeitvariablen: $AC_MARKER[i] = n verwaltet mit: i Merker-Nummer n Statuswert...
  • Seite 404: Beispiel Verschiedene Vorschubprofile

    Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) Parameter FNORM Grundeinstellung. Der Vorschubwert wird über den Bahnweg des Satzes vorgegeben und gilt danach als modaler Wert. FLIN Bahngeschwindigkeitsprofil linear: Der Vorschubwert wird vom aktuellen Wert am Satzanfang bis zum Satzende über den Bahnweg linear eingefahren und gilt danach als modaler Wert.
  • Seite 405 Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) N1 F1000 FNORM G1 X8 G91 G64 ;Konstantes Vorschubprofil, Kettenmaßang. N2 F2000 X7 ;Sprunghafte Sollgeschwindikeitsänderung N3 F=FPO(4000, 6000, -4000) ;Vorschubprofil über Polynom mit Vorschub 4000 am ;Satzende N4 X6 ;Polynomvorschub 4000 gilt als modaler Wert N5 F3000 FLIN X5 ;Lineares Vorschubprofil N6 F2000 X8...
  • Seite 406 Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) FLIN Der Vorschubverlauf wird vom aktuellen Vorschubwert zum programmierten F-Wert linear bis Satzende eingefahren. Beispiel: N30 F1400 FLIN X50 Arbeitsvorbereitung 9-38 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 407 Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) FCUB Der Vorschub wird vom aktuellen Vorschubwert zum programmierten F-Wert bis Satzende im kubischen Verlauf eingefahren. Die Steuerung verbindet alle mit aktivem FCUB satzweise programmierten Vorschubwerte durch Splines. Die Vorschubwerte dienen hier als Stützpunkte zur Berechnung der Splineinterpolation.
  • Seite 408 Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) F=FPO(…,…,…) Der Vorschubverlauf wird über ein Polynom direkt programmiert. Die Angabe der Polynomkoeffizienten erfolgt analog zur Polynominterpolation. Beispiel: F=FPO(endfeed, quadf, cubf) endfeed, quadf und cubf sind vorher definierte Variable. endfeed: Vorschub am Satzende quadf: Quadratischer Polynomkoeffizient cubf:...
  • Seite 409 Bahnverhalten 9.5 Vorschubverlauf (FNORM, FLIN, FCUB, FPO) Aktiver Kompressor COMPON Bei aktivem Kompressor COMPON gilt bei Zusammenfassung mehrerer Sätze zu einem Splinesegment: FNORM: Für das Splinesegment gilt das F-Wort des letzten zugehörigen Satzes. FLIN: Für das Splinesegment gilt das F-Wort des letzten zugehörigen Satzes. Der programmierte F-Wert gilt zum Ende des Segments und wird dann linear angefahren.
  • Seite 410: Programmablauf Mit Vorlaufspeicher (Startfifo, Stopfifo, Stopre)

    Bahnverhalten 9.6 Programmablauf mit Vorlaufspeicher (STARTFIFO, STOPFIFO, STOPRE) Programmablauf mit Vorlaufspeicher (STARTFIFO, STOPFIFO, STOPRE) Funktion Je nach Ausbaustufe verfügt die Steuerung über eine bestimmte Menge sog. Vorlaufspeicher, die fertig aufbereitete Sätze vor der Abarbeitung speichern und im Fertigungsablauf als schnelle Satzfolgen ausgeben. Hierdurch lassen sich kurze Wege mit hohen Geschwindigkeiten abfahren.
  • Seite 411 Bahnverhalten 9.6 Programmablauf mit Vorlaufspeicher (STARTFIFO, STOPFIFO, STOPRE) Hinweis STOPFIFO hält die Bearbeitung an, bis der Vorlaufspeicher gefüllt ist bzw. STARTFIFO oder STOPRE erkannt wird. Beispiel Bearbeitungsabschnitt kennzeichnen Der Bearbeitungsabschnitt, der im Vorlaufspeicher zwischengespeichert werden soll, wird am Anfang und Ende mit STOPFIFO bzw. STARTFIFO gekennzeichnet. N10 STOPFIFO N20…...
  • Seite 412: Bedingt Unterbrechbare Programmabschnitte (Delayfston, Delayfstof)

    Bahnverhalten 9.7 Bedingt unterbrechbare Programmabschnitte (DELAYFSTON, DELAYFSTOF) Bedingt unterbrechbare Programmabschnitte (DELAYFSTON, DELAYFSTOF) Funktion Bedingt unterbrechbare Teileprogrammabschnitte werden Stopp-Delay-Bereiche genannt Innerhalb bestimmter Programmabschnitte soll nicht angehalten werden und auch der Vorschub nicht verändert werden. Im Wesentlichen sollen kurze Programmabschnitte, die z. B.
  • Seite 413 Bahnverhalten 9.7 Bedingt unterbrechbare Programmabschnitte (DELAYFSTON, DELAYFSTOF) Ereignisname Reaktion Unterbrechungsparameter RESET immediate NST: DB21,… DBX7.7 und DB11, … DBX20.7 PROG_END Alarm 16954 NC-Prog: M30 INTERRUPT delayed NST: FC-9 und ASUP DB10, ... DBB1 SINGLEBLOCKSTOP delayed Einzelsatzbetrieb im Stopp-Delay-Bereich eingeschaltet: NC stoppt am Ende des 1.Satzes außerhalb des Stopp-Delay Bereichs.
  • Seite 414: Beispiel Verschachtelung Von Stopp-Delay-Bereichen In Zwei Programmebenen

    Bahnverhalten 9.7 Bedingt unterbrechbare Programmabschnitte (DELAYFSTON, DELAYFSTOF) Beispiel Verschachtelung von Stopp-Delay-Bereichen in zwei Programmebenen N10010 DELAYFSTON() ;Sätze mit N10xxx Programmebene 1 N10020 R1 = R1 + 1 N10030 G4 F1 ;Stopp-Delay-Bereich beginnt N10040 Unterprogramm2 ;Interpretation des Unterprogramms 2 N20010 DELAYFSTON() ;Unwirksam, wiederholter Beginn, 2.
  • Seite 415 Bahnverhalten 9.7 Bedingt unterbrechbare Programmabschnitte (DELAYFSTON, DELAYFSTOF) N400 G33 Z5 K2 M3 S1000 N500 G33 Z0 X5 K3 N600 G0 X100 N700 DELAYFSTOF() N800 GOTOB MY_LOOP Details über Satzsuchlauf vom Typ SERUPRO und Vorschübe in Verbindung mit G331/G332 Vorschub bei Gewindebohren ohne Ausgleichsfutter siehe /FB1/ Funktionshandbuch Grundfunktionen;...
  • Seite 416 Bahnverhalten 9.7 Bedingt unterbrechbare Programmabschnitte (DELAYFSTON, DELAYFSTOF) 3. Ruft Unterprogramm1 in einem Stopp-Delay-Bereich Unterprogramm2, so ist Unterprogramm2 komplett ein Stopp-Delay-Bereich. Insbesondere ist DELAYFSTOF in Unterprogramm2 wirkungslos. Hinweis REPOSA ist ein Unterprogrammende und DELAYFSTON wird in jedem Fall abgewählt. Trifft ein "hartes" Stopp-Ereignis auf den "Stopp-Delay-Bereich", so wird der "Stopp- Delay-Bereich"...
  • Seite 417: Programmstelle Für Serupro Verhindern (Iptrlock, Iptrunlock)

    Bahnverhalten 9.8 Programmstelle für SERUPRO verhindern (IPTRLOCK, IPTRUNLOCK) Programmstelle für SERUPRO verhindern (IPTRLOCK, IPTRUNLOCK) Funktion Für bestimmte komplizierte mechanische Situationen an der Maschine ist es erforderlich, den Satzsuchlauf SERUPRO zu verhindern. Mit einem programmierbaren Unterbrechungszeiger besteht eine Eingriffsmöglichkeit, beim "Suchen auf der Unterbrechungsstelle", vor der suchunfähigen Stelle aufzusetzen. Es können auch suchunfähige Bereiche in Teileprogrammbereichen definiert werden, in denen die NCK noch nicht wieder einsteigen kann.
  • Seite 418 Bahnverhalten 9.8 Programmstelle für SERUPRO verhindern (IPTRLOCK, IPTRUNLOCK) N10070 RET ;Ende des suchunfähigen ;Programmabschnitts N100 G4 F2 ;Hauptprogramm wird fortgesetzt Eine Unterbrechung auf 100 liefert dann wieder der Unterbrechungszeiger. Suchunfähige Bereiche erfassen und suchen Die suchunfähigen Programmabschnitte werden mit dem Sprachbefehlen IPTRLOCK und IPTRUNLOCK gekennzeichnet.
  • Seite 419: Wiederanfahren An Kontur (Reposa/L, Reposq/H, Rmi, Rmn, Rmb, Rme)

    Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Automatischer Unterbrechungszeiger Die Funktion automatischer Unterbrechungszeiger legt automatisch eine vorher festgelegte Kopplungsart als suchunfähig fest. Mittels Maschinendatum wird für ● Elektronisches Getriebe bei EGON ● Axiale Leitwertkopplung bei LEADON der automatische Unterbrechungszeiger aktiviert.
  • Seite 420: Programmierung

    Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Programmierung REPOSA RMI DISPR=… oder REPOSA RMB oder REPOSA RME oder REPOSA RMN oder REPOSL RMI DISPR=… oder REPOSL RMB oder REPOSL RME oder REPOSL RMN oder REPOSQ RMI DISPR=…DISR=… oder REPOSQ RMBDISR=… oder REPOSQ RME DISR=…...
  • Seite 421 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Beispiel Anfahren im Viertelkreis anfahren, REPOSQ, REPOSQA Das Werkzeug fährt den Wiederanfahrpunkt auf einem Viertelkreis mit Radius DISR=... an. Den notwendigen Zwischenpunkt zwischen Start- und Wiederanfahrpunkt berechnet die Steuerung automatisch. Beispiel: REPOSQ RMI DISR=10 F400 Arbeitsvorbereitung...
  • Seite 422 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Beispiel Werkzeug im Halbkreis anfahren, REPOSH, REPOSHA Das Werkzeug fährt den Wiederanfahrpunkt auf einem Halbkreis mit Durchmesser DISR=... an. Den notwendigen Zwischenpunkt zwischen Start- und Wiederanfahrpunkt berechnet die Steuerung automatisch. Beispiel: REPOSH RMI DISR=20 F400 Wiederanfahrpunkt festlegen (nicht für SERUPRO Anfahren mit RMN)
  • Seite 423 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Mit RMI DISPR=... bzw. mit RME DISPR=... können Sie einen Wiederanfahrpunkt festlegen, der vor dem Unterbrechungspunkt bzw. vor dem Satzendpunkt liegt. Mit DISPR=... beschreiben Sie den Konturweg in mm/inch, um den der Wiederanfahrpunkt vor dem Unterbrechungs- bzw.
  • Seite 424 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) SERUPRO-Anfahren mit RMN Wird bei der Bearbeitung an einer beliebigen Stelle ein Abbruch erzwungen, dann wird mit SERUPRO-Anfahren unter RMN der kürzeste Weg von der Abbruchstelle angefahren, um anschließend nur den Restweg abzuarbeiten. Dazu startet der Anwender ein SERUPRO- Vorgang auf den Unterbrechungssatz und positioniert mit den JOG-Tasten vor die schadhafte Stelle des Zielsatzes.
  • Seite 425 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Status für den gültigen REPOS-Mode Der gültige REPOS-Mode des unterbrochenen Satzes kann über Synchronaktionen mit der Variablen $AC_REPOS_PATH_MODE gelesen werden: 0: Anfahren nicht definiert 1 RMB: Anfahren auf den Beginn 2 RMI: Anfahren auf den Unterbrechungspunkt 3 RME: Anfahren auf den Satzendpunkt 4 RMN: Anfahren auf den nächstliegenden Bahnpunkt des unterbrochenen Satzes.
  • Seite 426 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Kontur anfahren Die Bewegung, mit der das Werkzeug wieder an die Kontur heranfährt, ist programmierbar. Die Adressen der zu verfahrenden Achsen geben Sie mit Wert Null an. Mit den Befehlen REPOSA, REPOSQA und REPOSHA werden automatisch alle Achsen repositioniert.
  • Seite 427 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Arbeitsvorbereitung 9-59 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 428 Bahnverhalten 9.9 Wiederanfahren an Kontur (REPOSA/L, REPOSQ/H, RMI, RMN, RMB, RME) Arbeitsvorbereitung 9-60 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 429: Bewegungssynchronaktionen

    Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen 10.1 Funktion Synchronaktionen bieten die Möglichkeit, synchron zu Bearbeitungssätzen Aktionen auszuführen. Der Ausführungszeitpunkt der Aktionen kann über Bedingungen definiert werden. Die Bedingungen werden im Interpolationstakt überwacht. Die Aktionen stellen somit eine Reaktion auf Echtzeitereignisse dar; ihre Ausführung ist nicht an Satzgrenzen gebunden. Zusätzlich enthält eine Synchronaktion Angaben zu ihrer Lebensdauer und zur Abfragehäufigkeit für die programmierten Hauptlaufvariablen und damit zur Ausführungshäufigkeit der zu startenden Aktionen.
  • Seite 430 Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen ● Optimierung laufzeitkritischer Anwendungen (z. B. Werkzeugwechsel) ● Schnelle Reaktion auf externe Ereignisse ● AC-Regelungen programmieren ● Sicherheitsfunktionen einrichten ● ..Programmierung DO Aktion1 Aktion2 … SCHLÜSSELWORT Bedingung DO Aktion1 Aktion2 … ID=n SCHLÜSSELWORT Bedingung DO Aktion1 Aktion2 … IDS=n SCHLÜSSELWORT Bedingung DO Aktion1 Aktion2 …...
  • Seite 431: Programmierung Und Befehlselemente

    Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen Beispiel WHEN $AA_IW[Q1]>5 DO M172 H510 ;Wenn der Istwert der Achse Q1 5 mm übersteigt, ;werden die Hilfsfunktionen M172 und H510 an die ;PLC-Nahtstelle ausgegeben. 10.1.1 Programmierung und Befehlselemente Funktion Eine Synchronaktion steht allein im Satz und wirkt ab den nächsten ausführbaren Satz einer Maschinenfunktion (z.
  • Seite 432: Gültigkeitsbereich: Identifikationsnummer Id

    Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen Technologiezyklus Bei erfüllter Bedingung wird als Aktion ein Programm aufgerufen. Beispiel ID=1 WHENEVER $A_IN[1]==1 $A_OUT[1]=1 Synchronaktion Nr. 1: immer wenn Eingang 1 ansteht dann Ausgang 1 setzen 10.1.2 Gültigkeitsbereich: Identifikationsnummer ID Funktion Der Gültigkeitsbereich einer Synchronaktion ist festgelegt durch die Identifikationsnummer: ●...
  • Seite 433: Zyklische Prüfung Der Bedingung

    Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen ● ID=n; n=1..255 Die Synchronaktion wirkt in den folgenden Sätzen modal und kann durch CANCEL(n) ausgeschaltet oder durch Programmierung einer neuen Synchronaktion mit gleicher ID überschrieben werden. Die im M30-Satz aktiven Synchronaktionen verzögern das Programmende. ID-Synchronaktionen wirken nur im Automatik-Betrieb. Beispiel: ID=2 EVERY $A_IN[1]==1 DO POS[X]=0 ●...
  • Seite 434: Bedingung

    Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen FROM Die Bedingung wird in jedem Interpolationstakt überprüft, bis sie einmal erfüllt ist. Die Aktion wird daraufhin so lange ausgeführt, wie die Synchronaktion aktiv ist, d. h. auch dann, wenn die Bedingung nicht mehr erfüllt ist. EVERY Die Bedingung wird in jedem Interpolationstakt abgefragt.
  • Seite 435: Aktionen

    Bewegungssynchronaktionen 10.1 Struktur, allgemeine Grundlagen Mögliche Bedingungen ● Vergleich von Hauplaufvariablen (analoge/digitale Ein-/Ausgänge, u.a.) ● Boole'sche Verknüpfung zwischen Vergleichsergebnissen ● Berechnung von Echtzeitausdrücken ● Zeit/Entfernung vom Satzanfang ● Entfernung vom Satzende ● Messwerte, Messergebnisse ● Servo-Werte ● Geschwindigkeiten, Achsstatus 10.1.4 Aktionen Funktion In Synchronaktionen können eine oder mehrere Aktionen programmiert werden.
  • Seite 436: Operatoren Für Bedingungen Und Aktionen

    Bewegungssynchronaktionen 10.2 Operatoren für Bedingungen und Aktionen 10.2 Operatoren für Bedingungen und Aktionen 10.2 Vergleiche In Bedingungen können Variablen oder (==, <>, <, >, <=, >=) Teilausdrücke verglichen werden. Das Ergebnis ist immer vom Datentyp BOOL. Zulässig sind alle bekannten Vergleichsoperatoren.
  • Seite 437: Hauptlaufvariablen Für Synchronaktionen

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen ● Hauptlaufvariable indiziert WHEN…DO $AC_PARAM[$AC_MARKER[1]] = 3 Unzulässig ist $AC_PARAM[1] = $P_EP[$AC_MARKER] 10.3 Hauptlaufvariablen für Synchronaktionen 10.3 10.3.1 Allgemeines zu Systemvariablen Funktion Mit Hilfe von Systemvariablen können Daten der NC gelesen und geschrieben werden. Systemvariable werden in Vorlauf- und Hauptlaufvariable unterschieden. Vorlaufvariable werden immer zum Vorlaufzeitpunkt ausgeführt.
  • Seite 438: Implizite Typwandlung

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen Der 2. Buchstabe wird meistens nur für Hauptlaufvariablen verwendet. Vorlaufvariablen, wie $P_ werden meist ohne 2. Buchstaben ausgeführt. Dem Prefix ($ gefolgt von einem oder zwei Buchstaben) folgt immer ein Unterstrich und der nachfolgende Variablenname meistens als englische Bezeichnung oder Abkürzung. Datentypen Hauptlaufvariablen können folgende Datentypen haben: Integer für ganzzahlige Werte mit Vorzeichen...
  • Seite 439: Beispiele Impliziter Typwandlungen

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen Ergebnisse Typwandlung von REAL oder INTEGER nach BOOL Ergebnis BOOL = TRUE wenn der Wert von REAL oder INTEGER ungleich Null ist Ergebnis BOOL = FALSE wenn der Wert von REAL oder INTEGER gleich Null ist Typwandlung von BOOL nach REAL oder INTEGER Ergebnis REAL TRUE wenn der Wert von BOOL = TRUE (1) ist...
  • Seite 440: Gud-Variablen Für Synchronaktionen

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen 10.3.3 GUD-Variablen für Synchronaktionen Funktion Neben den vordefinierten Variablen kann der Programmierer in Synchronaktionen spezielle GUD-Variable nutzen. Die Variablen werden auf HMI im Bedienbereich Parameter angezeigt und können im Wizard sowie in der Variablenansicht und Variablenprotokoll verwendet werden.
  • Seite 441 Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen Liste der vordefinierten Variablennamen Name der Synact-GUD vom Datentyp AXIS vom Datentyp CHAR vom Datentyp STRING im Baustein SYG_AS[ ] SYG_CS[ ] SYG_SS[ ] SGUD-Baustein SYG_AM[ ] SYG_CM[ ] SYG_SM[ ] MGUD-Baustein SYG_AU[ ] SYG_CU[ ] SYG_SU[ ] UGUD-Baustein SYG_A4[ ]...
  • Seite 442: Default-Achsbezeichner (No_Axis)

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen Hinweis Neu angelegte Variable bekommen nun automatisch bei der Definition dem im Maschinendatum hinterlegten Wert für Default-Achsnamen zugewiesen. Weitere Informationen zu einer über Maschinendatum gültigen Definition siehe Literatur /FBSY/ Funktionsbeschreibung Synchronaktionen Programmierung PROC UP(AXIS PAR1=NO_AXIS, AXIS PAR2=NO_AXIS) IF PAR1 <>NO_AXIS…...
  • Seite 443: Synchronaktions-Parameter $Ac_Param[N]

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen Beispiel für Merkervariable lesen und schreiben WHEN ... DO $AC_MARKER[0] = 2 WHEN ... DO $AC_MARKER[0] = 3 WHENEVER $AC_MARKER[0] == 3 DO $AC_OVR=50 10.3.6 Synchronaktions-Parameter $AC_PARAM[n] Funktion Synchronaktions-Parameter $AC_PARAM[n] dienen für Berechnungen und als Zwischenspeicher in Synchronaktionen.
  • Seite 444: Rechenparameter $R[N]

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen 10.3.7 Rechenparameter $R[n] Funktion Diese statische Feld-Variable dient zu Berechnungen im Teileprogramm und Synchronaktionen. Programmierung Programmierung im Teileprogramm: REAL R[n] oder REAL Rn Programmierung in Synchronaktionen: REAL $R[n] oder REAL $Rn Rechenparameter Die Verwendung von Rechenparametern ermöglicht: ●...
  • Seite 445: Nc-Maschinen- Und Nc-Settingdaten Lesen Und Schreiben

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen SYG_IS[0]=1 WHEN $AA_IM[SGY_AS[1]]>10 DO $R3=$$MA_POSCTRL_GAIN[SYG_IS[0]],SYG_AS[1]] WHEN $AA_IM[SGY_AS[1]]>10 DO $R3=$$MA_POSCTRL_GAIN[SYG_AS[1]] WHEN $AA_IM[SGY_AS[1]]>15 DO $$MA_POSCTRL_GAIN[SYG_AS[0]], SYG_AS[1]]=$R3 10.3.8 NC-Maschinen- und NC-Settingdaten lesen und schreiben Funktion Das Lesen und Schreiben von NC-Maschinen-/Settingdaten ist auch aus Synchronaktionen möglich. Beim Lesen und Schreiben von Maschinendaten-Feldelementen kann bei der Programmierung ein Index weggelassen werden.
  • Seite 446: Timer-Variable $Ac_Timer[N]

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen Beispiel ID=1 WHEN $AA_IW[X]>10 DO $$SN_SW_CAM_PLUS_POS_TAB_1[0]=20 $$SN_SW_CAM_MINUS_POS_TAB_1[0]=30 ;Veränderung der Schaltposition von SW-Nocken. Hinweis: Die Schaltpositionen müssen 2-3 IPO-Takte vor Erreichen der Position verändert werden. 10.3.9 Timer-Variable $AC_Timer[n] Funktion Die Systemvariable $AC_TIMER[n] ermöglicht das Starten von Aktionen nach definierten Wartezeiten.
  • Seite 447: Fifo-Variable $Ac_Fifo1[N]

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen 10.3.10 FIFO-Variable $AC_FIFO1[n] ... $AC_FIFO10[n] Funktion Zur Abspeicherung zusammengehöriger Datenfolgen stehen 10 FIFO-Variable (Umlaufspeicher) zur Verfügung. Datentyp: REAL Anwendung: ● zyklisches Messen ● Durchlaufbearbeitung Auf jedes Element kann lesend und schreibend zugegriffen werden. FIFO-Variable Die Anzahl der verfügbaren FIFO-Variablen wird per Maschinendatum MD 28260: NUM_AC_FIFO festgelegt.
  • Seite 448 Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen DEF REAL ZWI=2.5 ;Konstanter Abstand zwischen ;aufgelegten Produkten. DEF REAL GESAMT=270 ;Abstand zwischen Längenmess- und ;Entnahmeposition. EVERY $A_IN[1]==1 DO $AC_FIFO1[4]=0 ;Bei Prozessbeginn, FIFO ;zurücksetzen. EVERY $A_IN[2]==1 DO $AC_TIMER[0]=0 ;Unterbricht ein Produkt die ;Lichtschranke, Zeitmessung starten. EVERY $A_IN[2]==0 DO $AC_FIFO1[0]=$AC_TIMER[0]*$AA_VACTM[B] ;Wird Lichtschranke frei, aus gemessener Zeit und Transportgeschwindigkeit die Produktlänge berechnen und in FIFO speichern.
  • Seite 449: Auskunft Über Satztypen Im Interpolator

    Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen 10.3.11 Auskunft über Satztypen im Interpolator Funktion Für Synchronaktionen stehen die folgenden Systemvariablen zur Verfügung, um Auskunft über einen im Hauptlauf gerade aktuellen Satz zu erhalten: $AC_BLOCKTYPE $AC_BLOCKTYPEINFO $AC_SPLITBLOCK Blocktype- und Blocktypeinfo-Variable $AC_BLOCKTYPE $AC_BLOCKTYPEINFO Wert: Wert: ungleich 0 Bedeutung:...
  • Seite 450 Bewegungssynchronaktionen 10.3 Hauptlaufvariablen für Synchronaktionen $AC_BLOCKTYPE $AC_BLOCKTYPEINFO Wert: Wert: ungleich 0 Bedeutung: Origi- Zwischensatz Auslöser für Zwischensatz: nalsatz TLIFT-Satz mit: linearer Bewegung der Tangentialachse und ohne Abhebebewegung nichtlinearer Bewegung der Tangentialachse (Polynom) und ohne Abhebebewegung Abhebebwegung, Tangentialachsbewegung und Abhebebeweung starten gleichzeitig Abhebebwegung, Tangentialachse startet erst, wenn bestimmte Abhebeposition erreicht wird.
  • Seite 451: Aktionen In Synchronaktionen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Zählen von Überschleifsätzen $AC_MARKER[0]=0 $AC_MARKER[1]=0 $AC_MARKER[2]=0 ;Definition von Synchronaktionen, mit denen ;Überschleifsätze gezählt werden ;alle Überschleifsätze zählen in $AC_MARKER[0] ID = 1 WHENEVER ($AC_TIMEC ==0) AND ($AC_BLOCKTYPE==5) DO _ $AC_MARKER[0]= $AC_MARKER[0] + 1 ;Mit G641 erzeugte Überschleifsätze zählen in $AC_MARKER[1] ID = 2 WHENEVER ($AC_TIMEC ==0) AND ($AC_BLOCKTYPEINFO==5001) DO _ $AC_MARKER[1]= $AC_MARKER[1] + 1 ;Mit G642 erzeugte Überschleifsätze zählen in $AC_MARKER[2]...
  • Seite 452 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen ● zusätzliche Sicherheitsfunktionen einrichten ● überlagerte Bewegung, Online-Werkzeugkorrektur und Abstandsregelung einstellen ● Aktionen in allen Betriebsarten ausführen ● Synchronaktionen von PLC aus beeinflussen ● Technologiezyklen ausführen ● Ausgabe von digitalen und analogen Signalen ● Performanceerfassung von Synchronaktionen am Interpolationstakt und die Rechenzeit des Lagereglers für eine Auslastungsbewertung erfassen ●...
  • Seite 453 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Anwendungsmöglichkeiten von Bewegungssynchronaktionen ID=1 EVERY $A_IN[1]=1 DO M3 S…. Spindeln starten/positionieren/stoppen ID=2 EVERY $A_IN[2]=1 DO SPOS= DO TRAILON(FA, LA, Koppelfaktor) Mitschleppen einschalten DO LEADON(FA, LA, NRCTAB, OVW) Leitwertkopplung einschalten DO MEAWA(Achse)= Axiales Messen einschalten DO MEAC(Achse)= Kontinuierliches Messen einschalten DO [Feld n, m]=SET(Wert, Wert, ...) Initialisierung von Feldvariablen mit Wertelisten...
  • Seite 454: Ausgabe Von Hilfsfunktionen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.2 Ausgabe von Hilfsfunktionen Funktion Die Ausgabe von Hilfsfunktionen erfolgt in der Synchronaktion unmittelbar zum Ausgabezeitpunkt der Aktion. Der über Maschinendatum definierte Ausgabezeitpunkt für Hilfsfunktionen ist unwirksam. Der Ausgabezeitpunkt ist dann gegeben, wenn die Bedingung erfüllt ist. Beispiel: Kühlmittel einschalten bei bestimmter Achsposition: WHEN $AA_IM[X]>=15 DO M07 POS[X]=20 FA[X]=250...
  • Seite 455: Einlesesperre Setzen (Rdisable)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.3 Einlesesperre setzen (RDISABLE) Funktion Mit RDISABLE wird bei erfüllter Bedingung die weitere Satzbearbeitung im Hauptprogramm angehalten. Programmierte Bewegungssynchronaktionen werden weiterbearbeitet, nachfolgende Sätze weiter aufbereitet. Im Bahnsteuerbetrieb wird am Anfang eines Satzes mit RDISABLE in Synchronaktionen immer Genauhalt ausgelöst, unabhängig davon, ob RDISABLE wirksam wird oder nicht.
  • Seite 456: Vorlaufstopp Aufheben (Stopreof)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.4 Vorlaufstopp aufheben (STOPREOF) Funktion Bei explizit programmiertem Vorlaufstopp STOPRE oder durch eine aktive Synchronaktion implizit aktiviertem Vorlaufstopp hebt STOPREOF, sobald die Bedingung erfüllt ist, den Vorlaufstopp nach dem nächsten Bearbeitungssatz auf. Hinweis STOPREOF muss mit dem Schlüsselwort WHEN und satzweise (ohne ID-Nummer) programmiert werden.
  • Seite 457 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Programmierung Restweglöschen für die Bahn DO DELDTG oder axiales Restweglöschen DO DELDTG(Achse1) DELDTG(Achse2) ... Beispiel Schnelles Restweglöschen Bahn WHEN $A_IN[1]==1 DO DELDTG N100 G01 X100 Y100 F1000 ;wenn Eingang gesetzt ist, wird die Bewegung ;abgebrochen N110 G01 X…...
  • Seite 458: Polynomdefinition (Fctdef)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.6 Polynomdefinition (FCTDEF) Funktion Mit FCTDEF können Polynome 3. Grades in der Form y=a definiert werden. Diese Polynome werden von der Online-Werkzeugkorrektur FTOC und der Auswertefunktion SYNFCT benutzt. Programmierung FCTDEF(Polynom-Nr.,LLIMIT,ULIMIT,a Parameter Polynom-Nr. Nummer des Polynoms 3. Ordnung LLIMIT untere Grenze für Funktionswert ULIMIT...
  • Seite 459 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Laserleistungssteuerung Eine der möglichen Anwendungen von Polynomdefinition ist die Laserleistungssteuerung. Laserleistungssteuerung heißt: Beeinflussung eines Analogausgangs in Abhängigkeit z. B. der Bahngeschwindigkeit. $AC_FCTLL[1]=0.2 ;Definition der Polynomkoeffizienten $AC_FCTUL[1]=0.5 Arbeitsvorbereitung 10-31 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 460: Synchronfunktion (Synfct)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen $AC_FCT0[1]=0.35 $AC_FCT1[1]=1.5EX-5 STOPRE ID=1 DO $AC_FCTUL[1]=$A_INA[2]*0.1 +0.35 ;Obergrenze online verändern. ID=2 DO SYNFCT(1,$A_OUTA[1],$AC_VACTW) ;in Abhängigkeit von der Bahngeschwindigkeit (in $AC_VACTW hinterlegt) wird die ; Laserleistungssteuerung über den Analog-Ausgang 1 gesteuert Hinweis Die Benutzung des oben definierten Polynoms erfolgt mit SYNFCT. 10.4.7 Synchronfunktion (SYNFCT) Funktion...
  • Seite 461 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel AC-Regelung (additiv) Additive Beeinflussung des programmierten Vorschubs Ein programmierter Vorschub soll additiv über den Strom der X-Achse (Zustellachse) geregelt werden: Der Vorschub soll um +/- 100 mm/min variieren, wobei der Strom um +/-1A um den Arbeitspunkt bei 5A schwankt.
  • Seite 462 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel AC-Regelung (multiplikativ) Programmierten Vorschub multiplikativ beeinflussen Der programmierter Vorschub soll multiplikativ beeinflusst werden, wobei der Vorschub – abhängig von der Belastung des Antriebes –bestimmte Grenzen nicht überschreiten soll: ● Bei Antriebslast von 80% soll der Vorschub stoppen: Override = 0. ●...
  • Seite 463: Abstandsregelung Mit Begrenzter Korrektur $Aa_Off_Mode

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.8 Abstandsregelung mit begrenzter Korrektur $AA_OFF_MODE Funktion Die integrierende Berechnung der Abstandswerte erfolgt mit Grenzbereichsprüfung $AA_OFF_MODE = 1 Achtung Die Kreisverstärkung des überlagerten Regelkreises ist abhängig von der Einstellung des Ipo-Taktes. Abhilfe: MD für Ipo-Takt lesen und einrechnen. Hinweis Begrenzung der Geschwindigkeit des überlagerten Interpolators durch MD 32020: JOG_VELO bei Ipo-Takt 12 ms.
  • Seite 464: Positionsoffset Im Basiskoordinatensystem

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Unterprogramm:Abstandsregelung Ein %_N_AON_SPF ;Unterprogramm für Abstandsregelung Ein PROC AON $AA_OFF_LIMIT[Z]=1 ;Grenzwert festlegen FCTDEF(1, -10, +10, 0, 0.6, 0.12) ;Polynomdefinition ID=1 DO SYNFCT(1,$AA_OFF[Z],$A_INA[3]) ;Abstandsregelung aktiv ID=2 WHENEVER $AA_OFF_LIMIT[Z]<>0 ;Bei Überschreitung des Grenzbereiches DO $AA_OVR[X] = 0 ;Achse X sperren ENDPROC Unterprogramm:Abstandsregelung Aus...
  • Seite 465: Online-Werkzeugkorrektur (Ftoc)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Über das Maschinendatum MD 36750: AA_OFF_MODE wird die Art der Überlagerung des Abstandes festgelegt: 0: proportionale Bewertung 1: integrierende Bewertung Mit der Systemvariable $AA_OFF_LIMIT[Achse] kann richtungsabhängig abgefragt werden, ob sich der Korrekturwert im Grenzbereich befindet. Diese Systemvariable kann aus Synchronaktionen abgefragt werden und beim Erreichen eines Grenzwertes, z.
  • Seite 466 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Kanal Nummer des Kanals, in dem die Korrektur wirksam wird. Für eine Korrektur im aktiven Kanal erfolgt hier keine Angabe. Im Zielkanal muss FTOCON eingeschaltet sein. Spindel Nur anzugeben, falls nicht die aktive Spindel korrigiert werden soll.
  • Seite 467: Online-Werkzeuglängenkorrektur ($Aa_Toff[Werkzeugrichtung])

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.10 Online-Werkzeuglängenkorrektur ($AA_TOFF[Werkzeugrichtung]) Funktion Über die Systemvariable $AA_TOFF[ ] können die effektiven Werkzeuglängen entsprechend der drei Werkzeugrichtungen dreidimensional in Echtzeit überlagert werden. Als Index werden die drei Geometrieachsbezeichner verwendet. Damit ist die Anzahl der aktiven Korrekturrichtungen durch die zur selben Zeit aktiven Geometrieachsen festgelegt. Alle Korrekturen können gleichzeitig aktiv sein.
  • Seite 468: Positionierbewegungen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen N100 XOFFSET = $AA_TOFF_VAL[X] ;aktuelle Korrektur in X-Richtung zuweisen N120 TOFFON(X, -XOFFSET) ;für die X-Werkzeugrichtung wird die G4 F5 ;WZL-Korrektur wieder zu 0 zurückgefahren Beispiel Abwahl der Werkzeuglängenkorrektur N10 TRAORI(1) ;Transformation ein N20 TOFFON(X) ;Aktivierung der Z-Werkzeugrichtung N30 WHEN TRUE DO $AA_TOFF[X] = 10 ;für die X-Werkzeugrichtung wird eine G4 F5...
  • Seite 469: Achse Positionieren (Pos)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.12 Achse positionieren (POS) Funktion Die Positionierachsbewegung hat im Gegensatz zur Programmierung aus dem Teileprogramm keinen Einfluss auf die Abarbeitung des Teileprogramms. Programmierung POS[Achse] = Wert Parameter DO POS Kommandoachse starten/positionieren Achse Name der Achse, die verfahren werden soll Wert Angabe des zu verfahrenden Wertes (je nach Verfahrmodus)
  • Seite 470: Position Im Vorgegebenen Referenzbereich (Posrange)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen N100 R1=0 N110 G0 X0 Z0 N120 WAITP(X) N130 ID=1 WHENEVER $R==1 DO G71 POS[X]=10 N140 R1=1 N150 G71 Z10 F10 ;Z=10 mm X=10 mm N160 G70 Z10 F10 ;Z=254 mm X=10 mm (X positioniert ;immer auf 10 mm) N170 G71 Z10 F10 ;Z=10 mm X=10 mm...
  • Seite 471: Achse Starten/Stoppen (Mov)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Parameter: BOOL POSRANGE Aktuelle Position der Kommandoachse ist im Fenster der vorgegebenen Referenzposition. AXIS <Achse> Achsbezeichner der Maschinen-, Kanal oder Geometrie-Achse REAL Refpos Referenzposition im Coord -Koordinatensystem REAL Winlimit Betrag, der die Grenze für das Positionsfenster ergibt INT Coord Optional ist das MKS aktiv.
  • Seite 472: Achstausch (Release, Get)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Hinweis Wird eine Teilungsachse mit MOV[Achse] = 0 gestoppt, wird die Achse an nächster Teilungsposition angehalten. Beispiel ... DO MOV[U]=0 ;Achse U wird gestoppt 10.4.15 Achstausch (RELEASE, GET) Funktion Für einen Werkzeugwechsel können die betreffenden Kommandoachsen als Aktion einer Synchronaktion mit GET(Achse) angefordert werden.
  • Seite 473 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Programmablauf für einen Achstausch zweier Kanäle Die Achse Z ist im 1.Kanal und im 2. Kanal bekannt. Programmablauf im 1. Kanal: WHEN TRUE DO RELEASE(Z) ;Z-Achse wird zur neutralen Achse WHENEVER($AA_TYP[Z]==1) DO ;Einlesesperre solange Z-Achse Programmachse RDISABLE N110 G4 F0.1 WHEN TRUE DO GET(Z)
  • Seite 474 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Achstausch im Technologiezyklus Die Achse U ($MA_AUTO_GET_TYPE=2) ist im 1.Kanal und im 2. Kanal bekannt und aktuell hat der Kanal 1 das Interpolationsrecht. Im Kanal 2 wird folgender Technologiezyklus gestartet: GET(U) ;U-Achse in Kanal holen POS[U]=100 ;U-Achse soll auf Position 100 verfahren ;werden...
  • Seite 475 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Zuordnung als NC-Programm Achse mit Reorganisieren: Wurde die Achse bereits zum Aktivierungszeitpunkt der Aktion GET als neutrale Achse angefordert ($AA_AXCHANGE_TYP[<Achse>]==6), so wird die Achse für das NC– Programm angefordert ($AA_AXCHANGE_TYP[<Achse>]==5) und sobald als möglich dem NC–Programm des Kanals zugeordnet ($AA_AXCHANGE_TYP[<Achse>]==0).
  • Seite 476: Axialer Vorschub (Fa)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.16 Axialer Vorschub (FA) Funktion Der axiale Vorschub für Kommandoachsen ist modal wirksam. Programmierung FA[Achse]=Vorschub Beispiel ID=1 EVERY $AA_IM[B]>75 DO POS[U]=100 FA[U]=990 ;Vorschubwert fest vorgeben ID=1 EVERY $AA_IM[B]>75 DO POS[U]=100 FA[U]=$AA_VACTM[W]+100 ;Vorschubwert aus Hauptlaufvariablen bilden 10.4.17 SW-Endschalter Funktion...
  • Seite 477: Istwertsetzen (Preseton)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel X-Achse wahlweise aus Teileprogramm und Synchronaktionen fahren N10 G01 X100 Y200 F1000 ;X-Achse im Teileprogramm programmiert … N20 ID=1 WHEN $A_IN[1]==1 DO ;Positionieren aus Synchronaktion starten, wenn ;digitaler Eingang ansteht POS[X]=150 FA[X]=200 … CANCEL(1) ;Synchronaktion abwählen …...
  • Seite 478: Spindelbewegungen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Parameter DO PRESETON Istwertsetzen in Synchronaktionen Achse Achse, deren Steuerungsnullpunkt verändert werden soll Wert Wert, um den der Steuerungsnullpunkt verändert wird Einschränkungen für Achsen PRESETON ist nicht möglich für Achsen, die an der Transformation beteiligt sind. Ein- und dieselbe Achse kann nur zeitlich versetzt aus dem Teileprogramm oder einer Synchronaktion heraus bewegt werden, daher können bei der Programmierung einer Achse aus dem Teileprogramm Wartezeiten auftreten, falls diese Achse vorher in einer...
  • Seite 479: Mitschleppen (Trailon, Trailof)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Drehrichtung, Drehzahl einstellen/ Spindel positionieren ID=1 EVERY $A_IN[1]==1 DO M3 S300 ;Drehrichtung und Drehzahl einstellen ID=2 EVERY $A_IN[2]==1 DO M4 S500 ;neue Drehrichtung und neue Drehzahl ;vorgeben ID=3 EVERY $A_IN[3]==1 DO S1000 ;neue Drehzahl vorgeben ID=4 EVERY ($A_IN[4]==1) AND ($A_IN[1]==0) ;Spindel positionieren DO SPOS=0...
  • Seite 480 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel $A_IN[1]==0 DO TRAILON(Y,V,1) ;Einschalten des 1. Mitschleppverbandes, wenn der ;digitale Eingang 1 ist $A_IN[2]==0 DO TRAILON(Z,W,-1) ;Einschalten des 2. Mitschleppverbandes G0 Z10 ;Zustellung der Z- und W-Achse in entgegengesetzter ;Achsrichtung G0 Y20 ;Zustellung der Y- und V-Achse in gleicher ;Achsrichtung G1 Y22 V25 ;Überlagerung einer abhängigen und unabhängigen...
  • Seite 481: Leitwertkopplung (Leadon, Leadof)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.22 Leitwertkopplung (LEADON, LEADOF) Funktion Die axiale Leitwertkopplung ist ohne Einschränkung in Synchronaktionen programmierbar. Das Ändern einer Kurventabelle bei bestehender Kopplung ohne einer vorherigen Neusynchronisation ist optional nur in Synchronaktionen möglich. Programmierung Leitwertkopplung einschalten DO LEADON(Folgeachse, Leitachse, Kurvtab. Nr., OVW) Leitwertkopplung ausschalten DO LEADOF(Folgeachse, Leitachse, Leitachse 2) Parameter...
  • Seite 482: Beispiel Fliegendes Trennen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel Fliegendes Trennen Ein Strangmaterial, das sich stetig durch einen Arbeitsbereich einer Trennvorrichtung bewegt, soll in gleichlange Stücke zerteilt werden. X-Achse: Achse in der sich das Strangmaterial bewegt. WKS X1-Achse: Maschinenachse des Strangmaterials, MKS Y-Achse: Achse, in der die Trennvorrichtung mit dem Strangmaterial "mitfährt" Es wird angenommen, dass die Zustellung des Trennwerkzeuges und seine Steuerung durch PLC kontrolliert werden.
  • Seite 483: Messen (Meawa, Meac)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.23 Messen (MEAWA, MEAC) Funktion Im Vergleich zur Verwendung in Bewegungssätzen des Teileprogramms kann die Messfunktion aus Synchronaktionen beliebig ein- und ausgeschaltet werden. Weitere Information zum Messen, siehe Spezielle Wegbefehle "Erweiterte Messfunktion Programmierung Axiales Messen ohne Restweglöschen MEAWA[Achse] = (Modus, Triggerereignis_1, ..._4) oder Kontinuierliches Messen ohne Restweglöschen...
  • Seite 484: Initialisierung Von Feld-Variablen Mit Set, Rep

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.24 Initialisierung von Feld-Variablen mit SET, REP Funktion In Synchronaktionen können Feld-Variablen initialisiert oder mit bestimmten Werten beschrieben werden. Programmierung DO FELD[n,m]=SET(Wert1, Wert2, ...) oder DO FELD[n,m]=REP(Wert) Die Initialisierung beginnt bei den programmierten Feldindizes. Bei 2-dimensionalen Feldern wird zuerst der 2.
  • Seite 485: Wartemarken Setzen/Löschen Mit Setm, Clearm

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen 10.4.25 Wartemarken setzen/löschen mit SETM, CLEARM Funktion In Synchronaktionen können Wartemarken gesetzt bzw. gelöscht werden, um z. B. Kanäle untereinander zu koordinieren. Programmierung DO SETM(MarkerNummer) oder DO CLEARM(MarkerNummer) Wartemarken für den Kanal setzen/löschen SETM(MarkerNummer) Wartemarke setzen für den Kanal CLEARM(MarkerNummer) Wartemarke löschen für den Kanal SETM...
  • Seite 486: Fahren Auf Festanschlag (Fxs Und Focon/Focof)

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel ID=67 WHENEVER ($AA_IM[X1]-$AA_IM[X2])<4.567 DO $AA_OVR[X2]=0 ;Wenn Sicherheitsabstand zwischen Achsen X1 und X2 zu klein, Achse X2 anhalten. ID=67 WHENEVER ($AA_IM[X1]-$AA_IM[X2])<4.567 DO SETAL(61000) ;Wenn Sicherheitsabstand zwischen Achsen X1 und X2 zu klein, Alarm setzen. 10.4.27 Fahren auf Festanschlag (FXS und FOCON/FOCOF) Funktion Die Befehle für Fahren auf Festanschlag werden mit den Teileprogrammbefehlen FXS,...
  • Seite 487 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen ($AA_FXS[y]==0)) DO ;Achse Y FXS aktiviert, das wirksame $R1=0 FXS[Y]=1 FXST[Y]=10 ;Moment auf 10% reduziert und eine FA[Y]=200 POS[Y]=150 ;Fahrbewegung in Richtung des ;Anschlages gestartet N11 IDS=2 WHENEVER ($AA_FXS[Y]==4) DO ;Sobald der Anschlag erkannt wurde FXST[Y]=30 ;($AA_FXS[Y]==4), wird das Moment ;auf 30% heraufgesetzt...
  • Seite 488: Bestimmung Des Bahntangentenwinkels In Synchronaktionen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Beispiel: N10 G0 G90 X0 Y0 N20 WHEN $AA_IW[X] > 17 DO FXS[X]=1 ;Erreicht X eine Position größer 17mm ;wird N30 G1 F200 X100 Y110 ;FXS aktiviert Statische und satzbezogene Synchronaktionen In statischen und satzbezogenen Synchronaktionen können die gleichen Befehle FXS, FXST und FXSW verwendet werden, wie im normalen Teileprogrammablauf.
  • Seite 489: Auslastungsauswertung Über Zeitbedarf Der Synchronaktionen

    Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen $AA_PLC_OVR Axial Override $AC_PLC_OVR Bahnoverride zum Lesen bereitgestellt. Der resultierende Override wird für Synchronaktionen in den Systemvariablen: $AA_TOTAL_OVR Axial Override $AC_TOTAL_OVR Bahnoverride zum Lesen bereitgestellt. Der resultierende Override errechnet sich als: $AA_OVR * $AA_PLC_OVR bzw. $AC_OVR * $AC_PLC_OVR 10.4.30 Auslastungsauswertung über Zeitbedarf der Synchronaktionen...
  • Seite 490 Bewegungssynchronaktionen 10.4 Aktionen in Synchronaktionen Parameter Die Variablen haben nur gültige Werte, wenn das Maschinendatum $MN_IPO_MAX_LOAD größer als 0 ist. Andernfalls geben die Variablen sowohl für SINUMERIK powerline als auch für solution line Systeme immer die Nettorechenzeit an, bei der die durch HMI erzeugten Unterbrechungen nicht mehr berücksichtigt werden.
  • Seite 491: Technologiezyklen

    Bewegungssynchronaktionen 10.5 Technologiezyklen 10.5 Technologiezyklen 10.5 Funktion Als Aktion in Synchronaktionen können auch Programme aufgerufen werden, die jedoch nur aus Funktionen aufgebaut sein dürfen, welche auch als Aktionen in Synchronaktionen zulässig sind. So aufgebaute Programme heißen Technologiezyklen. Technologiezyklen werden als Unterprogramme in der Steuerung abgelegt. In einem Kanal können parallel mehrere Technologiezyklen oder Aktionen bearbeitet werden.
  • Seite 492 Bewegungssynchronaktionen 10.5 Technologiezyklen Werden im gleichen Interpolationstakt Aktionen aufgerufen, die sich gegenseitig ausschließen, so wird diejenige Aktion aktiv, die von der Synchronaktion mit der höheren ID- Nummer aufgerufen wird. Beispiel Durch Setzen digitaler Eingänge werden Achs-Programme gestartet. Steht der Hauptprogramm: ID=1 EVERY $A_IN[1]==1 DO ACHSE_X ;Eingang 1 auf 1, starte Achsprogramm X ID=2 EVERY $A_IN[2]==1 DO ACHSE_Y...
  • Seite 493: Beispiele Verschiedener Programmsequenzen Im Technologiezyklus

    Bewegungssynchronaktionen 10.5 Technologiezyklen Beispiele verschiedener Programmsequenzen im Technologiezyklus PROC CYCLE N10 DEF REAL "wert"=12.3 N15 DEFINE ABC AS G01 Beide Sätze werden ohne Alarm und ohne Anlegen der Variable bzw. des Makros überlesen PROC CYCLE N10 DEF REAL N15 DEFINE ABC G01 Beide Sätze führen weiterhin zum NC Alarm, weil die Syntax nicht korrekt geschrieben ist.
  • Seite 494: Call By Value Parameter

    Bewegungssynchronaktionen 10.5 Technologiezyklen Hinweis Ein Satz mit fehlerhafter oder unerlaubter Programmsyntax sowie nicht bekannte Wertzuweisungen führen auch im Teileprogrammzyklus zu einer Alarmmeldung. Beispiel Programmsequenz mit Abfrage von $P_TECCYCLE im Technologiezyklus PROC CYCLE N10 DEF REAL "wert1" ;wird im Technologiezyklus überlesen N15 G01 X100 F1000 N20 IF $P_TECCYCLE==TRUE N25 "Programmsequenz für Technologiezyklus (ohne Variable wert1)"...
  • Seite 495: Default-Parameter-Initialisierung

    Bewegungssynchronaktionen 10.5 Technologiezyklen 10.5.3 Default-Parameter-Initialisierung Funktion Default-Parameter können in der PROC-Anweisung auch mit einem Initialwert versehen werden. Programmierung Im Technologiezyklus Default-Parameter zuweisen: PROC TEC (INT IVAL=1, REAL RVAL=1.0, CHAR CVAL='A', STRING[10] SVAL="ABC", AXIS AVAL=X, BOOL BVAL=TRUE) Wenn ein Aktualparameter aus einem Defaultparameter besteht, wird der Initialwert aus der PROC-Anweisung übergeben.
  • Seite 496: Kaskadierungen Von Technologiezyklen

    Bewegungssynchronaktionen 10.5 Technologiezyklen Hinweis Die beiden Sprachbefehle ICYCON und ICYCOF wirken nur innerhalb der Programmebene. Im Teileprogramm werden beide Befehle ohne Reaktion einfach überlesen. Beispiel für Abarbeitungsmode ICYCOF IPO-Takt PROC TECHNOCYC $R1=1 2.25 POS[X]=100 ICYCOF $R1=2 $R2=$R1+1 POS[X]=110 $R3=3 10.5.5 Kaskadierungen von Technologiezyklen Funktion Es können bis zu 8 Technologiezyklen in Reihe geschaltet abgearbeitet werden.
  • Seite 497: Technologiezyklen In Satzweisen Synchronaktionen

    Bewegungssynchronaktionen 10.5 Technologiezyklen 10.5.6 Technologiezyklen in satzweisen Synchronaktionen Funktion Technologiezyklen sind auch in satzweisen Synchronaktion möglich. Ist die Abarbeitungszeit eines Technologiezyklus länger als die Bearbeitungszeit des zugehörigen Satzes, so wird der Technologiezyklus beim Satzwechsel abgebrochen. Hinweis Ein Technologiezyklus verhindert nicht den Satzwechsel. 10.5.7 IF-Kontrollstrukturen Funktion...
  • Seite 498: Sperren, Freischalten, Unterbrechen (Lock, Unlock, Reset)

    Bewegungssynchronaktionen 10.5 Technologiezyklen Programmierung Unbedingte Sprünge GOTO Label, Satznummer oder GOTOF Label, Satznummer oder GOTOB Label, Satznummer Sprunganweisungen und Sprungziele GOTO Springe erst vorwärts und anschließend rückwärts GOTOF Springe vorwärts GOTOB Springe rückwärts Label: Sprungmarke Satznummer Sprungziel zu diesen Satz N100 Satznummer ist Nebensatz :100...
  • Seite 499: Synchronaktion Löschen (Cancel)

    Bewegungssynchronaktionen 10.6 Synchronaktion löschen (CANCEL) Hinweis Eine programmierte Synchronaktion ist standardmäßig aktiv und kann gegen Überschreiben/Sperren über Maschinendatum gesichert werden. Vom Maschinenhersteller festgelegte Synchronaktionen sollen vom Endkunden nicht beeinflusst werden können. Beispiel Synchronaktionen sperren, LOCK N100 ID=1 WHENEVER $A_IN[1]==1 DO M130 N200 ID=2 WHENEVER $A_IN[2]==1 DO LOCK(1) Synchronaktionen freischalten, UNLOCK N100 ID=1 WHENEVER $A_IN[1]==1 DO M130...
  • Seite 500: Randbedingungen

    Bewegungssynchronaktionen 10.7 Randbedingungen Programmierung CANCEL(n, n, ...) Synchronaktion löschen Identifikations-Nummer der Synchronaktion Beispiel N100 ID=2 WHENEVER $A_IN[1]==1 DO M130 N200 CANCEL(2) ;lösche die Synchronaktion Nr. 2 10.7 Randbedingungen 10.7 Funktion Es gibt Randbedingungen beim Eintreten folgender Ereignisse: ● Power On ●...
  • Seite 501 Bewegungssynchronaktionen 10.7 Randbedingungen ● Reset Mit NC-Reset werden alle durch satzweise und modale Synchronaktionen beendet. Statische Synchronaktionen bleiben aktiv. Aus ihnen können neue Aktionen gestartet werden. Ist bei RESET eine Kommandoachsbewegung aktiv, so wird diese abgebrochen. Bereits ausgeführte Synchronaktionen vom WHEN-Typ werden nach RESET nicht mehr bearbeitet.
  • Seite 502 Bewegungssynchronaktionen 10.7 Randbedingungen Verhalten nach Programmende Synchronaktion/ modal und satzweise statisch (IDS) Technologiezyklus werden abgebrochen bleiben erhalten Achse/ M30 wird verzögert, bis die Achse/Spindel Bewegung läuft weiter positionierende steht. Spindel drehzahlgeregelte Programmende: Spindel bleibt aktiv Spindel $MA_SPIND_ACTIVE_AFTER_RESET==1 Spindel bleibt aktiv $MA_SPIND_ACTIVE_AFTER_RESET==0 Spindel stoppt Bei Betriebsartenwechsel bleibt Spindel...
  • Seite 503 Bewegungssynchronaktionen 10.7 Randbedingungen ● Abwahl mit CANCEL Wird eine aktive Synchronaktion mit CANCEL abgewählt, wird die aktive Aktion nicht beeinflusst. Positionierbewegungen werden wie programmiert beendet. Mit dem Befehl CANCEL kann eine modal oder statisch wirksame Synchronaktion abgebrochen werden. Wird eine Synchronaktion abgebrochen, währenddessen die daraus aktivierte Positionierachsbewegung noch aktiv ist, wird die Positionierachsbewegung abgeschlossen.
  • Seite 504 Bewegungssynchronaktionen 10.7 Randbedingungen Arbeitsvorbereitung 10-76 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 505: Pendeln

    Pendeln 11.1 Asynchrones Pendeln 11.1 Funktion Eine Pendelachse fährt zwischen den zwei Umkehrpunkten 1 und 2 mit gegebenem Vorschub hin und her, bis die Pendelbewegung abgeschaltet wird. Andere Achsen können während der Pendelbewegung beliebig interpoliert werden. Über eine Bahnbewegung oder mit einer Positionierachse kann eine kontinuierliche Zustellung erreicht werden.
  • Seite 506 Pendeln 11.1 Asynchrones Pendeln OSNSC [Achse]= Anzahl der Ausfeuerungshübe OSE [Achse]= Endposition OS [Achse]= 1 = Pendelachse einschalten; 0 = Pendelachse ausschalten Haltezeiten in den Umkehrpunkten: OST1, OST2 Haltezeit Bewegungsverhalten im Genauhaltbereich, am Umkehrpunkt Interpolation wird ohne Warten auf Genauhalt fortgesetzt Warten auf Genauhalt grob Warten auf Genauhalt fein >0...
  • Seite 507: Beschreibung

    Pendeln 11.1 Asynchrones Pendeln Werden im Teileprogramm die Settingdaten direkt beschrieben, so wird die Änderung schon zum Vorlaufzeitpunkt wirksam. Synchrones Verhalten kann über einen Vorlaufstopp STOPRE erreicht werden. $SA_OSCILL_REVERSE_POS1[Z]=-10 $SA_OSCILL_REVERSE_POS2[Z]=10 G0 X0 Z0 WAITP(Z) ID=1 WHENEVER $AA_IM[Z] < $$AA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[X]=0 ID=2 WHENEVER $AA_IM[Z] <...
  • Seite 508 Pendeln 11.1 Asynchrones Pendeln Pendelumkehrpunkte Bei der Festlegung der Pendelpositionen sind die aktuellen Verschiebungen zu beachten: ● Absolute Angabe OSP1[Z] = Wert 1 Position Umkehrpunkt = Summe der Verschiebungen + programmierter Wert ● Relative Angabe OSP1[Z] = IC(Wert) Position Umkehrpunkt = Umkehrpunkt 1 + programmierter Wert Beispiel: N10 OSP1[Z] = 100 OSP2[Z] = 110 N40 OSP1[Z] = IC(3)
  • Seite 509: Rücksetzoptionen

    Pendeln 11.1 Asynchrones Pendeln Rücksetzoptionen Diese Optionen werden ausgeschaltet (nur, wenn sie vorher als Setzoptionen eingeschaltet waren). Setzoptionen Diese Optionen werden umgeschaltet. Bei Programmierung von OSE (Endposition) wird implizit Option 4 wirksam. Optionswert Bedeutung Beim Abschalten der Pendelbewegung im nächsten Umkehrpunkt stoppen (Voreinstellung);...
  • Seite 510: Über Synchronaktionen Gesteuertes Pendeln

    Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln 11.2 Funktion Bei dieser Art des Pendelns ist nur an den Umkehrpunkten bzw. innerhalb definierter Umkehrbereiche eine Zustellbewegung zugelassen. Je nach Anforderung kann die Pendelbewegung während der Zustellung ● fortgeführt oder ●...
  • Seite 511 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Bewegungssynchronaktionen WHEN… … DO wenn…, dann… WHENEVER … DO immer wenn…, dann… Beispiel Im Umkehrpunkt 1 soll keine Zustellung erfolgen. Beim Umkehrpunkt 2 soll die Zustellung bereits im Abstand ii2 vor dem Umkehrpunkt 2 erfolgen und die Pendelachse im Umkehrpunkt nicht auf das Beenden der Teilzustellung warten.
  • Seite 512 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln 2. Bewegungssynchronaktion WHENEVER $AA_IM[Z]<$SA_OSCILL_REVERSE_POS2[Z]DO -> -> $AA_OVR[X]=0 $AC_MARKER[0]=0 Immer wenn die aktuelle Position der Pendelachse Z im MKS kleiner als der Beginn des Umkehrbereichs 2 ist, dann setze den axialen Override der Zustellachse X auf 0% den Merker mit dem Index 0 auf den Wert 0.
  • Seite 513 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Beschreibung 1. Pendelparameter festlegen Vor dem Bewegungssatz, der die Zuordnung von Zustell- und Pendelachse sowie die Festlegung der Zustellung enthält, sind die Parameter für das Pendeln festzulegen (siehe "Asynchrones Pendeln"). 2. Bewegungssynchronaktionen festlegen Über Synchronbedingungen erfolgt: Zustellung unterdrücken, bis sich die Pendelachse innerhalb eines Umkehrbereichs (ii1, ii2) oder an einem Umkehrpunkt (U1, U2) befindet.
  • Seite 514 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Hinweis Im Einzelfall können die Synchronbedingungen auch anders programmiert werden. Schlüsselwörter WHEN … DO … wenn…, dann… WHENEVER … DO immer wenn…, dann… Funktionen Mit den im folgenden detailliert beschriebenen Sprachmitteln können Sie folgende Funktionen realisieren: 1.
  • Seite 515 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Unter den gegebenen Annahmen (siehe oben) ergeben sich folgende Anweisungen: Umkehrbereich 1: WHENEVER $AA_IM[Z]>$SA_OSCILL_RESERVE_POS1[Z]+ii1 DO $AA_OVR[X] = 0 Immer wenn die aktuelle Position der Pendelachse im MKS größer als der Beginn des Umkehrbereichs 1 ist, dann setze den axialen Override der Zustellachse auf 0%.
  • Seite 516 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Unter den gegebenen Annahmen (siehe oben) ergeben sich folgende Anweisungen: Umkehrbereich 1: WHENEVER $SA_IM[Z]==$SA_OSCILL_RESERVE_POS1[Z] DO $AA_OVR[X] = 0 → → $AA_OVR[Z] = 100 Immer wenn die aktuelle Position der Pendelachse im MKS gleich der Umkehrposition 1 ist, dann setze den axialen Override der Pendelachse auf 0% den axialen Override der Zustellachse auf 100%.
  • Seite 517 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Unter den gegebenen Annahmen (siehe oben) ergeben sich z. B. für Umkehrpunkt 1 folgende Anweisungen: 1. Marker setzen: WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER[1] = 1 Immer wenn der Restweg für die Teilzustellung der Zustellachse X im WKS gleich Null ist, dann...
  • Seite 518 Pendeln 11.2 Über Synchronaktionen gesteuertes Pendeln Arbeitsvorbereitung 11-14 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 519: Stanzen Und Nibbeln

    Stanzen und Nibbeln 12.1 Aktivierung, Deaktivierung 12.1 12.1.1 Stanzen und Nibbeln ein oder aus (SPOF, SON, PON, SONS, PONS, PDELAYON/OF) Funktion Stanzen und Nibbeln aktivieren/deaktivieren, PON/SON Mit PON und SON aktivieren Sie die Stanz- bzw. Nibbelfunktion. SPOF beendet alle stanz- und nibbelspezifischen Funktionen.
  • Seite 520 Stanzen und Nibbeln 12.1 Aktivierung, Deaktivierung oder PDELAYON oder PDELAYOF oder PUNCHACC(S Parameter Stanzen ein PONS Stanzen mit Vorspann ein Nibbeln ein SONS Nibbeln mit Vorspann ein SPOF Stanzen, Nibbeln aus PDELAYON Stanzen mit Verzögerung ein PDELAYOF Stanzen mit Verzögerung aus PUNCHACC Wegabhängige Beschleunigung PUNCHACC (S "S...
  • Seite 521: Wegabhängige Beschleunigung, Punchacc

    Stanzen und Nibbeln 12.1 Aktivierung, Deaktivierung Wegabhängige Beschleunigung, PUNCHACC Der Sprachbefehl PUNCHACC(S ) legt eine Beschleunigungskennlinie fest, die je nach Lochabstand (S) unterschiedliche Beschleunigungen (A) definiert. Beispiel für PUNCHACC(2, 50, 10, 100): Lochabstände unter 2mm: Es wird mit eine Beschleunigung von 50% der Maximalbeschleunigung verfahren. Lochabstände von 2mm bis 10mm: Die Beschleunigung wird proportional zum Abstand auf 100% gesteigert.
  • Seite 522: Automatische Wegaufbereitung

    Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung Um dennoch einen Hub an gleicher Stelle auszulösen, programmieren Sie eine der Stanz- /Nibbelachsen mit Verfahrweg 0. Hinweis Arbeiten mit drehbaren Werkzeugen Um drehbare Werkzeuge tangential an die programmierte Bahn anzustellen, verwenden Sie die Tangentialsteuerung. 12.2 Automatische Wegaufbereitung 12.2...
  • Seite 523 Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung Beispiel 1 Die programmierten Nibbelstrecken sollen automatisch in gleichgroße Teilstrecken aufgeteilt werden. N100 G90 X130 Y75 F60 SPOF ;Positionieren auf Startpunkt 1 N110 G91 Y125 SPP=4 SON ;Nibbeln ein; maximale Teilstreckenlänge ;für automatische Wegaufteilung: 4 mm N120 G90 Y250 SPOF ;Nibbeln aus;...
  • Seite 524 Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung Beispiel 2 Für die einzelnen Lochreihen soll eine automatische Wegaufteilung erfolgen. Für die Aufteilung wird jeweils die maximale Teilstreckenlänge (SPP-Wert) angegeben. N100 G90 X75 Y75 F60 PON ;Positionieren auf Startpunkt 1; ;Stanzen ein Einzelloch stanzen N110 G91 Y125 SPP=25 ;Maximale Teilstreckenlänge für ;automatische Wegaufteilung: 25 mm...
  • Seite 525: Wegaufteilung Bei Bahnachsen

    Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung 12.2.1 Wegaufteilung bei Bahnachsen Länge der Teilstrecke SPP Mit SPP geben Sie den maximalen Hubabstand und damit die maximale Länge der Teilstrecken an, in die die Gesamtverfahrstrecke aufgeteilt werden soll. Das Ausschalten des Befehls erfolgt mit SPOF oder SPP=0. Beispiel: N10 SON X0 Y0 N20 SPP=2 X10...
  • Seite 526 Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung Anzahl der Teilstrecken SPN Mit SPN definieren Sie die Anzahl der Teilstrecken, die aus der Gesamtverfahrstrecke erzeugt werden soll. Die Länge der Teilstrecken wird automatisch berechnet. Da SPN satzweise wirksam ist, muss vorher Stanzen oder Nibbeln mit PON oder SON aktiviert werden.
  • Seite 527: Wegaufteilung Bei Einzelachsen

    Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung 12.2.2 Wegaufteilung bei Einzelachsen Sind neben den Bahnachsen auch Einzelachsen als Stanz-Nibbel-Achse definiert, so können auch sie der automatischen Wegaufteilung unterliegen. Verhalten der Einzelachse bei SPP Die programmierte Länge der Teilstrecke (SPP) bezieht sich grundsätzlich auf die Bahnachsen.
  • Seite 528 Stanzen und Nibbeln 12.2 Automatische Wegaufbereitung Verhalten bei SPN Die programmierte Anzahl von Teilstrecken gilt auch, wenn nicht gleichzeitig eine Bahnachse programmiert ist. Voraussetzung: Einzelachse ist als Stanz-Nibbel-Achse definiert. Arbeitsvorbereitung 12-10 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 529: Weitere Funktionen

    Weitere Funktionen 13.1 Achsfunktionen (AXNAME, AX, SPI, AXTOSPI, ISAXIS, AXSTRING) 13.1 Funktion AXNAME wird z. B. bei der Erstellung allgemeingültiger Zyklen verwendet, wenn die Namen der Achsen nicht bekannt sind (siehe hierzu auch Kapitel "Stringfunktionen"). SPI wird verwendet, wenn Achsfunktionen für eine Spindel, z. B. Synchronspindel, verwendet werden.
  • Seite 530 Weitere Funktionen 13.1 Achsfunktionen (AXNAME, AX, SPI, AXTOSPI, ISAXIS, AXSTRING) Parameter AXNAME Konvertiert einen Eingangsstring in Achsbezeichner; der Eingangsstring muss gültigen Achsnamen enthalten. Variabler Achsbezeichner Konvertiert Spindelnummer in Achsbezeichner; der Übergabeparameter muss eine gültige Spindelnummer enthalten. Spindelnummer AXTOSPI Wandelt einen Achsbezeichner in einen Spindelindex vom Typ Integer um.
  • Seite 531: Vorhandenen Nc-Sprachumfang Prüfen (Stringis)

    Weitere Funktionen 13.2 Vorhandenen NC-Sprachumfang prüfen (STRINGIS) 13.2 Vorhandenen NC-Sprachumfang prüfen (STRINGIS) 13.2 Funktion Der bei einer SINUMERIK 840D sl generierte NC-Sprachumfang einschließlich der aktiven GUD-/Makro-Definitionen sowie die installierten und aktiven Zyklenprogramme können mit dem Befehl STRINGIS auf ihre tatsächliche Verfügbarkeit und ihre programmierspezifischen Eigenschaften überprüft werden.
  • Seite 532 Weitere Funktionen 13.2 Vorhandenen NC-Sprachumfang prüfen (STRINGIS) NC-Sprachumfang Für SINUMERIK powerline sind weiterhin alle verfügbaren und auch speziell die nicht benötigten und aktiven Sprachbefehle bekannt. Der bei SINUMERIK solution line zu prüfende Sprachumfang ist abhängig vom vorkonfigurierten Maschinendatum und umfasst entweder alle bekannten oder speziell nur die freigegebenen Optionen oder aktiven Funktionen im aktuellen NC-Sprachumfang.
  • Seite 533 Weitere Funktionen 13.2 Vorhandenen NC-Sprachumfang prüfen (STRINGIS) Wertebereiche 2xx der Detailinformationen Detailinformationen Bedeutung des Prüfergebnisses: Keine Interpretation ist möglich Eine DIN-Adresse bzw. NC-Adresse definiert ist, d.h. ob vom her Namen die Adressbuchstaben erkannt wurden, siehe Anmerkungen (1) G-Codes aus den existierenden G-Code-Gruppen erkannt wurden. NC-Sprachfunktionen mit Rückgabewert und Parameterübergabe vorhanden sind.
  • Seite 534 Weitere Funktionen 13.2 Vorhandenen NC-Sprachumfang prüfen (STRINGIS) Gültige NC-Adressen ohne Adressenerweiterung mit den fixen Wert 400 Gültig sind die NC-Adressen D, F, G, H, R sowie L, M, N, O, P, S, T. So ist D als Werkzeugkorrektur, Schneidenummer (D-Funktion) F als Vorschub (F-Funktion) G ist als G-Code definiert (hier nicht die Wegbedingung) H steht für Hilfsfunktion (H-Funktion)
  • Seite 535: Funktionsaufruf Isvar ( ) Und Maschinendaten Array-Index Lesen

    Weitere Funktionen 13.3 Funktionsaufruf ISVAR ( ) und Maschinendaten Array-Index lesen $TC_TP4 ist eine Systemvariable für eine ;NC-Systemvariable $TC_TP4 für Werkzeuggröße ;Werkzeuggröße existiert. 207 = STRINGIS("$TC_TP4") ;$TC_TP4 als Systemvariable erkannt. $TC_MPP4 ist eine Systemvariable für den ;Prüfung der Magazinverwaltung auf Magazinplatzzustand 207 = STRINGIS("$TC_MPP4") ;Magazinverwaltung ist aktiv...
  • Seite 536: Beispiel Funktionaufruf Isvar

    Weitere Funktionen 13.3 Funktionsaufruf ISVAR ( ) und Maschinendaten Array-Index lesen Parameter Variablenbezeichner Übergabeparameter vom Typ String kann entweder dimensionslos, eindimensional oder zweidimensional sein. Bezeichner Bezeichner mit einer der NC bekannten Variable mit oder ohne Array-Index als Maschinendatum, Settingdatum, Systemvariable oder allgemeine Variable. Erweiterung: Bei allgemeinen und kanalspezifischen Maschinendaten wird das erste Element des Array auch bei fehlenden Index...
  • Seite 537 Weitere Funktionen 13.3 Funktionsaufruf ISVAR ( ) und Maschinendaten Array-Index lesen N100 IS_VAR=ISVAR ;IS_VAR ist TRUE ("$MC_GCODE_RESET_VALUES[1]" DEF BOOL IS_VAR=FALSE ;Übergabeparameter ist eine Systemvariable N10 IS_VAR=ISVAR("$P_EP") ;IS_VAR ist in diesem Fall TRUE N10 IS_VAR=ISVAR("$P_EP[X]") ;IS_VAR ist in diesem Fall TRUE Beispiel Maschinendaten Array mit und ohne Index lesen Das erste Element wird gelesen bei R1=$MC_EXTERN_GCODE_RESET_VALUES...
  • Seite 538: Kompensationskennlinien Einlernen (Qeclrnon, Qeclrnof)

    Weitere Funktionen 13.4 Kompensationskennlinien einlernen (QECLRNON, QECLRNOF) 13.4 Kompensationskennlinien einlernen (QECLRNON, QECLRNOF) 13.4 Funktion Die Quadrantenfehlerkompensation (QFK) reduziert die Konturfehler, die bei Umkehr der Fahrtrichtung durch mechanische Nichtlinearitäten (z. B. Reibung, Lose) oder Torsion entstehen. Die optimalen Kompensationsdaten können aufgrund eines neuronalen Netzes von der Steuerung während einer Lernphase adaptiert und so die Kompensationskennlinien automatisch ermittelt werden.
  • Seite 539 Weitere Funktionen 13.4 Kompensationskennlinien einlernen (QECLRNON, QECLRNOF) Parameter QECLRNON (Achse.1,…4) Funktion "Quadrantenfehlerkompensation lernen" einschalten QECLRNOF Funktion "Quadrantenfehlerkompensation lernen" ausschalten QECLRN.SPF Lernzyklus QECDAT.MPF Muster-NC-Programm für Belegen der Systemvariablen und für die Parametrierung des Lernzyklus QECTEST.MPF Muster-NC-Programm für Kreisformtest Beschreibung Die zum Lernen erforderlichen Verfahrbewegungen der Achsen werden mit Hilfe eines NC- Programms generiert.
  • Seite 540: Synchronspindel

    Weitere Funktionen 13.5 Synchronspindel 13.5 Synchronspindel 13.5 Funktion Im Synchronbetrieb gibt es eine Leitspindel (LS) und eine Folgespindel (FS), das sog. Synchronspindelpaar. Die Folgespindel folgt bei aktiver Kopplung (Synchronbetrieb) den Bewegungen der Leitspindel entsprechend dem festgelegten Funktionszusammenhang. Die Synchronspindelpaare lassen sich für jede Maschine sowohl mit Hilfe von kanalspezifischen Maschinendaten fest projektieren oder über das CNC-Teileprogramm anwendungsspezifisch definieren.
  • Seite 541 Weitere Funktionen 13.5 Synchronspindel Die Vorgabe eines Übersetzungsverhältnisses k zwischen der Hauptspindel und einer Ü "Werkzeugspindel" bietet die Voraussetzung zur Mehrkantbearbeitung (Polygondrehen). Arbeitsvorbereitung 13-13 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 542: Programmierung

    Weitere Funktionen 13.5 Synchronspindel Programmierung COUPDEF(FS, LS, Ü , Ü , Satzverh, Koppelart) COUPON(FS, LS, POS COUPONC(FS, LS) COUPOF(FS, LS, POS COUPOFS(FS, LS) COUPOFS(FS, LS, POS COUPRES(FS, LS) COUPDEL(FS, LS) WAITC(FS, Satzverh., LS, Satzverh) Es ist auch die verkürzte Angabe ohne Leitspindel möglich für: COUPOF(FS), COUPOFS(FS), COUPRES(FS), COUPDEL(FS) Hinweis Bei jeder Anweisung COUPDEF, COUPON und COUPONC müssen Folgespindel und...
  • Seite 543 Weitere Funktionen 13.5 Synchronspindel Optionale Parameter Bezeichnung der Leitspindel; Angabe mit Spindelnummer: z. B. S2, S1 Ü , Ü Übersetzungsparameter für FS = Zähler und LS = Nenner Voreinstellung = 1.0; Angabe des Nenners optimal Satzverh.: Satzwechselverhalten; Satzwechsel erfolgt: "NOC" sofort "FINE"...
  • Seite 544: Beispiel Programmierung Der Differenzdrehzahl

    Weitere Funktionen 13.5 Synchronspindel N220 G4 S50 ;Verweilzeit = 50 Umdrehungen der Masterspindel N225 FA [S2] = 0 ;Projektierte Geschw. (MD) aktivieren N230 SPOS[2] = IC (-7200) ;20 Umdr. Mit projektierter Geschwindigkeit ;negative Richtung … N350 COUPOF (S2, S1) ;Fliegend auskoppeln, S=S2=3000 N355 SPOSA[2] = 0 ;FS bei Null Grad stoppen N360 G0 X0 Y0...
  • Seite 545 Weitere Funktionen 13.5 Synchronspindel Beispiele der Übernahme einer Bewegung zur Differenzdrehzahl 1. Kopplung bei vorhergehender Programmierung der Folgespindel mit COUPON einschalten ;Leitspindel = Masterspindel = Spindel 1 ;Folgespindel = Spindel 2 N05 M3 S100 M2=3 S2=200 ;Leitspindel dreht mit 100U/min, ;Folgespindel mit 200U/min N10 G4 F5 ;Verweilzeit = 5 Sekunden der Masterspindel...
  • Seite 546 Weitere Funktionen 13.5 Synchronspindel Synchronspindelpaar festlegen Festprojektierte Kopplung: Leit- und Folgespindel werden über Maschinendatum festgelegt. Bei dieser Kopplung können die festgelegten Maschinenachsen für LS und FS vom NC-Teileprogramm nicht verändert werden. Die Parametrierung der Kopplung kann dennoch im NC-Teileprogramm mit COUPDEF erfolgen (Voraussetzung: kein Schreibschutz festgelegt). Anwenderdefinierte Kopplung: Mit der Sprachanweisung COUPDEF können Kopplungen im NC-Teileprogramm neu angelegt und verändert werden.
  • Seite 547 Weitere Funktionen 13.5 Synchronspindel Hinweis Der Zähler muss mindestens programmiert werden. Falls kein Nenner angegeben ist, wird dieser immer mit "1" angenommen. Das Übersetzungsverhältnis kann auch während eingeschalteter Kopplung in der Bewegung verändert werden. Satzwechselverhalten NOC, FINE, COARSE, IPOSTOP Damit kann beim Definieren der Kopplung zwischen folgenden Möglichkeiten ausgewählt werden, wann der Satzwechsel erfolgt: "NOC"...
  • Seite 548 Weitere Funktionen 13.5 Synchronspindel Synchronbetrieb einschalten COUPON, POS ● Schnellstmögliches Einschalten der Kopplung mit beliebigem Winkelbezug zwischen LS und FS: N ... COUPON(S2, S1)oder N ... COUPON(S2, S1, POS )oder N ... COUPON(S2) ● Einschalten mit Winkelversatz POS Zur positionssynchronen Kopplung für profilierte Werkstücke. bezieht sich auf die 0°-Position der Leitspindel in positiver Drehrichtung Wertebereich POS : 0°…...
  • Seite 549 Weitere Funktionen 13.5 Synchronspindel Hinweis Freigabe der Differenzdrehzahl Die sich einstellende Differenzdrehzahl wird nur dann übernommen, wenn eine Überlagerung der Bewegung auch freigegeben ist. Anderenfalls signalisiert ein selbst löschender Alarm diese unzulässige Überlagerung. Dynamikverteilung auf die verfügbare Dynamik des Motors Die zu limitierende Dynamik bei der Leitspindel muss durch Programmierung so weit eingeschränkt werden, dass eine andere Bewegungskomponente z.B.
  • Seite 550 Weitere Funktionen 13.5 Synchronspindel Warten auf Synchronlaufbedingungen für alle aktiven Folgespindeln ohne Angabe von Synchronlaufbedingungen. N300 WAITC(S2, "FINE", S4, "COARSE") Warten auf die angegebenen Synchronlaufbedingungen "Grob" für die Folgespindeln S2 und S4. Synchronbetrieb ausschalten COUPOF Drei Varianten sind möglich: ● Schnellstmögliches Ausschalten der Kopplung, der Satzwechsel wird sofort freigegeben: COUPOF(S2, S1)oder COUPOF(S2);...
  • Seite 551 Weitere Funktionen 13.5 Synchronspindel Kopplungsparameter zurücksetzen COUPRES Mit der Sprachanweisung "COUPRES" werden ● die in den Maschinen- und Settingdaten hinterlegten Parameter aktiviert (fest projektierte Kopplung), ● die Voreinstellungen aktiviert (anwenderdefinierte Kopplung). Dabei gehen die mit COUPDEF programmierten Parameter (einschließlich dem Übersetzungsverhältnis) verloren.
  • Seite 552: Elektronisches Getriebe (Eg)

    Weitere Funktionen 13.6 Elektronisches Getriebe (EG) 13.6 Elektronisches Getriebe (EG) 13.6 Funktion Mit Hilfe der Funktion "Elektronisches Getriebe" ist es möglich, die Bewegung einer Folgeachse nach linearem Bewegungssatz abhängig von bis zu fünf Leitachsen zu steuern. Die Zusammenhänge zwischen den Leitachsen und der Folgeachse sind je Leitachse durch den Koppelfaktor definiert.
  • Seite 553: Elektronisches Getriebe Einschalten (Egon)

    Weitere Funktionen 13.6 Elektronisches Getriebe (EG) Programmierung EGDEF(C, B, 1, Z, 1, Y, 1) B, Z, Y beeinflussen C über Sollwert Der Kopplungstyp muss nicht für alle Leitachsen gleich sein und ist daher für jede Leitachse einzeln anzugeben. Die Koppelfaktoren werden bei der Definition des EG- Kopplungsverbandes mit Null vorbesetzt.
  • Seite 554 Weitere Funktionen 13.6 Elektronisches Getriebe (EG) Parameter Variante 1: Folgeachse Satzwechselmodus Folgende Modi können benutzt werden: "NOC" Satzwechsel erfolgt sofort "FINE" Satzwechsel erfolgt bei "Synchronlauf fein" "COARSE" Satzwechsel erfolgt bei "Synchronlauf grob" "IPOSTOP" Satzwechsel erfolgt bei sollwertseitigem Synchronlauf LA1, ... LA5 Leitachsen Z1, ...
  • Seite 555 Weitere Funktionen 13.6 Elektronisches Getriebe (EG) Anfahrmodus Folgende Modi können benutzt werden: "NTGT": Nächste Zahnlücke zeitoptimiert anfahren "NTGP" : Nächste Zahnlücke wegoptimiert anfahren "ACN": Rundachse in negativer Drehrichtung verfahren absolut "ACP": Rundachse in positiver Drehrichtung verfahren absolut "DCT": zeitoptimiert zur programmierten Synchronposition "DCP": wegoptimiert zur programmierten Synchronposition...
  • Seite 556: Systemvariablen Des Elektronischen Getriebes

    Weitere Funktionen 13.6 Elektronisches Getriebe (EG) Kurventabellen Wird für eine der Leitachsen eine Kurventabelle verwendet, so muss: der Nenner des Koppelfaktors linearer Kopplungen auf 0 gesetzt werden. (Nenner 0 wäre für lineare Kopplungen unzulässig). Nenner Null ist für die Steuerung das Kennzeichen, dass als Nummer der zu verwendenden Kurventabelle interpretiert werden soll.
  • Seite 557: Elektronisches Getriebe Ausschalten (Egofs)

    Weitere Funktionen 13.6 Elektronisches Getriebe (EG) 13.6.3 Elektronisches Getriebe ausschalten (EGOFS) Funktion Für das Ausschalten eines aktiven EG-Achsverbandes gibt es drei verschiedene Möglichkeiten. Programmierung Variante 1: EGOFS(Folgeachse) Das elektronische Getriebe wird ausgeschaltet. Die Folgeachse wird zum Stillstand abgebremst. Der Aufruf löst Vorlaufstopp aus.
  • Seite 558: Umdrehungsvorschub (G95)/Elektronisches Getriebe (Fpr)

    Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen 13.6.4 Umdrehungsvorschub (G95)/Elektronisches Getriebe (FPR) Funktion Mit dem FPR( ) Befehl kann auch die Folgeachse eines Elektronischen Getriebes als vorschubbestimmende Achse des Umdrehungsvorschubes angegeben werden. Für diesen Fall gilt folgendes Verhalten: ● Der Vorschub ist abhängig von der Sollgeschwindigkeit der Folgeachse des Elektronischen Getriebes.
  • Seite 559 Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen Zusätzliche Erweiterungen ● Erweitertes Stillsetzen (NC-geführt) ist ein definiertes, zeitlich verzögertes und konturschonendes Stillsetzen unter Kontrolle der NC. ● Rückziehen (NC-geführt) bedeutet eine "Flucht" aus der Bearbeitungsebene in eine sichere Rückzugsposition unter Kontrolle der NC. Hiermit wird eine vorhandene Kollisionsgefahr zwischen Werkzeug und Werkstück umgangen.
  • Seite 560: Antriebsautarke Reaktionen Auf Esr

    Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen Aktivierung Funktionsfreigabe: $AA_ESR_ENABLE Die Funktionen Generatorbetrieb, Stillsetzen, Rückziehen werden durch Setzen des zugehörigen Steuersignals ($AA_ESR_ENABLE) freigegeben. Dieses Steuersignal kann von Synchronaktionen verändert werden. Funktionsauslösung (gemeinsames Auslösen aller freigegebenen Achsen) $AN_ESR_TRIGGER Der Generatorbetrieb wird "automatisch" im Antrieb bei Erkennung drohender Zwischenkreis-Unterspannung aktiv.
  • Seite 561 Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen ● ausgelöst: Systemvariable $AN_ESR_TRIGGER. Stillsetzen (antriebsautark) Das antriebsautarke Stillsetzen wird ● konfiguriert: über MD 37500: 12 sowie Zeitangabe über MD; ● freigegeben ($AA_ESR_ENABLE) und ● gestartet: Systemvariable $AN_ESR_TRIGGER. Beispiel Verwendung der antriebsautarken Reaktion Beispiel-Konfiguration ●...
  • Seite 562: Nc-Geführte Reaktionen Auf Rückziehen

    Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen 13.7.2 NC-geführte Reaktionen auf Rückziehen Funktion Für NC-geführtes Rückziehen sind bestimmte Ausgangsbedingungen erforderlich, die nachfolgend unter Vorraussetzungen beschrieben sind. Sind diese Voraussetzungen für Rückziehen erfüllt, dann wird Schnellabheben aktiviert. Im Teileprogramm muss die Rückzugsposition POLF programmiert worden sein. Für die Rückzugbewegung müssen die Freigabesignale gesetzt sein und gesetzt bleiben.
  • Seite 563 Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen Wert Rückzugsposition, für Geometrieachse gilt WKS, sonst MKS. Bei gleichen Bezeichnern für Geoachse und Kanal–/Maschinenachse wird im Werkstückkoordinatensystem zurückgezogen. Inkrementelle Programmierung ist zulässig. Rückzugsposition mit Typ=1 für Einzelachsen Rückzugsweg mit Typ=2 für Einzelachsen Der Wert wird auch mit Typ=0 übernommen.
  • Seite 564 Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen Beispiel Rückziehen einer Einzelachse MD 37500: ESR_REACTION[AX1] = 21 ;NC-geführtes Rückziehen $AA_ESR_ENABLE[AX1] = 1 POLFA(AX1,1, 20.0) ;AX1 wird die axiale Rückzugsposition ;20.0 (absolut) zugeteilt. $AA_ESR_TRIGGER[AX1] = 1 ;ab hier beginnt der Rückzug. Voraussetzung Rückziehen ●...
  • Seite 565 Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen Für den Rückzug steht maximal die Summe der Zeiten MD 21380: ESR_DELAY_TIME1 und MD 21381: ESR_DELAY_TIME2 zur Verfügung. Nach Ablauf dieser Zeitspanne wird auch für die Rückzugachse Schnellbremsen eingeleitet mit anschließendem Nachführen. Rückzugsrichtung beim Schnellabheben und Achstausch Zum Zeitpunkt der Aktivierung des Schnellabhebens wird der gültige Frame berücksichtigt.
  • Seite 566: Nc-Geführte Reaktionen Auf Stillsetzen

    Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen 13.7.3 NC-geführte Reaktionen auf Stillsetzen Funktion Stillsetzen Der Ablauf für erweitertes Stillsetzen (NC-geführt) ist durch die beiden Maschinendaten MD 21380: ESR_DELAY_TIME1 und MD 21381: ESR_DELAY_TIME2 gegeben. Für die Dauer der Zeitspanne in MD 21380 interpoliert die Achse ungestört weiter wie programmiert.
  • Seite 567: Antriebsautarkes Stillsetzen

    Weitere Funktionen 13.7 Erweitertes Stillsetzen und Rückziehen Weitere Information siehe /FB3/ Funktionshandbuch Sonderfunktionen; Achskopplungen und ESR (M3). 13.7.5 Antriebsautarkes Stillsetzen Funktion Die Antriebe eines zuvor gekoppelten Verbundes können durch zeitgesteuerte Abschaltverzögerung mit möglichst geringen Abweichungen zueinander stillgesetzt werden, wenn dies steuerungsseitig nicht möglich ist. Das antriebsautarke Stillsetzen wird über MD konfiguriert und freigegeben (Verzögerungsdauer T1 im MD) und wird mittels der Systemvariable $AA_ESR_ENABLE freigegeben und mit $AN_ESR_TRIGGER gestartet.
  • Seite 568: Antriebsautarkes Rückziehen

    Weitere Funktionen 13.8 Link-Kommunikation 13.7.6 Antriebsautarkes Rückziehen Funktion Achsen mit digitalen Antrieben SIMODRIVE 611Digital können (wenn projektiert und freigegeben) ● auch bei Ausfall der Steuerung (Lebenszeichenausfall-Erkennung), ● bei Abfall der Zwischenkreisspannung unter eine Warnschwelle, ● bei Auslösung durch die Systemvariable $AN_ESR_TRIGGER selbsttätig eine Rückzugsbewegung ausführen.
  • Seite 569: Zugriff Auf Einen Ncu-Globalen Speicherbereich

    Weitere Funktionen 13.8 Link-Kommunikation Anwendungen für Link-Variable ● globale Maschinenzustände ● Werkstück-Aufspannung offen/geschlossen ● usw. Zeitliches Verhalten zugreifender Anwendungen Die zu einem Zeitpunkt gemeinsam auf den Link-Speicher zugreifenden Anwendungen der verschiedenen NCUs müssen den Link-Speicher einheitlich benutzen. Für zeitlich gänzlich entkoppelte Vorgänge kann der Link-Speicher verschieden belegt werden.
  • Seite 570: Achscontainer (Axctwe, Axctwed)

    Weitere Funktionen 13.9 Achscontainer (AXCTWE, AXCTWED) Parameter Link-Variablen sind im Link-Speicher abgelegt. Nach dem Hochlauf ist der Link-Speicher mit 0 initialisiert. Innerhalb des Link-Speichers können die folgenden Link-Variablen angesprochen werden: ● INT $A_DLB[i] ;Datenbyte (8 Bit) ● INT $A_DLW[i] ;Datenwort (16 BIT) ●...
  • Seite 571 Weitere Funktionen 13.9 Achscontainer (AXCTWE, AXCTWED) Programmierung Die Verschiebung der Einträge im Achscontainer um die Schrittweite n erfolgt mit den Befehlen: AXIS CONTAINER SWITCH ENABLE AXCTSWE(CT AXIS CONTAINER SWITCH ENABLE DIRECT AXCTSWED(CT Parameter AXCTSWE Von jeden Kanal die im Container eingetragenen Achsen für eine Containerdrehung freigeben.
  • Seite 572: Achscontainer-Drehung Mit Impliziten Get/Getd

    Weitere Funktionen 13.9 Achscontainer (AXCTWE, AXCTWED) Nach der Achscontainerdrehung um 1 ist im vorstehenden Beispiel der Kanalachse Z statt der Achse AX1 auf NCU1 die Achse AX5 auf NCU1 zugeordnet. AXCTSWED () Die Befehlsvariante AXCTSWED(CT ) kann zur Vereinfachung der Inbetriebnahme eingesetzt werden.
  • Seite 573: Programmlaufzeit/Werkstückzähler

    Weitere Funktionen 13.10 Programmlaufzeit/Werkstückzähler Hinweis Die Achscontainer-Drehung mit impliziten GET/GETD kann für eine Achse die im Zustand Hauptlauf-Achse, z.B. für eine PLC-Achse nicht angewendet werden, da diese Achse dann diesen Zustand zur Achscontainer-Drehung verlassen müsste. 13.10 Programmlaufzeit/Werkstückzähler 13.10 13.10.1 Allgemeines Zur Unterstützung des Bearbeiters an der Werkzeugmaschine werden Informationen zur Programmlaufzeit bereitgestellt.
  • Seite 574: Werkstückzähler

    Weitere Funktionen 13.10 Programmlaufzeit/Werkstückzähler Hinweis Alle Timer werden bei einem Steuerungshochlauf mit Default-Werten genullt und können unabhängig von ihrer Aktivierung gelesen werden. Beispiel 1. Aktivierung der Laufzeit-Messung für das aktive NC-Programm, dabei kein Messen bei aktivem Probelauf-Vorschub und Programm-Test: $MC_PROCESSTIMER_MODE = 'H2' 2.
  • Seite 575 Weitere Funktionen 13.10 Programmlaufzeit/Werkstückzähler $AC_TOTAL_PARTS Anzahl der insgesamt hergestellten Werkstücke (Gesamt-Ist) Der Zähler gibt die Anzahl aller ab Startzeitpunkt hergestellten Werkstücke an. Der Zähler wird automatisch nur bei Steuerungshochlauf mit Default-Werten genullt. $AC_ACTUAL_PARTS Anzahl der aktuellen Werkstücke (Aktuell-Ist) In diesem Zähler wird die Anzahl aller ab Startzeitpunkt hergestellten Werkstücke registriert.
  • Seite 576: Fenster Aus Dem Teileprogramm Interaktiv Aufrufen Befehl (Mmc)

    Weitere Funktionen 13.11 Fenster aus dem Teileprogramm interaktiv aufrufen Befehl (MMC) $MC_PART_COUNTER = 'H3313' $AC_REQUIRED_PARTS ist aktiv $MC_PART_COUNTER_MCODE[0] = 80 Anzeige-Alarm bei $AC_REQUIRED_PARTS $MC_PART_COUNTER_MCODE[1] = 17 == $AC_SPECIAL_PARTS $MC_PART_COUNTER_MCODE[2] = 77 $AC_TOTAL_PARTS ist aktiv, mit jedem M02 wird der Zähler um den Wert 1 erhöht $MC_PART_COUNTER_MCODE[0] hat keine Bedeutung...
  • Seite 577: Beeinflussung Der Bewegungsführung

    Weitere Funktionen 13.12 Beeinflussung der Bewegungsführung BILD Dialogbildname: Die einzelnen Bilder werden durch den Dialogbildnamen ausgewählt. MGUD.DEF Anwenderdatendefinitionsdatei, auf die beim Lesen/Schreiben von Variablen zugegriffen wird. BILD_3.AWB Grafikdatei TEST_1 Anzeigezeit oder Quittungsvariable Textvariablen...", "S" Quittungsmodus: synchron, Quittung über den Softkey "OK"...
  • Seite 578: Prozentuale Geschwindigkeitskorrektur (Velolim)

    Weitere Funktionen 13.12 Beeinflussung der Bewegungsführung Hinweis Ein weiteres Beispiel folgt im Kapitel "Prozentuale Geschwindigkeitskorrektur (VELOLIM)". 13.12.2 Prozentuale Geschwindigkeitskorrektur (VELOLIM) Funktion In kritischen Programmabschnitten kann es notwendig sein, die Geschwindigkeit unter den maximal möglichen Werte zu beschränken, um z. B. die Maschinenbeanspruchung zu verringern oder die Bearbeitungsgüte zu verbessern.
  • Seite 579: Master-/Slave-Verband (Masldef, Masldel, Maslof, Maslof, Maslofs)

    Weitere Funktionen 13.13 Master-/Slave-Verband (MASLDEF, MASLDEL, MASLOF, MASLOF, MASLOFS) Beispiel VELOLIM und JERKLIM N1000 G0 X0 Y0 F10000 SOFT G64 N1100 G1 X20 RNDM = 5 ACC[X] = 20 ACC[Y] = 30 N1200 G1 Y20 VELOLIM[X] = 5 JERKLIM[Y] = 200 N1300 G1 X0 JERKLIM[X] = 2 N1400 G1 Y0 13.13...
  • Seite 580 Weitere Funktionen 13.13 Master-/Slave-Verband (MASLDEF, MASLDEL, MASLOF, MASLOF, MASLOFS) Parameter Allgemein MASLON eine temporäre Kopplung einschalten. MASLOF eine aktive Kopplung trennen. Bei Spindeln sind die Erweiterungen zu beachten. Erweiterung dynamische Projektierung MASLDEF Kopplung anwenderdefiniert über Maschinendaten oder auch aus dem Teileprogramm heraus anlegen/ändern.
  • Seite 581 Weitere Funktionen 13.13 Master-/Slave-Verband (MASLDEF, MASLDEL, MASLOF, MASLOF, MASLOFS) N37262 ;Permanente Kopplung aktivieren $MA_MS_COUPLING_ALWAYS_ACTIVE[AX2]=1 N37263 NEWCONF Beispiel Kopplungssequenz Lage 3/Container CT1 Damit die Kopplung nach der Containerdrehung mit einer anderen Spindel geschlossen werden kann, muss vorher die alte Kopplung getrennt, die Projektierung gelöscht und die neue Kopplung projektiert werden.
  • Seite 582 Weitere Funktionen 13.13 Master-/Slave-Verband (MASLDEF, MASLDEL, MASLOF, MASLOF, MASLOFS) Erweiterung dynamische Projektierung MASLDEF Definition eines Master-/Slave-Verbandes aus dem Teileprogramm heraus. Vorher erfolgte die Definition ausschließlich über Maschinendaten. MASLDEL Die Anweisung hebt die Zuordnung der Slaveachsen zur Masterachse auf und trennt gleichzeitig, analog zu MASLOF die Kopplung auf. Die in den Maschinendaten vereinbarten Master-/Slave-Definitionen bleiben erhalten.
  • Seite 583: Eigene Abspanprogramme

    Eigene Abspanprogramme 14.1 Unterstützende Funktion für das Abspanen 14.1 Funktion Für das Abspanen werden Ihnen fertige Bearbeitungszyklen angeboten. Darüber hinaus haben Sie die Möglichkeit, mit den nachfolgend aufgeführten Funktionen eigene Abspanprogramme zu erstellen. Hinweis Sie können diese Funktionen nicht nur zum Abspanen, sondern universell einsetzen. Voraussetzung Vor dem Aufruf von CONTPRON oder CONTDCON muss ●...
  • Seite 584: Konturaufbereitung (Contpron)

    Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) Parameter CONTDCON Konturdecodierung in Tabellenform einschalten (6-spaltig) CONTPRON Konturaufbereitung in Tabellenform einschalten (11-spaltig) INTERSEC Schnittpunkt zwischen zwei Konturelementen ermitteln. (Nur für Tabellen, die durch CONTPRON erstellt wurden). ISPOINTS Mögliche Schnittpunkte zwischen zweier Konturelementen ermitteln. (Nur für Tabellen, die durch CONTPRON erstellt wurden). EXECTAB Satzweise Abarbeitung von Konturelementen einer Tabelle (Nur für Tabellen, die durch CONTPRON erstellt wurden).
  • Seite 585 Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) Parameter CONTPRON Konturaufbereitung einschalten TABNAME Name der Kontur-Tabelle BEARBART Parameter für Bearbeitungsart: "G": Längsdrehen: Innenbearbeitung "L": Längsdrehen: Außenbearbeitung "N": Plandrehen: Innenbearbeitung "P": Plandrehen: Außenbearbeitung Anzahl der Hinterschnitte in Ergebnisvariable vom Typ INT MODE Bearbeitungsrichtung, Typ INT 0 = Konturaufbereitung vorwärts (Default-Wert) 1 = Konturaufbereitung in beiden Richtungen Beispiel 1: Kurventabelle erstellen...
  • Seite 586 Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) NC-Teileprogramm N10 DEF REAL KTAB[30,11] ;Konturtabelle mit Namen KTAB und ;beispielsweise max. 30 Konturelementen ;Parameterwert 11 ist eine feste Größe N20 DEF INT ANZHINT ;Variable für Anzahl der ;Hinterschnittelemente mit Namen ANZHINT N30 DEF INT FEHLER ;Variable für Quittung ;0=kein Fehler, 1=Fehler N40 G18...
  • Seite 587 Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) Erläuterung der Spalteninhalte Zeiger auf nächstes Konturelement (auf die Zeilennummer desselben) Zeiger auf vorhergehendes Konturelement Codierung des Konturmodes für die Bewegung Mögliche Werte für X = abc a = 10 G90 = 0 G91 = 1 b = 10 G70 = 0 G71 = 1...
  • Seite 588 Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) NC-Teileprogramm N10 DEF REAL KTAB[92,11] ;Konturtabelle mit Namen KTAB und ;beispielsweise max. 92 Konturelementen ;Parameterwert 11 ist eine feste Größe N20 CHAR BT="L" ;Betriebsart für CONTPRON: ;Längsdrehen, Außenbearbeitung N30 DEF INT HE=0 ;Anzahl der Hinterschnittelemente=0 N40 DEF INT MODE=1 ;Aufbereitung vorwärts und rückwärts N50 DEF INT ERR=0...
  • Seite 589 Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) Index Spalte Zeile (10) -1111 -1111 Erläuterung der Spalteninhalte und der Anmerkungen zu den Zeilen 0, 1, 6, 8, 83, 85 und 91 Es gelten die im Beispiel 1 genannten Erläuterungen der Spalteninhalte. Immer in Tabellen-Zeile 0: 1) Vorgänger: Zeile n enthält das Konturende vorwärts 2) Nachfolger: Zeile n ist das Konturtabellenende vorwärts Je einmal innerhalb der Konturelemente vorwärts:...
  • Seite 590 Eigene Abspanprogramme 14.2 Konturaufbereitung (CONTPRON) Erlaubte Verfahrbefehle, Koordinatensystem Für die Konturprogrammierung sind folgende G-Befehle zulässig: G-Gruppe 1: G0, G1, G2, G3 zusätzlich Rundung und Fase. Die Kreisprogrammierung ist über CIP und CT ist möglich. Die Funktionen Spline, Polynom Gewinde führen zu Fehlern. Änderungen des Koordinatensystems durch Einschalten eines Frames sind zwischen CONTPRON und EXECUTE nicht zulässig.
  • Seite 591: Konturdecodierung (Contdcon)

    Eigene Abspanprogramme 14.3 Konturdecodierung (CONTDCON) 14.3 Konturdecodierung (CONTDCON) 14.3 Funktion Die nach CONTDCON durchlaufenen Sätze beschreiben die Kontur, die decodiert wird. Die Sätze werden nicht bearbeitet, sondern in einer 6-spaltigen Konturtabelle speichergünstig codiert abgelegt. Jedem Konturelement entspricht eine Tabellenzeile in der Konturtabelle. Aus Kenntnis der unten angegebenen Codierungsregeln können Sie Anwendungen wie z.
  • Seite 592 Eigene Abspanprogramme 14.3 Konturdecodierung (CONTDCON) NC-Teileprogramm N10 DEF REAL KTAB[9,6] ;Konturtabelle mit Namen KTAB und 9 Tabellenzeilen. ;Diese erlauben 8 Kontursätze. Parameterwert 6 ;(Spaltenzahl der Tabelle) ist eine feste Größe N20 DEF INT MODE = 0 ;Standardwert 0: nur in programmierter ;Richtung der Kontur.
  • Seite 593 Eigene Abspanprogramme 14.3 Konturdecodierung (CONTDCON) Zugehörige Tabelle KTAB Spalten- index Zeilenindex Konturmode Endpunkt Endpunkt Mittelpunkt Mittelpunkt Vorschub Abszisse Ordinate Abszisse Ordinate 11031 111031 11031 11032 11031 11031 11031 Erläuterung der Spalteninhalte Zeile 0: Codierungen für den Startpunkt: Spalte 0: (Einerstelle): G0 = 0 (Zehnerstelle): G70 = 0, G71 = 1, G700 = 2, G710 = 3 Spalte 1: Startpunkt Abszisse...
  • Seite 594 Eigene Abspanprogramme 14.3 Konturdecodierung (CONTDCON) Erlaubte Verfahrbefehle, Koordinatensystem Für die Konturprogrammierung sind folgende G-Gruppen und G-Befehle zulässig: G-Gruppe 1: G0, G1, G2, G3 G-Gruppe 10: G60, G64, G641, G642 G-Gruppe 11: G-Gruppe 13: G70, G71, G700, G710 G-Gruppe 14: G90, G91 G-Gruppe 15: G93, G94, G95, G96, G961 zusätzlich Rundung und Fase.
  • Seite 595: Schnittpunkt Zweier Konturelemente (Intersec)

    Eigene Abspanprogramme 14.4 Schnittpunkt zweier Konturelemente (INTERSEC) 14.4 Schnittpunkt zweier Konturelemente (INTERSEC) 14.4 Funktion INTERSEC ermittelt den Schnittpunkt von zwei normierten Konturelementen aus der mit CONTPRON erzeugten Konturtabelle. Programmierung ISPOINT = INTERSEC (TABNAME1[n1], TABNAME2[n2], ISCOORD, MODE) Der zurückgegebene Status von ISPOINT weist darauf hin, ob ein Schnittpunkt vorliegt (ISPOINT = TRUE) oder kein Schnittpunkt gefunden wurde (ISPOINT = FALSE).
  • Seite 596 Eigene Abspanprogramme 14.4 Schnittpunkt zweier Konturelemente (INTERSEC) Beispiel Schnittpunkt von Konturelement 3 der Tabelle TABNAME1 und Konturelement 7 der Tabelle TABNAME2 ermitteln. Die Schnittpunkt-Koordinaten in der aktiven Ebene werden in SCHNITT (1. Element = Abszisse, 2. Element = Ordinate) abgelegt. Existiert kein Schnittpunkt, erfolgt ein Sprung zu KEINSCH (kein Schnittpunkt gefunden).
  • Seite 597: Verfahren Eines Konturelementes Aus Der Tabelle (Exectab)

    Eigene Abspanprogramme 14.5 Verfahren eines Konturelementes aus der Tabelle (EXECTAB) 14.5 Verfahren eines Konturelementes aus der Tabelle (EXECTAB) 14.5 Funktion Mit dem Befehl EXECTAB können Sie die Konturelemente einer Tabelle, die z. B. mit dem Befehl CONTPRON erzeugt wurde, satzweise verfahren. Programmierung EXECTAB (TABNAME[n]) Parameter...
  • Seite 598 Eigene Abspanprogramme 14.6 Kreisdaten berechnen (CALCDAT) Parameter CALCDAT Radien und Mittelpunkte eines Kreises aus 3 oder 4 Punkten berechnen. VARIB Variable für Status TRUE = Kreis, FALSE = kein Kreis PKT [n,2] Punkte zur Berechnung n = Anzahl der Punkte (3 oder 4); 2 = Angabe von 2 Punkt-Koordinaten Anzahl der zur Berechnung verwendeten Punkte: 3 oder 4 ERG [3]...
  • Seite 599: Tabellen

    Tabellen 15.1 Liste der Anweisungen 15.1 Legende: Standardeinstellung bei Programmanfang (im Auslieferungsstand der Steuerung, wenn nichts anderes programmiert ist). Die Gruppen-Numerierung entspricht der Tabelle im Abschnitt "Liste der G-Funktionen/Wegbedingungen". Absolute Endpunkte: modal (m) Inkrementale Endpunkte: satzweise (s) Ansonsten: m/s in Abhängigkeit von der Syntaxbestimmung G-Funktion Als Kreismittelpunkte wirken IPO-Paramter inkrementell.
  • Seite 600 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Werkzeugorientierung: Real Richtungsvektor- komponente Werkzeugorientierung für Real Satzanfang Werkzeugorientierung für Real Satzende: Normalenvektor- komponente Absolutwert Real Maßeingabe absolut 0, ..., X=AC(100) 359.9999° Axiale Beschleunigung Real, ohne (acceleration axial) Vorzeichen ACCLIMA Reduktion oder...
  • Seite 601 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Polarwinkel (angle polar) 0, ..., ± 360° Zugriffsschutz lesen / Integer, ohne anzeigen Vorzeichen (access protection read) Zugriffsschutz schreiben Integer, ohne (access protection write) Vorzeichen Öffnungswinkel 0, ..., 360° (angle circular) AROT Programmierbare...
  • Seite 602 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar AXSTRING Konvertiert den String String Kann den AXSTRING[SPI(n)] Spindelnummer Namen einer (get string) Datei aufnehmen. AXTOCHAN Achse für einen bestimmten Kanal AXTOCHAN(Achse, anfordern. Ist vom NC-Programm und aus Kanalnr.[,Achse, Synchronaktion möglich.
  • Seite 603 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Achse Real Werkzeugorientierung: Real Eulerwinkel Werkzeugorientierung: Real Richtungsvektorkompone Werkzeugorientierung für Real Satzanfang Werkzeugorientierung für Real Satzende; Normalenvektorkomponen Absolutes Anfahren einer Position Codierter Wert (coded position: absolute coordinate) ist Tabellen- index;...
  • Seite 604 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar CANCEL Modale Synchronaktion Abbrechen abbrechen mit der ange- gebenen ID. Ohne Parameter: Alle modalen Synchron- aktionen werden abgewählt. CASE Bedingte Programmverzweigung Direktes Anfahren einer Position Siehe CAC. (coded position: direct coordinate) CDOF Kollisionsüberwachung AUS (collision detection OFF)
  • Seite 605 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Fase; Real, ohne Wert = Länge der Fase Vorz. Fase; Wert = Breite der Fase in Bewegungsrichtung (chamfer) CHKDNO Eindeutigkeitsprüfung der D-Nummern Inkrementelles Anfahren einer Position Siehe CAC. (coded position: incremental coordinate) Kreisinterpolation über Zwischenpunkt CIP X...
  • Seite 606 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar COUPDEL ELG-Verband löschen (couple delete) COUPDEL(FS,LS) COUPOF ELG-Verband/Synchronspindelpaar AUS COUPOF(FS,LS, (couple OFF) ,POS COUPOFS Ausschalten ELG-Verband / Synchron- COUPOFS(FS,LS,POS spindelpaar mit Stopp der Folgespindel COUPON ELG-Verband / Synchronspindelpaar EIN COUPON(FS,LS, (couple ON) COUPONC...
  • Seite 607 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar CTABDEF Tabellendefinition EIN CTABDEL Kurventabelle löschen CTABEND Tabellendefinition AUS CTABEXISTS Prüft die Kurventabelle mit der Nummer n Parameter n CTABFNO Anzahl der noch möglichen Kurventabellen memType im Speicher CTABFPOL Anzahl der noch möglichen Polynome im memType...
  • Seite 608 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar CTABTEP Liefert den Wert der Leitachse am Leitwert am R10 = CTABTEP(n, Kurventabellen-Ende Ende der grad, LAchse) Kurventabelle. CTABTEV Liefert den Wert der Folgeachse am Folgewert am R10 = CTABTEV(n, Kurventabellen-Ende Ende der grad, FAchse)
  • Seite 609 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar CUTCONOF Konstante Radiuskorrektur AUS CUTCONON Konstante Radiuskorrektur EIN Werkzeugkorrektur- 1, ..., 32 000 Enthält D... nummer Korrekturdaten für ein best. Werkzeug T... ; D0 → Korrekturwerte für ein Werkzeug Absolut satzweise Durchmesser-...
  • Seite 610 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar DIAMCHAN Übernahme aller Achsen aus MD Durchmesser- DIAMCHAN Achsfunktionen in den Kanalzustand der programmie- Durchmesserprogrammierung rung aus MD übernehmen. DIAMCHANA Übernahme Kanalzustand der Kanalzustand. DIAMCHANA[Achse] Durchmesserprogrammierung DIAMCYCOF Radiusprogrammierung für G90/G91: EIN. Radiuspro- Für die Anzeige bleibt der zuletzt aktive G- grammierung...
  • Seite 611 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar DRFOF Ausschalten der Handradverschiebungen (DRF) DRIVE Geschwindigkeitsabhängige 7, 9 Bahnbeschleunigung DRIVEA Geknickte Beschleunigungskennlinie für die programmierten Achsen einschalten DYNFINISH Dynamik für Feinschlichten Technologie DYNFINISH G1 X10 G-Gruppe Y20 Z30 F1000 DYNNORM Normale Dynamik wie bisher DYNNORM G1 X10...
  • Seite 612 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar ENDFOR Endezeile der FOR-Zählschleife ENDIF Endezeile der IF-Verzweigung ENDLOOP Endezeile der Endlos-Programmschleife LOOP ENDPROC Endezeile eines Programms mit der Anfangszeile PROC ENDWHILE Endezeile der WHILE-Schleife ETAN Tangentialer Kurvenübergang zum nächsten Verfahrsatz bei Spline-Beginn (end tangential) EVERY...
  • Seite 613 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Axialer Vorschub 0.001, ..., FA[X]=100 (feed axial) 999999.999 mm/min, Grad/min; 0.001, ..., 39999.9999 inch/min Zustell-Vorschub für Real, ohne Weiches An- und Vorzeichen Abfahren (Feed approach/depart) FALSE Logische Konstante: BOOL Ersetzbar durch falsch...
  • Seite 614 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar FILESIZE Liefert aktuelle Größe der Typ INT In BYTE. Datei FILESTAT Liefert Filestatus der STRING, Format ist Rechte Lesen, Schreiben, Länge 5 "rwxsd". Execute, Anzeigen , Löschen (rwxsd) FILETIME Liefert Uhrzeit des zuletzt STRING,...
  • Seite 615 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar FRAME Datentyp zur Festlegung des Enthält pro Koordinatensystems Geometrie- achse: Verschiebung, Drehung, Scherungs- winkel, Skalierung, Spiegelung; Zusatzachse: Verschiebung, Skalierung, Spiegelung Vorschub für Radius und Fase FRCM Vorschub für Radius und Fase modal FTOC Werkzeugfeinkorrektur ändern...
  • Seite 616 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Bewegungs- Linearinterpolation mit Eilgang G0 X... Z... befehle (Eilgangsbewegung) Linearinterpolation mit Vorschub G1 X... Z... F... (Geradeninterpolation) Kreisinterpolation im Uhrzeigersinn G2 X... Z... I... K... F... ;Mittel- und Endpunkt G2 X...
  • Seite 617 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Linear progressive Bewegungs- G34 X... Y... Z... I... J... Geschwindigkeitsänderung [mm/U befehl K... F... Linear degressive Bewegungs- G35 X... Y... Z... I... J... Geschwindigkeitsänderung [mm/U befehl K... F... Werkzeugradiuskorrektur AUS Werkzeugradiuskorrektur links von der Kontur...
  • Seite 618 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Linearvorschub F in mm/min oder inch/min und °/min Umdrehungsvorschub F in mm/U oder inch/U konstante Schnittgeschwindigkeit (wie bei G96 S... LIMS=... F... G95) EIN konstante Schnittgeschwindigkeit (wie bei G95) AUS G110 Polprogrammierung relativ zur letzten...
  • Seite 619 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar G451 Schnittpunkt der Äquidistanten G460 Kollisionsüberwachung für An- und Abfahrsatz ein G461 Randsatz mit Kreisbogen verlängern, ... kein wenn ... Schnittpunkt im WRK-Satz G462 Randsatz mit Gerade verlängern, wenn ... G500 Ausschalten aller einstellbaren Frames, wenn in G500 kein Wert steht...
  • Seite 620 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar G962 Linear-Vorschub oder Umdrehungsvorschub und konstante Schnittgeschwindigkeit G971 Spindeldrehzahl einfrieren und Linear- Vorschubtyp Vorschub wie bei G94. G972 Linear-Vorschub oder Umdrehungsvorschub und konstante Spindeldrehzahl einfrieren G973 Umdrehungsvorschub ohne G97 ohne LIMS Spindeldrehzahlbegrenzung für ISO-Mode.
  • Seite 621 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar H... Hilfsfunktionsausgabe an Real/INT Per MD H100 oder H2=100 die PLC Progr.: einstellbar REAL: (Maschinen- 0 ...+/- 3.4028 hersteller). exp38 INT: -2147483646 +2147483647 Anzeige: ± 999 999 999,9999 Interpolationsparameter Real Zwischenpunktkoordinate...
  • Seite 622 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar INIT Baustein zur Abarbeitung in einem Kanal Kanalnummer INIT(1,1,2) oder anwählen 1-10 oder INIT(CH_X, CH_Y) $MC_CHAN_ NAME Datentyp: Ganzzahliger - (2 -1), ..., Wert mit Vorzeichen INTERSEC Schnittpunkt zwischen VAR REAL [2] ISPOINT ISPOINTS= zwei Konturelementen...
  • Seite 623 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Interpolationsparameter Real Zwischenpunktkoordinate Real JERKA Über MD eingestelltes Beschleunigungsverhalten für die programmierten Achsen aktivieren JERKLIMA Reduktion oder 1, ..., 200 Gültigkeits- JERKLIMA[X]= ...[%] Überhöhung des bereich ist maximalen axialen Rucks 1 bis 200% (jerk axial) Interpolationsparameter...
  • Seite 624 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar M... Schalthandlungen Max. 5 freie Anzeige: M-Funktionen 0, ..., 999 999 999 Maschinen- hersteller Programm: festzulegen. 0,..., 2147483647 Programmierter Halt Wahlweiser Halt Programmende Hauptprogramm mit Rücksetzen auf Programmanfang Spindeldrehrichtung rechts für Masterspindel Spindeldrehrichtung links für...
  • Seite 625 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar MEAW Messen mit schaltendem Integer, ohne Taster ohne Vorzeichen Restweglöschen (measure without deleting distance to go) MEAWA Messen ohne Restweglöschen Zugriff auf Frame-Daten: Spiegelung (mirror) MINDEX Index eines 0, ..., String: Zeichens im...
  • Seite 626 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Logisches NICHT (Negation) NPROT Maschinenspezifischer Schutzbereich EIN/AUS NPROTDEF Definition eines maschinenspezifischen Schutzbereichs (NCK specific protection area definition) NUMBER Eingangsstring in Zahl Real umwandeln OEMIPO1 OEM-Interpolation 1 OEMIPO2 OEM-Interpolation 2 Schlüsselwort in der CASE-Verzweigung OFFN Aufmaß...
  • Seite 627 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar vektoren: ORIPLANE Interpolation in einer Ebene A7, B7, C7 (entspricht ORIVECT) Kontaktpunkt Großkreisinterpolation des Werkzeugs: XH, YH, ZH ORIPATH Werkzeugorientierung bezogen auf die Trans- Bahn formations- paket Handling (siehe /FB3/ TE4).
  • Seite 628 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar Pendeln: Startpunkt Konstante Glättung Werkzeugorientierung OSCILL Achszuordnung für Axis: 1 - 3 Pendeln - Zustellachsen Pendeln einschalten OSCTRL Optionen Pendeln Integer, ohne Vorzeichen Überschleifen der Werkzeugorientierung Satzintern durch Vorgabe der Überschleiflänge mit Pendeln: Endpunkt OSNSC Pendeln: Ausfunkanzahl...
  • Seite 629 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar PAROTOF Werkstückbezogene Framedrehung ausschalten PDELAYOF Verzögerung beim Stanzen AUS (punch with delay OFF) PDELAYON Verzögerung beim Stanzen EIN (punch with delay ON) Parameter-Intervall-Länge Real, ohne Vorzeichen pro Minute Vorschub pro Minute.
  • Seite 630 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar PRESETON Istwertsetzen für programmierte Achsen Es wird jeweils PRESETON(X,10,Y, ein Achs- 4.5) bezeichner und im nächsten Parameter der zugehörige Wert programmiert. Bis zu 8 Achsen möglich. PRIO Schlüsselwort zum Setzen der Priorität bei der Behandlung von Interrupts PROC Erste Anweisung eines Programms...
  • Seite 631 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar RDISABLE Einlesesperre (read in disable) READ Liest in der angegebenen Datei eine oder Die Information mehrere Zeilen ein und legt gelesene liegt als Informationen im Feld ab STRING vor. READAL Alarm lesen (read alarm) Alarme werden...
  • Seite 632 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar REPOSQA Wiederanfahren an die Kontur linear mit allen Achsen; Geometrieachsen im Viertelkreis (repositioning quarter circle all axes) RESET Technologiezyklus rücksetzen Eine oder mehrere IDs können programmiert werden. Unterprogrammende Verwendung statt M17 - ohne Funktions-...
  • Seite 633 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar ROUND Runden der Real Nachkommastellen Polarradius (radius polar) Real Drehung in der Ebene Real, ohne (rotation plane) Vorzeichen Parameter für Zugriff auf Framedaten: Drehung (rotation) RTLION G0 mit Linear-Interpolation RTLIOF G0 ohne Linear-Interpolation (Einzelachsinterpolation)
  • Seite 634 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar SETAL Alarm setzen (set alarm) SETDNO D-Nummer des Werkzeugs (T) und dessen Schneide auf "neu" setzen SETINT Festlegung, welche Interruptroutine Ausgewertet aktiviert werden soll, wenn ein NCK- wird Eingang ansteht Flanke 0 →...
  • Seite 635 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar SPOSA Spindelposition über SPOSA=5 oder Satzgrenzen hinweg SPOSA[n]=5 SQRT Quadratwurzel Real (arithmetische Funktion) (square root) Pendelrückzugsweg Real, ohne für Synchronaktion Vorzeichen (sparking out retract path) Pendelrückzugsweg bei SRA[Y]=0.2 externem Eingang axial für Synchronaktion (sparking out retract path...
  • Seite 636 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar STRLEN Länge eines Strings bestimmen SUBSTR Index eines Zeichens im Real String: Eingangsstring 1.Parameter, bestimmen Zeichen: 2.Parameter SUPA Unterdrückung der aktuellen Nullpunktverschiebung, einschließlich programmierter Verschiebungen, Systemframes, Handradverschiebungen (DRF), externer Nullpunktverschiebung und überlagerte Bewegung SYNFCT Auswertung eines...
  • Seite 637 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar TCOFRX Werkzeugorientierung eines aktiven WZ senkrecht Frames bei der Werkzeugwahl zur schrägen bestimmen, Werkzeug zeigt in X-Richtung Fläche. TCOFRY Werkzeugorientierung eines aktiven WZ senkrecht Frames bei der Werkzeugwahl zur schrägen bestimmen, Werkzeug zeigt in Y-Richtung Fläche.
  • Seite 638 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar TOROT Frame- Z-Achse parallel zur Werkzeugorientierung drehungen EIN TOROTX X-Achse parallel zur Rotationsanteil Werkzeugorientierung des program- TOROTY Y-Achse parallel zur mierbaren Werkzeugorientierung Frame TOROTZ Z-Achse parallel zur Werkzeugorientierung TOUPPER Buchstaben des eines Strings in Großbuchstaben umwandeln...
  • Seite 639 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar TRAORI 4-, 5-Achstransformation, Generische Aktiviert Generische Transformation vereinbarte Transformation (transformation oriented) Orientierungs- TRAORI(1,X,Y,Z) transformation. TRUE Logische Konstante: wahr BOOL Ersetzbar durch Integer- Konstante 1. TRUNC Abschneiden der Real Nachkommastellen Achswinkel Integer...
  • Seite 640 Tabellen 15.1 Liste der Anweisungen Name Bedeutung Wert Beschreibung, Syntax Gruppe Kommentar WALCS3 WKS-Arbeitsfeldbegrenzungsgruppe 3 aktiv WALCS4 WKS-Arbeitsfeldbegrenzungsgruppe 4 aktiv WALCS5 WKS-Arbeitsfeldbegrenzungsgruppe 5 aktiv WALCS6 WKS-Arbeitsfeldbegrenzungsgruppe 6 aktiv WALCS7 WKS-Arbeitsfeldbegrenzungsgruppe 7 aktiv WALCS8 WKS-Arbeitsfeldbegrenzungsgruppe 8 aktiv WALCS9 WKS-Arbeitsfeldbegrenzungsgruppe 9 aktiv WALCS10 WKS-Arbeitsfeldbegrenzungsgruppe 10 aktiv...
  • Seite 641: Anhang

    Anhang Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 642: Liste Der Abkürzungen

    Anhang A.1 Liste der Abkürzungen Liste der Abkürzungen Ausgang Automatisierungssystem ASCII American Standard Code for Information Interchange: Amerikanische Code-Norm für den Informationsaustausch ASIC Application Specific Integrated Circuit: Anwender-Schaltkreis ASUP Asynchrones Unterprogramm Arbeitsvorbereitung Anweisungsliste Betriebsart Betriebsartengruppe Betriebsbereit BuB, B&B Bedienen und Beobachten Binary Coded Decimals: Im Binärcode verschlüsselte Dezimalzahlen Bedienhandgerät Binärdateien (Binary Files)
  • Seite 643 Anhang A.1 Liste der Abkürzungen Datenendeinrichtung Deutsche Industrie Norm Data Input/Output: Datenübertragungs-Anzeige Directory: Verzeichnis Dynamic Link Library Datenübertragungseinrichtung Disk Operating System Dual Port Memory Dual-Port-RAM DRAM Dynamic Random Access Memory Differential Resolver Function: Differential-Drehmelder-Funktion (Handrad) Dry Run: Probelaufvorschub Decoding Single Block: Dekodierungseinzelsatz Datenwort Eingang Ein-/Ausgabe...
  • Seite 644 Anhang A.1 Liste der Abkürzungen HiFu Hilfsfunktion Human Machine Interface: Bedienfunktionalität der SINUMERIK für Bedienen, Programmieren und Simulieren. Hochauflösendes Messsystem Hauptspindelantrieb Hardware Inbetriebnahme Impulsfreigabe des Antriebsmoduls IK (GD) Implizite Kommunikation (Globale Daten) Interpolative Compensation: Interpolatorische Kompensation Interface-Modul: Anschaltungsbaugruppe Interface-Modul Receive: Anschaltungsbaugruppe für Empfangsbetrieb Interface-Modul Send: Anschaltungsbaugruppe für Sendebetrieb Increment: Schrittmaß...
  • Seite 645 Anhang A.1 Liste der Abkürzungen Numerical Control Kernel: Numerik-Kern mit Satzaufbereitung, Verfahrbereich usw. Numerical Control Unit: Hardware Einheit des NCK Bezeichnung des Betriebssystems des NCK Nahtstellensignal NURBS Non-Uniform Rational B-Spline Nullpunktverschiebung Organisationsbaustein in der PLC Original Equipment Manufacturer Operation Panel: Bedieneinrichtung Operation Panel Interface: Bedientafel-Anschaltung Options: Optionen Open Systems Interconnection: Normung für Rechnerkommunikation...
  • Seite 646 Anhang A.1 Liste der Abkürzungen SRAM Statischer Speicher (gepuffert) Schneidenradiuskorrektur SSFK Spindelsteigungsfehlerkompensation Serial Synchron Interface: Serielle synchrone Schnittstelle Software System Files: Systemdateien Testing Data Active: Kennung für Maschinendaten Tool Offset: Werkzeugkorrektur Tool Offset Active: Kennzeichnung (Dateityp) für Werkzeugkorrekturen TRANSMIT Transform Milling into Turning: Koordinatenumrechnung an Drehmaschinen für Fräsbearbeitung User Frame: Nullpunktverschiebung Unterprogramm...
  • Seite 647: A.2 Publikationsspezifische Information

    Anhang A.2 Publikationsspezifische Information Publikationsspezifische Information A.2.1 Korrekturblatt - Faxvorlage Sollten Sie beim Lesen dieser Unterlage auf Druckfehler gestoßen sein, bitten wir Sie, uns diese mit diesem Vordruck mitzuteilen. Ebenso dankbar sind wir für Anregungen und Verbesserungsvorschläge. Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 648 Anhang A.2 Publikationsspezifische Information Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 649: Dokumentationsübersicht

    Anhang A.2 Publikationsspezifische Information A.2.2 Dokumentationsübersicht Arbeitsvorbereitung Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 650 Anhang A.2 Publikationsspezifische Information Arbeitsvorbereitung A-10 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 651: Glossar

    Glossar Absolutmaß Angabe des Bewegungsziels einer Achsbewegung durch ein Maß, das sich auf den Nullpunkt des momentan gültigen Koordinatensystems bezieht. Siehe -> Kettenmaß. Achsadresse Siehe -> Achsbezeichner Achsbezeichner Achsen werden nach DIN 66217 für ein rechtsdrehendes, rechtwinkliges -> Koordinatensystem bezeichnet mit X,Y, Z. Um X,Y, Z drehende ->...
  • Seite 652 Glossar Alarme Alle -> Meldungen und Alarme werden auf der Bedientafel im Klartext mit Datum und Uhrzeit und dem entsprechenden Symbol für das Löschkriterium angezeigt. Die Anzeige erfolgt getrennt nach Alarmen und Meldungen. 1. Alarme und Meldungen im Teileprogramm Alarme und Meldungen können direkt aus dem Teileprogramm im Klartext zur Anzeige gebracht werden.
  • Seite 653 Glossar Arbeitsfeldbegrenzung Mit der Arbeitsfeldbegrenzung kann der Verfahrbereich der Achsen zusätzlich zu den Endschaltern eingeschränkt werden. Je Achse ist ein Wertepaar zur Beschreibung des geschützten Arbeitsraumes möglich. Arbeitsraum Dreidimensionaler Raum, in den die Werkzeugspitze aufgrund der Konstruktion der Werkzeugmaschine hineinfahren kann. Siehe -> Schutzraum. Arbeitsspeicher Der Arbeitsspeicher ist ein RAM-Speicher in der ->...
  • Seite 654 Glossar Bahngeschwindigkeit Die maximal programmierbare Bahngeschwindigkeit ist abhängig von der Eingabefeinheit. Bei einer Auflösung von beispielsweise 0,1 mm beträgt die maximal programmierbare Bahngeschwindigkeit 1000 m/min. Bahnsteuerbetrieb Ziel des Bahnsteuerbetriebes ist es, ein größeres Abbremsen der die Steuerung, Maschine und weitere Vermögenswerte des Betriebes und Anwenders -> Bahnachsen an den Teileprogramm-Satzgrenzen zu vermeiden und mit möglichst gleicher Bahngeschwindigkeit in den nächsten Satz zu wechseln.
  • Seite 655 Glossar Bedienoberfläche Die Bedienoberfläche (BOF) ist das Anzeigemedium einer CNC-Steuerung in Gestalt eines Bildschirms. Sie ist mit horizontalen und vertikalen Softkeys gestaltet. Beschleunigung mit Ruckbegrenzung Zur Erzielung eines optimalen Beschleunigungsverhaltens an der Maschine bei gleichzeitiger Schonung der Mechanik kann im Bearbeitungsprogramm zwischen sprunghafter Beschleunigung und stetiger (ruckfreier) Beschleunigung umgeschaltet werden.
  • Seite 656 Glossar Siehe -> NC Komponente der NC-Steuerung zur Durchführung und Koordination von Kommunikation. Central Processor Unit, siehe -> Speicherprogrammierbare Steuerung C-Spline Der C-Spline ist der bekannteste und am meisten verwendete Spline. Die Übergänge an den Stützpunkten sind tangenten- und krümmungsstetig. Es werden Polynome 3. Grades verwendet.
  • Seite 657 Glossar Differential Resolver Function: NC-Funktion, die in Verbindung mit einem elektronischen Handrad eine inkrementale Nullpunktverschiebung im Automatik-Betrieb erzeugt. Editor Der Editor ermöglicht das Erstellen, Ändern, Ergänzen, Zusammenschieben und Einfügen von Programmen/Texten/Programmsätzen. Eilgang Schnellste Verfahrgeschwindigkeit einer Achse. Sie wird z. B. verwendet, wenn das Werkzeug aus einer Ruhestellung an die ->...
  • Seite 658 Glossar Genauhaltgrenze Erreichen alle Bahnachsen ihre Genauhaltgrenze, so verhält sich die Steuerung als habe sie einen Zielpunkt exakt erreicht. Es erfolgt Satzweiterschaltung des -> Teileprogramms. Geometrie Beschreibung eines -> Werkstücks im -> Werkstückkoordinatensystem. Geometrieachse Geometrieachsen dienen der Beschreibung eines 2- oder 3-dimensionalen Bereichs im Werkstückkoordinatensystem.
  • Seite 659 Glossar Hauptsatz Durch ":" eingeleiteter Satz, der alle Angaben enthält, um den Arbeitsablauf in einem -> Teileprogramm starten zu können. HIGHSTEP Zusammenfassung der Programmiermöglichkeiten für die -> PLC des System AS300/AS400. Hilfsfunktionen Mit Hilfsfunktionen können in -> Teileprogrammen -> Parameter an die -> PLC übergeben werden, die dort vom Maschinenhersteller definierte Reaktionen auslösen.
  • Seite 660: Kettenmaß

    Glossar Betriebsart der Steuerung (Einrichtebetrieb): In der Betriebsart Jog kann die Maschine eingerichtet werden. Einzelne Achsen und Spindeln können über die Richtungstasten im Tippbetrieb verfahren werden. Weitere Funktionen in der Betriebsart Jog sind das -> Referenzpunktfahren, -> Repos sowie -> Preset (Istwert setzen). Kanal Ein Kanal ist dadurch gekennzeichnet, dass er unabhängig von anderen Kanälen ein ->...
  • Seite 661 Glossar Koordinatensystem Siehe -> Maschinenkoordinatensystem, -> Werkstückkoordinatensystem Korrekturspeicher Datenbereich in der Steuerung, in dem Werkzeugkorrekturdaten hinterlegt sind. Kreisinterpolation Das -> Werkzeug soll zwischen festgelegten Punkten der Kontur mit einem gegebenen Vorschub auf einem Kreis fahren und dabei das Werkstück bearbeiten. KÜ...
  • Seite 662 Glossar Maschinenachsen In der Werkzeugmaschine physikalisch existierende Achsen. Maschinenfestpunkt Durch die Werkzeugmaschine eindeutig definierter Punkt, z. B. Referenzpunkt. Maschinenfestpunkt anfahren Fahrbewegung zu einem der vordefinierten -> Maschinenfestpunkte. Maschinenkoordinatensystem Koordinatensystem, das auf die Achsen der Werkzeugmaschine bezogen ist. Maschinennullpunkt Fester Punkt der Werkzeugmaschine, auf den sich alle (abgeleiteten) Messsysteme zurückführen lassen.
  • Seite 663 Glossar Mehrpunkt-Schnittstelle Die Mehrpunkt-Schnittstelle (MPI) ist eine 9-polige D-Sub-Schnittstelle. An eine Mehrpunkt- Schnittstelle kann eine parametrierbare Anzahl von Geräten angeschlossen werden und miteinander kommunizieren: ● PGs ● Bedien- und Beobachtungssysteme ● weitere Automatisierungssysteme Der Parameterblock "Multipoint Interface MPI" der CPU enthält die -> Parameter, die die Eigenschaften der Mehrpunkt-Schnittstelle festlegen.
  • Seite 664 Glossar Numeric Robotic Kernel (Betriebssystem des -> NCK) Nullpunktverschiebung Vorgabe eines neuen Bezugspunktes für ein Koordinatensystem durch Bezug auf einen bestehenden Nullpunkt und ein -> Frame. 1. Einstellbar SINUMERIK 840D: Es steht eine projektierbare Anzahl von einstellbaren Nullpunktverschiebungen für jede CNC-Achse zur Verfügung. Die über G-Funktionen anwählbaren Verschiebungen sind alternativ wirksam.
  • Seite 665 Glossar Peripheriebaugruppe Peripheriebaugruppen stellen die Verbindung zwischen CPU und Prozess her. Peripheriebaugruppen sind: ● → Digital-Ein-/Ausgabebaugruppen ● → Analog-Ein-/Ausgabebaugruppen ● → Simulatorbaugruppen Programmable Logic Control: → Speicherprogrammierbare Steuerung. Komponente der → NC: Anpass-Steuerung zur Bearbeitung der Kontroll-Logik der Werkzeugmaschine. PLC-Programmierung Die PLC wird mit der Software STEP 7 programmiert.
  • Seite 666 Glossar Programmierbare Frames Mit programmierbaren → Frames können dynamisch im Zuge der Teileprogramm- Abarbeitung neue Koordinatensystem-Ausgangspunkte definiert werden. Es wird unterschieden nach absoluter Festlegung anhand eines neuen Frames und additiver Festlegung unter Bezug auf einen bestehenden Ausgangspunkt. Programmierschlüssel Zeichen und Zeichenfolgen, die in der Programmiersprache für → Teileprogramme eine festgelegte Bedeutung haben.
  • Seite 667 Glossar Rundungsachse Rundungsachsen bewirken eine Werkstück- oder Werkzeugdrehung in eine einem Teilungsraster entsprechende Winkellage. Beim Erreichen eines Rasters ist die Rundungsachse "in Position". Satzsuchlauf Zum Austesten von Teileprogrammen oder nach einem Abbruch der Bearbeitung kann über die Funktion "Satzsuchlauf" eine beliebige Stelle im Teileprogramm angewählt werden, an der die Bearbeitung gestartet oder fortgesetzt werden soll.
  • Seite 668: Schrittmaß

    Glossar Schraubenlinien-Interpolation Die Schraubenlinien-Interpolation eignet sich besonders zum einfachen Herstellen von Innen- oder Außengewinden mit Formfräsern und zum Fräsen von Schmiernuten. Dabei setzt sich die Schraubenlinie aus zwei Bewegungen zusammen: ● Kreisbewegung in einer Ebene ● Linearbewegung senkrecht zu dieser Ebene Schrittmaß...
  • Seite 669 Glossar Software-Endschalter Software-Endschalter begrenzen den Verfahrbereich einer Achse und verhindern ein Auffahren des Schlittens auf die Hardware-Endschalter. Je Achse sind 2 Wertepaare vorgebbar, die getrennt über die → PLC aktiviert werden können. Speicherprogrammierbare Steuerung Speicherprogrammierbare Steuerungen (SPS) sind elektronische Steuerungen, deren Funktion als Programm im Steuerungsgerät gespeichert ist.
  • Seite 670 Glossar Synchronaktionen 1. Hilfsfunktionsausgabe Während der Werkstückbearbeitung können aus dem CNC-Programm heraus technologische Funktionen (→ Hilfsfunktionen) an die PLC ausgegeben werden. Über diese Hilfsfunktionen werden beispielsweise Zusatzeinrichtungen der Werkzeugmaschine gesteuert, wie Pinole, Greifer, Spannfutter etc. 2. Schnelle Hilfsfunktionsausgabe Für zeitkritische Schaltfunktionen können die Quittierungszeiten für die → Hilfsfunktionen minimiert und unnötige Haltepunkte im Bearbeitungsprozess vermieden werden.
  • Seite 671 Glossar Text-Editor Siehe → Editor TOA–Bereich Der TOA–Bereich umfasst alle Werkzeug- und Magazindaten. Standardmäßig fällt der Bereich bzgl. der Reichweite der Daten mit dem Bereich → Kanal zusammen. Über Maschinendaten kann jedoch festgelegt werden, dass sich mehrere Kanäle eine → TOA- Einheit teilen, so dass diesen Kanälen dann gemeinsame WZV-Daten zur Verfügung stehen.
  • Seite 672 Glossar Verfahrbereich Der maximal zulässige Verfahrbereich bei Linearachsen beträgt ± 9 Dekaden. Der absolute Wert ist abhängig von der gewählten Eingabe- und Lageregelfeinheit und dem Einheitensystem (inch oder metrisch). Vorkoinzidenz Satzwechsel bereits, wenn Bahnweg um ein vorgegebenes Delta der Endposition nahe gekommen ist.
  • Seite 673: Zoll-Maßsystem

    Glossar Werkzeugkorrektur Berücksichtigung der Werkzeug-Abmessungen bei der Berechnung der Bahn. Werkzeugradiuskorrektur Um eine gewünschte → Werkstückkontur direkt programmieren zu können, muss die Steuerung unter Berücksichtigung des Radius des eingesetzten Werkzeugs eine äquidistante Bahn zur programmierten Kontur verfahren (G41/G42). Zeitreziproker Vorschub Bei SINUMERIK 840D kann anstelle der Vorschubgeschwindigkeit für die Achsbewegung die Zeit programmiert werden, die der Bahnweg eines Satzes benötigen soll (G93).
  • Seite 674 Glossar Arbeitsvorbereitung Glossar-24 Programmierhandbuch, 11/2006, 6FC5398-2BP10-2AA0...
  • Seite 675 Index AXTOCHAN, 1-63 GET, 1-59 ohne Synchronisierung, 1-61 ohne Vorlaufstopp, 1-62 $AA_COUP_ACT, 9-10, 9-35, 13-23 RELEASE, 1-59 $AA_COUP_OFFS, 13-23 über Synchronaktionen anfordern und $AA_LEAD_SP, 9-34 freigeben, 10-44 $AA_LEAD_SV, 9-34 Verhalten veränderbar einstellen, 1-62 $AA_MOTEND, 5-41 Voraussetzungen, 1-61 $AC_MARKER[n], 10-14 ACOS, 1-20 $AC_PARAM, 10-15 AC-Regelung, additiv, 10-33 $AC_TIMER[n], 10-18...
  • Seite 676 Index Arbeitsspeicher, 3-6 Bahnrelative Orientierung Datenbereiche, 3-6 Drehung der Werkzeugorientierung, 7-40 Initialisierungsprogramme, 3-6 Drehung des Orientierungsvektors, 7-40 Reservierte Bausteinnamen, 3-10 Drehungen des Werkzeugs, 7-39 AS, 2-43 Einfügen von Zwischensätzen, 7-43 ASIN, 1-20 Bahntangentenwinkel, 10-60 ASPLINE, 5-3 BAUTO, 5-4 Asynchrones Pendeln, 11-1 BEARBART, 14-3 ATAN2, 1-20 Bedingt unterbrechbare Programmabschnitte, 9-44...
  • Seite 677 Index CLEARM, 1-47, 10-57 CTABTEP, 9-22, 9-23 CLRINT, 1-51 CTABTEV, 9-22, 9-23 CMIRROR, 1-20, 6-8 CTABTMAX, 9-23 COARSE, 13-15, 13-19, 13-22 CTABTMIN, 9-23 COARSEA, 5-39 CTABTSP, 9-22, 9-23 Codierte Positionen anfahren, 5-1 CTABTSV, 9-22, 9-23 COMCAD, 5-13 CTABUNLOCK, 9-19 COMPCURV, 5-13 CTRANS, 1-20, 6-8, 6-15 COMPLETE, 3-6, 3-7 CUT3DC, 8-15, 8-20...
  • Seite 678 Index DRF-Verschiebung, 6-16 DUPLO_NR, 8-4 FA, 11-4, 13-21 DV, 13-19 Fachse, 9-30 DZERO, 8-36 FAchse, 9-3, 9-8, 9-13, 9-22, 9-27 Fahren auf Festanschlag FXS und FOCON/FOCOF, 10-58 FALSE, 1-2 EAUTO, 5-4 FCTDEF, 8-8, 10-30 Eckenverzögerung an allen Ecken, 5-38 FCUB, 9-36 Eckenverzögerung an Innenecken, 5-38 FEHLER, 14-2 Fehlerrückmeldung, 14-2...
  • Seite 679 Index Framevariable, 6-1 Grobverschiebung, 6-14 Aufruf von Koordinatentransformationen, 6-1 Grundstellung der Werkzeugorientierung Definition neuer Frames, 6-13 ORIRESET, 7-14 Vordefinierte Framevariable, 6-3, 6-12 GUD, 3-3, 3-6, 3-10, 3-11 Werte zuweisen, 6-8 automatische Aktivierung, 3-13 Framvariable -Definitionsdatei erstmalig aktivieren, 3-13 Nullpunktverschiebungen G54 bis G599, 6-7 -und Makro-Definitionen entladen, 3-13 Zuordnungen zu den G-Befehlen G54 bis G599, -und Makro-Definitionen laden, 3-14...
  • Seite 680 Index Interruptroutine als Unterprogramm erstellen, 1-52 Koppel, 9-3, 9-9 Interruptroutine aus-/wieder einschalten, 1-54 Koppelart Interruptroutine zuordnen und starten, 1-53 AV, 13-15 INTERSEC, 14-2, 14-13 DV, 13-15 IPOBRKA, 5-39 VV, 13-15 IPOENDA, 5-39 Kopplungen löschen, 13-22 IPOSTOP, 13-15, 13-19, 13-21 Kopplungsart, 13-15 IPTRLOCK, 9-49 Kopplungsstatus, 9-35 IPTRUNLOCK, 9-49...
  • Seite 681 Index MMC, 13-48 MOD, 1-20 M, 8-39 MODE M17, 2-5 Bearbeitungsart, 14-13 Bearbeitungsrichtung, 14-3 automatische Aktivierung, 3-13 Modus, 11-6 Makrotechnik, 2-42, 12-2 Modus, 11-6 Maschinen- MOV, 10-43 Zustand, globalerWerkstückaufspannung, 13-41 MPF, 3-3 MASLDEF, 13-52 MU, 7-64 MASLDEL, 13-52 MZ, 7-64 MASLOF, 13-52 MASLOFS, 13-52 MASLON, 13-52...
  • Seite 682 Index OR, 1-23 OSD, 8-28 ORIAXES, 7-41 OSE, 11-2, 11-5 ORIAXES, 7-25 OSNSC, 11-2, 11-6 ORIC, 8-28 OSOF, 8-28 ORICONCCW, 7-28, 7-42 OSP, 11-4 ORICONCW, 7-28, 7-42 OSP1, 11-1, 11-6 ORICONIO, 7-28, 7-42 OSP2, 11-1, 11-6 ORICONTO, 7-28, 7-42 OSS, 8-28 ORICURVE, 7-31, 7-42 OSSE, 8-28 ORID, 8-28...
  • Seite 683 Index PO[THT], 7-34, 7-40 PO[XH], 7-34 Werkstückverzeichnis anlegen, 3-4 PO[YH], 7-34 Werkstückverzeichnisse, 3-3 PO[ZH], 7-34 Programmteilwiederholung mit indirekter Polar-Transformation, 7-5 Programmierung CALL, 2-22 POLF, 13-35 Programmwiederholung, 2-18 POLFA, 13-35 Projektierbare Parameterbereiche, 10-12 POLFMASK, 13-35 PSFS, 13-15 POLFMLIN, 13-35 PSI, 7-34 POLY, 5-17 PTP, 7-67, 7-71 Polynom...
  • Seite 684 Index REPOS, 1-50, 1-52 Schutzstufen REPOSA, 9-52 Änderung bei Maschinendaten und Settingdaten, REPOSH, 9-52 3-14 REPOSHA, 9-52 Attribute von Sprachelementen ändern, 3-18 REPOSL, 1-52, 9-52 Für Anwenderdaten, 3-11 REPOSQ, 9-52 Systemvariable beschreiben und NC- REPOSQA, 9-52 Sprachelement ausführen, 3-16 RESET, 10-70 SCPARA, 5-42 Restweglöschen, 10-28, 11-2 SD, 5-5...
  • Seite 685 Index Sprunganweisung Repositionierung, 10-74 CASE-Anweisung, 1-39 Reset, 10-73 SQRT, 1-20 Satzsuchlauf, 10-74 SR, 15-37 Vorlaufvariablen, 10-9 SRA, 15-37 Wertelisten mit SET und REP, 10-56 ST, 15-37 Synchronaktions-Parameter, 10-15 STA, 15-37 Synchrones Pendeln Stanzen, 12-1, 12-4 Anhalten im Umkehrpunkt, 11-11 Stanzen ein, 12-2 Auswertung, IPO-Takt, 11-12 Stanzen mit Verzögerung aus, 12-2 Nächste Teilzustellung, 11-12...
  • Seite 686 Index Technologiezyklen, 10-63 Programmierung in RPY-Winkeln, 7-19 Default-Parameter mit Initialwerte, 10-67 Programmierung über LEAD/TILT, 7-15 Zyklische Abarbeitung steuern ICYCOF, 10-67 Transformationen Technologiezyklen Drei-, Vier- und Fünf-Achs-Transformation in satzweisen Synchronaktionen, 10-69 TRAORI, 7-2 Technologiezyklen Kinematikunabhängige Grundstellung der IF-Kotrollstrukturen, 10-69 Werkzeugorientierung, 7-2 Technologiezyklen Kinematische Transformationen, 7-2 Bedingte Verzweigungen, 10-69...
  • Seite 687 Index Unterprogrammen mit Parameterübergabe Wartemarken, 10-57 Felddefinition, 2-8 Wegabhängige Beschleunigung PUNCHACC, 12-2, UNTIL, 1-42, 1-44 12-3 UPATH, 5-23 Wegaufteilung, 12-8 Wegaufteilung bei Bahnachsen, 12-7 Werkstück-Hauptverzeichnis, 3-3 Werkstückverzeichnisse, 3-3 Werkstückzähler, 13-46 V1,V2, 8-37 Werkzeugkorrektur VAR, 2-5 3D-Stirnfräsen, 8-16 Variable, 1-1 Korrektur auf der Bahn, Bahnkrümmung und anwenderdefiniert, 1-1 Eintauchtiefe, 8-19 Anwenderdefinierte Variable, 1-3...
  • Seite 688 Index Wiederholte Verwendung von Kurventabellen, 9-20 Zeitbedarf Winkelbezug, 13-20 Synchronaktionen, 10-61 Winkeloffset/Winkelinkrement der Drehachsen, 8-39 Zugriff auf Kurventabellenpositionen und Winlimit, 10-43 Kurventabellensegmeten, 9-26 WKS, 3-3, 11-12 Zuletzt programmierte Satznummer anzeigen, 2-24 WPD, 3-3 Zustell WRITE, 1-65 -achse, 11-7 WZ, 8-4 -bewegung, 11-11 Zuweisungen, 1-18 Zwischenkreisstützung, 13-38...

Inhaltsverzeichnis