Synchronisieren einer Achse auf Bahnverbund (SYNC IN / OUT)
Versionshinweis
Die Funktionalität ist verfügbar ab CNC-Version V2.11.2013.22
Bestimmte Prozesse erfordern eine synchrone Bewegung einer einzelnen Achse (Slaveachse) mit einem Bahnverbund. Dabei wird an bestimmten programmierten Positionen gefordert, dass sich die Slaveachse an einer bestimmten Position mit einer bestimmten Geschwindigkeit befindet. Die Slaveachse fährt dann mit der Synchrongeschwindigkeit, bis die Synchronisation wieder aufgehoben wird.
Typische Applikationsbeispiele sind bei Maschinen mit durchlaufendem Endlosmaterial zu finden. Hier muss das Material an einer bestimmten Stelle abgeschnitten werden, während der Bahnverbund weiterfährt. Das rotierende Messer muss zu einer bestimmten Masterposition (Werkstücklänge) in Schnittposition sein und sich dann mit gleicher Geschwindigkeit mitbewegen, bis der Schnitt erfolgt ist.
Einschränkungen:
Eine Achse kann nicht synchronisiert werden, wenn:
- diese Achse momentan im Bahnverbund fährt
Konfiguration:
Für die Benutzung der Funktionalität muss in der Hochlaufliste ([STUP]) folgende Einstellung vorgenommen werden:
configuration.channel[0].path_preparation.function FCT_DEFAULT | FCT_SYNC
configuration.channel[0].interpolator.function FCT_IPO_DEFAULT | FCT_SYNC
Syntax zur Programmierung von Synchronbewegungen: |
<Achsname> [ SYNC IN | OUT G90 | G91 G00 | G01 FEED=.. FEED_MAX_WEIGHT=.. POS=.. DIST=.. { \ } ] |
<Achsname> | Name der zu synchronisierenden Achse |
SYNC | Kennung für eine Synchronbewegung der Achse. Muss immer als erstes Schlüsselwort programmiert sein. |
IN | Kennung um Beginn der Synchronbewegung zu markieren. |
OUT | Kennung um Ende der Synchronbewegung zu markieren. |
G90 / G91 | Absolut- / Relativmaß |
G00 / G01 | Eilgang- / Linearinterpolation |
FEED=.. | Achsspezifischer Vorschub in [mm/min, m/min, inch/min] |
FEED_MAX_WEIGHT=.. | Gewichtungsfaktor in [%], bezogen auf den achsspezifischen maximalen Vorschub P-AXIS-00212. Es sind nur Gewichtungswerte kleiner 100% erlaubt (gemäß G194). |
POS=.. | Achsposition in [mm, inch], an der die Synchrongeschwindigkeit erreicht wird. |
DIST=.. | Distanz in [mm, inch], auf der die Synchrongeschwindigkeit gefahren wird. |
\ | Trennzeichen ("Backslash") für übersichtliche Programmierung des Befehls über mehrere Zeilen. |
Programmierbeispiel
Synchronisieren einer Achse auf Bahnverbund
%sync
N010 G90 X0 Y0 Z0 A0
N020 G91 F5000
N030 X=67.913 A[SYNC IN G01 FEED_MAX_WEIGHT=100 G91 POS=130 DIST=70]
;A-Achse erreicht max. Geschwindigkeit an Position 130,
;während X genau an dieser Stelle Position 67.913 erreicht
N040 X=1.5 ;A und X-Achse fahren synchron, dabei wird Geschwindigkeit
;der X-Achse so bestimmt, dass die X-Achse 3mm zurücklegt
N050 X=1.5 ;während die A-Achse 70° mit Max.geschwindigkeit fährt
N060 X=14.541 A[SYNC OUT G91 G0 POS160] G261
;Am Anfang dieses Satzes wird Synchronbewegung aufgelöst
;Die Bahnachsen fahren wieder mit programmiertem Vorschub,
;die A-Achse fährt unabhängig auf die angegebene Position
N070 X=15.862 Z=1.248 Y=0.185
N080 X=15.992 Z=1.889 Y=0.213
N090 X=32.243 Z=3.306 Y=0.482
N100 X=22.186
N110 X=31.696 Z=-2.597 Y=-0.389
N120 X=25.297 Z=-3.846 Y=-0.491
N130 X=39.819 A[SYNC IN G01 FEED_MAX_WEIGHT=100 G91 POS=130 DIST=70]
N140 X=1.257
N150 X=1.257
N160 X=200 A[SYNC OUT G91 G0 POS160]
N180 M30