Programming examples
Programing Example
Soft gantry coupling
:
N10 #SET AX LINK[1, [Y2 = Y1,G,0.01,0.25]]
# Gantry coupling of Y1 as master axis and Y2 as slave
# axis. 1st limit is 10µm, 2. Limit is 250 µm.
N20 #SET AX LINK[2, [Y2 = Y1,G]]
# Gantry coupling of Y1 (master) and Y2 (slave). The
# monitoring limits of the axis parameter data record of Y2 apply.
N30 #SET AX LINK [3,[Y2 = Y1]]
# Default coupling of Y2 with Y1. No gantry mode.
# or alternative
N10 #AX LINK[1, [Y2 = Y1,G,0.01,0.25]]
N20 #AX LINK NBR[2, [8 = 2,G]]
# Gantry coupling via logical axis numbers
Parallel machining of workpieces with a symmetrical or scaled contour can also be programmed by an extended syntax of the #SET AX LINK command. Position differences are not monitored in these modes (mirroring or scaling).
#SET AX LINK [ <coupling_group>, [ <slave>=<master>,<nominator>, <denominator> ] {, [ <slave>=<master>,<numerator>, <denominator> ] } ] or alternatively #AX LINK [NBR] [ <coupling_group>, [ <slave>=<master>,<numerator>, <denominator>] {, [<slave>=<master>,<numerator>, <denominator> ] } ] |
<coupling_group> | Number of the coupling group 1 ... [Max. number of coupling groups(1) -1] , positive integer. |
<Slave> | Designation or logical axis number of the slave axis of the coupling pair i |
<Master> | Designation or logical axis number of the master axis of the coupling pair i Max. number of coupling pairs (2) |
NBR | Evaluation can be changed from logical axes names to axes numbers with the logic switch NBR. The axis couplings must then be defined with logical axis numbers. The axes need not be present in NC channel. Their availability in NC channel is checked only at activation of the coupling group! |
<numerator>, <denominator> | Integers are used to calculate a coupling factor between:
|
Attention
coupling factors unequal to -1 or 1 that have a scaling effect are not permitted. A warning is output and the coupling factor is assigned the value 1 (default coupling).
Programing Example
Soft gantry: Mirror and default coupling
:
N10 #SET AX LINK[1, [Y2 = Y1,1,-1]] Mirror coupling (factor -1)
N20 #SET AX LINK[1, [Y2 = Y1,-1,1]] Mirror coupling (factor -1)
N30 #SET AX LINK[1, [Y2 = Y1,-2,2]] Mirror coupling (factor -1)
N40 #SET AX LINK[1, [Y2 = Y1,1,1]] Default coupling
N50 #SET AX LINK[1, [Y2 = Y1,2,2]] Default coupling
N60 #SET AX LINK[1, [Y2 = Y1,0,1]] Error message, program is aborted
N70 #SET AX LINK[1, [Y2 = Y1,1,0]] Error message, program is aborted
N80 #SET AX LINK[1, [Y2 = Y1,1,2]] Warning (factor 0.5), default cpl.
N90 #SET AX LINK[1, [Y2 = Y1,2,3]] Warning (factor 0.666), default cpl.
N100 #SET AX LINK[1, [Y2 = Y1,3,2]] Warning (factor 1.5), default cpl.
N110 #SET AX LINK[1, [Y2 = Y1,-1,2]] Warning (factor -0.5), default cpl.
N120 #SET AX LINK[1, [Y2 = Y1,-3,2]] Warning (factor -1.5), default cpl.
or alternatively
N40 #AX LINK[1, [Y2 = Y1,1,1]] Default coupling
N50 #AX LINK NBR[1, [8 = 2,2,2]] Standard coupling via log. axis numbers
Syntax, selecting and deselecting a gantry coupling
A (gantry) coupling group can be activated and deactivated with the following NC commands:
#ENABLE AX LINK [ <coupling_group> ] or #ENABLE AX LINK (Coupling group 0, defined in the channel parameter list) or alternatively #AX LINK ON [ <coupling_group> ] or #AX LINK ON (Coupling group 0, defined in the channel parameter list) |
#DISABLE AX LINK [ <cooupling_group> ] or #DISABLE AX LINK (Deselect the last activated coupling group) or alternatively #AX LINK OFF [ <coupling_group> ] or #AX LINK OFF (Deselect the last activated coupling group)
#AX LINK OFF ALL (Deselect all active coupling groups) |
Handling and operating principle
- No coupling group is active after start-up in the initial position of the NC kernel. Activation of axis coupling begins with programming in the NC program and ends, if not cancelled, when the program ends (M30, M02). If active axis couplings are to remain effective for the next program (program global), a specific channel parameter P-CHAN-00105 must be set.
- Several coupling groups can be activated simultaneously.
- Unassigned coupling groups cannot be activated. A coupling group is considered assigned if at least one valid master-slave coupling pair was defined.
- The NC command must be a single instruction in the NC block.
- The number of the coupling group can also be programmed via mathematical expressions.
- WRK must not be selected when synchronous operation is selected or cancelled.
- Manual mode with parallel interpolation (G201) may not be active for the slave axes when synchronous mode is selected
- Positions of slave axes may not be addressed in the NC program when synchronous mode is active.
Programing Example
Tool change and subroutine for contour machining
Axis designations used: | Master axis system X, Y, Z, C |
| Slave axis system Y_S, Z_S, C_S |
(Initialisation program)
%L UP_INIT_ACHS_KOPPL
(initialise axis coupling 1)
N10 #SET AX LINK[1, Y_S=Y, Z_S=Z, C_S=C]
(or #AX LINK[1, Y_S=Y, Z_S=Z, C_S=C]
N20 M17
(tool changing program)
%L UP_WZ
N30 #DISABLE AX LINK (oder #AX LINK OFF)
(Approach tool change position)
N40 G01 G90 Y1000 Z100 C0 Y_S=1000 Z_S=100 C_S=0
(Tool change; T10 contains all tool axis offsets and the tool lengths of master and slave tools; or these values are explicitly included in the calculation.) )
N50 T10 D10
:
(Further commands for physical tool change)
:
(Approach old coupling position. The coupling position may also be defined by parameter programming and then be used by the subroutine.)
N80 G01 G90 X20 Y20 Z40 C50 Y_S=20 Z_S=40 C_S=50
N90 #ENABLE AX LINK[1] (or #AX LINK ON[1])
N110 M17
(Subroutine for contour machining)
%L UP1
N150 G01 G91 X10 Y10 Z-20 C90
N160 G02 X20 Y20 I10 J10
N170 LL UP_WZ
N180 G01 G91 X10 Y10 Z-20 C90
N190 G02 X20 Y20 I10 J10
N200 M17
(Main program; initial condition: Both tools were changed.)
(Move both axis systems to coupling position first.)
N300 G01 G91 X20 Y20 Z40 C50 Y_S=20 Z_S=40 C_S=50 F300
(Start synchronous operation)
N310 #ENABLE AX LINK[1] (or #AX LINK ON[1])
N320 LL UP1
:
N400 #DISABLE AX LINK (or #AX LINK OFF)
N410 M30