Explicit feed programming for MicroJoints (#CHANNEL SET)

Feed at / behind a MicroJoint

For technical process reasons, it may be necessary to limit the path velocity for a MicroJoint (in particular with an M function MOS which requires no acknowledgement). In addition, the path after the advanced M function (MicroJoint path) is completely traversed to the end at a change in velocity.

This can be defined by the following feed settings in the NC command #CHANNEL SET (see figure below “Feed definition with MicroJoints”).

#CHANNEL SET [ M_PRE_OUTPUT [ E=.. ] [ F=.. ] [ VECTOR_LIMIT_OFF ] ]

non-modal

E=..

Block end velocity E of the previous MicroJoint (start of MicroJoint)

F=..

Feed velocity within the MicroJoint (path between the position of the advanced M function and the originally programmed position of the M function)

VECTOR_LIMIT_OFF

Deselecting a possible dynamic limitation. If one of the previously programmed dynamic influences is active via #VECTOR LIMIT (VEL, ACC, DEC), it is suppressed within the MicroJoint range.

Programming Example

Explicit feed programming for MicroJoints

%microjoint16
N01 G00 G90 X0 Y0
N02 G01 F100
N05 #CHANNEL SET [M_PRE_OUTPUT E=20 F=5000]
N10 V.G.M_FCT[100].PRE_OUTP_PATH = 8; in mm
N20 G91 Y1
N40 Y10
N50 M100 M26
N99 M30
Explicit feed programming for MicroJoints (#CHANNEL SET) 1:
Feed definition with MicroJoints

If the F or E word is not specified, the feed for the advanced M function and subsequent motion blocks is not changed.

MicroJoint feed across multiple blocks

When the pre-output of the M function is advanced across multiple blocks, the feed of all MicroJoint motion blocks is also changed to the specified value.

A possibly explicitly programmed feed is replaced by the specific MicroJoint feed.

Programming Example

MicroJoint feed across multiple blocks

%microjoint17
N01 G01 G90 X0 Y0 F100
N05 #CHANNEL SET [M_PRE_OUTPUT E=20 F=5000]
N10 V.G.M_FCT[100].PRE_OUTP_PATH = 15; in mm
N40 G91 Y10 F7500
N50 M100 M26
N99 M30
Explicit feed programming for MicroJoints (#CHANNEL SET) 2:
Feed with block global MicroJoints

Specifying a MicroJoint specific feed replaces the possible explicitly programmed feed of the NC block.

See example above:

F7500 in N40 is replaced by F5000.

Programming Example

Increased feed with M11, decreased feed with M12

%microjoint16
V.G.M_FCT[11].SYNCH = "MOS"
V.G.M_FCT[11].PRE_OUTP_PATH = 125
V.G.M_FCT[12].SYNCH = "MOS"
V.G.M_FCT[12].PRE_OUTP_PATH = 325
N300 #CHANNEL SET [M_PRE_OUTPUT E=250 F=1500]
N01 X-222 G01 F1000
N10        X10
N20        X100
N30        X200 M11 (125mm)
N32 #VECTOR LIMIT ON[VEL=500]
N35 #CHANNEL SET [M_PRE_OUTPUT E=150 F=750]
N40        X300
N41        X310
N42        X320
N43        X330
N44        X340
N45        X350
N46        X360
N47        X370
N48        X380
N49        X390
N50        X500
N60        M12 (325mm)
N70        X600
N80        X700
M30
Explicit feed programming for MicroJoints (#CHANNEL SET) 3:
Increased feed with M11, decreased feed with M12

Programming Example

Suppress VECTOR_LIMIT during MicroJoint

%microjoint18
V.G.M_FCT[11].SYNCH = "MOS"
V.G.M_FCT[11].PRE_OUTP_PATH = 125
V.G.M_FCT[12].SYNCH = "MOS"
V.G.M_FCT[12].PRE_OUTP_PATH = 325
N300 #CHANNEL SET [M_PRE_OUTPUT E=250 F=1500]
N01 X-222 G01 F1000
N10        X10
N20        X100
N30        X200 M11 (125mm)
N32 #VECTOR LIMIT ON[VEL=500]
N35 #CHANNEL SET [M_PRE_OUTPUT E=150 F=750 VECTOR_LIMIT_OFF]
N40        X300
N41        X310
N42        X320
N43        X330
N44        X340
N45        X350
N46        X360
N47        X370
N48        X380
N49        X390
N50        X500
N60        M12 (325mm)
N70        X600
N80        X700
M30
Explicit feed programming for MicroJoints (#CHANNEL SET) 4:
Suppress VECTOR_LIMIT during MicroJoint