Hi guys,
Seem the post allows tapping with main spindle, with the sub spindle, with live tools on main-spindle but not with live tools on the sub spindle.
Why is this?
See part of the code:
switch (currentSection.spindle) {
case SPINDLE_PRIMARY: // main spindle
if (machineState.isTurningOperation || machineState.axialCenterDrilling) { // turning main spindle
if (properties.useTailStock) {
writeBlock(currentSection.tailstock ? getCode("TAILSTOCK_ON") : getCode("TAILSTOCK_OFF"));
}
writeBlock(
sOutput.format(useConstantSurfaceSpeed ? tool.surfaceSpeed * ((unit == MM) ? 1 / 1000.0 : 1 / 12.0) : tool.spindleRPM),
conditional(!machineState.tapping, tool.clockwise ? getCode("START_MAIN_SPINDLE_CW") : getCode("START_MAIN_SPINDLE_CCW"))
);
} else { // milling main spindle
writeBlock(
(machineState.tapping ? sOutput.format(tool.spindleRPM) : pOutput.format(tool.spindleRPM)),
conditional(!machineState.tapping, tool.clockwise ? getCode("START_LIVE_TOOL_CW") : getCode("START_LIVE_TOOL_CCW"))
);
}
break;
case SPINDLE_SECONDARY: // sub spindle
if (!gotSecondarySpindle) {
error(localize("Secondary spindle is not available."));
return;
}
if (machineState.isTurningOperation || machineState.axialCenterDrilling) { // turning sub spindle
// use could also swap spindles using G14/G15
if (properties.useTailStock && currentSection.tailstock) {
error(localize("Tail stock is not supported for secondary spindle."));
return;
}
gSpindleModeModal.reset();
writeBlock(
sOutput.format(useConstantSurfaceSpeed ? tool.surfaceSpeed * ((unit == MM) ? 1/1000.0 : 1/12.0) : tool.spindleRPM),
conditional(!machineState.tapping, tool.clockwise ? getCode("START_SUB_SPINDLE_CW") : getCode("START_SUB_SPINDLE_CCW"))
);
} else { // milling sub spindle
writeBlock(pOutput.format(tool.spindleRPM), tool.clockwise ? getCode("START_LIVE_TOOL_CW") : getCode("START_LIVE_TOOL_CCW"));
}
break;
}
Laurens Wijnschenk
3DTechDraw
AutoDesk CAM user & Post editor.
René for Legend.