Programmierung
Die Programmiersyntax lehnt sich an die achsspezifische Programmierung von unabhängigen Achsen und M-Funktionen an [PROG].
Nach dem Achsbezeichner erfolgt die Parametrierung der Pendelbewegung über Schlüsselworte und ggf. einem zugehörigen Wert:
X[<Schlüsselwort1> <(Wert1)>, [<Schlüsselwort2> <(Wert2) >,...]
Die Eigenschaft der Pendelbewegung wird durch die Lage der Umkehrpositionen und dem Achsvorschub bestimmt. Die Umkehrpositionen können entweder direkt angegeben werden oder werden alternativ über Nullposition und Auslenkung automatisch bestimmt.
Die Pendelgeschwindigkeit muss angegeben werden. Diese kann festgelegt werden über:
- Vorschub
- Frequenz
- Periodendauer
Ist diese nicht festgelegt, so wird der Fehler mit ID 50593 ausgegeben.
Sofern keine Beschränkung aufgrund der dynamischen Achskenngrößen auftritt, werden bei Verwendung des linearen Slopes die Frequenz und die Periodendauer exakt eingehalten, beim nichtlinearen Slope näherungsweise.
Syntax zur Programmierung einer Pendelbewegung: |
<Achsname> [ OSC ON | [OFF | OFF FEED=.. | OFF INSTANT] | [ ZERO_POS=.. EXCUR=..] [1ST_DELT=.. 2ND_DELT=..] [NBR_OSC=..] [INCL_OFFSETS] [SHORT] { \ } ] |
<Achsname> | Name der Pendelachse |
OSC | Kennung für die Funktionalität "Pendeln". Muss immer als erstes Schlüsselwort programmiert sein. |
ON | Pendeln einschalten. Bei aktiver Bahnbewegung wird am Satzende angehalten und dann die Pendelbewegung beauftragt. |
OFF | Pendeln ausschalten. Aktueller Pendelzyklus wird zu Ende gefahren. Danach kann die Pendelachse wieder im Bahnverbund bewegt werden. Ohne vorherige Abwahl wird die Pendelbewegung bei Programmierung einer neuen Achsbewegung implizit abgebrochen. |
OFF FEED=.. | Schneller Pendelstopp. Der aktuelle Pendelzyklus wird abgebrochen und die Achse fährt mit vorgegebenem Vorschub auf Zielposition (2ND POS). Danach kann die Pendelachse wieder im Bahnverbund bewegt werden. |
OFF INSTANT | Sofortiger Pendelstopp. Achse hält unmittelbar an und kann sofort wieder im Bahnverbund bewegt werden. |
FEED=.. | Vorschub der Pendelbewegung in [mm/min, m/min, inch/min] |
FREQ=.. | Frequenz der Pendelbewegung in [Hz] |
TIME=.. | Periodendauer der Pendelbewegung in [s] |
1ST_POS=.. | Erste Umkehrposition in [mm, inch] |
2ND_POS=.. | Zweite Umkehrposition in [mm, inch] |
ZERO_POS=.. | Nullpunkt bzw. Nulldurchgang der Pendelbewegung in [mm, inch] |
EXCUR=.. | Auslenkung in [mm, inch] |
1ST_DELT=.. | Wartezeit an erster Umkehrposition in [s] |
2ND_DELT=.. | Wartezeit an zweiter Umkehrposition in [s] |
NBR_OSC=.. | Anzahl Schwingungen |
INCL_OFFSETS [ab V3.1.3081.05] | Einrechnen der aktuell aktiven achsspezifischen Verschiebungen (z.B. G55, G92 etc.) in die programmierten Umkehrpositionen 1ST_POS/2ND_POS bzw. Nulldurchgang ZERO_POS |
SHORT [ab V3.1.3113.0] | Pendeldistanz wird bei einer Moduloachse auf dem kürzesten Weg zurückgelegt. |
\ | Trennzeichen ("Backslash") für übersichtliche Programmierung des Befehls über mehrere Zeilen |
Programmierbeispiel
Programmierung der Pendelachse
Angabe des Pendelfahrweges über Umkehrpositionen:
Angabe des Pendelfahrweges über Nullposition und Auslenkung:
Angabe der Pendelfrequenz 1 Hertz, 10 Schwingungen:
Angabe der Pendelperiodendauer 4s:
Pendelbewegung mit Zustellbewegung einer Bahnachse:
Pendeln mit Wartezeiten an den Umkehrpositionen von jeweils 0.5 s:
2ND_DELT=0.5 FEED=1000]
Pendeln einer Moduloachse (0-360°) auf dem kürzesten Weg über die Modulogrenze
Abwahl Pendeln:
Pendelbewegung wird mit Erreichen der Umkehrposition 2 beendet.
Schneller Pendelstopp:
Wird in Verbindung mit OFF ein Vorschub FEED programmiert, so wird die Pendelbewegung sofort abgebrochen (Feedhold der Pendelachse) und es wird mit dem neuen Vorschub direkt auf Umkehrposition 2 gefahren.
![]() | Einschränkung kinematischer Transformationen Bei aktiver kinematischer Transformation (#TRAFO ON) ist eine Pendelbewegung nur dann zulässig, wenn die Kinematik eine kartesische Grundstruktur besitzt und der Pendelrichtungsvektor in der z- Achsrichtung der Maschine liegt. |
Wird eine Pendelbewegung über die Anzahl Schwingungen festgelegt, so kann diese vor Erreichen der vorgegebenen Schwingungsanzahl durch Programmierung eines Pendelstopps abgebrochen werden.