diff --git a/kondia-b500.cps b/kondia-b500.cps index 254eac2241610d63ee0663e3d6ad97d6787f9ecc..0bdd683513f21ba86cd79384c928a0b2f24bf47b 100644 --- a/kondia-b500.cps +++ b/kondia-b500.cps @@ -4,7 +4,7 @@ NUM post processor configuration. - $Revision: 44079 7098e6d148aa6ea195b42597d82fe2f00d0115bb $ + $Revision: 44080 7098e6d148aa6ea195b42597d82fe2f00d0115bb $ $Date: 2023-07-17 12:38:58 $ FORKID {8B1FC740-38BD-4cb2-9CD5-94A55CBE87A5} @@ -144,6 +144,44 @@ properties = { ], value: "NUM7x0", scope: "post" + }, + tcMoveType: { + title : "Safe tool change move", + description: "Specifies if we need to move to a safe location to change tool and in which order.", + group : "toolChange", + type : "enum", + values : [ + {title:"Disabled", id:"disable"}, + {title:"Simultaneous", id:"all"}, + {title:"Z then XY", id:"ZX"}, + {title:"XY only", id:"XY"} + ], + value: "disable", + scope: "post" + }, + tcPositionX: { + title : "G52 Tool Change position X", + description: "G52 X-axis Tool Change position.", + group : "toolChange", + type : "number", + value : 0, + scope : "post" + }, + tcPositionY: { + title : "G52 Tool Change position Y", + description: "G52 Y-axis Tool Change position.", + group : "toolChange", + type : "number", + value : 0, + scope : "post" + }, + tcPositionZ: { + title : "G52 Tool Change position Z", + description: "G52 Z-axis Tool Change position.", + group : "toolChange", + type : "number", + value : 0, + scope : "post" } }; @@ -1351,6 +1389,9 @@ function writeWCS(section, wcsIsRequired) { // <<<<< INCLUDED FROM include_files/writeWCS.cpi // >>>>> INCLUDED FROM include_files/writeToolCall.cpi function writeToolCall(tool, insertToolCall) { + var tcPosX = getProperty("tcPositionX"); + var tcPosY = getProperty("tcPositionY"); + var tcPosZ = getProperty("tcPositionZ"); if (typeof forceModals == "function" && (insertToolCall || getProperty("safeStartAllOperations"))) { forceModals(); } @@ -1372,6 +1413,20 @@ function writeToolCall(tool, insertToolCall) { onCommand(COMMAND_STOP); writeComment("MANUAL TOOL CHANGE TO T" + toolFormat.format(tool.number)); } else { + switch (getProperty("tcMoveType")) { + case "disable": + break; + case "all": + writeBlock(gAbsIncModal.format(90), gFormat.format(52), gMotionModal.format(0), "X" + xyzFormat.format(tcPosX), "Y" + xyzFormat.format(tcPosY), "Z" + xyzFormat.format(tcPosZ)); + break; + case "ZX": + writeBlock(gAbsIncModal.format(90), gFormat.format(52), gMotionModal.format(0), "Z" + xyzFormat.format(tcPosZ)); + writeBlock(gAbsIncModal.format(90), gFormat.format(52), gMotionModal.format(0), "X" + xyzFormat.format(tcPosX), "Y" + xyzFormat.format(tcPosY)); + break; + case "XY": + writeBlock(gAbsIncModal.format(90), gFormat.format(52), gMotionModal.format(0), "X" + xyzFormat.format(tcPosX), "Y" + xyzFormat.format(tcPosY)); + break; + } if (!isFirstSection() && getProperty("optionalStop") && insertToolCall) { onCommand(COMMAND_OPTIONAL_STOP); }