Unabhängige Achsen (INDP_SYN, INDP_ASYN) (#WAIT INDP, #WAIT INDP ALL)
Bei der Programmierung s.g. unabhängiger Achsen werden zwei Betriebsmodi unterschieden:
- Sollwertseitige Synchronisierung von Bahnachsen und unabhängigen Achsen jeweils am Satzende.
- Sollwertseitige Synchronisierung von Bahnachsen und unabhängigen Achsen über mehrere Satzgrenzen hinweg.

![]() | Bei unabhängigen Achsen werden in der Grundeinstellung keine Verschiebungen berücksichtigt. Ab der Version V3.1.3081.05 kann im NC-Befehl durch Angabe von INCL_OFFSETS die Einrechnung von Verschiebungen in die programmierte Achsposition aktiviert werden. |
Der additive Handsatzbetrieb (G201/G202) mit einer unabhängigen Achse ist möglich.
Syntax zur Programmierung unabhängiger Achsen: |
<Achsname> [ INDP_SYN | INDP_ASYN G90 | G91 G00 | [G01 | G100 FEED=.. | TIME=.. | FEED_MAX_WEIGHT=..] POS=.. [SLOPE_TYPE=<ident>] {M..} {H..} [DRY_RUN] [ACC_WEIGHT=..] [RAPID_ACC_WEIGHT=..] [INCL_OFFSETS] { \ } ] |
<Achsname> | Name der unabhängigen Achse |
INDP_SYN | Kennung für die synchrone (satzweise) unabhängige Achsbewegung. Übergang zum nächsten Satz erfolgt erst dann, wenn alle Achsen ihre Endpositionen erreicht haben. Muss immer als erstes Schlüsselwort programmiert sein. |
INDP_ASYN | Kennung für die asynchrone (satzübergreifende) unabhängige Achs-bewegung. Keine Synchronisierung auf Endpositionen. Die sollwertseitige Synchronisierung erfolgt durch einen speziellen Befehl (#WAIT INDP) oder durch Programmierung der unabhängigen Achse als bewegte Bahnachse. Muss immer als erstes Schlüsselwort programmiert sein. |
G90 / G91 | Absolut- / Relativmaß |
G00 / G01 | Eilgang- / Linearinterpolation |
FEED=.. | Achsspezifischer Vorschub in [mm/min, m/min, inch/min] |
TIME=.. | Achsspezifische Verfahrzeit in [s] |
FEED_MAX_WEIGHT=.. | Gewichtungsfaktor in [%] bezogen auf den achsspezifischen maximalen Vorschub P-AXIS-00212. Es sind nur Gewichtungswerte kleiner 100% erlaubt. (gemäß G194, Kapitel Bearbeitungszeit/Vorschubgeschwindigkeit (G93/G94/G95/G194)) |
POS=.. | Achsposition in [mm, inch] |
SLOPE_TYPE=<ident> | Slope-Profiltypen gemäß #SLOPE [TYPE=...], Kapitel Unabhängige Achsen) Wenn kein Slopetyp programmiert ist, wird per Default der Slopetyp aus dem Kanalparametersatz P-CHAN-00071 gesetzt. |
Alte Syntax: SLOPE_PROFIL=.. | Slope-Profiltypen (0, 1, 2, 3) Wenn kein Slopetyp programmiert ist, wird per Default der Slopetyp aus dem Kanalparameter P-CHAN-00071 gesetzt. |
G100 [ab V2.11.2801.05] | Bei Verwenden der Messtypen 1, 2 oder 7 (Kapitel Messfunktionen) kann auch eine Messfahrt mit unabhängigen Achsen durchgeführt werden. Das Latchen der Messposition erfolgt dabei für jede beteiligte Achse individuell. Eine unabhängige Messfahrt ist auch parallel zu einer Bahnbewegung oder G100 Messfahrt möglich. Weitere Informationen siehe [FCT-C4//Messen]. |
DRY_RUN | Trockenlauf der Achsbewegung. Die Bewegung wird nur im NC-Kanal ausgeführt ohne dass die Achse real verfahren wird. Hierdurch kann die Achskoordinate innerhalb des Kanals gegenüber der physikalischen Achse verschoben werden. Diese Verschiebung wird automatisch bei jedem Programmstart oder durch ein explizit programmiertes #CHANNEL INIT [CMDPOS] wieder aufgehoben (siehe Programmierbeispiel 3). |
M.. | Achsspezifische M-Funktionen (*) |
H.. | Achsspezifische H-Funktionen (*) |
ACC_WEIGHT=.. [ab V3.1.3079.06] | Achsspezifischer Gewichtungsfaktor in [%] bezogen auf die Beschleunigung bei G01, G02, G03 (gemäß Kapitel Beschleunigungsgewichtung (G130/G131/G230/G231/G333/G334)) |
RAPID_ACC_WEIGHT=.. [ab V3.1.3079.06] | Achsspezifischer Gewichtungsfaktor in [%] bezogen auf die Beschleunigung bei G00 (gemäß Kapitel Beschleunigungsgewichtung (G130/G131/G230/G231/G333/G334)) |
INCL_OFFSETS [ab V3.1.3081.05] | Einrechnen der aktuell aktiven achsspezifischen Verschiebungen (z.B. G55, G92 etc.) in die programmierte Achsposition POS |
\ | Trennzeichen ("Backslash") für übersichtliche Programmierung des Befehls über mehrere Zeilen |
(*) nur möglich mit den Synchronisationsarten MOS, MVS_SVS, MVS_SNS, MNS_SNS.
Achsspezifische M/H-Funktionen können auch ohne die Programmierung einer Bewegung an eine unabhängige Achse ausgegeben werden. Dazu ist zusätzlich nur die Kennung INDP_SYN bzw. INDP_ASYN erforderlich:
Syntax : |
<Achsname> [ INDP_SYN | INDP_ASYN M.. {M..} H.. {H..} { \ } ] |
<Achsname> | Name der unabhängigen Achse |
INDP_SYN/INDP_ASYN | Kennung für eine unabhängige Achse |
M.. | Achsspezifische M-Funktion |
H.. | Achsspezifische H-Funktion |
\ | Trennzeichen ("Backslash") für übersichtliche Programmierung des Befehls über mehrere Zeilen |
Die sollwertseitige Synchronisation bestimmter asynchroner Achsbewegungen (INDP_ASYN) wird erzwungen durch:
Syntax : |
#WAIT INDP [ <Achsname> { ,<Achsname> } ] |
<Achsname> | Name der asynchronen Achse |
![]() | Wird eine asynchrone Achse vor oder ohne dem entsprechenden #WAIT INDP [ ] erneut mit einer Bewegung programmiert, so wird die sollwertseitige Synchronisation implizit im Interpolator durchgeführt. |
Die sollwertseitige Synchronisation von allen momentan aktiven asynchronen Achsbewegungen (INDP_ASYN) wird erzwungen durch:
Syntax : |
#WAIT INDP ALL |
![]() | Wird die Achse einer vorbelegten achsspezifischen M/H-Funktion (P-CHAN-00039, P-CHAN-00025) im gleichen NC-Satz als unabhängige Achse programmiert, so wird eine Fehlermeldung ausgegeben. Beispiel: M10 ist X-achsspezifisch vorbelegt (m_default_outp_ax_name[10] x): N10 M10 X [INDP_SYN G01 G90 POS10 FEED1000 M7] |_____| <- Fehler! |
Programmierbeispiel
Unabhängige Achsen