Parameter
Erforderliche Versorgungsparameter
Versorgungsparameter | Beschreibung |
@P1 | Werkstückoberfläche, Z-Position (absolut) |
@P2 | Rückzugsebene, Z-Position (absolut) |
@P3 | Sicherheitshöhe über Werkstück (ohne Vorzeichen), Z-Abstand (relativ zur Bezugsebene/ Bearbeitungshöhe) |
@P4 | Gravurtiefe im Werkstück (ohne Vorzeichen), Z-Abstand (relativ zur Bezugsebene ) |
@P21 | zu gravierender Text |
@P53 | Schriftgröße |
Optionale Versorgungsparameter
Versorgungsparameter | Beschreibung |
@P11 | Vorschub für Z-Zustellungen, F-Wort |
@P12 | Vorschub für Gravierbewegungen, F-Wort |
@P13 | Unterprogramm, das zu Beginn des Gravierens ausgeführt wird |
@P14 | Unterprogramm, das am Ende des Gravierens ausgeführt wird |
@P15 | Unterprogramm, das zu Beginn jedes Zeichens ausgeführt wird |
@P16 | Unterprogramm, das am Ende jedes Zeichens ausgeführt wird |
@P17 | Unterprogramm, das zu Beginn jedes Pfades ausgeführt wird |
@P18 | Unterprogramm, das am Ende jedes Pfades ausgeführt wird |
@P23 | Text umkehren (Standardwert = |
@P24 | Platzhalter verwenden (Standardwert = |
@P31 | Anordnung (Standardwert = 0) 0: Rechteck 1: Kreisbogen, Kreismittelpunkt liegt unterhalb des Textes 2: Kreisbogen, Kreismittelpunkt liegt oberhalb des Textes |
@P32 | Anordnung-Parameter 1 falls |
@P33 | Anordnung-Parameter 2 falls |
@P41 | Referenzpunkt (Standardwert = 6) 0: oben links 1: oben Mitte 2: oben rechts 3: Mitte links 4: Mitte Mitte 5: Mitte rechts 6: Grundlinie links 7: Grundlinie Mitte 8: Grundlinie rechts 9: unten links 10: unten Mitte 11: unten rechts |
@P42 | Referenzpunkt, X-Position (Standardwert = |
@P43 | Referenzpunkt, Y-Position (Standardwert = |
@P52 | Schriftgrößenbestimmung (Standardwert = 0) 0: Höhe des Buchstabens "X" 1: Breite des Buchstabens "X" 2: Höhe des gesamten Textes 3: Breite des gesamten Textes |
@P54 | Schriftstärke (Standard = Berechnung aus Gravurtiefe) Kann zusammen mit dem Spitzenwinkel des Gravierwerkzeugs alternativ zur Gravurtiefe vorgegeben werden. |
@P55 | Spitzenwinkel des Gravierwerkzeugs Kann zusammen mit der Schriftstärke alternativ zur Gravurtiefe vorgegeben werden. |
@P61 | nichtproportionale Schrift (Standardwert = |
@P62 | jedes Zeichen in X-Richtung spiegeln (Standardwert = |
@P63 | jedes Zeichen in Y-Richtung spiegeln (Standardwert = |
@P64 | zusätzliches X-Offset für jedes Zeichen (Standardwert = 0) |
@P65 | zusätzliches Y-Offset für jedes Zeichen (Standardwert = 0) |
@P71 | Art der Ausgabe (Standardwert = 0) 0: G-Code, Maschine wird bewegt 1: keine Ausgabe, für Berechnungen, Größenabfragen usw. |
@P101 | freier Parameter |
@P102 | freier Parameter |
@P103 | freier Parameter |
Zur Überprüfung der korrekten Belegung der Versorgungsparameter empfiehlt sich die Anwendung des Syntaxchecks.
Kodierung des NC-Programms
Der Text "ISG kernel" besteht nur aus ASCII-Zeichen. Man braucht bei der Kodierung des NC-Programmes, welches den Gravierzyklus aufruft, nichts beachten.
Will man Umlaute oder andere Sonderzeichen verwenden, so muss das NC-Programm in der Kodierung Windows-1252 abgespeichert werden.
Programmierbeispiel
Sonderzeichen gravieren
; Gravierzyklus für Text mit Sonderzeichen aufrufen
; !!NC-Programm muss in der Kodierung Windows-1252 abgespeichert sein!!
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "Brühe 1,95€" ( Text mit Sonderzeichen ) \
@P53 = 2 \
]
M30
Die mitgelieferte Standardschriftart unterstützt alle druckbaren Zeichen des Zeichensatzes Windows-1252.
Unterprogramme
Mit den Parametern @P13
bis @P18
können Unterprogramme angegeben werden, die bei bestimmten Ereignissen ausgeführt werden.
- Das Unterprogramm
@P13
wird ausgeführt, bevor die Gravur des Textes beginnt. - Das Unterprogramm
@P14
wird ausgeführt, nachdem die Gravur des Textes beendet ist. - Das Unterprogramm
@P15
wird vor der Gravur jedes Zeichens ausgeführt. - Das Unterprogramm
@P16
wird nach der Gravur jedes Zeichens ausgeführt. - Das Unterprogramm
@P17
wird jedes mal ausgeführt, bevor die Rückzugsebene verlassen wird, um einen neuen Fräsabschnitt zu beginnen. - Das Unterprogramm
@P18
wird jedes mal ausgeführt, nachdem ein Fräsabschnitt beendet ist und die Rückzugsebene erreicht wurde.
Die Unterprogramme ermöglichen es, verschiedene Technologien während des Gravierens zu schalten.
Z.B. kann der Gravierzyklus nicht nur für Fräsmaschinen, sondern auch für Laser- oder Plasmaschneidemaschinen verwendet werden. Mit den Unterprogrammen @P17
und @P18
könnte der Laser ein- bzw. ausgeschaltet werden.
Text umkehren
Wenn @P23
auf TRUE
gesetzt wird, dann wird der Eingabe-Text rückwärts ausgegeben.
Programmierbeispiel
Text umkehren
; Gravierzyklus für umgekehrten Text aufrufen
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P23 = TRUE ( Text umkehren ) \
@P53 = 2 \
]
M30
Platzhalter
Wenn @P24
auf TRUE
gesetzt wird, dann können in dem übergebenen Text Platzhalter verwendet werden. Um zum Beispiel das aktuelle Datum zu gravieren, kann der Platzhalter ${date}
verwendet werden:
Programmierbeispiel
Platzhalter
; Platzhalter verwenden
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "heute, ${date}" ( aktuelles Datum gravieren ) \
@P24 = TRUE ( Platzhalter verwenden ) \
@P53 = 2 \
]
M30
Die unterstützten Platzhalter sind
Platzhalter | Beispiel | Beschreibung |
| 2021-12-03 | aktuelles Datum, YYYY-MM-DD |
| 17:15:43 | aktuelle Tageszeit, hh:mm:ss |
| 2021-12-03 17:15:43 | aktuelles Datum und Zeit, YYYY-MM-DD hh:mm:ss |
| 2021 | aktuelles Jahr, YYYY |
| 12 | aktueller Monat, MM |
| 03 | aktueller Tag, DD |
| 17 | aktuelle Stunde, hh |
| 15 | aktuelle Minute, mm |
| 43 | aktuelle Sekunde, ss |
| SysMillEngraveDemo.nc | Dateiname des aufrufenden NC-Hauptprogramms |
| EngraveDemo | Name (%…) des aufrufenden NC-Hauptprogramms |
| 11 | Wert des Zyklus-Parameters |
| 22 | Wert des Zyklus-Parameters |
| 33 | Wert des Zyklus-Parameters |
Programmierbeispiel
Platzhalter
; Platzhalter für freie Parameter verwenden
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "${1} + ${2} = ${3}" \
@P24 = TRUE ( Platzhalter verwenden ) \
@P53 = 1 \
@P101 = 11 ( freier Parameter ) \
@P102 = 22 ( freier Parameter ) \
@P103 = 33 ( freier Parameter ) \
]
M30
Anordnung und Referenzpunkt
Der Parameter @P31
bestimmt die Anordnung des gravierten Textes.
Linear (Standard)
Im Standard-Fall @P31 = 0
wird der Text in der gewohnten Form in einer Zeile ausgegeben. Die Positionierung der umgebenden Zeichen-Box erfolgt über einen Referenzpunkt. Folgende Schnittpunkte sind als Referenzpunkt möglich.
Der Referenzpunkt wird über den Parameter @P41
angegeben und kann die folgenden Werte haben.
Die Koordinaten (X, Y)
des Referenzpunktes werden mittels (@P42, @P43)
angegeben. Standardmäßig werden diese Parameter mit den aktuellen Achspositionen vorbelegt.
Programmierbeispiel
Linear gravieren
; Referenzpunkt (Mitte, Mitte) bei (1, -0.25)
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P41 = 4 ( Referenzpunkt Mitte, Mitte ) \
@P42 = 1 ( Referenzpunkt X-Koordinate ) \
@P43 = -0.25 ( Referenzpunkt Y-Koordinate ) \
@P53 = 2 \
]
M30
Kreisbogen
Mit @P31 = 1
bzw. @P31 = 2
können die Zeichen in Form eines Kreisbogens angeordnet werden.
Neben dem Referenzpunkt R
wird über (@P32, @P33)
der Kreismittelpunkt M
parametriert.
Programmierbeispiel
Im Kreisbogen gravieren
; Referenzpunkt (Mitte, unten) und Kreismittelpunkt (0, -2)
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "abcde" \
@P31 = 1 ( Kreis-Layout ) \
@P32 = 0 ( Kreis-Mittelpunkt X ) \
@P33 = -2 ( Kreis-Mittelpunkt Y ) \
@P41 = 10 ( Referenzpunkt Mitte, unten ) \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 0 ( Referenzpunkt Y ) \
@P53 = 2 \
]
M30
Wenn Referenzpunkt und Kreismittelpunkt gleich sind, dann wird ein Fehler geworfen.
Beispiel: variierter Kreis-Mittelpunkt
Programmierbeispiel
Im Kreisbogen gravieren
; Referenzpunkt (Mitte, unten) und Kreismittelpunkt (1, -1)
L CYCLE [NAME = "SysMillEngrave.ecy", \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "abcde" \
@P31 = 1 ( Kreis-Layout ) \
@P32 = 1 ( Kreis-Mittelpunkt X ) \
@P33 = -1 ( Kreis-Mittelpunkt Y ) \
@P41 = 10 ( Referenzpunkt Mitte, unten ) \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 0 ( Referenzpunkt Y ) \
@P53 = 2 \
]
M30
Beispiel: Referenzpunkt (links, unten)
Programmierbeispiel
Referenzpunkt (links, unten)
; Referenzpunkt (links, unten) und Kreismittelpunkt (0, -2)
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "abcde" \
@P31 = 1 ( Kreis-Layout ) \
@P32 = 0 ( Kreis-Mittelpunkt X ) \
@P33 = -2 ( Kreis-Mittelpunkt Y ) \
@P41 = 9 ( Referenzpunkt links, unten ) \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 0 ( Referenzpunkt Y ) \
@P53 = 2 \
]
M30
Beispiel: Kreismittelpunkt liegt oberhalb des Textes
In den bisherigen Beispielen war der Kreismittelpunkt immer unterhalb des Textes. Daher waren Textanfang und -ende jeweils "nach unten gebogen". Mit @P31 = 2
kann der gegenteilige Effekt erzeugt werden. Der Kreismittelpunkt liegt oberhalb des Textes und die Textenden sind "nach oben gebogen".
Programmierbeispiel
Kreismittelpunkt oberhalb des Textes
; Kreismittelpunkt liegt oberhalb des Textes
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "abcde" \
@P31 = 2 ( Kreis-Layout 2 ) \
@P32 = 0 ( Kreis-Mittelpunkt X ) \
@P33 = 2 ( Kreis-Mittelpunkt Y ) \
@P41 = 1 ( Referenzpunkt Mitte, oben ) \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 0 ( Referenzpunkt Y ) \
@P53 = 2 \
]
M30
Schriftgröße
Die Schriftgröße kann entweder direkt angegeben oder aus einer anderen Größe abgeleitet werden. Der Parameter @P52
bestimmt, auf welche Art und Weise die Schriftgröße berechnet wird. Es gibt die folgenden Möglichkeiten.
Wert von @P52 | Bedeutung |
0 (Standard) | Höhe des Buchstabens "X" |
1 | Breite des Buchstabens "X" |
2 | Höhe des gesamten Textes (in linearer Anordnung) |
3 | Breite des gesamten Textes (in linearer Anordnung) |
Die entsprechende Größe wird dann in @P53
angegeben.
Beispiel: Höhe des Buchstabens "X"
Programmierbeispiel
Höhe des Buchstabens X
; Schriftgröße über die Höhe von "X"
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "Xylophon" \
@P52 = 0 ( Höhe von "X" ) \
@P53 = 2 ( Schriftgröße 1 ) \
]
M30
Beispiel: Breite des Buchstabens "X"
Programmierbeispiel
Breite des Buchstabens X
; Schriftgröße über die Breite von "X"
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "Xylophon" \
@P52 = 1 ( Breite von "X" ) \
@P53 = 2 ( Schriftgröße 1 ) \
]
M30
Beispiel: Höhe des gesamten Textes
Programmierbeispiel
Höhe des gesamten Textes
; Schriftgröße über die Höhe des gesamten Texts
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "Xylophon" \
@P52 = 2 ( Höhe des gesamten Textes ) \
@P53 = 2 ( Schriftgröße 1 ) \
]
M30
Beispiel: Breite des gesamten Textes
Programmierbeispiel
Breite des gesamten Textes
; Schriftgröße über die Breite des gesamten Texts
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "Xylophon" \
@P52 = 3 ( Breite des gesamten Textes ) \
@P53 = 4 ( Schriftgröße 4 ) \
]
M30
Nichtproportionale Schriftart
Mit dem Parameter @P61
kann auf nichtproportionale Schrift umgeschaltet werden. In diesem Modus sind alle Zeichen gleich breit.
Programmierbeispiel
Nichtproportionale Schriftart
; proportionale Schrift
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "floor" \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 1.5 ( Referenzpunkt Y ) \
@P53 = 2 \
@P63 = FALSE ( proportionale Schrift ) \
]
; nichtproportionale Schrift
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "floor" \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 0 ( Referenzpunkt Y ) \
@P53 = 2 \
@P61 = TRUE ( nichtproportionale Schrift ) \
]
M30
Spiegelschrift
Mit den Parametern @P62
und @P63
können die Zeichen in X- bzw. Y-Richtung gespiegelt werden.
Beispiel: Spiegeln in X, zeichenweise
Programmierbeispiel
Spiegeln in X - zeichenweise
; spiegeln in X, zeichenweise
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P53 = 2 \
@P62 = TRUE ( Text in X spiegeln ) \
]
M30
Beispiel: Spiegeln in X, komplett
Programmierbeispiel
Spiegeln in X - komplett
Verwendet man lediglich @P62
zum Spiegeln in X, dann wird nur jedes Zeichen für sich gespiegelt, aber die Reihenfolge der Zeichen bleibt unverändert. Um den Text komplett zu spiegeln, kann man zusätzlich @P23
für die Textumkehrung benutzen.
; spiegeln in X, komplett
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P23 = TRUE ( Text umkehren ) \
@P53 = 2 \
@P62 = TRUE ( Text in X spiegeln ) \
]
M30
Beispiel: Spiegeln in Y
Programmierbeispiel
Spiegeln in Y
; spiegeln in Y
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P53 = 2 \
@P63 = TRUE ( Text in Y spiegeln ) \
]
M30
Schriftlaufweite
Der Abstand der Zeichen zueinander kann mit den Parametern @P64
in X bzw. @P65
in Y beeinflusst werden.
Beispiel: X-Laufweite bei größerem Werkzeugradius
Besonders in X kann es vorteilhaft sein, die Laufweite bei Verwendung größerer Werkzeugradien zu erhöhen.
Programmierbeispiel
X-Laufweite bei größerem Werkzeugradius
; normale Laufweite in X
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 1.5 ( Referenzpunkt Y ) \
@P53 = 2 \
@P64 = 0 ( normale X-Laufweite ) \
]
; Laufweite in X anpassen
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P42 = 0 ( Referenzpunkt X ) \
@P43 = 0 ( Referenzpunkt Y ) \
@P53 = 2 \
@P64 = 0.1 ( X-Laufweite um 0.1 erhöhen ) \
]
M30
Beispiel: Y-Laufweite für Treppen-Effekt
Mit einem Y-Versatz kann ein Treppen-Effekt erzeugt werden.
Programmierbeispiel
Y-Laufweite für Treppen-Effekt
; Treppen-Effekt in Y
L CYCLE [NAME = "SysMillEngrave.ecy" \
@P1 = 0 \
@P2 = 2 \
@P3 = 1 \
@P4 = 0.2 \
@P11 = 2000 \
@P12 = 1000 \
@P21 = "ISG kernel" \
@P53 = 2 \
@P65 = 0.1 ( Y-Laufweite ) \
]
M30